]> git.alsa-project.org Git - alsa-utils.git/commitdiff
alsaconf - prefer /etc/modprobe.d/sound/50-sound.conf
authorTakashi Iwai <tiwai@suse.de>
Wed, 18 Mar 2009 11:10:55 +0000 (12:10 +0100)
committerTakashi Iwai <tiwai@suse.de>
Wed, 18 Mar 2009 11:10:55 +0000 (12:10 +0100)
For recent module-init-tools, prefer /etc/modprobe.d/50-sound.conf
instead of /etc/modprobe.d/sound.  The latest m-i-t version will
complain (and can ignore) files that don't follow the format.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
alsaconf/alsaconf.in

index 6e9ff75708db4579a6503a3effaf6bfa4d137853..ccc1b3710972e9bdf86f92062e20b1d7eb7d36fd 100644 (file)
@@ -291,6 +291,8 @@ esac
 
 # cfgfile = base config file to remove/update the sound setting
 # cfgout = new config file to write the sound setting (if different from $cfgfile)
+cfgout=""
+cfgoldout=""
 if [ -n "$cfgfile" ]; then
   if [ ! -r "$cfgfile" ]; then
     xecho "ERROR: The config file doesn't exist: "
@@ -301,10 +303,22 @@ else
 if [ "$distribution" = "gentoo" ]; then
   cfgfile="/etc/modules.d/alsa"
 elif [ "$kernel" = "new" ]; then
+  cfgfile="/etc/modprobe.conf"
   if [ -d /etc/modprobe.d ]; then
-    cfgout="/etc/modprobe.d/sound"
+    cfgout="/etc/modprobe.d/50-sound.conf"
+    cfgoldout="/etc/modprobe.d/sound"
+    if [ ! -f $cfgout ]; then
+       modver=$(modprobe -V | sed -e's/^module-init-tools version //')
+       case "$modver" in
+       3.[789]*)
+         ;;
+       *)
+         cfgout="/etc/modprobe.d/sound"
+         cfgoldout=""
+         ;;
+       esac
+    fi
   fi
-  cfgfile="/etc/modprobe.conf"
 elif [ "$distribution" = "debian" ]; then
   cfgfile="/etc/modutils/sound"
 elif [ -e /etc/modules.conf ]; then
@@ -818,7 +832,7 @@ ac_config_card () {
        msg=$(xmsg "
 Configuring %s
 Do you want to modify %s (and %s if present)?" $CARD_DRIVER $cfgout $cfgfile)
-        $DIALOG --yesno "$msg" 8 50 || acex 0
+        $DIALOG --yesno "$msg" 10 50 || acex 0
     else
        msg=$(xmsg "
 Configuring %s
@@ -875,6 +889,7 @@ alias sound-slot-0 $CARD_DRIVER" >> $addcfg
     if [ -n "$cfgout" ]; then
        [ ! -r "$cfgfile" ] || cmp -s "$TMP" "$cfgfile" || cat "$TMP" > "$cfgfile"
        cmp -s "$addcfg" "$cfgout" || cat "$addcfg" > "$cfgout"
+       test -n "$cfgoldout" && rm -f "$cfgoldout"
     else
        echo "$ACB
 # --- ALSACONF version $version ---" >> $TMP