about summary refs log tree commit diff stats
path: root/system
diff options
context:
space:
mode:
authorSoispha <soispha@vhack.eu>2023-08-01 11:05:58 +0200
committerSoispha <soispha@vhack.eu>2023-08-01 11:17:06 +0200
commitca0ca5edd2b9066c3f71036c03a210e544835d54 (patch)
tree3d7373a3bccd1750ec78a1ec915ec7b098ac05ba /system
parentFix(hm/conf/git): Force gpg to use the specific key (diff)
downloadnixos-config-ca0ca5edd2b9066c3f71036c03a210e544835d54.tar.gz
nixos-config-ca0ca5edd2b9066c3f71036c03a210e544835d54.zip
Fix(treewide): Use tlp and thermald for power saving
Diffstat (limited to 'system')
-rw-r--r--system/default.nix1
-rw-r--r--system/power/default.nix19
2 files changed, 20 insertions, 0 deletions
diff --git a/system/default.nix b/system/default.nix
index 73d1a43a..17ed00bc 100644
--- a/system/default.nix
+++ b/system/default.nix
@@ -11,6 +11,7 @@
     #./nixpkgs already at flake level imported
     ./options
     ./polkit
+    ./power
     ./services
     ./sound
     ./tempfiles
diff --git a/system/power/default.nix b/system/power/default.nix
new file mode 100644
index 00000000..d20a97f2
--- /dev/null
+++ b/system/power/default.nix
@@ -0,0 +1,19 @@
+{...}: {
+  # see this for reference: https://github.com/NixOS/nixpkgs/issues/211345
+  services = {
+    # conflicts with tlp
+    power-profiles-daemon.enable = false;
+    thermald.enable = true;
+    tlp = {
+      enable = true;
+      settings = {
+        CPU_BOOST_ON_AC = 1;
+        CPU_BOOST_ON_BAT = 0;
+        CPU_SCALING_GOVERNOR_ON_AC = "performance";
+        CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
+        SATA_LINKPWR_ON_AC = "max_performance";
+        SATA_LINKPWR_ON_BAT = "min_power";
+      };
+    };
+  };
+}