diff options
| -rw-r--r-- | hosts/default.nix | 130 | ||||
| -rw-r--r-- | hosts/profiles.nix (renamed from hosts/common.nix) | 4 |
2 files changed, 64 insertions, 70 deletions
diff --git a/hosts/default.nix b/hosts/default.nix index 78dfb4f..d059b40 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -3,79 +3,77 @@ self, ... }: let - inherit (import ./common.nix {inherit inputs self;}) personal server; + inherit (import ./profiles.nix {inherit inputs self;}) personal server; + + mkNixOS = { + name, + modules ? profile.modules, + profile ? personal, + system ? profile.system, + specialArgs ? profile.specialArgs, + }: + profile.builder { + inherit specialArgs system; + modules = [./${name}] ++ modules ++ profile.modules; + }; in { flake = { nixosConfigurations = { - glados = with personal; - builder { - inherit specialArgs system; - modules = with inputs; - modules - ++ [ - ./glados - nixos-hardware.nixosModules.common-cpu-amd-pstate - nixos-hardware.nixosModules.common-gpu-nvidia-nonprime - nixos-hardware.nixosModules.common-pc-ssd - lanzaboote.nixosModules.lanzaboote - ]; - }; + 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 + ]; + }; + + glados-wsl = mkNixOS { + name = "glados-wsl"; + modules = [inputs.nixos-wsl.nixosModules.wsl]; + }; + + atlas = mkNixOS { + name = "atlas"; + modules = [ + inputs.hercules-ci-agent.nixosModules.agent-service - glados-wsl = with personal; - builder { - inherit specialArgs system; - modules = with inputs; - modules - ++ [ - ./glados-wsl - nixos-wsl.nixosModules.wsl - ]; - }; + { + getchoo.server = { + secrets.enable = true; + services.hercules-ci = { + enable = true; + secrets.enable = true; + }; + }; + } + ]; - atlas = with server; - builder { - inherit specialArgs; - system = "aarch64-linux"; - modules = with inputs; - modules - ++ [ - ./atlas - hercules-ci-agent.nixosModules.agent-service + system = "aarch64-linux"; + profile = server; + }; - { - getchoo.server = { - secrets.enable = true; - services.hercules-ci = { - enable = true; - secrets.enable = true; - }; - }; - } - ]; - }; + p-body = mkNixOS { + name = "p-body"; + modules = with inputs; [ + hercules-ci-agent.nixosModules.agent-service + guzzle_api.nixosModules.guzzle_api - p-body = with server; - builder { - inherit specialArgs; - modules = with inputs; - modules - ++ [ - ./p-body - hercules-ci-agent.nixosModules.agent-service - guzzle_api.nixosModules.guzzle_api + { + getchoo.server = { + secrets.enable = true; + services.hercules-ci = { + enable = true; + secrets.enable = true; + }; + }; + } + ]; - { - getchoo.server = { - secrets.enable = true; - services.hercules-ci = { - enable = true; - secrets.enable = true; - }; - }; - } - ]; - system = "x86_64-linux"; - }; + system = "x86_64-linux"; + profile = server; + }; }; nixosModules.getchoo = import ../modules; @@ -89,7 +87,7 @@ in { apps = (inputs.nixinate.nixinate.${system} self).nixinate; packages = { - turret = pkgs.callPackage ./_turret {inherit (inputs) openwrt-imagebuilder;}; + turret = pkgs.callPackage ./turret {inherit (inputs) openwrt-imagebuilder;}; }; }; } diff --git a/hosts/common.nix b/hosts/profiles.nix index 3e2a7ca..ba49050 100644 --- a/hosts/common.nix +++ b/hosts/profiles.nix @@ -8,8 +8,6 @@ in { system = "x86_64-linux"; builder = nixpkgsUnstable.lib.nixosSystem; - dir = ./.; - modules = [ ragenix.nixosModules.default home-manager.nixosModules.home-manager @@ -68,8 +66,6 @@ in { server = { builder = nixpkgs.lib.nixosSystem; - dir = ./.; - modules = [ ragenix.nixosModules.default ../modules/base |
