Modularize code
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
28
users/common/configs/persist/default.nix
Normal file
28
users/common/configs/persist/default.nix
Normal file
@@ -0,0 +1,28 @@
|
||||
{ config, inputs, lib, ... }:
|
||||
|
||||
{
|
||||
programs.fuse.userAllowOther = 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);
|
||||
|
||||
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);
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user