{ me, pkgs, ... }: let socketPort = "3030"; gamja = let gamjaConfig = { server = { url = "wss://${me.tailscale.domain}/gamja/socket"; auth = "mandatory"; nick = "mel"; }; }; faviconHtml = ''''; gamja-override = pkgs.gamja.overrideAttrs { pname = "gamja-override"; fixupPhase = '' sed -i 's::${faviconHtml}: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; }; }; }