Skip to content

Boot Splash Stuck on Spinner

Symptom: during boot the screen shows a dark background with three small dots in the middle and never advances. No "MFCloud" logo, no progress bar.

Root cause

Plymouth's theme script references PNG assets (logo, 12 spinner frames, progress bar) that never made it into the ISO. With the assets missing, Plymouth falls back to a default 3-dot stub and your custom splash never renders.

This happens when the ISO build was run without Pillow installed and make_plymouth_assets.py was silently skipped.

Fix

On the build machine:

pip install Pillow
cd /path/to/iso_build
./build_iso.sh

build_iso.sh now hard-fails if Pillow can't be imported, so newer builds will refuse to ship a broken splash.

Confirming the fix worked

After the new ISO is built and a node reinstalled, verify on the node:

ls -1 /usr/share/plymouth/themes/mfcloud/

You should see:

logo.png
mfcloud.plymouth
mfcloud.script
progress_bar.png
spinner-0.png
spinner-1.png
...
spinner-11.png

If the PNGs are present and the splash is still broken, rebuild the initrd:

plymouth-set-default-theme mfcloud -R

The -R flag rebuilds the initrd to embed the new assets.

If the install log shows:

/usr/libexec/plymouth/plymouth-populate-initrd: line 472: fc-match: command not found

…the fontconfig package wasn't installed. Plymouth couldn't bundle a font, so kernel/anaconda message overlays won't render even with PNGs in place. Fixed automatically in V36+ ISO builds (fontconfig + liberation-sans-fonts now in the package set).