From 9f8378df7560af987bbbdcce311d75eaf12d4795 Mon Sep 17 00:00:00 2001 From: jasmine Date: Mon, 3 Jun 2024 21:05:04 +0800 Subject: [PATCH] Setup Forgejo service + Migrate git configurations --- home-manager/sajenim/features/cli/git.nix | 10 +++++----- nixos/viridian/services/default.nix | 1 + nixos/viridian/services/forgejo.nix | 20 ++++++++++++++++++++ nixos/viridian/services/traefik/routers.nix | 11 +++++++++++ nixos/viridian/services/traefik/services.nix | 3 +++ 5 files changed, 40 insertions(+), 5 deletions(-) create mode 100644 nixos/viridian/services/forgejo.nix diff --git a/home-manager/sajenim/features/cli/git.nix b/home-manager/sajenim/features/cli/git.nix index af49f50..863a500 100644 --- a/home-manager/sajenim/features/cli/git.nix +++ b/home-manager/sajenim/features/cli/git.nix @@ -7,13 +7,13 @@ programs.git = { enable = true; - userName = "sajenim"; + userName = "jasmine"; userEmail = "its.jassy@pm.me"; extraConfig = { - init.defaultBranch = "main"; - core.sshCommand = "ssh -i ~/.ssh/github_sk -F /dev/null"; - gpg.format = "ssh"; - user.signingkey = "~/.ssh/signing_sk.pub"; + init.defaultBranch = "master"; + core.sshCommand = "ssh -i ~/.ssh/forgejo_sk -F /dev/null"; + commit.gpgsign = "true"; + user.signingkey = "8563E358D4E8040E"; }; }; } diff --git a/nixos/viridian/services/default.nix b/nixos/viridian/services/default.nix index 9ea1128..fe87bce 100644 --- a/nixos/viridian/services/default.nix +++ b/nixos/viridian/services/default.nix @@ -5,6 +5,7 @@ ./traefik ./minecraft ./borgbackup.nix + ./forgejo.nix ./mpd.nix ]; } diff --git a/nixos/viridian/services/forgejo.nix b/nixos/viridian/services/forgejo.nix new file mode 100644 index 0000000..74a5b3f --- /dev/null +++ b/nixos/viridian/services/forgejo.nix @@ -0,0 +1,20 @@ +{ ... }: + +{ + services.forgejo = { + enable = true; + stateDir = "/srv/services/forgejo"; + settings = { + server = { + DOMAIN = "git.sajenim.dev"; + ROOT_URL = "https://git.sajenim.dev"; + HTTP_PORT = 3131; + LANDING_PAGE = "/jasmine"; + }; + service = { + DISABLE_REGISTRATION = true; + }; + log.LEVEL = "Info"; + }; + }; +} diff --git a/nixos/viridian/services/traefik/routers.nix b/nixos/viridian/services/traefik/routers.nix index 460ca23..c6553c1 100644 --- a/nixos/viridian/services/traefik/routers.nix +++ b/nixos/viridian/services/traefik/routers.nix @@ -2,6 +2,17 @@ { services.traefik.dynamicConfigOptions.http.routers = { + forgejo = { + rule = "Host(`git.sajenim.dev`)"; + entryPoints = [ + "websecure" + ]; + middlewares = [ + "geoblock" + ]; + service = "forgejo"; + }; + homarr = { rule = "Host(`kanto.dev`)"; entryPoints = [ diff --git a/nixos/viridian/services/traefik/services.nix b/nixos/viridian/services/traefik/services.nix index 43b9a29..d9a6dec 100644 --- a/nixos/viridian/services/traefik/services.nix +++ b/nixos/viridian/services/traefik/services.nix @@ -2,6 +2,9 @@ { services.traefik.dynamicConfigOptions.http.services = { + forgejo.loadBalancer.servers = [ + { url = "http://192.168.1.102:3131"; } + ]; homarr.loadBalancer.servers = [ { url = "http://192.168.1.102:7575"; } ];