openrc/init.d.FreeBSD/mixer

48 lines
786 B
Plaintext

#!/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
keywords 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}
}