2021-12-18 21:00:32 +00:00
|
|
|
{ pkgs, unstable, ... }:
|
2021-10-13 13:29:07 +01:00
|
|
|
|
|
|
|
{
|
2021-11-25 11:42:32 +00:00
|
|
|
mkUser = { name, roles ? [ ] }:
|
|
|
|
let
|
|
|
|
mkRole = role: import (../roles/home + "/${role}.nix");
|
|
|
|
roles_mod = (map (r: mkRole r) roles);
|
|
|
|
in {
|
|
|
|
users.groups.plugdev = { };
|
2021-10-13 13:29:07 +01:00
|
|
|
|
2021-11-25 11:42:32 +00:00
|
|
|
fileSystems."/home/${name}/Downloads" = {
|
|
|
|
device = "tmpfs";
|
|
|
|
fsType = "tmpfs";
|
|
|
|
options = [ "size=3G" ];
|
|
|
|
};
|
2021-10-13 13:29:07 +01:00
|
|
|
|
2021-11-25 11:42:32 +00:00
|
|
|
users.users.${name} = {
|
|
|
|
isNormalUser = true;
|
|
|
|
shell = pkgs.zsh;
|
|
|
|
extraGroups = [ "wheel" "plugdev" ];
|
|
|
|
};
|
2021-12-18 21:00:32 +00:00
|
|
|
|
|
|
|
home-manager.users.${name}.imports = [ (mkRole "common") ]
|
2021-11-25 11:42:32 +00:00
|
|
|
++ roles_mod;
|
|
|
|
};
|
2021-10-13 13:29:07 +01:00
|
|
|
}
|