From ArchWiki
Jump to navigation Jump to search

Fbsplash (formerly gensplash) is a user-space implementation of a splash screen for Linux systems. It provides a graphical environment at system startup using the Linux framebuffer layer.



Install the fbsplashAUR package.

To have a background image of your virtual terminals you will need to install a kernel patched with fbcondecor, see below.


Themes are available as packages and can also be found at GNOME-Look.org or KDE-Look.org.



Tango-edit-clear.pngThis article or section needs language, wiki syntax or style improvements. See Help:Style for reference.Tango-edit-clear.png

Reason: Need to add permission info. (Discuss in Talk:Fbsplash)

To choose from the themes that you will have installed without restarting or configuring anything, you can use splash_manager command.

This command must not be executed under X, but from a TTY).

For example to test the arch-black theme, after having installed it of course, in silent mode without restarting:

splash_manager -c demo -t arch-black --steps 100

For more information:

splash_manager --help

Configuration file

Add the theme (s) you installed in /etc/conf.d/splash. You can also specify screen resolutions to save some space:

   arch-banner-noicons/1280x1024.cfg "

Kernel command line

To work with Fbsplash, you must pass certain options to your kernel via your bootloader:

console = tty1 splash = silent, theme: theme name


For GRUB, Directly edit /boot/grub/grub.cfg:

linux /boot/vmlinuz-linux root=/dev/... quiet console=tty1 splash =silent,theme:arch-banner-icons

Or better yet, go through /etc/default/grub and add the kernel options to the GRUB_CMDLINE_LINUX_DEFAULT line:

GRUB_CMDLINE_LINUX_DEFAULT="quiet console=tty1 splash=silent,theme:arch-banner-icons"

Do not forget to regenerate grub.cfg.

Other chargers

Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: No mention of changes that LILO should make. (Discuss in Talk:Fbsplash)

For GRUB Legacy, LILO or Syslinux, all you have to do is add the options to the kernel in the appropriate configuration file (respectively /boot/grub/menu.lst, /etc/lilo.conf or /boot/syslinux/syslinux.cfg):

GRUB Legacy:

kernel /vmlinuz-linux root=/dev/disk/by-uuid/8887210b-72d3-4899-99f7-3f39ea0a0eeb rw quiet console=tty1 splash=silent,theme:arch-banner-icons


APPEND root=UUID=8887210b-72d3-4899-99f7-3f39ea0a0eeb rw quiet console=tty1 splash=silent,theme:arch-banner-icons

Start Fbsplash

Tip: The F2 key will allow you to toggle between splash and Arch messages on startup. Think about it if the splash does not appear or if you find your startup taking a long time.

Normal launch

Once installed and configured, without doing anything more, fbsplash should load automatically the next time you boot, right after a few Arch messages on boot (right after udev).

Early launch

If you find these few messages unsightly (or just to enjoy your splash longer), it is possible to start fbsplash before the first messages at startup.

Just add fbsplash to HOOKS in /etc/mkinitcpio.conf:

HOOKS = "base fbsplash ..."


HOOKS = "base udev ... resume fbsplash ..."

or, in case of encryption of the system:

HOOKS = "base ... keymap encrypt fbsplash ..."

Rebuild your initcpio using mkinitcpio. See mkinitcpio#Image creation and activation for more info.

Note: In case of problems with fbsplash if your machine uses KMS (this is the case if you are using the Intel, Nouveau or radeon), add the appropriate driver to the MODULES line of mkinitcpio.conf, see Kernel mode setting#Early KMS start.
Warning: To guard against any problem with fbsplash that would block your startup, it might be a good idea not to generate the fallback image with this HOOK.

Edit /etc/mkinitcpio.d/kernel.preset

fallback_options = "-S autodetect,fbsplash"

Then generate the initrd:

# mkinitcpio -p kernel

Console background images

With a kernel that supports Fbcondecor, you can have a background image of your virtual consoles.


Note: There is service for systemd: fbcondecor-systemdAUR

There is also a configuration file, /etc/conf.d/fbcondecor, to define the virtual terminals that will support this display mode.

Tip: For an early start, add fbsplash in the HOOKS of /etc/mkinitcpio.conf, add the themes in /etc/conf.d/splash and rebuild the initramfs:
# mkinitcpio -p linux-fbcondecor

Add the appropriate entries to your boot loader file, this kernel called vmlinuz-linux-fbcondecor and its images initramfs-linux-fbcondecor.img and initramfs -linux-fbcondecor-fallback.img.

Example for GRUB Legacy:

# (5) Arch Linux + splash in console
title Arch Linux, fbcondecor
root (hd0,4)
kernel / vmlinuz-linux-fbcondecor root = / dev / disk / by-uuid / 8887210b-72d3-4899-99f7-3f39ea0a0eeb rw quiet console = tty1 splash = silent, theme: arch-banner-icons
initrd /initramfs-linux-fbcondecor.img

For Syslinux:

LABEL archfbcondecor
        MENU LABEL Arch Linux Fbcondecor
        LINUX ../vmlinuz-linux-fbcondecor
        APPEND root = UUID = 8887210b-72d3-4899-99f7-3f39ea0a0eeb rw quiet console = tty1 splash = silent, theme: arch-banner-icons
        INITRD ../initramfs-linux-fbcondecor.img
Tip: This time you can also use splash = verbose to take advantage of background messages at startup as a replacement for the splash.

See also