From 9cdcc9f663cbf4b5264d4845809acfffa89c2e84 Mon Sep 17 00:00:00 2001 From: Ivan Reshetnikov Date: Tue, 12 Mar 2024 21:43:14 +0500 Subject: [PATCH 1/3] ops: create forgejo database --- nixos/databases/postgres.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/nixos/databases/postgres.nix b/nixos/databases/postgres.nix index 47fbe98..fa5477b 100644 --- a/nixos/databases/postgres.nix +++ b/nixos/databases/postgres.nix @@ -14,6 +14,7 @@ "prosody" "grafana" "postgres-exporter" + "forgejo" ]; ensureUsers = [ { @@ -66,6 +67,11 @@ ensureDBOwnership = true; ensureClauses.login = true; } + { + name = "forgejo"; + ensureDBOwnership = true; + ensureClauses.login = true; + } ]; identMap = '' # ArbitraryMapName systemUser DBUser From 865a7947e157812cc04adb805d9ef1a268aa887a Mon Sep 17 00:00:00 2001 From: Ivan Reshetnikov Date: Tue, 12 Mar 2024 22:19:52 +0500 Subject: [PATCH 2/3] feat: add forgejo --- nixos/configuration.nix | 1 + nixos/programs/forgejo.nix | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 nixos/programs/forgejo.nix diff --git a/nixos/configuration.nix b/nixos/configuration.nix index 85925b1..1e4ab54 100644 --- a/nixos/configuration.nix +++ b/nixos/configuration.nix @@ -28,6 +28,7 @@ ./programs/deluge.nix ./programs/prosody.nix ./programs/yggdrasil.nix + ./programs/forgejo.nix ./monitoring/grafana.nix ./monitoring/prometheus.nix diff --git a/nixos/programs/forgejo.nix b/nixos/programs/forgejo.nix new file mode 100644 index 0000000..3fe21b2 --- /dev/null +++ b/nixos/programs/forgejo.nix @@ -0,0 +1,34 @@ +{ config, ... }: +{ + services.forgejo = { + enable = true; + settings = { + session.COOKIE_SECURE = true; + server = { + ROOT_URL = "https://git.comfycamp.space"; + PROTOCOL = "http+unix"; + DOMAIN = "git.comfycamp.space"; + }; + log.LEVEL = "Warn"; + mailer = { + ENABLED = true; + PROTOCOL = "smtps"; + SMTP_ADDR = "comfycamp.space"; + SMTP_PORT = 465; + USER = "git@comfycamp.space"; + }; + }; + mailerPasswordFile = "/var/lib/secrets/forgejo/mail.txt"; + database = { + type = "postgres"; + socket = "/run/postgresql"; + }; + }; + services.nginx.virtualHosts."git.comfycamp.space" = { + useACMEHost = "comfycamp.space"; + forceSSL = true; + locations."/" = { + proxyPass = "http://unix:${config.services.forgejo.settings.server.HTTP_ADDR}"; + }; + }; +} From b8eeb0d5274444286705faa64821038b1829da12 Mon Sep 17 00:00:00 2001 From: Ivan Reshetnikov Date: Tue, 12 Mar 2024 22:56:22 +0500 Subject: [PATCH 3/3] fix(forgejo): update email address --- nixos/programs/forgejo.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/programs/forgejo.nix b/nixos/programs/forgejo.nix index 3fe21b2..8094b24 100644 --- a/nixos/programs/forgejo.nix +++ b/nixos/programs/forgejo.nix @@ -15,7 +15,7 @@ PROTOCOL = "smtps"; SMTP_ADDR = "comfycamp.space"; SMTP_PORT = 465; - USER = "git@comfycamp.space"; + USER = "forgejo@comfycamp.space"; }; }; mailerPasswordFile = "/var/lib/secrets/forgejo/mail.txt";