Logo.png      Splashimages for GRUB2
                       
Edited Saturday, January 01 2011 Document made with KompoZer

This web-page is part of a larger site giving examples of how to install Windows+Ubuntu Linux operating systems 'dual boot' in a computer.  Illustrated Dual Boot HomePage

GNU GRUB is a work in progress and the information in this website is incomplete and may be wrong and/or out of date. Please consult the official GNU GRUB 1.98-r2692 manual.

This page was supposed to be up to date for
GNU GRUB version 1.98-1ubuntu7 in Ubuntu Lucid Lynx.

Let's face it, it's a well known fact that first impressions do count. When you're booting up your Ubuntu computer to show off how nice Ubuntu is, you want your computer's GRUB Menu to be looking its best, just like the operating system you're getting ready to boot.



GRUB2_splashimages

Page Menu
How to add a splashmage in GRUB2 - the beautiful splashimages from the Ubuntu repositories

Changing your Splashimage Font Colors - you'll need to do this for most splashimages

How to make your own splashimage for GRUB2 - almost any image file you like will be fine

How To Change Boot Menu Resolution  - so you can use a larger, better quality splashimage

How to Change the GRUB Menu Font
- make it look even more amazing

How to Install GRUB Invaders -  The Space Shooter Game for GNU GRUB




 1) Download the free, already-made splashimages from the Ubuntu repositories
sudo apt-get install grub2-splashimages

 2) You'll find your new splashimages in /usr/share/images/grub/

 Here are the thumbnails,
2006-02-15_Piping.tga
050817-N-3488C-028.tga
2006-02-15_Piping.tga
2006-02-15_Piping.tga
Aesculus_hippocastanum_fruit.tga
Aesculus_hippocastanum
_fruit.tga
Apollo_17_The_Last_Moon_Shot_Edit1.tga
Apollo_17_The_Last_
Moon_Shot_Edit1.tga
B-1B_over_the_pacific_ocean.tga
B-1B_over_the_pacific
_ocean.tga
BonsaiTridentMaple.tga
BonsaiTridentMaple.tga
Flower_jtca001.tga
Flower_jtca001.tga
Fly-Angel.tga
Fly-Angel.tga
Glasses_800_edit.tga
Glasses_800_edit.tga
Hortensia-1.tga
Hortensia-1.tga
Lake_mapourika_NZ.tga
Lake_mapourika_NZ.tga
Moraine_Lake_17092005.tga
Moraine_Lake_17092005
.tga
Plasma-lamp.tga
Plasma-lamp.tga
Sparkler.tga
Sparkler.tga
TulipStair_QueensHouse_Greenwich.tga
TulipStair_QueensHouse
_Greenwich.tga
Windbuchencom.tga
Windbuchencom.tga

 
3)
To get your new splashimage to appear, you need to edit a file called /etc/grub/ 05_debian_theme.
gksudo gedit /etc/grub.d/05_debian_theme
 
 4) Look for the current path and file name for WALLPAPER in about line 10 in your /etc/grub.d/05_debian_theme file,  
 #!/bin/bash -e

source /usr/lib/grub/grub-mkconfig_lib

# this allows desktop-base to override our settings
f=/usr/share/desktop-base/grub_background.sh
if test -e ${f} ; then
  source ${f}
else
  WALLPAPER="/usr/share/images/desktop-base/moreblue-orbit-grub.png"
  COLOR_NORMAL="black/black"
  COLOR_HIGHLIGHT="magenta/black"
fi
<SNIP> ======= <SNIP>======= <SNIP>======= <SNIP>=======
 
 
  5)
  (i) replace the folder name desktop-base/ with the name of the new folder, grub/
  (ii) open another terminal and use the ls command to get a lst of filenames ,
ls /usr/share/images/grub/
   (iii) Copy the name of the image you like from the list and paste it at the end ot the  WALLPAPER= line.

  #!/bin/bash -e

source /usr/lib/grub/grub-mkconfig_lib

# this allows desktop-base to override our settings
f=/usr/share/desktop-base/grub_background.sh
if test -e ${f} ; then
  source ${f}
else
  WALLPAPER="/usr/share/images/grub/Windbuchencom.tga"
  COLOR_NORMAL="black/black"
  COLOR_HIGHLIGHT="magenta/black"
fi
<SNIP> ======= <SNIP>======= <SNIP>======= <SNIP>=======

  NOTE: Be careful to keep the end of the quotation marks after the filename! eg: Windbuchencom.tga"

 NOTE 2: You can use an image file located anywhere in your file system, it doesn't have to be a file in /usr/share/images, if you want you can use a file in your Pictures folder, you just need to type in the file path and name of the image correctly and GRUB will find it for you.

   (v) Save and close the file.

  6) Run sudo grub-mkconfig,
sudo grub-mkconfig -o /boot/grub/grub.cfg
The grub-mkconfig or update-grub command is to write the changes to your grub-conf file.

The expected feedback should look something like this,
[sudo] password for username:
Updating /boot/grub/grub.cfg …
Found Debian background: Windbuchencom.tga
Found linux image: /boot/vmlinuz-2.6.27-7-generic
Found initrd image: /boot/initrd.img-2.6.27-7-generic
Found memtest86+ image: /boot/memtest86+.bin
done
 

7) That's it for now. You can reboot and see how it looks!



8) Special Installations
If someone has an installation with an encrypted file system for / , and GRUB in a separate /boot, they will need to copy the images to /boot because GRUB can't 'see' inside an encrypted file system.
sudo cp /usr/share/images/grub/*.tga /boot/grub/
NOTE: You will need to alter the filepath in the example shown above to correspond with your new file path to your splashimage.




When you have a beautiful splashimage, the next thing to do is choose a suitable font color to go with it. Changing the font color can make a big improvement to the appearance of your GRUB Menu and splashimage.
Changing the font color would be very important if you have chosen a splashimage which contains a lot of dark shades and you're still using a black font. You might have trouble reading the titles in your GRUB menu. Changing your font color to white or a light color would be a real necessity in that situation.

We can change the font colors in much the same manner as we changed the background image, by editing /etc/grub.d/05_debian_theme and running 'sudo grub-mkconfig'.

To alter the grub menu font colors, you need to edit the same file you edited to set your GRUB menu background,  /etc/grub/ 05_debian_theme.
gksudo gedit /etc/grub.d/05_debian_theme

Look down to the lines numbered around 18 and 19 find this section of the file,
  #!/bin/bash -e

source /usr/lib/grub/grub-mkconfig_lib

# this allows desktop-base to override our settings
f=/usr/share/desktop-base/grub_background.sh
if test -e ${f} ; then
  source ${f}
else
  WALLPAPER="/usr/share/images/grub/TulipStair_QueensHouse_Greenwich.tga
  COLOR_NORMAL="black/black"
  COLOR_HIGHLIGHT="magenta/black"
fi
<SNIP> ======= <SNIP>======= <SNIP>======= <SNIP>=======

You may want to change the colors you see here highlighted in yellow.

Colors we can choose from include, black (or transparent), dark-gray, light-gray, white, brown, yellow, red, light-red, blue, light-blue, green, light-green, cyan, light-cyan,   magenta, light-magenta.
 white blue magenta cyan
 light-gray yellow red light-magenta
 dark-gray green light-blue light-red
 black light-cyan light-green brown


COLOR_NORMAL="black/black"
This is I have highlighted here is called the 'normal foreground' color.
Setting a color here will affect most of the text in your GRUB menu, plus the color of the rectangular box around the scrollable part of the menu.

COLOR_NORMAL="black/black"
This is called the 'normal background' color in GRUB and I recommend leaving this one alone if you want to be able to see your background image properly. The reason for that is because the word 'black' in this position means 'transparent' to GRUB2.  If you try to set any color here, that color will hide most of your background, (splashimage).  Don't bother unless you are trying for some kind of weird special effect.

COLOR_HIGHLIGHT="magenta/black"
This one is the 'highlight foreground' color in your GRUB menu.
When we scroll up and down our GRUB menu, the text which is selected by the highlight bar  can be a different color from the normal (non- selected) text.
You should  probably pick a color that will be a lot different than the color you will use for your highlight bar so it will stand out and you will be able to read it easily.

COLOR_HIGHLIGHT="magenta/black"
The last color is our GRUB menu's 'highlight background' color and that 's the color we want the movable highlight or selection bar to be.

For example,
  #!/bin/bash -e

source /usr/lib/grub/grub-mkconfig_lib

# this allows desktop-base to override our settings
f=/usr/share/desktop-base/grub_background.sh
if test -e ${f} ; then
  source ${f}
else
  WALLPAPER="/usr/share/images/grub/TulipStair_QueensHouse_Greenwich.tga
  COLOR_NORMAL="green/black"
  COLOR_HIGHLIGHT="yellow/red"
fi
<SNIP> ======= <SNIP>======= <SNIP>======= <SNIP>=======


When you're finished, remember to run update-grub or grub-mkconfig for the changes to take effect.
sudo grub-mkconfig -o /boot/grub/grub.cfg

TIP
To save yourself a lot of time, you may want to experiment with the font colors and see how they look over your new GRUB Menu background (splashimage)'on the fly', without needing to reboot.
Press your 'c' key from your GRUB Menu for GRUB2's Command Line Interface and use the set command to try out different color combinations, pressing your 'esc' key after each change to go back to your GRUB Menu to see how it looks.
See GRUB2 CLI Mode Commands for more.






There's nothing much to it really, you can use just about any photo, drawing or digital artwork.
You can use a picture of your favorite girl / boy / dog / cat / horse / car / motorbike / truck / boat / airplane, the biggest fish you ever caught,  any cartoon, your company's logo, or almost anything you like.
Currently GRUB 2 supports four image formats, they are: .png, .tga, .jpg and .jpeg, but I haven't tried the last one out yet.


  1) Copy your image file to your /boot/grub/ directory, (for example, let's pretend I have an image named 'DSC00143.jpg'  in my Pictures folder,
sudo cp Pictures/DSC00143.jpg /usr/share/images/grub/
Where: 'myownimage.jpg' is replaced with the file name of my (or your) own image file.

  2) To get your new splashimage to appear, you need to edit a file called /etc/grub/ 05_debian_theme.
gksudo gedit /etc/grub.d/05_debian_theme

  3) scroll down in the file until you find line 10
  #!/bin/bash -e

source /usr/lib/grub/grub-mkconfig_lib

# this allows desktop-base to override our settings
f=/usr/share/desktop-base/grub_background.sh
if test -e ${f} ; then
  source ${f}
else
  WALLPAPER="/usr/share/images/grub/Windbuchencom.tga"
  COLOR_NORMAL="black/black"
  COLOR_HIGHLIGHT="magenta/black"
fi
<SNIP> ======= <SNIP>======= <SNIP>======= <SNIP>=======



  4) Type or copy and paste the name of your own splashimage) to overwrite whatever the file name was that you had there before.   
  #!/bin/bash -e

source /usr/lib/grub/grub-mkconfig_lib

# this allows desktop-base to override our settings
f=/usr/share/desktop-base/grub_background.sh
if test -e ${f} ; then
  source ${f}
else
  WALLPAPER="/usr/share/images/grub/DSC00143.jpg"
  COLOR_NORMAL="black/black"
  COLOR_HIGHLIGHT="magenta/black"
fi
<SNIP> ======= <SNIP>======= <SNIP>======= <SNIP>=======

NOTE: Be careful to keep the end of the quotation marks after the filename! eg: DSC00143.jpg"
NOTE 2: Check that your file path is correct, /usr/share/images/grub/ if your image is in the /usr/share/grub folder. Actually, the image file can be anywhere in your file system as long as you get the path and filename right.

 Make sure you remember to save and close the file.

  5) Run grub-mkconfig to write the changes to grub-conf,
sudo grub-mkconfig -o /boot/grub/grub.cfg

6) That's it! All done! Now you can reboot and see how it looks!


What to do if your image doesn't fit your monitor
For best results you should try to choose an image file that will match the shape of your monitor.
A lot of us have wide screen monitors but our cameras take standard images.
First, right-click on the image file and click 'properties', or open the image with Image Viewer and find out how many pixels it has.  
For example, if your monitor is 1680x1050 pixels, that's about 1050/1680 = 62.5% as high as it is wide.
If you want your image to fill the whole screen and you don't want part of it cut off, you need to use an image that's about 62.5% as high as it is wide, so it will fit your monitor properly. You may need to use some maths.

Also see How To Change Boot Menu Resolution 

 TIP: If you really want to use an image that doesn't fit, first make a copy of it.
 Never alter your original image because you won't be able to reverse the changes ones they've been saved.
 Open the copy of your image with GIMP image editor in Ubuntu. 
 Crop and/or resize the copy of your image to make it fit your monitor if you need to.






If you want to use a background image of your own with GRUB2,  (see How to make your own splashimage for GRUB2), you may have one with more pixels than 640x480. You can easily set the display resolution higher in GRUB 2.

That will give you a better quality picture and  your fonts will appear smaller so you'll be able to see a lot more of your boot entries on the screen without scrolling so much.

 1. There's no guarantee that GRUB will be able to use exactly the same resolution your Xserver is running at with your video hardware. The only way to find out what settings will be acceptable here is to use GRUB to tell you.
To find out, boot your computer and press your 'C' key from your GRUB Menu to switch into CLI Mode GRUB.
 (i) To prevent text from scrolling up the screen uncontrollably, first use the command set pager=1
 (ii) Then you can run the vbeinfo command for a list of resolutions your hardware can support.
(iii) Write the numbers down on a piece of scrap paper if you need to.

 2. Open your  /etc/default/grub file with a text editor and change your settings there
gksudo gedit /etc/default/grub

 3. Alter the numbers after where it says"GRUB_GFXMODE=" with a suitable resolution for your hardware,
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.

GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT="10"
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE=1280x1024

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entrys
#GRUB_DISABLE_LINUX_RECOVERY="true"

 4. Save the file before closing it.

 5. Run sudo grub-mkconfig to write the changes to your grub.cfg,
sudo grub-mkconfig -o /boot/grub/grub.cfg

 6. reboot and see if it worked.






My opinion is, if we have an interesting and complex background image then the default font the GRUB has already is the best because people will mainly be focusing on the background. Sometimes though, a person with a flair for art might just have a relatively plain background but with nice colors and maybe just a decoration or two. In that case a fancy font might be just the thing that is needed to achieve the right effect.

1)  Install fonts
To install extra fonts and programs for viewing them properly, try going 'Applications', 'Ubuntu Software Center', and run a search for 'fonts'.
Or, try typing 'sudo apt-get install ttf  ' in your terminal and then press your tab key.
I recommend installing the Decorative fonts from www.larabiefonts, and any other fonts you think you might like.

 2) 'Specimen Font Previewer' is a program I like and  it's easy to install all kinds of fonts in Ubuntu. Some of them are really beautiful, others are fun, and some are downright ugly. They're all there for us. Just pick out one you like.

 I chose /usr/share/fonts/truetype/ttf-larabie-deco/zektondo.ttf

 3) Find the location of the Font you want to use
It's best to find the correct path and file name for your fonts with your terminal rather than relying on the GUI.
ls /usr/share/fonts/truetype/ttf-larabie-deco/<tab>
Use tab completion to find your path and file name for your chosen font file.
 
 
 2) Open your terminal and run the grub-mkfont command,
sudo grub-mkfont --output=/boot/grub/zekton.pf2 --size=14 /usr/share/fonts/truetype/ttf-larabie/zektondo.ttf


3) Open your  /etc/default/grub file with a text editor and change your settings there
gksudo gedit /etc/default/grub


 4.  Type in, or copy and paste in a line something similar to the one I have highlighted in yellow,
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.

GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT="10"
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE=1280x1024
GRUB_FONT=/boot/grub/zekton.pf2

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entrys
#GRUB_DISABLE_LINUX_RECOVERY="true"

 4. Save the file before closing it.

 5. Run sudo grub-mkconfig to write the changes to your grub.cfg,
sudo grub-mkconfig -o /boot/grub/grub.cfg

 6. reboot and see what it looks like.
 

Link and credits: How to: Create a Customized GRUB2 Screen that is Maintenance Free - Cavsfan, Ubuntu Web Forums

 

grub_invaders
How to Install GRUB Invaders

Grub Invaders is a space shooter game by Erik Thiele, Grub Invaders Home Page.

Grub Invaders is in the repositories.
The easiest way to install GRUB Invaders in Ubuntu is with,
sudo apt-get install grub-invaders

That command will automatically install grub-invaders and run grub-mkconfig to add it to our GRUB boot menu. All we need to do is reboot, select grub invaders and start playing!

It can also be installed just as easily by Synaptic Package Manager.



How to Install/Setup the grub graphical boot menu in ubuntu 10.10

There aren't any GRUB Graphical Boot Menu Themes available in Ubuntu yet.
The graphical menu pretty stable but it can cause booting to be very slow in some BIOSes, and so far the fix may break some cards. The GRUB dev team is still working on it.
There might be some themes available for download from the grub website in grub-extras sometime after GNU/GRUB 1.99 comes out.

If you really want to take the risk and try out GRUB Graphical Boot Menu early, there are some Graphical Boot Menu Themes available from jordanu.dyndns.org but be warned, some may use a few non-free fonts and logos so they might not conform to the gnu/gpl.

1. find the grub themes at http://jordanu.dyndns.org/grub/themes.tgz
2. extract theme to /boot/grub/mytheme
3. gksudo gedit etc/default/grub, set GRUB_THEME to /boot/grub/mytheme/theme.txt
4. run sudo grub-mkconfig -o /boot/grub/grub.cfg




LINKS

gfxterm - GRUB Wiki

Care to play with grub2-graphical? - Arch Linux Forums

GRUB 2 Graphical Menu Theme File Format - GRUB Wiki - Theme Format