feat(server): add forgejo module
This commit is contained in:
parent
a7948ceda2
commit
e994df5675
2 changed files with 32 additions and 1 deletions
30
modules/nixos/server/web-apps/forgejo/default.nix
Normal file
30
modules/nixos/server/web-apps/forgejo/default.nix
Normal file
|
@ -0,0 +1,30 @@
|
|||
{ config, lib, ... }:
|
||||
let
|
||||
inherit (lib) mkEnableOption mkIf singleton;
|
||||
inherit (lib.pantheon) mkRootDomain mkStrOption mkPortOption;
|
||||
cfg = config.server.web-apps.forgejo;
|
||||
upstreamCfg = config.services.forgejo;
|
||||
in
|
||||
{
|
||||
options.server.web-apps.forgejo = {
|
||||
enable = mkEnableOption "";
|
||||
url = mkStrOption;
|
||||
port = mkPortOption 3000;
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
persistDirs = singleton {
|
||||
directory = upstreamCfg.stateDir;
|
||||
inherit (upstreamCfg) user group;
|
||||
};
|
||||
server.networking.ddns.domains = singleton (mkRootDomain cfg.url);
|
||||
server.web-servers.nginx.proxies = mkIf config.server.web-servers.nginx.enable (singleton {
|
||||
source = cfg.url;
|
||||
target = "http://${config.system.hostname}:${builtins.toString cfg.port}";
|
||||
});
|
||||
services.forgejo = {
|
||||
enable = true;
|
||||
settings.server.HTTP_PORT = cfg.port;
|
||||
};
|
||||
};
|
||||
}
|
|
@ -23,7 +23,6 @@
|
|||
networking.ddns = {
|
||||
enable = true;
|
||||
domains = [
|
||||
"rrv.sh"
|
||||
"aenyrathia.wiki"
|
||||
"slayment.com"
|
||||
];
|
||||
|
@ -38,6 +37,8 @@
|
|||
librechat.url = "chat.bwfiq.com";
|
||||
mattermost.enable = true;
|
||||
mattermost.url = "mm.bwfiq.com";
|
||||
forgejo.enable = true;
|
||||
forgejo.url = "git.rrv.sh";
|
||||
};
|
||||
web-servers = {
|
||||
enableSSL = true;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue