Plymouth

From LinuxReviews
Jump to navigationJump to search
Plymouth
Plymouth WJSN theme
Plymouth WJSN theme
Developer(s)Kristian Høgsberg, Ray Strode & Peter Jones
Stable release
0.9.6 / July 8, 2020; 2 months ago (2020-07-08)
Repositorygitlab.freedesktop.org: plymouth/plymouth
Written inBeautiful C
Operating systemLinux
TypeBootsplash
LicenseGNU GPL v2
Websitefreedesktop.org: /wiki/Software/Plymouth/
Org.kde.spectacle.svg

Plymouth is the most commonly used bootsplash program on Linux systems. It supports showing background images, animations and effects during the boot process. Graphics are drawn using either Direct Rendering Manager or Kernel Mode-Setting framebuffer drivers. Plymouth and the theme files are packed into the initrd image. There are hundreds of themes to choose between even though GNU/Linux distributions tend to only come with one or two.

Plymouth can also handle user interaction such as root partition password entry at boot.

Distributions

Most modern GNU/Linux distributions use Plymouth by default.

Fedora has used it since version 10. The grub kernel command line option for enabling/disabling Plymouth is rhgb on Fedora for a simple historical reason: Fedora used "Red Hat Graphical Boot" (RHGB) before that boot splash system was replaced with Plymouth.

Ubuntu has used Plymouth since Ubuntu 10.04 LTS was released in 2010.

Themes

Plymouth supports a number of modules that can be used by a number of themes. Some themes have their own Plymouth module (.so files in /usr/lib64/plymouth/) written in C in addition to a .plymouth theme file. Other themes are simply packages with images and, in some cases, a script file for a given module.

Plymouth themes are stored in /usr/share/plymouth/themes/ (On both Ubuntu and Fedora) and that is where you want to install additional themes.

A majority of the themes that are available on various websites where collections of themes are offered use the script module (available as a package called plymouth-plugin-script on Fedora). Themes made using the script module will have a .plymouth with ModuleName=script in the [Plymouth Theme] section and a .script file describing how animations how be drawn.

The script module is a good choice if you want to make your own custom Plymouth theme or port a Android boot splash theme to Plymouth since you do not have to write any C code and, more importantly, end-users who want to install your theme can simply copy the theme files to /usr/share/plymouth/themes/ and they are done. The alternative is to require them to compile your custom Plymouth module.

Individual Themes

You can install the following themes by downloading the archive and extracting them with

sudo tar xfj Themefile.tar.bz2 -C /usr/share/plymouth/themes/

Name/Preview Archive Plymouth module
April Forever

April forever.png

April-forever-0.1.1.tar.bz2 script
Hannah Montana Bootsplash
Hannah montana linux plymouth theme.jpg
Hannah Montana-Plymouth-Theme-1.0.tar.bz2 script


Yooa Bon Voyage
Yooa-bonvoyage-plymouth-theme.jpg
Yooa-bonvoyage-0.0.1.tar.bz2 script
WJSN Happy Moment
Wjsn-happy-moment.png
Wjsn-happy-1.0.2.tar.bz2 script

Collections

These files contain one sub-folder files with a lot of theme sub-folders.

Name/Preview Archive Size Description
Aditya Shakya Android Ports

Spin.jpg

Aditya_Shakya-Android_Plymouth_Ports-1.0.tar.bz2 241 MiB 80 Plymouth themes ported from Android boot splash themes. Created by Aditya Shakya. GNU GPL v3.
Each of these themes consists of a series of .png images played in series so you can simply look inside each folder with an image viewer like geeqie to see what the theme looks like. Some of theme themes are quite large (20+ MiB).

Configuring Themes

Theme file folders go in /usr/share/plymouth/themes/

Plymouth is configured by the /etc/plymouth/plymouthd.conf configuration file. The only option you need to set Theme=. The value should be a theme subfolder in /usr/share/plymouth/themes/.

File: /etc/plymouth/plymouthd.conf
[Daemon]
Theme=wjsn-happy

What module a theme uses is configured in its .plymouth file within the theme folder. Simply choosing a theme with Theme= is enough.

You will have to re-generate your boot init file system (initramfs) to activate a new Plymouth theme. That can be done by running dracut -f on Fedora and RHEL flavors. The initramfs on Debian, Deepin and others can be updated by running sudo update-initramfs -u.

It is also possible to change Plymouth theme using a tool called plymouth-set-default-theme. Running plymouth-set-default-theme -R fade-in will set fade-in as the default theme and rebuild your initrd image.

The package plymouth-kcm will let you configure a Plymouth theme from within KDE Plasma System Settings (systemsettings5). That KDE kcm module relies on there being a file called preview.png within the theme folder, theme previews will not work without it. Nobody outside the KDE project seems to care if their themes have a <core>preview.png file or not.

Hints On Making Themes

The easiest way to make a theme is to copy the .script file from a Plymouth theme using the script module and modify it and the images to suit your taste.

Image files within Plymouth themes must be in PNG format. You can NOT use JPEG or WEBP images in a Plymouth theme.

Links

Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.