]> git.alsa-project.org Git - alsa-utils.git/commitdiff
alsactl: Do not run udev rule before datadir/sbindir are both mounted
authorDavid Henningsson <david.henningsson@canonical.com>
Fri, 13 Jun 2014 08:04:25 +0000 (10:04 +0200)
committerJaroslav Kysela <perex@perex.cz>
Fri, 13 Jun 2014 09:10:03 +0000 (11:10 +0200)
Sometimes 90-alsa-restore.rules is run before /usr is mounted,
and alsactl restore depends on /usr/share/alsa being present.

If /usr/share/alsa is not present, we're so early in the boot
process that alsa-restore.service (or upstart equivalent) will
run later on.

BugLink: https://bugs.launchpad.net/bugs/1289730
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
alsactl/90-alsa-restore.rules.in
alsactl/Makefile.am
configure.ac

index c68119d058398d3e95e59700c1611e02350b0a80..80fc04301dac5c516a5fbf12a2959bd7405b9e77 100644 (file)
@@ -1,4 +1,4 @@
-ACTION=="add", SUBSYSTEM=="sound", KERNEL=="controlC*", KERNELS!="card*", GOTO="alsa_restore_go"
+ACTION=="add", SUBSYSTEM=="sound", KERNEL=="controlC*", KERNELS!="card*", TEST=="@sbindir@", TEST=="@datadir@", GOTO="alsa_restore_go"
 GOTO="alsa_restore_end"
 
 LABEL="alsa_restore_go"
index b8624126e5d764a43d144905a5afd610e38555e3..afbedb363903f97b6ae72cd2a6f4722e682f4335 100644 (file)
@@ -44,6 +44,7 @@ endif
 
 edit = \
        $(SED) -r -e 's,@sbindir\@,$(sbindir),g' \
+                 -e 's,@datadir\@,$(mydatadir),g' \
                  -e 's,@daemonswitch\@,$(ALSACTL_DAEMONSWITCH),g' \
                                                        < $< > $@ || rm $@
 
index 0c98a4f29368906070d4d335240853693cb47633..d169adb5384ac889c4c0bddf220bf2fc4fee5864 100644 (file)
@@ -292,6 +292,7 @@ AC_DEFINE_UNQUOTED(SOUNDSDIR, "$soundsdir", [directory containing sample data])
 
 mydatadir="$dir/alsa"
 AC_DEFINE_UNQUOTED(DATADIR, "$mydatadir", [directory containing alsa configuration])
+AC_SUBST(mydatadir)
 
 AC_ARG_WITH(testsound,
   AS_HELP_STRING([--with-testsound=file], [give the path of test sound file for alsaconf]),