Nix iso unable to boot in UEFI mode (but other distros can)

I found the cause of this issue

The NixOS ISO uses lower case filenames for the bootx64.efi file and the EFI/BOOT directories

I had a look at the UEFI standard and it mentions that “FAT 8.3 file names are always stored as uppercase ASCII characters” so I think some computer BIOS’s assume these files will be uppercase while others ensure they work regardless. The standard also mentions that the filesystem is case-sensitive.

I edited the ISO and changed the filenames and directory names then edited the grub.cfg files (there is one in /BOOT/GRUB which loops back) and it now works in GRUB2 mode.

Now the installer freezes at " starting systemd-udevd version…" but that is another story (assuming it isn’t caused by my tweaking the ISO)

I am going to head over to the NixOS git to see if I can file something to highlight this issue

5 Likes