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

Bug#601670: debootstrap script install base-files and base-passwd depends on them in Packages file's sequence

Package: debootstrap
Version: 1.0.10lenny1
Severity: important
Tags: patch

Submitted By: Qin Bo <kinboster@gmail.com>
Date:   2010-10-28
Initial Package Version: 1.0.25
  Adjust debfor function's internal logic. Change sequnce of read pkg from debpaths and 
read the debfor argument.
  Original logic read the deb path first, then match package, in this way, when runing "in_target 
dpkg --force-depends --install $(debfor "base-files base-passwd")", in debian-installer, run it 
whether is success, will depends the sequence of base-files section and base-passwd section in 
Packages: if section of base-files package is before section of base-passwd package, it will install 
success, if section of base-file package is after section of base-passwd package, it will install failure. 
  Code "$(debfor "base-files base-passwd")", expect install base-files first, but if in Packages
base-passwd's section is after base-files's section, will install base-passwd first, this is obviously not 
what we want. In addition the sequence of the debfor result depend on external Packages file, I think it's 
hard to control.
  Based on above, I change it, read the debfor argument first, then against argument match the deb path, 
this mean against the sequence of debfor argument, to find the deb path in debpaths.

--- debootstrap/debootstrap-1.0.25/functions	2010-09-19 21:34:49.000000000 -0400
+++ debootstrap.new/debootstrap-1.0.25/functions	2010-10-28 12:10:20.000000000 -0400
@@ -392,12 +392,12 @@ download_indices () {
 debfor () {
-	(while read pkg path; do
-		for p in "$@"; do
+	(for p in "$@"; do
+		while read pkg path; do
 			[ "$p" = "$pkg" ] || continue;
 			echo "$path"
-		done
-	 done <"$TARGET/debootstrap/debpaths"
+	 	done <"$TARGET/debootstrap/debpaths"
+	 done

-- System Information:
Debian Release: 5.0.6
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.26-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=zh_CN.UTF-8, LC_CTYPE=zh_CN.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages debootstrap depends on:
ii  binutils            2.18.1~cvs20080103-7 The GNU assembler, linker and bina
ii  wget                1.11.4-2+lenny2      retrieves files from the web

debootstrap recommends no packages.

debootstrap suggests no packages.

-- no debconf information

Reply to: