53 lines
1.2 KiB
Nix
53 lines
1.2 KiB
Nix
{
|
|
flake.modules.nixos.forgejo =
|
|
{ config, inputs, ... }:
|
|
let
|
|
domainName = "christophhollizeck.dev";
|
|
forgejoPort = 3000;
|
|
sopsFile = ../../secrets/secrets-loptland.yaml;
|
|
in
|
|
{
|
|
sops = {
|
|
secrets = {
|
|
"forgejo/db/password" = {
|
|
inherit sopsFile;
|
|
};
|
|
"forgejo/mail/password" = {
|
|
inherit sopsFile;
|
|
};
|
|
};
|
|
};
|
|
|
|
services.forgejo = {
|
|
enable = true;
|
|
database.type = "postgres";
|
|
lfs.enable = true;
|
|
database = {
|
|
passwordFile = config.sops.secrets."forgejo/db/password".path;
|
|
};
|
|
|
|
settings = {
|
|
server = {
|
|
DOMAIN = "git.${domainName}";
|
|
ROOT_URL = "https://git.${domainName}";
|
|
HTTP_PORT = forgejoPort;
|
|
};
|
|
|
|
mailer = {
|
|
ENABLED = true;
|
|
PROTOCOL = "smtps";
|
|
FROM = "no-reply@${domainName}";
|
|
SMTP_ADDR = "mail.${domainName}";
|
|
USER = "forgejo@${domainName}";
|
|
};
|
|
|
|
service.DISABLE_REGISTRATION = true;
|
|
};
|
|
|
|
secrets = {
|
|
mailer.PASSWD = config.sops.secrets."forgejo/mail/password".path;
|
|
};
|
|
};
|
|
|
|
};
|
|
}
|