Fbsplash

提供: ArchWiki
2023年2月27日 (月) 20:45時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (→‎initcpio で Fbsplash を起動: 校正)
ナビゲーションに移動 検索に移動

Fbsplash (旧名 gensplash) は Linux 環境向けのスプラッシュ画面のユーザー空間実装です。システムの起動時に Linux のフレームバッファレイヤーを使ってグラフィカル環境を提供します。

インストール

Fbsplash

fbsplashAUR パッケージをインストールしてください。(この記事の後ろで説明している) コンソール壁紙を使うには linux-fbcondecorAUR[リンク切れ: パッケージが存在しません] などの fbcondecor のパッチが適用されたカーネルをインストールする必要があります。

テーマ

テーマは AUR で fbsplash-theme を検索したり、GNOME-Look.orgKDE-Look.org で見つかります。

設定

プレビュー

再起動や設定を行わずにインストールするテーマを選択するには、splash_manager コマンドを使用します。

このコマンドは、X で実行するのではなく、TTY から実行する必要があります。

例えば、arch-black テーマをインストールした後、再起動せずにサイレントモードでテストするには、次のようにします。

splash_manager -c demo -t arch-black --steps 100

詳細については:

splash_manager --help

Configuration file

インストールしたテーマを /etc/conf.d/splash に追加します。画面の解像度を指定して、スペースを制約することもできます。

/etc/conf.d/splash
...
SPLASH_THEMES = "
   arch-black
   arch-banner-icons/1280x1024.cfg
   arch-banner-noicons/1280x1024.cfg "
...

カーネルコマンドライン

ブートローダーのカーネルコマンドラインパラメータに quiet loglevel=3 logo.nologo gfxpayload=keep console=tty1 splash=silent,fadein,fadeout,theme:arch-banner-icons などと設定してください。詳しくはカーネルパラメータを参照。

パラメータ loglevel=3 はハードウェアに問題があるときもスプラッシュにカーネルメッセージを表示しないようにします (最近の initscript はデフォルトでこのパラメータを設定しません)。initcpio のメッセージを非表示にするには quiet が必要です。logo.nologo はブートロゴを削除します (linux-fbcondecorAUR[リンク切れ: パッケージが存在しません] を使用する場合は必要ありません)。console=tty1 はシステムメッセージを tty1 にリダイレクトします。splash=silent,fadein,fadeout,theme:arch-banner-icons はスプラッシュだけの起動画面を表示し、arch-banner-icons テーマがフェードイン・フェードアウトします。

設定ファイル

インストールしたテーマを /etc/conf.d/splash に配置してください。画面解像度を指定することで initcpio のスペースを確保できます:

/etc/conf.d/splash
SPLASH_THEMES="
    arch-black
    arch-banner-icons/1280x1024.cfg
    arch-banner-noicons/1280x1024.cfg"
ノート: arch-banner-icons テーマには arch-banner-noicons のシンボリックリンクが含まれています。どれかを使っている場合、解像度を制限してもあまり容量は節約されません。

initcpio で Fbsplash を起動

uresumeencrypt フックを使用する場合、mkinitcpio.conf でそれらの後に fbsplash を追加します。例:

/etc/mkinitcpio.conf
HOOKS="base udev autodetect [...] keymap encrypt uresume fbsplash"

mkinitcpio で initcpio を再生成してください。詳しくは mkinitcpio#イメージ作成とアクティベーション を参照。

ヒント: 復帰時間を早くするために、fbsplash の前に uswsusp を配置することを推奨します。あるいは Fbcondecor カーネルを使用する場合 fadein を消してください。

fbsplash が動作しない場合、KMS (カーネルモード設定) を使っているときは、適当なドライバーを mkinitcpio.conf に追加してみてください。

コンソール壁紙

Fbcondecor (例: linux-fbcondecorAUR[リンク切れ: パッケージが存在しません]) をサポートするカーネルを使っている場合、スプラッシュ画面の後ろにグラフィカルなコンソール壁紙を表示できます。

現在 (2015年)、fbsplashAUR パッケージに入っているコンソール壁紙を設定するデーモンはかなり古くなっています。しかしながら、プログラムは今でもちゃんとコンソール壁紙を扱うことができます。/usr/bin/splash_manager/usr/bin/fbcondecor_ctl を見て手動でコンソール壁紙を設定するか、systemd ユニットを作成して使って下さい。

スプラッシュ画面に興味がなくても、コンソール壁紙を使うにはスプラッシュテーマが必要になります。AUR から既存のテーマ fbsplash-theme を取得するか /etc/splash/ に自分でテーマを作成してください。テーマの .cfg ファイルのパラメータでコンソール壁紙を有効にするのに必要なのは pic だけです。

スプラッシュ画面の代わりに、コンソール壁紙と Arch Linux のブートメッセージだけを表示したい場合、カーネルコマンドラインを変更して verbose モードを使用して下さい:

quiet console=tty1 splash=verbose,theme:arch-banner-icons

参照