nix-config/users/ester/default.nix

38 lines
735 B
Nix

{
lib,
config,
pkgs,
inputs,
...
}: let
cfg = config.nixos.users.ester;
in {
options.nixos.users.ester = {
isDesktopUser = lib.mkEnableOption "install applications intended for desktop use";
};
config = {
nixpkgs.config.allowUnfree = true;
sops.secrets = lib.mkIf cfg.isDesktopUser {
"passwords/ester" = {
neededForUsers = true;
sopsFile = "${inputs.secrets}/user-passwords.yaml";
};
};
users.users.ester = (
if cfg.isDesktopUser
then {
isNormalUser = true;
extraGroups = ["networkmanager"];
hashedPasswordFile = config.sops.secrets."passwords/ester".path;
}
else {
isSystemUser = true;
}
);
};
}