From 971ffcae9bff15eb6ac6723b4d0bba7f7c54bf0f Mon Sep 17 00:00:00 2001 From: Franck Cuny Date: Tue, 5 Apr 2022 17:51:47 -0700 Subject: create a profile for laptop --- modules/services/default.nix | 2 +- modules/services/thermald/default.nix | 10 ++++++++++ modules/services/tlp/default.nix | 24 ++++++++++++++++++++++++ 3 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 modules/services/thermald/default.nix create mode 100644 modules/services/tlp/default.nix (limited to 'modules') diff --git a/modules/services/default.nix b/modules/services/default.nix index 9a5338b..2e04cac 100644 --- a/modules/services/default.nix +++ b/modules/services/default.nix @@ -1 +1 @@ -{ ... }: { imports = [ ./ssh-server ./tailscale ]; } +{ ... }: { imports = [ ./ssh-server ./tailscale ./thermald ./tlp ]; } diff --git a/modules/services/thermald/default.nix b/modules/services/thermald/default.nix new file mode 100644 index 0000000..8325b86 --- /dev/null +++ b/modules/services/thermald/default.nix @@ -0,0 +1,10 @@ +# thermal control management +{ config, lib, ... }: +let cfg = config.my.services.thermald; +in { + options.my.services.thermald = { + enable = lib.mkEnableOption "thermald configuration"; + }; + + config = lib.mkIf cfg.enable { services.thermald = { enable = true; }; }; +} diff --git a/modules/services/tlp/default.nix b/modules/services/tlp/default.nix new file mode 100644 index 0000000..2f818e5 --- /dev/null +++ b/modules/services/tlp/default.nix @@ -0,0 +1,24 @@ +# TLP power management +{ config, lib, ... }: +let cfg = config.my.services.tlp; +in { + options.my.services.tlp = { + enable = lib.mkEnableOption "TLP power management configuration"; + }; + + config = lib.mkIf cfg.enable { + services.tlp = { + enable = true; + + settings = { + # Set CPU scaling aggressively when power is not an issue + CPU_SCALING_GOVERNOR_ON_AC = "performance"; + CPU_SCALING_GOVERNOR_ON_BAT = "powersave"; + + # Keep charge between 60% and 80% to preserve battery life + START_CHARGE_THRESH_BAT0 = 60; + STOP_CHARGE_THRESH_BAT0 = 80; + }; + }; + }; +} -- cgit 1.4.1