47 lines
1.2 KiB
Nix
47 lines
1.2 KiB
Nix
{
|
|
fructose.modules = [
|
|
(
|
|
{ config, pkgs, ... }:
|
|
{
|
|
services.forgejo = {
|
|
enable = true;
|
|
package = pkgs.forgejo;
|
|
stateDir = "/var/services/forgejo";
|
|
useWizard = false;
|
|
|
|
database = {
|
|
createDatabase = false;
|
|
type = "postgres";
|
|
name = "forgejodb";
|
|
host = "127.0.0.1";
|
|
port = 5432;
|
|
user = "forgejo";
|
|
passwordFile = "${config.sops.secrets.forgejo_db_pass.path}";
|
|
};
|
|
|
|
dump = {
|
|
enable = true;
|
|
interval = "02:50";
|
|
type = "tar.gz";
|
|
};
|
|
|
|
settings = {
|
|
# this directly drops stuff in the forgejo app.ini
|
|
server = {
|
|
DOMAIN = "git.collective-conciousness.monster";
|
|
PROTOCOL = "http";
|
|
HTTP_PORT = 3000;
|
|
SSH_PORT = 222;
|
|
ROOT_URL = "https://${config.services.forgejo.settings.server.DOMAIN}:443";
|
|
ENABLE_GZIP = true;
|
|
};
|
|
service = {
|
|
DISABLE_REGISTRATION = true;
|
|
DEFAULT_KEEP_EMAIL_PRIVATE = true;
|
|
};
|
|
};
|
|
};
|
|
}
|
|
)
|
|
];
|
|
}
|