Ubuntu core custom splash screen

@ogra Do you know when will Ubuntu Core 20 supports a custom boot splash screen ?

Also is it possible to set the background colour?

For the background color, have you looked at the patch: https://github.com/snapcore/pi-gadget/blob/18-arm64/psplash/psplash.patch
and changing the PSPLASH_BACKGROUND_COLOR variable?

i know that @ondra is working on porting it to UC20, i do not know what customization options he plans though.

with UC20 the splash will not be able to come from the gadget snap anymore and psplash does not allow runtime customization by default, that will likely need a bit of patching …

On Pi psplash can still come from gadget. Kernel is not measured. It just needs to respect initrd is now using systemd. I have created prototype here: https://github.com/kubiko/pi-gadget/tree/20-arm64
This can be customised by replacing assets with own ones.

On amd64 it not possible from the gadget because of the secure boot. It would break the signature.
Long term plan is to enable Plymouth or psplash in the stock initrd. For psplash this would require changes for psplash to have ability to load custom assets.

I have plan to add this for psplash, to optionally load custom assets if available.
But I do not have ETA for that, it’s time permitting and I’m locked for next 2 weeks

1 Like

In Ubuntu Desktop, I used to create my splash screen using Plymouth for kiosk single application mode. Is there any way to use a snap for Plymouth?

you need the splash in the initrd, a snap will start too late in teh bot process … plymouth has a lot of dependencies (lots of fonts, graphics drivers, artwork) that make the initrd quite big, which is not really desirable for embedded systems (note that we support way lower specs with Ubuntu Core than with Ubuntu Desktop) … for the Pi gadgets i currently work on simply re-enabling the psplash implementation that we actually still build into every gadget (it is just missing some integration bits to actually get started), for x86 there is more work underway to make @ondra’s implementation properly integrated with the initrd.img soon.

1 Like

Hi @ogra, thanks for the updates. Just touch base to know if psplash can work with RPi4. Cheers :slight_smile:

i created a PR for the UC20 gadgets a while ago at to serve as a quick hack … :

there is work going on to replace psplash in the long run though and to put it into the default initrd of the kernel snap, perhaps @stulluk or @abeato can elaborate on the planned timelines here for UC20 …

1 Like

Awesome. Thanks for the hint. On RPi4 images, UC20 boot process doesn’t print anything. I can see the boot process via serial connection with HW. Will the work in progress allow us to see the boot messages via HDMI?