[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#493139: iso-scan: Allow using shell patterns to select ISO images



Package: iso-scan
Severity: wishlist
Tags: patch

The following patch allows one to select ISO images in iso-scan.  With this
patch grub configurations as exampled below can be used to perform an i386
or amd64 hd-media installation:

        title  New Debian Installation - i386
        root (hd0,0)
        kernel (hd0,0)/images/i386/hd-media/vmlinuz iso-scan/files=*i386*.iso
        initrd (hd0,0)/images/i386/hd-media/initrd.gz

        title  New Debian Installation - amd64
        root (hd0,0)
        kernel (hd0,0)/images/amd64/hd-media/vmlinuz iso-scan/files=*amd64*.iso
        initrd (hd0,0)/images/amd64/hd-media/initrd.gz

Note that, the patch preserves the current behaviour.

-- 
roktas
diff --git a/packages/iso-scan/debian/iso-scan.postinst b/packages/iso-scan/debian/iso-scan.postinst
index da354cc..80b4a3f 100755
--- a/packages/iso-scan/debian/iso-scan.postinst
+++ b/packages/iso-scan/debian/iso-scan.postinst
@@ -112,6 +112,10 @@ modprobe loop >/dev/null || true
 mkdir /cdrom 2>/dev/null || true
 mkdir /hd-media 2>/dev/null || true
 
+db_get iso-scan/files || RET=''
+ISO_FILES="${RET:-'*.[iI][sS][oO]'}"
+log "Using '$ISO_FILES' pattern for ISO files."
+
 log "First pass: Look for ISOs near top-level of each filesystem."
 DEVS="$(list-devices partition; list-devices disk; list-devices maybe-usb-floppy)"
 # Repeat twice if necessary, to accomodate devices that need some
@@ -145,12 +149,14 @@ for i in 1 2; do
 				fi
 				db_subst iso-scan/progress_scan DIRECTORY "$dir/"
 				db_progress INFO iso-scan/progress_scan
-				for iso in $dir/*.iso $dir/*.ISO; do
-					if [ -e $iso ]; then
-						log "Found ISO $iso on $dev"
-						ISO_COUNT=$(expr $ISO_COUNT + 1)
-						try_iso $iso $dev
-					fi
+				for pattern in $ISO_FILES; do
+					for iso in $dir/$pattern; do
+						if [ -e $iso ]; then
+							log "Found ISO $iso on $dev"
+							ISO_COUNT=$(expr $ISO_COUNT + 1)
+							try_iso $iso $dev
+						fi
+					done
 				done
 			fi
 		done

Reply to: