Gentoo – Framebuffer Splash Image

image_pdfimage_print

If you are tired of staring at a black console screen on your Gentoo box you can trick it out a bit using Gensplash. Gensplash or “fbcondecor” allows you to use different background images, fonts and colors to decorate your console so you don’t have the standard black background and white text. It also allows you to have nice boot and shutdown screens. (Think of the boot process and console on the install CD).

First we have to configure the kernel to support the framebuffer devices. You will need the following options enabled in your kernel config:

CONFIG_CONNECTOR=y
CONFIG_FB=y
CONFIG_FIRMWARE_EDID=y
CONFIG_FB_MODE_HELPERS=y
CONFIG_FB_VESA=y
CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
CONFIG_FB_CON_DECOR=y

Next we need to setup some use flags in /etc/portage/package.use:

#splashutils
media-gfx/splashutils fbcondecor
media-libs/jpeg static-libs
virtual/jpeg static-libs
media-libs/lcms static-libs
media-libs/libpng static-libs

Then we need to unmask and install the necessary packages:

echo "media-gfx/splashutils fbcondecor" >> /etc/portage/package.use
emerge -av splashutils splash-themes-livecd splash-themes-gentoo

Now start the fbcondecor service and add it to the default runlevel:

/etc/init.d/fbcondor start
rc-update add fbcondecor default

Then create an initrid image and add it’s entry to grub.conf. Note: themes are located in /etc/splash.

splash_geninitramfs --verbose --res 1280x800 --generate /boot/initramfs-bootsplash theme_name

grub.conf example:

kernel /boot/kernel-2.6.37-gentoo-r4 root=/dev/sdb3 splash=verbose,fadein,theme:natural_gentoo video=vesafb:mtrr:3,ywrap vga=0x361 quiet CONSOLE=/dev/tty1
initrd /boot/fbsplash-natural_gentoo-1280x800

Grub Notes:

  • splash=verbose – means you will see text scroll by, set to silent to just see a fancy progress bar. (Depends on theme)
  • fadein – will fade into the framebuffer on boot
  • theme:theme_name – the theme you are using
  • video=vesafb:mtrr:3,ywrap – vesa framebuffer options
  • vga=0x361 – The resolution supported by your video card in hex. Set to Auto to see a list of supported resolutions and their codes for your monitor, experiment, then set it to the one that works.
  • CONSOLE=/dev/tty1 – what console do we start the framebuffer on

Reboot and behold the wonders of your new framebuffer!

  1. No Comments