Clean up common user modules

Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
2024-06-21 00:08:02 +03:00
parent 09b42521e4
commit ce37f320c2
24 changed files with 476 additions and 490 deletions

View File

@@ -1,28 +1,30 @@
{ config, inputs, lib, ... }:
{
programs.fuse.userAllowOther = true;
let
users = lib.attrsets.filterAttrs (name: config: config.isNormalUser) config.users.users;
in {
programs.fuse.userAllowOther = lib.mkIf (users != [ ]) true;
systemd.tmpfiles.rules = [ "d /persist/home 0755 root root -" ] ++
lib.attrsets.mapAttrsToList (user: config: "d /persist${config.home} 0700 ${user} users -")
(lib.attrsets.filterAttrs (name: config: config.isNormalUser) config.users.users);
systemd.tmpfiles.rules = lib.mkIf (users != [ ]) (
[ "d /persist/home 0755 root root -" ] ++
lib.attrsets.mapAttrsToList (user: config: "d /persist${config.home} 0700 ${user} users -") users
);
home-manager = {
sharedModules = [{ imports = [ inputs.impermanence.nixosModules.home-manager.impermanence ]; }];
users = lib.attrsets.mapAttrs (user: config: ({
home.persistence."/persist${config.home}" = {
allowOther = true;
directories = [
"Documents"
"Downloads"
"Music"
"Pictures"
"Videos"
"Templates"
"VMs"
"git"
];
};
})) (lib.attrsets.filterAttrs (name: config: config.isNormalUser) config.users.users);
};
home-manager.users = lib.attrsets.mapAttrs (user: config: ({
imports = [ inputs.impermanence.nixosModules.home-manager.impermanence ];
home.persistence."/persist${config.home}" = {
allowOther = true;
directories = [
"Documents"
"Downloads"
"Music"
"Pictures"
"Videos"
"Templates"
"VMs"
"git"
];
};
})) users;
}