Repository navigation
Conversation
Keep only the current (new default) and previously-running UKI on the ESP; delete anything older. Without this, every upgrade added ~60-100 MB to the ESP until ukify failed writing a new image. Pruning errors are non-fatal — the upgrade has already committed its boot entry by the time pruning runs, so a permission error on a stale file should not roll back a successful upgrade. Add e2e test that plants a stale .efi before upgrade and asserts it is gone afterward with exactly 2 files remaining.
The stage-specific pacman steps (rootfs-grub, rootfs-uki, rootfs-uki-sb) used -Syu which performs a full system upgrade. When the Arch repos publish a new kernel between the rootfs-common and rootfs-grub build steps, pacman installs the new kernel's modules tree — including a vmlinuz placed there by the linux package itself — but without a matching initramfs (dracut only ran in rootfs-common for the original kernel). cfsctl's UsrLibModulesVmlinuz::load_all then finds two kernel directories: the original with initramfs and the upgraded one without. If the upgraded kernel sorts first alphabetically, cfsctl panics at self.initramfs.unwrap() in prepare-boot (upstream bug: should return a clear error instead). Switch to -S --needed in the stage-specific steps so only the listed packages are installed, leaving the kernel unchanged from rootfs-common.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Keep only the current (new default) and previously-running UKI on the ESP; delete anything older. Without this, every upgrade added ~60-100 MB to the ESP until ukify failed writing a new image.
Pruning errors are non-fatal — the upgrade has already committed its boot entry by the time pruning runs, so a permission error on a stale file should not roll back a successful upgrade.
Add e2e test that plants a stale .efi before upgrade and asserts it is gone afterward with exactly 2 files remaining.