eww timings

This commit is contained in:
soraefir
2026-06-14 12:37:21 +02:00
parent 65b88e8c55
commit d5ea865a4e
8 changed files with 38 additions and 33 deletions

View File

@@ -22,7 +22,8 @@ case "$1" in
*)
gen_output
[ -z "$DEV" ] && exit 0
# Poll for changes every 2s (sysfs files don't support inotify reliably)
while true; do sleep 2; gen_output; done
udevadm monitor --udev --subsystem-match=backlight 2>/dev/null | while read -r _; do
gen_output
done
;;
esac

View File

@@ -27,8 +27,8 @@ pipe="$tmp/bt-events"
mkfifo "$pipe"
trap 'rm -rf "$tmp"; kill 0 2>/dev/null' EXIT INT TERM
# Poll every 2s as reliable fallback for missed events
(while true; do sleep 2; echo poll; done) > "$pipe" &
# Poll every 10s as reliable fallback for missed events
(while true; do sleep 10; echo poll; done) > "$pipe" &
# bluetoothctl monitor for reactive device connect/disconnect events
(bluetoothctl monitor 2>/dev/null | grep --line-buffered -E "Powered|Connected|Device") > "$pipe" &

View File

@@ -22,8 +22,8 @@ pipe="$tmp/bt-dev-events"
mkfifo "$pipe"
trap 'rm -rf "$tmp"; kill 0 2>/dev/null' EXIT INT TERM
# Poll every 3s as fallback for missed events
(while true; do sleep 3; echo poll; done) > "$pipe" &
# Poll every 10s as fallback for missed events
(while true; do sleep 10; echo poll; done) > "$pipe" &
# Reactive updates from D-Bus
(bluetoothctl monitor 2>/dev/null | grep --line-buffered -E "Connected|Device|Powered") > "$pipe" &

View File

@@ -1,9 +1,15 @@
#!/usr/bin/env bash
current=$(eww state 2>/dev/null | grep '^power-save:' | awk '{print $2}')
if [ "$current" = "true" ]; then
powerprofilesctl set balanced 2>/dev/null || true
echo false
else
powerprofilesctl set power-saver 2>/dev/null || true
echo true
fi
case "$1" in
status)
powerprofilesctl get | grep -q power-saver && echo true || echo false
;;
*)
if powerprofilesctl get | grep -q power-saver; then
powerprofilesctl set balanced 2>/dev/null || true
echo false
else
powerprofilesctl set power-saver 2>/dev/null || true
echo true
fi
;;
esac

View File

@@ -33,8 +33,8 @@ case "$1" in
mkfifo "$pipe"
trap 'rm -rf "$tmp"; kill 0 2>/dev/null' EXIT INT TERM
# 1s polling fallback
(while true; do sleep 1; echo poll; done) > "$pipe" &
# 2s polling fallback
(while true; do sleep 2; echo poll; done) > "$pipe" &
# PipeWire property-change events (fires on mute/volume change)
(pw-cli -m 2>/dev/null | grep --line-buffered "changed") > "$pipe" &