1#!/bin/sh
2#
3# $NetBSD: mixerctl,v 1.10 2007/03/16 22:30:22 abs Exp $
4#
5
6# PROVIDE: mixerctl
7# REQUIRE: mountcritremote
8# KEYWORD: shutdown
9
10$_rc_subr_loaded . /etc/rc.subr
11
12name="mixerctl"
13rcvar=$name
14start_cmd="mixerctl_start"
15stop_cmd="mixerctl_stop"
16
17mixerctl_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			case "$setting" in
34			\#*|"")
35				continue
36				;;
37			esac
38			/usr/bin/mixerctl -n -w $setting
39		done < /etc/mixerctl.conf
40	fi
41}
42
43mixerctl_stop()
44{
45	if [ -n "$mixerctl_mixers" ]; then
46		echo -n "Saving mixer settings:"
47		for mix in $mixerctl_mixers; do
48			echo -n " $mix"
49			/usr/bin/mixerctl -d /dev/$mix -a > /var/db/${mix}.conf
50		done
51		echo "."
52	fi
53}
54
55load_rc_config $name
56run_rc_command "$1"
57