# Power management for NAS # - CPU powersave governor (scales up on demand for transcoding) # - Disk spindown after 15 minutes idle { config, lib, pkgs, ... }: { # CPU Power Management - powersave scales up on demand for transcoding powerManagement.cpuFreqGovernor = "powersave"; # Disk spindown - hdparm for Seagate 18TB drives environment.systemPackages = [ pkgs.hdparm ]; services.udev.extraRules = '' # Seagate 18TB NAS drives - APM 127 allows spindown, -S 180 = 15 min ACTION=="add", KERNEL=="sd[a-z]", SUBSYSTEM=="block", \ ATTRS{model}=="ST18000NM000J*", \ RUN+="${pkgs.hdparm}/bin/hdparm -B 127 -S 180 /dev/%k" # Toshiba 20TB NAS drives - same settings ACTION=="add", KERNEL=="sd[a-z]", SUBSYSTEM=="block", \ ATTRS{model}=="TOSHIBA MG10ACA20TE*", \ RUN+="${pkgs.hdparm}/bin/hdparm -B 127 -S 180 /dev/%k" ''; }