Plymouth
Appearance
Plymouth 是一個源自 Fedora 的項目,現已列入 freedesktop.org 官方資源;它旨在提供無閃爍的圖形化啟動過程。該項目利用 內核模式設置 (KMS) 儘早設定顯示器的原生解析度,隨後呈現美觀的啟動畫面,直至進入登錄管理器。
準備工作
Plymouth 主要使用 KMS 來顯示圖形,但在 UEFI 系統上,它也可以利用 EFI 幀緩衝區。
如果沒有 KMS 或幀緩衝(framebuffer),Plymouth 將回退到文本模式。[1]
安裝
基礎配置
{
boot = {
plymouth = {
enable = true;
};
# Enable "Silent boot"
consoleLogLevel = 3;
initrd.verbose = false;
kernelParams = [
"quiet"
"rd.udev.log_level=3"
"rd.systemd.show_status=auto"
];
# Hide the OS choice for bootloaders.
# It's still possible to open the bootloader list by pressing any key
# It will just not appear on screen unless a key is pressed
loader.timeout = 0;
};
}
配置
改變主題
Plymouth 附帶了一系列主題:
- BGRT: Spinner 的變體,若可用則保留 OEM 徽標(BGRT 代表 Boot Graphics Resource Table,即啟動圖形資源表)
- Fade-in: 「簡約主題,伴隨閃爍星光進行淡入淡出效果」
- Glow: 「商務風格主題,包含餅圖形式的啟動進度顯示,隨後呈現發光的浮現徽標」
- Script: 「腳本示例插件」(儘管描述如此,但這實際上是一個相當不錯的 Arch 徽標主題)
- Solar: 「太空主題,包含一顆劇烈耀斑噴發的藍色恆星」
- Spinner: 「簡約主題,包含一個加載旋轉動畫」
- Spinfinity: 「簡約主題,在屏幕中央顯示一個旋轉的無窮大符號」
- Tribar: 「文本模式主題,包含三色進度條」
- Text: 「文本模式主題,包含三色進度條」
- Details: 「顯示詳細信息的備用主題」
NixOS 將默認主題設置為 bgrt[2]。您可以使用 `boot.plymouth.theme` 更改主題:
{
boot = {
plymouth = {
enable = true;
theme = "solar";
};
};
}
安裝新主題
例如,您可以通過以下代碼使用 adi1090x 的合集 中的啟動動畫:
❄︎ configuration.nix
{ pkgs, ... }: {
boot = {
plymouth = {
enable = true;
theme = "rings";
themePackages = with pkgs; [
# 默认情况下,我们会安装所有主题。
(adi1090x-plymouth-themes.override {
selected_themes = [ "rings" ];
})
];
};
# 启用“静默启动”
consoleLogLevel = 3;
initrd.verbose = false;
kernelParams = [
"quiet"
"rd.udev.log_level=3"
"rd.systemd.show_status=auto"
];
# 隐藏引导加载程序的操作系统选择选项。
# 仍然可以通过按任意键打开引导加载程序列表。
# 除非按下某个键,否则它不会显示在屏幕上。
loader.timeout = 0;
};
}
HiDPI
編輯配置文件:
{
boot = {
plymouth = {
enable = true;
extraConfig = ''
[Daemon]
DeviceScale=an-integer-scaling-factor
'';
};
};
}
提示和技巧
顯示啟動信息
在圖形化引導過程中,可以通過按下 Esc 鍵在文本模式與圖形模式之間切換。
故障排除
LUKS 加密
如果您使用 LUKS 加密,密碼提示可能會回退到文本模式。雖然默認的 bgrt 主題支持圖形化密碼輸入,但並非所有主題都支持此功能。