HOWTO Embellish the Boot Screen (grub2)
Once upon a time, with the arrival of Lisa in November 2011 to be more exact, the boot splash screen has been removed from Linux Mint, probably because of problems related to the transition from the previous version of grub (the boot loader) to the present one (v2), and the changes in the splash system of Ubuntu. But nowadays (i.e. from LM 14 Nadia on), there is no such reason apart from the black screen being compatible, read: equally boring on all computers …
Hence if you feel the need to improve the initial appearance of your machine according to Mint’s motto “From freedom came elegance”, you should do so. Fortunately that task is much easier to perform in Linux Mint than all the outdated guides for Ubuntu or Debian suggest (compare their date!).
The software you need
You should install both the grub2-splashimages and ttf-unifont packages either via the Software Manager or the command line:
…$ sudo apt-get install grub2-splashimages ttf-unifont
The splash images will be installed in /usr/share/images/grub where you will have to choose your preferred one from, and install it manually as explained below.
A new image for the boot menu
First of all, reboot the computer in order to find out the maximum resolution grub is capable of on your machine. Once in grub’s boot menu, press the 'c' key. Then in grub’s command line, enter:
From the list of available resolutions, write down the greatest one for a color depth of 24 or 32 bits (True Color), depending on your display. Once done, press escape ("Esc") and let the computer boot up.
Any splash image of your choice for grub must have this exact pixel size, and be of the type TarGA which has the extension .tga that you can see on the freshly installed images. In other words, if you happen to dislike all images of that official splash collection (which originates, by the way, in Debian by virtue of their free software policy from Wikipedia’s Commons featured desktop or widescreen desktop backgrounds, among others), you could as well take any other picture of your liking, providing that you can transform it into the size and format prescribed by grub.
But make sure that the background image has a dark bottom area and a dark top left corner, otherwise the help text and the menu itself will be difficult to discern, since the default Mint theme has a white text (and grub itself communicates in light gray anyway) — and if we begin to fiddle around with that, then we cannot satisfy our claim of simplicity anymore .
Now that you made your choice, open up your preferred image in or with the GIMP image editor. In a first step, save it to, say, my_background.xcf in your home directory. Then, you can crop it and scale it (it won’t be read-only anymore) to fit nicely the size you’ve noted above. Finally, export it (File› Export…) to my_background.tga. That’s it — the background is adapted to your display.
You must then put the new splash image into the right place by the following command in a terminal:
…$ sudo cp -i ~/my_background.tga /boot/grub/linuxmint.tga
You must also register the value of its resolution into:
…$ sudo gedit /etc/default/grub
where the GFXMODE line must match your screen resolution (with the initial # comment sign removed):
Therein, you must also change or add in the GRUB_FONT line to look like (see next section):
Make the font better visible
Indeed, to get rid of the last remainder of the DOS era, you should change grub’s default font too. Unfortunately, you won’t have many choices for its replacement at the moment as most fonts in the repository (LM14 Nadia) will not work well with grub. After having tried most of the monotype fonts available, the only one I’ve found usable is the TrueType version of the GNU Unifont.
You must first transform this font (which has been installed above) into grub’s own format (the font style and its size matter):
…$ sudo grub-mkfont --bold -s 16 -o /boot/grub/fonts/unifont.pf2 \ /usr/share/fonts/truetype/unifont/unifont.ttf
Finally, you must tell grub about all these changes made:
…$ sudo update-grub
If everything went well, i.e. when update-grub did mention linuxmint.tga and did not complain about anything else, you can reboot again to see the result — and you’re done.
Tags: grub2, splashimages, unifont, gimp
Created: 7 months ago.
Last edited: 7 months ago.
Reviewed: 7 months ago.
Read 0 times.
|2 weeks ago||
|@rod_d: The unicode.pf2 font is grub’s own font — the ugly one we want to replace by the better looking unifont.pf2. The TTF version of the latter needs to be transformed into grub’s pf2 format manually as described above.|
|3 weeks ago||
Hi, regarding your last instruction about the font...
I don't have that file. I use Mint Petra KDE with the latest updates. Instead, I only have a file called /boot/grub/fonts/unicode.pf2
I followed the rest of your instructions above.
Pls let me know if I need to create that file or get it from somewhere or if its the same as mine.
|2 months ago||
|6 months ago||
Excellent and it works great
|7 months ago||
|@MnKiwi: Unfortunately, the only step in the procedure above that “Grub Customizer” as a graphical interface might save you is “Image installation” for a single image :-(|
|7 months ago||
|Nice tutorial. Another option might be to use 'Grub Customizer' although following your tutorial is likely to be the better learning opportunity.|
|7 months ago||
You've made a very clear, detailed and unambiguous tutorial here, MagicMint. Thank you.
I'll be enjoying a new background on GRUB for about one second every day now.
|7 months ago||
Never really understood the point of spending all that energy on the boot screen. It is visible for 1-3 seconds at boot...
Oh well :-) Your tutorial seem to describe the procedures in good detail. I will promote it.