server/git.nix
2024-05-14 19:06:16 +02:00

50 lines
1 KiB
Nix

{ config, pkgs, lib, ... }:
let
domain = "git.kamoshi.org";
user = "git";
state = "/var/lib/forgejo";
in
{
users = {
users.${user} = {
description = "Forgejo Service";
home = state;
group = user;
useDefaultShell = true;
isSystemUser = true;
};
groups.${user} = {};
};
services = {
forgejo = {
enable = true;
user = user;
group = user;
stateDir = state;
# https://forgejo.org/docs/latest/admin/config-cheat-sheet/
settings = {
server = {
HTTP_PORT = 3200;
HTTP_ADDR = "127.0.0.1";
DOMAIN = domain;
ROOT_URL = "https://${domain}/";
LANDING_PAGE = "explore";
};
service = {
DISABLE_REGISTRATION = lib.mkForce true;
};
};
};
nginx.virtualHosts.${domain} = {
enableACME = true;
forceSSL = true;
locations."/" = {
proxyPass = "http://localhost:3200/";
};
};
};
}