Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/doc/pacman.8.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/pacman.8.txt')
-rw-r--r--doc/pacman.8.txt172
1 files changed, 94 insertions, 78 deletions
diff --git a/doc/pacman.8.txt b/doc/pacman.8.txt
index 3d14a42a..7a13b897 100644
--- a/doc/pacman.8.txt
+++ b/doc/pacman.8.txt
@@ -79,6 +79,11 @@ to determine which packages need upgrading. This behavior operates as follows:
1.0a < 1.0alpha < 1.0b < 1.0beta < 1.0p < 1.0pre < 1.0rc < 1.0
Numeric:
1 < 1.0 < 1.1 < 1.1.1 < 1.2 < 2.0 < 3.0.0
++
+Additionally, version strings can have an 'epoch' value defined that will
+overrule any version comparison (unless the epoch values are equal). This is
+specified in an `epoch:version-rel` format. For example, `2:1.0-1` is always
+greater than `1:3.6-1`.
*-T, \--deptest*::
Check dependencies; this is useful in scripts such as makepkg to check
@@ -104,35 +109,12 @@ to determine which packages need upgrading. This behavior operates as follows:
Options
-------
-*\--asdeps*::
- Install packages non-explicitly; in other words, fake their install reason
- to be installed as a dependency. This is useful for makepkg and other
- build from source tools that need to install dependencies before building
- the package.
-
-*\--asexplicit*::
- Install packages explicitly; in other words, fake their install reason to
- be explicitly installed. This is useful if you want to mark a dependency
- as explicitly installed so it will not be removed by the '\--recursive'
- remove operation.
-
*-b, \--dbpath* <'path'>::
Specify an alternative database location (a typical default is
- ``/var/lib/pacman''). This should not be used unless you know what you are
+ ``{localstatedir}/lib/pacman''). This should not be used unless you know what you are
doing. *NOTE*: if specified, this is an absolute path and the root path is
not automatically prepended.
-*-d, \--nodeps*::
- Skips all dependency checks. Normally, pacman will always check a
- package's dependency fields to ensure that all dependencies are
- installed and there are no package conflicts in the system.
-
-*-f, \--force*::
- Bypass file conflict checks and overwrite conflicting files. If the
- package that is about to be installed contains files that are already
- installed, this option will cause all those files to be overwritten.
- This option should be used with care, ideally not at all.
-
*-r, \--root* <'path'>::
Specify an alternative installation root (default is ``/''). This should
not be used as a way to install software into ``/usr/local'' instead of
@@ -145,19 +127,22 @@ Options
*-v, \--verbose*::
Output paths such as as the Root, Conf File, DB Path, Cache Dirs, etc.
-*\--debug*::
- Display debug messages. When reporting bugs, this option is recommended
- to be used.
+*\--arch* <'arch'>::
+ Specify an alternate architecture.
*\--cachedir* <'dir'>::
Specify an alternative package cache location (a typical default is
- ``/var/cache/pacman/pkg''). Multiple cache directories can be specified,
+ ``{localstatedir}/cache/pacman/pkg''). Multiple cache directories can be specified,
and they are tried in the order they are passed to pacman. *NOTE*: this
is an absolute path, the root path is not automatically prepended.
*\--config* <'file'>::
Specify an alternate configuration file.
+*\--debug*::
+ Display debug messages. When reporting bugs, this option is recommended
+ to be used.
+
*\--logfile* <'file'>::
Specify an alternate log file. This is an absolute path, regardless of
the installation root setting.
@@ -166,6 +151,17 @@ Options
Bypass any and all ``Are you sure?'' messages. It's not a good idea to do
this unless you want to run pacman from a script.
+Transaction Options (apply to '-S', '-R' and '-U')
+--------------------------------------------------
+*-d, \--nodeps*::
+ Skips dependency version checks. Package names are still checked. Normally,
+ pacman will always check a package's dependency fields to ensure that all
+ dependencies are installed and there are no package conflicts in the
+ system. Specify this option twice to skip all dependency checks.
+
+*-k, \--dbonly*::
+ Adds/Removes the database entry only, leaves all files in place.
+
*\--noprogressbar*::
Do not show a progress bar when downloading files. This can be useful
for scripts that call pacman and capture the output.
@@ -174,38 +170,62 @@ Options
If an install scriptlet exists, do not execute it. Do not use this
unless you know what you are doing.
-*\--arch* <'arch'>::
- Specify an alternate architecture.
-
*-p, \--print*::
Only print the targets instead of performing the actual operation (sync,
- remove or upgrade). Use '\--print-format' to specify how targets are
- displayed. The default format string is "%l", which displays url with '-S',
- filename with '-U' and pkgname-pkgver with '-R'.
+ remove or upgrade). Use '\--print-format' to specify how targets are
+ displayed. The default format string is "%l", which displays URLs with
+ '-S', filenames with '-U' and pkgname-pkgver with '-R'.
*\--print-format* <'format'>::
Specify a printf-like format to control the output of the '\--print'
- operation. The possible are attributes are : %n for pkgname, %v for pkgver, %l
- for location, %r for repo and %s for size.
+ operation. The possible attributes are: %n for pkgname, %v for pkgver,
+ %l for location, %r for repo and %s for size.
+
+Upgrade Options (apply to '-S' and '-U')[[UO]]
+--------------------------------------------
+*-f, \--force*::
+ Bypass file conflict checks and overwrite conflicting files. If the
+ package that is about to be installed contains files that are already
+ installed, this option will cause all those files to be overwritten.
+ This option should be used with care, ideally not at all.
+
+*\--asdeps*::
+ Install packages non-explicitly; in other words, fake their install reason
+ to be installed as a dependency. This is useful for makepkg and other
+ build from source tools that need to install dependencies before building
+ the package.
+
+*\--asexplicit*::
+ Install packages explicitly; in other words, fake their install reason to
+ be explicitly installed. This is useful if you want to mark a dependency
+ as explicitly installed so it will not be removed by the '\--recursive'
+ remove operation.
+
+*\--ignore* <'package'>::
+ Directs pacman to ignore upgrades of package even if there is one
+ available. Multiple packages can be specified by separating them
+ with a comma.
+
+*\--ignoregroup* <'group'>::
+ Directs pacman to ignore upgrades of all packages in 'group' even if
+ there is one available. Multiple groups can be specified by
+ separating them with a comma.
Query Options[[QO]]
-------------------
*-c, \--changelog*::
- View the ChangeLog of a package. Not every package will provide one but
- it will be shown if available.
+ View the ChangeLog of a package if it exists.
*-d, \--deps*::
Restrict or filter output to packages installed as dependencies. This
- option can be combined with '-t' for listing real orphans- packages that
+ option can be combined with '-t' for listing real orphans - packages that
were installed as dependencies but are no longer required by any
- installed package. ('-Qdt' is equivalent to the pacman 3.0.X '-Qe'
- option.)
+ installed package.
*-e, \--explicit*::
- Restrict or filter output to packages explicitly installed. This option
- can be combined with '-t' to list top-level packages- those packages
- that were explicitly installed but are not required by any other
- package. ('-Qet' is equivalent to the pacman 2.9.X '-Qe' option.)
+ Restrict or filter output to explicitly installed packages. This option
+ can be combined with '-t' to list explicitly installed packages which
+ are not required by any other package.
*-g, \--groups*::
Display all packages that are members of a named group. If a name is not
@@ -232,8 +252,8 @@ Query Options[[QO]]
and installed with '\--upgrade'.
*-o, \--owns* <'file'>::
- Search for the package that owns file. The path can be relative or
- absolute.
+ Search for packages that own the specified file(s). The path can be
+ relative or absolute and one or more files can be specified.
*-p, \--file*::
Signifies that the package supplied on the command line is a file and
@@ -251,10 +271,9 @@ Query Options[[QO]]
rather than names and versions.
*-s, \--search* <'regexp'>::
- This will search each locally-installed package for names or
- descriptions that match `regexp`. When you include multiple search
- terms, only packages with descriptions matching ALL of those terms will
- be returned.
+ Search each locally-installed package for names or descriptions that
+ match `regexp`. When including multiple search terms, only packages
+ with descriptions matching ALL of those terms are returned.
*-t, \--unrequired*::
Restrict or filter output to packages not required by any currently
@@ -274,9 +293,6 @@ Remove Options[[RO]]
or more target packages. This operation is recursive, and must be used
with care since it can remove many potentially needed packages.
-*-k, \--dbonly*::
- Removes the database entry only. Leaves all files in place.
-
*-n, \--nosave*::
Instructs pacman to ignore file backup designations. Normally, when a
file is removed from the system the database is checked to see if the
@@ -290,7 +306,7 @@ Remove Options[[RO]]
orphans. If you want to omit condition (B), pass this option twice.
*-u, \--unneeded*::
- Removes the targets that are not required by any other packages.
+ Removes targets that are not required by any other packages.
This is mostly useful when removing a group without using the '-c' option,
to avoid breaking any dependencies.
@@ -352,36 +368,17 @@ linkman:pacman.conf[5].
the same operation.
*-w, \--downloadonly*::
- Retrieve all packages from the server, but do not install/upgrade
- anything.
+ Retrieve all packages from the server, but do not install/upgrade anything.
*-y, \--refresh*::
Download a fresh copy of the master package list from the server(s)
defined in linkman:pacman.conf[5]. This should typically be used each time
you use '\--sysupgrade' or '-u'. Passing two '\--refresh' or '-y' flags
- will force a refresh of all package lists even if they are thought to be up
+ will force a refresh of all package lists even if they appear to be up
to date.
*\--needed*::
- Don't reinstall the targets that are already up-to-date.
-
-*\--ignore* <'package'>::
- Directs pacman to ignore upgrades of package even if there is one
- available. Multiple packages can be specified by separating them
- with a comma.
-
-*\--ignoregroup* <'group'>::
- Directs pacman to ignore upgrades of all packages in 'group' even if
- there is one available. Multiple groups can be specified by
- separating them with a comma.
-
-
-Upgrade Options[[UO]]
---------------------
-*-k, \--dbonly*::
- Adds the database entries for the specified packages but do not install any
- of the files. On an upgrade operation, the existing package and all files
- will be removed and the database entry for the new package will be added.
+ Don't reinstall the targets that are already up to date.
Handling Config Files[[HCF]]
@@ -394,7 +391,7 @@ actual file existing on the filesystem. After comparing these 3 hashes, the
follow scenarios can result:
original=X, current=X, new=X::
- All three files are the same, so overwrites are not an issue Install the
+ All three files are the same, so overwrites are not an issue. Install the
new file.
original=X, current=X, new=Y::
@@ -415,6 +412,25 @@ original=X, current=Y, new=Z::
necessary changes into the original file.
+Examples
+--------
+
+pacman -Ss ne.hack::
+ Search for regexp "ne.hack" in package database.
+
+pacman -S gpm::
+ Download and install gpm including dependencies.
+
+pacman -U /home/user/ceofhack-0.6-1-x86_64.pkg.tar.gz::
+ Install ceofhack-0.6-1 package from a local file.
+
+pacman -Syu::
+ Update package list and upgrade all packages afterwards.
+
+pacman -Syu gpm::
+ Update package list, upgrade all packages, and then install gpm if it
+ wasn't already installed.
+
Configuration
-------------
See linkman:pacman.conf[5] for more details on configuring pacman using the