Howto modify grub splash

This is for the Grub 0.97 (standard Grub).

You want another splash in your Grub? It’s quite easy.

First about the picture that you want to use:
You can only use a picture with format 800x600 maximum, 16 colors, one layer.
You need the convert tool for this, you can install this via Yast.

How to convert the image to the right format:
Open konqueror and browse to the folder which contains the picture that you want to use. Open a terminal (F4) and type:

convert name_of_your_picture.jpg -resize 800x600 -colors 16 -depth 16 -normalize -verbose background.xpm

The output of the command above, will create a file with the name background.xpm
After this it must be converted to jpg:

convert background.xpm back.jpg

The output of the last command will create a file with the name back.jpg
Later, you will see why…

I suggest you to open the file back.jpg and have a look if you still like it after the conversion!
When you are satisfied with it, then continue:

Second: “Insert” the picture in the “message” file.
In the folder /boot you can find a file “message” This file is a cpio archive, you can compare this a little bit with a packed archive like a tar file. To extract the “message” file, open a root terminal and type:

cd /boot
mkdir temp
cp message message.old    # backup you old message
mv message /boot/temp
cd /boot/temp
cpio -i < message
rm -rf message
rm -rf back.jpg
ls .| cpio -o > message
mv message /boot/message
rm -rf /boot/temp

Short: (in human language) copy the /boot/message to a temporary empty folder and type in a console: cpio -i < message. Delete the old message in this folder. Copy the converted image to this folder with the name “back.jpg” After this type in the console: ls . | cpio -o > message.
Copy the “message” to /boot (you can only do this as root!). Don’t forget to backup the old message!

For converting an image you can also use the Gimp, but on command line it goes faster.

I have created in my home folder a folder splash, which contains message-files with the back.jpg that belongs to the message; like this way:

message_church back_church message_car back_car etc…

In this example is back_church an image of a church, and is message_church the message with this image inside. So when I want to change the grub-splash, I can easily see what is what; and I only have to copy the message_church to /boot (of course with the name “message”) and I will see the image with the church on next boot.

Edit When you are ready with converting and copying, you may delete the files back.jpg and background.jpg that are still in the home folder where we started.

Some useful material here, particularly about resizing graphics, thanks!

BUT rather than doing this all manually, it is possible to at least manage /boot/message with gfxboot Gfxboot - openSUSE

BUT it is possible to configure the GRUB boot screen to be any size supported by the framebuffer on your graphics card - use

hwinfo --framebuffer

to see possible supported graphics modes.

Thanks for the extra information; I didn’t even know that page from Suse… :shame:

Personally I still like more the real work on the command-line (one of the reasons I use also slackware…) :wink:

You don’t have a command line in openSUSE?

Did you remove it somehow?