From 454c11f17a6955ff6d8601880fc42fc498f7343b Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Thu, 5 Mar 2020 15:48:37 +0100 Subject: add support for --reinstall Needs perl-URPM-5.25 (it won't work with rpm < 4.12.x) --- urpm/args.pm | 1 + urpm/install.pm | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'urpm') diff --git a/urpm/args.pm b/urpm/args.pm index 7207a069..26c07f0b 100644 --- a/urpm/args.pm +++ b/urpm/args.pm @@ -99,6 +99,7 @@ my %options_spec = ( $options{buildrequires} = 1 }, 'buildrequires' => \$options{buildrequires}, 'install-src' => \$::install_src, + reinstall => sub { $urpm->{options}{reinstall} = 1 }, clean => sub { $::clean = 1; $::noclean = 0 }, noclean => sub { $::clean = $urpm->{options}{'pre-clean'} = $urpm->{options}{'post-clean'} = 0; diff --git a/urpm/install.pm b/urpm/install.pm index 68f75a2c..e0d22441 100644 --- a/urpm/install.pm +++ b/urpm/install.pm @@ -230,7 +230,8 @@ sub _schedule_packages { ($true_rpm, $true_pkg) = _apply_delta_rpm($urpm, $mode->{$_}, $mode, $pkg); push @produced_deltas, ($mode->{$_} = $true_rpm); #- fix path } - if ($trans->add($true_pkg || $pkg, update => $update, + if ($urpm->{options}{reinstall} ? $trans->addReinstall($true_pkg || $pkg) : + $trans->add($true_pkg || $pkg, update => $update, $options{excludepath} ? (excludepath => [ split /,/, $options{excludepath} ]) : ())) { $urpm->{debug} and $urpm->{debug}( sprintf('trans: scheduling %s of %s (id=%d, file=%s)', -- cgit v1.2.1