Fix unbootable installs: lay the kernel into the target and own GRUB

archiso keeps vmlinuz/initramfs in the ISO boot dir, not the squashfs, so
unpackfs lays down an empty /boot. The chroot's mkinitcpio/grub-mkconfig had
nothing to work with and the ESP ended up empty (firmware found no bootloader).

- shellprocess@kernel (dontChroot) copies the live kernel into the target
  /boot before the bootloader step
- post-install.sh now runs grub-install itself, including a --removable pass
  so firmware with no NVRAM entry still boots via EFI/BOOT/BOOTX64.EFI
This commit is contained in:
Breadway 2026-06-14 17:57:50 +08:00
parent 2116b7cd7b
commit 078c5f4f94
5 changed files with 61 additions and 1 deletions

View file

@ -1,6 +1,13 @@
---
modules-search: [/etc/calamares/modules, /usr/lib/calamares/modules]
# Second shellprocess instance: copies the live kernel into the target /boot
# (archiso keeps it out of the squashfs) before the bootloader step runs.
instances:
- id: kernel
module: shellprocess
config: shellprocess-kernel.conf
sequence:
- show:
- welcome
@ -22,6 +29,7 @@ sequence:
- networkcfg
- hwclock
- packages
- shellprocess@kernel
- bootloader
- shellprocess
- umount