From 0a3c52cf2a2c44ccf2c26aae2c18aa99e5d9bbd8 Mon Sep 17 00:00:00 2001 From: Dmitry Voronin Date: Wed, 11 Sep 2024 18:27:04 +0300 Subject: [PATCH] Waybar : Switch custom modules polling to signals. --- home/config/waybar/config/default.nix | 24 ++++++++++++------------ module/PowerlimitThinkpad.nix | 1 + module/Powersave.nix | 1 + package/swayscript/script/Monitor.nix | 4 ++++ 4 files changed, 18 insertions(+), 12 deletions(-) diff --git a/home/config/waybar/config/default.nix b/home/config/waybar/config/default.nix index 6b1b378..bcd6b3d 100644 --- a/home/config/waybar/config/default.nix +++ b/home/config/waybar/config/default.nix @@ -77,11 +77,6 @@ in { on-click-right = "powerlimit toggle"; interval = refreshInterval; }; - "custom/powerlimit" = { - exec = "powerlimit waybar"; - interval = refreshInterval; - on-click-right = "powerlimit toggle"; - }; pulseaudio = { scroll-step = 5; format = "{volume}%{icon}{format_source}"; @@ -132,18 +127,23 @@ in { on-click-right = "powersave toggle"; tooltip = false; }; - "custom/powersave" = { - exec = "powersave waybar"; - interval = refreshInterval; - on-click = "foot -e bash -c btop"; - on-click-right = "powersave toggle"; - }; "custom/display" = { exec = "swayscript monbar"; - interval = refreshInterval; on-click = "sleep 0.1 && swayscript montoggle"; # FIXME: remove sleep when resolved: https://github.com/Alexays/Waybar/issues/216 on-click-right = "sleep 0.1 && swayscript gamingtoggle"; return-type = "json"; + signal = 4; + }; + "custom/powersave" = { + exec = "powersave waybar"; + on-click = "foot -e bash -c btop"; + on-click-right = "powersave toggle"; + signal = 5; + }; + "custom/powerlimit" = { + exec = "powerlimit waybar"; + on-click-right = "powerlimit toggle"; + signal = 6; }; }; } diff --git a/module/PowerlimitThinkpad.nix b/module/PowerlimitThinkpad.nix index ff6ac92..16d1cc4 100644 --- a/module/PowerlimitThinkpad.nix +++ b/module/PowerlimitThinkpad.nix @@ -15,6 +15,7 @@ echo ${toString cfg.onMax} > ${controlFileMax} fi + pkill -RTMIN+6 waybar true } diff --git a/module/Powersave.nix b/module/Powersave.nix index 0ed8862..8dcd2ec 100644 --- a/module/Powersave.nix +++ b/module/Powersave.nix @@ -9,6 +9,7 @@ echo ${cfg.cpu.boost.enableCmd} > ${cfg.cpu.boost.controlFile} fi + pkill -RTMIN+5 waybar true } diff --git a/package/swayscript/script/Monitor.nix b/package/swayscript/script/Monitor.nix index 8dc6a0d..f3da28b 100644 --- a/package/swayscript/script/Monitor.nix +++ b/package/swayscript/script/Monitor.nix @@ -11,6 +11,8 @@ else swaymsg "output \"''${output}\" power on" fi + + pkill -RTMIN+4 waybar } _sway_iterate_sockets toggle } @@ -26,6 +28,8 @@ else swaymsg "output \"''${output}\" adaptive_sync off" fi + + pkill -RTMIN+4 waybar } _sway_iterate_sockets toggle }