From 6a26fb5ff196c6fdcf93d636099607d9c6b900e8 Mon Sep 17 00:00:00 2001 From: Francois Pons Date: Thu, 29 Aug 2002 13:08:36 +0000 Subject: 4.0-9mdk --- man/C/urpmi.8 | 63 ++++++++++++++++++++++++++++++++++++++--------- man/C/urpmi.addmedia.8 | 17 +++++++++++-- man/C/urpmi.removemedia.8 | 17 +++++++++++-- man/C/urpmi.update.8 | 17 +++++++++++-- man/C/urpmq.8 | 31 +++++++++++++++++++++-- urpm.pm | 12 ++++++--- urpmi.spec | 9 ++++++- urpmq | 13 ++++++++-- 8 files changed, 153 insertions(+), 26 deletions(-) diff --git a/man/C/urpmi.8 b/man/C/urpmi.8 index fc7889bd..3b3703ac 100644 --- a/man/C/urpmi.8 +++ b/man/C/urpmi.8 @@ -1,4 +1,4 @@ -.TH urpmi 8 "12 Feb 2002" "MandrakeSoft" "Mandrake Linux" +.TH urpmi 8 "29 Aug 2002" "MandrakeSoft" "Mandrake Linux" .IX urpmi .SH NAME urpmi \- rpm wrapper making installs easier for the user @@ -49,37 +49,65 @@ dependencies only in media marked as update. .IP "\fB\--media\fP" select specific media to use instead of all media available (or update media is \fB--update\fP is used). -.IP "\fB\--auto\fP" +.IP "\fB\--auto\fP" installs all required dependencies without asking. -.IP "\fB\--auto-select\fP" +.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\--fuzzy\fP" +.IP "\fB\--fuzzy\fP" disable fast search on exact package name, ie it will propose all package containing the name even if one has the given name (this is the same as \fB\-y\fP). -.IP "\fB\--src\fP" +.IP "\fB\--src\fP" next package name is a source package and it will select all dependencies if \fBurpmi\fP is run as root or only install source package as simple user (this is the same as \fB\-s\fP). -.IP "\fB\--noclean\fP" -do not remove any package from the cache (/var/cache/urpmi/rpms). -.IP "\fB\--complete\fP" -use parsehdlist server to complete \fB--auto-select\fP selection (should not be -necessary in most cases). +.IP "\fB\--noclean\fP" +do not remove any package from the cache in directory /var/cache/urpmi/rpms. .IP "\fB\--force\fP" assumes yes on all questions. +.IP "\fB\--allow-nodeps\fP" +allow urpmi to ask user to continue installation using no dependencies checking +due to error. By default urpmi exit immediately in such case. +.IP "\fB\--allow-force\fP" +allow urpmi to ask user to continue installation using no dependencies checking +or forced installation due to error. By default urpmi exit immediately in such +case. +.IP "\fB\--parallel\fP" +activate distributed execution of urpmi to other machines (it is mandatory that +urpmi is installed but it is not necessary to have media defined on any +machines). The parameter given after \fB--parallel\fP is an alias name defining +which extension module to use by urpmi (currently \fBurpmi-parallel-ka-run\fP or +\fBurpmi-parallel-ssh\fP) and which machines should be updated, this alias is +defined in the file /etc/urpmi/parallel.cfg as described below. .IP "\fB\--wget\fP" use wget only for downloading distant files. By default curl is used if available or wget instead. .IP "\fB\--curl\fP" use curl only for downloading distant files. By default curl is used if available or wget instead. +.IP "\fB\--proxy\fP" +use specified HTTP proxy where parameter given after options has format +\fB\fP. +.IP "\fB\--proxy-user\fP" +use specified user and password to use for proxy authentication, +format is \fB\fP. +.IP "\fB\--bug\fP" +create a bug report in directory given by next argument, you have to send a +compressed archive of the directory to \fBurpmi\fP maintainer for the bug being +(problably) fixed. +.IP "\fB\--env\fP" +use a different environment directly from a bug report to replay a bug, the +argument is the same argument given to \fB--bug\fP option. .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\--verify-rpm\fP" or "\fB\--no-verify-rpm\fP" +activate (default) or deactivate rpm signature checking. +.IP "\fB\--test\fP" +test (as \fBrpm --test\fP) installation of packages but do not modify the system. .IP "\fB\-a\fP" if multiple packages match the substring given, take them all .IP "\fB\-p\fP" @@ -119,9 +147,22 @@ use \fBurpmi.update -a\fP to generate them. .br Contains media description, previous format from older urpmi is accepted. .PP +/etc/urpmi/parallel.cfg +.br +Contains parallel alias description, format is +\fB::\fP where \fB\fP is +a symbolic name, \fB\fP can be \fBka-run\fP or \fBssh\fP, +\fB\fP is a media list (as \fB--media\fP parameter), +\fB\fP is a specific interface parameter list like "-c ssh +-m node1 -m node2" for \fBka-run\fP extension or "node1:node2" for \fBssh\fP +extension. +.PP /etc/urpmi/skip.list .br -Contains package names that should be not automatically updated. +Contains package expressions that should not be automatically updated. The +format is a list of provide of package (or regular expression if bounded by +slashes (\fB/\fP)) with optional operator and version string, or regular +expression to match the fullname of packages too. .PP /etc/urpmi/inst.list .br diff --git a/man/C/urpmi.addmedia.8 b/man/C/urpmi.addmedia.8 index 44cdd0b5..085f812f 100644 --- a/man/C/urpmi.addmedia.8 +++ b/man/C/urpmi.addmedia.8 @@ -1,4 +1,4 @@ -.TH urpmi.addmedia 8 "12 Feb 2001" "MandrakeSoft" "Mandrake Linux" +.TH urpmi.addmedia 8 "29 Aug 2002" "MandrakeSoft" "Mandrake Linux" .IX urpmi.addmedia .SH NAME urpmi.addmedia \- adds a new rpms media for use with urpmi @@ -89,9 +89,22 @@ use \fBurpmi.update -a\fP to generate them. These files are not mandatory. .br Contains media description, previous format from older urpmi is accepted. .PP +/etc/urpmi/parallel.cfg +.br +Contains parallel alias description, format is +\fB::\fP where \fB\fP is +a symbolic name, \fB\fP can be \fBka-run\fP or \fBssh\fP, +\fB\fP is a media list (as \fB--media\fP parameter), +\fB\fP is a specific interface parameter list like "-c ssh +-m node1 -m node2" for \fBka-run\fP extension or "node1:node2" for \fBssh\fP +extension. +.PP /etc/urpmi/skip.list .br -Contains package names that should be not automatically updated. +Contains package expressions that should not be automatically updated. The +format is a list of provide of package (or regular expression if bounded by +slashes (\fB/\fP)) with optional operator and version string, or regular +expression to match the fullname of packages too. .PP /etc/urpmi/inst.list .br diff --git a/man/C/urpmi.removemedia.8 b/man/C/urpmi.removemedia.8 index 3ff7a239..45ca50a5 100644 --- a/man/C/urpmi.removemedia.8 +++ b/man/C/urpmi.removemedia.8 @@ -1,4 +1,4 @@ -.TH urpmi.removemedia 8 "12 Feb 2001" "MandrakeSoft" "Mandrake Linux" +.TH urpmi.removemedia 8 "29 Aug 2002" "MandrakeSoft" "Mandrake Linux" .IX urpmi.removemedia .SH NAME urpmi.removemedia \- remove a rpms media from the known medias of urpmi @@ -34,9 +34,22 @@ There is one filelist per media(*). .br Contains media description, previous format from older urpmi is accepted. .PP +/etc/urpmi/parallel.cfg +.br +Contains parallel alias description, format is +\fB::\fP where \fB\fP is +a symbolic name, \fB\fP can be \fBka-run\fP or \fBssh\fP, +\fB\fP is a media list (as \fB--media\fP parameter), +\fB\fP is a specific interface parameter list like "-c ssh +-m node1 -m node2" for \fBka-run\fP extension or "node1:node2" for \fBssh\fP +extension. +.PP /etc/urpmi/skip.list .br -Contains package names that should be not automatically updated. +Contains package expressions that should not be automatically updated. The +format is a list of provide of package (or regular expression if bounded by +slashes (\fB/\fP)) with optional operator and version string, or regular +expression to match the fullname of packages too. .PP /etc/urpmi/inst.list .br diff --git a/man/C/urpmi.update.8 b/man/C/urpmi.update.8 index 26b9916b..f849e03c 100644 --- a/man/C/urpmi.update.8 +++ b/man/C/urpmi.update.8 @@ -1,4 +1,4 @@ -.TH urpmi.update 8 "12 Feb 2001" "MandrakeSoft" "Mandrake Linux" +.TH urpmi.update 8 "29 Aug 2002" "MandrakeSoft" "Mandrake Linux" .IX urpmi.update .SH NAME urpmi.update \- Updates packages list for specified medias @@ -51,9 +51,22 @@ use \fBurpmi.update -a\fP to generate them. These files are not mandatory. .br Contains media description, previous format from older urpmi is accepted. .PP +/etc/urpmi/parallel.cfg +.br +Contains parallel alias description, format is +\fB::\fP where \fB\fP is +a symbolic name, \fB\fP can be \fBka-run\fP or \fBssh\fP, +\fB\fP is a media list (as \fB--media\fP parameter), +\fB\fP is a specific interface parameter list like "-c ssh +-m node1 -m node2" for \fBka-run\fP extension or "node1:node2" for \fBssh\fP +extension. +.PP /etc/urpmi/skip.list .br -Contains package names that should be not automatically updated. +Contains package expressions that should not be automatically updated. The +format is a list of provide of package (or regular expression if bounded by +slashes (\fB/\fP)) with optional operator and version string, or regular +expression to match the fullname of packages too. .PP /etc/urpmi/inst.list .br diff --git a/man/C/urpmq.8 b/man/C/urpmq.8 index efb4fe20..a3368ab6 100644 --- a/man/C/urpmq.8 +++ b/man/C/urpmq.8 @@ -1,4 +1,4 @@ -.TH urpmq 8 "12 Feb 2001" "MandrakeSoft" "Mandrake Linux" +.TH urpmq 8 "29 Aug 2002" "MandrakeSoft" "Mandrake Linux" .IX urpmq .SH NAME urpmq \- urpmi database query tool. @@ -38,6 +38,20 @@ extract headers for package selected to standard output. print source url (or file) of all packages selected. .IP "\fB\--force\fP" ignore error of inexistant packages requested. +.IP "\fB\--allow-nodeps\fP" +allow urpmi to ask user to continue installation using no dependencies checking +due to error. By default urpmi exit immediately in such case. +.IP "\fB\--allow-force\fP" +allow urpmi to ask user to continue installation using no dependencies checking +or forced installation due to error. By default urpmi exit immediately in such +case. +.IP "\fB\--parallel\fP" +activate distributed execution of urpmi to other machines (it is mandatory that +urpmi is installed but it is not necessary to have media defined on any +machines). The parameter given after \fB--parallel\fP is an alias name defining +which extension module to use by urpmi (currently \fBurpmi-parallel-ka-run\fP or +\fBurpmi-parallel-ssh\fP) and which machines should be updated, this alias is +defined in the file /etc/urpmi/parallel.cfg as described below. .IP "\fB\-v\fP" activate verbose mode. .IP "\fB\-d\fP" @@ -89,9 +103,22 @@ use \fBurpmi.update -a\fP to generate them. These files are not mandatory. .br Contains media description, previous format from older urpmi is accepted. .PP +/etc/urpmi/parallel.cfg +.br +Contains parallel alias description, format is +\fB::\fP where \fB\fP is +a symbolic name, \fB\fP can be \fBka-run\fP or \fBssh\fP, +\fB\fP is a media list (as \fB--media\fP parameter), +\fB\fP is a specific interface parameter list like "-c ssh +-m node1 -m node2" for \fBka-run\fP extension or "node1:node2" for \fBssh\fP +extension. +.PP /etc/urpmi/skip.list .br -Contains package names that should be not automatically updated. +Contains package expressions that should not be automatically updated. The +format is a list of provide of package (or regular expression if bounded by +slashes (\fB/\fP)) with optional operator and version string, or regular +expression to match the fullname of packages too. .PP /etc/urpmi/inst.list .br diff --git a/urpm.pm b/urpm.pm index 4b19c488..e67dc760 100644 --- a/urpm.pm +++ b/urpm.pm @@ -591,7 +591,6 @@ sub configure { $_->{ignore} = 1; } } - $options{parallel} and unlink "$urpm->{cachedir}/partial/parallel.cz"; foreach (grep { !$_->{ignore} && (!$options{update} || $_->{update}) } @{$urpm->{media} || []}) { delete @{$_}{qw(start end)}; if ($options{callback}) { @@ -617,8 +616,6 @@ sub configure { unless (defined $_->{start} && defined $_->{end}) { $urpm->{error}(_("problem reading synthesis file of medium \"%s\"", $_->{name})); $_->{ignore} = 1; - } else { - $options{parallel} and system "cat '$urpm->{statedir}/synthesis.$_->{hdlist}' >> $urpm->{cachedir}/partial/parallel.cz"; } } } @@ -1638,8 +1635,15 @@ sub resolve_dependencies { require URPM::Resolve; if ($urpm->{parallel_handler}) { + #- build the global synthesis file first. + my $file = "$urpm->{cachedir}/partial/parallel.cz"; + unlink $file; + foreach (@{$urpm->{media}}) { + defined $_->{start} && defined $_->{end} or next; + system "cat '$urpm->{statedir}/synthesis.$_->{hdlist}' >> $file"; + } #- let each node determine what is requested, according to handler given. - $urpm->{parallel_handler}->parallel_resolve_dependencies("$urpm->{cachedir}/partial/parallel.cz", @_); + $urpm->{parallel_handler}->parallel_resolve_dependencies($file, @_); } else { my $db; diff --git a/urpmi.spec b/urpmi.spec index 7ef8be73..d320aae2 100644 --- a/urpmi.spec +++ b/urpmi.spec @@ -2,11 +2,12 @@ Name: urpmi Version: 4.0 -Release: 8mdk +Release: 9mdk License: GPL Source0: %{name}.tar.bz2 Source1: %{name}.logrotate Summary: User mode rpm install +URL: http://cvs.mandrakesoft.com/cgi-bin/cvsweb.cgi/soft/urpmi Requires: eject webfetch perl-DateManip >= 5.40 PreReq: perl-Locale-gettext rpmtools >= 4.3-6mdk perl-URPM >= 0.70-3mdk BuildRequires: bzip2-devel gettext rpm-devel >= 4.0.3 @@ -177,6 +178,12 @@ fi %changelog +* Thu Aug 29 2002 François Pons 4.0-9mdk +- added --list-nodes to list nodes used when in parallel mode. +- moved some initialisation for parallel mode to allow user + execution of --list-nodes. +- updated man pages with newer options. + * Thu Aug 29 2002 François Pons 4.0-8mdk - added --parallel option to urpmq. - allowed test upgrade in parallel mode. diff --git a/urpmq b/urpmq index fbcc63f5..04a486ee 100755 --- a/urpmq +++ b/urpmq @@ -55,6 +55,7 @@ usage: ") . _(" --fuzzy - impose fuzzy search (same as -y). ") . _(" --list - list available packages. ") . _(" --list-media - list available media. +") . _(" --list-nodes - list available nodes when using --parallel. ") . _(" --src - next package is a source package (same as -s). ") . _(" --headers - extract headers for package listed from urpmi db to stdout (root only). @@ -87,6 +88,7 @@ for (@ARGV) { /^--fuzzy$/ and do { $query->{fuzzy} = 1; next }; /^--list$/ and do { $query->{list} = 1; next }; /^--list-media$/ and do { $query->{list_media} = 1; next }; + /^--list-nodes$/ and do { $query->{list_nodes} = 1; next }; /^--src$/ and do { $query->{src} = 1; next }; /^--headers$/ and do { $query->{headers} = 1; next }; /^--sources$/ and do { $query->{sources} = 1; next }; @@ -152,8 +154,15 @@ $urpm->configure(nocheck_access => 1, my $state = {}; my %requested; -if ($query->{list_media}) { - print join "\n", map { $_->{name} } @{$urpm->{media}}; +if ($query->{list_nodes}) { + foreach (keys %{$urpm->{parallel_handler}{nodes} || {}}) { + print "$_\n"; + } + exit 0; +} elsif ($query->{list_media}) { + foreach (@{$urpm->{media}}) { + print "$_->{name}\n"; + } exit 0; } elsif ($query->{list}) { #- if list has been activated, select all... -- cgit v1.2.1