Hi!
I have an old Dell XPS 13 laptop with NixOS as its only OS. I haven’t used it in a while, and after that latest update it fails to boot. After selecting the latest generation in systemd-boot
it shows the message EFI sub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
, and nothing happens after that. What is more bizarre is that the previous generations also have stopped booting.
I’ve tried the following:
- Setting most of the kernel cmd arguments from this page (without any effect)
- Booting from an installation media, mounting system disks to
/mnt/
and runningNIXOS_INSTALL_BOOTLOADER=1 /nix/var/nix/profiles/system/bin/switch-to-configuration boot
command (no help) - Running
nixos-install
worked! It created a new generation which has booted successfully
However, running nixos-rebuild switch --upgrade
from the running system resulted in the same broken boot state. Afrer pocking around, I’ve found that if I run nixos-install
right after nixos-rebuild switch
, everything works fine.
I spotted a difference between generation labels created by nixos-install
and nixos-rebuild switch
:
The former says it’s NixOS 22.11.22…
, while the latter creates NixOS 23.05pre…
. After that, I switched from the unstable channel to the stable one, and now it all works fine.
The last generation that worked was created on 2022-12-02 with the label NixOS 23.05pre430779.e76c78d2068
, and the broken one was on 2023-02-02 NixOS 450086.e1e1b192c1a
, if that’s any help.