Bootloader: Limine
Overview
The reference system uses Limine 10.8.2 as the primary bootloader. Limine is installed to the EFI System Partition at /boot/EFI/limine/, and its entry is registered with the system firmware.
EFI boot order (efibootmgr output)
BootCurrent: 0001
BootOrder: 0001,0080,0000
Boot0001* Limine
Boot0080* Mac OS X
Boot0000* Zorin OSlimine-snapper-sync
limine-snapper-sync hooks into BTRFS snapshots via snapper and updates the Limine menu automatically. Every time snapper creates a snapshot, a corresponding boot entry appears in Limine. This means you can boot any previous snapshot directly from the boot menu without any manual steps.
Install:
bash
paru -S limine-snapper-sync
sudo systemctl enable --now limine-snapper-sync.timerManaging Boot Entries
bash
# View current boot order
sudo efibootmgr
# Set a specific entry as default (use 4-digit hex number from efibootmgr output)
sudo efibootmgr --bootorder 0001,0080
# Boot macOS on next boot only (without changing default)
sudo efibootmgr -n 0080
# Run the full bootloader management script
sudo bash scripts/04-bootloader.shOptional: rEFInd for Dual Boot
If you prefer a graphical boot picker that auto-detects all OS entries, 04-bootloader.sh can install rEFInd alongside Limine:
bash
sudo bash scripts/04-bootloader.sh --install-refindrEFInd will scan EFI entries and provide a graphical menu with icons. Limine remains as a fallback.
Recovering from a Failed Boot
If a kernel update breaks boot:
- Hold Space at the Limine splash — this shows the snapshot menu
- Select the last known good snapshot
- Boot into it and then run:
bash
# Revert the bad kernel from the running good snapshot
sudo snapper rollback <snapshot-number>
sudo reboot