Skip to main content

Plymouth

Plymouth replaces boot messages with a pretty splash screen.

Installation

yay -S plymouth ttf-dejavu

Configuration

Enabling Plymouth requires editing the HOOKS array in /etc/mkinitcpio.conf. Depending on what your initramfs is based on the hooks slightly differ.

Busybox

If your initramfs is busybox-based (default in Arch Linux), add the plymouth hook after the base and udev hooks:

ATTENTION: When using the encrypt hook to unlock encrypted devices during boot, place it after the plymouth hook in order to receive a passphrase prompt, e.g.:

HOOKS=(base udev plymouth autodetect keyboard keymap consolefont modconf block encrypt lvm2 filesystems fsck)
HOOKS=(base udev plymouth ...)

Systemd

If your initramfs is systemd-based (i.e. to make use of systemd-cryptenroll), add the plymouth hook after the base and systemd hooks:

ATTENTION: When using the sd-encrypt hook to unlock encrypted devices during boot, place it after the plymouth hook in order to receive a passphrase prompt, e.g.:

HOOKS=(base systemd plymouth autodetect keyboard sd-vconsole modconf block sd-encrypt lvm2 filesystems fsck)
HOOKS=(base systemd plymouth ...)

Theming

A great selection of Plymouth themes can be found on the AUR.

To list available Plymouth themes (alternatively ls /usr/share/plymouth/themes):

plymouth-set-default-theme -l

Set the Plymouth theme and rebuild (-R) the initramfs, e.g. BGRT (keeps firmware logo and displays a spinner in a similar fashion to Windows):

TIP: When unlocking a LUKS encrypted root file system during boot the passphrase prompt replaces the firmware logo. To prevent this install and set the following theme instead:

yay -S plymouth-theme-bgrt-better-luks
sudo plymouth-set-default-theme -R bgrt-better-luks
sudo plymouth-set-default-theme -R bgrt

Reboot and enjoy!