nixos-config/modules/power.nix
2020-09-08 03:07:50 +04:00

34 lines
999 B
Nix

{ config, pkgs, lib, ... }:
with rec {
inherit (config) device deviceSpecific;
};
with deviceSpecific; {
services.tlp = {
enable = isLaptop;
settings = {
CPU_SCALING_GOVERNOR_ON_AC = "powersave";
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
CPU_HWP_ON_AC = "balance_performance";
CPU_HWP_ON_BAT = "balance_power";
CPU_BOOST_ON_AC = 1;
CPU_BOOST_ON_BAT = 0;
SCHED_POWERSAVE_ON_AC = 0;
SCHED_POWERSAVE_ON_BAT = 1;
CPU_ENERGY_PERF_POLICY_ON_AC = "balance_performance";
CPU_ENERGY_PERF_POLICY_ON_BAT = "balance_power";
DISK_DEVICES = "\"nvme0n1 sda\"";
DISK_APM_LEVEL_ON_AC = "\"255 254\"";
DISK_APM_LEVEL_ON_BAT = "\"255 254\"";
SATA_LINKPWR_ON_BAT = "\"med_power_with_dipm max_performance\"";
SATA_LINKPWR_ON_AC = "\"med_power_with_dipm max_performance\"";
};
};
services.undervolt = lib.mkIf (device == "Dell-Laptop") {
enable = true;
coreOffset = -120;
gpuOffset = -54;
};
}