Wednesday, August 19, 2009

Boot splash evolution in Mandriva Linux

For some time, I've been working on adding Plymouth support for our next Mandriva Linux 2010 release, as graphical boot splash and I thought it could be interested to do a recap of the various solutions we used in our distribution over the years.

Mandriva Linux (Linux-Mandrake then) was one of the first Linux distributions to ship with a graphical boot :

  • in 2000 (yes, 9 years ago !!), for Linux-Mandrake 7.2, we integrated Aurora (written by Egil Möller who joined Mandrakesoft to work on it at that time), allowing users to control and follow boot with keyboard and mouse, before X was started. 
  • in 2002, we switched to Bootsplash, which was kernel based and allowed also to polish VT (a nice touch).
  • in 2008, we switched to Splashy, mostly because Bootsplash was becoming deprecated by Splashy and could not run on non-x86 platform and was a pain to maintain in kernel.
  • yesterday, we switch to Plymouth. It will be available for the first time in Mandriva Linux 2010 beta (available tomorrow). 
Why did we switched to Plymouth :
  • it supports Kernel Mode-Setting, which reduces screen flickering, permits smooth transitions between boot phase and X startup. 
  • it still works on VESA framebuffer. For chipsets not yet supporting KMS, we can still have graphical boot, so no feature regression.
  • Plymouth is much more customizable than Splashy, allowing nice UI effects.
  • It has a nice and simple script language (from Charlie Brej) : you don't need to code in C to write a theme. I was able to write a theme which looks like our current splashy theme in about a day (discovering the language at the same time and with examples from Charlie).
  • Plymouth authors are extremely responsive and inclusive : I got commit privileges only two days after sending my first patches (and after my fd.o account was fixed ;)
  • We are not alone to use Plymouth : our Fedora friends were the first to integrate it and we can share our experiences and expertises in graphical boot, thus improving the entire Linux ecosystem.
So far, we are extremely happy of the result : Mandriva Linux 2010 beta looks very nice (even if plymouth for this beta doesn't feature text support, it does now on cooker).

We hope you will like it, so don't forget to test Mandriva Linux 2010 beta when it is released (and did I say it will have GNOME 2.27.90 in it too ? :)