summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandromeda <andromeda@lenovo>2026-01-10 15:23:02 +0100
committerandromeda <andromeda@lenovo>2026-01-10 15:23:02 +0100
commit90dd0582b0e7a2d8b971472073aaa11b0b640271 (patch)
treef63c588dcccac32c608ec384fd0e0f27d2517f47
parent0781c8428d4d723a7049fba4c03eb04e06216a21 (diff)
forgejo
-rw-r--r--machines.nix5
-rw-r--r--modules/nixos/forgejo.nix27
2 files changed, 32 insertions, 0 deletions
diff --git a/machines.nix b/machines.nix
index 61cc07c..21408be 100644
--- a/machines.nix
+++ b/machines.nix
@@ -71,6 +71,11 @@
# webmail.domain
./modules/nixos/roundcube.nix
+ # forgejo
+ # git.domain
+ ./modules/nixos/forgejo.nix
+
+ # BROKEN
# zulip chat client
# chat.domain
# zulip chat server
diff --git a/modules/nixos/forgejo.nix b/modules/nixos/forgejo.nix
new file mode 100644
index 0000000..ba3cd29
--- /dev/null
+++ b/modules/nixos/forgejo.nix
@@ -0,0 +1,27 @@
+{config, ...}: {
+ services.nginx = {
+ virtualHosts.${config.services.forgejo.settings.server.DOMAIN} = {
+ forceSSL = true;
+ enableACME = true;
+ extraConfig = ''
+ client_max_body_size 512M
+ '';
+ locations."/".proxyPass = "https://localhost:${builtins.toString config.services.forgejo.settings.server.HTTP_PORT}";
+ };
+ };
+ services.forgejo = {
+ enable = true;
+ database.type = "postgres";
+ lfs.enable = true;
+ settings = {
+ server = rec {
+ DOMAIN = "git.galaxious.de";
+ ROOT_URL = "https://${DOMAIN}";
+ HTTP_PORT = 4043;
+ SSH_PORT = 4022;
+ };
+ service.DISABLE_REGISTRATION = false;
+ };
+ };
+ services.openssh.ports = [config.services.forgejo.settings.server.HTTP_PORT];
+}