nixos-conf/modules/users/vili.nix

45 lines
1 KiB
Nix

{ config, lib, ... }:
let
cfg = config.custom.users.vili;
in
{
options.custom.users.vili.enable = lib.mkOption {
type = lib.types.bool;
default = false;
};
config = lib.mkIf cfg.enable {
sops.secrets =
lib.mkIf
(builtins.elem config.networking.hostName [
"helium"
"lithium"
])
{
vili-password = {
sopsFile = ../../secrets/${config.networking.hostName}/vili.yaml;
neededForUsers = true;
};
};
users.users.vili = {
isNormalUser = true;
home = "/home/vili";
description = "Vili Sinervä";
uid = 1000;
extraGroups = [
"wheel"
"networkmanager"
"audio"
];
openssh.authorizedKeys.keys = config.users.users.root.openssh.authorizedKeys.keys;
hashedPasswordFile =
if builtins.hasAttr "vili-password" config.sops.secrets then
config.sops.secrets.vili-password.path
else
null;
};
users.groups.vili.gid = 1000;
};
}