Starting Ubuntu 11.04 I have observed that Plymouth starts late in the boot process. Often you can only catch a glimpse of it before GDM/LightDM pops up. The same is true for Ubuntu 11.10. After a quick search on the Internet, I found out that Ubuntu 11.x versions appear to have gone away from the framebuffer technique that was used in earlier versions. Accessing the video memory directly through the framebuffer is an old technique. The newer way, supposedly, is to have Kernel Mode Setting (KMS) handle the graphics card and setup the display resolution early in the boot process to allow Plymouth to display correctly. One other reason for moving into KMS is to minimize screen flicker that is often observed when using the framebuffer technique.
The disadvantage of using KMS is that it does not correctly identify the graphics card or is incompatible with it. From what I understand, this is part of the reason why Plymouth starts very late for some configurations. If you have this issue, observe how in 11.04 and/or 11.10 you would only see a magenta/aubergine-like background with nothing on it on most of the boot duration. On my laptop that has Intel HD Graphics 3000 and desktop with a NVIDIA GeForce GTS 250 graphics card, I can hardly see the boot splash.
Fortunately you can force the use of framebuffer. The steps to do this is quite simple. Put a file named splash inside /etc/initramfs-tools/conf.d/ with the following content:
You can do this with any text editor or issue the following command in a terminal:
echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
Followed by updating the initramfs image with the following command:
sudo update-initramfs -u
Reboot your Ubuntu. If everything went well, and it should, you will now see Plymouth start way earlier in the boot process.
However, another issue comes up. The Grub menu on Ubuntu 11.x sports a magenta/aubergine-like background. During boot the transition from that color to black and then Plymouth does not look very smooth. The default theme for Plymouth follows the Ubuntu color Aubergine. My fix for this is to revert to the old Grub color scheme which was white over black.
Editing Grub is a tricky process. If you are not sure of what you are doing, I strongly advise that you don’t. Lucky for us there is a tool available that makes editing Grub simpler and less prone to errors. The name of the app is Grub Customizer. You can grab it here – https://launchpad.net/~danielrichter2007/+archive/grub-customizer.
Download/install Grub Customizer, then run it. We don’t have to edit the menu entries. Lets get to changing the background color instead. Go to Preferences > Appearance as shown in the image below.
I have tried looking for a way to change the background color without using an image but I came up blank. So what I did was to create a 640×480 PNG image with GIMP. Do the same. Fill it with black. Save the image, then we can now proceed to load the image on Grub Customizer and set that as the background. Just click on background image indicated with a blue line above to do so. Save the changes. By the way you don’t have to change the menu font colors. Leave it as it is.
If you know a better way to change the background color of Grub menu, please drop a comment. I’d love to hear it.
Now we are done. Reboot Ubuntu and you should now see the changes reflected in the Grub menu.
Tip: Save that background image to a place where you won’t delete it by accident. This is because when that file is gone the background on grub will revert to the original.
One thing I’ve been meaning to do is find a minimalist Plymouth theme with a dark/black color scheme. I think that would make for a smoother-looking boot. Do you know any? Maybe I should just edit the default theme and change the colors from aubergine to black. I don’t know how that will end up but it’s worth a try.