zaphyra's git: nixfiles

zaphyra and void's nixfiles

commit ee2039535f4a3c5b918da4c602ffa9a18c83cd27
parent a61ea29383552d2b1094938018daa309e31b48a2
Author: Katja (zaphyra) <git@ctu.cx>
Date: Sat, 7 Jun 2025 18:22:42 +0200

flake: add `zaphyraHosts` output
3 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/config/nixos/modules/services/knotACME.nix b/config/nixos/modules/services/knotACME.nix
@@ -38,7 +38,7 @@ in
       generateACMERecord = recordName: ((builtins.hashString "sha1" recordName) + ".${cfg.zone}.");
 
       nodesWithACMERecords = (
-        inputs.self.nixosConfigurations
+        inputs.self.zaphyraHosts
         |> lib.filterAttrs (hostName: nodeCfg: nodeCfg.config.security.acme.certs != { })
       );
 
diff --git a/config/nixos/modules/websites/prometheus.infra.zaphyra.eu.nix b/config/nixos/modules/websites/prometheus.infra.zaphyra.eu.nix
@@ -63,7 +63,7 @@ in
                     && host.config.networking.hostName != ""
                     && host.config.networking.domain != ""
                   ) host.config.networking.fqdn
-                ) inputs.self.nixosConfigurations
+                ) inputs.self.zaphyraHosts
               );
             }
           ];

@@ -83,7 +83,7 @@ in
                     && host.config.networking.hostName != ""
                     && host.config.networking.domain != ""
                   ) host.config.networking.fqdn
-                ) inputs.self.nixosConfigurations
+                ) inputs.self.zaphyraHosts
               );
             }
           ];
diff --git a/flake.nix b/flake.nix
@@ -117,6 +117,17 @@
         }
       ) inputs.self.hosts;
 
+      zaphyraHosts = (
+        inputs.self.nixosConfigurations
+        |> nixpkgsLib.filterAttrs (
+          name: value:
+          if (builtins.isNull value.config.networking.domain) then
+            false
+          else
+            nixpkgsLib.hasSuffix "zaphyra.eu" value.config.networking.domain
+        )
+      );
+
       homeConfigurations = builtins.listToAttrs (
         builtins.map (
           name: