44 lines
1.1 KiB
Nix
44 lines
1.1 KiB
Nix
{pkgs, ...}: {
|
|
services = let
|
|
domain = "git.federated.nexus";
|
|
socket = "/run/forgejo/socket";
|
|
in {
|
|
forgejo = {
|
|
enable = true;
|
|
package = pkgs.forgejo; # Not LTS
|
|
settings = {
|
|
service.DISABLE_REGISTRATION = true;
|
|
repository.GO_GET_CLONE_URL_PROTOCOL = "ssh";
|
|
actions.DEFAULT_ACTIONS_URL = "github";
|
|
|
|
server = {
|
|
DOMAIN = domain;
|
|
ROOT_URL = "https://${domain}";
|
|
HTTP_ADDR = socket;
|
|
PROTOCOL = "http+unix";
|
|
|
|
START_SSH_SERVER = true;
|
|
SSH_LISTEN_PORT = 2222;
|
|
BUILTIN_SSH_SERVER_USER = "git";
|
|
|
|
LANDING_PAGE = "explore";
|
|
};
|
|
|
|
federation.enable = true;
|
|
};
|
|
};
|
|
|
|
# gitea-actions-runner = {
|
|
# package = pkgs.forgejo-actions-runner;
|
|
# instances.default = {
|
|
# enable = true;
|
|
# name = "monolith";
|
|
# url = domain;
|
|
# tokenFile = config.age.secrets."runnerToken.age".path;
|
|
# labels = ["native:host"];
|
|
# };
|
|
# };
|
|
|
|
caddy.virtualHosts."${domain}".extraConfig = "reverse_proxy unix/${socket}";
|
|
};
|
|
}
|