48 lines
		
	
	
		
			785 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			785 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
 | 
						|
	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}
 | 
						|
}
 |