Bootsplash
From ArchWiki
Contents |
Introduction
This document outlines the process of getting a graphical bootup screen by applying bootsplash patches to the Linux kernel. Hopefully with this guidance and some intelligent RTFM'ing you'll get a nice graphical boot going in a short amount of time. If you get stuck, read what the console is saying. It will usually tell you exactly what the problem is.
Patching the Kernel
The first step in setting up a nice graphical bootsplash is to patch the Linux kernel with a bootsplash patch. You need to download the Linux sources and the appropriate patch for your kernel from http://www.kernel.org and ftp://ftp.bootsplash.org/pub/bootsplash/kernel/ like so:
# cd /usr/src # wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.21.5.tar.bz2 # tar jxvf linux-2.6.21.5.tar.bz2 # ln -s linux-2.6.21.5 linux # cd linux # wget ftp://ftp.bootsplash.org/pub/bootsplash/kernel/bootsplash-3.1.6-2.6.21.diff.gz # gunzip bootsplash-3.1.6-2.6.21.diff.gz # patch -p1 < bootsplash-3.1.6-2.6.21.diff
Assuming you know how to tune relevant kernel options, the ones specific to bootsplash are FRAMEBUFFER_CONSOLE
and FB_VESA
.
They are found in the kernel config menu at:
Device Drivers ---> Graphics support ---> Console display driver support ---> Framebuffer Console support
You will also need to activate ramdisk support in order for the kernel to show the nice splash before everything else:
Device Drivers --> Block devices --> RAM disk support
Now compile your kernel:
# make -j2 # make modules_install # make install
Using the Splash Utility
Download the latest splash utilities and create a ramdisk image with your chosen theme:
# wget ftp://ftp.bootsplash.org/pub/bootsplash/rpm-sources/bootsplash/bootsplash-3.1.tar.bz2 # tar jxvf bootsplash-3.1.tar.bz2 # cd bootsplash-3.1/Utilities # make splash # mv splash /usr/local/bin # /usr/local/bin/splash -s -f /etc/bootsplash/themes/default/1280x800.cfg > /boot/initrd.splash
Get more themes at http://bootsplash.org
Setting up GRUB
Edit GRUB to point to your new kernel, set a nice resolution, and load your ramdisk:
title Arch Linux root (hd0,0) kernel /boot/vmlinuz root=/dev/sda1 video=vesafb:ywrap,mtrr:3,1280x800-16 vga=868 splash=verbose initrd /boot/initrd.splash