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

Bug#408297: should honor mirror/*/proxy when fetching keys for local repositories

Package: apt-setup
Version: 1:0.16
Severity: normal

Bug #348509 added support for local repositories, including fetching the
signing key for each repo.

It seems mirror/*/proxy isn't being honored when fetching the key, since the
environment variable http_proxy isn't being set before wget(1) is called.

Some background: we PXE boot d-i with preseeded configuration. For
installation, machines are numbered into a private network that does not
have direct access to our APT repository. Instead, a proxy is used during
installation. IIRC (it's been a couple of weeks), d-i was leaving this
repository commented out because it wouldn't pass verification without the
signing key. Once I renumbered our repository so it was reachable from the
installation network, this local repo was used by d-i.

Maybe this patch will help? I haven't had a chance to rebuild a d-i image
to verify, but unless something else in the install process is setting
http_proxy, it doesn't seem to be available to wget.

--- 60local.orig	2006-07-25 22:49:31.000000000 +0000
+++ 60local	2007-01-24 16:46:50.000002000 +0000
@@ -32,6 +32,12 @@
 		echo "deb-src $repository" >> $file
 	if [ -n "$key" ]; then
+		protocol=$(echo "$repository" | sed 's/:.*//')
+		db_get mirror/$protocol/proxy
+		proxy="$RET"
+		if [ -n "$proxy" ]; then
+			export http_proxy="$proxy"
+		fi
 		# fetch the key
 		wget "$key" -O "$ROOT/tmp/key$i.pub"
 		# add it to the keyring

-- System Information:
Debian Release: 3.1
Architecture: i386 (i686)
Kernel: Linux 2.6.12-10-xeon
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Reply to: