{ config, lib, ... }: { specialisation.forgejoEnableRegistration.configuration.services.forgejo.settings.service.DISABLE_REGISTRATION = false; services.forgejo = { enable = true; settings = { service = { DISABLE_REGISTRATION = lib.mkDefault true; }; server = { ROOT_URL = "http://git.everest.sable-pancake.ts.net"; }; }; }; # Add a cname for forgejo services.dnsmasq.settings.cname = [ "git.everest.sable-pancake.ts.net,everest" ]; # Set up traefik as the reverse proxy for Forgejo services.traefik = { dynamicConfigOptions = { http = { routers = { forgejo-subpath = { rule = "Host(`git.everest.sable-pancake.ts.net`)"; service = "forgejo"; }; }; services.forgejo.loadBalancer.servers = [ { url = "http://localhost:${toString config.services.forgejo.settings.server.HTTP_PORT}"; } ]; }; }; }; }