blob: 1f6975c4a2b97b56a245fe7aa9307eb097889baf (
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
27
28
29
30
31
32
33
34
35
36
37
38
39
|
inputs: let
mkSystem = name: {
profile,
modules ? profile.modules,
system ? profile.system,
specialArgs ? profile.specialArgs,
}:
profile.builder {
inherit specialArgs system;
modules =
["${inputs.self}/hosts/${name}"]
++ (
if modules == profile.modules
then modules
else modules ++ profile.modules
);
};
mkHMUser = name: {
modules ? [],
pkgs ? import inputs.nixpkgs {system = "x86_64-linux";},
extraSpecialArgs ? inputs,
}:
inputs.home-manager.lib.homeManagerConfiguration {
inherit pkgs extraSpecialArgs;
modules =
[
{
programs.home-manager.enable = true;
}
]
++ ["${inputs.self}/users/${name}/home.nix"]
++ modules;
};
in {
inherit mkHMUser mkSystem;
mkHMUsers = builtins.mapAttrs mkHMUser;
mkSystems = builtins.mapAttrs mkSystem;
}
|