-
-
Notifications
You must be signed in to change notification settings - Fork 14.6k
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
UKI direct boot #341357
Comments
in case of |
The kernel requires the |
How to choose other configurations? 🤔 |
UKIs can contain cmdline too and are the only used cmdline when secureboot is on Huge amounts of generations would waste lots of space tho but it would still be possible to do |
This should be possible to implement using the bootspec + |
You could just use an activation script to add the boot entry via EFI variables if I get your question right here. I don't think this is something that upstream-NixOS should support, as most users will just have a boot menu. But feel free to open a PR adding such a hook if you think that this is useful. |
That's quite sad. Fedora seem to move in the direction of having such setup by default and it would be very disappointing if this wouldn't be possible to get with upstream module. Personally I really like the boot menu my UEFI has and systemd-boot feels like an unnecessary middleware. |
Is there a specification for variables that will be considered by such firmware-built-in boot menus for their versions? I'm open to have such a thing per se, but it shouldn't be scoped to a single firmware vendor |
I'm not sure... Aren't those the ones efibootmgr shows/manipulates? |
@ilya-fedin A small question: are you proposing that the UKIs pack both the kernel and initrd used by each generation? We faced a similar conundrum in #324911 where a full UKI would cost almost 100MiB per specialisation per profile per generation on the ESP. The solution we achieved there was to just pack the EFI executable and the configuration file containing the path to the kernel/initrd and the Packing the whole kernel would make it significantly easier to manage the generations, while only using small UKIs that point to separate kernel files would mean that the UKIs are dependent on files with possibly varying path names. |
What I propose should be orthogonal to how UKIs are created? All I propose is NixOS scripts adding/removing each boot entry to UEFI instead of boot loader. |
I think we could add something that simply does a |
Not sure how that would fulfill the request given that it is about bypassing systemd-boot or any other boot loader |
I think this should only use EFI variables, which are not really coupled to systemd-boot? |
It seem to operate on systemd-boot's own EFI variables? The only generic EFI commands seem to be:
|
Hmm. Looks like that when scrolling through their code. I'd have expected this to be generic. Another possibility would be to replace the |
why couldn't just the same scripts (from virt-firmware package) or efibootmgr be used? |
|
Issue description
Currently NixOS lets to load UKI only with systemd-boot, there's no alternative to the virt-firmware's kernel-install hook that users of e.g. Fedora can use to have boot entries directly in the UEFI boot menu.
Steps to reproduce
Technical details
"x86_64-linux"
Linux 6.10.7-cachyos, NixOS, 24.11 (Vicuna), 24.11.19700101.dirty
yes
yes
nix-env (Nix) 2.18.5
/etc/static/nixpkgs
The text was updated successfully, but these errors were encountered: