Package: alsa-utils
Version: 1.0.27.2-1
Severity: minor
Tags: patch

Dear maintainers,

in X2Go [1] we develop a thinclient [2] that boots via PXE. This PXE 
environment has
alsa-utils and pulseaudio installed. By some reason, alsa-utils tries to start
pulseaudio during boot and we get these error messages (many of them...):

"""
Failed to create secure directory (//.config/pulse): No such file or directory.
"""

This problem is caused by amixer in /usr/share/alsa/utils.sh not being aware of
any set home directory during processing of the alsa-utils init script.

The attached patch fixes this issue. The thinclient system we currently test is 
built
against a Debian jessie system.

light+love,
Mike

[1] http://wiki.x2go.org
[2] http://code.x2go.org/gitweb?p=x2gothinclient.git;a=summary

-- System Information:
Debian Release: 7.2
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'stable-updates'), (500, 
'proposed-updates')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.2.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages alsa-utils depends on:
ii  kmod            9-3
ii  libasound2      1.0.25-4
ii  libc6           2.13-38
ii  libncursesw5    5.9-10
ii  libsamplerate0  0.1.8-5
ii  libtinfo5       5.9-10
ii  lsb-base        4.1+Debian8+deb7u1
ii  whiptail        0.52.14-11.1

Versions of packages alsa-utils recommends:
ii  alsa-base  1.0.25+3~deb7u1
ii  pciutils   1:3.1.9-6

alsa-utils suggests no packages.

-- no debconf information
diff --git a/debian/init b/debian/init
index b88bac1..0dc8372 100755
--- a/debian/init
+++ b/debian/init
@@ -25,7 +25,7 @@
 
 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
 MYNAME=/etc/init.d/alsa-utils
-ALSACTLHOME=/var/run/alsa
+export ALSACTLHOME=/var/run/alsa
 
 [ -d "$ALSACTLHOME" ] || mkdir -p "$ALSACTLHOME"
 
diff --git a/debian/utils.sh b/debian/utils.sh
index a021331..eca0833 100644
--- a/debian/utils.sh
+++ b/debian/utils.sh
@@ -26,6 +26,9 @@ filter_amixer_output()
 # $CARDOPT
 unmute_and_set_level()
 {
+	if [ -d $ALSACTLHOME ]; then
+		export HOME="$ALSACTLHOME"
+	fi
 	{ [ "$2" ] && [ "$CARDOPT" ] ; } || bugout
 	amixer $CARDOPT -q set "$1" "$2" unmute 2>&1 | filter_amixer_output || :
 	return 0
@@ -35,6 +38,9 @@ unmute_and_set_level()
 # $CARDOPT
 mute_and_zero_level()
 {
+	if [ -d $ALSACTLHOME ]; then
+		export HOME="$ALSACTLHOME"
+	fi
 	{ [ "$1" ] && [ "$CARDOPT" ] ; } || bugout
 	amixer $CARDOPT -q set "$1" "0%" mute 2>&1 | filter_amixer_output || :
 	return 0
@@ -45,6 +51,9 @@ mute_and_zero_level()
 # $CARDOPT
 switch_control()
 {
+	if [ -d $ALSACTLHOME ]; then
+		export HOME="$ALSACTLHOME"
+	fi
 	{ [ "$2" ] && [ "$CARDOPT" ] ; } || bugout
 	amixer $CARDOPT -q set "$1" "$2" 2>&1 | filter_amixer_output || :
 	return 0

Reply via email to