summaryrefslogtreecommitdiffstats
path: root/urpm
diff options
context:
space:
mode:
Diffstat (limited to 'urpm')
-rw-r--r--urpm/args.pm3
-rw-r--r--urpm/install.pm4
2 files changed, 5 insertions, 2 deletions
diff --git a/urpm/args.pm b/urpm/args.pm
index cb4d0e9f..049aaafa 100644
--- a/urpm/args.pm
+++ b/urpm/args.pm
@@ -54,6 +54,7 @@ my %options_spec_all = (
'urpmi-root=s' => sub { urpm::set_files($urpm, $_[1]) },
'wait-lock' => \$options{wait_lock},
'use-copied-hdlist' => sub { $urpm->{options}{use_copied_hdlist} = 1 },
+ 'tune-rpm=s' => sub { urpm::set_tune_rpm($urpm, $_[1]) },
);
my %options_spec = (
@@ -423,6 +424,8 @@ sub parse_cmdline {
$options{verbose} >= 0 or $urpm->{info} = sub {};
$options{verbose} > 0 or $urpm->{log} = sub {};
+ $urpm->{tune_rpm} and urpm::tune_rpm($urpm);
+
if ($tool ne 'urpmi.addmedia' && $tool ne 'urpmi.update' &&
$options{probe_with} && !$options{usedistrib}) {
die N("Can't use %s without %s", "--probe-$options{probe_with}", "--use-distrib");
diff --git a/urpm/install.pm b/urpm/install.pm
index 1251c8e0..683047ce 100644
--- a/urpm/install.pm
+++ b/urpm/install.pm
@@ -254,8 +254,8 @@ sub install {
}
unlink @produced_deltas;
- if ($urpm->{root} && !$options{test}) {
- $urpm->{debug} and $urpm->{debug}("workaround bug in rpmlib by removing /var/lib/rpm/__db*");
+ if ($urpm->{root} && !$options{test} || $urpm->{tune_rpm}{private}) {
+ $urpm->{root} && $urpm->{debug} and $urpm->{debug}("workaround bug in rpmlib by removing /var/lib/rpm/__db*");
urpm::sys::clean_rpmdb_shared_regions($urpm->{root});
}