Plymouth/Theme creation

It is possible to create themes for Plymouth, however documentation for theme creation is extremely difficult to find on the internet. This page aims to provide a few helpful links so that one may understand the Plymouth theme creation process. Eventually there may be a tutorial (or 'guide' as we like to call them here on the wiki) on how to create a simple theme.

Of course, Plymouth must be installed before any newly created themes can be viewed or tested. Head up a level and do that now if it is not done yet.

Any potential theme creator should have a bit of knowledge about programming in C, as C is the language Plymouth is written. A full depth of knowledge will not be required.

How Plymouth works
Before starting a design process, it is important to know how the program(s) being used in project operate.

As Plymouth's README states:

plymouth ships with two binaries: and

The first one,, does all the heavy lifting. It logs the session and shows the splash screen. The second one,, is the control interface to.

It supports things like, or , which trigger the associated action in plymouthd.

Design
Before something can be well engineering, there must first be a plan. The plan is what happens during the design phase. For the purpose of keeping this article short and sweet, we will be modifying the default "Solar" Plymouth theme to include some text: "My First Theme".

The files
The files for the Solar theme come with Plymouth. On Gentoo systems they can be found in the directory. Change to this directory now.

Test
Testing and debugging can be performed from an X environment. Start in non-daemon mode:

Ask to render the splash via the plymouth front end:

To stop the rendering, to the unit and issue:

External resources

 * Some helpful information on Plymouth theme creation by Finnbarr P. Murphy
 * Plymouth Theme Guide (part 1) by Charlie Brej
 * Plymouth Theme Guide (part 2) by Charlie Brej
 * Plymouth Theme Guide (part 3) by Charlie Brej
 * Plymouth Theme Guide (part 4) by Charlie Brej
 * Falling blocks game in Plymouth by Charlie Brej
 * Plymouth ⟶ X transition by Ray Strode (Plymouth maintainer)
 * 5 "Stunning" Ubuntu Themes