summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrancois Pons <fpons@mandriva.com>2001-09-03 09:57:53 +0000
committerFrancois Pons <fpons@mandriva.com>2001-09-03 09:57:53 +0000
commitceadca71b97699e27f9ba3be436914096af24f03 (patch)
tree60fa7e684b5ac5e6e617b960bc00673d01b55e79
parentfc537196af8255852d565338b6efd61c75d1d764 (diff)
downloadurpmi-ceadca71b97699e27f9ba3be436914096af24f03.tar
urpmi-ceadca71b97699e27f9ba3be436914096af24f03.tar.gz
urpmi-ceadca71b97699e27f9ba3be436914096af24f03.tar.bz2
urpmi-ceadca71b97699e27f9ba3be436914096af24f03.tar.xz
urpmi-ceadca71b97699e27f9ba3be436914096af24f03.zip
fix devfsd interaction (?) and --auto glitches on removable devices.
-rw-r--r--urpm.pm15
-rwxr-xr-xurpmi4
-rw-r--r--urpmi.spec7
3 files changed, 18 insertions, 8 deletions
diff --git a/urpm.pm b/urpm.pm
index de1466da..d24b3fd5 100644
--- a/urpm.pm
+++ b/urpm.pm
@@ -1576,9 +1576,11 @@ sub upload_source_packages {
#- by mounting some other. try to figure out these directory and
#- mount everything necessary.
unless ($urpm->try_mounting($dir, 'mount')) {
+ $ask_for_medium or
+ $urpm->{fatal}(4, _("medium \"%s\" is not selected", $medium->{name}));
$urpm->try_mounting($dir, 'unmount'); system("eject", $device);
$ask_for_medium->($medium->{name}, $medium->{removable}) or
- $urpm->{fatal}(4, _("removable medium not selected"));
+ $urpm->{fatal}(4, _("medium \"%s\" is not selected", $medium->{name}));
}
}
if (-e $dir) {
@@ -1728,7 +1730,7 @@ sub select_packages_to_upgrade {
});
}
- #- mark all files which are not in /etc/rc.d/ for packages which are already installed but which
+ #- mark all files which are not in /dev or /etc/rc.d/ for packages which are already installed but which
#- are not in the packages list to upgrade.
#- the 'installed' property will make a package unable to be selected, look at select.
rpmtools::db_traverse($db, [ qw(name version release serial files) ], sub {
@@ -1756,7 +1758,8 @@ sub select_packages_to_upgrade {
}
} else {
if (! exists $obsoletedPackages{$p->{name}}) {
- @installedFilesForUpgrade{grep { ($_ !~ m|^/etc/rc.d/| && $_ !~ m|\.la$| &&
+ @installedFilesForUpgrade{grep { ($_ !~ m|^/dev/| && $_ !~ m|^/etc/rc.d/| &&
+ $_ !~ m|\.la$| &&
! -d "$prefix/$_" && ! -l "$prefix/$_") }
@{$p->{files}}} = ();
}
@@ -1784,7 +1787,8 @@ sub select_packages_to_upgrade {
#- all file for package marked for upgrade.
rpmtools::db_traverse_tag($db, "name", [ $pkg->{name} ], [ qw(name files) ], sub {
my ($p) = @_;
- @installedFilesForUpgrade{grep { ($_ !~ m|^/etc/rc.d/| && $_ !~ m|\.la$| &&
+ @installedFilesForUpgrade{grep { ($_ !~ m|^/dev/| && $_ !~ m|^/etc/rc.d/| &&
+ $_ !~ m|\.la$| &&
! -d "$prefix/$_" && ! -l "$prefix/$_") }
@{$p->{files}}} = ();
});
@@ -1815,7 +1819,8 @@ sub select_packages_to_upgrade {
unless ($pkg->{selected}) {
my $toSelect = 0;
$ask_child->("$pkg->{name}-$pkg->{version}-$pkg->{release}.$pkg->{arch}", "files", sub {
- if ($_[0] !~ m|^/etc/rc.d/| && $_ !~ m|\.la$| && exists $installedFilesForUpgrade{$_[0]}) {
+ if ($_[0] !~ m|^/dev/| && $_[0] !~ m|^/etc/rc.d/| &&
+ $_ !~ m|\.la$| && exists $installedFilesForUpgrade{$_[0]}) {
++$toSelect if ! -d "$prefix/$_[0]" && ! -l "$prefix/$_[0]";
}
delete $installedFilesForUpgrade{$_[0]};
diff --git a/urpmi b/urpmi
index 927db389..d645771f 100755
--- a/urpmi
+++ b/urpmi
@@ -269,8 +269,8 @@ foreach (@$local_to_removes) {
unlink $_;
}
-my @sources = $urpm->upload_source_packages($local_sources, $list, ($X ? '' : 'force_local'), sub {
- $auto && !$allow_medium_change and return; #- always refuse if automatic only.
+my @sources = $urpm->upload_source_packages($local_sources, $list, ($X ? '' : 'force_local'),
+ (!$auto || $allow_medium_change) && sub {
my $msg = _("Please insert the medium named \"%s\" on device [%s]", @_);
my $msg2 = _("Press enter when it's done...");
if ($X) {
diff --git a/urpmi.spec b/urpmi.spec
index 5a38a565..b4c84582 100644
--- a/urpmi.spec
+++ b/urpmi.spec
@@ -2,7 +2,7 @@
Name: urpmi
Version: 1.7
-Release: 7mdk
+Release: 8mdk
License: GPL
Source0: %{name}.tar.bz2
Source1: %{name}.logrotate
@@ -114,6 +114,11 @@ rm -f /var/lib/urpmi/depslist
%changelog
+* Mon Sep 3 2001 François Pons <fpons@mandrakesoft.com> 1.7-8mdk
+- updated fr man pages (pablo).
+- avoid eject removable medium if --auto is given.
+- avoid stat in /dev directory.
+
* Fri Aug 31 2001 François Pons <fpons@mandrakesoft.com> 1.7-7mdk
- added --allow-medium-change to urpmi.
- moved autoirpm french man page to autoirpm package.