nixos/spec/eientei/forgejo.nix
2025-01-13 11:52:09 +08:00

41 lines
889 B
Nix

{
pkgs,
config,
...
}:
let
host = "src.514fpv.io";
in
{
services.forgejo = {
enable = true;
lfs.enable = true;
stateDir = "/nix/persist/service/forgejo";
database.type = "postgres";
database.createDatabase = true;
settings = {
server = {
SSH_PORT = 8086;
COOKIE_SECURE = true;
LANDING_PAGE = "explore";
DOMAIN = host;
PROTOCOL = "http+unix";
ROOT_URL = "https://${host}:2096/";
};
DEFAULT.APP_NAME = "Forgejo";
service.DISABLE_REGISTRATION = true;
};
};
users.users.forgejo.uid = 1023;
users.groups.forgejo.gid = 1023;
services.nginx.virtualHosts.${host} = {
useACMEHost = ".514fpv.io";
addSSL = true;
locations."/".proxyPass = "http://unix:/run/forgejo/forgejo.sock";
};
global.fs.zfs.mountpoints."/nix/persist/service/forgejo" = "service/forgejo";
}