summaryrefslogtreecommitdiff
path: root/util/user.nix
blob: 21cbd4e3b315afcf147eb242c2dda94e763a9872 (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
{home-manager, ...}: {
  mkHMUser = {
    username,
    stateVersion ? "22.11",
    system ? "x86_64-linux",
    channel,
    modules ? [],
  }:
    home-manager.lib.homeManagerConfiguration {
      pkgs = channel.legacyPackages.${system};
      modules =
        [
          ../users/${username}/home.nix
          {
            nixpkgs.config.allowUnfree = true;

            nix = {
              package = channel.legacyPackages.${system}.nixFlakes;
              settings.experimental-features = ["nix-command" "flakes"];
            };

            systemd.user.startServices = true;

            home = {
              inherit username stateVersion;
              homeDirectory = "/home/${username}";
            };

            programs.home-manager.enable = true;
          }
        ]
        ++ modules;
    };
}