summaryrefslogtreecommitdiff
path: root/hosts/default.nix
blob: 863987ef64137d97d353a519db8a711adaa41ac8 (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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
{
  inputs,
  myLib,
  self,
  withSystem,
  ...
}: {
  flake = {
    nixosConfigurations = let
      inherit (myLib.configs) mkNixOS;

      profiles = import ./profiles.nix {inherit self inputs;};
    in {
      glados = mkNixOS {
        name = "glados";
        modules = with inputs; [
          nixos-hardware.nixosModules.common-cpu-amd-pstate
          nixos-hardware.nixosModules.common-gpu-nvidia-nonprime
          nixos-hardware.nixosModules.common-pc-ssd
          lanzaboote.nixosModules.lanzaboote
        ];
        profile = profiles.personal;
      };

      glados-wsl = mkNixOS {
        name = "glados-wsl";
        modules = [inputs.nixos-wsl.nixosModules.wsl];
        profile = profiles.personal;
      };

      atlas = mkNixOS {
        name = "atlas";
        system = "aarch64-linux";
        profile = profiles.server;
      };

      p-body = mkNixOS {
        name = "p-body";
        modules = [inputs.guzzle_api.nixosModules.guzzle_api];
        system = "x86_64-linux";
        profile = profiles.server;
      };
    };

    nixosModules.getchoo = import ../modules/nixos;

    packages.x86_64-linux.turret = withSystem "x86_64-linux" ({pkgs, ...}:
      pkgs.callPackage ./turret {
        inherit (inputs) openwrt-imagebuilder;
      });
  };

  perSystem = {system, ...}: {
    apps = (inputs.nixinate.nixinate.${system} self).nixinate;
  };
}