| RSS

Grub 2: Add splash image to beautify grub 2

grubtheme7Yesterday I did a post on how to install grub 2 on Jaunty Jackalope machine. And I started getting comments that it was as ugly as it’s predecessor. And I could not agree more on that. Following which I started looking for way to pimp up grub 2 to look a little more eye candy. Let’s see how to get splash (background) image for your grub.

1. First we’ll have to download the splash image package for Ubuntu. Bring up a terminal window by hitting ALT+F2 and typing “gnome-terminal“. In the terminal window type the following command.

sudo apt-get install grub2-splashimages

grubtheme1

2. This will install the splash image package. Let’s check what splash images are installed. These images can be found at:

/usr/share/images/grub/

On the terminal type the following command:

cd  /usr/share/images/grub/
 
ls

You’ll see a list of available splash theme for grub 2.

grubtheme2

The files are in .tga format which is a image format. Following is a thumbnail of all the files:

grubthemethumbnail

3. All you need is to zero down on the image you want to have as your grub splash image. I found them boring, so I created my own image.

  • Downloaded an image from here. (Caution, this image could be NSFW)
  • Using Gimp, I resized the image to 640×480 and saved it by name ubuntu-girl.tga (Unfortunately, that is the dimension supported by Grub 2. However, you can also use a larger dimension image but it’ll be cut at the Grub splash.
  • I then moved the image to /usr/share/images/grub/
  • Final image looks like this:

ubuntu-girl

4. Now we have to tell Grub 2 to use this image. To do so, type the following command at terminal:

sudo gedit /etc/grub.d/05_debian_theme

find the line

for i in {/boot/grub,/usr/share/images/desktop-base}/moreblue-orbit-grub.{png,tga}; do

and replace it with the following

for i in {/boot/grub,/usr/share/images/desktop-base,/usr/share/images/grub}/ubuntu-girl.{png,tga}; do

5. All that is left now is to update grub 2 . Type the following command on terminal

sudo update-grub

Grub 2 will detect the new theme and you should see something like this

grubtheme6

(This is a little old screenshot and here the background is named Aesculus hippo…. However it should be ubuntu-girl.tga)

All that is left now is to reboot the machine to check the new sexy grub 2 splash in action.


Leave a Reply 16820 views, 50 so far today |

Related Posts!

  • Richard Jones
    I followed these instructions and also on another website but I don't seem to have the background added after doing sudo update-grub? I read somewhere that in v1.96 of Grub 2 the themes are disabled?
  • Richard Jones
    Re last post: I've solved it myself, I'm now a linux genius! In the 05_Debian_Theme config file I noticed that use bg=FALSE so I changed it to TRUE. Also, I didn't put the right location down correctly so that is all now fixed.
  • Reeshar
    Actually you should have left bg=false. It's set to true a bit later in the code if it finds the background. So the problem was the wrong location not a wrong code statement.
  • SAR
    These Grub2 splash screens are stupid, what is this Windows we're running?

    What REAL LINUX GEEK would want to use these junk images?

    These images remind me of all the typical wallpaper websites out there with all their crap wallpaper images too!

    Any REAL decent Linux images out there or a TUT so we can make our own .tga?

    THANKS
  • Zach
    Any REAL LINUX GEEK would know how to make a .tga! :D
  • Echo Six
    You are not restricted to 640x480 for grub2, the restriction is on what your graphics card will support.
    You can determine the screen sizes that are available for your video card from the grub terminal using vbeinfo

    Search for the line GRUB_GFXMODE= in /etc/default/grub and add a suitable screen size, e.g. I have 1280x1024

    I found that to retain this screen size for the framebuffer, add an entry in /etc/grub.d/10_linux under menuentry "$1" {, I added mine after set gfxpayload=keep

    AND there is a lot more you can do besides change the background splash image!

    http://grub.enbug.org/ThemeFormat#colors
  • Reeshar
    Hi Vivek

    Good article but it's incorrect to say that Grub2 only supports 640x480 images. Grub only supports standard VBE resolutions as described in http://en.wikipedia.org/wiki/VESA_BIOS_Extensions and therefore graphic images of the same resolution. The resolution you choose, of course, must be supported by your display.

    So, for example, I have a Samsung NC10 netbook on which I have just installed Ubuntu Netbook Remix 9.10. The native display resolution is 1024x600 - not a VBE standard resolution. To deal with this I did the following:

    1. Set the Grub display resolution to 800x600x32

    2. Created anamorphic 800x600 images which when stretched on the display (as they are by the display driver) will appear correctly as 1024x600 images.

    3. Regenerated the menu.cfg file.

    This works perfectly!


    Richard
  • Reeshar
    As an addendum, if you download vesainfo.exe from:

    ftp://ftp.inf.ethz.ch/pub/Oberon/ETHOberon/Contrib/Native/

    and run it from a DOS bootup CD (eg, FreeDOS) or USB memory stick (as I did) you can get a listing of the resolutions available in your BIOS. For my Samsung NC10 I get 640x480x8, x16 and x32, and also 800x600x8, x16 and x32.

    Hence you can use an 800x600 splash screen and, in my case, if you compress it horizontally from 1024 to 800 it looks correct when it's expanded to the full screen width by the VESA screen driver.
  • CB
    Like yours much better. The rest are so MILITARISTIC. Say, can't a PNG file also be used?
blog comments powered by Disqus
Cornish fauna - Horse fly Tabanus sp. #3There's only one thing stops a hoverfly in mid flight.. Male hoverfly Syritta pipiensSaale BridgeLes Invalides - HDRsanta eufemia de cozuelos - HDRStreet ArtmiraCloud KillerMolino HDRTours Société Générale By Night | HDR