From 622280b62f97a7268e6d5269c734aa8a19d1ef35 Mon Sep 17 00:00:00 2001 From: Raphael Numbus Date: Sun, 14 Dec 2025 14:52:11 +0100 Subject: [PATCH] Fixed if statement. Added separate disk-spindown file. --- config-files/disks/snapraid.nix | 28 ---------------------------- config-files/disks/spindown.nix | 17 +++++++++++++++++ deploy.sh | 7 +++++++ nix-config/misc/networking.nix | 2 +- 4 files changed, 25 insertions(+), 29 deletions(-) create mode 100644 config-files/disks/spindown.nix diff --git a/config-files/disks/snapraid.nix b/config-files/disks/snapraid.nix index 58447a5..d868236 100644 --- a/config-files/disks/snapraid.nix +++ b/config-files/disks/snapraid.nix @@ -1,7 +1,6 @@ { config, lib, ... }: let - ### --> SnapRAID disks research contentDiskMounts = lib.attrsets.attrNames ( lib.attrsets.filterAttrs (name: value: lib.strings.hasPrefix "/mnt/content-" name) config.fileSystems @@ -14,15 +13,8 @@ let { i = 0; } contentDiskMounts; ### SnapRAID disks research <-- - -### --> Spindown disks - hardDrives = [ ${DISK_ID_LIST[@]} ]; -### Spindown disks <-- in - - - ### --> MergerFS setup { fileSystems."/mnt/data-storage" = { @@ -40,8 +32,6 @@ in }; ### MergerFS setup <-- - - ### --> SnapRAID setup services.snapraid = { enable = true; @@ -51,22 +41,4 @@ in }; ### SnapRAID setup <-- - - -### --> Disk spindown - systemd.services.hd-idle = { - description = "External HD spin down daemon"; - wantedBy = [ "multi-user.target" ]; - serviceConfig = { - Type = "simple"; - ExecStart = - let - idleTime = toString 1800; - hardDriveParameter = lib.strings.concatMapStringsSep " " (x: "-a ${x} -i ${idleTime}") hardDrives; - in - "${pkgs.hd-idle}/bin/hd-idle -i 0 ${hardDriveParameter}"; - }; - }; -### Disk spindown <-- - } \ No newline at end of file diff --git a/config-files/disks/spindown.nix b/config-files/disks/spindown.nix new file mode 100644 index 0000000..5891797 --- /dev/null +++ b/config-files/disks/spindown.nix @@ -0,0 +1,17 @@ +{ config, pkgs, lib, ... }: + +### --> Disk spindown + systemd.services.hd-idle = { + description = "External HD spin down daemon"; + wantedBy = [ "multi-user.target" ]; + serviceConfig = { + Type = "simple"; + ExecStart = + let + idleTime = toString 1800; + hardDriveParameter = lib.strings.concatMapStringsSep " " (x: "-a ${x} -i ${idleTime}") hardDrives; + in + "${pkgs.hd-idle}/bin/hd-idle -i 0 ${hardDriveParameter}"; + }; + }; +### Disk spindown <-- \ No newline at end of file diff --git a/deploy.sh b/deploy.sh index b29c37c..80195c3 100755 --- a/deploy.sh +++ b/deploy.sh @@ -164,8 +164,10 @@ files_generation() { FRIGATE_DEVICES_BLOCK="" if [[ "$TARGET_GRAPHICS_RENDERER" == "true" ]]; then FRIGATE_DEVICES_BLOCK+=" - /dev/dri:/dev/dri\n" + fi if [[ "$TARGET_USB_CORAL" == "true" ]]; then FRIGATE_DEVICES_BLOCK+=" - /dev/bus/usb:/dev/bus/usb\n" + fi if [[ -n "$FRIGATE_DEVICES_BLOCK" ]]; then REPLACEMENT="devices:\n${FRIGATE_DEVICES_BLOCK%\\n}" sed -i.bak "s|# --- frigate devices --- #|$REPLACEMENT|" ./config-files/docker/compose/frigate.nix @@ -203,6 +205,7 @@ files_generation() { IMMICH_DEVICES_BLOCK="" if [[ "$TARGET_GRAPHICS_RENDERER" == "true" ]]; then IMMICH_DEVICES_BLOCK+=" - /dev/dri:/dev/dri\n" + fi if [[ -n "$IMMICH_DEVICES_BLOCK" ]]; then REPLACEMENT="devices:\n${IMMICH_DEVICES_BLOCK%\\n}" sed -i.bak "s|# --- immich devices --- #|$REPLACEMENT|" ./config-files/docker/compose/immich.nix @@ -521,6 +524,10 @@ EOF fi cp -avu ./config-files/disks/snapraid.nix ./nixos-config/disks/ + + if [[ -n "${DISK_ID_LIST[@]}" ]]; then + sed -i "s|DISK_ID_LIST|${DISK_ID_LIST[@]}|" ./config-files/disks/spindown.nix + cp -avu ./config-files/disks/spindown.nix ./nixos-config/disks/spindown.nix ### Generate automatic unlock configuration <-- ### --> Generate unlock keys diff --git a/nix-config/misc/networking.nix b/nix-config/misc/networking.nix index a0e0ef0..cd20141 100644 --- a/nix-config/misc/networking.nix +++ b/nix-config/misc/networking.nix @@ -1,4 +1,4 @@ -{ config, ... }: +{ config, pkgs, lib, ... }: { # Enable networking and firewall