Hi, Quoting Isaac True (2023-04-17 10:49:20) > > Why would you have to run flash-kernel again? > > When it's being initially installed it won't have the additional command line > flag that forces it to ignore the EFI check, so it won't run and you would > have to run it manually afterwards with the flag. I agree that an env > variable/config file would be better here. > > > The name FK_FORCE_EFI=yes seems a bit backwards; it is ignoring > > the presence of EFI, not forcing it to behave like EFI. FK_FORCE_NO_EFI? > FK_IGNORE_EFI? Names are hard. > > My intention behind the name was something like "force *despite* EFI", but I > think FK_IGNORE_EFI does indeed fit a lot better. . > > > I overall like this approach, although the main drawback is having to write > > to /etc/default/flash-kernel > > I agree with this - it's a bit more awkward having to create and write a > file, but I like that it opens the door to allow both methods to work. The > user can either set the env variable, or it can be set in the file itself.
I've had a private chat with Vagrant yesterday and we agreed that the best way forward would be to solve this in the same way the environment variable FK_MACHINE works which can also be set using /etc/flash-kernel/machine and is essentially and override for /proc/device-tree/model. So in the same fashion we could have FK_IGNORE_EFI as an environment variable which can also be set by having /etc/flash-kernel/ignore-efi which is an override for the existence of /sys/firmware/efi. Would you like to amend your patch to add support for /etc/flash-kernel/ignore-efi in addition to FK_IGNORE_EFI? I'd be willing to test the result in our CI environment. :) > I'm not sure if it makes sense to add the "! ischroot" check like in that > merge request though, as I feel like that's a different topic. What do you > think? The "! ischroot" is not strictly required for my use-case. I added it because with it, we get the nice property, that outside of a chroot (i.e. when not creating a bootable image for another machine) the presence of efi will not get ignored. This would mean that after creating the bootable image, one would not have to remove /etc/flash-kernel/ignore-efi to get back to a system that potentially could support efi in the future. But I do not require this extra complexity. I think there is value in making FK_IGNORE_EFI behave the same as FK_MACHINE without any hidden surprises like the "! ischroot" check. Thanks! cheers, josch
signature.asc
Description: signature