Fbsplash

fbsplash is a Gentoo implementation of a bootsplash screen to provide some eye candy during boot up, shut down or while working on a terminal without X. It is currently available in portage as. A more modern alternative that also offers systemd support, but no eye-candy on the terminal is Plymouth.

Emerge
Core fbsplash functionality is provided by package, which can be installed by the following command:

Themes are provided by following packages:

Kernel
To use a splash image the kernel needs to support initramfs and it must also support framebuffer console decorations.

Normally, have already been patched to support framebuffer console decorations. If a kernel other than gentoo-sources is being used, it may need to be patched first using genpatches.

Enable framebuffer console decorations:

Remember that selecting the type of framebuffer device is important and affects the system. When planning to use open source graphics drivers, the appropriate device should be enabled here. For example, for radeon drive, enable ATI Radeon display support. However, if you are going to install proprietary drivers for the graphics card, you will likely have to rely on either Userspace VESA VGA graphics support or Simple framebuffer support. There is an option for EFI-based Framebuffer Support, too, in case you need it.

Thus, using either radeon, intel, or nouveau drivers provides a framebuffer capable device which is well implemented into the operating system. For users with the binary nVidia or AMD driver, there are workarounds using uvesafb or simple framebuffer to get frambuffer support.

Next, enable Event interface ( CONFIG_INPUT_EVDEV ) support for framebuffer themes:

Usage
General usage scenarios.

Themes
The different themes are stored in where the folder represents the theme name. To test some of them on the console use:

This will change the theme on tty1 to natural_gentoo. Any theme in that matches the current display resolution can be selected. Now to see the theme go to tty1 by pressing ++.

To preview a theme in silent mode without reboot, try:

For more reference please refer to:

Creating and updating an initramfs image
Add the fbcondecor service to the boot runlevel (OpenRC):

This way fbsplash would start when the system starts. However, the eye-candy would not be available immediately after boot and there would be some lag. Using an initramfs is the remedy to have it early at boot. Thus, we are going to make an initramfs.

Before you proceed, you must choose the theme and the resolution you want. While it seems trivial, the point is that not every theme you want might support your desired resolution. More important than this, the resolution that you want, might not be supported by the framebuffer device. So there are two steps to be done.

Finding the resolutions supported by the framebuffer device
Reveal the supported resolutions by your framebuffer device by issuing the following command:

If you have selected simple frame buffer device support in kernel, you do not need to do this step. Please refer to the troubleshooting section.

Finding a theme with the supported resolution
Next, choose a theme that supports the resolution you want. For example, to find out which themes support full HD resolution:

Genkernel
If the initramfs is created using, the configuration in should be changed to the theme used.

Alternatively the could be used to configure the theme, which will be loaded after initramfs.

Updating an initramfs image without using genkernel
If you have an existing initramfs (like one you have created with dracut) you want to use this feature. To append the theme to an existing initramfs:

Creating an initramfs image without using genkernel
To create a new initramfs for our theme:

To create a new initramfs with the content of an existing one to add our theme:

Bootloader
This enables the verbose version of the emerge-world theme, a full list of parameters can be found in. The parameter  is optional, but will choose the proper resolution for the image.

Screenshots
To make screenshots of the framebuffer console, the tool can be used:



The theme does not load at boot
First, check if you have built the initramfs with the supported resolution. Maybe the device does not support it, or maybe the theme does not have any configuration files for it. Another possibility is that the initramfs is not loaded at boot.

The screen stays black until X starts
Disable every framebuffer device in kernel and enable only simple framebuffer one.

The device does not support the desired resolution
This is a limitation in the device if the resolution you want is not listed among the supported modes. Fortunately, there is a workaround -- simply disable every framebuffer device and enable simple frame buffer device.

Then, to the default GRUB configuration, add:

Of course, replace the resolution with whatever you would like and rebuild grub2 configuration file by issuing:

Enjoy the eye-candy!