Files
nixos/laptop/modules/services.nix

56 lines
1.4 KiB
Nix
Raw Normal View History

2026-02-17 20:02:25 +01:00
{
2026-02-25 01:29:56 +01:00
pkgs,
2026-02-17 20:02:25 +01:00
...
}:
2026-03-01 08:19:46 +01:00
2026-02-17 20:02:25 +01:00
{
2026-02-25 01:29:56 +01:00
services.thermald.enable = true;
2026-02-18 00:13:02 +01:00
services.power-profiles-daemon.enable = false;
services.tlp = {
enable = true;
2026-02-19 18:38:18 +01:00
pd.enable = true;
2026-02-18 00:13:02 +01:00
settings = {
2026-02-19 18:38:18 +01:00
TLP_AUTO_SWITCH = 1;
CPU_DRIVER_OPMODE_ON_AC = "active";
CPU_DRIVER_OPMODE_ON_BAT = "active";
CPU_DRIVER_OPMODE_ON_SAV = "active";
2026-02-18 00:13:02 +01:00
CPU_SCALING_GOVERNOR_ON_AC = "performance";
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
2026-02-18 00:35:38 +01:00
CPU_ENERGY_PERF_POLICY_ON_BAT = "balance_power";
2026-02-18 00:13:02 +01:00
CPU_ENERGY_PERF_POLICY_ON_AC = "balance_performance";
CPU_MIN_PERF_ON_BAT = 15;
2026-02-18 00:35:38 +01:00
CPU_MAX_PERF_ON_BAT = 80;
2026-02-19 18:38:18 +01:00
WIFI_PWR_ON_AC = "off";
WIFI_PWR_ON_BAT = "on";
MEM_SLEEP_ON_BAT = "deep";
2026-02-18 00:13:02 +01:00
};
};
2026-02-25 01:14:42 +01:00
services.logind = {
settings = {
Login = {
HandleLidSwitch = "suspend-then-hibernate";
HandleLidSwitchExternalPower = "suspend";
2026-02-25 01:29:56 +01:00
HandleLidSwitchDocked = "ignore";
2026-02-25 01:14:42 +01:00
};
};
};
2026-03-04 17:12:37 +01:00
systemd.sleep.settings.Sleep = {
HibernateDelaySec="5min";
};
2026-02-25 01:29:56 +01:00
systemd.services.disable-problematic-wakeup = {
description = "Disable only specific noisy wakeup sources";
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Type = "oneshot";
ExecStart = "${pkgs.bash}/bin/bash -c 'for device in XHC RP09 RP10 RP13; do if grep -q \"$device.*enabled\" /proc/acpi/wakeup; then echo $device > /proc/acpi/wakeup; fi; done'";
};
};
2026-02-17 20:02:25 +01:00
}