aboutsummaryrefslogtreecommitdiffstats
path: root/plymouth/README
blob: 5dc8ef4f3a8ff08c7eb8bef34a2b22c20b8ccb9a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Plymouth provides a flicker-free graphical boot process. It relies on
kernel mode setting (KMS) to set the native resolution of the display as
early as possible, then shows a splash screen leading up to the login
manager.

Installing this package is not enough to get a splash screen. Plymouth
runs as a daemon started from the initrd, and Slackware's mkinitrd has
no hook for it, so the wiring is manual:

  1. Add "splash" to the kernel command line (and "quiet" for a silent
     boot). With GRUB, edit GRUB_CMDLINE_LINUX_DEFAULT in
     /etc/default/grub and run grub-mkconfig -o /boot/grub/grub.cfg

  2. Copy plymouthd, the plymouth client, the renderers in
     /usr/lib*/plymouth/renderers, the theme directory, /etc/plymouth,
     and every library they link against into the initrd, then start
     plymouthd from /init before the root filesystem is mounted.
     Upstream ships /usr/libexec/plymouth/plymouth-populate-initrd, but
     it assumes a dracut or initramfs-tools layout and needs adapting.

  3. Nothing tears the splash down without systemd. Call
     "plymouth quit --retain-splash" before the display manager starts,
     or "plymouth quit" at the end of /etc/rc.d/rc.M for a console boot.

On UEFI systems Plymouth uses the SimpleDRM driver by default to draw on
the EFI framebuffer, so the GPU driver need not be in the initrd.
Pass plymouth.use-simpledrm=0 to disable that. Note that with SimpleDRM
secondary monitors stay dark during boot, which matters if an encryption
passphrase prompt could land on one.

Boot messages are shown by pressing Esc during boot, and are logged to
/var/log/boot.log. Add plymouth.nolog to disable logging and console
redirection, or plymouth.debug to write debug output to
/var/log/plymouth-debug.log. If Plymouth prevents a successful boot,
disable it with plymouth.enable=0 on the kernel command line.

The theme is set in /etc/plymouth/plymouthd.conf, which this package
installs empty for administrator overrides. Distribution defaults are in
/usr/share/plymouth/plymouthd.defaults and select the "spinner" theme.
Ten themes are shipped; list them with "plymouth-set-default-theme -l".
The "bgrt" theme reuses the vendor logo the UEFI firmware already
painted, if the firmware provides one.

To preview the configured theme from a console without rebooting:

  plymouthd; plymouth --show-splash; sleep 5; plymouth --quit

Keep that as one chained command, the sleep is what returns control.

The initrd must be repopulated after every kernel update, and after any
theme change.