2022/05/24(火) [n年前の日記]
#1 [xscreensaver][linux] xscreensaverについて少し調べてる
Ubuntu Linux や Debian Linux をインストールして設定を弄っているうちに、xscreensaver についてちょっと気になってきた。コレって自分で作れないのかなと。
xscreensaver は、Linux や Mac 上で動くスクリーンセーバ。インストールすると数十種類のスクリーンセーバが選べる。
_XScreenSaver
_XScreenSaver: Screenshots
自分は、8bit PCの各種デモ画面を眺めてワクワクしてた世代なので、こういうのが大好きで。どれがいいかなと選んでるだけでも楽しいです。
xscreensaver は、Linux や Mac 上で動くスクリーンセーバ。インストールすると数十種類のスクリーンセーバが選べる。
_XScreenSaver
_XScreenSaver: Screenshots
自分は、8bit PCの各種デモ画面を眺めてワクワクしてた世代なので、こういうのが大好きで。どれがいいかなと選んでるだけでも楽しいです。
◎ サンプルをコンパイル。 :
以下のページで xscreensaver の作り方が紹介されていたので眺めてみた。
_How to Write a Screensaver Module
_Simplesquares
_How to install a module
Ubuntu Linux 20.04 LTS上で、simplesquares.c をDLしてコンパイルしようとしたけれど、vroot.h が見つからないと言ってくる。
Ubuntu の場合、vroot.h は何のパッケージに入っているのか…。ググったけど見つからない…。
と思ったら、前述のページ内に vroot.h へのリンクがあった。つまり、simplesquares.c と同じ場所に vroot.h を置いてコンパイルすればそれで良かった模様。
simplesquares という、実行権限がついたファイルが生成された。
これを、~/.xscreensaver に登録してやればいいらしいのだけど…。
_How to Write a Screensaver Module
_Simplesquares
_How to install a module
Ubuntu Linux 20.04 LTS上で、simplesquares.c をDLしてコンパイルしようとしたけれど、vroot.h が見つからないと言ってくる。
$ gcc -o simplesquares simplesquares.c -L/usr/lib -lX11 simplesquares.c:4:10: fatal error: vroot.h: そのようなファイルやディレクトリはありません 4 | #include "vroot.h" | ^~~~~~~~
compilation terminated.
Ubuntu の場合、vroot.h は何のパッケージに入っているのか…。ググったけど見つからない…。
と思ったら、前述のページ内に vroot.h へのリンクがあった。つまり、simplesquares.c と同じ場所に vroot.h を置いてコンパイルすればそれで良かった模様。
$ gcc -o simplesquares simplesquares.c -L/usr/lib -lX11 simplesquares.c:6:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 6 | main () | ^~~
simplesquares.c: In function ‘main’: simplesquares.c:43:7: warning: implicit declaration of function ‘usleep’ [-Wimplicit-function-declaration] 43 | usleep (10); | ^~~~~
$ ls simplesquares simplesquares.c vroot.h
simplesquares という、実行権限がついたファイルが生成された。
これを、~/.xscreensaver に登録してやればいいらしいのだけど…。
◎ Pythonで作れたりもするらしい。 :
ググってたら、xscreensaver用のモジュールをPythonで作る事例も見かけた。
_A Python screensaver for xscreensaver (Linux) | alvinalexander.com
_A Python screensaver for xscreensaver (Linux) | alvinalexander.com
◎ 作者様はスゴイ人だった。 :
xscreensaver が Windowsに移植されない理由は以下で書いてあるわけだけど。
_XScreenSaver: Windows Version
「Micorosoftは俺が作った会社を潰した。許せねえ」ってどういうことだろうとググってみたら…。
_Jamie Zawinski - Wikipedia
_resignation and postmortem-j
xscreensaverの作者様、Jamie Zawinski さんは、Netscape社を作った方々の一人だったと今頃知った。それで Microsoft をひたすら憎んでいるのね…。
とは言え、その Microsoft の IE (Internet Explorer)も Google Chrome に殺されてしまったし。今の Windows は WSL2 で Linux が動いちゃったりするし。色んな Micorosoft製アプリがオープンソースで公開されてるし。当時と今とでは色々と違ってるよな…。それでもまだ Microsoft が憎くてたまらないのか…。
Windowsユーザって一番数が多いと思うのだけど、その、一番数が多いユーザ達に「xscreensaverってスゲエな」と思わせる機会を失ったあたりはなんだかもったいない気もする。憎しみは正常な判断能力を奪ってしまうもの。なのだろうか。
もっとも、今となってはスクリーンセーバなんてそもそも動かさないことが多いだろうし、今更な話かも。誰もそのPC使ってないし画面も見てないのにわざわざCPUを動かして描画する電力がもったいないから画面真っ暗にして省電力状態にするのが合理的だよね。みたいな。色々なディストリで、単に画面をフェードアウトさせるだけのアレコレが標準で入ってるのは、そういうことなんだろう…。スクリーンセーバをアレコレ選んで楽しむ時代は過ぎ去ってしまった…。
_XScreenSaver: Windows Version
「Micorosoftは俺が作った会社を潰した。許せねえ」ってどういうことだろうとググってみたら…。
_Jamie Zawinski - Wikipedia
_resignation and postmortem-j
xscreensaverの作者様、Jamie Zawinski さんは、Netscape社を作った方々の一人だったと今頃知った。それで Microsoft をひたすら憎んでいるのね…。
とは言え、その Microsoft の IE (Internet Explorer)も Google Chrome に殺されてしまったし。今の Windows は WSL2 で Linux が動いちゃったりするし。色んな Micorosoft製アプリがオープンソースで公開されてるし。当時と今とでは色々と違ってるよな…。それでもまだ Microsoft が憎くてたまらないのか…。
Windowsユーザって一番数が多いと思うのだけど、その、一番数が多いユーザ達に「xscreensaverってスゲエな」と思わせる機会を失ったあたりはなんだかもったいない気もする。憎しみは正常な判断能力を奪ってしまうもの。なのだろうか。
もっとも、今となってはスクリーンセーバなんてそもそも動かさないことが多いだろうし、今更な話かも。誰もそのPC使ってないし画面も見てないのにわざわざCPUを動かして描画する電力がもったいないから画面真っ暗にして省電力状態にするのが合理的だよね。みたいな。色々なディストリで、単に画面をフェードアウトさせるだけのアレコレが標準で入ってるのは、そういうことなんだろう…。スクリーンセーバをアレコレ選んで楽しむ時代は過ぎ去ってしまった…。
[ ツッコむ ]
以上です。