VanillaOS 3を試す

イメージ
以前仮想マシンで試したものの、あまり時間が取れず、しっかり使えていなかった。 余っている(テスト用においてある)Thinkpad x390に実際に入れて試してみた。 Vanilla OS ところが、サイトに行ってみると少し前(2026-08-24)にUpdateされており2→3へと2年ぶりの更新。 簡単に言うとイミュータブルなOSで、OS本体の書き換えは基本的にできず、A/Bパターンで起動する必要がある。 Aでインストールしたものは、Bに入れられ、起動時にBを選択するとインストール後の状態で使える仕組み。不具合があればまたAに戻せるというもの。 若干、コマンド類が変わってしまっているらしい。 イミュータブルなOSは、これまでにも試したものの日本語がうまく扱えないなど常用するには結構厳しいものがあった。 とはいえ、時間の経過で様々なアプリケーションがFlatpakやAppImageで出揃ってきたので、今回テストすることにした。 インストーラ自体は小さく、起動用のUSBに書き込んで起動すればOK。 インストール完了後、マシン名やユーザ名を入力することで、環境設定は完了。 基本的にはFlatpakでインストールするのが正しい使い方らしいので、必要そうなものを入れてみた。 vscode Brave Browser LMStudio DBeaver-ce Thunderird Obsidian opencode LibreOffice など・・・ どれも、サクサクと動作して気持ちいい。 日本語環境 さて、問題は日本語環境だが、調べてみるとflatpakにmozcもfcitx5も存在していた。 これんらばと思い、入れてみる。 https://note.kurodigi.com/vanillaos-fcitx5-mozc/ が、vanillaOS2の記事のようだけれども、同じ手順でOKだった。 すばらしい。 いつも使用しているmozcが動作するようになった。 ところが、LMStudioでハマった… flatpak特有の問題 LMStudioはすんなり入り、LMLinkでローカルのAIサーバも使用可能。 で、URLを指定したときにWEBサイトを取りに行かせて、処理させるMCPでハマった。 https://github.com/modelcontextprotocol/servers...

PostgreSQLでEUC_JPのテーブル

今さらEUC_JPって感じだけど

すでにサーバ環境がUTF-8をデフォルトとするようになって、随分経っているので必要となるケースは少ないんだけど、今回はハマりました。

通常であれば、UTF-8でDBを構築していけば、特に問題もなく引っかかるようなところは何もないのだけれど…。
サーバの移行のため、仕方なくEUC_JPを使うことに。

旧データベースは、プログラムもEUC_JPで構築されている。
プログラムの書き換えは動作検証に時間がかかるので、そのまま動かしたい。

まぁPostgreSQLは文字コードを選べるので、問題ないだろうと…。

サーバにPostgreSQLをインストール

これは問題なく、いつも通りapt-getで入れてオシマイ。
何も引っかかるところはありません。

ついでに、phppgadminも入れておく。
これで作業が簡単になる。

旧サーバにも入っているので、確認がしやすいですな。
若干、バージョンが異なっているので、その点だけ要注意と。

さてphppgadminを使ってDBをEUC_JPで作ろうとしたら、上手くいかない。
createdb: database creation failed: ERROR:  encoding EUC_JP does not match locale en_US.UTF-8
見慣れぬエラーですね…。しかもDBは作成してくれない。

何か操作を間違えたのかと、見直すが、特に手順に問題はない。
「ERROR:  encoding EUC_JP does not match locale en_US.UTF-8」でググってみると 、最初に答えが見つかった。

名称未設定:Ubuntu12.04LTSのPostgreSQLでEUC_JPのデータベースを作る」とまんま同じ内容だった。

これによると、
createdb -T template0 -E EUC_JP --locale=C dbname
と、localをCで作りなさいということらしい。

試しに、コンソールから試してみると、確かに文句も言われず作成してくれる。

phppgadminでもできるはず 

この方法は、postgresユーザで作業するコンソール上のコマンドなので、phppgadmin上で異なるユーザで作成したい。

試してみるが、どこに設定すべきか分かりにくい。

何度か試してみると、図のようにすれば思うように作成できることがわかった。

Template→template0を選択(UTF-8の時はtemplate1)
エンコード→もちろんEUC_JP
CollectionとCharacterType→Cで設定

これでOKだった。

ここまでくれば、あとはdumpデータを突っ込んでやればOK。

と思ったら、「サーバが指定されていません」って…。見たことのあるメッセージや!
半年以上経つと、すっかり忘れて同じミスをしでかす。

だからこうやってブログにまとめておく必要があるんだなぁwww

ちゅうことで、php.iniを書き換えて解決とな。


コメント

このブログの人気の投稿

MEGAにも弱点があった?

Ubuntu24.04 でGUIが死んだ

VirtualBoxでUSBを使う方法が分かった!