Home | History | Annotate | Line # | Download | only in rc.d
mixerctl revision 1.9
      1 #!/bin/sh
      2 #
      3 # $NetBSD: mixerctl,v 1.9 2004/10/11 15:00:51 christos Exp $
      4 #
      5 
      6 # PROVIDE: mixerctl
      7 # REQUIRE: mountcritremote
      8 # KEYWORD: shutdown
      9 
     10 $_rc_subr_loaded . /etc/rc.subr
     11 
     12 name="mixerctl"
     13 rcvar=$name
     14 start_cmd="mixerctl_start"
     15 stop_cmd="mixerctl_stop"
     16 
     17 mixerctl_start()
     18 {
     19 	if [ -n "$mixerctl_mixers" ]; then
     20 		echo -n "Restoring mixer settings:"
     21 		for mix in $mixerctl_mixers; do
     22 			if [ -s /var/db/${mix}.conf ]; then
     23 				echo -n " $mix"
     24 				/usr/bin/mixerctl -d /dev/$mix -n -w \
     25 					$(/bin/cat /var/db/${mix}.conf)
     26 			fi
     27 		done
     28 		echo "."
     29 	fi
     30 	if [ -r /etc/mixerctl.conf ]; then
     31 		echo "Setting mixerctl variables..."
     32 		while read setting; do
     33 			[ -z "$setting" ] || /usr/bin/mixerctl -n -w $setting
     34 		done < /etc/mixerctl.conf
     35 	fi
     36 }
     37 
     38 mixerctl_stop()
     39 {
     40 	if [ -n "$mixerctl_mixers" ]; then
     41 		echo -n "Saving mixer settings:"
     42 		for mix in $mixerctl_mixers; do
     43 			echo -n " $mix"
     44 			/usr/bin/mixerctl -d /dev/$mix -a > /var/db/${mix}.conf
     45 		done
     46 		echo "."
     47 	fi
     48 }
     49 
     50 load_rc_config $name
     51 run_rc_command "$1"
     52