Files
nixos-config/modules/nixos/gitea.nix
2025-11-29 20:29:16 +01:00

47 lines
1.1 KiB
Nix

{ config, pkgs, ... }:
{
services.gitea = {
enable = true;
appName = "Git Server"; # A name for your Gitea instance
user = "git";
group = "git";
settings = {
server = {
PROTOCOL = "http"; # Use http for now, caddy will handle https
DOMAIN = "git.jelles.net";
ROOT_URL = "https://git.jelles.net/";
HTTP_ADDR = "127.0.0.1";
HTTP_PORT = 3001;
START_SSH_SERVER = false;
DISABLE_SSH = false; # Disable the built-in SSH server, use HTTPS for cloning
SSH_PORT = 22;
};
service = {
DISABLE_REGISTRATION = true; # Consider enabling for public instances
};
};
};
services.caddy.virtualHosts."git.jelles.net".extraConfig = "reverse_proxy :3001";
users.users.git = {
isSystemUser = true;
description = "Gitea Service User";
home = config.services.gitea.stateDir;
createHome = true;
homeMode = "750";
useDefaultShell = true;
group = "git";
};
users.groups.git = { };
systemd.tmpfiles.rules = [
"Z /var/lib/gitea 0750 git git - -"
];
}