themes/engine/plymouth.nix enables systemd stage-1 initrd (boot.initrd.systemd.enable) distro-wide, and Plymouth is imported unconditionally from core/system/default.nix. systemd stage 1 hard-rejects boot.initrd.postDeviceCommands with a failed assertion, so every config with nomarchy.system.impermanence.enable = true — including installs that chose impermanence at the installer prompt — failed to evaluate. Convert the Erase-Your-Darlings rollback to a boot.initrd.systemd.services oneshot unit ordered after the LUKS mapping opens and before sysroot.mount, and add boot.initrd.systemd.initrdBin for btrfs-progs/coreutils/util-linux/ findutils (the systemd initrd doesn't ship them by default). Script body is unchanged. Verified eval via extendModules on nixosConfigurations.default; boot-time wipe semantics still need a real wipe-boot cycle (Pillar 8). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
4.0 KiB
4.0 KiB