diff --git a/flake.nix b/flake.nix index 7a55f74..63ec151 100644 --- a/flake.nix +++ b/flake.nix @@ -30,6 +30,9 @@ baseModules = [ home-manager.nixosModules.home-manager sops-nix.nixosModules.sops + ]; + + topology = [ nix-topology.nixosModules.default ]; in { @@ -79,7 +82,8 @@ [ ./hosts/WCE-Overseer ] - ++ baseModules; + ++ baseModules + ++ topology; }; ################################### # ISO Installer w/ recovery tools # @@ -140,7 +144,12 @@ import nix-topology { inherit pkgs; modules = [ - {nixosConfigurations = self.nixosConfigurations;} + ./infrastructure/topology.nix + { + nixosConfigurations = { + WCE-Overseer = self.nixosConfigurations.WCE-Overseer; + }; + } ]; }; }; diff --git a/infrastructure/topology.nix b/infrastructure/topology.nix new file mode 100644 index 0000000..56e7c18 --- /dev/null +++ b/infrastructure/topology.nix @@ -0,0 +1,26 @@ +{config, ...}: let + inherit (config.lib.topology) mkInternet mkRouter mkConnection; +in { + # Define networks/nodes here + networks.home = { + name = "Home Network"; + cidrv4 = "192.168.0.0/16"; + style = { + primaryColor = "#69398b"; + secondaryColor = "#9277ae"; + pattern = "solid"; + }; + }; + + nodes.internet = mkInternet { + connections = mkConnection "router" "wan1"; + }; + + nodes.router = mkRouter "TP-Link" { + info = "AX1450 Wi-Fi 6 Router"; + interfaceGroups = [ + ["wan1"] + ["eth1" "eth2" "eth3" "eth4"] + ]; + }; +}