GNU/Linux |
CentOS 5.4 |
|
![]() |
rpmcache(8) |
![]() |
rpmcache − Cache RPM Package Headers
rpmcache [ PACKAGE_NAME ... ]
rpmcache walks a file tree, possibly remotely using FTP, filtering paths using glob(7) expressions, reading rpm package headers. The latest (i.e. comparing package epoch/version/release for identical package names and using the build time as a tie breaker) package headers, if they are unique, are cached in an rpm database. The rpm database cache can be used to provide suggested paths to packages that resolve unknown dependencies.
There are no rpmcache specific options, only common rpm options. See the rpmcache usage message for what is currently implemented.
The file tree
path to be searched is configured using rpm macros. The
final path is the concatenation of 5 individual elements.
Here are the macro names used to configure rpmcache,
in the same order that they will be concatenated to build
the file tree path that will be walked:
%_bhpath
The "path" level contains the leading part of the file tree path (or URL) for the file tree to be walked. No glob(7) expressions, here, please.
%_bhcoll
The "collection" level contains a string (or glob(7) expression) to match sub-directories of %_bhpath.
%_bhN |
The "name" level contains a string (or glob(7) expression) to match sub-directories of %_bhcoll. The PACKAGE_NAME arguments are used to construct a glob(7) expression that will match any of specific package names within the Red Hat build system, and are almost certainly not of use to anyone outside of Red Hat. | ||
%_bhVR |
The "version-release" level contains a string (or glob(7) expression) to match sub-directories of %_bhN. | ||
%_bhA |
The "arch" level contains a string (or glob(7) expression) to match sub-directories of %_bhVR. |
The location of
the cache database is also configured using an rpm macro:
%_cache_dbpath
The location of the cache database. The default value is /var/spool/up2date/cache.
The cache
database is identical in format to an rpm database, and can
be used with rpm from the command line. For example,
to use the cache database to provide suggestions for
packages that provide dependencies needed by a package
install, the following macro should be configured in either
/etc/rpm/macros or ~/.rpmmacros:
%_solve_dbpath
The location of the database that is used to provide suggested dependency resolutions.
Example
(minimal) configuration for a Red Hat beehive tree:
%_cache_dbpath /var/spool/up2date/cache
%_solve_dbpath %{_cache_dbpath}
%_bhpath file://localhost/mnt/redhat/beehive/comps/dist
%_bhcoll 7.3
%_bhN
@(basesystem|bash|filesystem|glibc-common|glibc|ldconfig|libtermcap|mktemp|setup|termcap)
%_bhVR *
%_bhA @(i[3456]86|noarch)
Example
(minimal) configuration for a Red Hat FTP tree:
%_cache_dbpath /var/spool/up2date/cache
%_solve_dbpath %{_cache_dbpath}
%_bhpath ftp://localhost/mnt/dist
%_bhcoll @(7.3|7.2|7.1|7.0|6.2|6.1|6.0|5.2|5.1|5.0)
%_bhN @(%{_arch})
%_bhVR *
%_bhA @(i[3456]86|noarch)
Yup. Please file bug reports and RFE’s against the rpm-devel package using bugzilla: http://bugzilla.redhat.com/ <URL:http://bugzilla.redhat.com/>
rpm(8), glob(7),
http://www.rpm.org/ <URL:http://www.rpm.org/>
Jeff Johnson <jbj@redhat.com>
![]() |
rpmcache(8) | ![]() |