diff options
| author | Collin Williams <96917990+bluedragon1221@users.noreply.github.com> | 2026-01-29 20:15:19 -0600 |
|---|---|---|
| committer | Collin Williams <96917990+bluedragon1221@users.noreply.github.com> | 2026-01-30 08:38:21 -0600 |
| commit | c9a1d2da80bca0a85e8c18f6d2db71c4d1127eda (patch) | |
| tree | 9da79e318ff0533a3708aee85a0b6a6d7f1d1036 /modules/services/nixos/forgejo.nix | |
| parent | c81952cbcb6c6f1b41c2b6e2a366891991cceaee (diff) | |
Spring Cleaning
- create new module, `system`, that consumes the `boot` module and takes
in the more system-interested services from the `services` module
- touch up left over services (which are more self-hosting interested)
- touch up yo and yoshi configs
Diffstat (limited to 'modules/services/nixos/forgejo.nix')
| -rw-r--r-- | modules/services/nixos/forgejo.nix | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/modules/services/nixos/forgejo.nix b/modules/services/nixos/forgejo.nix new file mode 100644 index 0000000..5c98633 --- /dev/null +++ b/modules/services/nixos/forgejo.nix @@ -0,0 +1,48 @@ +{ + lib, + config, + ... +}: let + cfg = config.collinux.services.forgejo; +in { + imports = [ + (import ./mkCaddyCfg.nix cfg) + ]; + + config = lib.mkIf cfg.enable { + services.forgejo = { + enable = true; + database.type = "sqlite3"; + settings = { + server = { + DOMAIN = "localhost"; + ROOT_URL = cfg.root_url; + HTTP_PORT = cfg.port; + + # ssh + START_SSH_SERVER = true; # use builtin ssh server + BUILTIN_SSH_SERVER_USER = "git"; + SSH_DOMAIN = cfg.root_url or "ganymede"; + SSH_PORT = cfg.git_ssh_port; # don't conflict with system ssh + SSH_LISTEN_HOST = cfg.bind_host; + SSH_LISTEN_PORT = cfg.git_ssh_port; + }; + service = { + DISABLE_REGISTRATION = false; + ENABLE_REVERSE_PROXY_AUTHENTICATION = true; + }; + repository = { + # disable stuff + DISABLE_MIGRATIONS = true; + DISABLE_STARS = true; + DISABLE_DOWNLOAD_SOURCE_ARCHIVES = true; + }; + }; + }; + + systemd.services."forgejo" = lib.mkIf config.collinux.services.networking.networkd.enable { + after = lib.mkAfter ["network-online.target"]; + wants = lib.mkAfter ["network-online.target"]; + }; + }; +} |
