TLDR: It works well.
It is mainly inspired by Methods to reduce boot time and How-to: Arch Linux on a Librem. So I am not going to describe details about that.
I use a standalone FAT32 /boot partition (to make syslinux happy), and a F2FS partition as root. That does not matter at all though.
The kernel is passed splash
parameter and plymouth will do the job.
For syslinux, I set UI vesamenu.c32
instead of UI menu.c32
, which allow flickerless pass from syslinux to plymouth. MENU BACKGROUND #00000000
or a background image is recomended here.
But be careful with MENU RESOLUTION 3840 2160
, there might be strange stripes on screen when syslinux reset resolution.
To make it faster, you might set TIMEOUT
to a small value, and set MENU HIDDEN
, or just set TIMEOUT 0
.
For the kernel, vga=current i915.fastboot=1
will reduce flickers. There would still be flickers, but it is good enough.