installer: add Limine bootloader (#1815)
* installer: add Limine bootloader
Limine is a modern, advanced, portable, multiprotocol bootloader.
[Limine GitHub](https://github.com/limine-bootloader/limine)
[Limine Arch Wiki](https://wiki.archlinux.org/title/Limine)
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* limine: add UEFI support
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* global_menu: check filesystem and bootloader compatibility
Before on install, only missing configurations were checked. This commit
introduces bootloader validatity checks on install which verify if the
selected filesystem is compatiable with the selected bootloader (for
example, it is not possible to boot limine from BTRFS).
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* misc: fix the return value of `_validate_bootloader`
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* global_menu: make `mypy` happy
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* misc: make `flake8` happy
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* limine: upgrade to v5
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* limine: install packman hooks
Create the BIOS and UEFI pacman hooks so limine gets auto deployed on
update.
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* installer::limine: fix broken root UUID
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* docs: add a note saying its in beta
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
* install_limine: use `safe_fs_type`
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
---------
Signed-off-by: Anhad Singh <andypythonappdeveloper@gmail.com>
1 files changed, 1 insertions, 0 deletions
@@ -12,6 +12,7 @@ class Bootloader(Enum): Systemd = 'Systemd-boot' Grub = 'Grub' Efistub = 'Efistub' + Limine = 'Limine' def json(self): return self.value |