gitea: migrate to forgejo

This commit is contained in:
Tim Schubert 2024-06-04 20:27:02 +02:00
parent 431ad5ad9e
commit eb94ce1313
Signed by: dadada
SSH key fingerprint: SHA256:bFAjFH3hR8zRBaJjzQDjc3o4jqoq5EZ87l+KXEjxIz0
4 changed files with 34 additions and 33 deletions

View file

@ -1,22 +1,8 @@
{
admin = import ./admin.nix;
backup = import ./backup.nix;
borgServer = import ./borg-server.nix;
ddns = import ./ddns.nix;
element = import ./element.nix;
fileShare = import ./fileShare.nix;
gitea = import ./gitea.nix;
headphones = import ./headphones.nix;
homepage = import ./homepage.nix;
miniflux = import ./miniflux.nix;
inputs = import ./inputs.nix;
nixpkgs = import ./nixpkgs.nix;
packages = import ./packages.nix;
secrets = import ./secrets.nix;
share = import ./share.nix;
steam = import ./steam.nix;
sway = import ./sway.nix;
vpnServer = import ./vpnServer.nix;
weechat = import ./weechat.nix;
yubikey = import ./yubikey.nix;
}
{ lib, ... }:
with lib; let
modules' = dir: filterAttrs (name: type: (name != "default.nix" && name != "profiles" && ((hasSuffix ".nix" name) || (type == "directory"))))
(builtins.readDir dir);
modules = dir: mapAttrs' (name: _: nameValuePair (removeSuffix ".nix" name) (import (dir + "/${name}")))
(modules' dir);
in
(modules ./.)

View file

@ -4,21 +4,27 @@
, ...
}:
let
cfg = config.dadada.gitea;
cfg = config.dadada.forgejo;
in
{
options.dadada.gitea = {
enable = lib.mkEnableOption "Enable gitea";
options.dadada.forgejo = {
enable = lib.mkEnableOption "Enable forgejo";
};
config = lib.mkIf cfg.enable {
services.gitea = {
services.forgejo = {
enable = true;
appName = "dadada Gitea";
user = "gitea";
group = "gitea";
stateDir = "/var/lib/gitea";
database = {
type = "postgres";
name = "gitea";
user = "gitea";
};
settings = {
DEFAULT.APP_NAME = "dadada forgejo";
service = {
DISABLE_REGISTRATION = true;
};
@ -50,15 +56,15 @@ in
cache = {
ENABLE = true;
ADAPTER = "redis";
HOST = "network=unix,addr=${config.services.redis.servers.gitea.unixSocket},db=0,pool_size=100,idle_timeout=180";
HOST = "network=unix,addr=${config.services.redis.servers.forgejo.unixSocket},db=0,pool_size=100,idle_timeout=180";
};
};
};
services.redis = {
servers.gitea = {
servers.forgejo = {
enable = true;
user = config.services.gitea.user;
user = config.services.forgejo.user;
};
vmOverCommit = true;
};
@ -68,8 +74,17 @@ in
forceSSL = true;
locations."/".extraConfig = ''
proxy_pass http://unix:/run/gitea/gitea.sock:/;
proxy_pass http://unix:/run/forgejo/forgejo.sock:/;
'';
};
users.users.gitea = {
home = "/var/lib/gitea";
useDefaultShell = true;
group = "gitea";
isSystemUser = true;
};
users.groups.gitea = { };
};
}

View file

@ -40,7 +40,7 @@ in
};
dadada.element.enable = true;
dadada.gitea.enable = true;
dadada.forgejo.enable = true;
dadada.miniflux.enable = true;
dadada.weechat.enable = true;
dadada.homepage.enable = true;

View file

@ -40,7 +40,7 @@
nixosConfigurations = import ./nixos/configurations.nix inputs;
nixosModules = import ./nixos/modules;
nixosModules = import ./nixos/modules { lib = nixpkgs.lib; };
overlays = import ./overlays.nix;