summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrancois Pons <fpons@mandriva.com>2002-08-29 13:08:36 +0000
committerFrancois Pons <fpons@mandriva.com>2002-08-29 13:08:36 +0000
commit6a26fb5ff196c6fdcf93d636099607d9c6b900e8 (patch)
tree9d09dc98e2c493a21b85549308bfaea106b4b8cb
parentf6c7d40924ba941dd18d85446ae980c56cf1367d (diff)
downloadurpmi-6a26fb5ff196c6fdcf93d636099607d9c6b900e8.tar
urpmi-6a26fb5ff196c6fdcf93d636099607d9c6b900e8.tar.gz
urpmi-6a26fb5ff196c6fdcf93d636099607d9c6b900e8.tar.bz2
urpmi-6a26fb5ff196c6fdcf93d636099607d9c6b900e8.tar.xz
urpmi-6a26fb5ff196c6fdcf93d636099607d9c6b900e8.zip
4.0-9mdk
-rw-r--r--man/C/urpmi.863
-rw-r--r--man/C/urpmi.addmedia.817
-rw-r--r--man/C/urpmi.removemedia.817
-rw-r--r--man/C/urpmi.update.817
-rw-r--r--man/C/urpmq.831
-rw-r--r--urpm.pm12
-rw-r--r--urpmi.spec9
-rwxr-xr-xurpmq13
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<proxyhost[:port|1080]>\fP.
+.IP "\fB\--proxy-user\fP"
+use specified user and password to use for proxy authentication,
+format is \fB<user:password>\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<alias>:<interface[(media)]>:<interface_parameter>\fP where \fB<alias>\fP is
+a symbolic name, \fB<interface>\fP can be \fBka-run\fP or \fBssh\fP,
+\fB<media>\fP is a media list (as \fB--media\fP parameter),
+\fB<interface_parameter>\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<alias>:<interface[(media)]>:<interface_parameter>\fP where \fB<alias>\fP is
+a symbolic name, \fB<interface>\fP can be \fBka-run\fP or \fBssh\fP,
+\fB<media>\fP is a media list (as \fB--media\fP parameter),
+\fB<interface_parameter>\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<alias>:<interface[(media)]>:<interface_parameter>\fP where \fB<alias>\fP is
+a symbolic name, \fB<interface>\fP can be \fBka-run\fP or \fBssh\fP,
+\fB<media>\fP is a media list (as \fB--media\fP parameter),
+\fB<interface_parameter>\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<alias>:<interface[(media)]>:<interface_parameter>\fP where \fB<alias>\fP is
+a symbolic name, \fB<interface>\fP can be \fBka-run\fP or \fBssh\fP,
+\fB<media>\fP is a media list (as \fB--media\fP parameter),
+\fB<interface_parameter>\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<alias>:<interface[(media)]>:<interface_parameter>\fP where \fB<alias>\fP is
+a symbolic name, \fB<interface>\fP can be \fBka-run\fP or \fBssh\fP,
+\fB<media>\fP is a media list (as \fB--media\fP parameter),
+\fB<interface_parameter>\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 <fpons@mandrakesoft.com> 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 <fpons@mandrakesoft.com> 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...