Zed + SmartD notifications

This commit is contained in:
Aleksandr Lebedev 2025-09-29 08:09:40 +02:00
parent f14a742138
commit 5c6639f0b6
4 changed files with 63 additions and 15 deletions

View file

@ -79,6 +79,28 @@ in {
}; };
}; };
services.zfs.zed.settings = {
ZED_DEBUG_LOG = "/tmp/zed.debug.log";
ZED_NTFY_URL = "ntfy.kylekrein.com";
ZED_NTFY_TOPIC = "zed";
ZED_NOTIFY_INTERVAL_SECS = 3600;
ZED_NOTIFY_VERBOSE = true;
ZED_USE_ENCLOSURE_LEDS = true;
ZED_SCRUB_AFTER_RESILVER = true;
};
services.smartd = {
enable = true;
autodetect = true;
notifications.mail = {
enable = true;
recipient = "smartd@localhost.com";
sender = "smartd@smartd.com";
};
};
custom.presets.disko.impermanenceBtrfsLuks = { custom.presets.disko.impermanenceBtrfsLuks = {
enable = true; enable = true;
swapSize = null; swapSize = null;

View file

@ -8,17 +8,14 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
powertop powertop
]; ];
services.udev.extraRules = let systemd.services.hd-idle = {
mkRule = as: lib.concatStringsSep ", " as; enable = false;
mkRules = rs: lib.concatStringsSep "\n" rs; description = "External HD spin down daemon";
in wantedBy = ["multi-user.target"];
mkRules [ serviceConfig = {
(mkRule [ Type = "forking";
''ACTION=="add|change"'' ExecStart = "${pkgs.hd-idle}/bin/hd-idle -i 1800 -l /var/log/hd-idle.log";
''SUBSYSTEM=="block"'' ExecReload = "pkill hd-idle";
''KERNEL=="sd[a-z]"'' };
''ATTR{queue/rotational}=="1"'' };
''RUN+="${pkgs.hdparm}/bin/hdparm -B 90 -S ${builtins.toString (30 * 60 / 5)} /dev/%k"''
])
];
} }

View file

@ -77,6 +77,7 @@ in {
forceSSL = true; forceSSL = true;
locations."/" = { locations."/" = {
proxyPass = "http://[::1]${config.services.ntfy-sh.settings.listen-http}"; proxyPass = "http://[::1]${config.services.ntfy-sh.settings.listen-http}";
proxyWebsockets = true;
}; };
}; };
"paperless.kylekrein.com" = { "paperless.kylekrein.com" = {

View file

@ -18,9 +18,37 @@ with lib.custom; {
settings = { settings = {
base-url = "https://ntfy.kylekrein.com"; base-url = "https://ntfy.kylekrein.com";
listen-http = ":9000"; listen-http = ":9000";
auth-default-access = "deny-all"; #auth-default-access = "read-only";
smtp-server-listen = ":1299";
smtp-server-domain = "localhost.com";
behind-proxy = true; behind-proxy = true;
enable-login = false; enable-login = true;
cache-file = "/var/lib/ntfy-sh/cache-file.db";
auth-file = "/var/lib/ntfy-sh/user.db";
attachment-cache-dir = "/var/lib/ntfy-sh/attachments";
};
};
services.postfix = {
enable = true;
config = {
myhostname = "stargate.local";
mydestination = "localhost, localhost.com";
relayhost = "";
transport_maps = "hash:/etc/postfix.conf";
};
};
environment.etc."postfix.conf".text = ''
localhost.com smtp:[127.0.0.1]:1299
'';
systemd.services.postmap-transport = {
description = "Generate postfix transport.db from transport";
wantedBy = ["multi-user.target"];
before = ["postfix.service"];
serviceConfig = {
Type = "oneshot";
ExecStart = "${pkgs.postfix}/bin/postmap /etc/postfix.conf";
}; };
}; };
} }