Debian lenny上でSplashyが動作するかを検証(2007/11/5現在)
Ubuntu Gutsy(7.10)ではuswsuspでの休止と復帰の処理でSplashyの動作が確認できたものの、起動時にはバーが進まず、停止時にはスプラッシュ自体出なかった。Debianのほうではどうなっているのかが気になっていたので、インストール直後の状態から入れて実験してみた。
- インストール
- Splashyを使用するための準備(vesafbを使用 + Splashyを有効にするためのカーネル引数)
- 動作確認
- 現状、initramfsを使用するとNG?
- initramfsを使用しなくてもエラーは出ている
インストール
2007年11月頭の時点では、Splashy関係のパッケージは不安定版でのみの提供となっているため、以下の流れでこれを利用できるようにする。パッケージリポジトリ/apt-lineの設定
不安定版のパッケージを取って来られるよう、apt-lineを追加。ファイル名: /etc/apt/sources.list
deb http://cdn.debian.or.jp/debian/ unstable main
不安定版からパッケージを入れるための設定(apt-pinning)
/etc/apt/preferencesに、http://debian.fam.cx/index.php
の「preferences を使う」で書かれている内容を書き、「基本的にlenny、必要なものだけsid」というパッケージの取り方をするように設定する。
設定後、実際にやってみると
$ sudo apt-get install splashy-themes (中略) 取得:1 http://cdn.debian.or.jp lenny/main x11-common 1:7.2-5 [340kB] 取得:2 http://cdn.debian.or.jp lenny/main libxau6 1:1.0.3-2 [11.7kB] 取得:3 http://cdn.debian.or.jp lenny/main libxdmcp6 1:1.0.2-2 [16.7kB] 取得:4 http://cdn.debian.or.jp lenny/main libx11-data 2:1.0.3-7 [157kB] 取得:5 http://cdn.debian.or.jp lenny/main libx11-6 2:1.0.3-7 [567kB] 取得:6 http://cdn.debian.or.jp lenny/main libsysfs2 2.1.0-2+b1 [27.5kB] 取得:7 http://cdn.debian.or.jp lenny/main libdirectfb-0.9-25 0.9.25.1-6 [834kB] 取得:8 http://cdn.debian.or.jp lenny/main libfreetype6 2.3.5-1+b1 [347kB] 取得:9 http://cdn.debian.or.jp lenny/main libjpeg62 6b-14 [86.0kB] 取得:10 http://cdn.debian.or.jp lenny/main libpng12-0 1.2.15~beta5-3 [187kB] 取得:11 http://cdn.debian.or.jp lenny/main libxext6 1:1.0.3-2 [30.1kB] 取得:12 http://cdn.debian.or.jp lenny/main libdirectfb-extra 0.9.25.1-6 [24.1kB] 取得:13 http://cdn.debian.or.jp lenny/main libglib2.0-0 2.14.1-5 [548kB] 取得:14 http://cdn.debian.or.jp unstable/main libsplashy1 0.3.5 [25.2kB] 取得:15 http://cdn.debian.or.jp unstable/main splashy 0.3.5 [2095kB] 取得:16 http://cdn.debian.or.jp unstable/main splashy-themes 0.4 [3943kB] (以下略)
そのようにやってくれているのが分かる。「apt-pinning」というらしいが、結構便利。
Splashyを使用するための準備(vesafbを使用 + Splashyを有効にするためのカーネル引数)
下の例では、画面解像度を1024x768/16bit(65536色)にしている。$ sudo sed -i -e 's/\(ro quiet\)$/\1 splash vga=0x317/' /boot/grub/menu.lst
動作確認
起動させると、きちんとバーが進む。シャットダウン時にもスプラッシュに切り替わり、左向きに戻っていくのが確認できた。現状、initramfsを使用するとNG?
以下の流れでinitrdにSplashyを入れることができる。$ sudo sed -i -e 's/ENABLE_INITRAMFS=0/ENABLE_INITRAMFS=1/' /etc/default/splashy $ sudo update-initramfs -u -t -k $(uname -r)
initrdを使用すると、使用しない場合よりも早めにスプラッシュに切り替わるのだが、実際に試してみると、
バーが少し進んだところ(上の画像の段階)でピタッと止まり、しばらくすると画面が切り替わり
Splashy ERROR: Timeout (120 sec) occurred while waiting for a message on the Splashy socket
と出て止まる。/etc/splashy/config.xmlに「<fifo>」の記述を書いてもダメ。
initramfsを使用しなくてもエラーは出ている
initramfsを使用しないと、スプラッシュ自体は出るのだが、起動時に... INIT: version 2.86 booting (Re)generating splash steps for: rc2.d... rc0.d... rc6.d...done. Starting Boot splash manager: splashy. Splashy ERROR: Connection refused Starting the hotplug events dispatcher: udevd. ...
終了時に
INIT: Switching to runlevel: 0 INIT: Sending processes the TERM signal (Re)generating splash steps for: rc2.d... rc0.d... rc6.d...done. Starting Boot splash manager: splashy. Splashy ERROR: Connection refused Stopping periodic command scheduler: crond. (中略) Asking all remaining processes to terminate...Splashy ERROR: Error while selecting poll event: Interrupted system call done. Killing all remaining procecces...done. ...
のように、一部でエラーメッセージは出ている。