summary refs log tree commit diff
path: root/services/irc/gamja.nix
diff options
context:
space:
mode:
authorMel <einebeere@gmail.com>2024-11-20 05:10:11 +0100
committerMel <einebeere@gmail.com>2024-11-20 05:10:41 +0100
commit459c61b01f379c08dfe54b09f9ecf15489195373 (patch)
tree1678c7a9f0c7890525618f7c08c677f226bb694b /services/irc/gamja.nix
parent658cbe8f560cfc5f6f89440cdcc16c2015057b88 (diff)
downloadnetwork-459c61b01f379c08dfe54b09f9ecf15489195373.tar.zst
network-459c61b01f379c08dfe54b09f9ecf15489195373.zip
Add favicon to gamja site
Signed-off-by: Mel <einebeere@gmail.com>
Diffstat (limited to 'services/irc/gamja.nix')
-rw-r--r--services/irc/gamja.nix45
1 files changed, 45 insertions, 0 deletions
diff --git a/services/irc/gamja.nix b/services/irc/gamja.nix
new file mode 100644
index 0000000..779b5b2
--- /dev/null
+++ b/services/irc/gamja.nix
@@ -0,0 +1,45 @@
+{ me, pkgs, ... }:
+
+let
+  socketPort = "3030";
+
+  gamja =
+    let
+      gamjaConfig = {
+        server = {
+          url = "wss://${me.tailscale.domain}/gamja/socket";
+          auth = "mandatory";
+          nick = "mel";
+        };
+      };
+
+      faviconHtml = ''<link rel="shortcut icon" href="/gamja/favicon.png">'';
+      gamja-override = pkgs.gamja.overrideAttrs {
+        pname = "gamja-override";
+
+        fixupPhase = ''
+          sed -i 's:</head>:${faviconHtml}</head>:g' $out/index.html
+          cp ${../../assets/favicon.png} $out/favicon.png
+        '';
+      };
+    in
+    gamja-override.override { inherit gamjaConfig; };
+
+in
+{
+  # gamja is tailnet interal
+  services.nginx.virtualHosts.renard.locations = {
+    "/gamja" = {
+      return = "301 $scheme://$host$request_uri/";
+    };
+    "/gamja/" = {
+      alias = "${gamja}/";
+    };
+
+    "/gamja/socket" = {
+      proxyPass = "http://${me.tailscale.ip}:${socketPort}";
+      proxyWebsockets = true;
+      recommendedProxySettings = true;
+    };
+  };
+}