diff options
author | Roy Marples <roy@marples.name> | 2008-03-02 21:13:21 +0000 |
---|---|---|
committer | Roy Marples <roy@marples.name> | 2008-03-02 21:13:21 +0000 |
commit | a12dbdc6c93a7d63591610378e3e570b7c7d2143 (patch) | |
tree | 22cd968f4bb32bedf82e091c9ffee798d247c51e /init.d.FreeBSD/mixer.in | |
parent | 7c092fbc7904be18510eed08c72cbad974db8adc (diff) |
Don't check for root in prefix.
Diffstat (limited to 'init.d.FreeBSD/mixer.in')
-rw-r--r-- | init.d.FreeBSD/mixer.in | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/init.d.FreeBSD/mixer.in b/init.d.FreeBSD/mixer.in new file mode 100644 index 00000000..b8c8f3af --- /dev/null +++ b/init.d.FreeBSD/mixer.in @@ -0,0 +1,47 @@ +#!/sbin/runscript +# Copyright 2007-2008 Roy Marples <roy@marples.name> +# All rights reserved. Released under the 2-clause BSD license. + +extra_commands="restore" + +depend() +{ + need localmount + keyword nojail +} + +restore() +{ + local mixer= retval=0 + ebegin "Restoring mixer settings" + eindent + for mixer in /dev/mixer*; do + if [ -r "/var/db/${mixer#/dev/}-state" ]; then + vebegin "${mixer}" + mixer -f "${mixer}" \ + $(cat "/var/db/${mixer#/dev/}-state") >/dev/null + veend $? + : $((retval += $?)) + fi + done +} + +start() +{ + restore +} + +stop() +{ + local mixer= retval=0 + ebegin "Saving mixer settings" + eindent + for mixer in /dev/mixer*; do + vebegin "${mixer}" + mixer -f "${mixer}" -s >/var/db/"${mixer#/dev/}"-state + veend $? + : $((retval += $?)) + done + eoutdent + eend ${retval} +} |