From ArchWiki
Jump to navigation Jump to search

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

Reason: Bad style. (Discuss in Talk:Fbsplash#)

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, such as linux-fbcondecorAUR, see below.


Themes are provided by the fbsplash-themeAUR[broken link: package not found] package and can also be found at GNOME-Look.org or KDE-Look.org.



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 CTRL + ALT + F1 for example).

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: /etc/conf.d/splash SPLASH_THEMES = "

   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: /etc/default/grub GRUB_CMDLINE_LINUX_DEFAULT="quiet console=tty1 splash=silent,theme:arch-banner-icons" Don't forget to regenerate grub.cfg:

grub-mkconfig -o /boot/grub/grub.cfg

Other chargers

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):

What can you give for 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

Or for Syslinux:

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 doesn't 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: /etc/mkinitcpio.conf HOOKS = "base fbsplash ..." or: /etc/mkinitcpio.conf HOOKS = "base udev ... resume fbsplash ..." or, in case of encryption of the system: /etc/mkinitcpio.conf HOOKS = "base ... keymap encrypt fbsplash ..."

Rebuild your initcpio using mkinitcpio. See Mkinitcpio for more info.

Note: In case of problems with fbsplash if your machine uses KMS (Kernel Mode Setting, this is the case if you are using the intel, new or radeon), add the appropriate driver to the MODULES line of mkinitcpio.conf, see the example for the intel driver or the following for new:

/etc/mkinitcpio.conf MODULES = "new ..." and redo the boot image:

mkinitcpio -p linux
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/linux.preset (or any other file depending on your kernel, for example /etc/mkinitcpio.d/linux-fbcondecor.preset if you have it use):

fallback_options  =  "-S autodetect, fbsplash"

Then generate the initrd:

mkinitcpio -p linux

(or linux-fbcondecor if you are using this kernel)

Console background images

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

Installing the kernel

Install linux-fbcondecorAUR (don't be in a hurry :-)).


Warning: There is service for Systemd can be found in the AUR as well here 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.