Lines 5-10
Link Here
|
5 |
|
5 |
|
6 |
alsastatedir=/var/lib/alsa |
6 |
alsastatedir=/var/lib/alsa |
7 |
alsascrdir=/etc/alsa.d |
7 |
alsascrdir=/etc/alsa.d |
|
|
8 |
alsahomedir=/run/alsasound |
8 |
|
9 |
|
9 |
extra_commands="save restore" |
10 |
extra_commands="save restore" |
10 |
|
11 |
|
Lines 13-21
Link Here
|
13 |
after bootmisc modules isapnp coldplug hotplug |
14 |
after bootmisc modules isapnp coldplug hotplug |
14 |
} |
15 |
} |
15 |
|
16 |
|
|
|
17 |
mkalsahomedir() { |
18 |
if [ ! -d "$alsahomedir" ] ; then |
19 |
if ! mkdir -p "$alsahomedir"; then |
20 |
eerror "Directory $alsahomedir does not exist and cannot be created" |
21 |
return 1 |
22 |
fi |
23 |
fi |
24 |
} |
25 |
|
16 |
restore() { |
26 |
restore() { |
17 |
ebegin "Restoring Mixer Levels" |
27 |
ebegin "Restoring Mixer Levels" |
18 |
|
28 |
|
|
|
29 |
mkalsahomedir || return 1 |
30 |
|
19 |
if [ ! -r "${alsastatedir}/asound.state" ] ; then |
31 |
if [ ! -r "${alsastatedir}/asound.state" ] ; then |
20 |
ewarn "No mixer config in ${alsastatedir}/asound.state, you have to unmute your card!" |
32 |
ewarn "No mixer config in ${alsastatedir}/asound.state, you have to unmute your card!" |
21 |
eend 0 |
33 |
eend 0 |
Lines 29-35
Link Here
|
29 |
[ -e /dev/snd/controlC${cardnum} ] || sleep 2 |
41 |
[ -e /dev/snd/controlC${cardnum} ] || sleep 2 |
30 |
[ -e /dev/snd/controlC${cardnum} ] || sleep 2 |
42 |
[ -e /dev/snd/controlC${cardnum} ] || sleep 2 |
31 |
[ -e /dev/snd/controlC${cardnum} ] || sleep 2 |
43 |
[ -e /dev/snd/controlC${cardnum} ] || sleep 2 |
32 |
alsactl -I -f "${alsastatedir}/asound.state" restore ${cardnum} \ |
44 |
alsactl -E HOME="${alsahomedir}" -I -f "${alsastatedir}/asound.state" restore ${cardnum} \ |
33 |
|| ewarn "Errors while restoring defaults, ignoring" |
45 |
|| ewarn "Errors while restoring defaults, ignoring" |
34 |
done |
46 |
done |
35 |
|
47 |
|
Lines 49-56
Link Here
|
49 |
save() { |
61 |
save() { |
50 |
ebegin "Storing ALSA Mixer Levels" |
62 |
ebegin "Storing ALSA Mixer Levels" |
51 |
|
63 |
|
|
|
64 |
mkalsahomedir || return 1 |
65 |
|
52 |
mkdir -p "${alsastatedir}" |
66 |
mkdir -p "${alsastatedir}" |
53 |
if ! alsactl -f "${alsastatedir}/asound.state" store; then |
67 |
if ! alsactl -E HOME="${alsahomedir}" -f "${alsastatedir}/asound.state" store; then |
54 |
eerror "Error saving levels." |
68 |
eerror "Error saving levels." |
55 |
eend 1 |
69 |
eend 1 |
56 |
return 1 |
70 |
return 1 |