2007-12-05 21:52:20 +05:30
|
|
|
#!/sbin/runscript
|
2008-01-11 21:01:10 +05:30
|
|
|
# Copyright 2007-2008 Roy Marples <roy@marples.name>
|
|
|
|
# All rights reserved. Released under the 2-clause BSD license.
|
2007-12-05 21:52:20 +05:30
|
|
|
|
|
|
|
extra_commands="restore"
|
|
|
|
|
2008-01-11 17:43:46 +05:30
|
|
|
depend()
|
|
|
|
{
|
2008-02-19 19:45:53 +05:30
|
|
|
need localmount
|
|
|
|
keywords nojail
|
2007-12-05 21:52:20 +05:30
|
|
|
}
|
|
|
|
|
2008-01-11 17:43:46 +05:30
|
|
|
restore()
|
|
|
|
{
|
2007-12-05 21:52:20 +05:30
|
|
|
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}"
|
2008-01-11 17:43:46 +05:30
|
|
|
mixer -f "${mixer}" \
|
|
|
|
$(cat "/var/db/${mixer#/dev/}-state") >/dev/null
|
2007-12-05 21:52:20 +05:30
|
|
|
veend $?
|
|
|
|
: $((retval += $?))
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
}
|
|
|
|
|
2008-01-11 17:43:46 +05:30
|
|
|
start()
|
|
|
|
{
|
2007-12-05 21:52:20 +05:30
|
|
|
restore
|
|
|
|
}
|
|
|
|
|
2008-01-11 17:43:46 +05:30
|
|
|
stop()
|
|
|
|
{
|
2007-12-05 21:52:20 +05:30
|
|
|
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}
|
|
|
|
}
|