Flicker Free Boot
This page has been nominated for deletion.
The given reason is: Requires pulling from unverified sources and use of pastebin
If you disagree with its deletion, do not remove this notice; discuss your objections on the associated discussion page.
Flicker Free Boot is a relatively new feature, that was created by Hans de Goede and is available in Fedora since version 30.
This is not an easy task to accomplish and might break the system. It's recommended to make a backup of all files in the /boot partition before attempting this tutorial. No support for boot failures will be provided by Gentoo (forums, bugs, email, irc) when using software outside of the repository. Follow this tutorial at your own risk!
|Device Model||CPU (Code Name)||Notes|
|Dell Inspiron 15 5567||Intel Core i7-7500U (Kaby Lake)||The boot process is completely fluent, using kernel patches from  or kernel version below 5.7.|
|Dell PowerEdge T20||Intel Xeon E3-1225v3 (Haswell)||The boot process is around 80% fluent. It flickers once for 2 - 3 sec. Unfortunately it's the same when booting from a Microsoft Windows 10 based USB key, so it appears to be the way it was implemented.|
|Lenovo ThinkPad P52||Intel Core i7-8750H (Coffee Lake)||The boot process is completely fluent|
Please share your success or failure results if you can. This way we can get a more accurate view of what is working.
Hardware / Software
- A working UEFI setup, preferably with a Intel Skylake (6th Generation) or more recent processor should work.
- Older (3rd to 5th Generation Core iXXXX series processors might work.
- You must be using the Intel Onboard (i915) series graphics. Other graphics cards are not supported.
- The specified system must boot up in native UEFI mode. CSM mode needs to be disabled.
- The specified system must use a manually compiled kernel. I haven't tested this with a genkernel created kernel.
- If you're using an older (e.g. Ivy Bridge / Haswell / Broadwell) based system, it's recommended that you use at least sys-kernel/gentoo-sources version 4.20.17 or higher due to a bug that actually causes the screen to go to stand-by mode and turn back on.
- Kernel version 5.7.0 or higher does not honor the
i915.fastbootkernel parameter . Use the patches located on that bug report or use a version below 5.7.0.
- This guide assumes that you've configured your kernel correctly and set the appropriate options for framebuffer support and such.
- This guide assumes that you're using /dev/sda1 as ESP (/boot) partition. If it's not, then adjust the commands for your own paths accordingly.
- A working Gentoo setup, preferably configured with EFI stub.
- Intermediate to advanced knowledge about the Linux boot process.
This tutorial assumes that you've currently got a working Gentoo setup. This setup boots in (U)EFI mode using grub with CSM mode disabled and is using an Intel processor with it's own integrated graphics card.
Installing the required software
In order to be able to successfully get everything working, there are things you'll need to do in order to be able to successfully getting this running on a system
Setting the correct USE flags for plymouth
In order to set the correct use flags for plymouth, you'll need to take the following steps:
- Run the command:
nano -w /etc/portage/package.use/plymouth
- Add the following line to the file:
sys-boot/plymouth libkms pango
- NOTE: libkms is the minimal requirement for the splash screen even to show up and pango is required For interactivity (e.g.: If you want to have the ability to enter a LUKS password on a nice graphical screen). The gtk and gdm USE flags should be added respectively when using GDM as Display Manager or lightdm with GTK.
- NOTE: Do NOT use the static-libs USE flag. This USE flags break plymouth and causes the package not to compile or show any themes.
- Press CTRL + O, press [Enter] and press CTRL + X in order to save the file.
- Now install the package: sys-boot/plymouth: Verify that the correct use flags are set (otherwise there might be a typo in the file).
emerge --ask --verbose sys-boot/plymouth
This has been tested to work by using the amd64 version of dracut. Using the latest available version of dracut from portage is recommended.
Install the package: sys-kernel/dracut:
emerge --ask sys-kernel/dracut
Then create the initramfs image with
More information is available on the Dracut page.
Setting up EFI stub
efibootmgr -c -d /dev/sda -p 1 -L "Gentoo" -l '\vmlinuz-5.4.97-gentoo' -u '... i915.fastboot=1 initrd=\initramfs-5.4.97-gentoo.img ...'
Finally, reboot and pray it's working.
- Dracut — an initramfs infrastructure and aims to have as little as possible hard-coded into the initramfs.
- Plymouth — a bootsplash used to show splash screens during system boot and shutdown.