]> git.proxmox.com Git - grub2.git/blobdiff - debian/postinst.in
Make config_item() more robust
[grub2.git] / debian / postinst.in
index e4adcd49526cf49764929d163a1918b9605b20be..ededae5cbe7d00b3e22a39919fa746a2c75a3311 100644 (file)
@@ -200,7 +200,7 @@ camcontrol_size()
 
 maybe_udevadm()
 {
-  if which udevadm >/dev/null 2>&1; then
+  if command -v udevadm >/dev/null 2>&1; then
     udevadm "$@" || true
   fi
 }
@@ -226,7 +226,7 @@ describe_disk()
         model="$(maybe_udevadm info -n "$disk" -q property | sed -n 's/^DM_NAME=//p')"
         if [ -z "$model" ]; then
           model="$(maybe_udevadm info -n "$disk" -q property | sed -n 's/^MD_NAME=//p')"
-          if [ -z "$model" ] && which dmsetup >/dev/null 2>&1; then
+          if [ -z "$model" ] && command -v dmsetup >/dev/null 2>&1; then
             model="$(dmsetup info -c --noheadings -o name "$disk" 2>/dev/null || true)"
           fi
         fi
@@ -301,7 +301,9 @@ config_item()
 {
   for x in /etc/default/grub /etc/default/grub.d/*.cfg; do
     if [ -e "$x" ]; then
-      . "$x"
+       # Lose any output here so we don't confuse our
+       # caller. The xen packages echo stuff here, Aargh!
+      . "$x" > /dev/null
     fi
   done
   if [ "$(eval echo "\${$1+set}")" = set ]; then
@@ -568,16 +570,21 @@ case "$1" in
             db_go
             db_get "$question"
             failed_devices=
+            echo "@PACKAGE@: Running grub-install ..."
             for i in $RET; do
               real_device="$(readlink -f "${i%,}")"
               if [ ! -e "$real_device" ]; then
                 echo "$real_device does not exist, so cannot grub-install to it!" >&2
                 failed_devices="$failed_devices $real_device"
-              elif grub-install --target=i386-pc --force --no-floppy $real_device ; then
-                # We just installed GRUB 2; then also generate grub.cfg.
-                touch /boot/grub/grub.cfg
               else
-                failed_devices="$failed_devices $real_device"
+                if grub-install --target=i386-pc --force --no-floppy $real_device ; then
+                  echo "  grub-install success for $real_device"
+                  # We just installed GRUB 2; then also generate grub.cfg.
+                  touch /boot/grub/grub.cfg
+                else
+                  echo "  grub-install failure for $real_device"
+                  failed_devices="$failed_devices $real_device"
+                fi
               fi
             done