implemented all of the currently available server

This commit is contained in:
Danilo Reyes 2024-09-28 23:51:13 -06:00
parent 9151ca5971
commit 0f0acb01b8
6 changed files with 76 additions and 9 deletions

View File

@ -52,12 +52,7 @@
modules = [ modules = [
./hosts/${name}/configuration.nix ./hosts/${name}/configuration.nix
sops-nix.nixosModules.sops sops-nix.nixosModules.sops
( (_: { nixpkgs.overlays = overlays; })
_:
{
nixpkgs.overlays = overlays;
}
)
nixos-cosmic.nixosModules.default nixos-cosmic.nixosModules.default
]; ];
}; };

View File

@ -41,6 +41,7 @@
enable = false; enable = false;
enableCron = false; enableCron = false;
enableProxy = true; enableProxy = true;
hostName = "server";
}; };
nextcloud = { nextcloud = {
enable = true; enable = true;
@ -55,6 +56,7 @@
bazarr = { bazarr = {
enable = false; enable = false;
enableProxy = true; enableProxy = true;
hostName = "server";
}; };
collabora = { collabora = {
enable = true; enable = true;
@ -76,10 +78,12 @@
kavita = { kavita = {
enable = false; enable = false;
enableProxy = true; enableProxy = true;
hostName = "server";
}; };
lidarr = { lidarr = {
enable = false; enable = false;
enableProxy = true; enableProxy = true;
hostName = "server";
}; };
maloja = { maloja = {
enable = true; enable = true;
@ -106,12 +110,14 @@
prowlarr = { prowlarr = {
enable = false; enable = false;
enableProxy = true; enableProxy = true;
hostName = "server";
}; };
qbittorrent.enable = true; qbittorrent.enable = true;
unpackerr.enable = false; unpackerr.enable = false;
radarr = { radarr = {
enable = false; enable = false;
enableProxy = true; enableProxy = true;
hostName = "server";
}; };
ryot = { ryot = {
enable = true; enable = true;
@ -124,6 +130,7 @@
sonarr = { sonarr = {
enable = false; enable = false;
enableProxy = true; enableProxy = true;
hostName = "server";
}; };
vaultwarden = { vaultwarden = {
enable = true; enable = true;

View File

@ -29,6 +29,10 @@ in
style = "row"; style = "row";
columns = 4; columns = 4;
}; };
"Other" = {
style = "row";
columns = 3;
};
}; };
background = "https://images.unsplash.com/photo-1502790671504-542ad42d5189?auto=format&fit=crop&w=2560&q=80"; background = "https://images.unsplash.com/photo-1502790671504-542ad42d5189?auto=format&fit=crop&w=2560&q=80";
}; };
@ -75,6 +79,13 @@ in
{ inherit (services) "qbittorrent miniserver"; } { inherit (services) "qbittorrent miniserver"; }
]; ];
} }
{
"Other" = [
{ inherit (services) mealie; }
{ inherit (services) nextcloud; }
{ inherit (services) paperless; }
];
}
]; ];
}; };
nginx.virtualHosts."${cfg.host}" = lib.mkIf cfg.enableProxy ( nginx.virtualHosts."${cfg.host}" = lib.mkIf cfg.enableProxy (

View File

@ -172,4 +172,57 @@
key = "{{HOMEPAGE_VAR_SABNZBD}}"; key = "{{HOMEPAGE_VAR_SABNZBD}}";
}; };
}; };
mealie =
let
cfg = config.my.servers.mealie;
in
lib.mkIf (cfg.enable || cfg.enableProxy) {
icon = "${cfg.name}.png";
href = cfg.url;
widget = {
inherit (cfg) url;
type = cfg.name;
key = "{{HOMEPAGE_VAR_MEALIE}}";
version = 2;
};
};
nextcloud =
let
cfg = config.my.servers.nextcloud;
in
lib.mkIf (cfg.enable || cfg.enableProxy) {
icon = "${cfg.name}.png";
href = cfg.url;
widget = {
inherit (cfg) url;
type = cfg.name;
username = "{{HOMEPAGE_VAR_NEXTCLOUD_USERNAME}}";
password = "{{HOMEPAGE_VAR_NEXTCLOUD_PASSWORD}}";
token = "{{HOMEPAGE_VAR_NEXTCLOUD_TOKEN}}";
fields = [
"memoryusage"
"activeusers"
"numfiles"
"numshares"
];
};
};
paperless =
let
name = "paperlessngx";
url = "http://${config.my.ips.miniserver}:${toString config.services.paperless.port}";
in
lib.mkIf config.my.servers.paperless.enable {
icon = "paperless.png";
href = url;
widget = {
type = name;
key = "{{HOMEPAGE_VAR_PAPERLESS}}";
inherit url;
fields = [
"total"
"inbox"
];
};
};
} }

View File

@ -9,6 +9,7 @@
}; };
}; };
config = lib.mkIf config.my.servers.sabnzbd.enable { config = lib.mkIf config.my.servers.sabnzbd.enable {
networking.firewall.allowedTCPPorts = [ config.my.servers.sabnzbd.port ];
services.sabnzbd = { services.sabnzbd = {
enable = true; enable = true;
group = "piracy"; group = "piracy";

View File

@ -7,7 +7,7 @@ multi-scrobbler: ENC[AES256_GCM,data:v6j2bsn14gAifFKYk7A/mDxd+86PnYg1fvYGNtTQbo1
vaultwarden: ENC[AES256_GCM,data:BH+G8FmYylTbOhzZy6T+sW0q2myJC2zpd/SrtG5WC7N5fmV++X4h+6/tU5dFv4owIOLm/13oGrkT/KOWkF2wwQ7qeQQ8bsyloEigNBMW6d7/ihXZtdtYid1HQrvc6U+Sjl8CPjInHz5j9fy5ouMrmDCGVIYdNrDzFW8AYn7KFLIa3c7oCWMTBCOeGS5rD55GSwy5y4AvBx7Hj9xnZmGG2cnzt5CR9hr/fnZhBTcPxquUZw==,iv:CxDdtWC7zKJZ/Ikq5fV33AT6MYx+pbAGI0Cy6I1fcyo=,tag:q8w4maD3vXTdxCLZ7qbCjg==,type:str] vaultwarden: ENC[AES256_GCM,data:BH+G8FmYylTbOhzZy6T+sW0q2myJC2zpd/SrtG5WC7N5fmV++X4h+6/tU5dFv4owIOLm/13oGrkT/KOWkF2wwQ7qeQQ8bsyloEigNBMW6d7/ihXZtdtYid1HQrvc6U+Sjl8CPjInHz5j9fy5ouMrmDCGVIYdNrDzFW8AYn7KFLIa3c7oCWMTBCOeGS5rD55GSwy5y4AvBx7Hj9xnZmGG2cnzt5CR9hr/fnZhBTcPxquUZw==,iv:CxDdtWC7zKJZ/Ikq5fV33AT6MYx+pbAGI0Cy6I1fcyo=,tag:q8w4maD3vXTdxCLZ7qbCjg==,type:str]
dns: ENC[AES256_GCM,data:eQACe2GRS0ZHyszFkZDG1CeJJZDe/0eXNnurujdv5VR5QQJjYRAQuJVzC3XgelXoWeIQdtW4IfpXTv7xaGuhEzPgsPm4hAdEKosNs6h0ZGg8FG73NSdMWw==,iv:n3i4Ll24+a82aKiRIJgMWLko1B2Lk7bLnpmUevBoHGA=,tag:bnZzVfRUSpZFvF2T6pMtsQ==,type:str] dns: ENC[AES256_GCM,data:eQACe2GRS0ZHyszFkZDG1CeJJZDe/0eXNnurujdv5VR5QQJjYRAQuJVzC3XgelXoWeIQdtW4IfpXTv7xaGuhEzPgsPm4hAdEKosNs6h0ZGg8FG73NSdMWw==,iv:n3i4Ll24+a82aKiRIJgMWLko1B2Lk7bLnpmUevBoHGA=,tag:bnZzVfRUSpZFvF2T6pMtsQ==,type:str]
cloudflare-api: ENC[AES256_GCM,data:iNUMlY8rz5yHVitpK4HGaFSK7j+c8Pm7rOQMOQGmSJ3a8ASyrtouPgLbcnoPY/jalsJYAj991dSiui+Vwqs=,iv:qWONG/KLd9/F4tqrWF5T25Zxst3bk+kOYaOFBFSBAAY=,tag:gRFxar8KS8gnX8oaCD156Q==,type:str] cloudflare-api: ENC[AES256_GCM,data:iNUMlY8rz5yHVitpK4HGaFSK7j+c8Pm7rOQMOQGmSJ3a8ASyrtouPgLbcnoPY/jalsJYAj991dSiui+Vwqs=,iv:qWONG/KLd9/F4tqrWF5T25Zxst3bk+kOYaOFBFSBAAY=,tag:gRFxar8KS8gnX8oaCD156Q==,type:str]
homepage: ENC[AES256_GCM,data:Ls8p0wlli8LpEeU6Rusl0t9SqtzY9Nn75eVeHQgQ26rUmtkXI4rs4a8YPMyCzKouLtEk1lKWD3hvIeg+U+G32sYhtzsRODoaJUQiXvE/edqJA8njrZFPG+ScGeHFTCgXlQoAJYxm7vM6yR3XOgaHV8IRDLfVGvBF3XIKj/UlU1v6F7Z43MmyxU3OvPsCv/vE2ASod/RY/bB0A5zMluW4/Rqa8vfVFIePojWphdo92xkmr0dHRxJ0fwBV06XGUhYAldoGpz6ewa3a3bvN36Yg/h7yqtUWon8uRoJiDaOBGFxzI3TjfnDcNAOzln01TBh41cKOMCJX+zLeetenFhy6bPOim/ozYijHR4oFIYdTYBrjsnD+V/AJyfI7wB6AXLsQLpfMqh+fhYSFJPb4818jmJ5XXYHXqY7X3jTnTYIejur+MvqaLSGykkRGoGwstZ7rommVbmByKjGY/kdqkxeCVrz6L90gSM20tAm/xXxRq3ZpTlDskOBVAig4lYkw9OY0oiwJzOI0GKqueFk5Skbom3x16KwsOcxV8wWFmZw92fZ9F4VKYIoFg4f3dKkZRZKZ+Icav+r9GaGoaTcN4RpAsW0MX+5wUsfCmeJ4SHfTOKb57vSFso7RSRAo368PRAZ2Kb/Jzj9W9rlmKhQ47FMtOVlfK1I1ziWrVtNkf8KrjJfiYfymJ/rT5XlWInO5UkSkTEDFvFqh5G3ulRVWFDP3fsvXvyoEykzyV4pc0y+ap3Hy3OracteS6DCW2dO+J+Zw8yQh14M09plDyEjw6/Jr5UzTKIh2jA1mRNUJACkt5+3vlnuLNj5J2SisCsEKF4b9aJmMh8+620pLHbptRfcUv62RrMMmLNQNOj0+izbn5ZtiVeZssYn2DPUze1tQzxAVH7Dn77XOTULLfa5i49dAk4ied0ARLhUVO4ccCnwrcJ3z5tclQJ4dyyi6zj2jq1xaiuwoP89EuZj53HvyJ1vhtIZzufb8cm5tl3/FSsGG8aBACojTtXkxK6sZ5mXaHv2BkSsowxMF7OAn+r49eX3Aew1tfCHRTWs+kcYM8v8hjcUV7Sur4gHFoae8eVzpr54t1eJh1vUXXS1ka2W2RvU1v2piplr0KcfaHNys7A7ujelah+1Np03J1DadQXEiidkz3u+ud+PCohbHPfG80LEVXJW2qzDR87usTBwvQDxDYMToSKfqZG1AURQ+J1qMCh7tj72HtYuICFnKhANI12qsIkAK,iv:0c4rkpKLwxdaqCnOFFx1V/4loyN9Rz8stk46L+/vkPM=,tag:FvOX4gpVDJyG9y6LtH+EqQ==,type:str] homepage: ENC[AES256_GCM,data:/HeCr0Sv9wVldUEMpkFV0XMOkET+kx3WW5g81T7t1RXnzygD3503BfN7an131oGN7ITwZSsQPEt5XF41PBII0xUa3NJmpym60ajwwpaBV9EhHX4RKab5cmBjyQXpyn5dAf46j7G84nVyR5yRt4JcUTo368IOR7xBGFpJnfK5Fa1gcTtV0l1vToyAYzB5mSG0v5P9SRK9F8yX4rCX77rkK4ah6BJ13gQxY+c5bohf78yxVm9IUQaVchi8rr/RuZQ9HfPkawweE/QYwvYpw1EdS9DLflTx1ih8FneOGXHJXrym/5ck0UVxmspr8Ue3SDeG8VAmmNOorlHclXjYS9JGI5Wq0W8GAPO4+T7gKiSMoLRX4ED8dJUYvmBSGJ5rVvQ2tciVUufrSTabaD+DQVEBcvMA1GxdbvhI5ERICMesF7L0SHCyWL6tmUzvtYj9ed/C1eFlf/SdMx0QZcWXsFMRKamvh/cACnjOmv487uqhrkEzZGI439KALbSXMaM5OGCBXWvNbcuFPZVxzS1K0Dt10YthURqJ64Z9CC2T6a+ug4WkNRtpsHJQ7V7WVpiwUyZ256rM6EFU30xpG9Npf/h24F2SqQk59rgiRsIdTvr+w5RYX7RsBZ8b1V5kZGwQj1FkWZKa1Sy4aW8/25jNh9Gh0/+pFQazawk2hDvF1Mq8+ypLzXN0OruTx+iDgk6gWaPNEZIq7CJF1pz0pEd8OVL7b8KYDUPo06pmgP6qIOCZPAJkuUn/QXBEIKdwkztaW5iXoCwnGml3jiRdrx6gOWdX4hp9MMJv9rJHBJRwokND/z2YvHFHXwyEoBl16bRRlob3w7fMfnQQk03H5ATKxl0r+cZp2OVBy+Jl9iAXQuTY8+lHpmLu5aYkACyz9Rnqk6N11VjG2QborwnI+yFSNlJ7jeb2dTl0yhnaYTIo81xReXzL+7xH2DOF2kXr4mpWXuMIHfRA/yxvnMu+9kszVfPZCNDexvuUI90qE0eHhjOdUAPjojUq0tf0fhUkKAo5dlxgfhNrZGJL9r7vUZ5iAEfFlwXzjdLCBgRo7velLnXl3gczqor6gkwrMs5G1KWemMCGaH5uiw9Pggcyi8wF38Xuujpzrn3b/4n/yJbAc8KUuN1lQDnn9JsctONZusnj4QhvxWkBvh2WmbKbcFKoVjFD6yd9gknW1Ohm1cOxPcVsiLDS57tTdtPCu+H4OGvIfRNXiqLA2xH5yBlNS/rR/nVXpv8mOpYaa+BO/PI3mvxFkK2mn2EllCfve/gEEJorLyxLmeU7LvsDreprQkxTQiItMwhtvWcL3D0wEf5oN/fo/wLsix6oGAISpJ0oj9GERqs7nzLbmDKbty9seqHM6hBbIYcNL1RGk4aWzA24avDf8kUaMjABmdr5cwGau3yMDQS6x85+NXNJUv2y5iJaB7uP4/BN7Y6kXG9p9lOV4ptvr4DgFGdyKQyv8bywoOqba+reOchqXT4u0z9ed5ac6IC2mbSHgf0Utk9DtZoPO00A6NZxWscENQRzVgmD3rNuqzF2XUyoNFvmj26mq6GwMEey83OnaZi1iPEn9izhVWXIIR89PHg6UfpbwgBFyUenMYxH/KkGqTwLJHL+KMiVsk3y9s0muh8PxOCzRotFznKnAD+miPipB+hWKbKE+KuY6/WYl8dG0pow5Tl/e2+fCrdBWia+tmdfOWS8Ie4zS8WaVOGV3c6nD/mpOjxZMKtk/kJO3bQtN63NUeQcAxF9/sEIuk6qMMjPLoiB9Mif4mub5cxTeakT8NGSSZ+QE3lZgSwiRR6Q2y5kmdGNgadF9K0agc4q3EQTdjGc6T9ddhuahd9C3Yl2eMuOt6DJTEHnzWbJLpZ4hQOphRBN/Lw9uSxXi6Ipg28=,iv:3uYfzQSSlHWPzY9hsw+gxfjDoi2RRzRNMzijWsT4hlg=,tag:wpK17BR103Xkotx7r23Kiw==,type:str]
sops: sops:
kms: [] kms: []
gcp_kms: [] gcp_kms: []
@ -50,8 +50,8 @@ sops:
QXRUYWtGcWZCVW11U3VYRktuUjlCbDgKsTK4WhUza/JuoDTU3uATa6fq/8eYzxtb QXRUYWtGcWZCVW11U3VYRktuUjlCbDgKsTK4WhUza/JuoDTU3uATa6fq/8eYzxtb
9BUK1ddzx9Mghea9XBMS17YGtGmW800OsLBomb3SINnOFvejcnKf8Q== 9BUK1ddzx9Mghea9XBMS17YGtGmW800OsLBomb3SINnOFvejcnKf8Q==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
lastmodified: "2024-09-28T08:12:55Z" lastmodified: "2024-09-29T06:05:56Z"
mac: ENC[AES256_GCM,data:Q05BcO8it6kh2eghNFJL3XDqLg50hbVM6XktofMpxGxQUMGOIx+hgQBBYpctwn5DJ3/wOGeSH/DbCTWd+3nk6BwM1jrGdmf4WOEa82w/HSlDnMQNvlqiZTKlTXhn58XDsiF2ncCHv3Q3yuQdsfdwykhk6qo5rQUvA91FvtqfN4Y=,iv:ev80hlkXlQezuHTu5Ohn+0UISuaT6SNUWymxFzDQEwo=,tag:+i/6zX1rlpFOHOT/zOANcQ==,type:str] mac: ENC[AES256_GCM,data:FEWOtbQVjx49Bi0+z6NBz9t1bDHwI54tXehNy+6HRlsTJs+hhCG2nWmDq4EzwH2NI00leRy83gqCKKPeiyrtAAcn52EspaUYS6dca2luW6PA7R9n6+7AeK/qd++Ar/XkmOfdudlxkqk8hjEr075TTiXmKGUOIsc3+m1pZRRuOb4=,iv:XdtdFlxnQokGkR0K1nxEWPRRRX+8pZyQISNDjrPbK1U=,tag:+JLWkZOJaaE67j0HP0VJLg==,type:str]
pgp: [] pgp: []
unencrypted_suffix: _unencrypted unencrypted_suffix: _unencrypted
version: 3.8.1 version: 3.8.1