diff --git a/nixos/systems/liveusb/default.nix b/nixos/systems/liveusb/default.nix index df46738..fffcc27 100644 --- a/nixos/systems/liveusb/default.nix +++ b/nixos/systems/liveusb/default.nix @@ -29,6 +29,32 @@ in ../../common/nixpkgs.nix ]; + environment.systemPackages = [ + (pkgs.writeShellScriptBin "test-s0ix" '' + _cpu_residency="/sys/devices/system/cpu/cpuidle/low_power_idle_cpu_residency_us" + _system_residency="/sys/devices/system/cpu/cpuidle/low_power_idle_system_residency_us" + + echo '> '"$_system_residency before" + _residency_before=$(cat "$_system_residency") + echo "$_residency_before" + + echo "Suspending to RAM and resuming in 30 seconds..." + rtcwake -u -s 30 -m mem -n && systemctl suspend + + echo '> '"$_system_residency after" + _residency_after=$(cat "$_system_residency") + echo "$_residency_after" + + if [ $_residency_before -lt $_residency_after ] ; then + echo "Suspend successful" + elso + echo "Suspend unsuccessful" + fi + + ${lib'.getExe pkgs.smartmontools} -a $(echo /dev/nvme?n? | tr ' ' '\n' | head -n 1) + '') + ]; + isoImage.edition = "xfce"; services.xserver.videoDrivers = [ "nvidia" ];