43 lines
853 B
Nix
43 lines
853 B
Nix
{
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
...
|
|
}: let
|
|
ifTheyExist = groups: builtins.filter (group: builtins.hasAttr group config.users.groups) groups;
|
|
in {
|
|
users.mutableUsers = false;
|
|
users.users.dwessels = {
|
|
isNormalUser = true;
|
|
shell = pkgs.fish;
|
|
extraGroups = ifTheyExist [
|
|
"audio"
|
|
"deluge"
|
|
"docker"
|
|
"git"
|
|
"i2c"
|
|
"libvirtd"
|
|
"mysql"
|
|
"network"
|
|
"plugdev"
|
|
"video"
|
|
"wheel"
|
|
"wireshark"
|
|
];
|
|
hashedPasswordFile = config.sops.secrets.dwessels-password.path;
|
|
packages = [pkgs.home-manager];
|
|
};
|
|
|
|
sops.secrets.dwessels-password = {
|
|
sopsFile = ../../secrets.yaml;
|
|
neededForUsers = true;
|
|
};
|
|
|
|
home-manager.users.dwessels = import ../../../../home/dwessels/${config.networking.hostName}.nix;
|
|
|
|
security.pam.services = {
|
|
swaylock = {};
|
|
hyprlock = {};
|
|
};
|
|
}
|