« : 03 Mayıs 2012 - 00:19:23 »
Plymouth is a project from Fedora providing a flicker-free graphical boot process. It relies on kernel mode setting (KMS) to set the native resolution of the display as early as possible, then provides an eye-candy splash screen leading all the way up to the login manager.
3.1 Including Plymouth in the Initcpio
3.2 The kernel command line
3.3 Changing the Theme
4.1 Small black squares
5 See also
Warning: Plymouth is currently under heavy development and may contain bugs.
Plymouth primarily uses KMS to display graphics. If you know what this is and you're already set up, skip to Installation.
Otherwise, there are two options:
Set up KMS: Please refer to the specific instructions for ATI cards, Intel cards or Nvidia cards.
While kernel mode setting is recommended, Plymouth can run without it. If you can't use KMS you will need to use framebuffer instead. Uvesafb is recommended as it can function with widescreen resolutions.
If you have neither KMS nor a framebuffer, Plymouth will fall back to text-mode.
Plymouth is not presently available in the Official Repositories, and will need to be installed from the AUR.
The stable one is called plymouth but since the latest stable release of plymouth was way back in May 2010 , the git version plymouth-git is preferred.
Including Plymouth in the Initcpio
Add Plymouth to the HOOKS array in /etc/mkinitcpio.conf. It must be added after base, udev and autodetect for it to work:
HOOKS="base udev autodetect [...] plymouth"
Warning: If you use hard drive encryption with the encrypt hook, you must replace it with plymouth-encrypt in order to get to the TTY password prompts.
For early KMS start add the module radeon (for radeon cards), i915 (for intel cards) or nouveau (for nvidia cards) to the MODULES line in /etc/mkinitcpio.conf:
Rebuild your kernel image (refer to the mkinitcpio article for more info):
# mkinitcpio -p [name of your kernel preset]
The kernel command line
You now need to set quiet splash as you kernel command line parametres in your bootloader. The following is an example for GRUB2 and /boot/grub/grub.cfg (the legacy GRUB and LILO follow the same pattern):
linux /boot/vmlinuz-linux root=/dev/... ro quiet splash
You may also edit the file /etc/default/grub and append your kernel options to the line GRUB_CMDLINE_LINUX_DEFAULT="":
GRUB_CMDLINE_LINUX_DEFAULT="ro quiet splash"
To re-generate grub.cfg run:
# grub-mkconfig -o /boot/grub/grub.cfg
For Syslinux it's on the APPEND line:
Note: Here you may want to add vga=current according to this wiki entry.
APPEND root=UUID=988d4e11-8237-4af3-5ab6-77627128g9d0 ro vga=current quiet splash
Changing the Theme
Plymouth comes with a selection of themes:
Fade-in: "Simple theme that fades in and out with shimmering stars"
Glow: "Corporate theme with pie chart boot progress followed by a glowing emerging logo"
Script: "Script example plugin" (Despite the description seems to be a quite nice Arch logo theme)
Solar: "Space theme with violent flaring blue star" and
Spinfinity: "Simple theme that shows a rotating infinity sign in the center of the screen"
(Text: "Text mode theme with tricolor progress bar")
(Details: "Verbose fallback theme")
You can get a list of currently installed themes with:
To preview the themes without rebooting. Hit Ctrl+Alt+F2 to change to console, log in as root and type:
To quit the preview hit Ctrl+Alt+F2 again and type:
Set your desired theme with the plymouth-set-default-theme utility, eg:
# plymouth-set-default-theme spinfinity
Rebuild your kernel image with:
# mkinitcpio -p [name of your kernel preset]
Small black squares
For some reason the command to quit Plymouth can leave small black squares around the top of your screen that attach themselves permanently to any window passing under them. Two confirmed cases are a laptop with ATI graphics card using KMS, and a PC with nVidia card using the regular framebuffer. This issue is caused by the --retain-splash option, which is required to keep the boot process as seamless as possible. The work-around is to kill Plymouth after login, when the --retain-splash option is no longer needed.
Edit ~/.xinitrc as yourself and add this line before your desktop session line (such as "exec ck-launch-session openbox-session") to kill Plymouth:
sudo /bin/plymouth quit &
Or edit /etc/rc.local and add this line to it:
plymouth quit &
This will not require using visudo!
Note: The lack of --retain-splash and the additional & sign on the end is required so that the xinitrc script will go on to start your desktop session and leave plymouth exiting in the background.
Warning: Failure to add this before your desktop session line (eg. "exec startxfce4") will result in an unstartable session.
You now need to give yourself permission to kill the Plymouth daemon without a password, by editing /etc/sudoers (you can replace nano with whatever you like):
# EDITOR=nano visudo
yourusername ALL=(ALL) NOPASSWD: /bin/plymouth
Reboot, and all should be well.
Original Spec A related forum thread