dots/modules/nixos/features/tlp.nix
2025-08-06 21:50:59 +10:00

27 lines
669 B
Nix

{ config, lib, ... }:
let
feature = "feature";
in
{
config = lib.mkIf config.${feature}.enable {
# Disable if devices take long to unsuspend (keyboard, mouse, etc)
powerManagement.powertop.enable = true;
services = {
power-profiles-daemon.enable = false;
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";
STOP_CHARGE_THRESH_BAT0 = 95;
};
};
};
};
imports = [ ];
options.${feature}.enable = lib.mkEnableOption "enables ${feature}";
}