XScreenSaver 強引改造
今まで、スクリーンセーバーで使用されるプログラム(hack)で、i18n を実現すべく、Pango を使って強引に改造してきました。
Fedora34 になって、XScreenSaver のバージョンが 6.00 になりました。XScreenSaver 6.00 では、フォントが XFreeType にすべて置き換えられました。したがって、ロケールを設定し、 gettext により、簡単に i18n が実現できるようになりました。強引改造ではなくなりました。
主に、hack の i18n のために、XScreenSaver を改造しました。
- apollonian/fluidballs/engine/geodesicgears/glsnake/molecule/polyhedra/tangram などで表示される文字が i18n 対応になります。
- fps オプションでの表示文字が i18n 対応になります。
- fontglide と unicrud は i18n ではなく、多言語文字を表示したかったので、Pango を使った改造をしました。
- 設定ダイアログでの説明文が日本表示となります。
molecule のスクリーンショット
fontglide のスクリーンショット
unicrud のスクリーンショット
設定ダイアログのスクリーンショット
SRPM
xscreensaver-6.09-3.fc41.ys.nosrc.rpm
Fedora41 でリリースされる xscreensaver-6.09-3 にパッチを追加したパッケージです。
ビルドする場合には、xscreensaver-6.09.tar.gz が含まれていませんので、ダウンロードしてして下さい。
注意
追加パッチは X11 専用です。また、#ifdef DEBUG ... #endif の間のようにビルドでコンパイルされない部分は変更していません。
パッケージ名は変更していませんが、Epoch: 2 でパッケージが作成されます。Fedora で配布される xscreensaver に戻すときには、改造版をアンインストールしてから、配布版を再インストールして下さい。
PO ファイルの翻訳については、kxsconfig の翻訳 (Tranlator: Fumiaki Okushi) を流用・参考にしています。また、翻訳にはきっと誤訳がありますので、注意して下さい。
このパッチに関して、いかなる権利も主張しません。また、本サイトの記載やプログラムにより生じた損害について、一切の責任を負いかねます。インストール・実行はあくまで自己責任でお願いします。
ビルドされるもの
- xscreensaver-6.09-3.fc41.ys.(arch).rpm
- xscreensaver-base-6.09-3.fc41.ys.(arch).rpm
- xscreensaver-extras-base-6.09-3.fc41.ys.(arch).rpm
- xscreensaver-extras-6.09-3.fc41.ys.(arch).rpm
- xscreensaver-gl-base-6.09-3.fc41.ys.(arch).rpm
- xscreensaver-gl-extras-6.09-3.fc41.ys.(arch).rpm
- xscreensaver-extras-gss-6.09-3.fc41.ys.(arch).rpm
- xscreensaver-gl-extras-gss-6.09-3.fc41.ys.(arch).rpm
- xscreensaver-utils-6.09-3.fc41.ys.noarch.rpm
配布版 xscreensaver と名前は同じですが、ファイル構成を少し変えています。
また、意図的に hack をひとつ減らしています。
上記の rpm はローカルで(リポジトリからでなく)インストールされると思います。その場合、依存関係で自動的にインストールされないので、"dnf install" で一度にまとめてインストールして下さい。
- xscreensaver + すべての hack
- base, extras-base, extras, gl-base, gl-extras
- xscreensaver + OpenGL を使わない hack のみ
- base, extras-base, extras
- xscreensaver + OpenGL を使う hack のみ
- base, extras-base, gl-base, gl-extras
また、GNOME screensaver や xfce4-screensaver を使用して、XScreenSaver の hack を追加したい場合、
- すべての hack
- extras-base, extras, gl-base, gl-extras, extras-gss, gl-extras-gss
- OpenGL を使わない hack のみ
- extras-base, extras, extras-gss
- OpenGL を使う hack のみ
- extras-base, gl-base, gl-extras, gl-extras-gss
です。