From 53628003d7be3585e2fb76749ca1bf7b8d32a527 Mon Sep 17 00:00:00 2001 From: omri Date: Tue, 19 Nov 2024 20:18:42 +0200 Subject: [PATCH] polybar: add pipewire buffer size module --- .config/polybar/config.ini | 10 ++++++++-- .config/polybar/pipewire_buffer_size.sh | 18 ++++++++++++++++++ 2 files changed, 26 insertions(+), 2 deletions(-) create mode 100755 .config/polybar/pipewire_buffer_size.sh diff --git a/.config/polybar/config.ini b/.config/polybar/config.ini index 0b201b7..1bfd8d3 100644 --- a/.config/polybar/config.ini +++ b/.config/polybar/config.ini @@ -32,7 +32,7 @@ font-0 = mononoki-12;1 modules-left = ewmh modules-center = date -modules-right = mpd filesystem pulseaudio xkeyboard memory cpu wlan eth +modules-right = mpd filesystem pipewire_buffer_size pulseaudio xkeyboard memory cpu wlan eth cursor-click = pointer cursor-scroll = ns-resize @@ -43,10 +43,16 @@ enable-ipc = true ; wm-restack = generic ; wm-restack = bspwm -; wm-restack = i3 +wm-restack = i3 ; override-redirect = true +[module/pipewire_buffer_size] +type = custom/script +exec = ~/.config/polybar/pipewire_buffer_size.sh +interval = 10 +click-right = ~/.config/polybar/pipewire_buffer_size.sh click + [module/info-hlwm-workspaces] type = custom/script exec = ~/.config/polybar/info-hlwm-workspaces/info-hlwm-workspaces.sh diff --git a/.config/polybar/pipewire_buffer_size.sh b/.config/polybar/pipewire_buffer_size.sh new file mode 100755 index 0000000..b98b1ab --- /dev/null +++ b/.config/polybar/pipewire_buffer_size.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +BUFFER_SIZES=("64" "128" "256" "512" "1024" "2048" "4096") + +current_buffer_size=$(pw-metadata -n settings 0 clock.force-quantum | grep -oP "value:'\K[0-9]+") + +if [[ $1 == "click" ]]; then + new_buffer_size=$(echo "${BUFFER_SIZES[@]}" | tr ' ' '\n' | xmenu) + + if [[ -n $new_buffer_size ]]; then + pw-metadata -n settings 0 clock.force-quantum "$new_buffer_size" + current_buffer_size=$new_buffer_size + fi + + exit 0 +fi + +echo "$current_buffer_size"