Jump to content

Plymouth

From Official NixOS Wiki
Revision as of 16:18, 5 October 2026 by FuzzyBot (talk | contribs) (Updating to match new version of source page)

Plymouth 是一个在启动过程早期运行的应用程序,提供图形启动动画。它被大多数面向桌面的 Linux 发行版所使用。

Preparation

Plymouth primarily uses KMS to display graphics, but on UEFI systems it can utilize the EFI framebuffer.

If you have neither KMS nor a framebuffer, Plymouth will fall back to text-mode.[1]

Installation

Basic Config

{
  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;
  };
}

用法

Changing the theme

Plymouth comes with a selection of themes:

  1. BGRT: A variation of Spinner that keeps the OEM logo if available (BGRT stands for Boot Graphics Resource Table)
  2. Fade-in: "Simple theme that fades in and out with shimmering stars"
  3. Glow: "Corporate theme with pie chart boot progress followed by a glowing emerging logo"
  4. Script: "Script example plugin" (Despite the description seems to be a quite nice Arch logo theme)
  5. Solar: "Space theme with violent flaring blue star"
  6. Spinner: "Simple theme with a loading spinner"
  7. Spinfinity: "Simple theme that shows a rotating infinity sign in the center of the screen"
  8. Tribar: "Text mode theme with tricolor progress bar"
  9. Text: "Text mode theme with tricolor progress bar"
  10. Details: "Verbose fallback theme"

NixOS sets the default theme to bgrt[2]. You can change the theme with `boot.plymouth.theme`:

{
  boot = {
    plymouth = {
      enable = true;
      theme = "solar";
    };
  };
}

Install new themes

例如,您可以通过以下代码使用 collection 中的启动动画:

❄︎ 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

Edit the configuration file:

{
  boot = {
    plymouth = {
      enable = true;
      extraConfig = ''
        [Daemon]
        DeviceScale=an-integer-scaling-factor
      '';
    };
  };
}

Tips and tricks

Show boot messages

在图形界面启动过程中,可以用退出键(或者说 ESC)在文本模式和 Playmouth 界面中切换。

Troubleshooting

LUKS Encryption

如果您使用 LUKS 加密,密码提示可能会回退到文本模式。虽然默认的 bgrt 主题支持图形化密码输入,但并非所有主题都支持此功能。

See Also