-
Notifications
You must be signed in to change notification settings - Fork 150
Install UKI Addons globally #1780
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request introduces two main changes. First, it refactors the boot configuration logic by renaming efi and NonEFI components to uki and NonUKI respectively, which more accurately reflects that these are Unified Kernel Images. This change is applied consistently across several files, including configuration parsing, boot setup, and deletion logic. Second, it changes the installation of UKI addons to be global by default, installing them into a shared directory on the ESP rather than scoping them to a specific deployment.
My review focuses on the correctness and maintainability of these changes. The refactoring appears to be well-executed. However, I have identified a couple of potential issues with the new global addon functionality. One concern is that the logic for global addons might unintentionally alter the installation path for UKIs that are located in subdirectories. Another point is the lack of a deletion mechanism for these new globally installed addons, which could lead to orphaned files on the EFI System Partition. I've added specific comments with details on these points.
FTR we covered some of this in coreos/fedora-coreos-tracker#2060 It feels a bit weird to install global addons from a container image by default; at least not without making that opt-in somehow. Since as discussed the Ignition platform ID UKI addon needs to live "out of band" of the container, how about just adding Or really I guess in the CoreOS case since it's always using osbuild which always uses Overall my inclination is to back out on the UKI addon support in bootc for now and just do external dropins per above until we're sure we need in-band addons. |
Installing addons is opt-in using the The platform ID Ignition addon is a special case and would most probably be not in a container (even though it very well could be in a container). |
Until now we were scoping passed in UKI Addons to specific deployments, but usecases like ignition, luks (for now at least), require the addons to be applied to all deployments Signed-off-by: Pragyan Poudyal <pragyanpoudyal41999@gmail.com>
Key 'uki' is more appropriate for us as the PE Binary that the key points to is a UKI Signed-off-by: Pragyan Poudyal <pragyanpoudyal41999@gmail.com>
We were making a distinction based on the bootloader and installing UKIs in EFI/Linux for Grub and EFI/Linux/bootc for sd-boot. IMO it's better if we use the same directory for both bootloaders Signed-off-by: Pragyan Poudyal <pragyanpoudyal41999@gmail.com>
4010283 to
a7dc7ed
Compare
Until now we were scoping passed in UKI Addons to specific deployments,
but usecases like ignition, luks (for now at least), require the addons
to be applied to all deployments
Rename 'efi' key to 'uki' in BLSConfig
Key 'uki' is more appropriate for us as the PE Binary that the key
points to is a UKI