1
Fork 0
satellite/hosts/nixos/lapetus/services/forgejo.nix
2024-05-11 01:18:47 +02:00

55 lines
1.3 KiB
Nix

{ lib, config, ... }:
let
port = 8419;
host = "git.moonythm.dev";
cfg = config.services.forgejo;
in
{
sops.secrets.forgejo_mail_password.sopsFile = ../secrets.yaml;
satellite.cloudflared.targets.${host}.port = port;
systemd.tmpfiles.rules = [ "d ${cfg.stateDir} 0700 ${cfg.user} ${cfg.user} -" ];
services.forgejo = {
enable = true;
appName = "moonforge";
stateDir = "/persist/state/var/lib/forgejo";
mailerPasswordFile = config.sops.secrets.forgejo_mail_password.path;
dump = {
enable = true;
type = "tar.gz";
};
lfs.enable = true;
# See [the cheatsheet](https://docs.gitea.com/next/administration/config-cheat-sheet)
settings = {
session.COOKIE_SECURE = true;
server = {
DOMAIN = host;
HTTP_PORT = port;
ROOT_URL = "https://${host}";
LANDING_PAGE = "prescientmoon"; # Make my profile the landing page
};
cron.ENABLED = true;
# service.DISABLE_REGISTRATION = true;
mailer = {
ENABLED = true;
SMTP_PORT = 465;
SMTP_ADDR = "smtp.migadu.com";
USER = "git";
};
repository = {
DISABLE_STARS = true;
DISABLED_REPO_UNITS = "";
DEFAULT_REPO_UNITS = lib.strings.concatStringsSep "," [
"repo.code"
];
};
};
};
}