summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--urpm.pm11
-rw-r--r--urpmf.823
-rwxr-xr-xurpmi7
-rw-r--r--urpmi.862
-rw-r--r--urpmi.addmedia.829
-rw-r--r--urpmi.removemedia.822
-rw-r--r--urpmi.update.832
-rw-r--r--urpmq.854
8 files changed, 137 insertions, 103 deletions
diff --git a/urpm.pm b/urpm.pm
index a56b231b..ba9c046b 100644
--- a/urpm.pm
+++ b/urpm.pm
@@ -1211,7 +1211,7 @@ sub deselect_unwanted_packages {
#- have a null list.
sub get_source_packages {
my ($urpm, $packages) = @_;
- my ($error, @local_sources, @list, %select);
+ my ($error, @local_to_removes, @local_sources, @list, %select);
local (*D, *F, $_);
#- examine the local repository, which is trusted.
@@ -1222,8 +1222,11 @@ sub get_source_packages {
#- check version, release and id selected.
#- TODO arch is not checked at this point.
- $pkg->{version} eq $2 && $pkg->{release} eq $3 or next;
- exists $packages->{$pkg->{id}} or next;
+ unless ($pkg->{version} eq $2 && $pkg->{release} eq $3 && exists $packages->{$pkg->{id}}) {
+ #- keep in mind these have to be deleted or space will be tight soon...
+ push @local_to_removes, "$urpm->{cachedir}/rpms/$_";
+ next;
+ }
#- make sure only the first matching is taken...
exists $select{$pkg->{id}} and next; $select{$pkg->{id}} = undef;
@@ -1288,7 +1291,7 @@ sub get_source_packages {
}
}
- $error ? () : ( \@local_sources, \@list );
+ $error ? () : ( \@local_sources, \@list, \@local_to_removes );
}
#- upload package that may need to be uploaded.
diff --git a/urpmf.8 b/urpmf.8
index 7e088044..84ea0e61 100644
--- a/urpmf.8
+++ b/urpmf.8
@@ -1,4 +1,4 @@
-.TH urpmf 8 "05 Sep 2000" "Mandrakesoft" "Linux-Mandrake"
+.TH urpmf 8 "05 Apr 2001" "Mandrakesoft" "Linux-Mandrake"
.IX urpmf
.SH NAME
urpmf \- RPMFind - Finds the RPM package providing the specified file
@@ -28,9 +28,15 @@ There is one filelist per media(*).
Contain information about all known packages, it's a summary of rpm headers.
There is one filelist per media(*).
.PP
+/var/lib/urpmi/synthesis.hdlist.*
+.br
+Contain synthesis information about all known packages built from hdlist files
+that can be used by minimal closure algorithm. If these files are not present
+use \fBurpmi.update -a\fP to generate them. These files are not mandatory.
+.PP
/etc/urpmi/urpmi.cfg
.br
-Contains one line <\fIname\fP> <\fIurl\fP> per media.
+Contains media description, previous format from older urpmi is accepted.
.PP
/var/lib/urpmi/depslist.ordered
.br
@@ -56,15 +62,6 @@ autoirpm-icons(8),
gurpmi(8),
rpmdrake(8)
.SH AUTHOR
-Pascal Rigaux, Mandrakesoft
+Pascal Rigaux, Mandrakesoft <pixel@mandrakesoft.com>
.br
-pixel@mandrakesoft.com
-
-
-
-
-
-
-
-
-
+Francois Pons, Mandrakesoft <fpons@mandrakesoft.com>
diff --git a/urpmi b/urpmi
index 6dcf4e48..5a8a19e7 100755
--- a/urpmi
+++ b/urpmi
@@ -250,11 +250,16 @@ if (!$auto) {
$urpm->read_config;
-my ($local_sources, $list) = $urpm->get_source_packages(\%packages);
+my ($local_sources, $list, $local_to_removes) = $urpm->get_source_packages(\%packages);
unless ($local_sources || $list) {
die("unable to get source packages, aborting");
exit 1;
}
+#- clean cache with file that are not necessary with this transaction.
+#- TODO check not another urpmi is doing the same...
+foreach (@$local_to_removes) {
+ unlink $_;
+}
my @sources = $urpm->upload_source_packages($local_sources, $list, ($X ? '' : 'force_local'), sub {
my $msg = sprintf(_("Please insert the medium named \"%s\" on device [%s]"), @_);
diff --git a/urpmi.8 b/urpmi.8
index 0a9ca09d..4fe25475 100644
--- a/urpmi.8
+++ b/urpmi.8
@@ -1,12 +1,9 @@
-.TH urpmi 8 "05 Sep 2000" "Mandrakesoft" "Linux-Mandrake"
+.TH urpmi 8 "05 Apr 2001" "Mandrakesoft" "Linux-Mandrake"
.IX urpmi
.SH NAME
urpmi \- rpm wrapper making installs easier for the user
.SH SYNOPSIS
-.B urpmi
-[options]
-package_name|rpm_file
-[package_names|rpm_files...]
+.B urpmi [options] [package_names|rpm_files...]
.SH DESCRIPTION
urpmi enables non-superuser install of rpms. In fact, it only authorizes
well-known rpms to be installed. If you want to install local rpm file, you
@@ -21,13 +18,13 @@ and urpmi will:
.br
\- Propose different package names if availables and quit.
.br
-\- If found only one Package corresponding, check wether dependencies are
+\- If found only one package corresponding, check wether dependencies are
already installed or not.
.br
\- If not, propose to install the dependencies and then install all required
dependencies and the package.
.PP
-Note that urpmi handle installations from various medias (ftp, local and
+Note that urpmi handle installations from various medias (ftp, http, local and
nfs volumes, removable medias such as CDROMs) and is able to install
dependencies from a media different from the package's media.
If necessary, urpmi asks you to insert the required media.
@@ -45,14 +42,37 @@ to launch, use autoirpm.
To install all available menu entries of all known packages,
use autoirpm-icons.
.SH OPTION
-.IP "\fB\--auto\fP"
+.IP "\fB\--help\fP"
+print an help message and exit.
+.IP "\fB\--auto\fP"
installs all required dependencies without asking.
+.IP "\fB\--auto-select\fP"
+automatically select all packages that have to be upgraded according to already
+installed packages and packages listed in various media registered.
.IP "\fB\--force\fP"
assumes yes on all questions.
+.IP "\fB\--X\fP"
+use X interface.
+.IP "\fB\--best-output\fP"
+try to use X interface or if not available the standard text interface (using
+rpm).
.IP "\fB\-a\fP"
if multiple packages match the substring given, take them all
+.IP "\fB\-m\fP"
+choose minimun closure of requires (this is the default). This is a relatively
+slow algorithm that tries to minimize the number of package to upgrade
+to only what is really necessary.
+.IP "\fB\-M\fP"
+choose maximal closure of requires. This is the fastest algorithms that try to
+upgrade all requires if they can be upgraded.
+.IP "\fB\-c\fP"
+if maximal closure is used, assume that a package listed mey have wrong or not
+up-to-date dependancies. This cause more package to be upgraded and may correct
+unresolved dependancies on the rpm database.
+.IP "\fB\-q\fP"
+proposes a quiet mode when calling rpm where no upgrade status are printed.
.IP "\fB\-v\fP"
-proposes a verbose mode when calling rpm.
+proposes a verbose mode with various messages.
.SH FILES
/usr/bin/urpmi
.br
@@ -66,11 +86,17 @@ There is one filelist per media(*).
/var/lib/urpmi/hdlist.*
.br
Contain information about all known packages, it's a summary of rpm headers.
-There is one filelist per media(*).
+There is one hdlist per media(*).
+.PP
+/var/lib/urpmi/synthesis.hdlist.*
+.br
+Contain synthesis information about all known packages built from hdlist files
+that can be used by minimal closure algorithm. If these files are not present
+use \fBurpmi.update -a\fP to generate them. These files are not mandatory.
.PP
/etc/urpmi/urpmi.cfg
.br
-Contains one line <\fIname\fP> <\fIurl\fP> per media.
+Contains media description, previous format from older urpmi is accepted.
.PP
/var/lib/urpmi/depslist.ordered
.br
@@ -89,22 +115,12 @@ this group.
urpmi.addmedia(8),
urpmi.update(8),
urpmi.removemedia(8),
-urpmi.update(8),
autoirpm(8),
gurpmi(8),
urpmf(8),
urpmq(8),
rpmdrake(8)
.SH AUTHOR
-Pascal Rigaux, Mandrakesoft
+Pascal Rigaux, Mandrakesoft <pixel@mandrakesoft.com>
.br
-pixel@mandrakesoft.com
-
-
-
-
-
-
-
-
-
+Francois Pons, Mandrakesoft <fpons@mandrakesoft.com>
diff --git a/urpmi.addmedia.8 b/urpmi.addmedia.8
index 296d4094..5da4bd5d 100644
--- a/urpmi.addmedia.8
+++ b/urpmi.addmedia.8
@@ -1,4 +1,4 @@
-.TH urpmi.addmedia 8 "05 Sep 2000" "Mandrakesoft" "Linux-Mandrake"
+.TH urpmi.addmedia 8 "05 Apr 2001" "Mandrakesoft" "Linux-Mandrake"
.IX urpmi.addmedia
.SH NAME
urpmi.addmedia \- adds a new rpms media for use with urpmi
@@ -39,14 +39,10 @@ Where <\fIname\fP> is your reference for the media (e.g. Myrpms).
.PP
Removable device:
.br
-.IP "\fB urpmi.addmedia removable_<\fIdevice\fP>_<\fInumber\fP>://<\fIpath\fP>\fP"
+.IP "\fB urpmi.addmedia removable_<\fIdevice\fP>://<\fIpath\fP>\fP"
<\fIdevice\fP> is the name of your media as specified in the /dev/ directory
(e.g. cdrom, floppy, zip, ...).
.br
-<\fInumber\fP> is used urpmi to choose in what order medias are inserted in
-case of multiple medias install with dependencies. '1' is reserved for the
-origin install medias.
-.br
<\fIpath\fP> is the location of the rpm directory on your machine when media
is mounted.
.PP
@@ -66,9 +62,15 @@ is one filelist per media(*).
Contain information about all known packages, it's a summary of rpm headers.
There is one filelist per media(*).
.PP
+/var/lib/urpmi/synthesis.hdlist.*
+.br
+Contain synthesis information about all known packages built from hdlist files
+that can be used by minimal closure algorithm. If these files are not present
+use \fBurpmi.update -a\fP to generate them. These files are not mandatory.
+.PP
/etc/urpmi/urpmi.cfg
.br
-Contains one line <\fIname\fP> <\fIurl\fP> per media.
+Contains media description, previous format from older urpmi is accepted.
.PP
/var/lib/urpmi/depslist.ordered
.br
@@ -94,15 +96,6 @@ urpmf(8),
urpmq(8),
rpmdrake(8)
.SH AUTHOR
-Pascal Rigaux, Mandrakesoft
+Pascal Rigaux, Mandrakesoft <pixel@mandrakesoft.com>
.br
-pixel@mandrakesoft.com
-
-
-
-
-
-
-
-
-
+Francois Pons, Mandrakesoft <fpons@mandrakesoft.com>
diff --git a/urpmi.removemedia.8 b/urpmi.removemedia.8
index 4b58dae1..4981839a 100644
--- a/urpmi.removemedia.8
+++ b/urpmi.removemedia.8
@@ -1,15 +1,18 @@
-.TH urpmi.removemedia 8 "05 Sep 2000" "Mandrakesoft" "Linux-Mandrake"
+.TH urpmi.removemedia 8 "05 Apr 2001" "Mandrakesoft" "Linux-Mandrake"
.IX urpmi.removemedia
.SH NAME
urpmi.removemedia \- remove a rpms media from the known medias of urpmi
.SH SYNOPSIS
-.B urpmi.removemedia <\fIname\fP>
+.B urpmi.removemedia [options] <\fInames\fP>
.SH DESCRIPTION
urpmi.removemedia removes from all configuration files all references to
the named media and to rpms from that media.
.PP
-<\fIname\fP> is the name you first told to urpmi.addmedia
+<\fInames\fP> is a list of names you first told to urpmi.addmedia
+.SH OPTION
+.IP "\fB\-a\fP"
+Select all media to remove them.
.SH FILES
/usr/bin/urpmi
.br
@@ -52,15 +55,6 @@ urpmf(8),
urpmq(8),
rpmdrake(8)
.SH AUTHOR
-Pascal Rigaux, Mandrakesoft
+Pascal Rigaux, Mandrakesoft <pixel@mandrakesoft.com>
.br
-pixel@mandrakesoft.com
-
-
-
-
-
-
-
-
-
+Francois Pons, Mandrakesoft <fpons@mandrakesoft.com>
diff --git a/urpmi.update.8 b/urpmi.update.8
index 5ce51ce3..fcb899c7 100644
--- a/urpmi.update.8
+++ b/urpmi.update.8
@@ -1,15 +1,18 @@
-.TH urpmi.update 8 "05 Sep 2000" "Mandrakesoft" "Linux-Mandrake"
+.TH urpmi.update 8 "05 Apr 2001" "Mandrakesoft" "Linux-Mandrake"
.IX urpmi.update
.SH NAME
urpmi.update \- Updates packages list for specified medias
.SH SYNOPSIS
-.B urpmi.update <\fIname\fP>
+.B urpmi.update [options] [<\fInames\fP>]
.SH DESCRIPTION
-urpmi.update scans the <\fIname\fP> media to update its packages list.
+urpmi.update scans all the <\fInames\fP> media to update their packages list.
Usefull for ftp location for example.
.PP
-<\fIname\fP> is the name you first told to urpmi.addmedia
+<\fInames\fP> is a list of name you first told to urpmi.addmedia
+.SH OPTION
+.IP "\fB\-a\fP"
+Select all media that are not using a removable device to update them.
.SH FILES
/usr/bin/urpmi
.br
@@ -25,9 +28,15 @@ There is one filelist per media(*).
Contain information about all known packages, it's a summary of rpm headers.
There is one filelist per media(*).
.PP
+/var/lib/urpmi/synthesis.hdlist.*
+.br
+Contain synthesis information about all known packages built from hdlist files
+that can be used by minimal closure algorithm. If these files are not present
+use \fBurpmi.update -a\fP to generate them. These files are not mandatory.
+.PP
/etc/urpmi/urpmi.cfg
.br
-Contains one line <\fIname\fP> <\fIurl\fP> per media.
+Contains media description, previous format from older urpmi is accepted.
.PP
/var/lib/urpmi/depslist.ordered
.br
@@ -52,15 +61,6 @@ autoirpm-icons(8),
gurpmi(8),
rpmdrake(8)
.SH AUTHOR
-Pascal Rigaux, Mandrakesoft
+Pascal Rigaux, Mandrakesoft <pixel@mandrakesoft.com>
.br
-pixel@mandrakesoft.com
-
-
-
-
-
-
-
-
-
+Francois Pons, Mandrakesoft <fpons@mandrakesoft.com>
diff --git a/urpmq.8 b/urpmq.8
index 03431c26..ee163a3c 100644
--- a/urpmq.8
+++ b/urpmq.8
@@ -1,12 +1,9 @@
-.TH urpmq 8 "05 Sep 2000" "Mandrakesoft" "Linux-Mandrake"
+.TH urpmq 8 "05 Apr 2001" "Mandrakesoft" "Linux-Mandrake"
.IX urpmq
.SH NAME
urpmq \- urpmi database query tool.
.SH SYNOPSIS
-.B urpmq
-[options]
-package_name | rpm_file
-[package_names | rpm_files...]
+.B urpmq [options] [package_names | rpm_files...]
.SH DESCRIPTION
urpmq allows querying the urpmi database. It is for you if want to list
available packages in the various media of urpmi, or list dependancies of
@@ -16,18 +13,42 @@ Output format of urpmq is the following according to command line options:
.IP
[group/]package_name[-version][-release]
.SH OPTION
+.IP "\fB\--help\fP"
+print an help message and exit.
+.IP "\fB\--auto-select\fP"
+automatically select all packages that have to be upgraded according to already
+installed packages and packages listed in various media registered.
+.IP "\fB\--headers\fP"
+extract headers for package selected to standard output.
+.IP "\fB\--sources\fP"
+print source url (or file) of all packages selected.
+.IP "\fB\--force\fP"
+ignore error of inexistant packages requested.
+.IP "\fB\-v\fP"
+activate verbose mode.
+.IP "\fB\-d\fP"
+select dependancies (maximal closure).
+.IP "\fB\-u\fP"
+deselect packages if a better version is already installed, this option can be
+used with \fB-d\fP to simulate \fB-M\fP mode of \fBurpmi\fP.
+.IP "\fB\-m\fP"
+choose minimun closure of requires. This is a relatively
+slow algorithm that tries to minimize the number of package to upgrade
+to only what is really necessary.
+.IP "\fB\-M\fP"
+disable minimal closure algorithm so both \fB-d\fP and \fB-u\fP are similar to \fB-M\fP
+mode of \fBurpmi\fP.
+.IP "\fB\-c\fP"
+if maximal closure is used, assume that a package listed mey have wrong or not
+up-to-date dependancies. This cause more package to be upgraded and may correct
+unresolved dependancies on the rpm database.
.IP "\fB\-g\fP"
print group of each packages listed.
-.IP "\fB\-v\fP"
-print version of each packages listed.
.IP "\fB\-r\fP"
-print release of each packages listed.
+print version and release of each packages listed.
.IP "\fB\-d\fP"
print closure of required packages needed by requested packages on command
line.
-.IP "\fB\-u\fP"
-filter the closure of required packages according to packages that need to
-be upgraded on your system.
.SH FILES
/usr/bin/urpmq
.br
@@ -43,9 +64,15 @@ There is one filelist per media(*).
Contain information about all known packages, it's a summary of rpm headers.
There is one filelist per media(*).
.PP
+/var/lib/urpmi/synthesis.hdlist.*
+.br
+Contain synthesis information about all known packages built from hdlist files
+that can be used by minimal closure algorithm. If these files are not present
+use \fBurpmi.update -a\fP to generate them. These files are not mandatory.
+.PP
/etc/urpmi/urpmi.cfg
.br
-Contains one line <\fIname\fP> <\fIurl\fP> per media.
+Contains media description, previous format from older urpmi is accepted.
.PP
/var/lib/urpmi/depslist.ordered
.br
@@ -65,13 +92,12 @@ urpmi(8),
urpmi.addmedia(8),
urpmi.update(8),
urpmi.removemedia(8),
-urpmi.update(8),
autoirpm(8),
gurpmi(8),
urpmf(8),
rpmdrake(8)
.SH AUTHOR
-François Pons, Mandrakesoft
+Francois Pons, Mandrakesoft
.br
fpons@mandrakesoft.com