feat(homepage-dashboard): adding some disk info

This commit is contained in:
2025-09-26 17:41:19 +02:00
parent 551a47989c
commit e721a2088b

View File

@@ -2,11 +2,13 @@
config, config,
lib, lib,
... ...
}: let }:
let
unit = "homepage-dashboard"; unit = "homepage-dashboard";
cfg = config.server.homepage-dashboard; cfg = config.server.homepage-dashboard;
srv = config.server; srv = config.server;
in { in
{
options.server.homepage-dashboard = { options.server.homepage-dashboard = {
enable = lib.mkEnableOption { enable = lib.mkEnableOption {
description = "Enable ${unit}"; description = "Enable ${unit}";
@@ -103,14 +105,21 @@ in {
} }
{ {
resources = { resources = {
label = ""; label = "root";
memory = true; memory = true;
disk = ["/"]; disk = [ "/dev/dm-1" ];
};
}
{
resources = {
label = "zfs";
memory = true;
disk = [ "/mnt/data" ];
}; };
} }
]; ];
services =
services = let let
homepageCategories = [ homepageCategories = [
"Arr" "Arr"
"Media" "Media"
@@ -120,10 +129,11 @@ in {
]; ];
hl = config.server; hl = config.server;
mergedServices = hl // hl.podman; mergedServices = hl // hl.podman;
homepageServices = x: (lib.attrsets.filterAttrs ( homepageServices =
x:
(lib.attrsets.filterAttrs (
name: value: value ? homepage && value.homepage.category == x name: value: value ? homepage && value.homepage.category == x
) ) mergedServices);
mergedServices);
in in
lib.lists.forEach homepageCategories (cat: { lib.lists.forEach homepageCategories (cat: {
"${cat}" = "${cat}" =
@@ -145,9 +155,11 @@ in {
++ [ { Misc = cfg.misc; } ] ++ [ { Misc = cfg.misc; } ]
++ [ ++ [
{ {
Glances = let Glances =
let
port = toString config.services.glances.port; port = toString config.services.glances.port;
in [ in
[
{ {
Info = { Info = {
widget = { widget = {
@@ -222,7 +234,9 @@ in {
traefik = { traefik = {
dynamicConfigOptions = { dynamicConfigOptions = {
http = { http = {
services.homepage.loadBalancer.servers = [{url = "http://127.0.0.1:${toString config.services.${unit}.listenPort}";}]; services.homepage.loadBalancer.servers = [
{ url = "http://127.0.0.1:${toString config.services.${unit}.listenPort}"; }
];
routers = { routers = {
homepage = { homepage = {
entryPoints = [ "websecure" ]; entryPoints = [ "websecure" ];