{ config, ... }: let domain = "tickets.${config.networking.domain}"; in { services.zammad = { enable = true; database = { createLocally = true; type = "PostgreSQL"; }; port = 8085; secretKeyBaseFile = config.sops.secrets."zammad_secret".path; }; # disably spammy logs systemd.services.zammad-web.preStart = '' sed -i -e "s|debug|warn|" ./config/environments/production.rb ''; services.nginx.virtualHosts.${domain} = { locations."/" = { proxyPass = "http://localhost:${toString config.services.zammad.port}"; }; locations."/ws" = { proxyPass = "http://localhost:${toString config.services.zammad.websocketPort}"; proxyWebsockets = true; }; }; sops.secrets."zammad_secret".owner = "zammad"; }