The full package specification syntax
If you do % pacman -help, you'll see that the general form of the command line in Pacman is basically a
switch like -get or -fetch followed by a list of package specifications like BU:Python.
The general form of such a package specification is
{Cache1}:{Cache2}:{Cache3}:...:{CacheN}:{SubdirectoryPath}{Package} | {requirements}
where
- {Cach1}:{Cach2}:{Cach3}:...:{CacheN}: is an optional cache specification. A cache can be
- A symbolic name like BU, Pacman or VDT.
- A URL of a directory on a remote file system like http://physics.bu.edu/pacman/sample_cache/.
- A location in your local file system containing Pacman source code.
- An SSH address of a directory on a remote file system youssef@physics.bu.edu:~youssef/cache containing source code.
- The location of a file with extension .caches containing a list of caches either locally, as a URL or SSH file specification.
- The location of a snapshot file with extension .snap either locally, as a remote URL or SSH file specification.
- {SubdirectoryPath} is an optional subdirectory path which can be used for source caches. If, for
example, you have a source cache FooCache and have package Foo in file Foo.pacman in subdirectory foostuff, you can refer to this as
FooCache:foostuff/Foo.
- {Package} is a package name like Python or the name of a Pacman source code file like Python.pacman.
- The optional | {requirements} is any expression in the Pacman language which the package in question must satisfy. Typical expressions are
version('1.0'), versionGE('1.2'); versionLE('1.4'), tag('graphics'); { version('1.0') OR versionGE('1.3')}.
If you don't specify any caches, Pacman searches the caches in your trusted.caches file in order.