nyx/modules/base/users/mkuser.nix

48 lines
1,000 B
Nix
Raw Permalink Normal View History

2025-01-26 00:36:34 +02:00
{
lib,
config,
...
}: let
inherit (lib.modules) mkDefault;
inherit (lib.attrsets) genAttrs;
inherit (lib.validators) ifTheyExist;
2025-01-26 00:36:34 +02:00
in {
users.users = genAttrs config.olympus.system.users (
name: {
home = "/home/" + name;
# shell = config.olympus.programs.${config.olympus.programs.defaults.shell}.package;
2025-01-26 00:36:34 +02:00
uid = mkDefault 1000;
isNormalUser = true;
initialPassword = mkDefault "changeme";
# only add groups that exist
extraGroups =
[
"wheel"
"nix"
]
++ ifTheyExist config [
"network"
"networkmanager"
"systemd-journal"
"audio"
"pipewire" # this give us access to the rt limits
2025-01-26 00:36:34 +02:00
"video"
"input"
"plugdev"
"lp"
2025-01-26 00:36:34 +02:00
"tss"
"power"
"wireshark"
2025-01-26 00:36:34 +02:00
"mysql"
"docker"
"podman"
2025-01-26 00:36:34 +02:00
"git"
"libvirtd"
"cloudflared"
];
}
);
}