diff options
-rw-r--r-- | urpm.pm | 11 | ||||
-rw-r--r-- | urpmf.8 | 23 | ||||
-rwxr-xr-x | urpmi | 7 | ||||
-rw-r--r-- | urpmi.8 | 62 | ||||
-rw-r--r-- | urpmi.addmedia.8 | 29 | ||||
-rw-r--r-- | urpmi.removemedia.8 | 22 | ||||
-rw-r--r-- | urpmi.update.8 | 32 | ||||
-rw-r--r-- | urpmq.8 | 54 |
8 files changed, 137 insertions, 103 deletions
@@ -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. @@ -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> @@ -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]"), @_); @@ -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> @@ -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 |