EasyOS で mozc を使って入力する話

EasyOS は Puppy Linux 系に近い使い勝手を持ちながら、独自の仕組みを多く持つ Linux ディストリビューションです。
軽量で扱いやすい一方、Puppy Linux と同じ感覚で日本語入力環境を追加しようとすると、少しつまずく場面があります。

この記事では、EasyOS 上で fcitx5-mozc を使って日本語入力できるようにしたときの考え方、実際に必要になった設定、注意点をまとめます。

私自身の環境では、EasyOS 7.3 系で fcitx5-mozc を組み込み、Firefox や Chromium 系ブラウザー、LibreOffice などで日本語入力できる状態を確認しています。

セットアップの手順

USB外付けにセットアップする簡単な手順です。
EasyOS のイメージファイルを以下のディレクトリからダウンロードします。

Rufus を使って ドライブに書き込みます。

thinkpadnerd さんが Puppy Linux 日本語フォーラムで配布している 日本語化の pet から im を除いたもの作成しているのでダウンロードしてインストールします。( thinkpadnerd さん感謝!!)

fcitx5-mozc をインストールします。
(apt install を実行しています。)

日本語入力が確認できたブラウザは

mozcで入力できたもの Firefox, SeaMonkey, Vivaldi, Chromium, Google Chrome

補足:ブラウザを後からインストールした場合、OSを更新した場合は日本語入力修復を実行後、再起動でで入力できるようになります。

起動確認ができなかったもの Opera

EasyOS で日本語入力が難しく感じる理由

EasyOS は、一般的な Debian / Ubuntu 系 Linux とは構成が少し異なります。

特に注意が必要なのは、次の点です。

  • アプリケーションが通常環境とコンテナ環境に分かれることがある
  • root 実行と spot 実行の違いがある
  • ブラウザー類が通常のデスクトップアプリと同じ入力方式で動かない場合がある
  • .xinitrc などの起動設定が更新や再構成で変わる可能性がある
  • fcitx5 や dbus の起動順が合わないと Mozc が認識されない

つまり、単に fcitx5-mozc のパッケージを入れただけでは、必ずしも日本語入力が完成しません。

EasyOS では、fcitx5、Mozc、dbus、環境変数、アプリの起動方式をまとめて見る必要があります。

使用した日本語入力環境

今回の構成では、次のような組み合わせを使っています。

  • EasyOS 7.3 系
  • fcitx5
  • fcitx5-mozc
  • dbus / dbus-launch
  • 日本語フォント
  • 日本語 locale
  • 必要に応じた修復スクリプト

Mozc は Google 日本語入力のオープンソース版にあたる入力エンジンです。
Puppy Linux 系でも Mozc を使えると、日本語入力の変換精度がかなり実用的になります。

基本方針

EasyOS で Mozc を使う場合、私の環境では次の方針にしました。

  1. fcitx5-mozc を組み込む
  2. 起動時に fcitx5 が自動で起動するようにする
  3. dbus が認識されるようにする
  4. 日本語入力用の環境変数を設定する
  5. 設定が消えた場合に戻せる修復スクリプトを用意する

特に重要なのは、一度動いた設定を固定的に考えないことです。

EasyOS は更新や再構成によって、起動設定が変わる可能性があります。
そのため、手作業で一度だけ設定するよりも、必要な記述がなければ追加する修復スクリプトを用意しておく方が安全です。

日本語入力に必要な環境変数

fcitx5 を使う場合、一般的には次のような環境変数を設定します。

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

ただし、Puppy Linux 系や EasyOS では、アプリケーションによって fcitx 指定よりも xim 指定の方が安定する場合があります。

その場合は、次のようにします。

export GTK_IM_MODULE=xim
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

私の環境では、Firefox や Chromium 系ブラウザー、LibreOffice などで実際に入力確認をしながら調整しました。

ポイントは、設定値だけを見て判断しないことです。
最終的には、実際に使うアプリで日本語入力できるかどうかを確認する必要があります。

dbus-launch が必要になる場合

fcitx5 を起動しても Mozc が認識されない場合、dbus が関係していることがあります。

EasyOS では、通常の Linux ディストリビューションと同じ感覚で fcitx5 を起動しても、dbus セッションがうまく渡っていない場合があります。

その場合、起動処理の中で dbus-launch を使うことで改善することがあります。

例としては、次のような考え方です。

eval "$(dbus-launch --sh-syntax)"
export DBUS_SESSION_BUS_ADDRESS
export DBUS_SESSION_BUS_PID

その上で fcitx5 を起動します。

fcitx5 &

このあたりは環境によって差が出やすい部分です。
動かない場合は、fcitx5 だけを見るのではなく、dbus が正しく起動しているかも確認します。

fcitx5 の起動確認

fcitx5 が起動しているかどうかは、ターミナルで確認できます。

ps | grep fcitx5

または、

pgrep -a fcitx5

Mozc 関連が認識されているかどうかは、fcitx5 の設定画面や入力メソッド一覧で確認します。

入力メソッドに Mozc が出ていない場合は、fcitx5-mozc の組み込み、locale、dbus、起動順のどこかに問題がある可能性があります。

修復スクリプトを用意する理由

EasyOS では、設定ファイルを手動で編集して日本語入力できるようにしても、更新や再構成によって一部の設定が戻る可能性があります。

そのため、私は 日本語入力の修復スクリプトを用意しました。

考え方としては、設定ファイルを毎回上書きするのではなく、必要な記述が存在しない場合だけ追加する方式です。

たとえば、.xinitrc に必要な環境変数や fcitx5 起動処理がなければ追加する、という形です。

この方式にしておくと、EasyOS 側の設定を壊しにくく、あとから再実行もしやすくなります。

PET 化しておくと再利用しやすい

設定がまとまってきたら、PET パッケージ化しておくと便利です。

PET 化しておくことで、別の EasyOS 環境へ移すときや、再セットアップしたときに同じ作業を繰り返さずに済みます。

私の場合は、fcitx5-mozc 関連の設定と修復用スクリプトをまとめ、EasyOS 用の PET として扱えるようにしました。

PET を作成するときは、処理が終わったことが分かるように、最後にメッセージを表示させると便利です。

EasyOS の環境では、次のような表示が使えました。

gtkdialog-splash -bg yellow -text "PET 作成が終了しました" -timeout 5

Puppy Linux 系では yaf-splash を使う例もありますが、EasyOS では環境によって使えない場合があります。
その場合は gtkdialog-splash が代替になります。

メニュー登録について

修復スクリプトをメニューから起動できるようにする場合、.desktop ファイルを用意します。

EasyOS の JWM メニューでは、一般的な Settings; などのカテゴリだけでは表示されない場合がありました。

私の環境では、次のカテゴリ指定でメニューに表示されました。

Categories=X-Desktop;

例としては、次のような .desktop ファイルになります。

[Desktop Entry]
Encoding=UTF-8
Name=Japanese IM Repair
Name[ja]=日本語入力修復
Comment=Repair fcitx5-mozc startup settings
Comment[ja]=fcitx5-mozc の起動設定を修復します
Exec=/usr/local/bin/easyos-fcitx5-mozc-repair
Icon=accessories-text-editor
Terminal=false
Type=Application
Categories=X-Desktop;

.desktop ファイルを追加したあとは、必要に応じてメニュー更新を行います。

fixmenus
jwm -restart

これで、JWM のメニューから日本語入力修復スクリプトを実行できるようになります。

ブラウザーでの日本語入力

EasyOS で特に注意したいのがブラウザーです。

Firefox や Chromium 系ブラウザーは、通常のアプリと異なる権限や実行ユーザーで動く場合があります。
そのため、テキストエディタで日本語入力できても、ブラウザーでは入力できないことがあります。

確認するときは、次のように複数のアプリで試すのがよいです。

  • テキストエディタ
  • LibreOffice
  • Firefox
  • Chromium / Chrome 系ブラウザー

すべてで同じように入力できるとは限りません。

特に spot 起動のブラウザーでは、root 側で起動している fcitx5 と通信できるかどうかが問題になります。
この場合、XIM を使う設定や、dbus の扱いが重要になります。

LibreOffice での確認

LibreOffice は日本語入力の確認に向いています。

Writer を起動して、Mozc でひらがな入力、漢字変換、候補表示ができるか確認します。

LibreOffice 側で入力できる場合でも、ブラウザーで入力できないことがあります。
逆に、ブラウザーで入力できても LibreOffice で不安定な場合もあります。

EasyOS ではアプリごとに挙動が違うことがあるため、複数アプリで確認するのが安全です。

うまく入力できないときに見る場所

1. fcitx5 が起動しているか

pgrep -a fcitx5

fcitx5 が起動していなければ、まず自動起動設定を確認します。

2. Mozc が入力メソッドに存在するか

fcitx5 の設定画面で Mozc が表示されているか確認します。

表示されない場合は、fcitx5-mozc のパッケージや配置に問題がある可能性があります。

3. 環境変数が入っているか

echo $GTK_IM_MODULE
echo $QT_IM_MODULE
echo $XMODIFIERS

GTK_IM_MODULEXMODIFIERS が空の場合、アプリ側に入力メソッドが伝わっていない可能性があります。

4. dbus が動いているか

echo $DBUS_SESSION_BUS_ADDRESS

空の場合、dbus セッションが正しく設定されていない可能性があります。

5. root と spot の違いを確認する

root で動くアプリと spot で動くブラウザーでは、日本語入力の条件が変わる場合があります。

「テキストエディタでは入力できるのにブラウザーではできない」という場合は、ここを疑います。

EasyOS で Mozc を使うときの注意点

EasyOS では、一般的な Linux と比べて日本語入力の設定がやや繊細です。

特に、次の点は注意が必要です。

  • パッケージを入れただけでは完成しない
  • dbus の起動状態が重要
  • root アプリと spot アプリで挙動が変わる
  • ブラウザーは特に確認が必要
  • 更新後に設定が変わる可能性がある
  • 修復スクリプトを用意しておくと安心

Puppy Linux 系の経験がある人でも、EasyOS では少し考え方を変える必要があります。

まとめ

EasyOS でも fcitx5-mozc を使って日本語入力することは可能です。

ただし、単純にパッケージを追加するだけではなく、fcitx5 の起動、dbus、環境変数、root / spot の違いを確認する必要があります。

私の環境では、設定を手作業で固定するのではなく、必要な記述を確認して追加する修復スクリプトを用意することで、安定して使いやすくなりました。

EasyOS は独自性の強いディストリビューションですが、仕組みを理解して設定すれば、日本語環境としても十分実用になります。

Mozc の変換精度を EasyOS でも使いたい方は、fcitx5-mozc と dbus の関係を意識しながら設定してみるとよいと思います。

タイトルとURLをコピーしました