{ config, lib, pkgs, ... }: let inherit (lib.modules) mkDefault; in { config = { environment.systemPackages = builtins.attrValues { inherit (pkgs) acpi powertop ; }; boot = { kernelModules = ["acpi_call"]; extraModulePackages = with config.boot.kernelPackages; [ acpi_call cpupower ]; }; hardware.acpilight.enable = false; services = { upower = { enable = true; percentageLow = 15; percentageCritical = 5; }; acpid = { enable = true; logEvents = true; }; # INFO: Only works on Intel undervolt = { enable = true; tempBat = 65; package = pkgs.undervolt; }; auto-cpufreq = { enable = true; settings = { charger = { governor = "performance"; energy_performance_preference = "performance"; scaling_min_freq = mkDefault 1800000; scaling_max_freq = mkDefault 3800000; turbo = "auto"; }; battery = { governor = "powersave"; energy_performance_preference = "power"; scaling_min_freq = mkDefault 1200000; scaling_max_freq = mkDefault 1800000; turbo = "never"; }; }; }; }; }; }