From baac5918c0a2c32bbc24724d63d7c9b64ffe20ce Mon Sep 17 00:00:00 2001 From: Kopatz <7265381+Kropatz@users.noreply.github.com> Date: Sun, 31 Aug 2025 12:48:35 +0200 Subject: [PATCH] power profiles daemon --- home-manager/hyprland/styles/stats.css | 1 + home-manager/hyprland/waybar.nix | 14 ++++++++- systems/laptop/configuration.nix | 1 + systems/laptop/modules/battery.nix | 41 ++++++++++++++------------ 4 files changed, 37 insertions(+), 20 deletions(-) diff --git a/home-manager/hyprland/styles/stats.css b/home-manager/hyprland/styles/stats.css index c438bb9..4ec615d 100644 --- a/home-manager/hyprland/styles/stats.css +++ b/home-manager/hyprland/styles/stats.css @@ -23,6 +23,7 @@ #custom-amd-gpu, #custom-nvidia, #memory, +#power-profiles-daemon, #network { color: @text; padding: 0 0.5em; diff --git a/home-manager/hyprland/waybar.nix b/home-manager/hyprland/waybar.nix index d904d02..b308fe6 100644 --- a/home-manager/hyprland/waybar.nix +++ b/home-manager/hyprland/waybar.nix @@ -42,7 +42,8 @@ in { "orientation" = "horizontal"; "modules" = [ "network" "cpu" "memory" "temperature" ] ++ lib.optionals osConfig.custom.hardware.nvidia.enable [ "custom/nvidia" ] - ++ lib.optionals osConfig.custom.hardware.amd-gpu.enable [ "custom/amd-gpu" ]; + ++ lib.optionals osConfig.custom.hardware.amd-gpu.enable [ "custom/amd-gpu" ] + ++ lib.optionals osConfig.services.power-profiles-daemon.enable [ "power-profiles-daemon" ]; }; "group/other" = { "orientation" = "horizontal"; @@ -149,6 +150,17 @@ in { }; "status-icons" = { "paused" = "⏸"; }; }; + "power-profiles-daemon" = { + "format" = "{icon}"; + "tooltip-format" = "Power profile: {profile}\nDriver: {driver}"; + "tooltip" = true; + "format-icons" = { + "default" = ""; + "performance" = ""; + "balanced" = ""; + "power-saver" = ""; + }; + }; "custom/nvidia" = { "format" = "{}"; "interval" = 5; diff --git a/systems/laptop/configuration.nix b/systems/laptop/configuration.nix index bfbf311..0204978 100644 --- a/systems/laptop/configuration.nix +++ b/systems/laptop/configuration.nix @@ -68,6 +68,7 @@ services.fprintd.enable = true; hardware.cpu.amd.ryzen-smu.enable = true; environment.systemPackages = with pkgs; [ + nvtopPackages.amd ryzenadj ]; diff --git a/systems/laptop/modules/battery.nix b/systems/laptop/modules/battery.nix index a8224f0..8957026 100644 --- a/systems/laptop/modules/battery.nix +++ b/systems/laptop/modules/battery.nix @@ -3,37 +3,40 @@ { # Better scheduling for CPU cycles - thanks System76!!! - services.system76-scheduler.settings.cfsProfiles.enable = true; + #services.system76-scheduler.settings.cfsProfiles.enable = true; services.upower.enable = true; environment.systemPackages = with pkgs; [ gnome-power-manager powertop ]; # Enable TLP (better than gnomes internal power manager) - services.tlp = { - enable = true; - settings = { - CPU_SCALING_GOVERNOR_ON_AC = "performance"; - CPU_SCALING_GOVERNOR_ON_BAT = "powersave"; + #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_BAT = "balance_power"; - CPU_ENERGY_PERF_POLICY_ON_AC = "performance"; + # #CPU_ENERGY_PERF_POLICY_ON_BAT = "power"; + # CPU_ENERGY_PERF_POLICY_ON_BAT = "balance_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 = 20; + # RADEON_POWER_PROFILE_ON_AC="performance"; + # RADEON_POWER_PROFILE_ON_BAT="battery"; - #Optional helps save long term battery health - #START_CHARGE_THRESH_BAT0 = 40; # 40 and bellow it starts to charge - #STOP_CHARGE_THRESH_BAT0 = 80; # 80 and above it stops charging + # #CPU_MIN_PERF_ON_AC = 0; + # #CPU_MAX_PERF_ON_AC = 100; + # #CPU_MIN_PERF_ON_BAT = 0; + # #CPU_MAX_PERF_ON_BAT = 20; - }; - }; + # #Optional helps save long term battery health + # #START_CHARGE_THRESH_BAT0 = 40; # 40 and bellow it starts to charge + # #STOP_CHARGE_THRESH_BAT0 = 80; # 80 and above it stops charging + + # }; + #}; # Disable GNOMEs power management # 5.5 idle with ff open - services.power-profiles-daemon.enable = false; + services.power-profiles-daemon.enable = true; # Enable powertop #powerManagement.powertop.enable = true;