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