Plymouth: Difference between revisions

From NixOS Wiki
Create with a basic usage section.
 
m Put the important configurations first
Line 7: Line 7:
{ pkgs, ... }: {
{ pkgs, ... }: {
   boot = {
   boot = {
    plymouth = {
      enable = true;
      theme = "rings";
      themePackages = with pkgs; [
        # By default we would install all themes
        (adi1090x-plymouth-themes.override {
          selected_themes = [ "rings" ];
        })
      ];
    };


     # Enable "Silent Boot"
     # Enable "Silent Boot"
Line 24: Line 35:
     # It will just not appear on screen unless a key is pressed
     # It will just not appear on screen unless a key is pressed
     loader.timeout = 0;
     loader.timeout = 0;
    plymouth = {
      enable = true;
      theme = "rings";
      themePackages = with pkgs; [
        # By default we would install all themes
        (adi1090x-plymouth-themes.override {
          selected_themes = [ "rings" ];
        })
      ];
    };


   };
   };
}
}
</nowiki>}}
</nowiki>}}

Revision as of 01:03, 5 April 2024

Plymouth is an application that runs early in the boot process, providing a graphical boot animation, it is used by most desktop-oriented Linux distributions.

Usage

As an example, you can use a boot animation from adi1090x's collection like so:

configuration.nix
{ pkgs, ... }: {
  boot = {

    plymouth = {
      enable = true;
      theme = "rings";
      themePackages = with pkgs; [
        # By default we would install all themes
        (adi1090x-plymouth-themes.override {
          selected_themes = [ "rings" ];
        })
      ];
    };

    # Enable "Silent Boot"
    consoleLogLevel = 0;
    initrd.verbose = false;
    kernelParams = [
      "quiet"
      "splash"
      "boot.shell_on_fail"
      "loglevel=3"
      "rd.systemd.show_status=false"
      "rd.udev.log_level=3"
      "udev.log_priority=3"
    ];
    # 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;

  };
}