38 lines
937 B
Nix
38 lines
937 B
Nix
{ config, pkgs, ... }:
|
|
let domain = "git.leaf.ninja";
|
|
in {
|
|
services.forgejo = {
|
|
enable = true;
|
|
database.type = "postgres";
|
|
lfs.enable = true;
|
|
settings = {
|
|
server = {
|
|
DOMAIN = domain;
|
|
ROOT_URL = "https://${domain}/";
|
|
HTTP_PORT = 3000;
|
|
};
|
|
service.DISABLE_REGISTRATION = true;
|
|
mailer = {
|
|
ENABLED = true;
|
|
SMTP_ADDR = "smtp.migadu.com";
|
|
FROM = "forgejo@leaf.ninja";
|
|
USER = "forgejo@$leaf.ninja";
|
|
};
|
|
webhook.ALLOWED_HOST_LIST =
|
|
pkgs.lib.concatStringsSep "," [ "localhost" "::1" ];
|
|
};
|
|
secrets = {
|
|
mailer.PASSWD = config.age.secrets.forgejo-mailer-password.path;
|
|
};
|
|
};
|
|
|
|
services.caddy.virtualHosts.${domain}.extraConfig = ''
|
|
reverse_proxy localhost:3000
|
|
'';
|
|
|
|
age.secrets.forgejo-mailer-password = {
|
|
file = ./secrets/forgejo-mailer-password.age;
|
|
mode = "400";
|
|
owner = "forgejo";
|
|
};
|
|
}
|