clean modules & add power modes
nix flake show / show-flake (push) Successful in 35s

This commit is contained in:
smayzy
2025-07-24 14:21:53 +02:00
parent 40546f121f
commit c5ef752a66
14 changed files with 65 additions and 13 deletions
+1
View File
@@ -3,5 +3,6 @@
imports = [
./nvidia.nix
./grub.nix
./power.nix
];
}
+1 -1
View File
@@ -1,4 +1,4 @@
{ config, lib, pkgs, ... }:
{ config, lib, ... }:
with lib;
+1 -1
View File
@@ -1,4 +1,4 @@
{ config, lib, pkgs, ... }:
{ config, lib, ... }:
let
inherit (lib) mkIf mkOption types;
in
+50
View File
@@ -0,0 +1,50 @@
{ config, lib, ... }:
let
inherit (lib) mkIf mkOption types mkMerge;
validOptions = [ "desktop" "laptop" ];
in
{
options.smayzy.power = mkOption {
type = types.enum validOptions;
default = "desktop";
description = "chose power mode between desktop and laptop";
};
config = mkMerge [
(mkIf (config.smayzy.power == "desktop") {
services.power-profiles-daemon.enable = false;
services.auto-cpufreq = {
enable = true;
settings = {
charger = {
governor = "performance";
turbo = "auto";
};
};
};
})
(mkIf (config.smayzy.power == "laptop") {
services.logind.lidSwitch = "suspend";
services.power-profiles-daemon.enable = false;
services.tlp = {
enable = true;
settings = {
CPU_SCALING_GOVERNOR_ON_AC = "performance";
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
CPU_ENERGY_PERF_POLICY_ON_BAT = "power";
CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
CPU_MIN_PERF_ON_AC = 0;
CPU_MAX_PERF_ON_AC = 100;
CPU_MIN_PERF_ON_BAT = 0;
CPU_MAX_PERF_ON_BAT = 100;
STOP_CHARGE_THRESH_BAT0 = 95;
};
};
})
];
}