apt-cache

APT-CACHE(8)                                                      APT-CACHE(8)



NAME
       apt-cache - APT package handling utility -- cache manipulator

SYNOPSIS
       apt-cache [ -hvsn ] [ -o=config string ] [ -c=file ] { add  file ... |
       gencaches | showpkg  pkg ... | showsrc  pkg ... | stats | dump |
       dumpavail | unmet | search  regex | show  pkg ... | depends  pkg ... |
       whatdepends  pkg ... | pkgnames  prefix | dotty  pkg ... | policy  pkgs
       ... }


DESCRIPTION
       apt-cache performs a variety of operations on APT's package cache. apt-
       cache does not manipulate the state of the system but does provide
       operations to search and generate interesting output from the package
       metadata.

       Unless the -h, or --help option is given, one of the commands below
       must be present.

       add file(s)
              add adds the named package index files to the package cache.
              This is for debugging only.

       gencaches
              gencaches performs the same operation as apt-get check. It
              builds the source and package caches from the sources in
              sources.list(5) and from /var/lib/dpkg/status.

       showpkg pkg(s)
              showpkg displays information about the packages listed on the
              command line. Remaining arguments are package names. The
              available versions and reverse dependencies of each package
              listed are listed, as well as forward dependencies for each
              version. Forward (normal) dependencies are those packages upon
              which the package in question depends; reverse dependencies are
              those packages that depend upon the package in question. Thus,
              forward dependencies must be satisfied for a package, but
              reverse dependencies need not be.  For instance, apt-cache
              showpkg libreadline2 would produce output similar to the
              following:


              Package: libreadline2
              Versions: 2.1-12(/var/lib/apt/lists/foo_Packages),
              Reverse Depends:
                libreadlineg2,libreadline2
                libreadline2-altdev,libreadline2
              Dependencies:
              2.1-12 - libc5 (2 5.4.0-0) ncurses3.0 (0 (null))
              Provides:
              2.1-12 -
              Reverse Provides:

              Thus it may be seen that libreadline2, version 2.1-12, depends
              on libc5 and ncurses3.0 which must be installed for libreadline2
              to work.  In turn, libreadlineg2 and libreadline2-altdev depend
              on libreadline2. If libreadline2 is installed, libc5 and
              ncurses3.0 (and ldso) must also be installed; libreadlineg2 and
              libreadline2-altdev do not have to be installed. For the
              specific meaning of the remainder of the output it is best to
              consult the apt source code.

       stats  stats displays some statistics about the cache.  No further
              arguments are expected. Statistics reported are:

              • Total package names is the number of package names found in
                the cache.

              • Normal packages is the number of regular, ordinary package
                names; these are packages that bear a one-to-one
                correspondence between their names and the names used by other
                packages for them in dependencies. The majority of packages
                fall into this category.

              • Pure virtual packages is the number of packages that exist
                only as a virtual package name; that is, packages only
                "provide" the virtual package name, and no package actually
                uses the name. For instance, "mail-transport-agent" in the
                Debian GNU/Linux system is a pure virtual package; several
                packages provide "mail-transport-agent", but there is no
                package named "mail-transport-agent".

              • Single virtual packages is the number of packages with only
                one package providing a particular virtual package. For
                example, in the Debian GNU/Linux system, "X11-text-viewer" is
                a virtual package, but only one package, xless, provides
                "X11-text-viewer".

              • Mixed virtual packages is the number of packages that either
                provide a particular virtual package or have the virtual
                package name as the package name. For instance, in the Debian
                GNU/Linux system, "debconf" is both an actual package, and
                provided by the debconf-tiny package.

              • Missing is the number of package names that were referenced in
                a dependency but were not provided by any package. Missing
                packages may be in evidence if a full distribution is not
                accessed, or if a package (real or virtual) has been dropped
                from the distribution. Usually they are referenced from
                Conflicts statements.

              • Total distinct versions is the number of package versions
                found in the cache; this value is therefore at least equal to
                the number of total package names. If more than one
                distribution (both "stable" and "unstable", for instance), is
                being accessed, this value can be considerably larger than the
                number of total package names.

              • Total dependencies is the number of dependency relationships
                claimed by all of the packages in the cache.

       showsrc pkg(s)
              showsrc displays all the source package records that match the
              given package names. All versions are shown, as well as all
              records that declare the name to be a Binary.

       dump   dump shows a short listing of every package in the cache. It is
              primarily for debugging.

       dumpavail
              dumpavail prints out an available list to stdout. This is
              suitable for use with dpkg(8) and is used by the dselect(8)
              method.

       unmet  unmet displays a summary of all unmet dependencies in the
              package cache.

       show pkg(s)
              show performs a function similar to dpkg --print-availi; it
              displays the package records for the named packages.

       search regex [ regex ... ]
              search performs a full text search on all available package
              lists for the regex pattern given. It searches the package names
              and the descriptions for an occurrence of the regular expression
              and prints out the package name and the short description. If
              --full is given then output identical to show is produced for
              each matched package, and if --names-only is given then the long
              description is not searched, only the package name is.

              Separate arguments can be used to specify multiple search
              patterns that are and'ed together.

       depends pkg(s)
              depends shows a listing of each dependency a package has and all
              the possible other packages that can fulfill that dependency.

       whatdepends pkg(s)
              whatdepends shows a listing of what depends on a package.

       pkgnames [ prefix ]
              This command prints the name of each package in the system. The
              optional argument is a prefix match to filter the name list. The
              output is suitable for use in a shell tab complete function and
              the output is generated extremely quickly. This command is best
              used with the --generate option.

       dotty pkg(s)
              dotty takes a list of packages on the command line and generates
              output suitable for use by dotty from the GraphViz
              <URL:http://www.research.att.com/sw/tools/graphviz/> package.
              The result will be a set of nodes and edges representing the
              relationships between the packages. By default the given
              packages will trace out all dependent packages; this can produce
              a very large graph.  To limit the output to only the packages
              listed on the command line, set the APT::Cache::GivenOnly
              option.

              The resulting nodes will have several shapes; normal packages
              are boxes, pure provides are triangles, mixed provides are
              diamonds, missing packages are hexagons. Orange boxes mean
              recursion was stopped [leaf packages], blue lines are pre-
              depends, green lines are conflicts.

              Caution, dotty cannot graph larger sets of packages.

       policy [ pkg(s) ]
              policy is ment to help debug issues relating to the preferences
              file. With no arguments it will print out the priorities of each
              source. Otherwise it prints out detailed information about the
              priority selection of the named package.

OPTIONS
       All command line options may be set using the configuration file, the
       descriptions indicate the configuration option to set. For boolean
       options you can override the config file by using something like
       -f-,--no-f, -f=no or several other variations.

       -p

       --pkg-cache
              Select the file to store the package cache. The package cache is
              the primary cache used by all operations.  Configuration Item:
              Dir::Cache::pkgcache.

       -s

       --src-cache
              Select the file to store the source cache. The source is used
              only by gencaches and it stores a parsed version of the package
              information from remote sources. When building the package cache
              the source cache is used to advoid reparsing all of the package
              files.  Configuration Item: Dir::Cache::srcpkgcache.

       -q

       --quiet
              Quiet; produces output suitable for logging, omitting progress
              indicators.  More q's will produce more quietness up to a
              maximum of 2. You can also use -q=# to set the quietness level,
              overriding the configuration file.  Configuration Item: quiet.

       -i

       --important
              Print only important dependencies; for use with unmet. Causes
              only Depends and Pre-Depends relations to be printed.
              Configuration Item: APT::Cache::Important.

       -f

       --full Print full package records when searching.  Configuration Item:
              APT::Cache::ShowFull.

       -a

       --all-versions
              Print full records for all available versions. This is the
              default; to turn it off, use --no-all-versions.  If --no-all-
              versions is specified, only the candidate version will displayed
              (the one which would be selected for installation).  This option
              is only applicable to  the show command.  Configuration Item:
              APT::Cache::AllVersions.

       -g

       --generate
              Perform automatic package cache regeneration, rather than use
              the cache as it is. This is the default; to turn it off, use
              --no-generate.  Configuration Item: APT::Cache::Generate.

       --names-only

       -n     Only search on the package names, not the long descriptions.
              Configuration Item: APT::Cache::NamesOnly.

       --all-names
              Make pkgnames print all names, including virtual packages and
              missing dependencies.  Configuration Item: APT::Cache::AllNames.

       --recurse
              Make depends recursive so that all packages mentioned are
              printed once.  Configuration Item: APT::Cache::RecurseDepends.

       -h

       --help Show a short usage summary.

       -v

       --version
              Show the program version.

       -c

       --config-file
              Configuration File; Specify a configuration file to use.  The
              program will read the default configuration file and then this
              configuration file. See apt.conf(5) for syntax information.

       -o

       --option
              Set a Configuration Option; This will set an arbitrary
              configuration option. The syntax is -o Foo::Bar=bar.

FILES
       /etc/apt/sources.list
              Locations to fetch packages from.  Configuration Item:
              Dir::Etc::SourceList.

       /var/lib/apt/lists/
              Storage area for state information for each package resource
              specified in sources.list(5) Configuration Item:
              Dir::State::Lists.

       /var/lib/apt/lists/partial/
              Storage area for state information in transit.  Configuration
              Item: Dir::State::Lists (implicit partial).

SEE ALSO
       apt.conf(5), sources.list(5), apt-get(8)

DIAGNOSTICS
       apt-cache returns zero on normal operation, decimal 100 on error.

BUGS
       See the APT bug page <URL:http://bugs.debian.org/src:apt>.  If you wish
       to report a bug in APT, please see /usr/share/doc/debian/bug-
       reporting.txt or the reportbug(1) command.

AUTHOR
       APT was written by the APT team <apt@packages.debian.org>.



                                16 October 2007                   APT-CACHE(8)