Compare commits
10 commits
9ed9c46a41
...
1fd29c847b
Author | SHA1 | Date | |
---|---|---|---|
1fd29c847b | |||
7e920c9aed | |||
3f0820e577 | |||
6630be7451 | |||
9bab433d0c | |||
353481f3f2 | |||
61c055ae24 | |||
95f35cfdf6 | |||
9a98ad138b | |||
fb13e6c63a |
29 changed files with 170 additions and 67 deletions
|
@ -53,10 +53,12 @@ in
|
||||||
Locked = true;
|
Locked = true;
|
||||||
};
|
};
|
||||||
Homepage = {
|
Homepage = {
|
||||||
StartPage = "previous-session";
|
URL = "https://homepage.labs.adtya.xyz";
|
||||||
|
StartPage = "homepage-locked";
|
||||||
Locked = true;
|
Locked = true;
|
||||||
};
|
};
|
||||||
NetworkPrediction = false;
|
NetworkPrediction = false;
|
||||||
|
NewTabPage = false;
|
||||||
NoDefaultBookmarks = true;
|
NoDefaultBookmarks = true;
|
||||||
OfferToSaveLogins = false;
|
OfferToSaveLogins = false;
|
||||||
OverrideFirstRunPage = "";
|
OverrideFirstRunPage = "";
|
||||||
|
|
|
@ -201,6 +201,7 @@ in
|
||||||
|
|
||||||
"SUPER,l, layoutmsg,rollnext"
|
"SUPER,l, layoutmsg,rollnext"
|
||||||
"SUPER,h, layoutmsg,rollprev"
|
"SUPER,h, layoutmsg,rollprev"
|
||||||
|
"SUPER_SHIFT,z, layoutmsg,orientationcycle left right"
|
||||||
"SUPER,m, layoutmsg,focusmaster"
|
"SUPER,m, layoutmsg,focusmaster"
|
||||||
"SUPER_SHIFT,m, layoutmsg,swapwithmaster"
|
"SUPER_SHIFT,m, layoutmsg,swapwithmaster"
|
||||||
|
|
||||||
|
|
34
hosts/layne/services/apps/bazarr.nix
Normal file
34
hosts/layne/services/apps/bazarr.nix
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
{ pkgs, lib, ... }:
|
||||||
|
let
|
||||||
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
|
user = "mediaserver";
|
||||||
|
group = "mediaserver";
|
||||||
|
dataDir = "/mnt/data/bazarr";
|
||||||
|
port = 6767;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services.caddy.virtualHosts."bazarr.labs.adtya.xyz" = {
|
||||||
|
inherit logFormat;
|
||||||
|
extraConfig = ''
|
||||||
|
reverse_proxy 127.0.0.1:${toString port}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
systemd.tmpfiles.settings."10-bazarr".${dataDir}.d = {
|
||||||
|
inherit user group;
|
||||||
|
mode = "0700";
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.bazarr = {
|
||||||
|
description = "Bazarr";
|
||||||
|
after = [ "network.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
unitConfig.RequiresMountsFor = [ "/mnt/data" ];
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "simple";
|
||||||
|
User = user;
|
||||||
|
Group = group;
|
||||||
|
ExecStart = "${lib.getExe pkgs.bazarr} --port ${toString port} --config '${dataDir}'";
|
||||||
|
Restart = "on-failure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -5,7 +5,9 @@ _: {
|
||||||
./radarr.nix
|
./radarr.nix
|
||||||
./sonarr.nix
|
./sonarr.nix
|
||||||
./readarr.nix
|
./readarr.nix
|
||||||
./jackett.nix
|
./prowlarr.nix
|
||||||
|
./bazarr.nix
|
||||||
|
./lidarr.nix
|
||||||
../../../shared/prometheus-exporters.nix
|
../../../shared/prometheus-exporters.nix
|
||||||
../../../shared/promtail.nix
|
../../../shared/promtail.nix
|
||||||
];
|
];
|
||||||
|
|
|
@ -1,23 +0,0 @@
|
||||||
_:
|
|
||||||
let
|
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
services = {
|
|
||||||
caddy.virtualHosts."jackett.labs.adtya.xyz" = {
|
|
||||||
inherit logFormat;
|
|
||||||
extraConfig = ''
|
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:9117
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
jackett = {
|
|
||||||
enable = true;
|
|
||||||
user = "mediaserver";
|
|
||||||
group = "mediaserver";
|
|
||||||
dataDir = "/mnt/data/jackett";
|
|
||||||
port = 9117;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
systemd.services.radarr.unitConfig.RequiresMountsFor = [ "/mnt/data" ];
|
|
||||||
}
|
|
|
@ -1,6 +1,6 @@
|
||||||
_:
|
_:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
services = {
|
services = {
|
||||||
|
@ -9,14 +9,12 @@ in
|
||||||
"jellyfin.local.adtya.xyz" = {
|
"jellyfin.local.adtya.xyz" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:8096
|
reverse_proxy 127.0.0.1:8096
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"jellyfin.labs.adtya.xyz" = {
|
"jellyfin.labs.adtya.xyz" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:8096
|
reverse_proxy 127.0.0.1:8096
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
22
hosts/layne/services/apps/lidarr.nix
Normal file
22
hosts/layne/services/apps/lidarr.nix
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
_:
|
||||||
|
let
|
||||||
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services = {
|
||||||
|
caddy.virtualHosts."lidarr.labs.adtya.xyz" = {
|
||||||
|
inherit logFormat;
|
||||||
|
extraConfig = ''
|
||||||
|
reverse_proxy 127.0.0.1:8686
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
lidarr = {
|
||||||
|
enable = true;
|
||||||
|
dataDir = "/mnt/data/lidarr";
|
||||||
|
user = "mediaserver";
|
||||||
|
group = "mediaserver";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
systemd.services.lidarr.unitConfig.RequiresMountsFor = [ "/mnt/data" ];
|
||||||
|
}
|
||||||
|
|
33
hosts/layne/services/apps/prowlarr.nix
Normal file
33
hosts/layne/services/apps/prowlarr.nix
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
{ pkgs, lib, ... }:
|
||||||
|
let
|
||||||
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
|
user = "mediaserver";
|
||||||
|
group = "mediaserver";
|
||||||
|
dataDir = "/mnt/data/prowlarr";
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services.caddy.virtualHosts."prowlarr.labs.adtya.xyz" = {
|
||||||
|
inherit logFormat;
|
||||||
|
extraConfig = ''
|
||||||
|
reverse_proxy 127.0.0.1:9696
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
systemd.tmpfiles.settings."10-prowlarr".${dataDir}.d = {
|
||||||
|
inherit user group;
|
||||||
|
mode = "0700";
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.prowlarr = {
|
||||||
|
description = "Prowlarr";
|
||||||
|
after = [ "network.target" ];
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
unitConfig.RequiresMountsFor = [ "/mnt/data" ];
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "simple";
|
||||||
|
User = user;
|
||||||
|
Group = group;
|
||||||
|
ExecStart = "${lib.getExe pkgs.prowlarr} -nobrowser -data='${dataDir}'";
|
||||||
|
Restart = "on-failure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,13 +1,12 @@
|
||||||
_:
|
_:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
services = {
|
services = {
|
||||||
caddy.virtualHosts."radarr.labs.adtya.xyz" = {
|
caddy.virtualHosts."radarr.labs.adtya.xyz" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:7878
|
reverse_proxy 127.0.0.1:7878
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,13 +1,12 @@
|
||||||
_:
|
_:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
services = {
|
services = {
|
||||||
caddy.virtualHosts."readarr.labs.adtya.xyz" = {
|
caddy.virtualHosts."readarr.labs.adtya.xyz" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:8787
|
reverse_proxy 127.0.0.1:8787
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
@ -18,5 +17,5 @@ in
|
||||||
group = "mediaserver";
|
group = "mediaserver";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
systemd.services.radarr.unitConfig.RequiresMountsFor = [ "/mnt/data" ];
|
systemd.services.readarr.unitConfig.RequiresMountsFor = [ "/mnt/data" ];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,13 +1,12 @@
|
||||||
_:
|
_:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
services = {
|
services = {
|
||||||
caddy.virtualHosts."sonarr.labs.adtya.xyz" = {
|
caddy.virtualHosts."sonarr.labs.adtya.xyz" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:8989
|
reverse_proxy 127.0.0.1:8989
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
@ -18,5 +17,5 @@ in
|
||||||
group = "mediaserver";
|
group = "mediaserver";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
systemd.services.radarr.unitConfig.RequiresMountsFor = [ "/mnt/data" ];
|
systemd.services.sanarr.unitConfig.RequiresMountsFor = [ "/mnt/data" ];
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ pkgs, ... }:
|
{ pkgs, ... }:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
services = {
|
services = {
|
||||||
|
@ -8,7 +8,6 @@ in
|
||||||
virtualHosts."transmission.labs.adtya.xyz" = {
|
virtualHosts."transmission.labs.adtya.xyz" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:9091
|
reverse_proxy 127.0.0.1:9091
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
_:
|
_:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
domainName = "blocky.rico1.labs.adtya.xyz";
|
domainName = "blocky.rico1.labs.adtya.xyz";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
@ -12,7 +12,6 @@ in
|
||||||
virtualHosts."${domainName}" = {
|
virtualHosts."${domainName}" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:8080
|
reverse_proxy 127.0.0.1:8080
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
_:
|
_:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
|
@ -16,28 +16,24 @@ in
|
||||||
"gateway.labs.adtya.xyz" = {
|
"gateway.labs.adtya.xyz" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 192.168.0.1:80
|
reverse_proxy 192.168.0.1:80
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"ap1.labs.adtya.xyz" = {
|
"ap1.labs.adtya.xyz" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 192.168.1.1:80
|
reverse_proxy 192.168.1.1:80
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"ap2.labs.adtya.xyz" = {
|
"ap2.labs.adtya.xyz" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 192.168.1.2:80
|
reverse_proxy 192.168.1.2:80
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
"switch.labs.adtya.xyz" = {
|
"switch.labs.adtya.xyz" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 192.168.1.3:80
|
reverse_proxy 192.168.1.3:80
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
_:
|
_:
|
||||||
let
|
let
|
||||||
inherit (import ../../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../../shared/caddy-helpers.nix) logFormat;
|
||||||
domainName = "loki.labs.adtya.xyz";
|
domainName = "loki.labs.adtya.xyz";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
@ -9,7 +9,6 @@ in
|
||||||
virtualHosts."${domainName}" = {
|
virtualHosts."${domainName}" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:3100
|
reverse_proxy 127.0.0.1:3100
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
_:
|
_:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
domainName = "prometheus.labs.adtya.xyz";
|
domainName = "prometheus.labs.adtya.xyz";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
@ -9,7 +9,6 @@ in
|
||||||
virtualHosts."${domainName}" = {
|
virtualHosts."${domainName}" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:9090
|
reverse_proxy 127.0.0.1:9090
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
_:
|
_:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
domainName = "alertmanager.labs.adtya.xyz";
|
domainName = "alertmanager.labs.adtya.xyz";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
@ -9,7 +9,6 @@ in
|
||||||
virtualHosts."${domainName}" = {
|
virtualHosts."${domainName}" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:9093
|
reverse_proxy 127.0.0.1:9093
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
_:
|
_:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
domainName = "blocky.rico2.labs.adtya.xyz";
|
domainName = "blocky.rico2.labs.adtya.xyz";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
@ -12,7 +12,6 @@ in
|
||||||
virtualHosts."${domainName}" = {
|
virtualHosts."${domainName}" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:8080
|
reverse_proxy 127.0.0.1:8080
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
|
@ -4,6 +4,7 @@ _: {
|
||||||
./blocky.nix
|
./blocky.nix
|
||||||
./forgejo-actions-runner.nix
|
./forgejo-actions-runner.nix
|
||||||
./grafana.nix
|
./grafana.nix
|
||||||
|
./homepage
|
||||||
../../../shared/prometheus-exporters.nix
|
../../../shared/prometheus-exporters.nix
|
||||||
../../../shared/promtail.nix
|
../../../shared/promtail.nix
|
||||||
];
|
];
|
||||||
|
|
|
@ -20,6 +20,14 @@
|
||||||
];
|
];
|
||||||
tokenFile = config.sops.secrets."forgejo/runner_registration_token_file".path;
|
tokenFile = config.sops.secrets."forgejo/runner_registration_token_file".path;
|
||||||
url = "https://forge.acomputer.lol";
|
url = "https://forge.acomputer.lol";
|
||||||
|
settings = {
|
||||||
|
log.level = "info";
|
||||||
|
cache = {
|
||||||
|
enabled = true;
|
||||||
|
host = "192.168.1.12";
|
||||||
|
external_server = "https://act-cache.labs.adtya.xyz/";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
_:
|
_:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
domainName = "grafana.labs.adtya.xyz";
|
domainName = "grafana.labs.adtya.xyz";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
@ -9,7 +9,6 @@ in
|
||||||
virtualHosts."${domainName}" = {
|
virtualHosts."${domainName}" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
reverse_proxy 127.0.0.1:9091
|
reverse_proxy 127.0.0.1:9091
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
27
hosts/rico2/services/apps/homepage/default.nix
Normal file
27
hosts/rico2/services/apps/homepage/default.nix
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
{config, ...}:
|
||||||
|
let
|
||||||
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
|
domainName = "homepage.labs.adtya.xyz";
|
||||||
|
cfg = config.services.glance;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services = {
|
||||||
|
caddy = {
|
||||||
|
virtualHosts."${domainName}" = {
|
||||||
|
inherit logFormat;
|
||||||
|
extraConfig = ''
|
||||||
|
reverse_proxy ${cfg.settings.server.host}:${cfg.settings.server.port}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
glance = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
server = {
|
||||||
|
host = "127.0.0.1";
|
||||||
|
port = "5678";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
|
@ -66,13 +66,17 @@
|
||||||
|
|
||||||
# Services
|
# Services
|
||||||
"alertmanager.labs.adtya.xyz" = "10.10.10.12";
|
"alertmanager.labs.adtya.xyz" = "10.10.10.12";
|
||||||
|
"act-cache.labs.adtya.xyz" = "10.10.10.13";
|
||||||
|
"bazarr.labs.adtya.xyz" = "10.10.10.14";
|
||||||
"blocky.rico1.labs.adtya.xyz" = "10.10.10.11";
|
"blocky.rico1.labs.adtya.xyz" = "10.10.10.11";
|
||||||
"blocky.rico2.labs.adtya.xyz" = "10.10.10.12";
|
"blocky.rico2.labs.adtya.xyz" = "10.10.10.12";
|
||||||
"grafana.labs.adtya.xyz" = "10.10.10.12";
|
"grafana.labs.adtya.xyz" = "10.10.10.12";
|
||||||
"jackett.labs.adtya.xyz" = "10.10.10.14";
|
"homepage.labs.adtya.xyz" = "10.10.10.12";
|
||||||
"jellyfin.labs.adtya.xyz" = "10.10.10.14";
|
"jellyfin.labs.adtya.xyz" = "10.10.10.14";
|
||||||
|
"lidarr.labs.adtya.xyz" = "10.10.10.14";
|
||||||
"loki.labs.adtya.xyz" = "10.10.10.11";
|
"loki.labs.adtya.xyz" = "10.10.10.11";
|
||||||
"prometheus.labs.adtya.xyz" = "10.10.10.11";
|
"prometheus.labs.adtya.xyz" = "10.10.10.11";
|
||||||
|
"prowlarr.labs.adtya.xyz" = "10.10.10.14";
|
||||||
"radarr.labs.adtya.xyz" = "10.10.10.14";
|
"radarr.labs.adtya.xyz" = "10.10.10.14";
|
||||||
"readarr.labs.adtya.xyz" = "10.10.10.14";
|
"readarr.labs.adtya.xyz" = "10.10.10.14";
|
||||||
"sonarr.labs.adtya.xyz" = "10.10.10.14";
|
"sonarr.labs.adtya.xyz" = "10.10.10.14";
|
||||||
|
|
|
@ -4,10 +4,4 @@
|
||||||
format json
|
format json
|
||||||
level ERROR
|
level ERROR
|
||||||
'';
|
'';
|
||||||
|
|
||||||
tlsAcmeDnsChallenge = ''
|
|
||||||
tls {
|
|
||||||
dns hetzner {env.HETZNER_ACCESS_TOKEN}
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,6 +17,7 @@ in
|
||||||
package = inputs.caddy.packages.${pkgs.system}.caddy;
|
package = inputs.caddy.packages.${pkgs.system}.caddy;
|
||||||
email = "admin@acomputer.lol";
|
email = "admin@acomputer.lol";
|
||||||
globalConfig = ''
|
globalConfig = ''
|
||||||
|
acme_dns hetzner {env.HETZNER_ACCESS_TOKEN}
|
||||||
servers {
|
servers {
|
||||||
trusted_proxies static private_ranges 10.10.10.0/24
|
trusted_proxies static private_ranges 10.10.10.0/24
|
||||||
client_ip_headers X-Forwarded-For X-Real-IP
|
client_ip_headers X-Forwarded-For X-Real-IP
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ lib, config, ... }:
|
{ lib, config, ... }:
|
||||||
let
|
let
|
||||||
inherit (import ./caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ./caddy-helpers.nix) logFormat;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
services = {
|
services = {
|
||||||
|
@ -12,7 +12,6 @@ in
|
||||||
virtualHosts."${vHost}" = {
|
virtualHosts."${vHost}" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
metrics /caddy-metrics
|
metrics /caddy-metrics
|
||||||
handle /metrics {
|
handle /metrics {
|
||||||
reverse_proxy ${config.services.prometheus.exporters.node.listenAddress}:${toString config.services.prometheus.exporters.node.port}
|
reverse_proxy ${config.services.prometheus.exporters.node.listenAddress}:${toString config.services.prometheus.exporters.node.port}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{ config, ... }: {
|
_: {
|
||||||
services = {
|
services = {
|
||||||
promtail = {
|
promtail = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
let
|
let
|
||||||
cfg = config.services.forgejo;
|
cfg = config.services.forgejo;
|
||||||
domainName = "forge.acomputer.lol";
|
domainName = "forge.acomputer.lol";
|
||||||
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
sops.secrets = {
|
sops.secrets = {
|
||||||
|
@ -12,6 +13,12 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
services = {
|
services = {
|
||||||
|
caddy.virtualHosts."act-cache.labs.adtya.xyz" = {
|
||||||
|
inherit logFormat;
|
||||||
|
extraConfig = ''
|
||||||
|
reverse_proxy 127.0.0.1:7777
|
||||||
|
'';
|
||||||
|
};
|
||||||
gitea-actions-runner = {
|
gitea-actions-runner = {
|
||||||
package = pkgs.forgejo-runner;
|
package = pkgs.forgejo-runner;
|
||||||
instances = {
|
instances = {
|
||||||
|
@ -26,6 +33,14 @@ in
|
||||||
];
|
];
|
||||||
tokenFile = config.sops.secrets."forgejo/runner_registration_token_file".path;
|
tokenFile = config.sops.secrets."forgejo/runner_registration_token_file".path;
|
||||||
url = "https://${domainName}";
|
url = "https://${domainName}";
|
||||||
|
settings = {
|
||||||
|
log.level = "info";
|
||||||
|
cache = {
|
||||||
|
enabled = true;
|
||||||
|
port = 7777;
|
||||||
|
external_server = "https://act-cache.labs.adtya.xyz/";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{ lib, config, ... }:
|
{ lib, config, ... }:
|
||||||
let
|
let
|
||||||
inherit (import ../../../shared/caddy-helpers.nix) logFormat tlsAcmeDnsChallenge;
|
inherit (import ../../../shared/caddy-helpers.nix) logFormat;
|
||||||
domainName = "ntfy.acomputer.lol";
|
domainName = "ntfy.acomputer.lol";
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
@ -9,7 +9,6 @@ in
|
||||||
"${config.networking.hostName}.labs.adtya.xyz" = {
|
"${config.networking.hostName}.labs.adtya.xyz" = {
|
||||||
inherit logFormat;
|
inherit logFormat;
|
||||||
extraConfig = ''
|
extraConfig = ''
|
||||||
${tlsAcmeDnsChallenge}
|
|
||||||
handle /ntfy-metrics {
|
handle /ntfy-metrics {
|
||||||
uri replace /ntfy-metrics /metrics
|
uri replace /ntfy-metrics /metrics
|
||||||
reverse_proxy ${config.services.ntfy-sh.settings.metrics-listen-http}
|
reverse_proxy ${config.services.ntfy-sh.settings.metrics-listen-http}
|
||||||
|
|
Loading…
Reference in a new issue