diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rwxr-xr-x | urpmi | 17 | ||||
-rw-r--r-- | urpmi.spec | 5 |
3 files changed, 23 insertions, 7 deletions
@@ -1,3 +1,11 @@ +2000-04-04 Pixel <pixel@mandrakesoft.com> + + * urpmi: add option --force to ignore errors + +2000-04-03 Pixel <pixel@mandrakesoft.com> + + * urpmi (version_compare): bug fix + 2000-03-26 Pixel <pixel@mandrakesoft.com> * autoirpm.update: adapted to new hdlist format. @@ -16,6 +16,11 @@ if (@ARGV and $ARGV[0] eq '--auto') { shift @ARGV; } +if (@ARGV and $ARGV[0] eq '--force') { + $force = 1; + shift @ARGV; +} + if (@ARGV and $ARGV[0] eq '--X') { $X = 1; shift @ARGV; @@ -31,7 +36,7 @@ while (@ARGV and $ARGV[0] eq '--comment') { shift @ARGV; } -@ARGV or die(_("usage: urpmi [-h] [--auto] [-a] package_name [package_names...]\n")); +@ARGV or die(_("usage: urpmi [-h] [--auto] [--force] [-a] package_name [package_names...]\n")); log_it(scalar localtime, " urpmi called with @ARGV\n"); @@ -80,9 +85,9 @@ foreach (@ARGV) { } else { my $l = $found{$_} || $foundi{$_}; if (@$l == 0) { - warn(_("no package named %s\n", $_)); $ok = 0; + warn(_("no package named %s\n", $_)); $ok = $force; } elsif (@$l > 1 && !$all) { - warn(_("The following packages contain %s: %s\n", $_, join(' ', @$l))); $ok = 0; + warn(_("The following packages contain %s: %s\n", $_, join(' ', @$l))); $ok = $force; } else { push @packages, @$l; } @@ -184,13 +189,13 @@ sub install { m|^/| && !-e $_ and exit 1 foreach @_; #- missing local file print SAVEOUT _("Try installation without cheking dependencies?"), " (Y/n) "; - <STDIN> =~ /n/i and exit 1; + $force or <STDIN> =~ /n/i and exit 1; system("rpm", "-U", "--nodeps", @_); if ($?) { message(_("Installation failed")); print SAVEOUT _("Try installation even more strongly (--force)?"), " (Y/n) "; - <STDIN> =~ /n/i and exit 0; + $force or <STDIN> =~ /n/i and exit 0; system("rpm", "-U", "--nodeps", "--force", @_); } } @@ -255,7 +260,7 @@ sub version_compare { my ($a, $b) = @_; local $_; - while ($a && $b) { + while ($a || $b) { my ($sb, $sa) = map { $1 if $a =~ /^\W*\d/ ? s/^\W*0*(\d+)// : s/^\W*(\D+)// } ($b, $a); $_ = length($sa) cmp length($sb) || $sa cmp $sb and return $_; } @@ -2,7 +2,7 @@ Name: urpmi Version: 1.1 -Release: 4mdk +Release: 5mdk License: GPL Source0: %{name}.tar.bz2 Summary: User mode rpm install @@ -89,6 +89,9 @@ autoirpm.uninstall %changelog +* Tue Apr 4 2000 Pixel <pixel@mandrakesoft.com> 1.1-5mdk +- urpmi: add option --force to ignore errors + * Sun Mar 26 2000 Pixel <pixel@mandrakesoft.com> 1.1-4mdk - autoirpm.update: adapted to new hdlist format |