{...}: { preservation = { enable = true; preserveAt."/persist" = { files = [ # Machine ID { file = "/etc/machine-id"; inInitrd = true; } # SSH host keys { file = "/etc/ssh/ssh_host_rsa_key"; how = "symlink"; configureParent = true; } { file = "/etc/ssh/ssh_host_ed25519_key"; how = "symlink"; configureParent = true; } ]; directories = [ # NixOS state "/var/lib/nixos" # Tailscale state "/var/lib/tailscale" # NetworkManager connections "/etc/NetworkManager/system-connections" ]; users.skye = { directories = [ # SSH state (keys, known_hosts, etc) { directory = ".ssh"; mode = "0700"; } # Dev directory "dev" # Application states ".local/share/direnv" ".local/share/PrismLauncher" ".mozilla" ]; }; }; }; systemd.suppressedSystemUnits = ["systemd-machine-id-commit.service"]; }