summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pod/urpme.8.pod5
-rw-r--r--urpm/args.pm1
-rw-r--r--urpme19
3 files changed, 22 insertions, 3 deletions
diff --git a/pod/urpme.8.pod b/pod/urpme.8.pod
index f0d4723d..acfcec1c 100644
--- a/pod/urpme.8.pod
+++ b/pod/urpme.8.pod
@@ -42,6 +42,11 @@ Test deinstallation of packages but do not modify the system.
Force invocation even if some packages do not exist.
+=item B<--noscripts>
+
+Don't execute the scriptlets.
+This is equivalent to B<rpm --noscripts>.
+
=item B<--parallel> I<alias>
Activate distributed execution of urpmi to other machines (it is mandatory
diff --git a/urpm/args.pm b/urpm/args.pm
index fca6bb0e..4ca21538 100644
--- a/urpm/args.pm
+++ b/urpm/args.pm
@@ -145,6 +145,7 @@ my %options_spec = (
auto => \$::auto,
v => \$::verbose,
a => \$::matches,
+ noscripts => \$::noscripts,
},
#- see also below, autogenerated callbacks
diff --git a/urpme b/urpme
index eec50015..78b4af45 100644
--- a/urpme
+++ b/urpme
@@ -27,7 +27,7 @@ use urpm::msg;
$ENV{PATH} = "/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin";
delete @ENV{qw(ENV BASH_ENV IFS CDPATH)};
-our ($root, $test, $parallel, $auto, $matches, $verbose, $maymatch, $usedistrib, $force, @l);
+our ($root, $test, $parallel, $auto, $matches, $verbose, $maymatch, $usedistrib, $force, $noscripts, @l);
my $askok = N("Is this OK?");
# Translator: Add here the keys which might be pressed in the "No"-case.
my $noexpr = N("Nn");
@@ -46,6 +46,7 @@ usage:
") . N(" --force - force invocation even if some packages do not exist.
") . N(" --parallel - distributed urpmi across machines of alias.
") . N(" --root - use another root for rpm removal.
+") . N(" --noscripts - do not execute package scriptlet(s)
") . N(" --use-distrib - configure urpmi on the fly from a distrib tree, useful
to (un)install a chroot with --root option.
") . N(" -v - verbose mode.
@@ -122,8 +123,20 @@ if ($test && $auto) {
#- Warning : the following message is parsed in urpm::parallel_*
print "\n" . N("removing %s", join(' ', sort @toremove)) . "\n";
@l = $parallel
- ? $urpm->parallel_remove(\@toremove, test => $test, force => $force, translate_message => 1)
- : $urpm->install(\@toremove, {}, {}, test => $test, force => $force, translate_message => 1);
+ ? $urpm->parallel_remove(
+ \@toremove,
+ test => $test,
+ force => $force,
+ translate_message => 1,
+ noscripts => $noscripts,
+ )
+ : $urpm->install(
+ \@toremove, {}, {},
+ test => $test,
+ force => $force,
+ translate_message => 1,
+ noscripts => $noscripts,
+ );
#- Warning : the following message is parsed in urpm::parallel_*
@l and $urpm->{fatal}(2, N("Removal failed") . ":\n" . join("\n", map { "\t$_" } @l));