{ config, lib, pkgs, ...}: { config.services.pounce = { enable = true; networks = { "libera.irc.tempest.dev" = { fullChain = "/var/lib/acme/wildcard-irc.tempest.dev/fullchain.pem"; privKey = "/var/lib/acme/wildcard-irc.tempest.dev/key.pem"; config = { host = "irc.libera.chat"; nick = "tempest"; user = "ashe"; real = "Ashelyn [they/them]"; }; }; "tilde.irc.tempest.dev" = { fullChain = "/var/lib/acme/wildcard-irc.tempest.dev/fullchain.pem"; privKey = "/var/lib/acme/wildcard-irc.tempest.dev/key.pem"; config = { host = "irc.tilde.chat"; nick = "ashe"; user = "ashe"; real = "Ashelyn [they/them]"; }; }; }; }; config.services.thelounge = { enable = true; port = 9000; plugins = [ pkgs.theLoungePlugins.themes.solarized pkgs.theLoungePlugins.themes.solarized-fork-monospace pkgs.theLoungePlugins.themes.midnight pkgs.theLoungePlugins.themes.dracula pkgs.theLoungePlugins.themes.purplenight pkgs.theLoungePlugins.themes.new-morning pkgs.theLoungePlugins.themes.zenburn-sourcecodepro ]; extraConfig = { host = "127.0.0.1"; bind = "104.168.211.198"; reverseProxy = true; fileUpload = { enable = true; maxFileSize = 10240; # kb baseURL = "https://irc.tempest.dev/"; }; leaveMessage = "bye"; }; }; config.services.nginx.virtualHosts."irc.tempest.dev" = { locations."/" = { proxyPass = "http://localhost:9000/"; extraConfig = '' proxy_set_header Host $host; ''; proxyWebsockets = true; }; forceSSL = true; enableACME = true; }; }