summaryrefslogtreecommitdiff
path: root/user-profiles/core.nix
blob: 6f473b1ad2260907019eb95b0446b3818ff24eff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{ flake, userName, lib, customUtils, ... }:
let
  userProfileSet = customUtils.types.attrNameSet (lib.zipAttrs (lib.attrValues flake.nixosModules.userProfiles));
in {
  options = {
    users.users = lib.mkOption {
      type = lib.types.attrsOf (lib.types.submodule {
        options.profiles = lib.mkOption {
          type = userProfileSet;
          default = [];
          description = ''
            Set (list without duplicates) of ‘userProfiles’ enabled for this user
          '';
        };
      });
    };
  };
  
  config = {
    users.users.${userName} = {}; # Just make sure the user is created

    home-manager.users.${userName} = {
      manual.manpages.enable = true;
    };
  };
}