Install Prerequisites
apt-get install linux-source-2.6.18 kernel-package \
linux-patch-bootsplash bootsplash libc6-dev
Patching Linux kernel
Uncompress Linux Kernel Source
cd /usr/src
tar xjf linux-source-2.6.18.tar.bz2
Patch Kernel with linux-patch-bootsplash
Now we need to patch Linux kernel with linux-patch-bootsplash:
cd /usr/src/linux-source-2.6.18
../kernel-patches/all/apply/bootsplash
Apply oldconfig to the Linux kernel
We can use our old config to recompile new kernel. Do not forget to say "y" when it comes to bootsplash kernel module.
cp /boot/config-2.6.18-5-686 /usr/src/linux-source-2.6.18/.config
cd /usr/src/linux-source-2.6.18/
make oldconfig
Compile the Linux Kernel
Now we compile new kernel and produce linux-image kernel package. Amend a version and revision on the following command according to your needs:
make-kpkg clean
make-kpkg --append-to-version -splash --revision 1.0 --initrd kernel_image
Install new Linux kernel
Once the Linux compilation is finished, we can find a new kernel Debian package inside a /usr/src directory. Now simply use dpkg tool to install it into your system.
dpkg -i /usr/src/linux-image-2.6.18-splash_1.0_i386.deb
Setup GRUB Linux loader to use bootsplash
Add bootsplash options to GRUB
What we need at this point is to add some more options about bootsplash to GRUB: vga=791 and splash=verbose or splash=silent where silent grub mode completely covers boot messages. Change this section in /boot/grub/menu.lst grub's configuration file:
## DO NOT UNCOMMENT THEM, Just edit them to your needs
## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
## kopt_2_6_8=root=/dev/hdc1 ro
## kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=/dev/sda1 ro
To this:
## DO NOT UNCOMMENT THEM, Just edit them to your needs
## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
## kopt_2_6_8=root=/dev/hdc1 ro
## kopt_2_6_8_2_686=root=/dev/hdc2 ro
# kopt=root=/dev/sda1 vga=791 ro splash=verbose
Update GRUB to boot with bootsplash
Update GRUB configuration to save its new bootsplash options by command.
update-grub
Reboot
All done. Now we are ready to reboot and test bootsplash configuration. Make sure that you choose a new boot splash kernel image after reboot.
Making changes to bootsplash
If you decide to make change of your boot splash theme do not forget to update initrd image to apply those changes.
update-initramfs -u
To avoid rebuilding initrd or even rebooting every time you made a change to your boosplash config, this command will change bootsplash on tty6. Once you are happy with the outcome, use update-initramfs to rebuild initrd image.
splash -s -u 5 /path/to/your/config.cfg