mirror of
https://github.com/Jokiller230/puzzlevision.git
synced 2025-01-19 02:13:06 +01:00
56 lines
1.1 KiB
Nix
56 lines
1.1 KiB
Nix
{
|
|
lib,
|
|
config,
|
|
namespace,
|
|
...
|
|
}:
|
|
let
|
|
inherit (lib) mkEnableOption mkIf;
|
|
cfg = config.${namespace}.services.forgejo;
|
|
in
|
|
{
|
|
options.${namespace}.services.forgejo = {
|
|
enable = mkEnableOption "Whether to enable the forgejo git service.";
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
services.forgejo = {
|
|
enable = true;
|
|
|
|
database = {
|
|
type = "postgres";
|
|
};
|
|
lfs.enable = true;
|
|
settings = {
|
|
server = {
|
|
DOMAIN = "git.thevoid.cafe";
|
|
ROOT_URL = "https://git.thevoid.cafe/";
|
|
HTTP_PORT = "3030";
|
|
};
|
|
service.DISABLE_REGISTRATION = true;
|
|
actions = {
|
|
ENABLED = true;
|
|
DEFAULT_ACTIONS_URL = "github";
|
|
};
|
|
};
|
|
};
|
|
|
|
# TODO: finish this configuration
|
|
|
|
services.traefik = {
|
|
dynamicConfigOptions = {
|
|
http = {
|
|
routers.forgejo = {
|
|
entryPoints = ["websecure"];
|
|
rule = "Host(`git.thevoid.cafe`)";
|
|
service = "forgejo";
|
|
};
|
|
|
|
services.forgejo.loadbalancer.server = {
|
|
url = "http://localhost:3030";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|