aboutsummaryrefslogtreecommitdiffstats
path: root/Rpmdrake/pkg.pm
diff options
context:
space:
mode:
Diffstat (limited to 'Rpmdrake/pkg.pm')
-rwxr-xr-xRpmdrake/pkg.pm16
1 files changed, 11 insertions, 5 deletions
diff --git a/Rpmdrake/pkg.pm b/Rpmdrake/pkg.pm
index 01e95bb3..35798567 100755
--- a/Rpmdrake/pkg.pm
+++ b/Rpmdrake/pkg.pm
@@ -467,7 +467,6 @@ sub perform_installation { #- (partially) duplicated from /usr/sbin/urpmi :-(
$state->{selected},
clean_all => 0
);
- my $distant_number = scalar keys %$state;
if (!$local_sources && (!$list || !@$list)) {
interactive_msg(
N("Unable to get source packages."),
@@ -508,7 +507,6 @@ sub perform_installation { #- (partially) duplicated from /usr/sbin/urpmi :-(
my $_guard = before_leaving { urpm::removable::try_umounting_removables($urpm) };
Rpmdrake::gurpm::init(1 ? N("Please wait") : N("Package installation..."), N("Initializing..."), transient => $::w->{real_window});
- my $distant_progress;
my $canceled;
my (@errors);
my $something_installed;
@@ -564,12 +562,20 @@ sub perform_installation { #- (partially) duplicated from /usr/sbin/urpmi :-(
\%transaction_sources,
\%error_sources,
callback => sub {
- my ($mode, $file, $percent) = @_;
+ my ($mode, $file, $percent, $total, $eta, $speed) = @_;
if ($mode eq 'start') {
- Rpmdrake::gurpm::label(N("Downloading package `%s' (%s/%s)...",
- basename($file), ++$distant_progress, $distant_number));
+ Rpmdrake::gurpm::label(N("Downloading package `%s'...", basename($file)));
Rpmdrake::gurpm::validate_cancel(but(N("Cancel")), sub { $canceled = 1 });
} elsif ($mode eq 'progress') {
+ Rpmdrake::gurpm::label(
+ join("\n",
+ N("Downloading package `%s'...", basename($file)),
+ (defined $total && defined $eta ?
+ N(" %s%% of %s completed, ETA = %s, speed = %s", $percent, $total, $eta, $speed)
+ : N(" %s%% completed, speed = %s", $percent, $speed)
+ ) =~ /^\s*(.*)/
+ ),
+ );
Rpmdrake::gurpm::progress($percent/100);
} elsif ($mode eq 'end') {
Rpmdrake::gurpm::progress(1);