32 lines
		
	
	
	
		
			655 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
	
		
			655 B
		
	
	
	
		
			Nix
		
	
	
	
	
	
| 
 | |
| { lib, config, ... }:
 | |
| 
 | |
| let
 | |
|   cfg = config.systemModules.hardware.power;
 | |
| in
 | |
| 
 | |
| {
 | |
|   config = lib.mkIf cfg.enable {
 | |
|     services.system76-scheduler.settings.cfsProfiles.enable = true;
 | |
| 
 | |
|     services.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";
 | |
|       };
 | |
|     };
 | |
| 
 | |
|     services = {
 | |
|       upower.enable = true;
 | |
|       thermald.enable = true;
 | |
|       power-profiles-daemon.enable = false;
 | |
|       logind = {
 | |
|         lidSwitch = "suspend";
 | |
|       };
 | |
|     };
 | |
|     powerManagement.powertop.enable = true;
 | |
|   };
 | |
| }
 |