aboutsummaryrefslogtreecommitdiff
path: root/sway-de/wob/.local/bin/setvol
diff options
context:
space:
mode:
authorMatt Singleton <matt@xcolour.net>2023-04-02 20:16:45 -0500
committerMatt Singleton <matt@xcolour.net>2023-04-11 16:06:09 -0500
commit5ca60114560f24617d0a82ef230bc11484617800 (patch)
tree471cfb42af8518d262b1b2403971479f2fc65dc0 /sway-de/wob/.local/bin/setvol
parented3b3470003bf3bcb9ea605daf9d8c68458474df (diff)
each program in a sway package
Diffstat (limited to 'sway-de/wob/.local/bin/setvol')
-rwxr-xr-xsway-de/wob/.local/bin/setvol30
1 files changed, 30 insertions, 0 deletions
diff --git a/sway-de/wob/.local/bin/setvol b/sway-de/wob/.local/bin/setvol
new file mode 100755
index 0000000..f8bb4df
--- /dev/null
+++ b/sway-de/wob/.local/bin/setvol
@@ -0,0 +1,30 @@
+#!/bin/bash
+
+set -euo pipefail
+
+wobsock="$XDG_RUNTIME_DIR/wob.sock"
+if [ ! -p "$wobsock" ]; then
+ echo $wobsock
+ echo "communication socket not found"
+ exit 2
+fi
+
+current_volume=$(pactl get-sink-volume @DEFAULT_SINK@ | grep Volume | sed -e 's/.* \([0-9][0-9]*\)%.*/\1/')
+case $1 in
+ up)
+ increment=$(( 5 - ( current_volume % 5 ) ))
+ newvol=$(( current_volume + increment ))
+ if [ $newvol -gt 100 ]; then
+ newvol=100
+ fi
+ pactl set-sink-volume @DEFAULT_SINK@ $newvol%
+ echo $newvol > $wobsock;;
+ down)
+ increment=$(( ( ( current_volume - 1 ) % 5 ) + 1 ))
+ newvol=$(( current_volume - increment ))
+ if [ $newvol -lt 0 ]; then
+ newvol=0
+ fi
+ pactl set-sink-volume @DEFAULT_SINK@ $newvol%
+ echo $newvol > $wobsock;;
+esac