{ primaryUser }: { ... }: { environment.persistence."/persist" = { enable = true; hideMounts = true; directories = [ "/var/log" "/var/lib/nixos" "/var/lib/systemd/coredump" "/var/lib/systemd/timers" "/etc/nixos" "/etc/ssh" "/etc/NetworkManager/system-connections" "/var/lib/bluetooth" "/var/lib/NetworkManager" "/var/lib/iwd" "/var/lib/fail2ban" "/var/lib/tailscale" "/var/lib/upower" "/var/lib/flatpak" ]; files = [ "/machine-key.json" "/etc/machine-id" "/etc/localtime" # NOTE: if you want mutable passwords across reboots, persist these, # but you must do a one-time migration (see notes in chat). # "/etc/shadow" # "/etc/group" # "/etc/passwd" # "/etc/sudoers" ]; users."${primaryUser}" = { directories = [ ".ssh" ".gnupg" "projects" ".config/nixos-config" ".config/atuin" ".local/share/atuin" ".local/share/zoxide" # KDE ".config/kdeconnect" # Chrome ".config/google-chrome" # neovim ros_neovim ".local/state/nvim_ringofstorms_helium" ".local/share/flatpak" ".var/app" ]; files = [ ]; }; }; }