]>
Commit | Line | Data |
---|---|---|
24f6490f | 1 | <?xml version="1.0" encoding="utf-8" standalone="no"?> |
81cf16a2 DK |
2 | <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" |
3 | "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [ | |
5abbf5bb DK |
4 | <!ENTITY % aptent SYSTEM "apt.ent"> %aptent; |
5 | <!ENTITY % aptverbatiment SYSTEM "apt-verbatim.ent"> %aptverbatiment; | |
6 | <!ENTITY % aptvendor SYSTEM "apt-vendor.ent"> %aptvendor; | |
24f6490f AL |
7 | ]> |
8 | ||
9 | <refentry> | |
5e80de29 AL |
10 | |
11 | <refentryinfo> | |
12 | &apt-author.jgunthorpe; | |
13 | &apt-author.team; | |
14 | &apt-email; | |
15 | &apt-product; | |
16 | <!-- The last update date --> | |
ab5b1d0d | 17 | <date>2015-10-27T00:00:00Z</date> |
5e80de29 | 18 | </refentryinfo> |
24f6490f AL |
19 | |
20 | <refmeta> | |
21 | <refentrytitle>apt-cache</refentrytitle> | |
22 | <manvolnum>8</manvolnum> | |
f0599b9c | 23 | <refmiscinfo class="manual">APT</refmiscinfo> |
24f6490f AL |
24 | </refmeta> |
25 | ||
26 | <!-- Man page title --> | |
27 | <refnamediv> | |
28 | <refname>apt-cache</refname> | |
7fefa184 | 29 | <refpurpose>query the APT cache</refpurpose> |
24f6490f AL |
30 | </refnamediv> |
31 | ||
6e8b4572 DK |
32 | &synopsis-command-apt-cache; |
33 | ||
24f6490f | 34 | <refsect1><title>Description</title> |
8561c2fe DK |
35 | <para> |
36 | <command>apt-cache</command> performs a variety of operations on APT's | |
37 | package cache. <command>apt-cache</command> does not manipulate the | |
38 | state of the system but does provide operations to search and generate | |
39 | interesting output from the package metadata. The metadata is acquired | |
40 | and updated via the 'update' command of e.g. <command>apt-get</command>, | |
41 | so that it can be outdated if the last update is too long ago, but in | |
42 | exchange <command>apt-cache</command> works independently of the | |
43 | availability of the configured sources (e.g. offline). | |
44 | </para> | |
24f6490f AL |
45 | |
46 | <para>Unless the <option>-h</option>, or <option>--help</option> option is given, one of the | |
47 | commands below must be present.</para> | |
48 | ||
49 | <variablelist> | |
2b9b27c3 | 50 | <varlistentry><term><option>gencaches</option></term> |
c086ac18 DK |
51 | <listitem><para><literal>gencaches</literal> creates APT's package cache. This is done |
52 | implicitly by all commands needing this cache if it is missing or outdated.</para></listitem> | |
24f6490f AL |
53 | </varlistentry> |
54 | ||
2b9b27c3 | 55 | <varlistentry><term><option>showpkg</option> <option><replaceable>&synopsis-pkg;</replaceable>…</option></term> |
24f6490f AL |
56 | <listitem><para><literal>showpkg</literal> displays information about the packages listed on the |
57 | command line. Remaining arguments are package names. The available | |
58 | versions and reverse dependencies of each package listed are listed, as | |
59 | well as forward dependencies for each version. Forward (normal) | |
60 | dependencies are those packages upon which the package in question | |
61 | depends; reverse dependencies are those packages that depend upon the | |
62 | package in question. Thus, forward dependencies must be satisfied for a | |
63 | package, but reverse dependencies need not be. | |
64 | For instance, <command>apt-cache showpkg libreadline2</command> would produce | |
65 | output similar to the following:</para> | |
66 | ||
67 | <informalexample><programlisting> | |
68 | Package: libreadline2 | |
69 | Versions: 2.1-12(/var/state/apt/lists/foo_Packages), | |
70 | Reverse Depends: | |
71 | libreadlineg2,libreadline2 | |
72 | libreadline2-altdev,libreadline2 | |
73 | Dependencies: | |
74 | 2.1-12 - libc5 (2 5.4.0-0) ncurses3.0 (0 (null)) | |
75 | Provides: | |
76 | 2.1-12 - | |
77 | Reverse Provides: | |
78 | </programlisting></informalexample> | |
79 | ||
80 | <para>Thus it may be seen that libreadline2, version 2.1-12, depends on | |
81 | libc5 and ncurses3.0 which must be installed for libreadline2 to work. | |
82 | In turn, libreadlineg2 and libreadline2-altdev depend on libreadline2. If | |
83 | libreadline2 is installed, libc5 and ncurses3.0 (and ldso) must also be | |
84 | installed; libreadlineg2 and libreadline2-altdev do not have to be | |
85 | installed. For the specific meaning of the remainder of the output it | |
86 | is best to consult the apt source code.</para></listitem> | |
87 | </varlistentry> | |
88 | ||
2b9b27c3 | 89 | <varlistentry><term><option>stats</option></term><listitem><para><literal>stats</literal> displays some statistics about the cache. |
24f6490f AL |
90 | No further arguments are expected. Statistics reported are: |
91 | <itemizedlist> | |
92 | <listitem><para><literal>Total package names</literal> is the number of package names found | |
93 | in the cache.</para> | |
94 | </listitem> | |
95 | ||
96 | <listitem><para><literal>Normal packages</literal> is the number of regular, ordinary package | |
97 | names; these are packages that bear a one-to-one correspondence between | |
98 | their names and the names used by other packages for them in | |
99 | dependencies. The majority of packages fall into this category.</para> | |
100 | </listitem> | |
101 | ||
102 | <listitem><para><literal>Pure virtual packages</literal> is the number of packages that exist | |
103 | only as a virtual package name; that is, packages only "provide" the | |
104 | virtual package name, and no package actually uses the name. For | |
b176de3a | 105 | instance, "mail-transport-agent" in the Debian system is a |
24f6490f AL |
106 | pure virtual package; several packages provide "mail-transport-agent", |
107 | but there is no package named "mail-transport-agent".</para> | |
108 | </listitem> | |
109 | ||
110 | <listitem><para><literal>Single virtual packages</literal> is the number of packages with only | |
111 | one package providing a particular virtual package. For example, in the | |
b176de3a | 112 | Debian system, "X11-text-viewer" is a virtual package, but |
24f6490f AL |
113 | only one package, xless, provides "X11-text-viewer".</para> |
114 | </listitem> | |
115 | ||
116 | <listitem><para><literal>Mixed virtual packages</literal> is the number of packages that either | |
117 | provide a particular virtual package or have the virtual package name | |
b176de3a | 118 | as the package name. For instance, in the Debian system, |
24f6490f AL |
119 | "debconf" is both an actual package, and provided by the debconf-tiny |
120 | package.</para> | |
121 | </listitem> | |
122 | ||
123 | <listitem><para><literal>Missing</literal> is the number of package names that were referenced in | |
124 | a dependency but were not provided by any package. Missing packages may | |
5f4331c4 | 125 | be an evidence if a full distribution is not accessed, or if a package |
24f6490f | 126 | (real or virtual) has been dropped from the distribution. Usually they |
308c7d30 | 127 | are referenced from Conflicts or Breaks statements.</para> |
24f6490f AL |
128 | </listitem> |
129 | ||
130 | <listitem><para><literal>Total distinct</literal> versions is the number of package versions | |
dd5978bf | 131 | found in the cache. If more than one distribution is being accessed |
1d254cb2 | 132 | (for instance, "stable" and "unstable"), this value |
24f6490f AL |
133 | can be considerably larger than the number of total package names.</para> |
134 | </listitem> | |
135 | ||
136 | <listitem><para><literal>Total dependencies</literal> is the number of dependency relationships | |
137 | claimed by all of the packages in the cache.</para> | |
138 | </listitem> | |
139 | </itemizedlist> | |
140 | </para></listitem> | |
141 | </varlistentry> | |
142 | ||
2b9b27c3 | 143 | <varlistentry><term><option>showsrc</option> <option><replaceable>&synopsis-pkg;</replaceable>…</option></term> |
a8275acf MV |
144 | <listitem><para><literal>showsrc</literal> displays all the |
145 | source package records that match the given package names. All | |
146 | versions are shown, as well as all records that declare the name | |
147 | to be a binary package. Use <option>--only-source</option> to | |
148 | display only source package names. | |
149 | </para></listitem> | |
24f6490f AL |
150 | </varlistentry> |
151 | ||
2b9b27c3 | 152 | <varlistentry><term><option>dump</option></term> |
24f6490f AL |
153 | <listitem><para><literal>dump</literal> shows a short listing of every package in the cache. It is |
154 | primarily for debugging.</para></listitem> | |
155 | </varlistentry> | |
156 | ||
2b9b27c3 | 157 | <varlistentry><term><option>dumpavail</option></term> |
24f6490f AL |
158 | <listitem><para><literal>dumpavail</literal> prints out an available list to stdout. This is |
159 | suitable for use with &dpkg; and is used by the &dselect; method.</para></listitem> | |
160 | </varlistentry> | |
161 | ||
2b9b27c3 | 162 | <varlistentry><term><option>unmet</option></term> |
24f6490f AL |
163 | <listitem><para><literal>unmet</literal> displays a summary of all unmet dependencies in the |
164 | package cache.</para></listitem> | |
165 | </varlistentry> | |
166 | ||
2b9b27c3 | 167 | <varlistentry><term><option>show</option> <option><replaceable>&synopsis-pkg;</replaceable>…</option></term> |
24f6490f | 168 | <listitem><para><literal>show</literal> performs a function similar to |
babb80e1 | 169 | <command>dpkg --print-avail</command>; it displays the package records for the |
24f6490f AL |
170 | named packages.</para></listitem> |
171 | </varlistentry> | |
172 | ||
2b9b27c3 | 173 | <varlistentry><term><option>search</option> <option><replaceable>&synopsis-regex;</replaceable>…</option></term> |
24f6490f | 174 | <listitem><para><literal>search</literal> performs a full text search on all available package |
aec22160 | 175 | lists for the POSIX regex pattern given, see ®ex;. |
696268f7 | 176 | It searches the package names and the |
24f6490f | 177 | descriptions for an occurrence of the regular expression and prints out |
696268f7 LB |
178 | the package name and the short description, including virtual package |
179 | names. | |
180 | If <option>--full</option> is given | |
24f6490f AL |
181 | then output identical to <literal>show</literal> is produced for each matched |
182 | package, and if <option>--names-only</option> is given then the long description | |
5fba9462 | 183 | is not searched, only the package name and provided packages are.</para> |
24f6490f AL |
184 | <para> |
185 | Separate arguments can be used to specify multiple search patterns that | |
186 | are and'ed together.</para></listitem> | |
187 | </varlistentry> | |
188 | ||
2b9b27c3 | 189 | <varlistentry><term><option>depends</option> <option><replaceable>&synopsis-pkg;</replaceable>…</option></term> |
24f6490f AL |
190 | <listitem><para><literal>depends</literal> shows a listing of each dependency a package has |
191 | and all the possible other packages that can fulfill that dependency.</para></listitem> | |
192 | </varlistentry> | |
193 | ||
2b9b27c3 | 194 | <varlistentry><term><option>rdepends</option> <option><replaceable>&synopsis-pkg;</replaceable>…</option></term> |
4a5e5089 | 195 | <listitem><para><literal>rdepends</literal> shows a listing of each reverse dependency a |
24f6490f AL |
196 | package has.</para></listitem> |
197 | </varlistentry> | |
198 | ||
2b9b27c3 | 199 | <varlistentry><term><option>pkgnames</option> <optional><replaceable>&synopsis-prefix;</replaceable></optional></term> |
3ba36dff | 200 | <listitem><para>This command prints the name of each package APT knows. The optional |
24f6490f AL |
201 | argument is a prefix match to filter the name list. The output is suitable |
202 | for use in a shell tab complete function and the output is generated | |
203 | extremely quickly. This command is best used with the | |
3ba36dff | 204 | <option>--generate</option> option.</para> |
847d81b8 | 205 | <para>Note that a package which APT knows of is not necessarily available to download, |
3ba36dff DK |
206 | installable or installed, e.g. virtual packages are also listed in the generated list. |
207 | </para></listitem> | |
24f6490f AL |
208 | </varlistentry> |
209 | ||
2b9b27c3 | 210 | <varlistentry><term><option>dotty</option> <option><replaceable>&synopsis-pkg;</replaceable>…</option></term> |
24f6490f AL |
211 | <listitem><para><literal>dotty</literal> takes a list of packages on the command line and |
212 | generates output suitable for use by dotty from the | |
213 | <ulink url="http://www.research.att.com/sw/tools/graphviz/">GraphViz</ulink> | |
214 | package. The result will be a set of nodes and edges representing the | |
215 | relationships between the packages. By default the given packages will | |
216 | trace out all dependent packages; this can produce a very large graph. | |
217 | To limit the output to only the packages listed on the command line, | |
218 | set the <literal>APT::Cache::GivenOnly</literal> option.</para> | |
219 | ||
220 | <para>The resulting nodes will have several shapes; normal packages are boxes, | |
1d254cb2 | 221 | pure virtual packages are triangles, mixed virtual packages are diamonds, |
24f6490f | 222 | missing packages are hexagons. Orange boxes mean recursion was stopped |
1d254cb2 | 223 | (leaf packages), blue lines are pre-depends, green lines are conflicts.</para> |
24f6490f AL |
224 | |
225 | <para>Caution, dotty cannot graph larger sets of packages.</para></listitem> | |
226 | </varlistentry> | |
227 | ||
2b9b27c3 | 228 | <varlistentry><term><option>xvcg</option> <option><replaceable>&synopsis-pkg;</replaceable>…</option></term> |
c2c45f40 EL |
229 | <listitem><para>The same as <literal>dotty</literal>, only for xvcg from the |
230 | <ulink url="http://rw4.cs.uni-sb.de/users/sander/html/gsvcg1.html">VCG tool</ulink>. | |
231 | </para></listitem></varlistentry> | |
232 | ||
2b9b27c3 | 233 | <varlistentry><term><option>policy</option> <optional><replaceable>&synopsis-pkg;</replaceable>…</optional></term> |
335f09c5 | 234 | <listitem><para><literal>policy</literal> is meant to help debug issues relating to the |
24f6490f AL |
235 | preferences file. With no arguments it will print out the |
236 | priorities of each source. Otherwise it prints out detailed information | |
237 | about the priority selection of the named package.</para></listitem> | |
238 | </varlistentry> | |
239 | ||
2b9b27c3 | 240 | <varlistentry><term><option>madison</option> <option><replaceable>&synopsis-pkg;</replaceable>…</option></term> |
24f6490f AL |
241 | <listitem><para><literal>apt-cache</literal>'s <literal>madison</literal> command attempts to mimic |
242 | the output format and a subset of the functionality of the Debian | |
243 | archive management tool, <literal>madison</literal>. It displays | |
244 | available versions of a package in a tabular format. Unlike the | |
245 | original <literal>madison</literal>, it can only display information for | |
246 | the architecture for which APT has retrieved package lists | |
247 | (<literal>APT::Architecture</literal>).</para></listitem> | |
248 | </varlistentry> | |
249 | </variablelist> | |
250 | </refsect1> | |
251 | ||
252 | <refsect1><title>options</title> | |
253 | &apt-cmdblurb; | |
254 | ||
255 | <variablelist> | |
256 | <varlistentry><term><option>-p</option></term><term><option>--pkg-cache</option></term> | |
257 | <listitem><para>Select the file to store the package cache. The package cache is the | |
258 | primary cache used by all operations. | |
259 | Configuration Item: <literal>Dir::Cache::pkgcache</literal>.</para></listitem> | |
260 | </varlistentry> | |
261 | ||
262 | <varlistentry><term><option>-s</option></term><term><option>--src-cache</option></term> | |
263 | <listitem><para>Select the file to store the source cache. The source is used only by | |
264 | <literal>gencaches</literal> and it stores a parsed version of the package | |
265 | information from remote sources. When building the package cache the | |
584c10c5 | 266 | source cache is used to avoid reparsing all of the package files. |
24f6490f AL |
267 | Configuration Item: <literal>Dir::Cache::srcpkgcache</literal>.</para></listitem> |
268 | </varlistentry> | |
269 | ||
270 | <varlistentry><term><option>-q</option></term><term><option>--quiet</option></term> | |
271 | <listitem><para>Quiet; produces output suitable for logging, omitting progress indicators. | |
272 | More q's will produce more quietness up to a maximum of 2. You can also use | |
273 | <option>-q=#</option> to set the quietness level, overriding the configuration file. | |
274 | Configuration Item: <literal>quiet</literal>.</para></listitem> | |
275 | </varlistentry> | |
276 | ||
277 | <varlistentry><term><option>-i</option></term><term><option>--important</option></term> | |
c7c71e20 JR |
278 | <listitem><para>Print only important dependencies; for use with <literal>unmet</literal> |
279 | and <literal>depends</literal>. Causes only Depends and | |
24f6490f AL |
280 | Pre-Depends relations to be printed. |
281 | Configuration Item: <literal>APT::Cache::Important</literal>.</para></listitem> | |
282 | </varlistentry> | |
283 | ||
fe1af091 DK |
284 | <varlistentry><term><option>--no-pre-depends</option></term> |
285 | <term><option>--no-depends</option></term> | |
286 | <term><option>--no-recommends</option></term> | |
287 | <term><option>--no-suggests</option></term> | |
288 | <term><option>--no-conflicts</option></term> | |
289 | <term><option>--no-breaks</option></term> | |
290 | <term><option>--no-replaces</option></term> | |
291 | <term><option>--no-enhances</option></term> | |
8c7af4d4 DK |
292 | <listitem><para>Per default the <command>depends</command> and |
293 | <command>rdepends</command> print all dependencies. This can be tweaked with | |
fe1af091 DK |
294 | these flags which will omit the specified dependency type. |
295 | Configuration Item: <literal>APT::Cache::Show<replaceable>DependencyType</replaceable></literal> | |
296 | e.g. <literal>APT::Cache::ShowRecommends</literal>.</para></listitem> | |
297 | </varlistentry> | |
8c7af4d4 DK |
298 | |
299 | <varlistentry><term><option>--implicit</option></term> | |
300 | <listitem><para>Per default <command>depends</command> and <command>rdepends</command> | |
301 | print only dependencies explicitly expressed in the metadata. With this flag | |
40ebab6a DK |
302 | it will also show dependencies implicitly added based on the encountered data. |
303 | A <literal>Conflicts: foo</literal> e.g. expresses implicitly that this package | |
8c7af4d4 DK |
304 | also conflicts with the package foo from any other architecture. |
305 | Configuration Item: <literal>APT::Cache::ShowImplicit</literal>. | |
306 | </para></listitem> | |
307 | </varlistentry> | |
308 | ||
24f6490f AL |
309 | <varlistentry><term><option>-f</option></term><term><option>--full</option></term> |
310 | <listitem><para>Print full package records when searching. | |
311 | Configuration Item: <literal>APT::Cache::ShowFull</literal>.</para></listitem> | |
312 | </varlistentry> | |
313 | ||
314 | <varlistentry><term><option>-a</option></term><term><option>--all-versions</option></term> | |
315 | <listitem><para>Print full records for all available versions. This is the | |
316 | default; to turn it off, use <option>--no-all-versions</option>. | |
317 | If <option>--no-all-versions</option> is specified, only the candidate version | |
c7c71e20 | 318 | will be displayed (the one which would be selected for installation). |
24f6490f AL |
319 | This option is only applicable to the <literal>show</literal> command. |
320 | Configuration Item: <literal>APT::Cache::AllVersions</literal>.</para></listitem> | |
321 | </varlistentry> | |
322 | ||
323 | <varlistentry><term><option>-g</option></term><term><option>--generate</option></term> | |
324 | <listitem><para>Perform automatic package cache regeneration, rather than use the cache | |
325 | as it is. This is the default; to turn it off, use <option>--no-generate</option>. | |
326 | Configuration Item: <literal>APT::Cache::Generate</literal>.</para></listitem> | |
327 | </varlistentry> | |
328 | ||
329 | <varlistentry><term><option>--names-only</option></term><term><option>-n</option></term> | |
5fba9462 | 330 | <listitem><para>Only search on the package and provided package names, not the long descriptions. |
24f6490f AL |
331 | Configuration Item: <literal>APT::Cache::NamesOnly</literal>.</para></listitem> |
332 | </varlistentry> | |
333 | ||
334 | <varlistentry><term><option>--all-names</option></term> | |
335 | <listitem><para>Make <literal>pkgnames</literal> print all names, including virtual packages | |
336 | and missing dependencies. | |
337 | Configuration Item: <literal>APT::Cache::AllNames</literal>.</para></listitem> | |
338 | </varlistentry> | |
339 | ||
340 | <varlistentry><term><option>--recurse</option></term> | |
341 | <listitem><para>Make <literal>depends</literal> and <literal>rdepends</literal> recursive so | |
342 | that all packages mentioned are printed once. | |
343 | Configuration Item: <literal>APT::Cache::RecurseDepends</literal>.</para></listitem> | |
344 | </varlistentry> | |
345 | ||
346 | <varlistentry><term><option>--installed</option></term> | |
347 | <listitem><para> | |
348 | Limit the output of <literal>depends</literal> and <literal>rdepends</literal> to | |
349 | packages which are currently installed. | |
350 | Configuration Item: <literal>APT::Cache::Installed</literal>.</para></listitem> | |
351 | </varlistentry> | |
352 | ||
353 | &apt-commonoptions; | |
354 | ||
355 | </variablelist> | |
356 | </refsect1> | |
357 | ||
358 | <refsect1><title>Files</title> | |
359 | <variablelist> | |
1221c3a3 DK |
360 | &file-sourceslist; |
361 | &file-statelists; | |
24f6490f AL |
362 | </variablelist> |
363 | </refsect1> | |
364 | ||
365 | <refsect1><title>See Also</title> | |
366 | <para>&apt-conf;, &sources-list;, &apt-get; | |
367 | </para> | |
368 | </refsect1> | |
369 | ||
370 | <refsect1><title>Diagnostics</title> | |
371 | <para><command>apt-cache</command> returns zero on normal operation, decimal 100 on error. | |
372 | </para> | |
373 | </refsect1> | |
374 | ||
375 | &manbugs; | |
24f6490f AL |
376 | |
377 | </refentry> |