All pastes #1615481 Raw Edit

teuf

public text v1 · immutable
#1615481 ·published 2009-10-12 14:38 UTC
rendered paste body
commit 8a15c85fcfc0ab16134096dc3a1996119c5c6ab8Author: Christophe Fergeau <cfergeau@mandriva.com>Date:   Mon Oct 5 10:45:25 2009 +0200    download all packages firstdiff --git a/urpm/main_loop.pm b/urpm/main_loop.pmindex d8a7ce4..42bcadb 100644--- a/urpm/main_loop.pm+++ b/urpm/main_loop.pm@@ -60,6 +60,47 @@ urpm::cdrom::copy_packages_of_removable_media($urpm,     $callbacks->{copy_removable}); $callbacks->{post_removable} and $callbacks->{post_removable}->(); +my $download_everything_first = 1;+if ($download_everything_first) {+    print "Downloading everything!\n";+    my @error_sources;+    urpm::get_pkgs::download_packages_of_distant_media($urpm,+	$blists,+	\%sources,+	\@error_sources,+	quiet => $options{verbose} < 0,+	callback => $callbacks->{trans_log},+        ask_retry => !$urpm->{options}{auto} && ($callbacks->{ask_retry} || sub {+	    my ($raw_msg, $msg) = @_;+	    if (my $download_errors = delete $urpm->{download_errors}) {+		$raw_msg = join("\n", @$download_errors, '');+	    }+	    $callbacks->{ask_yes_or_no}('', $raw_msg . "\n" . $msg . "\n" . N("Retry?"));+	}),+    );+    if (@error_sources) {+	$_->[0] = urpm::download::hide_password($_->[0]) foreach @error_sources;+	my @bad = grep { $_->[1] eq 'bad' } @error_sources;+	my @missing = grep { $_->[1] eq 'missing' } @error_sources;++	my @msgs;+	if (@missing) {+	    push @msgs, N("Installation failed, some files are missing:\n%s", +			  join("\n", map { "    $_->[0]" } @missing))+	      . "\n" .+	      #-PO: we silently update the string from "You may want to..." to "You may need to..".+	      #-PO: so that translations do not got fuzzy-ed just before the release:+	      N("You may need to update your urpmi database.");+	}+	if (@bad) {+	    push @msgs, N("Installation failed, bad rpms:\n%s",+			  join("\n", map { "    $_->[0]" } @bad));+	}+	return 10;+    }+    print "Everything downloaded\n";+}+ #- now create transaction just before installation, this will save user impression of slowness. #- split of transaction should be disabled if --test is used. urpm::install::build_transaction_set_($urpm, $state,