12-31-2019, 11:15 AM
(This post was last modified: 12-31-2019, 11:35 AM by Twix166.
Edit Reason: Type-o in command
)
I wanted to change the boot splash image that is used during boot up. The Debian Swirl with the Open Sesame and Pine64 Logo did not really fit with the look and feel I have set up on the desktop, lock screen and login screen.
So I decided that I would need to change the boot splash image. To do so I had to figure out the raw format for the framebuffer image (/usr/share/backgrounds/splash.fb). After some experimenting I figure out the format of the raw file and managed to convert it to a PNG. After I had done that I was able to figure out the reverse command that would create the raw FB image from a PNG.
You can use this command to turn a PNG into the FB raw file. For this to work, your PNG has to be 1920x1080 resolution. I have not tested this with other resolutions. Make sure you have installed ImageMagick before running this:
Just to be complete, this is the command I used to convert the original splash.fb to a PNG:
So on reboot, I now have my own custom bootsplash. There is only one remaining issue. The console messages are still showing on the bootsplash screen. Even though /boot/extlinux/extlinux.conf has kernel options 'quiet' and 'loglevel=3' defined. These seem to be ignored to some degree because some messages are showing on the boot splash screen. Does anybody have any tips to make this completely silent?
I did install Plymouth before I used this message but I don't think that Plymouth would have any effect on the kernel messages showing. Does it?
<<UPDATE>>
It turns out that Plymouth did get in the way. After I removed the packages (plymouth, plymouth-theme-hamara and plymouth-themes) that I installed during my experimentation, no more kernel boot messages are showing on the splash screen.
So I decided that I would need to change the boot splash image. To do so I had to figure out the raw format for the framebuffer image (/usr/share/backgrounds/splash.fb). After some experimenting I figure out the format of the raw file and managed to convert it to a PNG. After I had done that I was able to figure out the reverse command that would create the raw FB image from a PNG.
You can use this command to turn a PNG into the FB raw file. For this to work, your PNG has to be 1920x1080 resolution. I have not tested this with other resolutions. Make sure you have installed ImageMagick before running this:
Code:
$ convert yoursplashimage.png -separate +channel -swap 0,2 -combine -colorspace sRGB RGBO:splash.fb
$ sudo cp /usr/share/backgrounds/splash.fb /usr/share/backgrounds/splash_original.fb
$ sudo cp splash.fb /usr/share/backgrounds/splash.fb
$ sudo chmod 666 /usr/share/backgrounds/splash.fb
Just to be complete, this is the command I used to convert the original splash.fb to a PNG:
Code:
$ cd /usr/share/backgrounds
$ convert -size 1920X1080 -depth 8 RGBO:splash.fb -separate +channel -swap 0,2 -combine -colorspace sRGB ~/Pictures/splash.png
So on reboot, I now have my own custom bootsplash. There is only one remaining issue. The console messages are still showing on the bootsplash screen. Even though /boot/extlinux/extlinux.conf has kernel options 'quiet' and 'loglevel=3' defined. These seem to be ignored to some degree because some messages are showing on the boot splash screen. Does anybody have any tips to make this completely silent?
I did install Plymouth before I used this message but I don't think that Plymouth would have any effect on the kernel messages showing. Does it?
<<UPDATE>>
It turns out that Plymouth did get in the way. After I removed the packages (plymouth, plymouth-theme-hamara and plymouth-themes) that I installed during my experimentation, no more kernel boot messages are showing on the splash screen.