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 = {
|
networking.ddns = {
|
||||||
enable = true;
|
enable = true;
|
||||||
domains = [
|
domains = [
|
||||||
"rrv.sh"
|
|
||||||
"aenyrathia.wiki"
|
"aenyrathia.wiki"
|
||||||
"slayment.com"
|
"slayment.com"
|
||||||
];
|
];
|
||||||
|
@ -38,6 +37,8 @@
|
||||||
librechat.url = "chat.bwfiq.com";
|
librechat.url = "chat.bwfiq.com";
|
||||||
mattermost.enable = true;
|
mattermost.enable = true;
|
||||||
mattermost.url = "mm.bwfiq.com";
|
mattermost.url = "mm.bwfiq.com";
|
||||||
|
forgejo.enable = true;
|
||||||
|
forgejo.url = "git.rrv.sh";
|
||||||
};
|
};
|
||||||
web-servers = {
|
web-servers = {
|
||||||
enableSSL = true;
|
enableSSL = true;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue