ファン交換と gstreamer

  ThinkPad T42 の冷却ファンがおかしくなりました。大きな音をたてるようになり、回転数も安定しないようです。このままでは回転しなくなるのも時間の問題ではないか と思われました。10年以上前のマシンなので引退させてもよかったのですが、電源部の故障で先に逝ってしまった T43 の冷却ファンを移植してみました。

  ネット上にある ThinkPad Maintenance Manual を参照してキーボードやパームレストを取り外しました。T4x シリーズの冷却ファンは、ファンの台座とヒートシンク、ダクトが一体化したユニット式です。余談ですが、ファンの台座やダクト部分まで銅で作ってあるのは、 しろうとの私には疑問です。ファンそのものや周辺の部品に熱が伝わってしまうと思うのですが... キーボードも暖かくなるのですが、意図的に放熱に利用しているのかもしれません。

  開けてみて分かったのですが、T42 のヒートシンクは CPU のみに伸びており、T43 のものは CPU と GPU をカバーしています。T42 の GPU は自然冷却なのでしょう。ヒートシンクが付いていなくてもパソコン内部には空気の流れができるはずです。要するに、T43 の冷却ユニットを流用すると GPU 部分が余分なのですが、スペース的には T42 に収まるので、そのまま取り付けました。

  その後、しばらく Puppy に付属する HardInfo で温度変化やファンの回転数をチェックして、冷却ユニットが機能していることを確認しました。動画再生など負荷のかかる処理が終わった後、CPU は急速に温度が下がるのに対し、GPU の温度が下がるのにはやや時間がかかります。T43 を使っていた時もそういう傾向がありました。やはり、冷却ユニット全体を銅板で作るのは適切な設計なのだろうか、と少し気になります。


  話は変わって、Yahoo の https 通信が全面的に TLS1.2 に移行するという告知がありました。これにより Lupu にインストールしてある Chrome 26 が影響を受けます。Chrome 26 は TLS1.2 に対応していません。こんな古いブラウザをインストールしているのは、YouTube 動画の再生が軽いからです。(h264/mp4 での再生)

  代わりのブラウザとしては Pale Moon 27 がありますが、Lupu 上では h264/mp4 が使えません。vp8 / vp9 コーデックでの再生はできますが、CPU に負荷がかかります。h264/mp4 再生に拘るのは、この方式が OS やブラウザの種類に関係なく一番安定している(負荷も少ない)と思うからです。

  少し古いですが、Pale Moon 26 は gstreamer を利用することで h264/mp4 での再生が可能になります。Puppy には通常 gstreamer は搭載されていないので、追加する必要があります。Lupu (Ubuntu Lucid ベース) のパッケージマネージャは Lucid のサポートが終わっていて、もはや機能しないのですが、幸い sfs パッケージがありました。

gstreamer-0.10.18-lucid.sfs (Shinobar さん作成)

作成者さんに感謝しつつ利用させていただきます。

  Pale Moon 26.5 (26 系の最終版)をインストールして YouTube を見てみると、h264/mp4 での再生になっていました。ただ、Pale Moon 26 は MSE (Media Source Extensions) に対応していないので、ライブ配信が再生できないという制約があります。なお、古いブラウザを使う場合はセキュリティの問題があるかもしれないので、at your own risk でお願いします。Pale Moon 26 は TLS1.2 には対応しています。

youtube html5

(上図) Pale Moon 26.5 で gstreamer 利用の場合。MSE は無効になっている。

  Precise 571JP や Slacko 5.7 にも gstreamer を入れてみました。どちらも sfs ではなく、パッケージマネージャからインストールします。Precise や Slacko では Pale Moon 27 で h264/mp4 再生ができます (libavcodec 利用) が、Pale Moon 26.5 を利用すると動画再生時の CPU 使用率がやや下がります。しかし、これは gstreamer を利用しているからなのか、古い(したがって軽い)ブラウザを利用しているからなのか、定かではありません。

ThinkPad X121e の 571JP に追加したパッケージ

gstreamer0.10-ffmpeg_0.10.13-1
libvisual-0.4-0_0.4.0-4
gstreamer0.10-plugins-base_0.10.36
gstreamer0.10-plugins-good_0.10.31


Slacko 5.7 に追加したパッケージ

gst-plugins-base-0.10.36
gstreamer-0.10.36
libvisual-0.4.0
gst-ffmpeg-0.10.11
gst-plugins-good-0.10.31



  Slacko 5.7 を使えばいいのに、Puppy 4.1.2 や Lupu 5.2.8 も残しているのは何故か。 Puppy 4.1.2 は早い時期から使っており、アプリケーションもたくさんインストールしてあります。 ビデオドライバ (ati ドライバ) の出来は、Lupu が一番優れていると思われます。Slacko 5.7 はライブラリが比較的新しいので、 新しめのアプリが利用できます。結局、どれも一長一短があって、どれか一つに決められないんですね。
2018年8月

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


Bionicpup64

  この Puppy は現時点ではベータ版です。私はオフィシャルな Puppy 以外にはほとんど手を出さないのですが、Bionicpup64 にはいろいろ思うところがあって、少し動かしてみました。

  (2019年3月追記: Bionicpup64 8.0 がオフィシャル Puppy になりました。なお、この記事の後のほうで触れている Upup BB も、 Bionicpup32 8.0 と命名されてオフィシャル Puppy に加わりました。)
  (2019年10月追記:「Bionicpup64 8.0 日本語化版 シンプル」を Puppy Linux 日本語フォーラムで puplet として公開しています。 日本語入力は fcitx-anthy を採用しました。)

  まず日本語化します。(64bit Puppy ゆえ、lang_pack_ja-2.1.sfs を適用しても、日本語入力はできません。Puppy 日本語フォーラムで公開されている 64bit 用の日本語化モジュールを利用すれば動くかもしれません。)

1. 日本語フォントを入れる。lang_pack に含まれている M+1P+IPAG と TakaoEx明朝を入れました。

2. 言語、タイムゾーン、キーボードを設定する。

3. パッケージマネージャから scim-anthy と依存パッケージを入れる。

4. scim-gtk-immodule と依存パッケージを入れる。scim-qt-immodule は入れませんでした。(理由は後述)

5. /usr/share/X11/locale に、lang_pack の /usr/X11R7/lib/X11/locale にある ja_JP.UTF-8 (フォルダ)をコピーして入れる。

6. immodules.cache をアップデートする。以下のコマンドを実行しました。

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

7. ~/.xinitrc に scim を起動させる設定を書く。

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

8. kasumi_2.5-9_amd64.deb をインストールする。パッケージマネージャで見つかる kasumi は パッケージマネージャからインストールされる anthy と互換性がありません。(おかしな話です。しばらく悩みました。) 最新の kasumi パッケージを別途ダウンロードしてインストールしました。


  残念ながら、scim は qt5 と互換性がありません。scim-qt-immodule を入れると依存関係で qt4 が入りますが、Bionicpup64 は qt5 を採用しているので無意味です。scim がだめでも xim で日本語入力できればいいのですが、qt5 は xim とも互換性がありません。ちゃんと対処しようとすると、他の im を入れなければならないのですが、どれも scim よりサイズが大きく、たくさんの依存パッケージを要求するので、やめました。
  qt アプリケーションというと vlc や smplayer が頭に浮かびますが、メディアプレーヤーで日本語を入力する場面はほとんどないと思います。どうしても必要な場合は、 テキストエディタで入力しておいて、コピーアンドペーストすることができます。

  一応、日本語表示と、日本語入力ができるようになりました。メニューや各アプリケーションの日本語化は、lang_pack から該当するファイルを借用すれば概ね可能ですが、Bionicpup64 はまだベータ版であり、今後改良が加えられると思われるので、日本語化は急いで行なうことでもないと考えています。

bionicpup64 desktop

Bionicpup64 のデスクトップ。ウインドウの周囲や入力中の文字列に影がついています。(jwm や gtk のテーマは好みのものに変更しています。Chromium は iso には含まれていません。)

  Bionicpup64 は、Ubuntu Bionic Beaver をベースとする Puppy で、Tahrpup や XenialPup をまとめた 666philb さんが中心になって開発中です。次期オフィシャル Puppy になるであろうと推測されます。ただ、ベースとなった Ubuntu Bionic と同じく、64bit 版のみの配布となる可能性もあります。
  Ubuntu Bionic 由来の 32bit Puppy として、Upup (ユーパプ) BB がありますが、こちらは将来、オフィシャル Puppy になるのかどうか... 64bit が主流となるのは避けがたいことかもしれません。

  Puppy はどのバージョンも内容がだいたい同じで新味がない、という意見をときどき耳にします。しかし、共通のコンセプトに基づいているからこそ、 バージョンが変わっても安心して利用できるのです。見た目は同じでも、採用されているカーネルは異なります。 そのことにより、ハードウエアのサポート状況が違ってきます。新しい Puppy では、新しいハードウエアのサポートが付け加わっているでしょうし、古いハードウエアのサポートは切り捨てられているでしょう。
  家の ThinkPad X121e (2011年製) はもう旬は過ぎた、と考えられます。Tahrpup か XenialPup が適合しており、Bionicpup は動くものの、適しているとは言えません。例えば、Bionicpup に同梱のビデオドライバ (radeon) では、これまでと違って mpv でハードウエアデコードが有効になりませんでした。最近のマシンならば、うまく動くのかもしれません。

  複数のバージョンを試してみて、自分のマシンに最適な Puppy を見つけることが重要です。新しい Puppy はタッチパネル搭載のマシンでもちゃんと動くのでしょうか。家には古いマシンしかないので確認のしようがありませんが...


(2019年1月追記)
  Bionicpup64 は、バージョン 7.9.8 (CE) RC となりました。開発の過程でカーネルのバージョンが上がり、現在は 4.19.12 となっています。サイズは一時 400MB を越えましたが、現行のバージョンは 344MB です。
  カーネルを XenialPup64 のものに交換して起動してみました。下記 URL から、交換用のカーネルをダウンロードすることができます。

http://distro.ibiblio.org/puppylinux/huge_kernels/

  huge-4.9.58-xenialpup64.tar.bz2 を解凍して得られる2つのファイルをそれぞれ vmlinuz, zdrv_bionicpup64_7.9.8.sfs にリネームして、オリジナルのファイルと交換して使用しました。少し動かしてみましたが、今のところ問題は起きていません。やはり、ThinkPad X121e には 4.9系カーネルのほうが適しているようです。動作速度も若干速くなりました。なお、カーネルを交換して動かす場合は "at your own risk" でお願いします。
(追記終り)
2018年10月


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