From ArchWiki
Revision as of 20:27, 1 December 2011 by Robvelor (Talk | contribs) (Added vga framebuffer size to grub params, fbsplash fails if this is not set.)

Jump to: navigation, search

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.

Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어

External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Fbsplash (formerly gensplash) is a userspace implementation of a splash screen for Linux systems. It provides a graphical environment during system boot using the Linux framebuffer layer.



The fbsplashAUR package is available in the AUR. For console backgrounds (discussed later in this article) you should install a kernel patched with fbcondecor such as linux-fbcondecorAUR.


The fbsplash package provides the scripts for basic functionality. If you want more bells and whistles, like smooth progress, filesystem-check progress messages, support for boot-services/'daemons'-icons and theme hook scripts, you may also install the fbsplash-extrasAUR package.


Themes can be found by searching the AUR for fbsplash-theme, in GNOME-Look.org or in KDE-Look.org.

Note: The package fbsplash does not contain a default theme.

Suspend to Disk

If you want suspend to disk with Uswsusp using Fbsplash, install the uswsusp-fbsplashAUR package from the AUR. For more info have a look at Pm-utils#Using_another_sleep_backend_.28like_uswsusp.29 or Suspend_to_Disk#Uswsusp_method (hibernate-script). Additionally there is limited support for using Fbsplash in the Template:Package AUR package for those using a kernel with the TuxOnIce patch.


Kernel Command Line

Your bootloader now needs some configuring to work with Fbsplash. The following is an example for Grub2 and Template:Filename (the legacy Grub and Lilo follow the same pattern):

linux /boot/vmlinuz-linux root=/dev/... quiet loglevel=3 logo.nologo vga=790 console=tty1 splash=silent,fadein,fadeout,theme:arch-banner-icons

You may also edit the file Template:Filename and append your kernel options to the line GRUB_CMDLINE_LINUX_DEFAULT="": Template:File

To re-generate Template:Filename run: Template:Cli

The parameter Template:Codeline prevents kernel messages from garbling the splash even with funny hardware (as recent initscripts do not set this by default any more). Template:Codeline is needed additionally for silencing initcpio messages. Template:Codeline removes the boot logo (not needed with linux-fbcondecor since it does not have one anyway). Template:Codeline redirects system messages to tty1 and Template:Codeline creates a silent, splash-only boot with fading in/out 'arch-banner-icons' theme.

Configuration Files

Put one or more of the themes you installed into Template:Filename. You can also specify screen resolutions to save some initcpio space: Template:File

Note: The theme arch-banner-icons contains mainly symlinks to arch-banner-noicons. So if one of them is included in total, not much space will be saved by limiting the resolutions.

If you start Xorg using DAEMONS (kdm, gdm, etc.), also set the appropriate rc.d-script name to avoid VT/keyboard struggle between Xorg and the splash daemon:

Note: Fbsplash will be stopped without changing to the tty1 console before the named script is started. If not set (or not enabled in DAEMONS), Fbsplash is stopped at the very end of Rc.multi. In the latter case it will change to the tty1 console if not booting into runlevel 5.

Starting Fbsplash early in the initcpio

Add fbsplash to HOOKS in Template:Filename: Template:File or: Template:File or in case of system encryption: Template:File Rebuild your initcpio via mkinitcpio. See the Mkinitcpio article for more info.

Note: With old kernels not supporting devtmpfs, udev is needed before fbsplash to get the device nodes necessary for starting the splash (/dev/fb0 for framebuffer, etc.) and/or to avoid visible screen repaint with the Fbcondecor kernel patch. To avoid interference, the uresume hook provided by uswsusp-fbsplash will first wait for any Fbcondecor helper fadein to finish. To get a quick resume, it is recommended to put uswsusp before fbsplash or even drop fadein if using a Fbcondecor kernel.

If you have trouble getting fbsplash to work and your machine uses KMS (Kernel Mode Setting), try adding the appropriate driver to mkinitcpio.conf.

Console backgrounds

If you have a kernel that supports Fbcondecor (eg. linux-fbcondecorAUR), you can get nice graphical console backgrounds beside the splash screen. Just search the AUR for fbsplash-theme.

After installing your patched kernel and fbsplash, add Template:Codeline to your Template:Codeline array in Template:Filename: Template:File There is also a configuration file Template:Filename to set up the virtual terminals to be used.

You may even boot up with a nice console background and the plain Arch Linux boot messages instead of a splash screen. Just change your kernel command line to use the verbose mode:

quiet console=tty1 splash=verbose,theme:arch-banner-icons