about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--hosts/apzu/hardware/cpu.nix1
-rw-r--r--hosts/mammun/hardware/cpu.nix3
-rw-r--r--hosts/tiamat/hardware/cpu.nix1
-rw-r--r--system/default.nix1
-rw-r--r--system/power/default.nix19
5 files changed, 21 insertions, 4 deletions
diff --git a/hosts/apzu/hardware/cpu.nix b/hosts/apzu/hardware/cpu.nix
index 2969d154..3bc6184f 100644
--- a/hosts/apzu/hardware/cpu.nix
+++ b/hosts/apzu/hardware/cpu.nix
@@ -1,4 +1,3 @@
 {...}: {
-  powerManagement.cpuFreqGovernor = "powersave";
   hardware.cpu.intel.updateMicrocode = true; # Why not?
 }
diff --git a/hosts/mammun/hardware/cpu.nix b/hosts/mammun/hardware/cpu.nix
index 2d7232cd..70eaff6f 100644
--- a/hosts/mammun/hardware/cpu.nix
+++ b/hosts/mammun/hardware/cpu.nix
@@ -1,4 +1,3 @@
-{config, ...}: {
-  powerManagement.cpuFreqGovernor = "powersave";
+{...}: {
   hardware.cpu.amd.updateMicrocode = true; # Why not?
 }
diff --git a/hosts/tiamat/hardware/cpu.nix b/hosts/tiamat/hardware/cpu.nix
index 00ba588d..70eaff6f 100644
--- a/hosts/tiamat/hardware/cpu.nix
+++ b/hosts/tiamat/hardware/cpu.nix
@@ -1,4 +1,3 @@
 {...}: {
-  powerManagement.cpuFreqGovernor = "powersave";
   hardware.cpu.amd.updateMicrocode = true; # Why not?
 }
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";
+      };
+    };
+  };
+}