45 lines
869 B
Nix
45 lines
869 B
Nix
{...}: let
|
|
host = "127.0.0.1";
|
|
port = 8082;
|
|
in {
|
|
services.homepage-dashboard = {
|
|
enable = true;
|
|
listenPort = port;
|
|
openFirewall = false;
|
|
widgets = [
|
|
{
|
|
resources = {
|
|
cpu = true;
|
|
disk = "/";
|
|
memory = true;
|
|
};
|
|
}
|
|
];
|
|
|
|
services = [
|
|
{
|
|
"WebUI" = [
|
|
{
|
|
"Jellyfin" = {
|
|
description = "Jellyfin";
|
|
href = "https://media.spoodythe.one";
|
|
};
|
|
}
|
|
];
|
|
}
|
|
];
|
|
};
|
|
|
|
services.nginx.virtualHosts."dashboard.spoodythe.one" = {
|
|
forceSSL = true;
|
|
enableACME = true;
|
|
locations."/" = {
|
|
proxyPass = "http://${host}:${toString port}";
|
|
};
|
|
};
|
|
|
|
# Open port 80 and 443 for reverse proxy
|
|
networking.firewall.allowedTCPPorts = [80 443];
|
|
networking.firewall.allowedUDPPorts = [80 443];
|
|
}
|