Tahr Puppy 64bit 日本語化の試み

  本家英語版 puppy_tahr64_6.0.5.sfslang_pack_ja-2.0.sfs を適用すれば、日本語表記になりますが、lang_pack に含まれている日本語入力システムが 32bit 版であるため、64bit 環境では動作しません。 以下のような手順で手直しを行ないました。 マシンは ThinkPad X121e です。

(2017年3月追記)
  ここに記した手順で tahrpup64 6.0.6 英語版を日本語化し、puplet (Puppy 派生版) 「tahrpup64 6.0.6 日本語化版 シンプル」として公開しました。 (→ Puppy Linux 日本語フォーラム)


  まず、SFS to PET Converter で lang_pack を pet 化しようとしましたが、どういうわけか pet パッケージにならず、単に展開されました。 展開された lang_pack の中身を / にコピーします。

  言語、タイムゾーン、キーボードを日本語環境に設定します。lang_pack のインストールが必要、という警告が出ますが、既にファイルのコピーは終えているので、X を再起動します。(この後も設定を変更する度に X の再起動が必要です。)

/usr/local/bin/jwm_font_repair.sh を実行します。日本語環境向けのフォントの変更を自動的にやってくれます。

/usr/local/bin/fixmenus_on_locale を実行します。

~/.jwmrc と ~/.jwm/jwmrc-theme を開いて、フォント名 DejaVu Sans とあるのを Sans に変更します。

~/.jwm/themes/*-jwmrc と /etc/xdg/templates/_root_.jwmrc についても同様に Sans に変更します。(JWMテーマを変更した場合に文字化けすることへの対策です。9月追記)

  結果、デスクトップとアプリケーションは日本語化されました。 メニューはもともと日本語の情報を含む項目のみ日本語になります。 完全に日本語化するには /usr/share/applications.nls にあるファイルに置き換えなければなりませんが、英語のままでも困らないのでそのままにしてあります。

  anthy, scim, scim-anthy を --prefix=/usr のオプションをつけてコンパイルしてインストールします。(コンパイルには dev_tahr64_6.0.5.sfs が必要です。) /usr 以下には SCIM(32bit) のファイルがありますが、SCIM(64bit) で上書きされるはずです。

~/.xinitrc に im の設定を追加します。(keymap の項目の下に追加)

 #im
 export XMODIFIERS='@im=SCIM'
 export GTK_IM_MODULE="scim"
 export QT_IM_MODULE="scim"
 scim -d

タスクトレイにキーボードのアイコンが現れるので、SCIM の設定を呼び出して「日本語キーボード」に設定します。

/usr/lib/gtk-2.0/2.10.0/immodules/im-scim-bridge.so(32bit) を削除します。(これが残っていると、後述の immodules.cache の生成に失敗します。)

以下のコマンドを実行します。

 # gtk-query-immodules-2.0 --update-cache

/usr/lib/gtk-2.0/2.10.0/immodules.cache の記述を修正します。

 "/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-scim.so"
 "scim" "SCIM Input Method" "scim" "/usr/share/locale" "ja:ko:zh:en"
 ~中略~
 "/usr/lib/gtk-2.0/2.10.0/immodules/im-scim.so"
 "scim" "SCIM Input Method" "scim" "/usr/share/locale" "ja:ko:zh:en"

日本語入力が機能するようになりました。

  画像をクリックすると、より大きな画像を表示します。本文に戻る時は「戻る」操作を して下さい。 (アイコンセットは初期設定のものから好みのものに変更してあります。) 

tahrpup_desktop

  日本語入力と関係ないのですが、タッチパッドを無効にしても次回起動時には有効になってしまいます。 これは "flsynclient" が設定ファイルを読み込まないで起動するのが原因のようです。Tahr Puppy 64bit のバグだと思います。

この問題の解消と、トラックポイントの感度の調整のために、スクリプトを書いて ~/Startup フォルダに入れました。

mouse.sh
 #!/bin/sh
 flsynclient -s

 cd /sys/devices/platform/i8042/serio4/serio5
 echo -n 110 > speed
 echo -n 220 > sensitivity


  Tahr Puppy (32bit) では、USB機器を接続中にスタンバイ状態にできない問題がありました。64bit 版でも同様です。Tahr Puppy (32bit) では自分でスクリプトを書いて対応しましたが、今回 /etc/rc.d/rc.local に設定があることを発見しました。

rc.local を開いて、echo enabled と書かれている箇所を echo disabled に変更すればスタンバイできるようになります。



  今回の試みでは、lang_pack をもとにして、日本語入力関係のファイルのみ 64bit 版に置き換えています。 この Puppy をリマスターすれば、ひとつの (英語で言うと the ではなく a) Tahrpup 64 Japanese Edition ができることになりますが、個人で使う分には、個人ファイルのバックアップだけとっておけば十分です。
  同じマシンには Windows 10 64bit もインストールしてありますが、動作はもっさりしています。Tahr Puppy 64bit はきびきびと動作します。Linux を使うメリットが感じられます。 ただ、32bit に対する 64bit のメリットは何か、と考えても、今のところ答えは思いつきません。
2016年8月

[雑感目次へ] [ホームへ]