Quoting Ben Armstrong (sy...@sanctuary.nslug.ns.ca):
> I just built a live image with the daily installer included and
> noticed it still has the bug.  When I checked the
> cdrom-detect.postinst, it is missing this additional line from my
> second patch:
> 
> -mount | grep -q 'on /cdrom' && exit 0
> +mount | grep -q 'on /cdrom' && set_suite_and_codename && exit 0
> 
> So apparently my first version of the patch was inadvertently
> applied instead of the second.  Please fix this.

I think this is more because cdrom-detect hasn't been uploaded since
the fix was committed. From SVN log:

bubu...@mykerinos:~/src/debian/debian-installer/packages/cdrom-detect/debian> 
svn diff -r 64431:64690 cdrom-detect.postinst
Index: cdrom-detect.postinst
===================================================================
--- cdrom-detect.postinst       (révision 64431)
+++ cdrom-detect.postinst       (révision 64690)
@@ -39,6 +39,24 @@
        return $ret
 }
 
+# Set the suite and codename used by base-installer and base-config
+# to the suite/codename that is on the CD. In case there are multiple
+# suites, prefer the one in default-release.
+set_suite_and_codename() {
+       for dir in $(cat /etc/default-release) $(ls -1 /cdrom/dists/); do
+               relfile="/cdrom/dists/$dir/Release"
+               if [ -e $relfile ]; then
+                       suite=$(sed -n 's/^Suite: *//p' "$relfile")
+                       codename=$(sed -n 's/^Codename: *//p' "$relfile")
+                       log "Detected CD with '$suite' ($codename) distribution"
+                       db_set cdrom/suite "$suite"
+                       db_set cdrom/codename "$codename"
+
+                       break
+               fi
+       done
+}
+
 OS=$(udpkg --print-os)
 case "$OS" in
        kfreebsd)
@@ -60,10 +78,11 @@
 esac
  
 # Is a cdrom already mounted? If so, assume it's the right one.
-mount | grep -q 'on /cdrom' && exit 0
+mount | grep -q 'on /cdrom' && set_suite_and_codename && exit 0
 if [ -e /cdrom/.disk/info ]; then
        CDNAME=$(cat /cdrom/.disk/info)
        log "Detected CD '$CDNAME'"
+       set_suite_and_codename
        exit 0
 fi
 
@@ -201,22 +220,8 @@
 done
 db_progress STOP
 
-# Set the suite and codename used by base-installer and base-config
-# to the suite/codename that is on the CD. In case there are multiple
-# suites, prefer the one in default-release.
-for dir in $(cat /etc/default-release) $(ls -1 /cdrom/dists/); do
-       relfile="/cdrom/dists/$dir/Release"
-       if [ -e $relfile ]; then
-               suite=$(sed -n 's/^Suite: *//p' "$relfile")
-               codename=$(sed -n 's/^Codename: *//p' "$relfile")
-               log "Detected CD with '$suite' ($codename) distribution"
-               db_set cdrom/suite "$suite"
-               db_set cdrom/codename "$codename"
+set_suite_and_codename
 
-               break
-       fi
-done
-
 if [ -z "$suite" ]; then
        log "Error reading Release file; unable to determine distribution"
        db_input critical cdrom-detect/no-release || [ $? -eq 30 ]

Attachment: signature.asc
Description: Digital signature

Reply via email to