summaryrefslogtreecommitdiff
path: root/util/host.nix
blob: c1dc5dd50e82c896e974bf93c06658ea2f2bd9dd (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
{home-manager, ...}: {
	mkHost = {
		name,
		modules,
		system ? "x86_64-linux",
		version ? "22.11",
		pkgs,
	}: {
		${name} = with pkgs.lib;
			nixosSystem {
				inherit system;
				modules =
					[
						../hosts/common
						../hosts/${name}

						({pkgs, ...}: {
							system.stateVersion = version;
							networking.hostName = mkDefault name;
							# enable non-free packages
							nixpkgs.config.allowUnfree = true;

							# Enable nix flakes
							nix.package = pkgs.nixFlakes;
						})

						home-manager.nixosModules.home-manager
						{
							home-manager.useGlobalPkgs = true;
							home-manager.useUserPackages = true;
						}
					]
					++ modules;
			};
	};
}