Limine Bootloader
Installing the Limine Bootloader
Section titled “Installing the Limine Bootloader”As always, update first:
sudo pacman -SyuTo install limine:
sudo pacman -S limineEFI partition must be mounted to /boot (which is the default for a KaOS install).
Deploying Limine on UEFI systems involves copying the BOOTX64.EFI file to the /boot/limine directory:
sudo cp /usr/share/limine/BOOTX64.EFI /boot/limine/Editing Configuration File
Section titled “Editing Configuration File”Installing limine gives you an example configuration file at /boot/limine/limine.conf.example. For details as to how to configure see CONFIG.md. It will look something like this:
timeout 5 # Specifies the timeout in seconds before the first entry is automatically booteddefault_entry: 1 # Points to the first entry, set to 3 if you prefer linux-nextinterface_branding_colour: 1 # See the color options in the above linked CONFIG.md, 1 is blackremember_last_entry: yes # If set to yes, remember last booted entry.term_font_scale: 2x2 # Use this setting for high-DPI displays, otherwise comment outterm_background: CC000000 # Background color of the terminal window, set very transparent blackterm_foreground: FFFFFF # Terminal text color, set to whiteterm_margin: 100 # Frame margin around the terminalquiet: no # If set to yes, enable quiet mode, where all screen output except panics and important warnings is suppressed.wallpaper: boot():/limine/wallpaper.jpg # Must be in the /boot directory. BMP, PNG, and JPEG formats are supported.
/KaOS Linux comment: KaOS with the linux kernel protocol: linux kernel_path: boot():/vmlinuz-linux kernel_cmdline: quiet root=UUID=xxxxx-xxxxx-xxxxx-xxxxx resume=UUID=xxxxx-xxxxx-xxxxx rw module_path: boot():/initramfs-linux.img
/KaOS Linux Fallback comment: KaOS with the linux kernel, fallback protocol: linux kernel_path: boot():/vmlinuz-linux kernel_cmdline: quiet root=UUID=xxxxx-xxxxx-xxxxx-xxxxx resume=UUID=xxxxx-xxxxx-xxxxx rw module_path: boot():/initramfs-linux-fallback.img
#/KaOS Linux Next# comment: KaOS with the linux-next kernel# protocol: linux# kernel_path: boot():/vmlinuz-linux-next# kernel_cmdline: quiet root=UUID=xxxxx-xxxxx-xxxxx-xxxxx resume=UUID=xxxxx-xxxxx-xxxxx rw# module_path: boot():/initramfs-linux-next.img
#/Other Distribution# comment: Other OS# protocol: linux# kernel_path: uuid(xxxxx-xxxx-xxxxx-xxxx):/vmlinuz-linux-next #uuid is PARTUUID of other EFI partition# kernel_cmdline: quiet root=UUID=xxxxx-xxxxx-xxxxx-xxxxx resume=UUID=xxxxx-xxxxx-xxxxx rw# module_path: uuid(xxxxx-xxxx-xxxxx-xxxx):/initramfs-linux-next.img #uuid is PARTUUID of other EFI partitionTo edit that file you will need the UUID of the boot partition:
sudo blkidLook for your /boot partition (if not clear which one it is, look for TYPE="vfat")
Now open the example file:
sudo micro /boot/limine/limine.conf.exampleAs you will see, the kernel and initramfs are already filled in, editing the kernel_cmdline with the correct UUID is needed. If you only have the linux kernel installed, then this has to be done twice. If you also use the linux-next kernel, then uncomment the pre-filled Linux Next section, and add the UUID there too. Resume UUID can also be added, that is the UUID of your swap partition.
Create an entry in UEFI Firmware
Section titled “Create an entry in UEFI Firmware”Finally, to create an entry in the UEFI Firmware, use the following command:
sudo efibootmgr --create --disk /dev/sda --part 1 --label "KaOS with the Limine Bootloader" --loader '/limine/BOOTX64.EFI'Replace /dev/sda and 1 of the --part argument to the disk and partition number on which the EFI System Partition is hosted.
Do NOT include /boot when pointing to Limine Bootloader file. /boot/limine/BOOTX64.EFI /limine/BOOTX64.EFI