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