Package: casper
Version: 1.71+debian-1
Tags: patch, important

When booting from a usb device, some time is needed before the device is
actually visible for the system.  Casper seems to solve this by trying to
detect the device 20 times.  However, if there is no slow part in the
detection (which happens if there is no other device to mount, for example),
those 20 detections are done real fast, and all finished before the device
shows up.  The attached patch adds a "sleep 2" in the loop, so it takes at
least 40 seconds.  That should be enough for everyone. ;-)

At least in my case, where I was booting off a usb hard drive, it didn't work
without the patch, but worked fine with it.

The patch also fixes a bug which led to non-wrapped systems being unable to
boot (that is, the test would always fail).  [ A || B ] is interpreted by bash
as two commands, the second of which will only be executed if the first fails.
In this case, it always will, because the [ does not have a matching ].  To do
OR in test, -o should be used.  I don't think anyone would encounter this
though, due to the rareness of non-wrapped live systems.

Thanks,
Bas

-- 
I encourage people to send encrypted e-mail (see http://www.gnupg.org).
If you have problems reading my e-mail, use a better reader.
Please send the central message of e-mails as plain text
   in the message body, not as HTML and definitely not as MS Word.
Please do not use the MS Word format for attachments either.
For more information, see http://pcbcn10.phys.rug.nl/e-mail.html
diff -ur orig/scripts/casper casper-1.71+debian/scripts/casper
--- orig/scripts/casper 2006-10-20 16:23:22.000000000 +0200
+++ casper-1.71+debian/scripts/casper   2006-10-20 16:26:11.000000000 +0200
@@ -464,7 +464,7 @@
                         ;;
                 esac
             done
-        elif [ "${fstype}" = "squashfs" ||  \
+        elif [ "${fstype}" = "squashfs" -o  \
                 "${fstype}" = "ext2" ]; then
 
             # This is an ugly hack situation, the block device has
@@ -520,6 +520,9 @@
             if [ "${livefs_root}" ]; then
                 break
             fi
+           # Don't go through the checks too fast, the device may need some
+           # time to appear.
+           sleep 2
         done
 
         if [ "$?" -gt 0 ]; then

Attachment: signature.asc
Description: Digital signature

_______________________________________________
Debian-live-devel mailing list
[email protected]
http://lists.alioth.debian.org/mailman/listinfo/debian-live-devel

Reply via email to