From 0b4d74f6afda3e4c56db60011caa5eb72285fc2d Mon Sep 17 00:00:00 2001 From: N1R4 Date: Sat, 1 Aug 2026 23:52:09 +0545 Subject: [PATCH] Filter phantom entries when rewriting EFI BootOrder (#94) The Limine registration helper rebuilds the UEFI BootOrder from the pre-state read, but passes every entry through verbatim. Some firmware (listed in the BootOrder but with no matching BootXXXX variable) causes efibootmgr --bootorder to fail with exit status 8, aborting the whole install at the bootloader step. Only carry forward entries that still exist as boot variables. --- .../usr/share/omarchy-iso/orchestrator/phases_impl.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/configs/airootfs/usr/share/omarchy-iso/orchestrator/phases_impl.py b/configs/airootfs/usr/share/omarchy-iso/orchestrator/phases_impl.py index 80c7b77..d47bcdf 100644 --- a/configs/airootfs/usr/share/omarchy-iso/orchestrator/phases_impl.py +++ b/configs/airootfs/usr/share/omarchy-iso/orchestrator/phases_impl.py @@ -437,7 +437,13 @@ def _register_limine_efi_entry( raise RuntimeError("efibootmgr --create reported success but no Limine entry found") limine_num = new_limine[0] - keep = [num for num in pre_state["order"] if num not in stale_limine and num != limine_num] + keep = [ + num + for num in pre_state["order"] + if num not in stale_limine + and num != limine_num + and num in pre_state["entries"] + ] subprocess.run( ["efibootmgr", "--bootorder", ",".join([limine_num, *keep])], check=True, capture_output=True,