THe main addition here is the menu system that is used to contoll the phone. THere are also some small helper scripts for calls etc.
62 lines
1.4 KiB
Bash
Executable file
62 lines
1.4 KiB
Bash
Executable file
#!/usr/bin/env sh
|
|
|
|
# A simple script to adjust the volume
|
|
# Requires pulse and amixer
|
|
|
|
|
|
function drawBar(){
|
|
local percent="$1";
|
|
|
|
for i in {1..10}; do
|
|
local boxPercent=$(($i*10))
|
|
if [ "$boxPercent" -lt "$percent" ]; then
|
|
echo -n "■"
|
|
elif [ "$boxPercent" -eq "$percent" ]; then
|
|
echo -n "■"
|
|
elif [ "$(($boxPercent-10))" -lt "$percent" ]; then
|
|
echo -n "▣"
|
|
else
|
|
echo -n "□"
|
|
fi
|
|
done
|
|
|
|
}
|
|
|
|
case "$1" in
|
|
"up")
|
|
if type -p pulseaudio-ctl 2> /dev/null; then
|
|
pulseaudio-ctl up
|
|
else
|
|
amixer -q -D default sset Master 5%+ unmute
|
|
fi
|
|
;;
|
|
"down")
|
|
if type -p pulseaudio-ctl 2> /dev/null; then
|
|
pulseaudio-ctl down
|
|
else
|
|
amixer -q -D default sset Master 5%- unmute
|
|
fi
|
|
;;
|
|
"toggle")
|
|
if type -p pulseaudio-ctl 2> /dev/null; then
|
|
pulseaudio-ctl mute
|
|
else
|
|
amixer -q -D default sset Master toggle
|
|
fi
|
|
;;
|
|
esac
|
|
|
|
if type -p pulseaudio-ctl 2> /dev/null; then
|
|
volume="$(pulseaudio-ctl full-status | cut -d ' ' -f1)"
|
|
speakerStatus="$(pulseaudio-ctl full-status | cut -d ' ' -f2 | sed 's/no/on/g')"
|
|
else
|
|
volume="$(amixer -D default sget Master | grep -o '\[.*\%' | head -n 1 | tr -d '[%')"
|
|
speakerStatus="$(amixer -D default sget Master | grep -o '\[\(on\|off\)' | head -n 1 | tr -d '[')"
|
|
fi
|
|
|
|
|
|
if [[ "$speakerStatus" == "on" ]]; then
|
|
command -v notify-send && notify-send -R "/tmp/volume" "Volume" "$(drawBar $volume) ${volume}%"
|
|
else
|
|
command -v notify-send && notify-send -R "/tmp/volume" "Volume" "Muted"
|
|
fi
|