#!/bin/bash
USE_OSD=1                            # boolean, 1 = use osd, 0 = don't use
FONT=-dejavu-*-*-r-*-*-*-*-*-*-m-*-*-*
ALIGN=left
POSSITION=top
COLOUR=yellow
CHANNEL=Master
VOLUME="Głośność: `amixer get $CHANNEL | grep % | awk '{print $5}' | head -1 | sed 's:\[::g;s:\]::g'`"
ERROR="Houston, we've got a syntax error ;)"
 
if [ $USE_OSD -eq 1 ]; then
    showVol() {
        killall osd_cat 2> /dev/null
        echo $VOLUME | osd_cat -f $FONT -A $ALIGN -p $POSSITION -c $COLOUR
    }
    syntaxError() {
        killall osd_cat 2> /dev/null
        echo $ERROR | osd_cat -f $FONT -A $ALIGN -p $POSSITION -c $COLOUR
    }
elif [ $USE_OSD -eq 0 ]; then
    showVol() {
        echo $VOLUME
    }
    syntaxError() {
        echo $ERROR
    }
else
    echo "Masz babo placek... miało być '0' lub '1', komentarze są pisane po to, żeby je czytać ;)"
    exit;
fi
 
 
case $1 in
    "set") amixer set $CHANNEL "$2"% > /dev/null && showVol ;;
    "p") amixer set $CHANNEL "$2"%+ > /dev/null && showVol ;;
    "m") amixer set $CHANNEL "$2"%- > /dev/null && showVol ;;
    "get") showVol ;;
    *) syntaxError ;;
esac


