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