summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2008-10-14 18:13:21 +0000
committerPascal Rigaux <pixel@mandriva.com>2008-10-14 18:13:21 +0000
commit8b1611d36b564ec18181134cd0badb6feae8d27d (patch)
tree8ba66cf9e7db3cf636330100b6cc8edbca8669a2
parent0f1ed6fcc9e75f12069cc7373e2704d0bf951f4d (diff)
downloadurpmi-8b1611d36b564ec18181134cd0badb6feae8d27d.tar
urpmi-8b1611d36b564ec18181134cd0badb6feae8d27d.tar.gz
urpmi-8b1611d36b564ec18181134cd0badb6feae8d27d.tar.bz2
urpmi-8b1611d36b564ec18181134cd0badb6feae8d27d.tar.xz
urpmi-8b1611d36b564ec18181134cd0badb6feae8d27d.zip
- library:
o allow mdkapplet-upgrade-helper to force $MIRRORLIST distro version also allow to set URPMI_ADDMEDIA_REASON (backported from trunk)
-rw-r--r--NEWS3
-rw-r--r--urpm/mirrors.pm9
2 files changed, 11 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index 9adfbb2c..1bcf251b 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,6 @@
+- library:
+ o allow mdkapplet-upgrade-helper to force $MIRRORLIST distro version
+
Version 5.19.7 - 14 October 2008
- gurpmi
diff --git a/urpm/mirrors.pm b/urpm/mirrors.pm
index 1974161e..38c4e532 100644
--- a/urpm/mirrors.pm
+++ b/urpm/mirrors.pm
@@ -135,6 +135,9 @@ sub _load_cache {
$@ and $urpm->{error}("failed to read " . cache_file($urpm) . ": $@");
$_->{nb_uses} = 0 foreach values %$cache;
}
+ if ($ENV{URPMI_ADDMEDIA_PRODUCT_VERSION} && delete $cache->{'$MIRRORLIST'}) {
+ $urpm->{log}('not using cached mirror list $MIRRORLIST since URPMI_ADDMEDIA_PRODUCT_VERSION is set');
+ }
$cache || {};
}
sub _save_cache {
@@ -248,7 +251,11 @@ sub _mandriva_mirrorlist {
my $product_type = lc($product_id->{type}); $product_id =~ s/\s//g;
my $arch = $o_arch || $product_id->{arch};
- "http://api.mandriva.com/mirrors/$product_type.$product_id->{version}.$arch.list";
+ my @para = grep { $_ } $ENV{URPMI_ADDMEDIA_REASON};
+ my $product_version = $ENV{URPMI_ADDMEDIA_PRODUCT_VERSION} || $product_id->{version};
+
+ "http://api.mandriva.com/mirrors/$product_type.$product_version.$arch.list"
+ . (@para ? '?' . join('&', @para) : '');
}
#- heuristic to detect wether it is really a mirrorlist or a simple mirror url: