homepage
This commit is contained in:
parent
73627398d9
commit
d85f79d1f7
|
@ -97,7 +97,10 @@
|
||||||
};
|
};
|
||||||
headscale.enable = true;
|
headscale.enable = true;
|
||||||
redlib.enable = true;
|
redlib.enable = true;
|
||||||
local = { nextcloud.enable = false; };
|
local = {
|
||||||
|
homepage.enable = true;
|
||||||
|
nextcloud.enable = false;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
fedi = { akkoma.enable = true; };
|
fedi = { akkoma.enable = true; };
|
||||||
media = {
|
media = {
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
{ imports = [ ./nextcloud ]; }
|
{ imports = [ ./nextcloud ./homepage ]; }
|
||||||
|
|
41
modules/server/services/local/homepage/default.nix
Normal file
41
modules/server/services/local/homepage/default.nix
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
with lib;
|
||||||
|
let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
cfg = config.void.server.services.local.homepage;
|
||||||
|
srv = config.void.server;
|
||||||
|
in {
|
||||||
|
options.void.server.services.local.homepage = {
|
||||||
|
enable = mkEnableOption false;
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
services = {
|
||||||
|
nginx.virtualHosts."sako.box" = {
|
||||||
|
forceSSL = true;
|
||||||
|
sslCertificate = "/srv/secrets/certs/sako.box.pem";
|
||||||
|
sslCertificateKey = "/srv/secrets/certs/sako.box-key.pem";
|
||||||
|
locations."/" = { proxyPass = "http://localhost:8082"; };
|
||||||
|
};
|
||||||
|
homepage-dashboard = {
|
||||||
|
enable = true;
|
||||||
|
widgets = [{
|
||||||
|
resources = {
|
||||||
|
cpu = true;
|
||||||
|
disk = "/";
|
||||||
|
memory = true;
|
||||||
|
};
|
||||||
|
}];
|
||||||
|
services = [{
|
||||||
|
"Media" = [{
|
||||||
|
"Jellyfin" = mkIf srv.media.jellyfin.enable {
|
||||||
|
description = "Media server";
|
||||||
|
href = "https://jellyfin.sako.box";
|
||||||
|
};
|
||||||
|
}];
|
||||||
|
}];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in a new issue