From 32a38afebb8207e5c81e80550c2f6ae88c9ad38a Mon Sep 17 00:00:00 2001 From: chn Date: Sun, 24 Mar 2024 20:41:41 +0800 Subject: [PATCH] system.user: automatically create directories --- modules/system/impermanence.nix | 1 - modules/user/default.nix | 13 +++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/modules/system/impermanence.nix b/modules/system/impermanence.nix index 4a482e40..08aa20e2 100644 --- a/modules/system/impermanence.nix +++ b/modules/system/impermanence.nix @@ -20,7 +20,6 @@ inputs: hideMounts = true; directories = [ - "/home" "/root" "/var/db" "/var/lib" diff --git a/modules/user/default.nix b/modules/user/default.nix index f42c50d9..e86cdeea 100644 --- a/modules/user/default.nix +++ b/modules/user/default.nix @@ -78,6 +78,19 @@ inputs: home-manager.users = builtins.listToAttrs (builtins.map (name: { inherit name; value.imports = user.sharedModules; }) user.users); + environment.persistence."${inputs.config.nixos.system.impermanence.persistence}".directories = builtins.map + (user: { directory = "/home/${user}"; inherit user; group = user; mode = "0700"; }) + user.users; + nixos.user.sharedModules = + [{ + config.home.file = + { + ".config/.keep".text = ""; + ".local/.keep".text = ""; + ".local/share/.keep".text = ""; + ".local/state/.keep".text = ""; + }; + }]; } # set hashedPassword if it exist in secrets (