Commit b8d87aa

HPCesia <me@hpcesia.com>
2025-10-03 17:42:04
refactor: migrate goatcounter config
1 parent d3a6ace
Changed files (4)
hosts
modules
hosts
chaser-pardofelis
services
hosts/chaser-pardofelis/caddy.nix
@@ -46,10 +46,6 @@ in {
         encode zstd gzip
         reverse_proxy ${localAddress.vaultwarden}
       '';
-      "goatcounter.hpcesia.com".extraConfig = ''
-        encode zstd gzip
-        reverse_proxy ${localAddress.goatcounter}
-      '';
       "grafana.hpcesia.com".extraConfig = ''
         encode zstd gzip
         reverse_proxy ${localAddress.grafana}
hosts/chaser-pardofelis/goatcounter.nix
@@ -1,9 +0,0 @@
-{...}: {
-  services.goatcounter = {
-    enable = true;
-    address = "127.0.0.1";
-    port = 4627;
-    proxy = true;
-    extraArgs = [];
-  };
-}
modules/hosts/chaser-pardofelis/default.nix
@@ -14,6 +14,7 @@
         (n: config.flake.modules.nixos."${config.flake.meta.service.prefix}${n}")
         [
           "caddy"
+          "goatcounter"
           "gotosocial"
           "podman"
         ]
modules/services/goatcounter.nix
@@ -0,0 +1,20 @@
+{lib, ...}: {
+  flake.modules.nixos."services/goatcounter" = {config, ...}: {
+    services.goatcounter = {
+      enable = true;
+      address = "127.0.0.1";
+      port = 4627;
+      proxy = true;
+      extraArgs = [];
+    };
+
+    services.caddy.virtualHosts."goatcounter.hpcesia.com".extraConfig =
+      lib.mkIf config.services.caddy.enable
+      (let
+        localAddress = "http://localhost:${builtins.toString config.services.goatcounter.port}";
+      in ''
+        encode zstd gzip
+        reverse_proxy ${localAddress}
+      '');
+  };
+}