nix-config/modules/git/default.nix
2025-03-21 17:53:36 +01:00

51 lines
1.1 KiB
Nix

{
lib,
config,
pkgs,
...
}: let
inherit (lib) mkIf;
cfg = config.conf.git;
in
mkIf cfg.enable {
services = {
nginx = {
virtualHosts.${cfg.domain.full} = {
serverName = cfg.domain.full;
useACMEHost = cfg.domain.base;
forceSSL = true;
locations = {
"/" = {
proxyPass = "http://unix:/run/forgejo/socket";
};
};
};
};
forgejo = {
enable = true;
package = pkgs.forgejo;
database = {
type = "postgres";
};
user = "forgejo";
lfs.enable = true;
settings = {
server = {
DOMAIN = cfg.domain.full;
ROOT_URL = "https://${cfg.domain.full}";
PROTOCOL = "http+unix";
HTTP_ADDR = "/run/forgejo/socket";
};
service.DISABLE_REGISTRATION = true;
actions = {
ENABLED = true;
DEFAULT_ACTIONS_URL = "github";
};
repository = {
ENABLE_PUSH_CREATE_USER = true;
};
};
};
};
}