diff options
author | Suleyman Farajli <suleyman@farajli.net> | 2024-07-24 20:52:35 +0400 |
---|---|---|
committer | Suleyman Farajli <suleyman@farajli.net> | 2024-07-24 20:52:35 +0400 |
commit | a26c65c3be30bfe90e63ea26503707c734973143 (patch) | |
tree | a31c59258d71fb082c7c6ddd874509b9d7d3ebf8 /scripts/setvol | |
parent | a938f6f629df25ac3c3f2a974b28e6a4e14a3755 (diff) |
volume script added
Diffstat (limited to 'scripts/setvol')
-rwxr-xr-x | scripts/setvol | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/scripts/setvol b/scripts/setvol new file mode 100755 index 0000000..4bbc1ec --- /dev/null +++ b/scripts/setvol @@ -0,0 +1,62 @@ +#!/bin/sh + +err() { + printf "${1} \n" + exit 1 +} + +help() { +cat << EOF +$0: Wrapper script to change volume + +options: + -i [Vol] Increase volume by Vol + -d [Vol] Decrease volume by Vol + -s [Vol] Set volume to Vol + -p Show the current volume + -t Toggle between mute and unmute + -h Print this message and exit +EOF +} + +if [ $# != 1 ] && [ $# != 2 ]; then + err "${0}: Invalid usage\nTry \'$0 -h\' for help." +fi + +while getopts "i:d:s:pth" option; do + case "${option}" in + i) + pactl set-sink-volume @DEFAULT_SINK@ +"${OPTARG}"% \ + > /dev/null 2>&1 && exit 0 \ + || err "${0}: Failed to increase" + ;; + d) + pactl set-sink-volume @DEFAULT_SINK@ -"${OPTARG}"% \ + > /dev/null 2>&1 && exit 0 \ + || err "${0}: Failed to decrease" + ;; + s) + pactl set-sink-volume @DEFAULT_SINK@ "${OPTARG}"% \ + > /dev/null 2>&1 && exit 0 \ + || err "${0}: Failed to set" + ;; + p) + pactl get-sink-volume @DEFAULT_SINK@ 2>/dev/null\ + || err "${0}: Failed" + ;; + t) + pactl set-sink-volume @DEFAULT_SINK@ toggle \ + > /dev/null 2>&1 && exit 0 \ + || err "${0}: Failed to toggle" + ;; + h) + help + exit 0 + ;; + *) + err "Try \'${0} -h\' for help" + + ;; + + esac +done |