Bootloader: Difference between revisions

imported>Samueldr
m Adds a one-liner to detect Legacy / UEFI
imported>Samueldr
m Updates new generation section, there is a possibly useless recommendation of re-installing the bootloader.
Line 43: Line 43:
The most common cause for this situation is when the [https://en.wikipedia.org/wiki/EFI_system_partition ESP] isn't mounted where NixOS expects it to be on UEFI systems. NixOS assumes the ESP is mounted under <code>/boot</code> and that it is on the ESP that NixOS will install the files needed for the boot process for UEFI systems.<ref>[https://nixos.org/nixos/manual/#sec-uefi-installation NixOS manual: 2.1. UEFI Installation]</ref> This issue should affect all supported UEFI bootloaders equally for NixOS.
The most common cause for this situation is when the [https://en.wikipedia.org/wiki/EFI_system_partition ESP] isn't mounted where NixOS expects it to be on UEFI systems. NixOS assumes the ESP is mounted under <code>/boot</code> and that it is on the ESP that NixOS will install the files needed for the boot process for UEFI systems.<ref>[https://nixos.org/nixos/manual/#sec-uefi-installation NixOS manual: 2.1. UEFI Installation]</ref> This issue should affect all supported UEFI bootloaders equally for NixOS.


The usual fix for this problem is to add the missing entry for <code>fileSystems."/boot"</code> in <code>hardware-configuration.nix</code> (or where your mount points are defined). Follow the steps in [[#Re-installing the bootloader]] to re-generate the menu entries, then boot in your system to add the missing configuration. The next generations should work as expected in your bootloader.
The usual fix for this problem is to add the missing entry for <code>fileSystems."/boot"</code> in <code>hardware-configuration.nix</code> (or where your mount points are defined).
 
If for some reason it is impossible to boot the existing generations, follow the steps in [[#Re-installing the bootloader]] to re-generate the menu entries, then boot in your system to add the missing configuration. The next generations should work as expected in your bootloader.


<hr />
<hr />