1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the apt-doc package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
9 "Project-Id-Version: apt-doc 1.0.9.5\n"
10 "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n"
11 "POT-Creation-Date: 2014-12-23 13:28+0100\n"
12 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14 "Language-Team: LANGUAGE <LL@li.org>\n"
17 "Content-Type: text/plain; charset=UTF-8\n"
18 "Content-Transfer-Encoding: 8bit\n"
24 "<!ENTITY apt-author.team \"\n"
26 " <othername>APT team</othername>\n"
27 " <contrib></contrib>\n"
36 "<!ENTITY apt-qapage \"\n"
38 "\t\t<ulink url='http://packages.qa.debian.org/a/apt.html'>QA Page</ulink>\n"
47 "<!-- Boiler plate Bug reporting section -->\n"
48 "<!ENTITY manbugs \"\n"
49 " <refsect1><title>Bugs</title>\n"
50 " <para><ulink url='http://bugs.debian.org/src:apt'>APT bug page</ulink>.\n"
51 " If you wish to report a bug in APT, please see\n"
52 " <filename>/usr/share/doc/debian/bug-reporting.txt</filename> or the\n"
53 " &reportbug; command.\n"
63 "<!-- Boiler plate Author section -->\n"
64 "<!ENTITY manauthor \"\n"
65 " <refsect1><title>Author</title>\n"
66 " <para>APT was written by the APT team "
67 "<email>apt@packages.debian.org</email>.\n"
77 "<!-- Should be used within the option section of the text to\n"
78 " put in the blurb about -h, -v, -c and -o -->\n"
79 "<!ENTITY apt-commonoptions \"\n"
80 " <varlistentry><term><option>-h</option></term>\n"
81 " <term><option>--help</option></term>\n"
82 " <listitem><para>Show a short usage summary.\n"
93 " <term><option>-v</option></term>\n"
94 " <term><option>--version</option></term>\n"
95 " <listitem><para>Show the program version.\n"
106 " <term><option>-c</option></term>\n"
107 " <term><option>--config-file</option></term>\n"
108 " <listitem><para>Configuration File; Specify a configuration file to "
110 " The program will read the default configuration file and then this \n"
111 " configuration file. If configuration settings need to be set before "
113 " default configuration files are parsed specify a file with the "
114 "<envar>APT_CONFIG</envar>\n"
115 " environment variable. See &apt-conf; for syntax information.\n"
126 " <term><option>-o</option></term>\n"
127 " <term><option>--option</option></term>\n"
128 " <listitem><para>Set a Configuration Option; This will set an "
130 " configuration option. The syntax is <option>-o "
131 "Foo::Bar=bar</option>.\n"
132 " <option>-o</option> and <option>--option</option> can be used "
134 " times to set different options.\n"
145 "<!-- Should be used within the option section of the text to\n"
146 " put in the blurb about -h, -v, -c and -o -->\n"
147 "<!ENTITY apt-cmdblurb \"\n"
148 " <para>All command line options may be set using the configuration file, "
150 " descriptions indicate the configuration option to set. For boolean\n"
151 " options you can override the config file by using something like \n"
152 " <option>-f-</option>,<option>--no-f</option>, <option>-f=no</option>\n"
153 " or several other variations.\n"
162 "<!ENTITY file-aptconf \"\n"
163 " <varlistentry><term><filename>/etc/apt/apt.conf</filename></term>\n"
164 " <listitem><para>APT configuration file.\n"
165 " Configuration Item: "
166 "<literal>Dir::Etc::Main</literal>.</para></listitem>\n"
174 " <varlistentry><term><filename>/etc/apt/apt.conf.d/</filename></term>\n"
175 " <listitem><para>APT configuration file fragments.\n"
176 " Configuration Item: "
177 "<literal>Dir::Etc::Parts</literal>.</para></listitem>\n"
186 "<!ENTITY file-cachearchives \"\n"
187 " <varlistentry><term><filename>&cachedir;/archives/</filename></term>\n"
188 " <listitem><para>Storage area for retrieved package files.\n"
189 " Configuration Item: "
190 "<literal>Dir::Cache::Archives</literal>.</para></listitem>\n"
199 "<varlistentry><term><filename>&cachedir;/archives/partial/</filename></term>\n"
200 " <listitem><para>Storage area for package files in transit.\n"
201 " Configuration Item: <literal>Dir::Cache::Archives</literal> "
202 "(<filename>partial</filename> will be implicitly "
203 "appended)</para></listitem>\n"
212 "<!ENTITY file-preferences \"\n"
213 " <varlistentry><term><filename>/etc/apt/preferences</filename></term>\n"
214 " <listitem><para>Version preferences file.\n"
215 " This is where you would specify "pinning",\n"
216 " i.e. a preference to get certain packages\n"
217 " from a separate source\n"
218 " or from a different version of a distribution.\n"
219 " Configuration Item: "
220 "<literal>Dir::Etc::Preferences</literal>.</para></listitem>\n"
229 "<varlistentry><term><filename>/etc/apt/preferences.d/</filename></term>\n"
230 " <listitem><para>File fragments for the version preferences.\n"
231 " Configuration Item: "
232 "<literal>Dir::Etc::PreferencesParts</literal>.</para></listitem>\n"
241 "<!ENTITY file-sourceslist \"\n"
242 " <varlistentry><term><filename>/etc/apt/sources.list</filename></term>\n"
243 " <listitem><para>Locations to fetch packages from.\n"
244 " Configuration Item: "
245 "<literal>Dir::Etc::SourceList</literal>.</para></listitem>\n"
254 "<varlistentry><term><filename>/etc/apt/sources.list.d/</filename></term>\n"
255 " <listitem><para>File fragments for locations to fetch packages from.\n"
256 " Configuration Item: "
257 "<literal>Dir::Etc::SourceParts</literal>.</para></listitem>\n"
266 "<!ENTITY file-statelists \"\n"
267 " <varlistentry><term><filename>&statedir;/lists/</filename></term>\n"
268 " <listitem><para>Storage area for state information for each package "
269 "resource specified in\n"
271 " Configuration Item: "
272 "<literal>Dir::State::Lists</literal>.</para></listitem>\n"
281 "<varlistentry><term><filename>&statedir;/lists/partial/</filename></term>\n"
282 " <listitem><para>Storage area for state information in transit.\n"
283 " Configuration Item: <literal>Dir::State::Lists</literal> "
284 "(<filename>partial</filename> will be implicitly "
285 "appended)</para></listitem>\n"
294 "<!ENTITY file-trustedgpg \"\n"
295 " <varlistentry><term><filename>/etc/apt/trusted.gpg</filename></term>\n"
296 " <listitem><para>Keyring of local trusted keys, new keys will be added "
298 " Configuration Item: "
299 "<literal>Dir::Etc::Trusted</literal>.</para></listitem>\n"
308 "<varlistentry><term><filename>/etc/apt/trusted.gpg.d/</filename></term>\n"
309 " <listitem><para>File fragments for the trusted keys, additional "
311 " be stored here (by other packages or the administrator).\n"
312 " Configuration Item "
313 "<literal>Dir::Etc::TrustedParts</literal>.</para></listitem>\n"
322 "<!ENTITY file-extended_states \"\n"
324 "<varlistentry><term><filename>/var/lib/apt/extended_states</filename></term>\n"
325 " <listitem><para>Status list of auto-installed packages.\n"
326 " Configuration Item: <literal>Dir::State::extended_states</literal>.\n"
327 " </para></listitem>\n"
336 "<!-- TRANSLATOR: This is the section header for the following paragraphs - "
338 " to the other headers like NAME and DESCRIPTION and should therefore be "
340 "<!ENTITY translation-title \"TRANSLATION\">\n"
347 "<!-- TRANSLATOR: This is a placeholder. You should write here who has "
349 " to the translation in the past, who is responsible now and maybe "
350 "further information\n"
351 " specially related to your translation. -->\n"
352 "<!ENTITY translation-holder \"\n"
353 " The english translation was done by John Doe "
354 "<email>john@doe.org</email> in 2009,\n"
355 " 2010 and Daniela Acme <email>daniela@acme.us</email> in 2010 together "
357 " Debian Dummy l10n Team "
358 "<email>debian-l10n-dummy@lists.debian.org</email>.\n"
366 "<!-- TRANSLATOR: As a translation is allowed to have 20% of "
367 "untranslated/fuzzy strings\n"
368 " in a shipped manpage newer/modified paragraphs will maybe appear in "
370 " the generated manpage. This sentence is therefore here to tell the "
372 " is not a mistake by the translator - obviously the target is that at "
374 " releases this sentence is not needed. :) -->\n"
375 "<!ENTITY translation-english \"\n"
376 " Note that this translated document may contain untranslated parts.\n"
377 " This is done on purpose, to avoid losing content when the\n"
378 " translation is lagging behind the original content.\n"
385 "<!-- TRANSLATOR: used as in -o=config_string "
386 "e.g. -o=Debug::pkgProblemResolver=1 --> <!ENTITY synopsis-config-string "
393 "<!-- TRANSLATOR: used as in -c=config_file e.g. -c=./apt.conf --> <!ENTITY "
394 "synopsis-config-file \"config_file\">"
400 "<!-- TRANSLATOR: used as in -t=target_release or pkg/target_release "
401 "e.g. -t=squeeze apt/experimental --> <!ENTITY synopsis-target-release "
402 "\"target_release\">"
408 "<!-- TRANSLATOR: used as in -a=architecture e.g. -a=armel --> <!ENTITY "
409 "synopsis-architecture \"architecture\">"
415 "<!-- TRANSLATOR: used as in apt-get install pkg e.g. apt-get install awesome "
416 "--> <!ENTITY synopsis-pkg \"pkg\">"
422 "<!-- TRANSLATOR: used as in pkg=pkg_version_number e.g. apt=0.8.15 --> "
423 "<!ENTITY synopsis-pkg-ver-number \"pkg_version_number\">"
429 "<!-- TRANSLATOR: used as in apt-cache pkgnames prefix e.g. apt-cache "
430 "pkgnames apt --> <!ENTITY synopsis-prefix \"prefix\">"
436 "<!-- TRANSLATOR: used as in apt-cache search regex e.g. apt-cache search "
437 "awesome --> <!ENTITY synopsis-regex \"regex\">"
443 "<!-- TRANSLATOR: used as in apt-cdrom -d=cdrom_mount_point e.g. apt-cdrom "
444 "-d=/media/cdrom --> <!ENTITY synopsis-cdrom-mount \"cdrom_mount_point\">"
450 "<!-- TRANSLATOR: used as in apt-extracttemplates -t=temporary_directory "
451 "e.g. apt-extracttemplates -t=/tmp --> <!ENTITY synopsis-tmp-directory "
452 "\"temporary_directory\">"
458 "<!-- TRANSLATOR: used as in apt-extracttemplates filename --> <!ENTITY "
459 "synopsis-filename \"filename\">"
465 "<!-- TRANSLATOR: used as parameter for apt-ftparchive e.g. apt-ftparchive "
466 "packages path override-file pathprefix --> <!ENTITY synopsis-path \"path\">"
472 "<!-- TRANSLATOR: used as parameter for apt-ftparchive e.g. apt-ftparchive "
473 "packages path override-file pathprefix --> <!ENTITY synopsis-override "
480 "<!-- TRANSLATOR: used as parameter for apt-ftparchive e.g. apt-ftparchive "
481 "packages path override-file pathprefix --> <!ENTITY synopsis-pathprefix "
488 "<!-- TRANSLATOR: used as parameter for apt-ftparchive e.g. apt-ftparchive "
489 "generate section --> <!ENTITY synopsis-section \"section\">"
495 "<!-- TRANSLATOR: used as in apt-key export keyid e.g. apt-key export "
496 "473041FA --> <!ENTITY synopsis-keyid \"keyid\">"
499 #. type: Content of: <refentry><refmeta><manvolnum>
500 #: apt.8.xml:21 apt-get.8.xml:22 apt-cache.8.xml:22 apt-key.8.xml:21 apt-mark.8.xml:22 apt-secure.8.xml:21 apt-cdrom.8.xml:21 apt-config.8.xml:22
504 #. type: Content of: <refentry><refmeta><refmiscinfo>
505 #: apt.8.xml:22 apt-get.8.xml:23 apt-cache.8.xml:23 apt-key.8.xml:22 apt-mark.8.xml:23 apt-secure.8.xml:22 apt-cdrom.8.xml:22 apt-config.8.xml:23 apt.conf.5.xml:28 apt_preferences.5.xml:22 sources.list.5.xml:23 apt-extracttemplates.1.xml:23 apt-sortpkgs.1.xml:23 apt-ftparchive.1.xml:23
509 #. type: Content of: <refentry><refnamediv><refpurpose>
511 msgid "command-line interface"
514 #. type: Content of: <refentry><refsect1><title>
515 #: apt.8.xml:33 apt-get.8.xml:34 apt-cache.8.xml:34 apt-key.8.xml:33 apt-mark.8.xml:34 apt-secure.8.xml:46 apt-cdrom.8.xml:33 apt-config.8.xml:34 apt.conf.5.xml:37 apt_preferences.5.xml:32 sources.list.5.xml:32 apt-extracttemplates.1.xml:34 apt-sortpkgs.1.xml:34 apt-ftparchive.1.xml:34
519 #. type: Content of: <refentry><refsect1><para>
522 "<command>apt</command> (Advanced Package Tool) is the command-line tool for "
523 "handling packages. It provides a commandline interface for the package "
524 "management of the system. See also &apt-get; and &apt-cache; for more "
525 "low-level command options."
528 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
531 "<literal>list</literal> is used to display a list of packages. It supports "
532 "shell pattern for matching package names and the following options: "
533 "<option>--installed</option>, <option>--upgradable</option>, "
534 "<option>--all-versions</option> are supported."
537 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
540 "<literal>search</literal> searches for the given term(s) and display "
544 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
547 "<literal>show</literal> shows the package information for the given "
551 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
554 "<literal>install</literal> is followed by one or more package names desired "
555 "for installation or upgrading."
558 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
559 #: apt.8.xml:71 apt-get.8.xml:112
561 "A specific version of a package can be selected for installation by "
562 "following the package name with an equals and the version of the package to "
563 "select. This will cause that version to be located and selected for "
564 "install. Alternatively a specific distribution can be selected by following "
565 "the package name with a slash and the version of the distribution or the "
566 "Archive name (stable, testing, unstable)."
569 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
570 #: apt.8.xml:81 apt-get.8.xml:147
572 "<literal>remove</literal> is identical to <literal>install</literal> except "
573 "that packages are removed instead of installed. Note that removing a package "
574 "leaves its configuration files on the system. If a plus sign is appended to "
575 "the package name (with no intervening space), the identified package will be "
576 "installed instead of removed."
579 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
582 "<literal>edit-sources</literal> lets you edit your sources.list file and "
583 "provides basic sanity checks."
586 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
589 "<literal>update</literal> is used to resynchronize the package index files "
590 "from their sources."
593 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
596 "<literal>upgrade</literal> is used to install the newest versions of all "
597 "packages currently installed on the system from the sources enumerated in "
598 "<filename>/etc/apt/sources.list</filename>. New packages will be installed, "
599 "but existing packages will never be removed."
602 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
605 "<literal>full-upgrade</literal> performs the function of upgrade but may "
606 "also remove installed packages if that is required in order to resolve a "
610 #. type: Content of: <refentry><refsect1><title>
611 #: apt.8.xml:120 apt-get.8.xml:251 apt-cache.8.xml:244 apt-mark.8.xml:104 apt-config.8.xml:80 apt-extracttemplates.1.xml:48 apt-sortpkgs.1.xml:44 apt-ftparchive.1.xml:500
615 #. type: Content of: <refentry><refsect1><title>
620 #. type: Content of: <refentry><refsect1><para>
623 "The &apt; commandline is designed as a end-user tool and it may change the "
624 "output between versions. While it tries to not break backward compatibility "
625 "there is no guarantee for it either. All features of &apt; are available in "
626 "&apt-cache; and &apt-get; via APT options. Please prefer using these "
627 "commands in your scripts."
630 #. type: Content of: <refentry><refsect1><title>
632 msgid "Differences to &apt-get;"
635 #. type: Content of: <refentry><refsect1><para>
638 "The <command>apt</command> command is meant to be pleasant for end users and "
639 "does not need to be backward compatible like &apt-get;. Therefore some "
640 "options are different:"
643 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
645 msgid "The option <literal>DPkg::Progress-Fancy</literal> is enabled."
648 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
650 msgid "The option <literal>APT::Color</literal> is enabled."
653 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
656 "A new <literal>list</literal> command is available similar to <literal>dpkg "
660 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
663 "The option <literal>upgrade</literal> has <literal>--with-new-pkgs</literal> "
664 "enabled by default."
667 #. type: Content of: <refentry><refsect1><title>
668 #: apt.8.xml:170 apt-get.8.xml:552 apt-cache.8.xml:346 apt-key.8.xml:191 apt-mark.8.xml:127 apt-secure.8.xml:187 apt-cdrom.8.xml:148 apt-config.8.xml:105 apt.conf.5.xml:1222 apt_preferences.5.xml:701 sources.list.5.xml:274 apt-extracttemplates.1.xml:66 apt-sortpkgs.1.xml:59 apt-ftparchive.1.xml:603
672 #. type: Content of: <refentry><refsect1><para>
675 "&apt-get;, &apt-cache;, &sources-list;, &apt-conf;, &apt-config;, The APT "
676 "User's guide in &guidesdir;, &apt-preferences;, the APT Howto."
679 #. type: Content of: <refentry><refsect1><title>
680 #: apt.8.xml:176 apt-get.8.xml:558 apt-cache.8.xml:351 apt-mark.8.xml:131 apt-cdrom.8.xml:153 apt-config.8.xml:110 apt-extracttemplates.1.xml:70 apt-sortpkgs.1.xml:63 apt-ftparchive.1.xml:607
684 #. type: Content of: <refentry><refsect1><para>
687 "<command>apt</command> returns zero on normal operation, decimal 100 on "
691 #. type: Content of: <refentry><refnamediv><refpurpose>
693 msgid "APT package handling utility -- command-line interface"
696 #. type: Content of: <refentry><refsect1><para>
699 "<command>apt-get</command> is the command-line tool for handling packages, "
700 "and may be considered the user's \"back-end\" to other tools using the APT "
701 "library. Several \"front-end\" interfaces exist, such as &aptitude;, "
702 "&synaptic; and &wajig;."
705 #. type: Content of: <refentry><refsect1><para>
706 #: apt-get.8.xml:40 apt-cache.8.xml:40 apt-cdrom.8.xml:47 apt-config.8.xml:40 apt-ftparchive.1.xml:50
708 "Unless the <option>-h</option>, or <option>--help</option> option is given, "
709 "one of the commands below must be present."
712 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
715 "<literal>update</literal> is used to resynchronize the package index files "
716 "from their sources. The indexes of available packages are fetched from the "
717 "location(s) specified in <filename>/etc/apt/sources.list</filename>. For "
718 "example, when using a Debian archive, this command retrieves and scans the "
719 "<filename>Packages.gz</filename> files, so that information about new and "
720 "updated packages is available. An <literal>update</literal> should always be "
721 "performed before an <literal>upgrade</literal> or "
722 "<literal>dist-upgrade</literal>. Please be aware that the overall progress "
723 "meter will be incorrect as the size of the package files cannot be known in "
727 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
730 "<literal>upgrade</literal> is used to install the newest versions of all "
731 "packages currently installed on the system from the sources enumerated in "
732 "<filename>/etc/apt/sources.list</filename>. Packages currently installed "
733 "with new versions available are retrieved and upgraded; under no "
734 "circumstances are currently installed packages removed, or packages not "
735 "already installed retrieved and installed. New versions of currently "
736 "installed packages that cannot be upgraded without changing the install "
737 "status of another package will be left at their current version. An "
738 "<literal>update</literal> must be performed first so that "
739 "<command>apt-get</command> knows that new versions of packages are "
743 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
746 "<literal>dist-upgrade</literal> in addition to performing the function of "
747 "<literal>upgrade</literal>, also intelligently handles changing dependencies "
748 "with new versions of packages; <command>apt-get</command> has a \"smart\" "
749 "conflict resolution system, and it will attempt to upgrade the most "
750 "important packages at the expense of less important ones if necessary. The "
751 "<literal>dist-upgrade</literal> command may therefore remove some packages. "
752 "The <filename>/etc/apt/sources.list</filename> file contains a list of "
753 "locations from which to retrieve desired package files. See also "
754 "&apt-preferences; for a mechanism for overriding the general settings for "
755 "individual packages."
758 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
761 "<literal>dselect-upgrade</literal> is used in conjunction with the "
762 "traditional Debian packaging front-end, "
763 "&dselect;. <literal>dselect-upgrade</literal> follows the changes made by "
764 "&dselect; to the <literal>Status</literal> field of available packages, and "
765 "performs the actions necessary to realize that state (for instance, the "
766 "removal of old and the installation of new packages)."
769 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
772 "<literal>install</literal> is followed by one or more packages desired for "
773 "installation or upgrading. Each package is a package name, not a fully "
774 "qualified filename (for instance, in a Debian system, "
775 "<package>apt-utils</package> would be the argument provided, not "
776 "<filename>apt-utils_&apt-product-version;_amd64.deb</filename>). All "
777 "packages required by the package(s) specified for installation will also be "
778 "retrieved and installed. The <filename>/etc/apt/sources.list</filename> "
779 "file is used to locate the desired packages. If a hyphen is appended to the "
780 "package name (with no intervening space), the identified package will be "
781 "removed if it is installed. Similarly a plus sign can be used to designate "
782 "a package to install. These latter features may be used to override "
783 "decisions made by apt-get's conflict resolution system."
786 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
789 "Both of the version selection mechanisms can downgrade packages and must be "
793 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
796 "This is also the target to use if you want to upgrade one or more "
797 "already-installed packages without upgrading every package you have on your "
798 "system. Unlike the \"upgrade\" target, which installs the newest version of "
799 "all currently installed packages, \"install\" will install the newest "
800 "version of only the package(s) specified. Simply provide the name of the "
801 "package(s) you wish to upgrade, and if a newer version is available, it (and "
802 "its dependencies, as described above) will be downloaded and installed."
805 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
808 "Finally, the &apt-preferences; mechanism allows you to create an alternative "
809 "installation policy for individual packages."
812 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
815 "If no package matches the given expression and the expression contains one "
816 "of '.', '?' or '*' then it is assumed to be a POSIX regular expression, and "
817 "it is applied to all package names in the database. Any matches are then "
818 "installed (or removed). Note that matching is done by substring so 'lo.*' "
819 "matches 'how-lo' and 'lowest'. If this is undesired, anchor the regular "
820 "expression with a '^' or '$' character, or create a more specific regular "
824 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
827 "<literal>purge</literal> is identical to <literal>remove</literal> except "
828 "that packages are removed and purged (any configuration files are deleted "
832 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
835 "<literal>source</literal> causes <command>apt-get</command> to fetch source "
836 "packages. APT will examine the available packages to decide which source "
837 "package to fetch. It will then find and download into the current directory "
838 "the newest available version of that source package while respecting the "
839 "default release, set with the option "
840 "<literal>APT::Default-Release</literal>, the <option>-t</option> option or "
841 "per package with the <literal>pkg/release</literal> syntax, if possible."
844 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
847 "Source packages are tracked separately from binary packages via "
848 "<literal>deb-src</literal> lines in the &sources-list; file. This means that "
849 "you will need to add such a line for each repository you want to get sources "
850 "from; otherwise you will probably get either the wrong (too old/too new) "
851 "source versions or none at all."
854 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
857 "If the <option>--compile</option> option is specified then the package will "
858 "be compiled to a binary .deb using <command>dpkg-buildpackage</command> for "
859 "the architecture as defined by the <command>--host-architecture</command> "
860 "option. If <option>--download-only</option> is specified then the source "
861 "package will not be unpacked."
864 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
867 "A specific source version can be retrieved by postfixing the source name "
868 "with an equals and then the version to fetch, similar to the mechanism used "
869 "for the package files. This enables exact matching of the source package "
870 "name and version, implicitly enabling the "
871 "<literal>APT::Get::Only-Source</literal> option."
874 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
877 "Note that source packages are not installed and tracked in the "
878 "<command>dpkg</command> database like binary packages; they are simply "
879 "downloaded to the current directory, like source tarballs."
882 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
885 "<literal>build-dep</literal> causes apt-get to install/remove packages in an "
886 "attempt to satisfy the build dependencies for a source package. By default "
887 "the dependencies are satisfied to build the package natively. If desired a "
888 "host-architecture can be specified with the "
889 "<option>--host-architecture</option> option instead."
892 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
895 "<literal>check</literal> is a diagnostic tool; it updates the package cache "
896 "and checks for broken dependencies."
899 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
902 "<literal>download</literal> will download the given binary package into the "
906 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
909 "<literal>clean</literal> clears out the local repository of retrieved "
910 "package files. It removes everything but the lock file from "
911 "<filename>&cachedir;/archives/</filename> and "
912 "<filename>&cachedir;/archives/partial/</filename>."
915 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
918 "Like <literal>clean</literal>, <literal>autoclean</literal> clears out the "
919 "local repository of retrieved package files. The difference is that it only "
920 "removes package files that can no longer be downloaded, and are largely "
921 "useless. This allows a cache to be maintained over a long period without it "
922 "growing out of control. The configuration option "
923 "<literal>APT::Clean-Installed</literal> will prevent installed packages from "
924 "being erased if it is set to off."
927 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
930 "<literal>autoremove</literal> is used to remove packages that were "
931 "automatically installed to satisfy dependencies for other packages and are "
932 "now no longer needed."
935 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
938 "<literal>changelog</literal> downloads a package changelog and displays it "
939 "through <command>sensible-pager</command>. The server name and base "
940 "directory is defined in the <literal>APT::Changelogs::Server</literal> "
941 "variable (e.g. <ulink "
942 "url=\"http://packages.debian.org/changelogs\">packages.debian.org/changelogs</ulink> "
943 "for Debian or <ulink "
944 "url=\"http://changelogs.ubuntu.com/changelogs\">changelogs.ubuntu.com/changelogs</ulink> "
945 "for Ubuntu). By default it displays the changelog for the version that is "
946 "installed. However, you can specify the same options as for the "
947 "<option>install</option> command."
950 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
953 "Do not consider recommended packages as a dependency for installing. "
954 "Configuration Item: <literal>APT::Install-Recommends</literal>."
957 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
960 "Consider suggested packages as a dependency for installing. Configuration "
961 "Item: <literal>APT::Install-Suggests</literal>."
964 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
967 "Download only; package files are only retrieved, not unpacked or installed. "
968 "Configuration Item: <literal>APT::Get::Download-Only</literal>."
971 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
974 "Fix; attempt to correct a system with broken dependencies in place. This "
975 "option, when used with install/remove, can omit any packages to permit APT "
976 "to deduce a likely solution. If packages are specified, these have to "
977 "completely correct the problem. The option is sometimes necessary when "
978 "running APT for the first time; APT itself does not allow broken package "
979 "dependencies to exist on a system. It is possible that a system's dependency "
980 "structure can be so corrupt as to require manual intervention (which usually "
981 "means using <command>dpkg --remove</command> to eliminate some of the "
982 "offending packages). Use of this option together with <option>-m</option> "
983 "may produce an error in some situations. Configuration Item: "
984 "<literal>APT::Get::Fix-Broken</literal>."
987 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
990 "Ignore missing packages; if packages cannot be retrieved or fail the "
991 "integrity check after retrieval (corrupted package files), hold back those "
992 "packages and handle the result. Use of this option together with "
993 "<option>-f</option> may produce an error in some situations. If a package is "
994 "selected for installation (particularly if it is mentioned on the command "
995 "line) and it could not be downloaded then it will be silently held back. "
996 "Configuration Item: <literal>APT::Get::Fix-Missing</literal>."
999 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1000 #: apt-get.8.xml:297
1002 "Disables downloading of packages. This is best used with "
1003 "<option>--ignore-missing</option> to force APT to use only the .debs it has "
1004 "already downloaded. Configuration Item: "
1005 "<literal>APT::Get::Download</literal>."
1008 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1009 #: apt-get.8.xml:304
1011 "Quiet; produces output suitable for logging, omitting progress indicators. "
1012 "More q's will produce more quiet up to a maximum of 2. You can also use "
1013 "<option>-q=#</option> to set the quiet level, overriding the configuration "
1014 "file. Note that quiet level 2 implies <option>-y</option>; you should never "
1015 "use -qq without a no-action modifier such as -d, --print-uris or -s as APT "
1016 "may decide to do something you did not expect. Configuration Item: "
1017 "<literal>quiet</literal>."
1020 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1021 #: apt-get.8.xml:319
1023 "No action; perform a simulation of events that would occur but do not "
1024 "actually change the system. Configuration Item: "
1025 "<literal>APT::Get::Simulate</literal>."
1028 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1029 #: apt-get.8.xml:323
1031 "Simulated runs performed as a user will automatically deactivate locking "
1032 "(<literal>Debug::NoLocking</literal>), and if the option "
1033 "<literal>APT::Get::Show-User-Simulation-Note</literal> is set (as it is by "
1034 "default) a notice will also be displayed indicating that this is only a "
1035 "simulation. Runs performed as root do not trigger either NoLocking or the "
1036 "notice - superusers should know what they are doing without further warnings "
1037 "from <literal>apt-get</literal>."
1040 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1041 #: apt-get.8.xml:331
1043 "Simulated runs print out a series of lines, each representing a "
1044 "<command>dpkg</command> operation: configure (<literal>Conf</literal>), "
1045 "remove (<literal>Remv</literal>) or unpack "
1046 "(<literal>Inst</literal>). Square brackets indicate broken packages, and "
1047 "empty square brackets indicate breaks that are of no consequence (rare)."
1050 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1051 #: apt-get.8.xml:339
1053 "Automatic yes to prompts; assume \"yes\" as answer to all prompts and run "
1054 "non-interactively. If an undesirable situation, such as changing a held "
1055 "package, trying to install a unauthenticated package or removing an "
1056 "essential package occurs then <literal>apt-get</literal> will abort. "
1057 "Configuration Item: <literal>APT::Get::Assume-Yes</literal>."
1060 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1061 #: apt-get.8.xml:347
1063 "Automatic \"no\" to all prompts. Configuration Item: "
1064 "<literal>APT::Get::Assume-No</literal>."
1067 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1068 #: apt-get.8.xml:352
1070 "Show upgraded packages; print out a list of all packages that are to be "
1071 "upgraded. Configuration Item: <literal>APT::Get::Show-Upgraded</literal>."
1074 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1075 #: apt-get.8.xml:358
1077 "Show full versions for upgraded and installed packages. Configuration Item: "
1078 "<literal>APT::Get::Show-Versions</literal>."
1081 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1082 #: apt-get.8.xml:364
1084 "This option controls the architecture packages are built for by "
1085 "<command>apt-get source --compile</command> and how cross-builddependencies "
1086 "are satisfied. By default is it not set which means that the host "
1087 "architecture is the same as the build architecture (which is defined by "
1088 "<literal>APT::Architecture</literal>). Configuration Item: "
1089 "<literal>APT::Get::Host-Architecture</literal>."
1092 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1093 #: apt-get.8.xml:374
1095 "This option controls the activated build profiles for which a source package "
1096 "is built by <command>apt-get source --compile</command> and how build "
1097 "dependencies are satisfied. By default no build profile is active. More "
1098 "than one build profile can be activated at a time by concatenating them with "
1099 "a comma. Configuration Item: <literal>APT::Build-Profiles</literal>."
1102 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1103 #: apt-get.8.xml:385
1105 "Compile source packages after downloading them. Configuration Item: "
1106 "<literal>APT::Get::Compile</literal>."
1109 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1110 #: apt-get.8.xml:390
1112 "Ignore package holds; this causes <command>apt-get</command> to ignore a "
1113 "hold placed on a package. This may be useful in conjunction with "
1114 "<literal>dist-upgrade</literal> to override a large number of undesired "
1115 "holds. Configuration Item: <literal>APT::Ignore-Hold</literal>."
1118 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1119 #: apt-get.8.xml:397
1121 "Allow installing new packages when used in conjunction with "
1122 "<literal>upgrade</literal>. This is useful if the update of a installed "
1123 "package requires new dependencies to be installed. Instead of holding the "
1124 "package back <literal>upgrade</literal> will upgrade the package and install "
1125 "the new dependencies. Note that <literal>upgrade</literal> with this option "
1126 "will never remove packages, only allow adding new ones. Configuration Item: "
1127 "<literal>APT::Get::Upgrade-Allow-New</literal>."
1130 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1131 #: apt-get.8.xml:409
1133 "Do not upgrade packages; when used in conjunction with "
1134 "<literal>install</literal>, <literal>no-upgrade</literal> will prevent "
1135 "packages on the command line from being upgraded if they are already "
1136 "installed. Configuration Item: <literal>APT::Get::Upgrade</literal>."
1139 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1140 #: apt-get.8.xml:416
1142 "Do not install new packages; when used in conjunction with "
1143 "<literal>install</literal>, <literal>only-upgrade</literal> will install "
1144 "upgrades for already installed packages only and ignore requests to install "
1145 "new packages. Configuration Item: "
1146 "<literal>APT::Get::Only-Upgrade</literal>."
1149 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1150 #: apt-get.8.xml:424
1152 "Force yes; this is a dangerous option that will cause apt to continue "
1153 "without prompting if it is doing something potentially harmful. It should "
1154 "not be used except in very special situations. Using "
1155 "<literal>force-yes</literal> can potentially destroy your system! "
1156 "Configuration Item: <literal>APT::Get::force-yes</literal>."
1159 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1160 #: apt-get.8.xml:432
1162 "Instead of fetching the files to install their URIs are printed. Each URI "
1163 "will have the path, the destination file name, the size and the expected MD5 "
1164 "hash. Note that the file name to write to will not always match the file "
1165 "name on the remote site! This also works with the <literal>source</literal> "
1166 "and <literal>update</literal> commands. When used with the "
1167 "<literal>update</literal> command the MD5 and size are not included, and it "
1168 "is up to the user to decompress any compressed files. Configuration Item: "
1169 "<literal>APT::Get::Print-URIs</literal>."
1172 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1173 #: apt-get.8.xml:443
1175 "Use purge instead of remove for anything that would be removed. An asterisk "
1176 "(\"*\") will be displayed next to packages which are scheduled to be "
1177 "purged. <option>remove --purge</option> is equivalent to the "
1178 "<option>purge</option> command. Configuration Item: "
1179 "<literal>APT::Get::Purge</literal>."
1182 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1183 #: apt-get.8.xml:451
1185 "Re-install packages that are already installed and at the newest version. "
1186 "Configuration Item: <literal>APT::Get::ReInstall</literal>."
1189 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1190 #: apt-get.8.xml:456
1192 "This option is on by default; use <literal>--no-list-cleanup</literal> to "
1193 "turn it off. When it is on, <command>apt-get</command> will automatically "
1194 "manage the contents of <filename>&statedir;/lists</filename> to ensure that "
1195 "obsolete files are erased. The only reason to turn it off is if you "
1196 "frequently change your sources list. Configuration Item: "
1197 "<literal>APT::Get::List-Cleanup</literal>."
1200 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1201 #: apt-get.8.xml:466
1203 "This option controls the default input to the policy engine; it creates a "
1204 "default pin at priority 990 using the specified release string. This "
1205 "overrides the general settings in "
1206 "<filename>/etc/apt/preferences</filename>. Specifically pinned packages are "
1207 "not affected by the value of this option. In short, this option lets you "
1208 "have simple control over which distribution packages will be retrieved "
1209 "from. Some common examples might be <option>-t '2.1*'</option>, <option>-t "
1210 "unstable</option> or <option>-t sid</option>. Configuration Item: "
1211 "<literal>APT::Default-Release</literal>; see also the &apt-preferences; "
1215 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1216 #: apt-get.8.xml:481
1218 "Only perform operations that are 'trivial'. Logically this can be considered "
1219 "related to <option>--assume-yes</option>; where "
1220 "<option>--assume-yes</option> will answer yes to any prompt, "
1221 "<option>--trivial-only</option> will answer no. Configuration Item: "
1222 "<literal>APT::Get::Trivial-Only</literal>."
1225 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1226 #: apt-get.8.xml:488
1228 "If any packages are to be removed apt-get immediately aborts without "
1229 "prompting. Configuration Item: <literal>APT::Get::Remove</literal>."
1232 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1233 #: apt-get.8.xml:494
1235 "If the command is either <literal>install</literal> or "
1236 "<literal>remove</literal>, then this option acts like running the "
1237 "<literal>autoremove</literal> command, removing unused dependency "
1238 "packages. Configuration Item: <literal>APT::Get::AutomaticRemove</literal>."
1241 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1242 #: apt-get.8.xml:501
1244 "Only has meaning for the <literal>source</literal> and "
1245 "<literal>build-dep</literal> commands. Indicates that the given source "
1246 "names are not to be mapped through the binary table. This means that if "
1247 "this option is specified, these commands will only accept source package "
1248 "names as arguments, rather than accepting binary package names and looking "
1249 "up the corresponding source package. Configuration Item: "
1250 "<literal>APT::Get::Only-Source</literal>."
1253 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1254 #: apt-get.8.xml:512
1256 "Download only the diff, dsc, or tar file of a source archive. Configuration "
1257 "Item: <literal>APT::Get::Diff-Only</literal>, "
1258 "<literal>APT::Get::Dsc-Only</literal>, and "
1259 "<literal>APT::Get::Tar-Only</literal>."
1262 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1263 #: apt-get.8.xml:518
1265 "Only process architecture-dependent build-dependencies. Configuration Item: "
1266 "<literal>APT::Get::Arch-Only</literal>."
1269 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1270 #: apt-get.8.xml:523
1272 "Ignore if packages can't be authenticated and don't prompt about it. This "
1273 "is useful for tools like pbuilder. Configuration Item: "
1274 "<literal>APT::Get::AllowUnauthenticated</literal>."
1277 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1278 #: apt-get.8.xml:529
1280 "Show user friendly progress information in the terminal window when packages "
1281 "are installed, upgraded or removed. For a machine parsable version of this "
1282 "data see README.progress-reporting in the apt doc directory. Configuration "
1283 "Item: <literal>Dpkg::Progress</literal> and "
1284 "<literal>Dpkg::Progress-Fancy</literal>."
1287 #. type: Content of: <refentry><refsect1><title>
1288 #: apt-get.8.xml:542 apt-cache.8.xml:339 apt-key.8.xml:170 apt-mark.8.xml:121 apt.conf.5.xml:1216 apt_preferences.5.xml:694
1292 #. type: Content of: <refentry><refsect1><para>
1293 #: apt-get.8.xml:553
1295 "&apt-cache;, &apt-cdrom;, &dpkg;, &sources-list;, &apt-conf;, &apt-config;, "
1296 "&apt-secure;, The APT User's guide in &guidesdir;, &apt-preferences;, the "
1300 #. type: Content of: <refentry><refsect1><para>
1301 #: apt-get.8.xml:559
1303 "<command>apt-get</command> returns zero on normal operation, decimal 100 on "
1307 #. type: Content of: <refentry><refnamediv><refpurpose>
1308 #: apt-cache.8.xml:29
1309 msgid "query the APT cache"
1312 #. type: Content of: <refentry><refsect1><para>
1313 #: apt-cache.8.xml:35
1315 "<command>apt-cache</command> performs a variety of operations on APT's "
1316 "package cache. <command>apt-cache</command> does not manipulate the state of "
1317 "the system but does provide operations to search and generate interesting "
1318 "output from the package metadata."
1321 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1322 #: apt-cache.8.xml:45
1324 "<literal>gencaches</literal> creates APT's package cache. This is done "
1325 "implicitly by all commands needing this cache if it is missing or outdated."
1328 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term><option><replaceable>
1329 #: apt-cache.8.xml:49 apt-cache.8.xml:138 apt-cache.8.xml:159 apt-cache.8.xml:181 apt-cache.8.xml:186 apt-cache.8.xml:202 apt-cache.8.xml:220 apt-cache.8.xml:232
1330 msgid "&synopsis-pkg;"
1333 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1334 #: apt-cache.8.xml:50
1336 "<literal>showpkg</literal> displays information about the packages listed on "
1337 "the command line. Remaining arguments are package names. The available "
1338 "versions and reverse dependencies of each package listed are listed, as well "
1339 "as forward dependencies for each version. Forward (normal) dependencies are "
1340 "those packages upon which the package in question depends; reverse "
1341 "dependencies are those packages that depend upon the package in "
1342 "question. Thus, forward dependencies must be satisfied for a package, but "
1343 "reverse dependencies need not be. For instance, <command>apt-cache showpkg "
1344 "libreadline2</command> would produce output similar to the following:"
1347 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><informalexample><programlisting>
1348 #: apt-cache.8.xml:62
1351 "Package: libreadline2\n"
1352 "Versions: 2.1-12(/var/state/apt/lists/foo_Packages),\n"
1353 "Reverse Depends: \n"
1354 " libreadlineg2,libreadline2\n"
1355 " libreadline2-altdev,libreadline2\n"
1357 "2.1-12 - libc5 (2 5.4.0-0) ncurses3.0 (0 (null))\n"
1360 "Reverse Provides: \n"
1363 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1364 #: apt-cache.8.xml:74
1366 "Thus it may be seen that libreadline2, version 2.1-12, depends on libc5 and "
1367 "ncurses3.0 which must be installed for libreadline2 to work. In turn, "
1368 "libreadlineg2 and libreadline2-altdev depend on libreadline2. If "
1369 "libreadline2 is installed, libc5 and ncurses3.0 (and ldso) must also be "
1370 "installed; libreadlineg2 and libreadline2-altdev do not have to be "
1371 "installed. For the specific meaning of the remainder of the output it is "
1372 "best to consult the apt source code."
1375 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1376 #: apt-cache.8.xml:83
1378 "<literal>stats</literal> displays some statistics about the cache. No "
1379 "further arguments are expected. Statistics reported are:"
1382 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1383 #: apt-cache.8.xml:86
1385 "<literal>Total package names</literal> is the number of package names found "
1389 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1390 #: apt-cache.8.xml:90
1392 "<literal>Normal packages</literal> is the number of regular, ordinary "
1393 "package names; these are packages that bear a one-to-one correspondence "
1394 "between their names and the names used by other packages for them in "
1395 "dependencies. The majority of packages fall into this category."
1398 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1399 #: apt-cache.8.xml:96
1401 "<literal>Pure virtual packages</literal> is the number of packages that "
1402 "exist only as a virtual package name; that is, packages only \"provide\" the "
1403 "virtual package name, and no package actually uses the name. For instance, "
1404 "\"mail-transport-agent\" in the Debian system is a pure virtual package; "
1405 "several packages provide \"mail-transport-agent\", but there is no package "
1406 "named \"mail-transport-agent\"."
1409 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1410 #: apt-cache.8.xml:104
1412 "<literal>Single virtual packages</literal> is the number of packages with "
1413 "only one package providing a particular virtual package. For example, in the "
1414 "Debian system, \"X11-text-viewer\" is a virtual package, but only one "
1415 "package, xless, provides \"X11-text-viewer\"."
1418 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1419 #: apt-cache.8.xml:110
1421 "<literal>Mixed virtual packages</literal> is the number of packages that "
1422 "either provide a particular virtual package or have the virtual package name "
1423 "as the package name. For instance, in the Debian system, \"debconf\" is both "
1424 "an actual package, and provided by the debconf-tiny package."
1427 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1428 #: apt-cache.8.xml:117
1430 "<literal>Missing</literal> is the number of package names that were "
1431 "referenced in a dependency but were not provided by any package. Missing "
1432 "packages may be an evidence if a full distribution is not accessed, or if a "
1433 "package (real or virtual) has been dropped from the distribution. Usually "
1434 "they are referenced from Conflicts or Breaks statements."
1437 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1438 #: apt-cache.8.xml:124
1440 "<literal>Total distinct</literal> versions is the number of package versions "
1441 "found in the cache; this value is therefore at least equal to the number of "
1442 "total package names. If more than one distribution is being accessed (for "
1443 "instance, \"stable\" and \"unstable\"), this value can be considerably "
1444 "larger than the number of total package names."
1447 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1448 #: apt-cache.8.xml:131
1450 "<literal>Total dependencies</literal> is the number of dependency "
1451 "relationships claimed by all of the packages in the cache."
1454 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1455 #: apt-cache.8.xml:139
1457 "<literal>showsrc</literal> displays all the source package records that "
1458 "match the given package names. All versions are shown, as well as all "
1459 "records that declare the name to be a binary package."
1462 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1463 #: apt-cache.8.xml:145
1465 "<literal>dump</literal> shows a short listing of every package in the "
1466 "cache. It is primarily for debugging."
1469 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1470 #: apt-cache.8.xml:150
1472 "<literal>dumpavail</literal> prints out an available list to stdout. This is "
1473 "suitable for use with &dpkg; and is used by the &dselect; method."
1476 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1477 #: apt-cache.8.xml:155
1479 "<literal>unmet</literal> displays a summary of all unmet dependencies in the "
1483 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1484 #: apt-cache.8.xml:160
1486 "<literal>show</literal> performs a function similar to <command>dpkg "
1487 "--print-avail</command>; it displays the package records for the named "
1491 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term><option><replaceable>
1492 #: apt-cache.8.xml:165
1493 msgid "&synopsis-regex;"
1496 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1497 #: apt-cache.8.xml:166
1499 "<literal>search</literal> performs a full text search on all available "
1500 "package lists for the POSIX regex pattern given, see ®ex;. It searches "
1501 "the package names and the descriptions for an occurrence of the regular "
1502 "expression and prints out the package name and the short description, "
1503 "including virtual package names. If <option>--full</option> is given then "
1504 "output identical to <literal>show</literal> is produced for each matched "
1505 "package, and if <option>--names-only</option> is given then the long "
1506 "description is not searched, only the package name is."
1509 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1510 #: apt-cache.8.xml:177
1512 "Separate arguments can be used to specify multiple search patterns that are "
1516 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1517 #: apt-cache.8.xml:182
1519 "<literal>depends</literal> shows a listing of each dependency a package has "
1520 "and all the possible other packages that can fulfill that dependency."
1523 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1524 #: apt-cache.8.xml:187
1526 "<literal>rdepends</literal> shows a listing of each reverse dependency a "
1530 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
1531 #: apt-cache.8.xml:191
1532 msgid "<optional><replaceable>&synopsis-prefix;</replaceable></optional>"
1535 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1536 #: apt-cache.8.xml:192
1538 "This command prints the name of each package APT knows. The optional "
1539 "argument is a prefix match to filter the name list. The output is suitable "
1540 "for use in a shell tab complete function and the output is generated "
1541 "extremely quickly. This command is best used with the "
1542 "<option>--generate</option> option."
1545 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1546 #: apt-cache.8.xml:197
1548 "Note that a package which APT knows of is not necessarily available to "
1549 "download, installable or installed, e.g. virtual packages are also listed in "
1550 "the generated list."
1553 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1554 #: apt-cache.8.xml:203
1556 "<literal>dotty</literal> takes a list of packages on the command line and "
1557 "generates output suitable for use by dotty from the <ulink "
1558 "url=\"http://www.research.att.com/sw/tools/graphviz/\">GraphViz</ulink> "
1559 "package. The result will be a set of nodes and edges representing the "
1560 "relationships between the packages. By default the given packages will trace "
1561 "out all dependent packages; this can produce a very large graph. To limit "
1562 "the output to only the packages listed on the command line, set the "
1563 "<literal>APT::Cache::GivenOnly</literal> option."
1566 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1567 #: apt-cache.8.xml:212
1569 "The resulting nodes will have several shapes; normal packages are boxes, "
1570 "pure virtual packages are triangles, mixed virtual packages are diamonds, "
1571 "missing packages are hexagons. Orange boxes mean recursion was stopped (leaf "
1572 "packages), blue lines are pre-depends, green lines are conflicts."
1575 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1576 #: apt-cache.8.xml:217
1577 msgid "Caution, dotty cannot graph larger sets of packages."
1580 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1581 #: apt-cache.8.xml:221
1583 "The same as <literal>dotty</literal>, only for xvcg from the <ulink "
1584 "url=\"http://rw4.cs.uni-sb.de/users/sander/html/gsvcg1.html\">VCG "
1588 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
1589 #: apt-cache.8.xml:225
1590 msgid "<optional><replaceable>&synopsis-pkg;</replaceable>…</optional>"
1593 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1594 #: apt-cache.8.xml:226
1596 "<literal>policy</literal> is meant to help debug issues relating to the "
1597 "preferences file. With no arguments it will print out the priorities of each "
1598 "source. Otherwise it prints out detailed information about the priority "
1599 "selection of the named package."
1602 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1603 #: apt-cache.8.xml:233
1605 "<literal>apt-cache</literal>'s <literal>madison</literal> command attempts "
1606 "to mimic the output format and a subset of the functionality of the Debian "
1607 "archive management tool, <literal>madison</literal>. It displays available "
1608 "versions of a package in a tabular format. Unlike the original "
1609 "<literal>madison</literal>, it can only display information for the "
1610 "architecture for which APT has retrieved package lists "
1611 "(<literal>APT::Architecture</literal>)."
1614 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1615 #: apt-cache.8.xml:249
1617 "Select the file to store the package cache. The package cache is the primary "
1618 "cache used by all operations. Configuration Item: "
1619 "<literal>Dir::Cache::pkgcache</literal>."
1622 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1623 #: apt-cache.8.xml:255
1625 "Select the file to store the source cache. The source is used only by "
1626 "<literal>gencaches</literal> and it stores a parsed version of the package "
1627 "information from remote sources. When building the package cache the source "
1628 "cache is used to avoid reparsing all of the package files. Configuration "
1629 "Item: <literal>Dir::Cache::srcpkgcache</literal>."
1632 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1633 #: apt-cache.8.xml:263
1635 "Quiet; produces output suitable for logging, omitting progress indicators. "
1636 "More q's will produce more quietness up to a maximum of 2. You can also use "
1637 "<option>-q=#</option> to set the quietness level, overriding the "
1638 "configuration file. Configuration Item: <literal>quiet</literal>."
1641 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1642 #: apt-cache.8.xml:270
1644 "Print only important dependencies; for use with <literal>unmet</literal> and "
1645 "<literal>depends</literal>. Causes only Depends and Pre-Depends relations to "
1646 "be printed. Configuration Item: <literal>APT::Cache::Important</literal>."
1649 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1650 #: apt-cache.8.xml:284
1652 "Per default the <literal>depends</literal> and <literal>rdepends</literal> "
1653 "print all dependencies. This can be tweaked with these flags which will omit "
1654 "the specified dependency type. Configuration Item: "
1655 "<literal>APT::Cache::Show<replaceable>DependencyType</replaceable></literal> "
1656 "e.g. <literal>APT::Cache::ShowRecommends</literal>."
1659 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1660 #: apt-cache.8.xml:291
1662 "Print full package records when searching. Configuration Item: "
1663 "<literal>APT::Cache::ShowFull</literal>."
1666 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1667 #: apt-cache.8.xml:296
1669 "Print full records for all available versions. This is the default; to turn "
1670 "it off, use <option>--no-all-versions</option>. If "
1671 "<option>--no-all-versions</option> is specified, only the candidate version "
1672 "will be displayed (the one which would be selected for installation). This "
1673 "option is only applicable to the <literal>show</literal> command. "
1674 "Configuration Item: <literal>APT::Cache::AllVersions</literal>."
1677 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1678 #: apt-cache.8.xml:305
1680 "Perform automatic package cache regeneration, rather than use the cache as "
1681 "it is. This is the default; to turn it off, use "
1682 "<option>--no-generate</option>. Configuration Item: "
1683 "<literal>APT::Cache::Generate</literal>."
1686 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1687 #: apt-cache.8.xml:311
1689 "Only search on the package names, not the long descriptions. Configuration "
1690 "Item: <literal>APT::Cache::NamesOnly</literal>."
1693 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1694 #: apt-cache.8.xml:316
1696 "Make <literal>pkgnames</literal> print all names, including virtual packages "
1697 "and missing dependencies. Configuration Item: "
1698 "<literal>APT::Cache::AllNames</literal>."
1701 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1702 #: apt-cache.8.xml:322
1704 "Make <literal>depends</literal> and <literal>rdepends</literal> recursive so "
1705 "that all packages mentioned are printed once. Configuration Item: "
1706 "<literal>APT::Cache::RecurseDepends</literal>."
1709 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1710 #: apt-cache.8.xml:329
1712 "Limit the output of <literal>depends</literal> and "
1713 "<literal>rdepends</literal> to packages which are currently installed. "
1714 "Configuration Item: <literal>APT::Cache::Installed</literal>."
1717 #. type: Content of: <refentry><refsect1><para>
1718 #: apt-cache.8.xml:347
1719 msgid "&apt-conf;, &sources-list;, &apt-get;"
1722 #. type: Content of: <refentry><refsect1><para>
1723 #: apt-cache.8.xml:352
1725 "<command>apt-cache</command> returns zero on normal operation, decimal 100 "
1729 #. type: Content of: <refentry><refnamediv><refpurpose>
1731 msgid "APT key management utility"
1734 #. type: Content of: <refentry><refsect1><para>
1737 "<command>apt-key</command> is used to manage the list of keys used by apt to "
1738 "authenticate packages. Packages which have been authenticated using these "
1739 "keys will be considered trusted."
1742 #. type: Content of: <refentry><refsect1><title>
1747 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1750 "Add a new key to the list of trusted keys. The key is read from the "
1751 "filename given with the parameter &synopsis-param-filename; or if the "
1752 "filename is <literal>-</literal> from standard input."
1755 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1757 msgid "Remove a key from the list of trusted keys."
1760 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1762 msgid "Output the key &synopsis-param-keyid; to standard output."
1765 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1767 msgid "Output all trusted keys to standard output."
1770 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1772 msgid "List trusted keys."
1775 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1776 #: apt-key.8.xml:103
1777 msgid "List fingerprints of trusted keys."
1780 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1781 #: apt-key.8.xml:114
1783 "Pass advanced options to gpg. With adv --recv-key you can download the "
1787 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1788 #: apt-key.8.xml:126
1790 "Update the local keyring with the archive keyring and remove from the local "
1791 "keyring the archive keys which are no longer valid. The archive keyring is "
1792 "shipped in the <literal>archive-keyring</literal> package of your "
1793 "distribution, e.g. the &keyring-package; package in &keyring-distro;."
1796 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1797 #: apt-key.8.xml:140
1799 "Perform an update working similarly to the <command>update</command> command "
1800 "above, but get the archive keyring from a URI instead and validate it "
1801 "against a master key. This requires an installed &wget; and an APT build "
1802 "configured to have a server to fetch from and a master keyring to validate. "
1803 "APT in Debian does not support this command, relying on "
1804 "<command>update</command> instead, but Ubuntu's APT does."
1807 #. type: Content of: <refentry><refsect1><title>
1808 #: apt-key.8.xml:156 apt-cdrom.8.xml:76
1812 #. type: Content of: <refentry><refsect1><para>
1813 #: apt-key.8.xml:157
1815 "Note that options need to be defined before the commands described in the "
1819 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1820 #: apt-key.8.xml:160
1822 "With this option it is possible to specify a particular keyring file the "
1823 "command should operate on. The default is that a command is executed on the "
1824 "<filename>trusted.gpg</filename> file as well as on all parts in the "
1825 "<filename>trusted.gpg.d</filename> directory, though "
1826 "<filename>trusted.gpg</filename> is the primary keyring which means that "
1827 "e.g. new keys are added to this one."
1830 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
1831 #: apt-key.8.xml:175
1832 msgid "<filename>/etc/apt/trustdb.gpg</filename>"
1835 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1836 #: apt-key.8.xml:176
1837 msgid "Local trust database of archive keys."
1840 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
1841 #: apt-key.8.xml:179
1842 msgid "&keyring-filename;"
1845 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1846 #: apt-key.8.xml:180
1847 msgid "Keyring of &keyring-distro; archive trusted keys."
1850 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
1851 #: apt-key.8.xml:183
1852 msgid "&keyring-removed-filename;"
1855 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1856 #: apt-key.8.xml:184
1857 msgid "Keyring of &keyring-distro; archive removed trusted keys."
1860 #. type: Content of: <refentry><refsect1><para>
1861 #: apt-key.8.xml:193
1862 msgid "&apt-get;, &apt-secure;"
1865 #. type: Content of: <refentry><refnamediv><refpurpose>
1866 #: apt-mark.8.xml:29
1867 msgid "mark/unmark a package as being automatically-installed"
1870 #. type: Content of: <refentry><refsect1><para>
1871 #: apt-mark.8.xml:35
1873 "<command>apt-mark</command> will change whether a package has been marked as "
1874 "being automatically installed."
1877 #. type: Content of: <refentry><refsect1><para>
1878 #: apt-mark.8.xml:39
1880 "When you request that a package is installed, and as a result other packages "
1881 "are installed to satisfy its dependencies, the dependencies are marked as "
1882 "being automatically installed. Once these automatically installed packages "
1883 "are no longer depended on by any manually installed packages, they will be "
1884 "removed by e.g. <command>apt-get</command> or <command>aptitude</command>."
1887 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1888 #: apt-mark.8.xml:48
1890 "<literal>auto</literal> is used to mark a package as being automatically "
1891 "installed, which will cause the package to be removed when no more manually "
1892 "installed packages depend on this package."
1895 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1896 #: apt-mark.8.xml:56
1898 "<literal>manual</literal> is used to mark a package as being manually "
1899 "installed, which will prevent the package from being automatically removed "
1900 "if no other packages depend on it."
1903 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1904 #: apt-mark.8.xml:64
1906 "<literal>hold</literal> is used to mark a package as held back, which will "
1907 "prevent the package from being automatically installed, upgraded or "
1908 "removed. The command is only a wrapper around <command>dpkg "
1909 "--set-selections</command> and the state is therefore maintained by &dpkg; "
1910 "and not affected by the <option>--file</option> option."
1913 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1914 #: apt-mark.8.xml:74
1916 "<literal>unhold</literal> is used to cancel a previously set hold on a "
1917 "package to allow all actions again."
1920 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1921 #: apt-mark.8.xml:80
1923 "<literal>showauto</literal> is used to print a list of automatically "
1924 "installed packages with each package on a new line. All automatically "
1925 "installed packages will be listed if no package is given. If packages are "
1926 "given only those which are automatically installed will be shown."
1929 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1930 #: apt-mark.8.xml:88
1932 "<literal>showmanual</literal> can be used in the same way as "
1933 "<literal>showauto</literal> except that it will print a list of manually "
1934 "installed packages instead."
1937 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1938 #: apt-mark.8.xml:95
1940 "<literal>showhold</literal> is used to print a list of packages on hold in "
1941 "the same way as for the other show commands."
1944 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1945 #: apt-mark.8.xml:111
1947 "Read/Write package stats from the filename given with the parameter "
1948 "&synopsis-param-filename; instead of from the default location, which is "
1949 "<filename>extended_status</filename> in the directory defined by the "
1950 "Configuration Item: <literal>Dir::State</literal>."
1953 #. type: Content of: <refentry><refsect1><para>
1954 #: apt-mark.8.xml:132
1956 "<command>apt-mark</command> returns zero on normal operation, non-zero on "
1960 #. type: Content of: <refentry><refnamediv><refpurpose>
1961 #: apt-secure.8.xml:43
1962 msgid "Archive authentication support for APT"
1965 #. type: Content of: <refentry><refsect1><para>
1966 #: apt-secure.8.xml:48
1968 "Starting with version 0.6, <command>apt</command> contains code that does "
1969 "signature checking of the Release file for all archives. This ensures that "
1970 "packages in the archive can't be modified by people who have no access to "
1971 "the Release file signing key."
1974 #. type: Content of: <refentry><refsect1><para>
1975 #: apt-secure.8.xml:56
1977 "If a package comes from a archive without a signature, or with a signature "
1978 "that apt does not have a key for, that package is considered untrusted, and "
1979 "installing it will result in a big warning. <command>apt-get</command> will "
1980 "currently only warn for unsigned archives; future releases might force all "
1981 "sources to be verified before downloading packages from them."
1984 #. type: Content of: <refentry><refsect1><para>
1985 #: apt-secure.8.xml:65
1987 "The package frontends &apt-get;, &aptitude; and &synaptic; support this new "
1988 "authentication feature."
1991 #. type: Content of: <refentry><refsect1><title>
1992 #: apt-secure.8.xml:70
1993 msgid "Trusted archives"
1996 #. type: Content of: <refentry><refsect1><para>
1997 #: apt-secure.8.xml:73
1999 "The chain of trust from an apt archive to the end user is made up of several "
2000 "steps. <command>apt-secure</command> is the last step in this chain; "
2001 "trusting an archive does not mean that you trust its packages not to contain "
2002 "malicious code, but means that you trust the archive maintainer. It's the "
2003 "archive maintainer's responsibility to ensure that the archive's integrity "
2007 #. type: Content of: <refentry><refsect1><para>
2008 #: apt-secure.8.xml:81
2010 "apt-secure does not review signatures at a package level. If you require "
2011 "tools to do this you should look at <command>debsig-verify</command> and "
2012 "<command>debsign</command> (provided in the debsig-verify and devscripts "
2013 "packages respectively)."
2016 #. type: Content of: <refentry><refsect1><para>
2017 #: apt-secure.8.xml:88
2019 "The chain of trust in Debian starts when a maintainer uploads a new package "
2020 "or a new version of a package to the Debian archive. In order to become "
2021 "effective, this upload needs to be signed by a key contained in the Debian "
2022 "Maintainers keyring (available in the debian-keyring package). Maintainers' "
2023 "keys are signed by other maintainers following pre-established procedures to "
2024 "ensure the identity of the key holder."
2027 #. type: Content of: <refentry><refsect1><para>
2028 #: apt-secure.8.xml:98
2030 "Once the uploaded package is verified and included in the archive, the "
2031 "maintainer signature is stripped off, and checksums of the package are "
2032 "computed and put in the Packages file. The checksums of all of the Packages "
2033 "files are then computed and put into the Release file. The Release file is "
2034 "then signed by the archive key for this &keyring-distro; release, and "
2035 "distributed alongside the packages and the Packages files on "
2036 "&keyring-distro; mirrors. The keys are in the &keyring-distro; archive "
2037 "keyring available in the &keyring-package; package."
2040 #. type: Content of: <refentry><refsect1><para>
2041 #: apt-secure.8.xml:109
2043 "End users can check the signature of the Release file, extract a checksum of "
2044 "a package from it and compare it with the checksum of the package they "
2045 "downloaded by hand - or rely on APT doing this automatically."
2048 #. type: Content of: <refentry><refsect1><para>
2049 #: apt-secure.8.xml:114
2051 "Notice that this is distinct from checking signatures on a per package "
2052 "basis. It is designed to prevent two possible attacks:"
2055 #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para>
2056 #: apt-secure.8.xml:119
2058 "<literal>Network \"man in the middle\" attacks</literal>. Without signature "
2059 "checking, malicious agents can introduce themselves into the package "
2060 "download process and provide malicious software either by controlling a "
2061 "network element (router, switch, etc.) or by redirecting traffic to a rogue "
2062 "server (through ARP or DNS spoofing attacks)."
2065 #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para>
2066 #: apt-secure.8.xml:127
2068 "<literal>Mirror network compromise</literal>. Without signature checking, a "
2069 "malicious agent can compromise a mirror host and modify the files in it to "
2070 "propagate malicious software to all users downloading packages from that "
2074 #. type: Content of: <refentry><refsect1><para>
2075 #: apt-secure.8.xml:134
2077 "However, it does not defend against a compromise of the Debian master server "
2078 "itself (which signs the packages) or against a compromise of the key used to "
2079 "sign the Release files. In any case, this mechanism can complement a "
2080 "per-package signature."
2083 #. type: Content of: <refentry><refsect1><title>
2084 #: apt-secure.8.xml:140
2085 msgid "User configuration"
2088 #. type: Content of: <refentry><refsect1><para>
2089 #: apt-secure.8.xml:142
2091 "<command>apt-key</command> is the program that manages the list of keys used "
2092 "by apt. It can be used to add or remove keys, although an installation of "
2093 "this release will automatically contain the default Debian archive signing "
2094 "keys used in the Debian package repositories."
2097 #. type: Content of: <refentry><refsect1><para>
2098 #: apt-secure.8.xml:149
2100 "In order to add a new key you need to first download it (you should make "
2101 "sure you are using a trusted communication channel when retrieving it), add "
2102 "it with <command>apt-key</command> and then run <command>apt-get "
2103 "update</command> so that apt can download and verify the "
2104 "<filename>InRelease</filename> or <filename>Release.gpg</filename> files "
2105 "from the archives you have configured."
2108 #. type: Content of: <refentry><refsect1><title>
2109 #: apt-secure.8.xml:158
2110 msgid "Archive configuration"
2113 #. type: Content of: <refentry><refsect1><para>
2114 #: apt-secure.8.xml:160
2116 "If you want to provide archive signatures in an archive under your "
2117 "maintenance you have to:"
2120 #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para>
2121 #: apt-secure.8.xml:165
2123 "<emphasis>Create a toplevel Release file</emphasis>, if it does not exist "
2124 "already. You can do this by running <command>apt-ftparchive "
2125 "release</command> (provided in apt-utils)."
2128 #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para>
2129 #: apt-secure.8.xml:170
2131 "<emphasis>Sign it</emphasis>. You can do this by running <command>gpg "
2132 "--clearsign -o InRelease Release</command> and <command>gpg -abs -o "
2133 "Release.gpg Release</command>."
2136 #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para>
2137 #: apt-secure.8.xml:174
2139 "<emphasis>Publish the key fingerprint</emphasis>, that way your users will "
2140 "know what key they need to import in order to authenticate the files in the "
2144 #. type: Content of: <refentry><refsect1><para>
2145 #: apt-secure.8.xml:181
2147 "Whenever the contents of the archive change (new packages are added or "
2148 "removed) the archive maintainer has to follow the first two steps outlined "
2152 #. type: Content of: <refentry><refsect1><para>
2153 #: apt-secure.8.xml:189
2155 "&apt-conf;, &apt-get;, &sources-list;, &apt-key;, &apt-ftparchive;, "
2156 "&debsign;, &debsig-verify;, &gpg;"
2159 #. type: Content of: <refentry><refsect1><para>
2160 #: apt-secure.8.xml:193
2162 "For more background information you might want to review the <ulink "
2163 "url=\"http://www.debian.org/doc/manuals/securing-debian-howto/ch7\">Debian "
2164 "Security Infrastructure</ulink> chapter of the Securing Debian Manual "
2165 "(available also in the harden-doc package) and the <ulink "
2166 "url=\"http://www.cryptnet.net/fdp/crypto/strong_distro.html\" >Strong "
2167 "Distribution HOWTO</ulink> by V. Alex Brennen."
2170 #. type: Content of: <refentry><refsect1><title>
2171 #: apt-secure.8.xml:206
2172 msgid "Manpage Authors"
2175 #. type: Content of: <refentry><refsect1><para>
2176 #: apt-secure.8.xml:208
2178 "This man-page is based on the work of Javier Fernández-Sanguino Peña, Isaac "
2179 "Jones, Colin Walters, Florian Weimer and Michael Vogt."
2182 #. type: Content of: <refentry><refnamediv><refpurpose>
2183 #: apt-cdrom.8.xml:28
2184 msgid "APT CD-ROM management utility"
2187 #. type: Content of: <refentry><refsect1><para>
2188 #: apt-cdrom.8.xml:34
2190 "<command>apt-cdrom</command> is used to add a new CD-ROM to APT's list of "
2191 "available sources. <command>apt-cdrom</command> takes care of determining "
2192 "the structure of the disc as well as correcting for several possible "
2193 "mis-burns and verifying the index files."
2196 #. type: Content of: <refentry><refsect1><para>
2197 #: apt-cdrom.8.xml:41
2199 "It is necessary to use <command>apt-cdrom</command> to add CDs to the APT "
2200 "system; it cannot be done by hand. Furthermore each disc in a multi-CD set "
2201 "must be inserted and scanned separately to account for possible mis-burns."
2204 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2205 #: apt-cdrom.8.xml:52
2207 "<literal>add</literal> is used to add a new disc to the source list. It will "
2208 "unmount the CD-ROM device, prompt for a disc to be inserted and then proceed "
2209 "to scan it and copy the index files. If the disc does not have a proper "
2210 "<filename>.disk</filename> directory you will be prompted for a descriptive "
2214 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2215 #: apt-cdrom.8.xml:60
2217 "APT uses a CD-ROM ID to track which disc is currently in the drive and "
2218 "maintains a database of these IDs in "
2219 "<filename>&statedir;/cdroms.list</filename>"
2222 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2223 #: apt-cdrom.8.xml:68
2225 "A debugging tool to report the identity of the current disc as well as the "
2229 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2230 #: apt-cdrom.8.xml:81
2232 "Do not try to auto-detect the CD-ROM path. Usually combined with the "
2233 "<option>--cdrom</option> option. Configuration Item: "
2234 "<literal>Acquire::cdrom::AutoDetect</literal>."
2237 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2238 #: apt-cdrom.8.xml:89
2240 "Mount point; specify the location to mount the CD-ROM. This mount point must "
2241 "be listed in <filename>/etc/fstab</filename> and properly configured. "
2242 "Configuration Item: <literal>Acquire::cdrom::mount</literal>."
2245 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2246 #: apt-cdrom.8.xml:98
2248 "Rename a disc; change the label of a disc or override the disc's given "
2249 "label. This option will cause <command>apt-cdrom</command> to prompt for a "
2250 "new label. Configuration Item: <literal>APT::CDROM::Rename</literal>."
2253 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2254 #: apt-cdrom.8.xml:107
2256 "No mounting; prevent <command>apt-cdrom</command> from mounting and "
2257 "unmounting the mount point. Configuration Item: "
2258 "<literal>APT::CDROM::NoMount</literal>."
2261 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2262 #: apt-cdrom.8.xml:115
2264 "Fast Copy; Assume the package files are valid and do not check every "
2265 "package. This option should be used only if <command>apt-cdrom</command> has "
2266 "been run on this disc before and did not detect any errors. Configuration "
2267 "Item: <literal>APT::CDROM::Fast</literal>."
2270 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2271 #: apt-cdrom.8.xml:125
2273 "Thorough Package Scan; This option may be needed with some old Debian "
2274 "1.1/1.2 discs that have Package files in strange places. It takes much "
2275 "longer to scan the CD but will pick them all up."
2278 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2279 #: apt-cdrom.8.xml:136
2281 "No Changes; Do not change the &sources-list; file and do not write index "
2282 "files. Everything is still checked however. Configuration Item: "
2283 "<literal>APT::CDROM::NoAct</literal>."
2286 #. type: Content of: <refentry><refsect1><para>
2287 #: apt-cdrom.8.xml:149
2288 msgid "&apt-conf;, &apt-get;, &sources-list;"
2291 #. type: Content of: <refentry><refsect1><para>
2292 #: apt-cdrom.8.xml:154
2294 "<command>apt-cdrom</command> returns zero on normal operation, decimal 100 "
2298 #. type: Content of: <refentry><refnamediv><refpurpose>
2299 #: apt-config.8.xml:29
2300 msgid "APT Configuration Query program"
2303 #. type: Content of: <refentry><refsect1><para>
2304 #: apt-config.8.xml:35
2306 "<command>apt-config</command> is an internal program used by various "
2307 "portions of the APT suite to provide consistent configurability. It accesses "
2308 "the main configuration file <filename>/etc/apt/apt.conf</filename> in a "
2309 "manner that is easy to use for scripted applications."
2312 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2313 #: apt-config.8.xml:47
2315 "shell is used to access the configuration information from a shell "
2316 "script. It is given pairs of arguments, the first being a shell variable and "
2317 "the second the configuration value to query. As output it lists shell "
2318 "assignment commands for each value present. In a shell script it should be "
2322 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><informalexample><programlisting>
2323 #: apt-config.8.xml:55
2327 "RES=`apt-config shell OPTS MyApp::options`\n"
2331 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2332 #: apt-config.8.xml:60
2334 "This will set the shell environment variable $OPTS to the value of "
2335 "MyApp::options with a default of <option>-f</option>."
2338 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2339 #: apt-config.8.xml:64
2341 "The configuration item may be postfixed with a /[fdbi]. f returns file "
2342 "names, d returns directories, b returns true or false and i returns an "
2343 "integer. Each of the returns is normalized and verified internally."
2346 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2347 #: apt-config.8.xml:73
2348 msgid "Just show the contents of the configuration space."
2351 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2352 #: apt-config.8.xml:86
2354 "Include options which have an empty value. This is the default, so use "
2355 "--no-empty to remove them from the output."
2358 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term><option><replaceable>
2359 #: apt-config.8.xml:91
2360 msgid "%f "%v";%n"
2363 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2364 #: apt-config.8.xml:92
2366 "Defines the output of each config option. %t will be replaced with "
2367 "its individual name, %f with its full hierarchical name and %v "
2368 "with its value. Use uppercase letters and special characters in the value "
2369 "will be encoded to ensure that it can e.g. be safely used in a quoted-string "
2370 "as defined by RFC822. Additionally %n will be replaced by a newline, "
2371 "and %N by a tab. A % can be printed by using %%."
2374 #. type: Content of: <refentry><refsect1><para>
2375 #: apt-config.8.xml:106 apt-extracttemplates.1.xml:67 apt-sortpkgs.1.xml:60 apt-ftparchive.1.xml:604
2379 #. type: Content of: <refentry><refsect1><para>
2380 #: apt-config.8.xml:111
2382 "<command>apt-config</command> returns zero on normal operation, decimal 100 "
2386 #. type: Content of: <refentry><refentryinfo><author><contrib>
2387 #: apt.conf.5.xml:16
2388 msgid "Initial documentation of Debug::*."
2391 #. type: Content of: <refentry><refentryinfo><author><email>
2392 #: apt.conf.5.xml:17
2393 msgid "dburrows@debian.org"
2396 #. type: Content of: <refentry><refmeta><manvolnum>
2397 #: apt.conf.5.xml:27 apt_preferences.5.xml:21 sources.list.5.xml:22
2401 #. type: Content of: <refentry><refnamediv><refpurpose>
2402 #: apt.conf.5.xml:34
2403 msgid "Configuration file for APT"
2406 #. type: Content of: <refentry><refsect1><para>
2407 #: apt.conf.5.xml:38
2409 "<filename>/etc/apt/apt.conf</filename> is the main configuration file shared "
2410 "by all the tools in the APT suite of tools, though it is by no means the "
2411 "only place options can be set. The suite also shares a common command line "
2412 "parser to provide a uniform environment."
2415 #. type: Content of: <refentry><refsect1><orderedlist><para>
2416 #: apt.conf.5.xml:44
2418 "When an APT tool starts up it will read the configuration files in the "
2422 #. type: Content of: <refentry><refsect1><orderedlist><listitem><para>
2423 #: apt.conf.5.xml:46
2425 "the file specified by the <envar>APT_CONFIG</envar> environment variable (if "
2429 #. type: Content of: <refentry><refsect1><orderedlist><listitem><para>
2430 #: apt.conf.5.xml:48
2432 "all files in <literal>Dir::Etc::Parts</literal> in alphanumeric ascending "
2433 "order which have either no or \"<literal>conf</literal>\" as filename "
2434 "extension and which only contain alphanumeric, hyphen (-), underscore (_) "
2435 "and period (.) characters. Otherwise APT will print a notice that it has "
2436 "ignored a file, unless that file matches a pattern in the "
2437 "<literal>Dir::Ignore-Files-Silently</literal> configuration list - in which "
2438 "case it will be silently ignored."
2441 #. type: Content of: <refentry><refsect1><orderedlist><listitem><para>
2442 #: apt.conf.5.xml:55
2443 msgid "the main configuration file specified by <literal>Dir::Etc::main</literal>"
2446 #. type: Content of: <refentry><refsect1><orderedlist><listitem><para>
2447 #: apt.conf.5.xml:57
2449 "the command line options are applied to override the configuration "
2450 "directives or to load even more configuration files."
2453 #. type: Content of: <refentry><refsect1><title>
2454 #: apt.conf.5.xml:61
2458 #. type: Content of: <refentry><refsect1><para>
2459 #: apt.conf.5.xml:62
2461 "The configuration file is organized in a tree with options organized into "
2462 "functional groups. Option specification is given with a double colon "
2463 "notation; for instance <literal>APT::Get::Assume-Yes</literal> is an option "
2464 "within the APT tool group, for the Get tool. Options do not inherit from "
2465 "their parent groups."
2468 #. type: Content of: <refentry><refsect1><para>
2469 #: apt.conf.5.xml:68
2471 "Syntactically the configuration language is modeled after what the ISC tools "
2472 "such as bind and dhcp use. Lines starting with <literal>//</literal> are "
2473 "treated as comments (ignored), as well as all text between "
2474 "<literal>/*</literal> and <literal>*/</literal>, just like C/C++ comments. "
2475 "Each line is of the form <literal>APT::Get::Assume-Yes \"true\";</literal>. "
2476 "The quotation marks and trailing semicolon are required. The value must be "
2477 "on one line, and there is no kind of string concatenation. Values must not "
2478 "include backslashes or extra quotation marks. Option names are made up of "
2479 "alphanumeric characters and the characters \"/-:._+\". A new scope can be "
2480 "opened with curly braces, like this:"
2483 #. type: Content of: <refentry><refsect1><informalexample><programlisting>
2484 #: apt.conf.5.xml:81
2489 " Assume-Yes \"true\";\n"
2490 " Fix-Broken \"true\";\n"
2495 #. type: Content of: <refentry><refsect1><para>
2496 #: apt.conf.5.xml:89
2498 "with newlines placed to make it more readable. Lists can be created by "
2499 "opening a scope and including a single string enclosed in quotes followed by "
2500 "a semicolon. Multiple entries can be included, separated by a semicolon."
2503 #. type: Content of: <refentry><refsect1><informalexample><programlisting>
2504 #: apt.conf.5.xml:94
2506 msgid "DPkg::Pre-Install-Pkgs {\"/usr/sbin/dpkg-preconfigure --apt\";};\n"
2509 #. type: Content of: <refentry><refsect1><para>
2510 #: apt.conf.5.xml:97
2512 "In general the sample configuration file &configureindex; is a good guide "
2513 "for how it should look."
2516 #. type: Content of: <refentry><refsect1><para>
2517 #: apt.conf.5.xml:100
2519 "Case is not significant in names of configuration items, so in the previous "
2520 "example you could use <literal>dpkg::pre-install-pkgs</literal>."
2523 #. type: Content of: <refentry><refsect1><para>
2524 #: apt.conf.5.xml:103
2526 "Names for the configuration items are optional if a list is defined as can "
2527 "be seen in the <literal>DPkg::Pre-Install-Pkgs</literal> example above. If "
2528 "you don't specify a name a new entry will simply add a new option to the "
2529 "list. If you specify a name you can override the option in the same way as "
2530 "any other option by reassigning a new value to the option."
2533 #. type: Content of: <refentry><refsect1><para>
2534 #: apt.conf.5.xml:108
2536 "Two special commands are defined: <literal>#include</literal> (which is "
2537 "deprecated and not supported by alternative implementations) and "
2538 "<literal>#clear</literal>. <literal>#include</literal> will include the "
2539 "given file, unless the filename ends in a slash, in which case the whole "
2540 "directory is included. <literal>#clear</literal> is used to erase a part of "
2541 "the configuration tree. The specified element and all its descendants are "
2542 "erased. (Note that these lines also need to end with a semicolon.)"
2545 #. type: Content of: <refentry><refsect1><para>
2546 #: apt.conf.5.xml:118
2548 "The <literal>#clear</literal> command is the only way to delete a list or a "
2549 "complete scope. Reopening a scope (or using the syntax described below with "
2550 "an appended <literal>::</literal>) will <emphasis>not</emphasis> override "
2551 "previously written entries. Options can only be overridden by addressing a "
2552 "new value to them - lists and scopes can't be overridden, only cleared."
2555 #. type: Content of: <refentry><refsect1><para>
2556 #: apt.conf.5.xml:126
2558 "All of the APT tools take an -o option which allows an arbitrary "
2559 "configuration directive to be specified on the command line. The syntax is a "
2560 "full option name (<literal>APT::Get::Assume-Yes</literal> for instance) "
2561 "followed by an equals sign then the new value of the option. To append a new "
2562 "element to a list, add a trailing <literal>::</literal> to the name of the "
2563 "list. (As you might suspect, the scope syntax can't be used on the command "
2567 #. type: Content of: <refentry><refsect1><para>
2568 #: apt.conf.5.xml:134
2570 "Note that appending items to a list using <literal>::</literal> only works "
2571 "for one item per line, and that you should not use it in combination with "
2572 "the scope syntax (which adds <literal>::</literal> implicitly). Using both "
2573 "syntaxes together will trigger a bug which some users unfortunately depend "
2574 "on: an option with the unusual name \"<literal>::</literal>\" which acts "
2575 "like every other option with a name. This introduces many problems; for one "
2576 "thing, users who write multiple lines in this <emphasis>wrong</emphasis> "
2577 "syntax in the hope of appending to a list will achieve the opposite, as only "
2578 "the last assignment for this option \"<literal>::</literal>\" will be "
2579 "used. Future versions of APT will raise errors and stop working if they "
2580 "encounter this misuse, so please correct such statements now while APT "
2581 "doesn't explicitly complain about them."
2584 #. type: Content of: <refentry><refsect1><title>
2585 #: apt.conf.5.xml:149
2586 msgid "The APT Group"
2589 #. type: Content of: <refentry><refsect1><para>
2590 #: apt.conf.5.xml:150
2592 "This group of options controls general APT behavior as well as holding the "
2593 "options for all of the tools."
2596 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2597 #: apt.conf.5.xml:155
2599 "System Architecture; sets the architecture to use when fetching files and "
2600 "parsing package lists. The internal default is the architecture apt was "
2604 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2605 #: apt.conf.5.xml:162
2607 "All Architectures the system supports. For instance, CPUs implementing the "
2608 "<literal>amd64</literal> (also called <literal>x86-64</literal>) "
2609 "instruction set are also able to execute binaries compiled for the "
2610 "<literal>i386</literal> (<literal>x86</literal>) instruction set. This list "
2611 "is used when fetching files and parsing package lists. The initial default "
2612 "is always the system's native architecture "
2613 "(<literal>APT::Architecture</literal>), and foreign architectures are added "
2614 "to the default list when they are registered via <command>dpkg "
2615 "--add-architecture</command>."
2618 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2619 #: apt.conf.5.xml:176
2621 "List of all build profiles enabled for build-dependency resolution, without "
2622 "the \"<literal>profile.</literal>\" namespace prefix. By default this list "
2623 "is empty. The <envar>DEB_BUILD_PROFILES</envar> as used by "
2624 "&dpkg-buildpackage; overrides the list notation."
2627 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2628 #: apt.conf.5.xml:184
2630 "Default release to install packages from if more than one version is "
2631 "available. Contains release name, codename or release version. Examples: "
2632 "'stable', 'testing', 'unstable', '&stable-codename;', '&testing-codename;', "
2633 "'4.0', '5.0*'. See also &apt-preferences;."
2636 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2637 #: apt.conf.5.xml:190
2639 "Ignore held packages; this global option causes the problem resolver to "
2640 "ignore held packages in its decision making."
2643 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2644 #: apt.conf.5.xml:195
2646 "Defaults to on. When turned on the autoclean feature will remove any "
2647 "packages which can no longer be downloaded from the cache. If turned off "
2648 "then packages that are locally installed are also excluded from cleaning - "
2649 "but note that APT provides no direct means to reinstall them."
2652 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2653 #: apt.conf.5.xml:203
2655 "Defaults to on, which will cause APT to install essential and important "
2656 "packages as soon as possible in an install/upgrade operation, in order to "
2657 "limit the effect of a failing &dpkg; call. If this option is disabled, APT "
2658 "treats an important package in the same way as an extra package: between the "
2659 "unpacking of the package A and its configuration there can be many other "
2660 "unpack or configuration calls for other unrelated packages B, C etc. If "
2661 "these cause the &dpkg; call to fail (e.g. because package B's maintainer "
2662 "scripts generate an error), this results in a system state in which package "
2663 "A is unpacked but unconfigured - so any package depending on A is now no "
2664 "longer guaranteed to work, as its dependency on A is no longer satisfied."
2667 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2668 #: apt.conf.5.xml:215
2670 "The immediate configuration marker is also applied in the potentially "
2671 "problematic case of circular dependencies, since a dependency with the "
2672 "immediate flag is equivalent to a Pre-Dependency. In theory this allows APT "
2673 "to recognise a situation in which it is unable to perform immediate "
2674 "configuration, abort, and suggest to the user that the option should be "
2675 "temporarily deactivated in order to allow the operation to proceed. Note "
2676 "the use of the word \"theory\" here; in the real world this problem has "
2677 "rarely been encountered, in non-stable distribution versions, and was caused "
2678 "by wrong dependencies of the package in question or by a system in an "
2679 "already broken state; so you should not blindly disable this option, as the "
2680 "scenario mentioned above is not the only problem it can help to prevent in "
2684 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2685 #: apt.conf.5.xml:228
2687 "Before a big operation like <literal>dist-upgrade</literal> is run with this "
2688 "option disabled you should try to explicitly <literal>install</literal> the "
2689 "package APT is unable to configure immediately; but please make sure you "
2690 "also report your problem to your distribution and to the APT team with the "
2691 "buglink below, so they can work on improving or correcting the upgrade "
2695 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2696 #: apt.conf.5.xml:239
2698 "Never enable this option unless you <emphasis>really</emphasis> know what "
2699 "you are doing. It permits APT to temporarily remove an essential package to "
2700 "break a Conflicts/Conflicts or Conflicts/Pre-Depends loop between two "
2701 "essential packages. <emphasis>Such a loop should never exist and is a grave "
2702 "bug</emphasis>. This option will work if the essential packages are not "
2703 "<command>tar</command>, <command>gzip</command>, <command>libc</command>, "
2704 "<command>dpkg</command>, <command>dash</command> or anything that those "
2705 "packages depend on."
2708 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2709 #: apt.conf.5.xml:251
2711 "APT uses since version 0.7.26 a resizable memory mapped cache file to store "
2712 "the available information. <literal>Cache-Start</literal> acts as a hint of "
2713 "the size the cache will grow to, and is therefore the amount of memory APT "
2714 "will request at startup. The default value is 20971520 bytes (~20 MB). Note "
2715 "that this amount of space needs to be available for APT; otherwise it will "
2716 "likely fail ungracefully, so for memory restricted devices this value should "
2717 "be lowered while on systems with a lot of configured sources it should be "
2718 "increased. <literal>Cache-Grow</literal> defines in bytes with the default "
2719 "of 1048576 (~1 MB) how much the cache size will be increased in the event "
2720 "the space defined by <literal>Cache-Start</literal> is not enough. This "
2721 "value will be applied again and again until either the cache is big enough "
2722 "to store all information or the size of the cache reaches the "
2723 "<literal>Cache-Limit</literal>. The default of "
2724 "<literal>Cache-Limit</literal> is 0 which stands for no limit. If "
2725 "<literal>Cache-Grow</literal> is set to 0 the automatic growth of the cache "
2729 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2730 #: apt.conf.5.xml:267
2731 msgid "Defines which packages are considered essential build dependencies."
2734 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2735 #: apt.conf.5.xml:271
2737 "The Get subsection controls the &apt-get; tool; please see its documentation "
2738 "for more information about the options here."
2741 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2742 #: apt.conf.5.xml:276
2744 "The Cache subsection controls the &apt-cache; tool; please see its "
2745 "documentation for more information about the options here."
2748 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2749 #: apt.conf.5.xml:281
2751 "The CDROM subsection controls the &apt-cdrom; tool; please see its "
2752 "documentation for more information about the options here."
2755 #. type: Content of: <refentry><refsect1><title>
2756 #: apt.conf.5.xml:287
2757 msgid "The Acquire Group"
2760 #. type: Content of: <refentry><refsect1><para>
2761 #: apt.conf.5.xml:288
2763 "The <literal>Acquire</literal> group of options controls the download of "
2764 "packages as well as the various \"acquire methods\" responsible for the "
2765 "download itself (see also &sources-list;)."
2768 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2769 #: apt.conf.5.xml:295
2771 "Security related option defaulting to true, as giving a Release file's "
2772 "validation an expiration date prevents replay attacks over a long timescale, "
2773 "and can also for example help users to identify mirrors that are no longer "
2774 "updated - but the feature depends on the correctness of the clock on the "
2775 "user system. Archive maintainers are encouraged to create Release files with "
2776 "the <literal>Valid-Until</literal> header, but if they don't or a stricter "
2777 "value is desired the <literal>Max-ValidTime</literal> option below can be "
2781 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2782 #: apt.conf.5.xml:308
2784 "Maximum time (in seconds) after its creation (as indicated by the "
2785 "<literal>Date</literal> header) that the <filename>Release</filename> file "
2786 "should be considered valid. If the Release file itself includes a "
2787 "<literal>Valid-Until</literal> header the earlier date of the two is used as "
2788 "the expiration date. The default value is <literal>0</literal> which stands "
2789 "for \"valid forever\". Archive specific settings can be made by appending "
2790 "the label of the archive to the option name."
2793 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2794 #: apt.conf.5.xml:320
2796 "Minimum time (in seconds) after its creation (as indicated by the "
2797 "<literal>Date</literal> header) that the <filename>Release</filename> file "
2798 "should be considered valid. Use this if you need to use a seldom updated "
2799 "(local) mirror of a more frequently updated archive with a "
2800 "<literal>Valid-Until</literal> header instead of completely disabling the "
2801 "expiration date checking. Archive specific settings can and should be used "
2802 "by appending the label of the archive to the option name."
2805 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2806 #: apt.conf.5.xml:332
2808 "Try to download deltas called <literal>PDiffs</literal> for indexes (like "
2809 "<filename>Packages</filename> files) instead of downloading whole ones. True "
2813 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2814 #: apt.conf.5.xml:335
2816 "Two sub-options to limit the use of PDiffs are also available: "
2817 "<literal>FileLimit</literal> can be used to specify a maximum number of "
2818 "PDiff files should be downloaded to update a "
2819 "file. <literal>SizeLimit</literal> on the other hand is the maximum "
2820 "percentage of the size of all patches compared to the size of the targeted "
2821 "file. If one of these limits is exceeded the complete file is downloaded "
2822 "instead of the patches."
2825 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2826 #: apt.conf.5.xml:345
2828 "Queuing mode; <literal>Queue-Mode</literal> can be one of "
2829 "<literal>host</literal> or <literal>access</literal> which determines how "
2830 "APT parallelizes outgoing connections. <literal>host</literal> means that "
2831 "one connection per target host will be opened, <literal>access</literal> "
2832 "means that one connection per URI type will be opened."
2835 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2836 #: apt.conf.5.xml:353
2838 "Number of retries to perform. If this is non-zero APT will retry failed "
2839 "files the given number of times."
2842 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2843 #: apt.conf.5.xml:358
2845 "Use symlinks for source archives. If set to true then source archives will "
2846 "be symlinked when possible instead of copying. True is the default."
2849 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2850 #: apt.conf.5.xml:363
2852 "<literal>http::Proxy</literal> sets the default proxy to use for HTTP "
2853 "URIs. It is in the standard form of "
2854 "<literal>http://[[user][:pass]@]host[:port]/</literal>. Per host proxies "
2855 "can also be specified by using the form "
2856 "<literal>http::Proxy::<host></literal> with the special keyword "
2857 "<literal>DIRECT</literal> meaning to use no proxies. If no one of the above "
2858 "settings is specified, <envar>http_proxy</envar> environment variable will "
2862 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2863 #: apt.conf.5.xml:371
2865 "Three settings are provided for cache control with HTTP/1.1 compliant proxy "
2866 "caches. <literal>No-Cache</literal> tells the proxy not to use its cached "
2867 "response under any circumstances. <literal>Max-Age</literal> sets the "
2868 "allowed maximum age (in seconds) of an index file in the cache of the "
2869 "proxy. <literal>No-Store</literal> specifies that the proxy should not "
2870 "store the requested archive files in its cache, which can be used to prevent "
2871 "the proxy from polluting its cache with (big) .deb files."
2874 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2875 #: apt.conf.5.xml:381 apt.conf.5.xml:469
2877 "The option <literal>timeout</literal> sets the timeout timer used by the "
2878 "method; this value applies to the connection as well as the data timeout."
2881 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2882 #: apt.conf.5.xml:384
2884 "The setting <literal>Acquire::http::Pipeline-Depth</literal> can be used to "
2885 "enable HTTP pipelining (RFC 2616 section 8.1.2.2) which can be beneficial "
2886 "e.g. on high-latency connections. It specifies how many requests are sent in "
2887 "a pipeline. Previous APT versions had a default of 10 for this setting, but "
2888 "the default value is now 0 (= disabled) to avoid problems with the "
2889 "ever-growing amount of webservers and proxies which choose to not conform to "
2890 "the HTTP/1.1 specification."
2893 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2894 #: apt.conf.5.xml:391
2896 "<literal>Acquire::http::AllowRedirect</literal> controls whether APT will "
2897 "follow redirects, which is enabled by default."
2900 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2901 #: apt.conf.5.xml:394
2903 "The used bandwidth can be limited with "
2904 "<literal>Acquire::http::Dl-Limit</literal> which accepts integer values in "
2905 "kilobytes per second. The default value is 0 which deactivates the limit and "
2906 "tries to use all available bandwidth. Note that this option implicitly "
2907 "disables downloading from multiple servers at the same time."
2910 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2911 #: apt.conf.5.xml:401
2913 "<literal>Acquire::http::User-Agent</literal> can be used to set a different "
2914 "User-Agent for the http download method as some proxies allow access for "
2915 "clients only if the client uses a known identifier."
2918 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2919 #: apt.conf.5.xml:405
2921 "<literal>Acquire::http::Proxy-Auto-Detect</literal> can be used to specify "
2922 "an external command to discover the http proxy to use. Apt expects the "
2923 "command to output the proxy on stdout in the style "
2924 "<literal>http://proxy:port/</literal>. This will override the generic "
2925 "<literal>Acquire::http::Proxy</literal> but not any specific host proxy "
2926 "configuration set via <literal>Acquire::http::Proxy::$HOST</literal>. See "
2927 "the &squid-deb-proxy-client; package for an example implementation that uses "
2928 "avahi. This option takes precedence over the legacy option name "
2929 "<literal>ProxyAutoDetect</literal>."
2932 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2933 #: apt.conf.5.xml:423
2935 "The <literal>Cache-control</literal>, <literal>Timeout</literal>, "
2936 "<literal>AllowRedirect</literal>, <literal>Dl-Limit</literal> and "
2937 "<literal>proxy</literal> options work for HTTPS URIs in the same way as for "
2938 "the <literal>http</literal> method, and default to the same values if they "
2939 "are not explicitly set. The <literal>Pipeline-Depth</literal> option is not "
2943 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2944 #: apt.conf.5.xml:431
2946 "<literal>CaInfo</literal> suboption specifies place of file that holds info "
2947 "about trusted certificates. <literal><host>::CaInfo</literal> is the "
2948 "corresponding per-host option. <literal>Verify-Peer</literal> boolean "
2949 "suboption determines whether or not the server's host certificate should be "
2950 "verified against trusted certificates. "
2951 "<literal><host>::Verify-Peer</literal> is the corresponding per-host "
2952 "option. <literal>Verify-Host</literal> boolean suboption determines whether "
2953 "or not the server's hostname should be verified. "
2954 "<literal><host>::Verify-Host</literal> is the corresponding per-host "
2955 "option. <literal>SslCert</literal> determines what certificate to use for "
2956 "client authentication. <literal><host>::SslCert</literal> is the "
2957 "corresponding per-host option. <literal>SslKey</literal> determines what "
2958 "private key to use for client "
2959 "authentication. <literal><host>::SslKey</literal> is the corresponding "
2960 "per-host option. <literal>SslForceVersion</literal> overrides default SSL "
2961 "version to use. It can contain either of the strings "
2962 "'<literal>TLSv1</literal>' or '<literal>SSLv3</literal>'. "
2963 "<literal><host>::SslForceVersion</literal> is the corresponding "
2967 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2968 #: apt.conf.5.xml:452
2970 "<literal>ftp::Proxy</literal> sets the default proxy to use for FTP URIs. "
2971 "It is in the standard form of "
2972 "<literal>ftp://[[user][:pass]@]host[:port]/</literal>. Per host proxies can "
2973 "also be specified by using the form "
2974 "<literal>ftp::Proxy::<host></literal> with the special keyword "
2975 "<literal>DIRECT</literal> meaning to use no proxies. If no one of the above "
2976 "settings is specified, <envar>ftp_proxy</envar> environment variable will be "
2977 "used. To use an FTP proxy you will have to set the "
2978 "<literal>ftp::ProxyLogin</literal> script in the configuration file. This "
2979 "entry specifies the commands to send to tell the proxy server what to "
2980 "connect to. Please see &configureindex; for an example of how to do "
2981 "this. The substitution variables representing the corresponding URI "
2982 "component are <literal>$(PROXY_USER)</literal>, "
2983 "<literal>$(PROXY_PASS)</literal>, <literal>$(SITE_USER)</literal>, "
2984 "<literal>$(SITE_PASS)</literal>, <literal>$(SITE)</literal> and "
2985 "<literal>$(SITE_PORT)</literal>."
2988 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2989 #: apt.conf.5.xml:472
2991 "Several settings are provided to control passive mode. Generally it is safe "
2992 "to leave passive mode on; it works in nearly every environment. However, "
2993 "some situations require that passive mode be disabled and port mode FTP used "
2994 "instead. This can be done globally or for connections that go through a "
2995 "proxy or for a specific host (see the sample config file for examples)."
2998 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2999 #: apt.conf.5.xml:479
3001 "It is possible to proxy FTP over HTTP by setting the "
3002 "<envar>ftp_proxy</envar> environment variable to an HTTP URL - see the "
3003 "discussion of the http method above for syntax. You cannot set this in the "
3004 "configuration file and it is not recommended to use FTP over HTTP due to its "
3008 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3009 #: apt.conf.5.xml:484
3011 "The setting <literal>ForceExtended</literal> controls the use of RFC2428 "
3012 "<literal>EPSV</literal> and <literal>EPRT</literal> commands. The default is "
3013 "false, which means these commands are only used if the control connection is "
3014 "IPv6. Setting this to true forces their use even on IPv4 connections. Note "
3015 "that most FTP servers do not support RFC2428."
3018 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout>
3019 #: apt.conf.5.xml:498
3021 msgid "/cdrom/::Mount \"foo\";"
3024 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3025 #: apt.conf.5.xml:493
3027 "For URIs using the <literal>cdrom</literal> method, the only configurable "
3028 "option is the mount point, <literal>cdrom::Mount</literal>, which must be "
3029 "the mount point for the CD-ROM (or DVD, or whatever) drive as specified in "
3030 "<filename>/etc/fstab</filename>. It is possible to provide alternate mount "
3031 "and unmount commands if your mount point cannot be listed in the fstab. The "
3032 "syntax is to put <placeholder type=\"literallayout\" id=\"0\"/> within the "
3033 "<literal>cdrom</literal> block. It is important to have the trailing slash. "
3034 "Unmount commands can be specified using UMount."
3037 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3038 #: apt.conf.5.xml:506
3040 "For GPGV URIs the only configurable option is "
3041 "<literal>gpgv::Options</literal>, which passes additional parameters to "
3045 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis>
3046 #: apt.conf.5.xml:517
3049 "Acquire::CompressionTypes::<replaceable>FileExtension</replaceable> "
3050 "\"<replaceable>Methodname</replaceable>\";"
3053 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3054 #: apt.conf.5.xml:512
3056 "List of compression types which are understood by the acquire methods. "
3057 "Files like <filename>Packages</filename> can be available in various "
3058 "compression formats. By default the acquire methods can decompress "
3059 "<command>bzip2</command>, <command>lzma</command> and "
3060 "<command>gzip</command> compressed files; with this setting more formats can "
3061 "be added on the fly or the used method can be changed. The syntax for this "
3062 "is: <placeholder type=\"synopsis\" id=\"0\"/>"
3065 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis>
3066 #: apt.conf.5.xml:522
3068 msgid "Acquire::CompressionTypes::Order:: \"gz\";"
3071 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis>
3072 #: apt.conf.5.xml:525
3074 msgid "Acquire::CompressionTypes::Order { \"lzma\"; \"gz\"; };"
3077 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3078 #: apt.conf.5.xml:518
3080 "Also, the <literal>Order</literal> subgroup can be used to define in which "
3081 "order the acquire system will try to download the compressed files. The "
3082 "acquire system will try the first and proceed with the next compression type "
3083 "in this list on error, so to prefer one over the other type simply add the "
3084 "preferred type first - default types not already added will be implicitly "
3085 "appended to the end of the list, so e.g. <placeholder type=\"synopsis\" "
3086 "id=\"0\"/> can be used to prefer <command>gzip</command> compressed files "
3087 "over <command>bzip2</command> and <command>lzma</command>. If "
3088 "<command>lzma</command> should be preferred over <command>gzip</command> and "
3089 "<command>bzip2</command> the configure setting should look like this: "
3090 "<placeholder type=\"synopsis\" id=\"1\"/> It is not needed to add "
3091 "<literal>bz2</literal> to the list explicitly as it will be added "
3095 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout>
3096 #: apt.conf.5.xml:532
3098 msgid "Dir::Bin::bzip2 \"/bin/bzip2\";"
3101 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3102 #: apt.conf.5.xml:527
3105 "<literal>Dir::Bin::<replaceable>Methodname</replaceable></literal> will be "
3106 "checked at run time. If this option has been set, the method will only be "
3107 "used if this file exists; e.g. for the <literal>bzip2</literal> method (the "
3108 "inbuilt) setting is: <placeholder type=\"literallayout\" id=\"0\"/> Note "
3109 "also that list entries specified on the command line will be added at the "
3110 "end of the list specified in the configuration files, but before the default "
3111 "entries. To prefer a type in this case over the ones specified in the "
3112 "configuration files you can set the option direct - not in list style. This "
3113 "will not override the defined list; it will only prefix the list with this "
3117 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3118 #: apt.conf.5.xml:537
3120 "The special type <literal>uncompressed</literal> can be used to give "
3121 "uncompressed files a preference, but note that most archives don't provide "
3122 "uncompressed files so this is mostly only useable for local mirrors."
3125 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3126 #: apt.conf.5.xml:544
3128 "When downloading <literal>gzip</literal> compressed indexes (Packages, "
3129 "Sources, or Translations), keep them gzip compressed locally instead of "
3130 "unpacking them. This saves quite a lot of disk space at the expense of more "
3131 "CPU requirements when building the local package caches. False by default."
3134 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3135 #: apt.conf.5.xml:552
3137 "The Languages subsection controls which <filename>Translation</filename> "
3138 "files are downloaded and in which order APT tries to display the "
3139 "description-translations. APT will try to display the first available "
3140 "description in the language which is listed first. Languages can be defined "
3141 "with their short or long language codes. Note that not all archives provide "
3142 "<filename>Translation</filename> files for every language - the long "
3143 "language codes are especially rare."
3146 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><programlisting>
3147 #: apt.conf.5.xml:569
3149 msgid "Acquire::Languages { \"environment\"; \"de\"; \"en\"; \"none\"; \"fr\"; };"
3152 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3153 #: apt.conf.5.xml:557
3155 "The default list includes \"environment\" and "
3156 "\"en\". \"<literal>environment</literal>\" has a special meaning here: it "
3157 "will be replaced at runtime with the language codes extracted from the "
3158 "<literal>LC_MESSAGES</literal> environment variable. It will also ensure "
3159 "that these codes are not included twice in the list. If "
3160 "<literal>LC_MESSAGES</literal> is set to \"C\" only the "
3161 "<filename>Translation-en</filename> file (if available) will be used. To "
3162 "force APT to use no Translation file use the setting "
3163 "<literal>Acquire::Languages=none</literal>. \"<literal>none</literal>\" is "
3164 "another special meaning code which will stop the search for a suitable "
3165 "<filename>Translation</filename> file. This tells APT to download these "
3166 "translations too, without actually using them unless the environment "
3167 "specifies the languages. So the following example configuration will result "
3168 "in the order \"en, de\" in an English locale or \"de, en\" in a German "
3169 "one. Note that \"fr\" is downloaded, but not used unless APT is used in a "
3170 "French locale (where the order would be \"fr, de, en\"). <placeholder "
3171 "type=\"programlisting\" id=\"0\"/>"
3174 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3175 #: apt.conf.5.xml:570
3177 "Note: To prevent problems resulting from APT being executed in different "
3178 "environments (e.g. by different users or by other programs) all Translation "
3179 "files which are found in <filename>/var/lib/apt/lists/</filename> will be "
3180 "added to the end of the list (after an implicit "
3181 "\"<literal>none</literal>\")."
3184 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3185 #: apt.conf.5.xml:579
3186 msgid "When downloading, force to use only the IPv4 protocol."
3189 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3190 #: apt.conf.5.xml:585
3191 msgid "When downloading, force to use only the IPv6 protocol."
3194 #. type: Content of: <refentry><refsect1><title>
3195 #: apt.conf.5.xml:592
3199 #. type: Content of: <refentry><refsect1><para>
3200 #: apt.conf.5.xml:594
3202 "The <literal>Dir::State</literal> section has directories that pertain to "
3203 "local state information. <literal>lists</literal> is the directory to place "
3204 "downloaded package lists in and <literal>status</literal> is the name of the "
3205 "&dpkg; status file. <literal>preferences</literal> is the name of the APT "
3206 "<filename>preferences</filename> file. <literal>Dir::State</literal> "
3207 "contains the default directory to prefix on all sub-items if they do not "
3208 "start with <filename>/</filename> or <filename>./</filename>."
3211 #. type: Content of: <refentry><refsect1><para>
3212 #: apt.conf.5.xml:601
3214 "<literal>Dir::Cache</literal> contains locations pertaining to local cache "
3215 "information, such as the two package caches <literal>srcpkgcache</literal> "
3216 "and <literal>pkgcache</literal> as well as the location to place downloaded "
3217 "archives, <literal>Dir::Cache::archives</literal>. Generation of caches can "
3218 "be turned off by setting <literal>pkgcache</literal> or "
3219 "<literal>srcpkgcache</literal> to <literal>\"\"</literal>. This will slow "
3220 "down startup but save disk space. It is probably preferable to turn off the "
3221 "pkgcache rather than the srcpkgcache. Like <literal>Dir::State</literal> "
3222 "the default directory is contained in <literal>Dir::Cache</literal>"
3225 #. type: Content of: <refentry><refsect1><para>
3226 #: apt.conf.5.xml:611
3228 "<literal>Dir::Etc</literal> contains the location of configuration files, "
3229 "<literal>sourcelist</literal> gives the location of the sourcelist and "
3230 "<literal>main</literal> is the default configuration file (setting has no "
3231 "effect, unless it is done from the config file specified by "
3232 "<envar>APT_CONFIG</envar>)."
3235 #. type: Content of: <refentry><refsect1><para>
3236 #: apt.conf.5.xml:617
3238 "The <literal>Dir::Parts</literal> setting reads in all the config fragments "
3239 "in lexical order from the directory specified. After this is done then the "
3240 "main config file is loaded."
3243 #. type: Content of: <refentry><refsect1><para>
3244 #: apt.conf.5.xml:621
3246 "Binary programs are pointed to by "
3247 "<literal>Dir::Bin</literal>. <literal>Dir::Bin::Methods</literal> specifies "
3248 "the location of the method handlers and <literal>gzip</literal>, "
3249 "<literal>bzip2</literal>, <literal>lzma</literal>, <literal>dpkg</literal>, "
3250 "<literal>apt-get</literal> <literal>dpkg-source</literal> "
3251 "<literal>dpkg-buildpackage</literal> and <literal>apt-cache</literal> "
3252 "specify the location of the respective programs."
3255 #. type: Content of: <refentry><refsect1><para>
3256 #: apt.conf.5.xml:629
3258 "The configuration item <literal>RootDir</literal> has a special meaning. If "
3259 "set, all paths in <literal>Dir::</literal> will be relative to "
3260 "<literal>RootDir</literal>, <emphasis>even paths that are specified "
3261 "absolutely</emphasis>. So, for instance, if <literal>RootDir</literal> is "
3262 "set to <filename>/tmp/staging</filename> and "
3263 "<literal>Dir::State::status</literal> is set to "
3264 "<filename>/var/lib/dpkg/status</filename>, then the status file will be "
3265 "looked up in <filename>/tmp/staging/var/lib/dpkg/status</filename>."
3268 #. type: Content of: <refentry><refsect1><para>
3269 #: apt.conf.5.xml:642
3271 "The <literal>Ignore-Files-Silently</literal> list can be used to specify "
3272 "which files APT should silently ignore while parsing the files in the "
3273 "fragment directories. Per default a file which end with "
3274 "<literal>.disabled</literal>, <literal>~</literal>, <literal>.bak</literal> "
3275 "or <literal>.dpkg-[a-z]+</literal> is silently ignored. As seen in the last "
3276 "default value these patterns can use regular expression syntax."
3279 #. type: Content of: <refentry><refsect1><title>
3280 #: apt.conf.5.xml:651
3281 msgid "APT in DSelect"
3284 #. type: Content of: <refentry><refsect1><para>
3285 #: apt.conf.5.xml:653
3287 "When APT is used as a &dselect; method several configuration directives "
3288 "control the default behavior. These are in the <literal>DSelect</literal> "
3292 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3293 #: apt.conf.5.xml:658
3295 "Cache Clean mode; this value may be one of <literal>always</literal>, "
3296 "<literal>prompt</literal>, <literal>auto</literal>, "
3297 "<literal>pre-auto</literal> and <literal>never</literal>. "
3298 "<literal>always</literal> and <literal>prompt</literal> will remove all "
3299 "packages from the cache after upgrading, <literal>prompt</literal> (the "
3300 "default) does so conditionally. <literal>auto</literal> removes only those "
3301 "packages which are no longer downloadable (replaced with a new version for "
3302 "instance). <literal>pre-auto</literal> performs this action before "
3303 "downloading new packages."
3306 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3307 #: apt.conf.5.xml:672
3309 "The contents of this variable are passed to &apt-get; as command line "
3310 "options when it is run for the install phase."
3313 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3314 #: apt.conf.5.xml:677
3316 "The contents of this variable are passed to &apt-get; as command line "
3317 "options when it is run for the update phase."
3320 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3321 #: apt.conf.5.xml:682
3323 "If true the [U]pdate operation in &dselect; will always prompt to continue. "
3324 "The default is to prompt only on error."
3327 #. type: Content of: <refentry><refsect1><title>
3328 #: apt.conf.5.xml:688
3329 msgid "How APT calls &dpkg;"
3332 #. type: Content of: <refentry><refsect1><para>
3333 #: apt.conf.5.xml:689
3335 "Several configuration directives control how APT invokes &dpkg;. These are "
3336 "in the <literal>DPkg</literal> section."
3339 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3340 #: apt.conf.5.xml:694
3342 "This is a list of options to pass to &dpkg;. The options must be specified "
3343 "using the list notation and each list item is passed as a single argument to "
3347 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3348 #: apt.conf.5.xml:700
3350 "This is a list of shell commands to run before/after invoking &dpkg;. Like "
3351 "<literal>options</literal> this must be specified in list notation. The "
3352 "commands are invoked in order using <filename>/bin/sh</filename>; should any "
3353 "fail APT will abort."
3356 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3357 #: apt.conf.5.xml:707
3359 "This is a list of shell commands to run before invoking &dpkg;. Like "
3360 "<literal>options</literal> this must be specified in list notation. The "
3361 "commands are invoked in order using <filename>/bin/sh</filename>; should any "
3362 "fail APT will abort. APT will pass the filenames of all .deb files it is "
3363 "going to install to the commands, one per line on the requested file "
3364 "descriptor, defaulting to standard input."
3367 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3368 #: apt.conf.5.xml:714
3370 "Version 2 of this protocol dumps more information, including the protocol "
3371 "version, the APT configuration space and the packages, files and versions "
3372 "being changed. Version 3 adds the architecture and "
3373 "<literal>MultiArch</literal> flag to each version being dumped."
3376 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3377 #: apt.conf.5.xml:719
3379 "The version of the protocol to be used for the command "
3380 "<literal><replaceable>cmd</replaceable></literal> can be chosen by setting "
3381 "<literal>DPkg::Tools::options::<replaceable>cmd</replaceable>::Version</literal> "
3382 "accordingly, the default being version 1. If APT isn't supporting the "
3383 "requested version it will send the information in the highest version it has "
3384 "support for instead."
3387 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3388 #: apt.conf.5.xml:726
3390 "The file descriptor to be used to send the information can be requested with "
3391 "<literal>DPkg::Tools::options::<replaceable>cmd</replaceable>::InfoFD</literal> "
3392 "which defaults to <literal>0</literal> for standard input and is available "
3393 "since version 0.9.11. Support for the option can be detected by looking for "
3394 "the environment variable <envar>APT_HOOK_INFO_FD</envar> which contains the "
3395 "number of the used file descriptor as a confirmation."
3398 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3399 #: apt.conf.5.xml:736
3401 "APT chdirs to this directory before invoking &dpkg;, the default is "
3402 "<filename>/</filename>."
3405 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3406 #: apt.conf.5.xml:741
3408 "These options are passed to &dpkg-buildpackage; when compiling packages; the "
3409 "default is to disable signing and produce all binaries."
3412 #. type: Content of: <refentry><refsect1><refsect2><title>
3413 #: apt.conf.5.xml:746
3414 msgid "dpkg trigger usage (and related options)"
3417 #. type: Content of: <refentry><refsect1><refsect2><para>
3418 #: apt.conf.5.xml:747
3420 "APT can call &dpkg; in such a way as to let it make aggressive use of "
3421 "triggers over multiple calls of &dpkg;. Without further options &dpkg; will "
3422 "use triggers once each time it runs. Activating these options can therefore "
3423 "decrease the time needed to perform the install or upgrade. Note that it is "
3424 "intended to activate these options per default in the future, but as it "
3425 "drastically changes the way APT calls &dpkg; it needs a lot more testing. "
3426 "<emphasis>These options are therefore currently experimental and should not "
3427 "be used in production environments.</emphasis> It also breaks progress "
3428 "reporting such that all front-ends will currently stay around half (or more) "
3429 "of the time in the 100% state while it actually configures all packages."
3432 #. type: Content of: <refentry><refsect1><refsect2><para><literallayout>
3433 #: apt.conf.5.xml:762
3436 "DPkg::NoTriggers \"true\";\n"
3437 "PackageManager::Configure \"smart\";\n"
3438 "DPkg::ConfigurePending \"true\";\n"
3439 "DPkg::TriggersPending \"true\";"
3442 #. type: Content of: <refentry><refsect1><refsect2><para>
3443 #: apt.conf.5.xml:756
3445 "Note that it is not guaranteed that APT will support these options or that "
3446 "these options will not cause (big) trouble in the future. If you have "
3447 "understand the current risks and problems with these options, but are brave "
3448 "enough to help testing them, create a new configuration file and test a "
3449 "combination of options. Please report any bugs, problems and improvements "
3450 "you encounter and make sure to note which options you have used in your "
3451 "reports. Asking &dpkg; for help could also be useful for debugging proposes, "
3452 "see e.g. <command>dpkg --audit</command>. A defensive option combination "
3453 "would be <placeholder type=\"literallayout\" id=\"0\"/>"
3456 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
3457 #: apt.conf.5.xml:769
3459 "Add the no triggers flag to all &dpkg; calls (except the ConfigurePending "
3460 "call). See &dpkg; if you are interested in what this actually means. In "
3461 "short: &dpkg; will not run the triggers when this flag is present unless it "
3462 "is explicitly called to do so in an extra call. Note that this option "
3463 "exists (undocumented) also in older APT versions with a slightly different "
3464 "meaning: Previously these option only append --no-triggers to the configure "
3465 "calls to &dpkg; - now APT will also add this flag to the unpack and remove "
3469 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
3470 #: apt.conf.5.xml:777
3472 "Valid values are \"<literal>all</literal>\", \"<literal>smart</literal>\" "
3473 "and \"<literal>no</literal>\". The default value is "
3474 "\"<literal>all</literal>\", which causes APT to configure all packages. The "
3475 "\"<literal>smart</literal>\" way is to configure only packages which need to "
3476 "be configured before another package can be unpacked (Pre-Depends), and let "
3477 "the rest be configured by &dpkg; with a call generated by the "
3478 "ConfigurePending option (see below). On the other hand, "
3479 "\"<literal>no</literal>\" will not configure anything, and totally relies on "
3480 "&dpkg; for configuration (which at the moment will fail if a Pre-Depends is "
3481 "encountered). Setting this option to any value other than "
3482 "<literal>all</literal> will implicitly also activate the next option by "
3483 "default, as otherwise the system could end in an unconfigured and "
3484 "potentially unbootable state."
3487 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
3488 #: apt.conf.5.xml:792
3490 "If this option is set APT will call <command>dpkg --configure "
3491 "--pending</command> to let &dpkg; handle all required configurations and "
3492 "triggers. This option is activated automatically per default if the previous "
3493 "option is not set to <literal>all</literal>, but deactivating it could be "
3494 "useful if you want to run APT multiple times in a row - e.g. in an "
3495 "installer. In these sceneries you could deactivate this option in all but "
3499 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
3500 #: apt.conf.5.xml:799
3502 "Useful for the <literal>smart</literal> configuration as a package which has "
3503 "pending triggers is not considered as <literal>installed</literal>, and "
3504 "&dpkg; treats them as <literal>unpacked</literal> currently which is a "
3505 "showstopper for Pre-Dependencies (see debbugs #526774). Note that this will "
3506 "process all triggers, not only the triggers needed to configure this "
3510 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para><literallayout>
3511 #: apt.conf.5.xml:812
3514 "OrderList::Score {\n"
3516 "\tEssential 200;\n"
3518 "\tPreDepends 50;\n"
3522 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
3523 #: apt.conf.5.xml:805
3525 "Essential packages (and their dependencies) should be configured immediately "
3526 "after unpacking. It is a good idea to do this quite early in the upgrade "
3527 "process as these configure calls also currently require "
3528 "<literal>DPkg::TriggersPending</literal> which will run quite a few triggers "
3529 "(which may not be needed). Essentials get per default a high score but the "
3530 "immediate flag is relatively low (a package which has a Pre-Depends is rated "
3531 "higher). These option and the others in the same group can be used to "
3532 "change the scoring. The following example shows the settings with their "
3533 "default values. <placeholder type=\"literallayout\" id=\"0\"/>"
3536 #. type: Content of: <refentry><refsect1><title>
3537 #: apt.conf.5.xml:825
3538 msgid "Periodic and Archives options"
3541 #. type: Content of: <refentry><refsect1><para>
3542 #: apt.conf.5.xml:826
3544 "<literal>APT::Periodic</literal> and <literal>APT::Archives</literal> groups "
3545 "of options configure behavior of apt periodic updates, which is done by the "
3546 "<literal>/etc/cron.daily/apt</literal> script. See the top of this script "
3547 "for the brief documentation of these options."
3550 #. type: Content of: <refentry><refsect1><title>
3551 #: apt.conf.5.xml:834
3552 msgid "Debug options"
3555 #. type: Content of: <refentry><refsect1><para>
3556 #: apt.conf.5.xml:836
3558 "Enabling options in the <literal>Debug::</literal> section will cause "
3559 "debugging information to be sent to the standard error stream of the program "
3560 "utilizing the <literal>apt</literal> libraries, or enable special program "
3561 "modes that are primarily useful for debugging the behavior of "
3562 "<literal>apt</literal>. Most of these options are not interesting to a "
3563 "normal user, but a few may be:"
3566 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
3567 #: apt.conf.5.xml:847
3569 "<literal>Debug::pkgProblemResolver</literal> enables output about the "
3570 "decisions made by <literal>dist-upgrade, upgrade, install, remove, "
3574 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
3575 #: apt.conf.5.xml:855
3577 "<literal>Debug::NoLocking</literal> disables all file locking. This can be "
3578 "used to run some operations (for instance, <literal>apt-get -s "
3579 "install</literal>) as a non-root user."
3582 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
3583 #: apt.conf.5.xml:864
3585 "<literal>Debug::pkgDPkgPM</literal> prints out the actual command line each "
3586 "time that <literal>apt</literal> invokes &dpkg;."
3590 #. motivating example, except I haven't a clue why you'd want
3592 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
3593 #: apt.conf.5.xml:872
3595 "<literal>Debug::IdentCdrom</literal> disables the inclusion of statfs data "
3599 #. type: Content of: <refentry><refsect1><para>
3600 #: apt.conf.5.xml:882
3601 msgid "A full list of debugging options to apt follows."
3604 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3605 #: apt.conf.5.xml:891
3606 msgid "Print information related to accessing <literal>cdrom://</literal> sources."
3609 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3610 #: apt.conf.5.xml:902
3611 msgid "Print information related to downloading packages using FTP."
3614 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3615 #: apt.conf.5.xml:913
3616 msgid "Print information related to downloading packages using HTTP."
3619 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3620 #: apt.conf.5.xml:924
3621 msgid "Print information related to downloading packages using HTTPS."
3624 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3625 #: apt.conf.5.xml:935
3627 "Print information related to verifying cryptographic signatures using "
3628 "<literal>gpg</literal>."
3631 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3632 #: apt.conf.5.xml:946
3634 "Output information about the process of accessing collections of packages "
3635 "stored on CD-ROMs."
3638 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3639 #: apt.conf.5.xml:956
3640 msgid "Describes the process of resolving build-dependencies in &apt-get;."
3643 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3644 #: apt.conf.5.xml:966
3646 "Output each cryptographic hash that is generated by the "
3647 "<literal>apt</literal> libraries."
3650 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3651 #: apt.conf.5.xml:976
3653 "Do not include information from <literal>statfs</literal>, namely the number "
3654 "of used and free blocks on the CD-ROM filesystem, when generating an ID for "
3658 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3659 #: apt.conf.5.xml:987
3661 "Disable all file locking. For instance, this will allow two instances of "
3662 "<quote><literal>apt-get update</literal></quote> to run at the same time."
3665 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3666 #: apt.conf.5.xml:999
3667 msgid "Log when items are added to or removed from the global download queue."
3670 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3671 #: apt.conf.5.xml:1009
3673 "Output status messages and errors related to verifying checksums and "
3674 "cryptographic signatures of downloaded files."
3677 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3678 #: apt.conf.5.xml:1019
3680 "Output information about downloading and applying package index list diffs, "
3681 "and errors relating to package index list diffs."
3684 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3685 #: apt.conf.5.xml:1031
3687 "Output information related to patching apt package lists when downloading "
3688 "index diffs instead of full indices."
3691 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3692 #: apt.conf.5.xml:1042
3693 msgid "Log all interactions with the sub-processes that actually perform downloads."
3696 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3697 #: apt.conf.5.xml:1053
3699 "Log events related to the automatically-installed status of packages and to "
3700 "the removal of unused packages."
3703 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3704 #: apt.conf.5.xml:1063
3706 "Generate debug messages describing which packages are being automatically "
3707 "installed to resolve dependencies. This corresponds to the initial "
3708 "auto-install pass performed in, e.g., <literal>apt-get install</literal>, "
3709 "and not to the full <literal>apt</literal> dependency resolver; see "
3710 "<literal>Debug::pkgProblemResolver</literal> for that."
3713 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3714 #: apt.conf.5.xml:1077
3716 "Generate debug messages describing which packages are marked as "
3717 "keep/install/remove while the ProblemResolver does his work. Each addition "
3718 "or deletion may trigger additional actions; they are shown indented two "
3719 "additional spaces under the original entry. The format for each line is "
3720 "<literal>MarkKeep</literal>, <literal>MarkDelete</literal> or "
3721 "<literal>MarkInstall</literal> followed by <literal>package-name <a.b.c "
3722 "-> d.e.f | x.y.z> (section)</literal> where <literal>a.b.c</literal> "
3723 "is the current version of the package, <literal>d.e.f</literal> is the "
3724 "version considered for installation and <literal>x.y.z</literal> is a newer "
3725 "version, but not considered for installation (because of a low pin "
3726 "score). The later two can be omitted if there is none or if it is the same "
3727 "as the installed version. <literal>section</literal> is the name of the "
3728 "section the package appears in."
3731 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3732 #: apt.conf.5.xml:1098
3734 "When invoking &dpkg;, output the precise command line with which it is being "
3735 "invoked, with arguments separated by a single space character."
3738 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3739 #: apt.conf.5.xml:1109
3741 "Output all the data received from &dpkg; on the status file descriptor and "
3742 "any errors encountered while parsing it."
3745 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3746 #: apt.conf.5.xml:1120
3748 "Generate a trace of the algorithm that decides the order in which "
3749 "<literal>apt</literal> should pass packages to &dpkg;."
3752 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3753 #: apt.conf.5.xml:1132
3754 msgid "Output status messages tracing the steps performed when invoking &dpkg;."
3757 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3758 #: apt.conf.5.xml:1143
3759 msgid "Output the priority of each package list on startup."
3762 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3763 #: apt.conf.5.xml:1153
3765 "Trace the execution of the dependency resolver (this applies only to what "
3766 "happens when a complex dependency problem is encountered)."
3769 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3770 #: apt.conf.5.xml:1164
3772 "Display a list of all installed packages with their calculated score used by "
3773 "the pkgProblemResolver. The description of the package is the same as "
3774 "described in <literal>Debug::pkgDepCache::Marker</literal>"
3777 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3778 #: apt.conf.5.xml:1176
3780 "Print information about the vendors read from "
3781 "<filename>/etc/apt/vendors.list</filename>."
3784 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3785 #: apt.conf.5.xml:1186
3787 "Display the external commands that are called by apt hooks. This includes "
3788 "e.g. the config options <literal>DPkg::{Pre,Post}-Invoke</literal> or "
3789 "<literal>APT::Update::{Pre,Post}-Invoke</literal>."
3792 #. type: Content of: <refentry><refsect1><title>
3793 #: apt.conf.5.xml:1210 apt_preferences.5.xml:541 sources.list.5.xml:233 apt-ftparchive.1.xml:592
3797 #. type: Content of: <refentry><refsect1><para>
3798 #: apt.conf.5.xml:1211
3800 "&configureindex; is a configuration file showing example values for all "
3804 #. ? reading apt.conf
3805 #. type: Content of: <refentry><refsect1><para>
3806 #: apt.conf.5.xml:1223
3807 msgid "&apt-cache;, &apt-config;, &apt-preferences;."
3810 #. type: Content of: <refentry><refnamediv><refpurpose>
3811 #: apt_preferences.5.xml:28
3812 msgid "Preference control file for APT"
3815 #. type: Content of: <refentry><refsect1><para>
3816 #: apt_preferences.5.xml:33
3818 "The APT preferences file <filename>/etc/apt/preferences</filename> and the "
3819 "fragment files in the <filename>/etc/apt/preferences.d/</filename> folder "
3820 "can be used to control which versions of packages will be selected for "
3824 #. type: Content of: <refentry><refsect1><para>
3825 #: apt_preferences.5.xml:38
3827 "Several versions of a package may be available for installation when the "
3828 "&sources-list; file contains references to more than one distribution (for "
3829 "example, <literal>stable</literal> and <literal>testing</literal>). APT "
3830 "assigns a priority to each version that is available. Subject to dependency "
3831 "constraints, <command>apt-get</command> selects the version with the highest "
3832 "priority for installation. The APT preferences override the priorities that "
3833 "APT assigns to package versions by default, thus giving the user control "
3834 "over which one is selected for installation."
3837 #. type: Content of: <refentry><refsect1><para>
3838 #: apt_preferences.5.xml:48
3840 "Several instances of the same version of a package may be available when the "
3841 "&sources-list; file contains references to more than one source. In this "
3842 "case <command>apt-get</command> downloads the instance listed earliest in "
3843 "the &sources-list; file. The APT preferences do not affect the choice of "
3844 "instance, only the choice of version."
3847 #. type: Content of: <refentry><refsect1><para>
3848 #: apt_preferences.5.xml:55
3850 "Preferences are a strong power in the hands of a system administrator but "
3851 "they can become also their biggest nightmare if used without care! APT will "
3852 "not question the preferences, so wrong settings can lead to uninstallable "
3853 "packages or wrong decisions while upgrading packages. Even more problems "
3854 "will arise if multiple distribution releases are mixed without a good "
3855 "understanding of the following paragraphs. Packages included in a specific "
3856 "release aren't tested in (and therefore don't always work as expected in) "
3857 "older or newer releases, or together with other packages from different "
3858 "releases. You have been warned."
3861 #. type: Content of: <refentry><refsect1><para>
3862 #: apt_preferences.5.xml:66
3864 "Note that the files in the <filename>/etc/apt/preferences.d</filename> "
3865 "directory are parsed in alphanumeric ascending order and need to obey the "
3866 "following naming convention: The files have either no or "
3867 "\"<literal>pref</literal>\" as filename extension and only contain "
3868 "alphanumeric, hyphen (-), underscore (_) and period (.) characters. "
3869 "Otherwise APT will print a notice that it has ignored a file, unless that "
3870 "file matches a pattern in the <literal>Dir::Ignore-Files-Silently</literal> "
3871 "configuration list - in which case it will be silently ignored."
3874 #. type: Content of: <refentry><refsect1><refsect2><title>
3875 #: apt_preferences.5.xml:75
3876 msgid "APT's Default Priority Assignments"
3879 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
3880 #: apt_preferences.5.xml:90
3883 "<command>apt-get install -t testing "
3884 "<replaceable>some-package</replaceable></command>\n"
3887 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
3888 #: apt_preferences.5.xml:93
3890 msgid "APT::Default-Release \"stable\";\n"
3893 #. type: Content of: <refentry><refsect1><refsect2><para>
3894 #: apt_preferences.5.xml:77
3896 "If there is no preferences file or if there is no entry in the file that "
3897 "applies to a particular version then the priority assigned to that version "
3898 "is the priority of the distribution to which that version belongs. It is "
3899 "possible to single out a distribution, \"the target release\", which "
3900 "receives a higher priority than other distributions do by default. The "
3901 "target release can be set on the <command>apt-get</command> command line or "
3902 "in the APT configuration file <filename>/etc/apt/apt.conf</filename>. Note "
3903 "that this has precedence over any general priority you set in the "
3904 "<filename>/etc/apt/preferences</filename> file described later, but not over "
3905 "specifically pinned packages. For example, <placeholder "
3906 "type=\"programlisting\" id=\"0\"/> <placeholder type=\"programlisting\" "
3910 #. type: Content of: <refentry><refsect1><refsect2><para>
3911 #: apt_preferences.5.xml:97
3913 "If the target release has been specified then APT uses the following "
3914 "algorithm to set the priorities of the versions of a package. Assign:"
3917 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
3918 #: apt_preferences.5.xml:102
3922 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
3923 #: apt_preferences.5.xml:103
3925 "to the versions coming from archives which in their "
3926 "<filename>Release</filename> files are marked as \"NotAutomatic: yes\" but "
3927 "<emphasis>not</emphasis> as \"ButAutomaticUpgrades: yes\" like the Debian "
3928 "<literal>experimental</literal> archive."
3931 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
3932 #: apt_preferences.5.xml:109
3933 msgid "priority 100"
3936 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
3937 #: apt_preferences.5.xml:110
3939 "to the version that is already installed (if any) and to the versions coming "
3940 "from archives which in their <filename>Release</filename> files are marked "
3941 "as \"NotAutomatic: yes\" and \"ButAutomaticUpgrades: yes\" like the Debian "
3942 "backports archive since <literal>squeeze-backports</literal>."
3945 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
3946 #: apt_preferences.5.xml:117
3947 msgid "priority 500"
3950 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
3951 #: apt_preferences.5.xml:118
3953 "to the versions that are not installed and do not belong to the target "
3957 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
3958 #: apt_preferences.5.xml:122
3959 msgid "priority 990"
3962 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
3963 #: apt_preferences.5.xml:123
3964 msgid "to the versions that are not installed and belong to the target release."
3967 #. type: Content of: <refentry><refsect1><refsect2><para>
3968 #: apt_preferences.5.xml:128
3970 "If the target release has not been specified then APT simply assigns "
3971 "priority 100 to all installed package versions and priority 500 to all "
3972 "uninstalled package versions, except versions coming from archives which in "
3973 "their <filename>Release</filename> files are marked as \"NotAutomatic: yes\" "
3974 "- these versions get the priority 1 or priority 100 if it is additionally "
3975 "marked as \"ButAutomaticUpgrades: yes\"."
3978 #. type: Content of: <refentry><refsect1><refsect2><para>
3979 #: apt_preferences.5.xml:135
3981 "APT then applies the following rules, listed in order of precedence, to "
3982 "determine which version of a package to install."
3985 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
3986 #: apt_preferences.5.xml:138
3988 "Never downgrade unless the priority of an available version exceeds 1000. "
3989 "(\"Downgrading\" is installing a less recent version of a package in place "
3990 "of a more recent version. Note that none of APT's default priorities "
3991 "exceeds 1000; such high priorities can only be set in the preferences file. "
3992 "Note also that downgrading a package can be risky.)"
3995 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
3996 #: apt_preferences.5.xml:144
3997 msgid "Install the highest priority version."
4000 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4001 #: apt_preferences.5.xml:145
4003 "If two or more versions have the same priority, install the most recent one "
4004 "(that is, the one with the higher version number)."
4007 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4008 #: apt_preferences.5.xml:148
4010 "If two or more versions have the same priority and version number but either "
4011 "the packages differ in some of their metadata or the "
4012 "<literal>--reinstall</literal> option is given, install the uninstalled one."
4015 #. type: Content of: <refentry><refsect1><refsect2><para>
4016 #: apt_preferences.5.xml:154
4018 "In a typical situation, the installed version of a package (priority 100) "
4019 "is not as recent as one of the versions available from the sources listed in "
4020 "the &sources-list; file (priority 500 or 990). Then the package will be "
4021 "upgraded when <command>apt-get install "
4022 "<replaceable>some-package</replaceable></command> or <command>apt-get "
4023 "upgrade</command> is executed."
4026 #. type: Content of: <refentry><refsect1><refsect2><para>
4027 #: apt_preferences.5.xml:161
4029 "More rarely, the installed version of a package is <emphasis>more</emphasis> "
4030 "recent than any of the other available versions. The package will not be "
4031 "downgraded when <command>apt-get install "
4032 "<replaceable>some-package</replaceable></command> or <command>apt-get "
4033 "upgrade</command> is executed."
4036 #. type: Content of: <refentry><refsect1><refsect2><para>
4037 #: apt_preferences.5.xml:166
4039 "Sometimes the installed version of a package is more recent than the version "
4040 "belonging to the target release, but not as recent as a version belonging to "
4041 "some other distribution. Such a package will indeed be upgraded when "
4042 "<command>apt-get install <replaceable>some-package</replaceable></command> "
4043 "or <command>apt-get upgrade</command> is executed, because at least "
4044 "<emphasis>one</emphasis> of the available versions has a higher priority "
4045 "than the installed version."
4048 #. type: Content of: <refentry><refsect1><refsect2><title>
4049 #: apt_preferences.5.xml:175
4050 msgid "The Effect of APT Preferences"
4053 #. type: Content of: <refentry><refsect1><refsect2><para>
4054 #: apt_preferences.5.xml:177
4056 "The APT preferences file allows the system administrator to control the "
4057 "assignment of priorities. The file consists of one or more multi-line "
4058 "records separated by blank lines. Records can have one of two forms, a "
4059 "specific form and a general form."
4062 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4063 #: apt_preferences.5.xml:183
4065 "The specific form assigns a priority (a \"Pin-Priority\") to one or more "
4066 "specified packages with a specified version or version range. For example, "
4067 "the following record assigns a high priority to all versions of the "
4068 "<filename>perl</filename> package whose version number begins with "
4069 "\"<literal>&good-perl;</literal>\". Multiple packages can be separated by "
4073 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4074 #: apt_preferences.5.xml:190
4078 "Pin: version &good-perl;*\n"
4079 "Pin-Priority: 1001\n"
4082 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4083 #: apt_preferences.5.xml:196
4085 "The general form assigns a priority to all of the package versions in a "
4086 "given distribution (that is, to all the versions of packages that are listed "
4087 "in a certain <filename>Release</filename> file) or to all of the package "
4088 "versions coming from a particular Internet site, as identified by the site's "
4089 "fully qualified domain name."
4092 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4093 #: apt_preferences.5.xml:202
4095 "This general-form entry in the APT preferences file applies only to groups "
4096 "of packages. For example, the following record assigns a high priority to "
4097 "all package versions available from the local site."
4100 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4101 #: apt_preferences.5.xml:207
4105 "Pin: origin \"\"\n"
4106 "Pin-Priority: 999\n"
4109 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4110 #: apt_preferences.5.xml:212
4112 "A note of caution: the keyword used here is \"<literal>origin</literal>\" "
4113 "which can be used to match a hostname. The following record will assign a "
4114 "high priority to all versions available from the server identified by the "
4115 "hostname \"ftp.de.debian.org\""
4118 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4119 #: apt_preferences.5.xml:216
4123 "Pin: origin \"ftp.de.debian.org\"\n"
4124 "Pin-Priority: 999\n"
4127 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4128 #: apt_preferences.5.xml:220
4130 "This should <emphasis>not</emphasis> be confused with the Origin of a "
4131 "distribution as specified in a <filename>Release</filename> file. What "
4132 "follows the \"Origin:\" tag in a <filename>Release</filename> file is not an "
4133 "Internet address but an author or vendor name, such as \"Debian\" or "
4137 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4138 #: apt_preferences.5.xml:225
4140 "The following record assigns a low priority to all package versions "
4141 "belonging to any distribution whose Archive name is "
4142 "\"<literal>unstable</literal>\"."
4145 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4146 #: apt_preferences.5.xml:229
4150 "Pin: release a=unstable\n"
4151 "Pin-Priority: 50\n"
4154 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4155 #: apt_preferences.5.xml:234
4157 "The following record assigns a high priority to all package versions "
4158 "belonging to any distribution whose Codename is "
4159 "\"<literal>&testing-codename;</literal>\"."
4162 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4163 #: apt_preferences.5.xml:238
4167 "Pin: release n=&testing-codename;\n"
4168 "Pin-Priority: 900\n"
4171 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4172 #: apt_preferences.5.xml:243
4174 "The following record assigns a high priority to all package versions "
4175 "belonging to any release whose Archive name is \"<literal>stable</literal>\" "
4176 "and whose release Version number is \"<literal>&stable-version;</literal>\"."
4179 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4180 #: apt_preferences.5.xml:248
4184 "Pin: release a=stable, v=&stable-version;\n"
4185 "Pin-Priority: 500\n"
4188 #. type: Content of: <refentry><refsect1><refsect2><title>
4189 #: apt_preferences.5.xml:258
4190 msgid "Regular expressions and &glob; syntax"
4193 #. type: Content of: <refentry><refsect1><refsect2><para>
4194 #: apt_preferences.5.xml:260
4196 "APT also supports pinning by &glob; expressions, and regular expressions "
4197 "surrounded by slashes. For example, the following example assigns the "
4198 "priority 500 to all packages from experimental where the name starts with "
4199 "gnome (as a &glob;-like expression) or contains the word kde (as a POSIX "
4200 "extended regular expression surrounded by slashes)."
4203 #. type: Content of: <refentry><refsect1><refsect2><programlisting>
4204 #: apt_preferences.5.xml:269
4207 "Package: gnome* /kde/\n"
4208 "Pin: release n=experimental\n"
4209 "Pin-Priority: 500\n"
4212 #. type: Content of: <refentry><refsect1><refsect2><para>
4213 #: apt_preferences.5.xml:275
4215 "The rule for those expressions is that they can occur anywhere where a "
4216 "string can occur. Thus, the following pin assigns the priority 990 to all "
4217 "packages from a release starting with &ubuntu-codename;."
4220 #. type: Content of: <refentry><refsect1><refsect2><programlisting>
4221 #: apt_preferences.5.xml:281
4225 "Pin: release n=&ubuntu-codename;*\n"
4226 "Pin-Priority: 990\n"
4229 #. type: Content of: <refentry><refsect1><refsect2><para>
4230 #: apt_preferences.5.xml:287
4232 "If a regular expression occurs in a <literal>Package</literal> field, the "
4233 "behavior is the same as if this regular expression were replaced with a list "
4234 "of all package names it matches. It is undecided whether this will change in "
4235 "the future; thus you should always list wild-card pins first, so later "
4236 "specific pins override it. The pattern \"<literal>*</literal>\" in a "
4237 "Package field is not considered a &glob; expression in itself."
4240 #. type: Content of: <refentry><refsect1><refsect2><title>
4241 #: apt_preferences.5.xml:303
4242 msgid "How APT Interprets Priorities"
4245 #. type: Content of: <refentry><refsect1><refsect2><para>
4246 #: apt_preferences.5.xml:306
4248 "Priorities (P) assigned in the APT preferences file must be positive or "
4249 "negative integers. They are interpreted as follows (roughly speaking):"
4252 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4253 #: apt_preferences.5.xml:311
4254 msgid "P >= 1000"
4257 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4258 #: apt_preferences.5.xml:312
4260 "causes a version to be installed even if this constitutes a downgrade of the "
4264 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4265 #: apt_preferences.5.xml:316
4266 msgid "990 <= P < 1000"
4269 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4270 #: apt_preferences.5.xml:317
4272 "causes a version to be installed even if it does not come from the target "
4273 "release, unless the installed version is more recent"
4276 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4277 #: apt_preferences.5.xml:322
4278 msgid "500 <= P < 990"
4281 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4282 #: apt_preferences.5.xml:323
4284 "causes a version to be installed unless there is a version available "
4285 "belonging to the target release or the installed version is more recent"
4288 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4289 #: apt_preferences.5.xml:328
4290 msgid "100 <= P < 500"
4293 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4294 #: apt_preferences.5.xml:329
4296 "causes a version to be installed unless there is a version available "
4297 "belonging to some other distribution or the installed version is more recent"
4300 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4301 #: apt_preferences.5.xml:334
4302 msgid "0 < P < 100"
4305 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4306 #: apt_preferences.5.xml:335
4308 "causes a version to be installed only if there is no installed version of "
4312 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4313 #: apt_preferences.5.xml:339
4317 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4318 #: apt_preferences.5.xml:340
4319 msgid "prevents the version from being installed"
4322 #. type: Content of: <refentry><refsect1><refsect2><para>
4323 #: apt_preferences.5.xml:345
4325 "If any specific-form records match an available package version then the "
4326 "first such record determines the priority of the package version. Failing "
4327 "that, if any general-form records match an available package version then "
4328 "the first such record determines the priority of the package version."
4331 #. type: Content of: <refentry><refsect1><refsect2><para>
4332 #: apt_preferences.5.xml:351
4334 "For example, suppose the APT preferences file contains the three records "
4335 "presented earlier:"
4338 #. type: Content of: <refentry><refsect1><refsect2><programlisting>
4339 #: apt_preferences.5.xml:355
4343 "Pin: version &good-perl;*\n"
4344 "Pin-Priority: 1001\n"
4347 "Pin: origin \"\"\n"
4348 "Pin-Priority: 999\n"
4351 "Pin: release unstable\n"
4352 "Pin-Priority: 50\n"
4355 #. type: Content of: <refentry><refsect1><refsect2><para>
4356 #: apt_preferences.5.xml:368
4360 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4361 #: apt_preferences.5.xml:370
4363 "The most recent available version of the <literal>perl</literal> package "
4364 "will be installed, so long as that version's version number begins with "
4365 "\"<literal>&good-perl;</literal>\". If <emphasis>any</emphasis> "
4366 "&good-perl;* version of <literal>perl</literal> is available and the "
4367 "installed version is &bad-perl;*, then <literal>perl</literal> will be "
4371 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4372 #: apt_preferences.5.xml:375
4374 "A version of any package other than <literal>perl</literal> that is "
4375 "available from the local system has priority over other versions, even "
4376 "versions belonging to the target release."
4379 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4380 #: apt_preferences.5.xml:379
4382 "A version of a package whose origin is not the local system but some other "
4383 "site listed in &sources-list; and which belongs to an "
4384 "<literal>unstable</literal> distribution is only installed if it is selected "
4385 "for installation and no version of the package is already installed."
4388 #. type: Content of: <refentry><refsect1><refsect2><title>
4389 #: apt_preferences.5.xml:389
4390 msgid "Determination of Package Version and Distribution Properties"
4393 #. type: Content of: <refentry><refsect1><refsect2><para>
4394 #: apt_preferences.5.xml:391
4396 "The locations listed in the &sources-list; file should provide "
4397 "<filename>Packages</filename> and <filename>Release</filename> files to "
4398 "describe the packages available at that location."
4401 #. type: Content of: <refentry><refsect1><refsect2><para>
4402 #: apt_preferences.5.xml:395
4404 "The <filename>Packages</filename> file is normally found in the directory "
4405 "<filename>.../dists/<replaceable>dist-name</replaceable>/<replaceable>component</replaceable>/<replaceable>arch</replaceable></filename>: "
4407 "<filename>.../dists/stable/main/binary-i386/Packages</filename>. It "
4408 "consists of a series of multi-line records, one for each package available "
4409 "in that directory. Only two lines in each record are relevant for setting "
4413 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4414 #: apt_preferences.5.xml:403
4415 msgid "the <literal>Package:</literal> line"
4418 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4419 #: apt_preferences.5.xml:404
4420 msgid "gives the package name"
4423 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4424 #: apt_preferences.5.xml:407 apt_preferences.5.xml:457
4425 msgid "the <literal>Version:</literal> line"
4428 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4429 #: apt_preferences.5.xml:408
4430 msgid "gives the version number for the named package"
4433 #. type: Content of: <refentry><refsect1><refsect2><para>
4434 #: apt_preferences.5.xml:413
4436 "The <filename>Release</filename> file is normally found in the directory "
4437 "<filename>.../dists/<replaceable>dist-name</replaceable></filename>: for "
4438 "example, <filename>.../dists/stable/Release</filename>, or "
4439 "<filename>.../dists/&stable-codename;/Release</filename>. It consists of a "
4440 "single multi-line record which applies to <emphasis>all</emphasis> of the "
4441 "packages in the directory tree below its parent. Unlike the "
4442 "<filename>Packages</filename> file, nearly all of the lines in a "
4443 "<filename>Release</filename> file are relevant for setting APT priorities:"
4446 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4447 #: apt_preferences.5.xml:424
4448 msgid "the <literal>Archive:</literal> or <literal>Suite:</literal> line"
4451 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4452 #: apt_preferences.5.xml:425
4454 "names the archive to which all the packages in the directory tree belong. "
4455 "For example, the line \"Archive: stable\" or \"Suite: stable\" specifies "
4456 "that all of the packages in the directory tree below the parent of the "
4457 "<filename>Release</filename> file are in a <literal>stable</literal> "
4458 "archive. Specifying this value in the APT preferences file would require "
4462 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
4463 #: apt_preferences.5.xml:435
4465 msgid "Pin: release a=stable\n"
4468 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4469 #: apt_preferences.5.xml:441
4470 msgid "the <literal>Codename:</literal> line"
4473 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4474 #: apt_preferences.5.xml:442
4476 "names the codename to which all the packages in the directory tree belong. "
4477 "For example, the line \"Codename: &testing-codename;\" specifies that all of "
4478 "the packages in the directory tree below the parent of the "
4479 "<filename>Release</filename> file belong to a version named "
4480 "<literal>&testing-codename;</literal>. Specifying this value in the APT "
4481 "preferences file would require the line:"
4484 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
4485 #: apt_preferences.5.xml:451
4487 msgid "Pin: release n=&testing-codename;\n"
4490 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4491 #: apt_preferences.5.xml:458
4493 "names the release version. For example, the packages in the tree might "
4494 "belong to Debian release version &stable-version;. Note that there is "
4495 "normally no version number for the <literal>testing</literal> and "
4496 "<literal>unstable</literal> distributions because they have not been "
4497 "released yet. Specifying this in the APT preferences file would require one "
4498 "of the following lines."
4501 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
4502 #: apt_preferences.5.xml:467
4505 "Pin: release v=&stable-version;\n"
4506 "Pin: release a=stable, v=&stable-version;\n"
4507 "Pin: release &stable-version;\n"
4510 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4511 #: apt_preferences.5.xml:476
4512 msgid "the <literal>Component:</literal> line"
4515 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4516 #: apt_preferences.5.xml:477
4518 "names the licensing component associated with the packages in the directory "
4519 "tree of the <filename>Release</filename> file. For example, the line "
4520 "\"Component: main\" specifies that all the packages in the directory tree "
4521 "are from the <literal>main</literal> component, which entails that they are "
4522 "licensed under terms listed in the Debian Free Software Guidelines. "
4523 "Specifying this component in the APT preferences file would require the "
4527 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
4528 #: apt_preferences.5.xml:486
4530 msgid "Pin: release c=main\n"
4533 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4534 #: apt_preferences.5.xml:492
4535 msgid "the <literal>Origin:</literal> line"
4538 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4539 #: apt_preferences.5.xml:493
4541 "names the originator of the packages in the directory tree of the "
4542 "<filename>Release</filename> file. Most commonly, this is "
4543 "<literal>Debian</literal>. Specifying this origin in the APT preferences "
4544 "file would require the line:"
4547 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
4548 #: apt_preferences.5.xml:499
4550 msgid "Pin: release o=Debian\n"
4553 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4554 #: apt_preferences.5.xml:505
4555 msgid "the <literal>Label:</literal> line"
4558 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4559 #: apt_preferences.5.xml:506
4561 "names the label of the packages in the directory tree of the "
4562 "<filename>Release</filename> file. Most commonly, this is "
4563 "<literal>Debian</literal>. Specifying this label in the APT preferences "
4564 "file would require the line:"
4567 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
4568 #: apt_preferences.5.xml:512
4570 msgid "Pin: release l=Debian\n"
4573 #. type: Content of: <refentry><refsect1><refsect2><para>
4574 #: apt_preferences.5.xml:519
4576 "All of the <filename>Packages</filename> and <filename>Release</filename> "
4577 "files retrieved from locations listed in the &sources-list; file are stored "
4578 "in the directory <filename>/var/lib/apt/lists</filename>, or in the file "
4579 "named by the variable <literal>Dir::State::Lists</literal> in the "
4580 "<filename>apt.conf</filename> file. For example, the file "
4581 "<filename>debian.lcs.mit.edu_debian_dists_unstable_contrib_binary-i386_Release</filename> "
4582 "contains the <filename>Release</filename> file retrieved from the site "
4583 "<literal>debian.lcs.mit.edu</literal> for <literal>binary-i386</literal> "
4584 "architecture files from the <literal>contrib</literal> component of the "
4585 "<literal>unstable</literal> distribution."
4588 #. type: Content of: <refentry><refsect1><refsect2><title>
4589 #: apt_preferences.5.xml:532
4590 msgid "Optional Lines in an APT Preferences Record"
4593 #. type: Content of: <refentry><refsect1><refsect2><para>
4594 #: apt_preferences.5.xml:534
4596 "Each record in the APT preferences file can optionally begin with one or "
4597 "more lines beginning with the word <literal>Explanation:</literal>. This "
4598 "provides a place for comments."
4601 #. type: Content of: <refentry><refsect1><refsect2><title>
4602 #: apt_preferences.5.xml:543
4603 msgid "Tracking Stable"
4606 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
4607 #: apt_preferences.5.xml:551
4610 "Explanation: Uninstall or do not install any Debian-originated\n"
4611 "Explanation: package versions other than those in the stable distro\n"
4613 "Pin: release a=stable\n"
4614 "Pin-Priority: 900\n"
4617 "Pin: release o=Debian\n"
4618 "Pin-Priority: -10\n"
4621 #. type: Content of: <refentry><refsect1><refsect2><para>
4622 #: apt_preferences.5.xml:545
4624 "The following APT preferences file will cause APT to assign a priority "
4625 "higher than the default (500) to all package versions belonging to a "
4626 "<literal>stable</literal> distribution and a prohibitively low priority to "
4627 "package versions belonging to other <literal>Debian</literal> "
4628 "distributions. <placeholder type=\"programlisting\" id=\"0\"/>"
4631 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
4632 #: apt_preferences.5.xml:568 apt_preferences.5.xml:614 apt_preferences.5.xml:672
4635 "apt-get install <replaceable>package-name</replaceable>\n"
4637 "apt-get dist-upgrade\n"
4640 #. type: Content of: <refentry><refsect1><refsect2><para>
4641 #: apt_preferences.5.xml:563
4643 "With a suitable &sources-list; file and the above preferences file, any of "
4644 "the following commands will cause APT to upgrade to the latest "
4645 "<literal>stable</literal> version(s). <placeholder type=\"programlisting\" "
4649 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
4650 #: apt_preferences.5.xml:580
4652 msgid "apt-get install <replaceable>package</replaceable>/testing\n"
4655 #. type: Content of: <refentry><refsect1><refsect2><para>
4656 #: apt_preferences.5.xml:574
4658 "The following command will cause APT to upgrade the specified package to the "
4659 "latest version from the <literal>testing</literal> distribution; the package "
4660 "will not be upgraded again unless this command is given again. <placeholder "
4661 "type=\"programlisting\" id=\"0\"/>"
4664 #. type: Content of: <refentry><refsect1><refsect2><title>
4665 #: apt_preferences.5.xml:586
4666 msgid "Tracking Testing or Unstable"
4669 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
4670 #: apt_preferences.5.xml:595
4674 "Pin: release a=testing\n"
4675 "Pin-Priority: 900\n"
4678 "Pin: release a=unstable\n"
4679 "Pin-Priority: 800\n"
4682 "Pin: release o=Debian\n"
4683 "Pin-Priority: -10\n"
4686 #. type: Content of: <refentry><refsect1><refsect2><para>
4687 #: apt_preferences.5.xml:588
4689 "The following APT preferences file will cause APT to assign a high priority "
4690 "to package versions from the <literal>testing</literal> distribution, a "
4691 "lower priority to package versions from the <literal>unstable</literal> "
4692 "distribution, and a prohibitively low priority to package versions from "
4693 "other <literal>Debian</literal> distributions. <placeholder "
4694 "type=\"programlisting\" id=\"0\"/>"
4697 #. type: Content of: <refentry><refsect1><refsect2><para>
4698 #: apt_preferences.5.xml:609
4700 "With a suitable &sources-list; file and the above preferences file, any of "
4701 "the following commands will cause APT to upgrade to the latest "
4702 "<literal>testing</literal> version(s). <placeholder type=\"programlisting\" "
4706 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
4707 #: apt_preferences.5.xml:629
4709 msgid "apt-get install <replaceable>package</replaceable>/unstable\n"
4712 #. type: Content of: <refentry><refsect1><refsect2><para>
4713 #: apt_preferences.5.xml:620
4715 "The following command will cause APT to upgrade the specified package to the "
4716 "latest version from the <literal>unstable</literal> distribution. "
4717 "Thereafter, <command>apt-get upgrade</command> will upgrade the package to "
4718 "the most recent <literal>testing</literal> version if that is more recent "
4719 "than the installed version, otherwise, to the most recent "
4720 "<literal>unstable</literal> version if that is more recent than the "
4721 "installed version. <placeholder type=\"programlisting\" id=\"0\"/>"
4724 #. type: Content of: <refentry><refsect1><refsect2><title>
4725 #: apt_preferences.5.xml:636
4726 msgid "Tracking the evolution of a codename release"
4729 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
4730 #: apt_preferences.5.xml:650
4733 "Explanation: Uninstall or do not install any Debian-originated package "
4735 "Explanation: other than those in the distribution codenamed with "
4736 "&testing-codename; or sid\n"
4738 "Pin: release n=&testing-codename;\n"
4739 "Pin-Priority: 900\n"
4741 "Explanation: Debian unstable is always codenamed with sid\n"
4743 "Pin: release n=sid\n"
4744 "Pin-Priority: 800\n"
4747 "Pin: release o=Debian\n"
4748 "Pin-Priority: -10\n"
4751 #. type: Content of: <refentry><refsect1><refsect2><para>
4752 #: apt_preferences.5.xml:638
4754 "The following APT preferences file will cause APT to assign a priority "
4755 "higher than the default (500) to all package versions belonging to a "
4756 "specified codename of a distribution and a prohibitively low priority to "
4757 "package versions belonging to other <literal>Debian</literal> distributions, "
4758 "codenames and archives. Note that with this APT preference APT will follow "
4759 "the migration of a release from the archive <literal>testing</literal> to "
4760 "<literal>stable</literal> and later <literal>oldstable</literal>. If you "
4761 "want to follow for example the progress in <literal>testing</literal> "
4762 "notwithstanding the codename changes you should use the example "
4763 "configurations above. <placeholder type=\"programlisting\" id=\"0\"/>"
4766 #. type: Content of: <refentry><refsect1><refsect2><para>
4767 #: apt_preferences.5.xml:667
4769 "With a suitable &sources-list; file and the above preferences file, any of "
4770 "the following commands will cause APT to upgrade to the latest version(s) in "
4771 "the release codenamed with <literal>&testing-codename;</literal>. "
4772 "<placeholder type=\"programlisting\" id=\"0\"/>"
4775 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
4776 #: apt_preferences.5.xml:687
4778 msgid "apt-get install <replaceable>package</replaceable>/sid\n"
4781 #. type: Content of: <refentry><refsect1><refsect2><para>
4782 #: apt_preferences.5.xml:678
4784 "The following command will cause APT to upgrade the specified package to the "
4785 "latest version from the <literal>sid</literal> distribution. Thereafter, "
4786 "<command>apt-get upgrade</command> will upgrade the package to the most "
4787 "recent <literal>&testing-codename;</literal> version if that is more recent "
4788 "than the installed version, otherwise, to the most recent "
4789 "<literal>sid</literal> version if that is more recent than the installed "
4790 "version. <placeholder type=\"programlisting\" id=\"0\"/>"
4793 #. type: Content of: <refentry><refsect1><para>
4794 #: apt_preferences.5.xml:702
4795 msgid "&apt-get; &apt-cache; &apt-conf; &sources-list;"
4798 #. type: Content of: <refentry><refnamediv><refpurpose>
4799 #: sources.list.5.xml:29
4800 msgid "List of configured APT data sources"
4803 #. type: Content of: <refentry><refsect1><para>
4804 #: sources.list.5.xml:34
4806 "The source list <filename>/etc/apt/sources.list</filename> is designed to "
4807 "support any number of active sources and a variety of source media. The file "
4808 "lists one source per line, with the most preferred source listed first. The "
4809 "information available from the configured sources is acquired by "
4810 "<command>apt-get update</command> (or by an equivalent command from another "
4814 #. type: Content of: <refentry><refsect1><para>
4815 #: sources.list.5.xml:41
4817 "Each line specifying a source starts with type "
4818 "(e.g. <literal>deb-src</literal>) followed by options and arguments for "
4819 "this type. Individual entries cannot be continued onto a following "
4820 "line. Empty lines are ignored, and a <literal>#</literal> character anywhere "
4821 "on a line marks the remainder of that line as a comment."
4824 #. type: Content of: <refentry><refsect1><title>
4825 #: sources.list.5.xml:49
4826 msgid "sources.list.d"
4829 #. type: Content of: <refentry><refsect1><para>
4830 #: sources.list.5.xml:50
4832 "The <filename>/etc/apt/sources.list.d</filename> directory provides a way to "
4833 "add sources.list entries in separate files. The format is the same as for "
4834 "the regular <filename>sources.list</filename> file. File names need to end "
4835 "with <filename>.list</filename> and may only contain letters (a-z and A-Z), "
4836 "digits (0-9), underscore (_), hyphen (-) and period (.) characters. "
4837 "Otherwise APT will print a notice that it has ignored a file, unless that "
4838 "file matches a pattern in the <literal>Dir::Ignore-Files-Silently</literal> "
4839 "configuration list - in which case it will be silently ignored."
4842 #. type: Content of: <refentry><refsect1><title>
4843 #: sources.list.5.xml:61
4844 msgid "The deb and deb-src types"
4847 #. type: Content of: <refentry><refsect1><para>
4848 #: sources.list.5.xml:62
4850 "The <literal>deb</literal> type references a typical two-level Debian "
4851 "archive, <filename>distribution/component</filename>. The "
4852 "<literal>distribution</literal> is generally an archive name like "
4853 "<literal>stable</literal> or <literal>testing</literal> or a codename like "
4854 "<literal>&stable-codename;</literal> or "
4855 "<literal>&testing-codename;</literal> while component is one of "
4856 "<literal>main</literal>, <literal>contrib</literal> or "
4857 "<literal>non-free</literal>. The <literal>deb-src</literal> type references "
4858 "a Debian distribution's source code in the same form as the "
4859 "<literal>deb</literal> type. A <literal>deb-src</literal> line is required "
4860 "to fetch source indexes."
4863 #. type: Content of: <refentry><refsect1><para>
4864 #: sources.list.5.xml:73
4866 "The format for a <filename>sources.list</filename> entry using the "
4867 "<literal>deb</literal> and <literal>deb-src</literal> types is:"
4870 #. type: Content of: <refentry><refsect1><literallayout>
4871 #: sources.list.5.xml:76
4873 msgid "deb [ options ] uri suite [component1] [component2] [...]"
4876 #. type: Content of: <refentry><refsect1><para><literallayout>
4877 #: sources.list.5.xml:80
4880 " Types: deb deb-src\n"
4881 " URIs: http://example.com\n"
4882 " Suites: stable testing\n"
4883 " Sections: component1 component2\n"
4884 " Description: short\n"
4886 " [option1]: [option1-value]\n"
4889 " URIs: http://another.example.com\n"
4890 " Suites: experimental\n"
4891 " Sections: component1 component2\n"
4893 " Description: short\n"
4895 " [option1]: [option1-value]\n"
4899 #. type: Content of: <refentry><refsect1><para>
4900 #: sources.list.5.xml:78
4902 "Alternatively a rfc822 style format is also supported: <placeholder "
4903 "type=\"literallayout\" id=\"0\"/>"
4906 #. type: Content of: <refentry><refsect1><para>
4907 #: sources.list.5.xml:99
4909 "The URI for the <literal>deb</literal> type must specify the base of the "
4910 "Debian distribution, from which APT will find the information it needs. "
4911 "<literal>suite</literal> can specify an exact path, in which case the "
4912 "components must be omitted and <literal>suite</literal> must end with a "
4913 "slash (<literal>/</literal>). This is useful for the case when only a "
4914 "particular sub-section of the archive denoted by the URI is of interest. If "
4915 "<literal>suite</literal> does not specify an exact path, at least one "
4916 "<literal>component</literal> must be present."
4919 #. type: Content of: <refentry><refsect1><para>
4920 #: sources.list.5.xml:108
4922 "<literal>suite</literal> may also contain a variable, "
4923 "<literal>$(ARCH)</literal> which expands to the Debian architecture (such as "
4924 "<literal>amd64</literal> or <literal>armel</literal>) used on the "
4925 "system. This permits architecture-independent "
4926 "<filename>sources.list</filename> files to be used. In general this is only "
4927 "of interest when specifying an exact path, <literal>APT</literal> will "
4928 "automatically generate a URI with the current architecture otherwise."
4931 #. type: Content of: <refentry><refsect1><para>
4932 #: sources.list.5.xml:116
4934 "In the traditional style sources.list format since only one distribution can "
4935 "be specified per line it may be necessary to have multiple lines for the "
4936 "same URI, if a subset of all available distributions or components at that "
4937 "location is desired. APT will sort the URI list after it has generated a "
4938 "complete set internally, and will collapse multiple references to the same "
4939 "Internet host, for instance, into a single connection, so that it does not "
4940 "inefficiently establish an FTP connection, close it, do something else, and "
4941 "then re-establish a connection to that same host. This feature is useful for "
4942 "accessing busy FTP sites with limits on the number of simultaneous anonymous "
4943 "users. APT also parallelizes connections to different hosts to more "
4944 "effectively deal with sites with low bandwidth."
4947 #. type: Content of: <refentry><refsect1><para>
4948 #: sources.list.5.xml:130
4950 "<literal>options</literal> is always optional and needs to be surrounded by "
4951 "square brackets. It can consist of multiple settings in the form "
4952 "<literal><replaceable>setting</replaceable>=<replaceable>value</replaceable></literal>. "
4953 "Multiple settings are separated by spaces. The following settings are "
4954 "supported by APT (note however that unsupported settings will be ignored "
4958 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
4959 #: sources.list.5.xml:136
4961 "<literal>arch=<replaceable>arch1</replaceable>,<replaceable>arch2</replaceable>,…</literal> "
4962 "can be used to specify for which architectures information should be "
4963 "downloaded. If this option is not set all architectures defined by the "
4964 "<literal>APT::Architectures</literal> option will be downloaded."
4967 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
4968 #: sources.list.5.xml:140
4970 "<literal>arch+=<replaceable>arch1</replaceable>,<replaceable>arch2</replaceable>,…</literal> "
4972 "<literal>arch-=<replaceable>arch1</replaceable>,<replaceable>arch2</replaceable>,…</literal> "
4973 "which can be used to add/remove architectures from the set which will be "
4977 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
4978 #: sources.list.5.xml:143
4980 "<literal>trusted=yes</literal> can be set to indicate that packages from "
4981 "this source are always authenticated even if the "
4982 "<filename>Release</filename> file is not signed or the signature can't be "
4983 "checked. This disables parts of &apt-secure; and should therefore only be "
4984 "used in a local and trusted context. <literal>trusted=no</literal> is the "
4985 "opposite which handles even correctly authenticated sources as not "
4989 #. type: Content of: <refentry><refsect1><para>
4990 #: sources.list.5.xml:150
4992 "It is important to list sources in order of preference, with the most "
4993 "preferred source listed first. Typically this will result in sorting by "
4994 "speed from fastest to slowest (CD-ROM followed by hosts on a local network, "
4995 "followed by distant Internet hosts, for example)."
4998 #. type: Content of: <refentry><refsect1><para>
4999 #: sources.list.5.xml:155
5000 msgid "Some examples:"
5003 #. type: Content of: <refentry><refsect1><literallayout>
5004 #: sources.list.5.xml:157
5007 "deb http://ftp.debian.org/debian &stable-codename; main contrib non-free\n"
5008 "deb http://security.debian.org/ &stable-codename;/updates main contrib "
5013 #. type: Content of: <refentry><refsect1><title>
5014 #: sources.list.5.xml:163
5015 msgid "URI specification"
5018 #. type: Content of: <refentry><refsect1><para>
5019 #: sources.list.5.xml:165
5020 msgid "The currently recognized URI types are:"
5023 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5024 #: sources.list.5.xml:169
5026 "The file scheme allows an arbitrary directory in the file system to be "
5027 "considered an archive. This is useful for NFS mounts and local mirrors or "
5031 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5032 #: sources.list.5.xml:176
5034 "The cdrom scheme allows APT to use a local CD-ROM drive with media "
5035 "swapping. Use the &apt-cdrom; program to create cdrom entries in the source "
5039 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5040 #: sources.list.5.xml:183
5042 "The http scheme specifies an HTTP server for the archive. If an environment "
5043 "variable <envar>http_proxy</envar> is set with the format "
5044 "http://server:port/, the proxy server specified in <envar>http_proxy</envar> "
5045 "will be used. Users of authenticated HTTP/1.1 proxies may use a string of "
5046 "the format http://user:pass@server:port/. Note that this is an insecure "
5047 "method of authentication."
5050 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5051 #: sources.list.5.xml:194
5053 "The ftp scheme specifies an FTP server for the archive. APT's FTP behavior "
5054 "is highly configurable; for more information see the &apt-conf; manual "
5055 "page. Please note that an FTP proxy can be specified by using the "
5056 "<envar>ftp_proxy</envar> environment variable. It is possible to specify an "
5057 "HTTP proxy (HTTP proxy servers often understand FTP URLs) using this "
5058 "environment variable and <emphasis>only</emphasis> this environment "
5059 "variable. Proxies using HTTP specified in the configuration file will be "
5063 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5064 #: sources.list.5.xml:206
5066 "The copy scheme is identical to the file scheme except that packages are "
5067 "copied into the cache directory instead of used directly at their location. "
5068 "This is useful for people using removable media to copy files around with "
5072 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5073 #: sources.list.5.xml:213
5075 "The rsh/ssh method invokes RSH/SSH to connect to a remote host and access "
5076 "the files as a given user. Prior configuration of rhosts or RSA keys is "
5077 "recommended. The standard <command>find</command> and <command>dd</command> "
5078 "commands are used to perform the file transfers from the remote host."
5081 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><term>
5082 #: sources.list.5.xml:220
5083 msgid "adding more recognizable URI types"
5086 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5087 #: sources.list.5.xml:222
5089 "APT can be extended with more methods shipped in other optional packages, "
5090 "which should follow the naming scheme "
5091 "<package>apt-transport-<replaceable>method</replaceable></package>. For "
5092 "instance, the APT team also maintains the package "
5093 "<package>apt-transport-https</package>, which provides access methods for "
5094 "HTTPS URIs with features similar to the http method. Methods for using "
5095 "e.g. debtorrent are also available - see &apt-transport-debtorrent;."
5098 #. type: Content of: <refentry><refsect1><para>
5099 #: sources.list.5.xml:234
5101 "Uses the archive stored locally (or NFS mounted) at /home/jason/debian for "
5102 "stable/main, stable/contrib, and stable/non-free."
5105 #. type: Content of: <refentry><refsect1><literallayout>
5106 #: sources.list.5.xml:236
5108 msgid "deb file:/home/jason/debian stable main contrib non-free"
5111 #. type: Content of: <refentry><refsect1><para>
5112 #: sources.list.5.xml:238
5113 msgid "As above, except this uses the unstable (development) distribution."
5116 #. type: Content of: <refentry><refsect1><literallayout>
5117 #: sources.list.5.xml:239
5119 msgid "deb file:/home/jason/debian unstable main contrib non-free"
5122 #. type: Content of: <refentry><refsect1><para>
5123 #: sources.list.5.xml:241
5124 msgid "Source line for the above"
5127 #. type: Content of: <refentry><refsect1><literallayout>
5128 #: sources.list.5.xml:242
5130 msgid "deb-src file:/home/jason/debian unstable main contrib non-free"
5133 #. type: Content of: <refentry><refsect1><para>
5134 #: sources.list.5.xml:244
5136 "The first line gets package information for the architectures in "
5137 "<literal>APT::Architectures</literal> while the second always retrieves "
5138 "<literal>amd64</literal> and <literal>armel</literal>."
5141 #. type: Content of: <refentry><refsect1><literallayout>
5142 #: sources.list.5.xml:246
5145 "deb http://ftp.debian.org/debian &stable-codename; main\n"
5146 "deb [ arch=amd64,armel ] http://ftp.debian.org/debian &stable-codename; main"
5149 #. type: Content of: <refentry><refsect1><para>
5150 #: sources.list.5.xml:249
5152 "Uses HTTP to access the archive at archive.debian.org, and uses only the "
5156 #. type: Content of: <refentry><refsect1><literallayout>
5157 #: sources.list.5.xml:251
5159 msgid "deb http://archive.debian.org/debian-archive hamm main"
5162 #. type: Content of: <refentry><refsect1><para>
5163 #: sources.list.5.xml:253
5165 "Uses FTP to access the archive at ftp.debian.org, under the debian "
5166 "directory, and uses only the &stable-codename;/contrib area."
5169 #. type: Content of: <refentry><refsect1><literallayout>
5170 #: sources.list.5.xml:255
5172 msgid "deb ftp://ftp.debian.org/debian &stable-codename; contrib"
5175 #. type: Content of: <refentry><refsect1><para>
5176 #: sources.list.5.xml:257
5178 "Uses FTP to access the archive at ftp.debian.org, under the debian "
5179 "directory, and uses only the unstable/contrib area. If this line appears as "
5180 "well as the one in the previous example in <filename>sources.list</filename> "
5181 "a single FTP session will be used for both resource lines."
5184 #. type: Content of: <refentry><refsect1><literallayout>
5185 #: sources.list.5.xml:261
5187 msgid "deb ftp://ftp.debian.org/debian unstable contrib"
5190 #. type: Content of: <refentry><refsect1><para><literallayout>
5191 #: sources.list.5.xml:270
5193 msgid "deb http://ftp.tlh.debian.org/universe unstable/binary-$(ARCH)/"
5196 #. type: Content of: <refentry><refsect1><para>
5197 #: sources.list.5.xml:263
5199 "Uses HTTP to access the archive at ftp.tlh.debian.org, under the universe "
5200 "directory, and uses only files found under "
5201 "<filename>unstable/binary-i386</filename> on i386 machines, "
5202 "<filename>unstable/binary-amd64</filename> on amd64, and so forth for other "
5203 "supported architectures. [Note this example only illustrates how to use the "
5204 "substitution variable; official debian archives are not structured like "
5205 "this] <placeholder type=\"literallayout\" id=\"0\"/>"
5208 #. type: Content of: <refentry><refsect1><para>
5209 #: sources.list.5.xml:275
5210 msgid "&apt-cache; &apt-conf;"
5213 #. type: Content of: <refentry><refmeta><manvolnum>
5214 #: apt-extracttemplates.1.xml:22 apt-sortpkgs.1.xml:22 apt-ftparchive.1.xml:22
5218 #. type: Content of: <refentry><refnamediv><refpurpose>
5219 #: apt-extracttemplates.1.xml:29
5221 "Utility to extract <command>debconf</command> config and templates from "
5225 #. type: Content of: <refentry><refsect1><para>
5226 #: apt-extracttemplates.1.xml:35
5228 "<command>apt-extracttemplates</command> will take one or more Debian package "
5229 "files as input and write out (to a temporary directory) all associated "
5230 "config scripts and template files. For each passed in package that contains "
5231 "config scripts and templates, one line of output will be generated in the "
5235 #. type: Content of: <refentry><refsect1><para>
5236 #: apt-extracttemplates.1.xml:40
5237 msgid "package version template-file config-script"
5240 #. type: Content of: <refentry><refsect1><para>
5241 #: apt-extracttemplates.1.xml:41
5243 "template-file and config-script are written to the temporary directory "
5244 "specified by the <option>-t</option> or <option>--tempdir</option> "
5245 "(<literal>APT::ExtractTemplates::TempDir</literal>) directory, with "
5246 "filenames of the form <filename>package.template.XXXXXX</filename> and "
5247 "<filename>package.config.XXXXXX</filename>"
5250 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5251 #: apt-extracttemplates.1.xml:54
5253 "Temporary directory in which to write extracted <command>debconf</command> "
5254 "template files and config scripts. Configuration Item: "
5255 "<literal>APT::ExtractTemplates::TempDir</literal>"
5258 #. type: Content of: <refentry><refsect1><para>
5259 #: apt-extracttemplates.1.xml:71
5261 "<command>apt-extracttemplates</command> returns zero on normal operation, "
5262 "decimal 100 on error."
5265 #. type: Content of: <refentry><refnamediv><refpurpose>
5266 #: apt-sortpkgs.1.xml:29
5267 msgid "Utility to sort package index files"
5270 #. type: Content of: <refentry><refsect1><para>
5271 #: apt-sortpkgs.1.xml:35
5273 "<command>apt-sortpkgs</command> will take an index file (source index or "
5274 "package index) and sort the records so that they are ordered by the package "
5275 "name. It will also sort the internal fields of each record according to the "
5276 "internal sorting rules."
5279 #. type: Content of: <refentry><refsect1><para>
5280 #: apt-sortpkgs.1.xml:41
5281 msgid "All output is sent to standard output; the input must be a seekable file."
5284 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5285 #: apt-sortpkgs.1.xml:50
5287 "Use source index field ordering. Configuration Item: "
5288 "<literal>APT::SortPkgs::Source</literal>."
5291 #. type: Content of: <refentry><refsect1><para>
5292 #: apt-sortpkgs.1.xml:64
5294 "<command>apt-sortpkgs</command> returns zero on normal operation, decimal "
5298 #. type: Content of: <refentry><refnamediv><refpurpose>
5299 #: apt-ftparchive.1.xml:29
5300 msgid "Utility to generate index files"
5303 #. type: Content of: <refentry><refsect1><para>
5304 #: apt-ftparchive.1.xml:35
5306 "<command>apt-ftparchive</command> is the command line tool that generates "
5307 "the index files that APT uses to access a distribution source. The index "
5308 "files should be generated on the origin site based on the content of that "
5312 #. type: Content of: <refentry><refsect1><para>
5313 #: apt-ftparchive.1.xml:39
5315 "<command>apt-ftparchive</command> is a superset of the &dpkg-scanpackages; "
5316 "program, incorporating its entire functionality via the "
5317 "<literal>packages</literal> command. It also contains a contents file "
5318 "generator, <literal>contents</literal>, and an elaborate means to 'script' "
5319 "the generation process for a complete archive."
5322 #. type: Content of: <refentry><refsect1><para>
5323 #: apt-ftparchive.1.xml:45
5325 "Internally <command>apt-ftparchive</command> can make use of binary "
5326 "databases to cache the contents of a .deb file and it does not rely on any "
5327 "external programs aside from &gzip;. When doing a full generate it "
5328 "automatically performs file-change checks and builds the desired compressed "
5332 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5333 #: apt-ftparchive.1.xml:56
5335 "The packages command generates a package file from a directory tree. It "
5336 "takes the given directory and recursively searches it for .deb files, "
5337 "emitting a package record to stdout for each. This command is approximately "
5338 "equivalent to &dpkg-scanpackages;."
5341 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5342 #: apt-ftparchive.1.xml:61 apt-ftparchive.1.xml:85
5343 msgid "The option <option>--db</option> can be used to specify a binary caching DB."
5346 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5347 #: apt-ftparchive.1.xml:66
5349 "The <literal>sources</literal> command generates a source index file from a "
5350 "directory tree. It takes the given directory and recursively searches it "
5351 "for .dsc files, emitting a source record to stdout for each. This command is "
5352 "approximately equivalent to &dpkg-scansources;."
5355 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5356 #: apt-ftparchive.1.xml:71
5358 "If an override file is specified then a source override file will be looked "
5359 "for with an extension of .src. The --source-override option can be used to "
5360 "change the source override file that will be used."
5363 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5364 #: apt-ftparchive.1.xml:78
5366 "The <literal>contents</literal> command generates a contents file from a "
5367 "directory tree. It takes the given directory and recursively searches it for "
5368 ".deb files, and reads the file list from each file. It then sorts and writes "
5369 "to stdout the list of files matched to packages. Directories are not written "
5370 "to the output. If multiple packages own the same file then each package is "
5371 "separated by a comma in the output."
5374 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5375 #: apt-ftparchive.1.xml:90
5377 "The <literal>release</literal> command generates a Release file from a "
5378 "directory tree. It recursively searches the given directory for uncompressed "
5379 "<filename>Packages</filename> and <filename>Sources</filename> files and "
5380 "ones compressed with <command>gzip</command>, <command>bzip2</command> or "
5381 "<command>lzma</command> as well as <filename>Release</filename> and "
5382 "<filename>md5sum.txt</filename> files by default "
5383 "(<literal>APT::FTPArchive::Release::Default-Patterns</literal>). Additional "
5384 "filename patterns can be added by listing them in "
5385 "<literal>APT::FTPArchive::Release::Patterns</literal>. It then writes to "
5386 "stdout a <filename>Release</filename> file containing an MD5, SHA1 and "
5387 "SHA256 digest for each file."
5390 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5391 #: apt-ftparchive.1.xml:100
5393 "Values for the additional metadata fields in the Release file are taken from "
5394 "the corresponding variables under "
5395 "<literal>APT::FTPArchive::Release</literal>, "
5396 "e.g. <literal>APT::FTPArchive::Release::Origin</literal>. The supported "
5397 "fields are: <literal>Origin</literal>, <literal>Label</literal>, "
5398 "<literal>Suite</literal>, <literal>Version</literal>, "
5399 "<literal>Codename</literal>, <literal>Date</literal>, "
5400 "<literal>Valid-Until</literal>, <literal>Architectures</literal>, "
5401 "<literal>Components</literal>, <literal>Description</literal>."
5404 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5405 #: apt-ftparchive.1.xml:113
5407 "The <literal>generate</literal> command is designed to be runnable from a "
5408 "cron script and builds indexes according to the given config file. The "
5409 "config language provides a flexible means of specifying which index files "
5410 "are built from which directories, as well as providing a simple means of "
5411 "maintaining the required settings."
5414 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5415 #: apt-ftparchive.1.xml:122
5417 "The <literal>clean</literal> command tidies the databases used by the given "
5418 "configuration file by removing any records that are no longer necessary."
5421 #. type: Content of: <refentry><refsect1><title>
5422 #: apt-ftparchive.1.xml:128
5423 msgid "The Generate Configuration"
5426 #. type: Content of: <refentry><refsect1><para>
5427 #: apt-ftparchive.1.xml:130
5429 "The <literal>generate</literal> command uses a configuration file to "
5430 "describe the archives that are going to be generated. It follows the typical "
5431 "ISC configuration format as seen in ISC tools like bind 8 and dhcpd. "
5432 "&apt-conf; contains a description of the syntax. Note that the generate "
5433 "configuration is parsed in sectional manner, but &apt-conf; is parsed in a "
5434 "tree manner. This only effects how the scope tag is handled."
5437 #. type: Content of: <refentry><refsect1><para>
5438 #: apt-ftparchive.1.xml:138
5439 msgid "The generate configuration has four separate sections, each described below."
5442 #. type: Content of: <refentry><refsect1><refsect2><title>
5443 #: apt-ftparchive.1.xml:140
5444 msgid "<literal>Dir</literal> Section"
5447 #. type: Content of: <refentry><refsect1><refsect2><para>
5448 #: apt-ftparchive.1.xml:142
5450 "The <literal>Dir</literal> section defines the standard directories needed "
5451 "to locate the files required during the generation process. These "
5452 "directories are prepended certain relative paths defined in later sections "
5453 "to produce a complete an absolute path."
5456 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5457 #: apt-ftparchive.1.xml:149
5459 "Specifies the root of the FTP archive, in a standard Debian configuration "
5460 "this is the directory that contains the <filename>ls-LR</filename> and dist "
5464 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5465 #: apt-ftparchive.1.xml:156
5466 msgid "Specifies the location of the override files."
5469 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5470 #: apt-ftparchive.1.xml:161
5471 msgid "Specifies the location of the cache files."
5474 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5475 #: apt-ftparchive.1.xml:166
5477 "Specifies the location of the file list files, if the "
5478 "<literal>FileList</literal> setting is used below."
5481 #. type: Content of: <refentry><refsect1><refsect2><title>
5482 #: apt-ftparchive.1.xml:172
5483 msgid "<literal>Default</literal> Section"
5486 #. type: Content of: <refentry><refsect1><refsect2><para>
5487 #: apt-ftparchive.1.xml:174
5489 "The <literal>Default</literal> section specifies default values, and "
5490 "settings that control the operation of the generator. Other sections may "
5491 "override these defaults with a per-section setting."
5494 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5495 #: apt-ftparchive.1.xml:180
5497 "Sets the default compression schemes to use for the package index files. It "
5498 "is a string that contains a space separated list of at least one of: '.' (no "
5499 "compression), 'gzip' and 'bzip2'. The default for all compression schemes is "
5503 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5504 #: apt-ftparchive.1.xml:188
5506 "Sets the default list of file extensions that are package files. This "
5507 "defaults to '.deb'."
5510 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5511 #: apt-ftparchive.1.xml:194
5513 "This is similar to <literal>Packages::Compress</literal> except that it "
5514 "controls the compression for the Sources files."
5517 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5518 #: apt-ftparchive.1.xml:200
5520 "Sets the default list of file extensions that are source files. This "
5521 "defaults to '.dsc'."
5524 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5525 #: apt-ftparchive.1.xml:206
5527 "This is similar to <literal>Packages::Compress</literal> except that it "
5528 "controls the compression for the Contents files."
5531 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5532 #: apt-ftparchive.1.xml:212
5534 "This is similar to <literal>Packages::Compress</literal> except that it "
5535 "controls the compression for the Translation-en master file."
5538 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5539 #: apt-ftparchive.1.xml:218
5541 "Specifies the number of kilobytes to delink (and replace with hard links) "
5542 "per run. This is used in conjunction with the per-section "
5543 "<literal>External-Links</literal> setting."
5546 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5547 #: apt-ftparchive.1.xml:225
5549 "Specifies the mode of all created index files. It defaults to 0644. All "
5550 "index files are set to this mode with no regard to the umask."
5553 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5554 #: apt-ftparchive.1.xml:232 apt-ftparchive.1.xml:378
5556 "Specifies whether long descriptions should be included in the "
5557 "<filename>Packages</filename> file or split out into a master "
5558 "<filename>Translation-en</filename> file."
5561 #. type: Content of: <refentry><refsect1><refsect2><title>
5562 #: apt-ftparchive.1.xml:238
5563 msgid "<literal>TreeDefault</literal> Section"
5566 #. type: Content of: <refentry><refsect1><refsect2><para>
5567 #: apt-ftparchive.1.xml:240
5569 "Sets defaults specific to <literal>Tree</literal> sections. All of these "
5570 "variables are substitution variables and have the strings $(DIST), "
5571 "$(SECTION) and $(ARCH) replaced with their respective values."
5574 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5575 #: apt-ftparchive.1.xml:247
5577 "Sets the number of kilobytes of contents files that are generated each "
5578 "day. The contents files are round-robined so that over several days they "
5579 "will all be rebuilt."
5582 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5583 #: apt-ftparchive.1.xml:254
5585 "Controls the number of days a contents file is allowed to be checked without "
5586 "changing. If this limit is passed the mtime of the contents file is "
5587 "updated. This case can occur if the package file is changed in such a way "
5588 "that does not result in a new contents file [override edit for instance]. A "
5589 "hold off is allowed in hopes that new .debs will be installed, requiring a "
5590 "new file anyhow. The default is 10, the units are in days."
5593 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5594 #: apt-ftparchive.1.xml:265
5596 "Sets the top of the .deb directory tree. Defaults to "
5597 "<filename>$(DIST)/$(SECTION)/binary-$(ARCH)/</filename>"
5600 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5601 #: apt-ftparchive.1.xml:271
5603 "Sets the top of the source package directory tree. Defaults to "
5604 "<filename>$(DIST)/$(SECTION)/source/</filename>"
5607 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5608 #: apt-ftparchive.1.xml:277
5610 "Sets the output Packages file. Defaults to "
5611 "<filename>$(DIST)/$(SECTION)/binary-$(ARCH)/Packages</filename>"
5614 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5615 #: apt-ftparchive.1.xml:283
5617 "Sets the output Sources file. Defaults to "
5618 "<filename>$(DIST)/$(SECTION)/source/Sources</filename>"
5621 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5622 #: apt-ftparchive.1.xml:289
5624 "Sets the output Translation-en master file with the long descriptions if "
5625 "they should be not included in the Packages file. Defaults to "
5626 "<filename>$(DIST)/$(SECTION)/i18n/Translation-en</filename>"
5629 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5630 #: apt-ftparchive.1.xml:296
5632 "Sets the path prefix that causes a symlink to be considered an internal link "
5633 "instead of an external link. Defaults to "
5634 "<filename>$(DIST)/$(SECTION)/</filename>"
5637 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5638 #: apt-ftparchive.1.xml:303
5640 "Sets the output Contents file. Defaults to "
5641 "<filename>$(DIST)/$(SECTION)/Contents-$(ARCH)</filename>. If this setting "
5642 "causes multiple Packages files to map onto a single Contents file (as is the "
5643 "default) then <command>apt-ftparchive</command> will integrate those "
5644 "package files together automatically."
5647 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5648 #: apt-ftparchive.1.xml:312
5649 msgid "Sets header file to prepend to the contents output."
5652 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5653 #: apt-ftparchive.1.xml:317
5655 "Sets the binary cache database to use for this section. Multiple sections "
5656 "can share the same database."
5659 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5660 #: apt-ftparchive.1.xml:323
5662 "Specifies that instead of walking the directory tree, "
5663 "<command>apt-ftparchive</command> should read the list of files from the "
5664 "given file. Relative files names are prefixed with the archive directory."
5667 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5668 #: apt-ftparchive.1.xml:330
5670 "Specifies that instead of walking the directory tree, "
5671 "<command>apt-ftparchive</command> should read the list of files from the "
5672 "given file. Relative files names are prefixed with the archive directory. "
5673 "This is used when processing source indexes."
5676 #. type: Content of: <refentry><refsect1><refsect2><title>
5677 #: apt-ftparchive.1.xml:338
5678 msgid "<literal>Tree</literal> Section"
5681 #. type: Content of: <refentry><refsect1><refsect2><para>
5682 #: apt-ftparchive.1.xml:340
5684 "The <literal>Tree</literal> section defines a standard Debian file tree "
5685 "which consists of a base directory, then multiple sections in that base "
5686 "directory and finally multiple Architectures in each section. The exact "
5687 "pathing used is defined by the <literal>Directory</literal> substitution "
5691 #. type: Content of: <refentry><refsect1><refsect2><para>
5692 #: apt-ftparchive.1.xml:345
5694 "The <literal>Tree</literal> section takes a scope tag which sets the "
5695 "<literal>$(DIST)</literal> variable and defines the root of the tree (the "
5696 "path is prefixed by <literal>ArchiveDir</literal>). Typically this is a "
5697 "setting such as <filename>dists/&stable-codename;</filename>."
5700 #. type: Content of: <refentry><refsect1><refsect2><para>
5701 #: apt-ftparchive.1.xml:350
5703 "All of the settings defined in the <literal>TreeDefault</literal> section "
5704 "can be used in a <literal>Tree</literal> section as well as three new "
5708 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
5709 #: apt-ftparchive.1.xml:356
5712 "for i in Sections do \n"
5713 " for j in Architectures do\n"
5714 " Generate for DIST=scope SECTION=i ARCH=j\n"
5718 #. type: Content of: <refentry><refsect1><refsect2><para>
5719 #: apt-ftparchive.1.xml:353
5721 "When processing a <literal>Tree</literal> section "
5722 "<command>apt-ftparchive</command> performs an operation similar to: "
5723 "<placeholder type=\"programlisting\" id=\"0\"/>"
5726 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5727 #: apt-ftparchive.1.xml:364
5729 "This is a space separated list of sections which appear under the "
5730 "distribution; typically this is something like <literal>main contrib "
5731 "non-free</literal>"
5734 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5735 #: apt-ftparchive.1.xml:371
5737 "This is a space separated list of all the architectures that appear under "
5738 "search section. The special architecture 'source' is used to indicate that "
5739 "this tree has a source archive."
5742 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5743 #: apt-ftparchive.1.xml:384
5745 "Sets the binary override file. The override file contains section, priority "
5746 "and maintainer address information."
5749 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5750 #: apt-ftparchive.1.xml:390
5752 "Sets the source override file. The override file contains section "
5756 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5757 #: apt-ftparchive.1.xml:396 apt-ftparchive.1.xml:442
5758 msgid "Sets the binary extra override file."
5761 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5762 #: apt-ftparchive.1.xml:401 apt-ftparchive.1.xml:447
5763 msgid "Sets the source extra override file."
5766 #. type: Content of: <refentry><refsect1><refsect2><title>
5767 #: apt-ftparchive.1.xml:406
5768 msgid "<literal>BinDirectory</literal> Section"
5771 #. type: Content of: <refentry><refsect1><refsect2><para>
5772 #: apt-ftparchive.1.xml:408
5774 "The <literal>bindirectory</literal> section defines a binary directory tree "
5775 "with no special structure. The scope tag specifies the location of the "
5776 "binary directory and the settings are similar to the <literal>Tree</literal> "
5777 "section with no substitution variables or "
5778 "<literal>Section</literal><literal>Architecture</literal> settings."
5781 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5782 #: apt-ftparchive.1.xml:416
5783 msgid "Sets the Packages file output."
5786 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5787 #: apt-ftparchive.1.xml:421
5789 "Sets the Sources file output. At least one of <literal>Packages</literal> or "
5790 "<literal>Sources</literal> is required."
5793 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5794 #: apt-ftparchive.1.xml:427
5795 msgid "Sets the Contents file output (optional)."
5798 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5799 #: apt-ftparchive.1.xml:432
5800 msgid "Sets the binary override file."
5803 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5804 #: apt-ftparchive.1.xml:437
5805 msgid "Sets the source override file."
5808 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5809 #: apt-ftparchive.1.xml:452
5810 msgid "Sets the cache DB."
5813 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5814 #: apt-ftparchive.1.xml:457
5815 msgid "Appends a path to all the output paths."
5818 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
5819 #: apt-ftparchive.1.xml:462
5820 msgid "Specifies the file list file."
5823 #. type: Content of: <refentry><refsect1><title>
5824 #: apt-ftparchive.1.xml:469
5825 msgid "The Binary Override File"
5828 #. type: Content of: <refentry><refsect1><para>
5829 #: apt-ftparchive.1.xml:470
5831 "The binary override file is fully compatible with &dpkg-scanpackages;. It "
5832 "contains four fields separated by spaces. The first field is the package "
5833 "name, the second is the priority to force that package to, the third is the "
5834 "section to force that package to and the final field is the maintainer "
5835 "permutation field."
5838 #. type: Content of: <refentry><refsect1><para><literallayout>
5839 #: apt-ftparchive.1.xml:476
5841 msgid "old [// oldn]* => new"
5844 #. type: Content of: <refentry><refsect1><para><literallayout>
5845 #: apt-ftparchive.1.xml:478
5850 #. type: Content of: <refentry><refsect1><para>
5851 #: apt-ftparchive.1.xml:475
5853 "The general form of the maintainer field is: <placeholder "
5854 "type=\"literallayout\" id=\"0\"/> or simply, <placeholder "
5855 "type=\"literallayout\" id=\"1\"/> The first form allows a double-slash "
5856 "separated list of old email addresses to be specified. If any of those are "
5857 "found then new is substituted for the maintainer field. The second form "
5858 "unconditionally substitutes the maintainer field."
5861 #. type: Content of: <refentry><refsect1><title>
5862 #: apt-ftparchive.1.xml:486
5863 msgid "The Source Override File"
5866 #. type: Content of: <refentry><refsect1><para>
5867 #: apt-ftparchive.1.xml:488
5869 "The source override file is fully compatible with &dpkg-scansources;. It "
5870 "contains two fields separated by spaces. The first field is the source "
5871 "package name, the second is the section to assign it."
5874 #. type: Content of: <refentry><refsect1><title>
5875 #: apt-ftparchive.1.xml:493
5876 msgid "The Extra Override File"
5879 #. type: Content of: <refentry><refsect1><para>
5880 #: apt-ftparchive.1.xml:495
5882 "The extra override file allows any arbitrary tag to be added or replaced in "
5883 "the output. It has three columns, the first is the package, the second is "
5884 "the tag and the remainder of the line is the new value."
5887 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5888 #: apt-ftparchive.1.xml:506
5890 "Generate the given checksum. These options default to on, when turned off "
5891 "the generated index files will not have the checksum fields where possible. "
5892 "Configuration Items: "
5893 "<literal>APT::FTPArchive::<replaceable>Checksum</replaceable></literal> and "
5894 "<literal>APT::FTPArchive::<replaceable>Index</replaceable>::<replaceable>Checksum</replaceable></literal> "
5895 "where <literal><replaceable>Index</replaceable></literal> can be "
5896 "<literal>Packages</literal>, <literal>Sources</literal> or "
5897 "<literal>Release</literal> and "
5898 "<literal><replaceable>Checksum</replaceable></literal> can be "
5899 "<literal>MD5</literal>, <literal>SHA1</literal> or "
5900 "<literal>SHA256</literal>."
5903 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5904 #: apt-ftparchive.1.xml:517
5906 "Use a binary caching DB. This has no effect on the generate command. "
5907 "Configuration Item: <literal>APT::FTPArchive::DB</literal>."
5910 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5911 #: apt-ftparchive.1.xml:523
5913 "Quiet; produces output suitable for logging, omitting progress indicators. "
5914 "More q's will produce more quiet up to a maximum of 2. You can also use "
5915 "<option>-q=#</option> to set the quiet level, overriding the configuration "
5916 "file. Configuration Item: <literal>quiet</literal>."
5919 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5920 #: apt-ftparchive.1.xml:531
5922 "Perform Delinking. If the <literal>External-Links</literal> setting is used "
5923 "then this option actually enables delinking of the files. It defaults to on "
5924 "and can be turned off with <option>--no-delink</option>. Configuration "
5925 "Item: <literal>APT::FTPArchive::DeLinkAct</literal>."
5928 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5929 #: apt-ftparchive.1.xml:539
5931 "Perform contents generation. When this option is set and package indexes are "
5932 "being generated with a cache DB then the file listing will also be extracted "
5933 "and stored in the DB for later use. When using the generate command this "
5934 "option also allows the creation of any Contents files. The default is on. "
5935 "Configuration Item: <literal>APT::FTPArchive::Contents</literal>."
5938 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5939 #: apt-ftparchive.1.xml:549
5941 "Select the source override file to use with the <literal>sources</literal> "
5942 "command. Configuration Item: "
5943 "<literal>APT::FTPArchive::SourceOverride</literal>."
5946 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5947 #: apt-ftparchive.1.xml:555
5949 "Make the caching databases read only. Configuration Item: "
5950 "<literal>APT::FTPArchive::ReadOnlyDB</literal>."
5953 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5954 #: apt-ftparchive.1.xml:560
5956 "Accept in the <literal>packages</literal> and <literal>contents</literal> "
5957 "commands only package files matching <literal>*_arch.deb</literal> or "
5958 "<literal>*_all.deb</literal> instead of all package files in the given "
5959 "path. Configuration Item: <literal>APT::FTPArchive::Architecture</literal>."
5962 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5963 #: apt-ftparchive.1.xml:568
5965 "&apt-ftparchive; caches as much as possible of metadata in a cachedb. If "
5966 "packages are recompiled and/or republished with the same version again, this "
5967 "will lead to problems as the now outdated cached metadata like size and "
5968 "checksums will be used. With this option enabled this will no longer happen "
5969 "as it will be checked if the file was changed. Note that this option is set "
5970 "to \"<literal>false</literal>\" by default as it is not recommend to upload "
5971 "multiply versions/builds of a package with the same versionnumber, so in "
5972 "theory nobody will have these problems and therefore all these extra checks "
5976 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
5977 #: apt-ftparchive.1.xml:580
5979 "This configuration option defaults to \"<literal>true</literal>\" and should "
5980 "only be set to <literal>\"false\"</literal> if the Archive generated with "
5981 "&apt-ftparchive; also provides <filename>Translation</filename> files. Note "
5982 "that the <filename>Translation-en</filename> master file can only be created "
5983 "in the generate command."
5986 #. type: Content of: <refentry><refsect1><para><programlisting>
5987 #: apt-ftparchive.1.xml:598
5990 "<command>apt-ftparchive</command> packages "
5991 "<replaceable>directory</replaceable> | <command>gzip</command> > "
5992 "<filename>Packages.gz</filename>\n"
5995 #. type: Content of: <refentry><refsect1><para>
5996 #: apt-ftparchive.1.xml:594
5998 "To create a compressed Packages file for a directory containing binary "
5999 "packages (.deb): <placeholder type=\"programlisting\" id=\"0\"/>"
6002 #. type: Content of: <refentry><refsect1><para>
6003 #: apt-ftparchive.1.xml:608
6005 "<command>apt-ftparchive</command> returns zero on normal operation, decimal "
6009 #. type: Attribute 'lang' of: <book>
6010 #: guide.dbk:9 offline.dbk:9
6014 #. type: Content of: <book><title>
6016 msgid "APT User's Guide"
6019 #. type: Content of: <book><bookinfo><authorgroup><author><personname>
6020 #: guide.dbk:17 offline.dbk:17
6021 msgid "Jason Gunthorpe"
6024 #. type: Content of: <book><bookinfo><authorgroup><author><email>
6025 #: guide.dbk:17 offline.dbk:17
6026 msgid "jgg@debian.org"
6029 #. type: Content of: <book><bookinfo><releaseinfo>
6030 #: guide.dbk:21 offline.dbk:21
6031 msgid "Version &apt-product-version;"
6034 #. type: Content of: <book><bookinfo><abstract><para>
6037 "This document provides an overview of how to use the the APT package "
6041 #. type: Content of: <book><bookinfo>
6043 msgid "<copyright><year>1998</year><holder>Jason Gunthorpe</holder></copyright>"
6046 #. type: Content of: <book><bookinfo><legalnotice><title>
6047 #: guide.dbk:32 offline.dbk:33
6048 msgid "License Notice"
6051 #. type: Content of: <book><bookinfo><legalnotice><para>
6052 #: guide.dbk:34 offline.dbk:35
6054 "\"APT\" and this document are free software; you can redistribute them "
6055 "and/or modify them under the terms of the GNU General Public License as "
6056 "published by the Free Software Foundation; either version 2 of the License, "
6057 "or (at your option) any later version."
6060 #. type: Content of: <book><bookinfo><legalnotice><para>
6061 #: guide.dbk:43 offline.dbk:41
6063 "For more details, on Debian systems, see the file "
6064 "/usr/share/common-licenses/GPL for the full license."
6067 #. type: Content of: <book><chapter><title>
6072 #. type: Content of: <book><chapter><para>
6075 "The APT package currently contains two sections, the APT "
6076 "<command>dselect</command> method and the <command>apt-get</command> command "
6077 "line user interface. Both provide a way to install and remove packages as "
6078 "well as download new packages from the Internet."
6081 #. type: Content of: <book><chapter><section><title>
6083 msgid "Anatomy of the Package System"
6086 #. type: Content of: <book><chapter><section><para>
6089 "The Debian packaging system has a large amount of information associated "
6090 "with each package to help assure that it integrates cleanly and easily into "
6091 "the system. The most prominent of its features is the dependency system."
6094 #. type: Content of: <book><chapter><section><para>
6097 "The dependency system allows individual programs to make use of shared "
6098 "elements in the system such as libraries. It simplifies placing infrequently "
6099 "used portions of a program in separate packages to reduce the number of "
6100 "things the average user is required to install. Also, it allows for choices "
6101 "in mail transport agents, X servers and so on."
6104 #. type: Content of: <book><chapter><section><para>
6107 "The first step to understanding the dependency system is to grasp the "
6108 "concept of a simple dependency. The meaning of a simple dependency is that a "
6109 "package requires another package to be installed at the same time to work "
6113 #. type: Content of: <book><chapter><section><para>
6116 "For instance, mailcrypt is an emacs extension that aids in encrypting email "
6117 "with GPG. Without GPGP installed mailcrypt is useless, so mailcrypt has a "
6118 "simple dependency on GPG. Also, because it is an emacs extension it has a "
6119 "simple dependency on emacs, without emacs it is completely useless."
6122 #. type: Content of: <book><chapter><section><para>
6125 "The other important dependency to understand is a conflicting dependency. It "
6126 "means that a package, when installed with another package, will not work and "
6127 "may possibly be extremely harmful to the system. As an example consider a "
6128 "mail transport agent such as sendmail, exim or qmail. It is not possible to "
6129 "have two mail transport agents installed because both need to listen to the "
6130 "network to receive mail. Attempting to install two will seriously damage the "
6131 "system so all mail transport agents have a conflicting dependency with all "
6132 "other mail transport agents."
6135 #. type: Content of: <book><chapter><section><para>
6138 "As an added complication there is the possibility for a package to pretend "
6139 "to be another package. Consider that exim and sendmail for many intents are "
6140 "identical, they both deliver mail and understand a common interface. Hence, "
6141 "the package system has a way for them to declare that they are both "
6142 "mail-transport-agents. So, exim and sendmail both declare that they provide "
6143 "a mail-transport-agent and other packages that need a mail transport agent "
6144 "depend on mail-transport-agent. This can add a great deal of confusion when "
6145 "trying to manually fix packages."
6148 #. type: Content of: <book><chapter><section><para>
6151 "At any given time a single dependency may be met by packages that are "
6152 "already installed or it may not be. APT attempts to help resolve dependency "
6153 "issues by providing a number of automatic algorithms that help in selecting "
6154 "packages for installation."
6157 #. type: Content of: <book><chapter><title>
6162 #. type: Content of: <book><chapter><para>
6165 "<command>apt-get</command> provides a simple way to install packages from "
6166 "the command line. Unlike <command>dpkg</command>, <command>apt-get</command> "
6167 "does not understand .deb files, it works with the package's proper name and "
6168 "can only install .deb archives from a <emphasis>Source</emphasis>."
6171 #. type: Content of: <book><chapter><para><footnote><para>
6174 "If you are using an http proxy server you must set the http_proxy "
6175 "environment variable first, see sources.list(5)"
6178 #. type: Content of: <book><chapter><para>
6181 "The first <placeholder type=\"footnote\" id=\"0\"/> thing that should be "
6182 "done before using <command>apt-get</command> is to fetch the package lists "
6183 "from the <emphasis>Sources</emphasis> so that it knows what packages are "
6184 "available. This is done with <literal>apt-get update</literal>. For "
6188 #. type: Content of: <book><chapter><screen>
6192 "# apt-get update\n"
6193 "Get http://ftp.de.debian.org/debian-non-US/ stable/binary-i386/ Packages\n"
6194 "Get http://llug.sep.bnl.gov/debian/ testing/contrib Packages\n"
6195 "Reading Package Lists... Done\n"
6196 "Building Dependency Tree... Done\n"
6199 #. type: Content of: <book><chapter><para>
6201 msgid "Once updated there are several commands that can be used:"
6204 #. type: Content of: <book><chapter><variablelist><varlistentry><term>
6209 #. type: Content of: <book><chapter><variablelist><varlistentry><listitem><para>
6212 "Upgrade will attempt to gently upgrade the whole system. Upgrade will never "
6213 "install a new package or remove an existing package, nor will it ever "
6214 "upgrade a package that might cause some other package to break. This can be "
6215 "used daily to relatively safely upgrade the system. Upgrade will list all of "
6216 "the packages that it could not upgrade, this usually means that they depend "
6217 "on new packages or conflict with some other "
6218 "package. <command>dselect</command> or <literal>apt-get install</literal> "
6219 "can be used to force these packages to install."
6222 #. type: Content of: <book><chapter><variablelist><varlistentry><term>
6227 #. type: Content of: <book><chapter><variablelist><varlistentry><listitem><para>
6230 "Install is used to install packages by name. The package is automatically "
6231 "fetched and installed. This can be useful if you already know the name of "
6232 "the package to install and do not want to go into a GUI to select it. Any "
6233 "number of packages may be passed to install, they will all be "
6234 "fetched. Install automatically attempts to resolve dependency problems with "
6235 "the listed packages and will print a summary and ask for confirmation if "
6236 "anything other than its arguments are changed."
6239 #. type: Content of: <book><chapter><variablelist><varlistentry><term>
6241 msgid "dist-upgrade"
6244 #. type: Content of: <book><chapter><variablelist><varlistentry><listitem><para>
6247 "Dist-upgrade is a complete upgrader designed to simplify upgrading between "
6248 "releases of Debian. It uses a sophisticated algorithm to determine the best "
6249 "set of packages to install, upgrade and remove to get as much of the system "
6250 "to the newest release. In some situations it may be desired to use "
6251 "dist-upgrade rather than spend the time manually resolving dependencies in "
6252 "<command>dselect</command>. Once dist-upgrade has completed then "
6253 "<command>dselect</command> can be used to install any packages that may have "
6257 #. type: Content of: <book><chapter><variablelist><varlistentry><listitem><para>
6260 "It is important to closely look at what dist-upgrade is going to do, its "
6261 "decisions may sometimes be quite surprising."
6264 #. type: Content of: <book><chapter><para>
6267 "<command>apt-get</command> has several command line options that are "
6268 "detailed in its man page, "
6269 "<citerefentry><refentrytitle>apt-get</refentrytitle><manvolnum>8</manvolnum></citerefentry>. "
6270 "The most useful option is <literal>-d</literal> which does not install the "
6271 "fetched files. If the system has to download a large number of package it "
6272 "would be undesired to start installing them in case something goes "
6273 "wrong. When <literal>-d</literal> is used the downloaded archives can be "
6274 "installed by simply running the command that caused them to be downloaded "
6275 "again without <literal>-d</literal>."
6278 #. type: Content of: <book><chapter><title>
6283 #. type: Content of: <book><chapter><para>
6286 "The APT <command>dselect</command> method provides the complete APT system "
6287 "with the <command>dselect</command> package selection "
6288 "GUI. <command>dselect</command> is used to select the packages to be "
6289 "installed or removed and APT actually installs them."
6292 #. type: Content of: <book><chapter><para>
6295 "To enable the APT method you need to select [A]ccess in "
6296 "<command>dselect</command> and then choose the APT method. You will be "
6297 "prompted for a set of <emphasis>Sources</emphasis> which are places to fetch "
6298 "archives from. These can be remote Internet sites, local Debian mirrors or "
6299 "CD-ROMs. Each source can provide a fragment of the total Debian archive, APT "
6300 "will automatically combine them to form a complete set of packages. If you "
6301 "have a CD-ROM then it is a good idea to specify it first and then specify a "
6302 "mirror so that you have access to the latest bug fixes. APT will "
6303 "automatically use packages on your CD-ROM before downloading from the "
6307 #. type: Content of: <book><chapter><screen>
6311 " Set up a list of distribution source locations\n"
6313 " Please give the base URL of the debian distribution.\n"
6314 " The access schemes I know about are: http file\n"
6317 " file:/mnt/debian,\n"
6318 " ftp://ftp.debian.org/debian,\n"
6319 " http://ftp.de.debian.org/debian,\n"
6322 " URL [http://llug.sep.bnl.gov/debian]:\n"
6325 #. type: Content of: <book><chapter><para>
6328 "The <emphasis>Sources</emphasis> setup starts by asking for the base of the "
6329 "Debian archive, defaulting to a HTTP mirror. Next it asks for the "
6330 "distribution to get."
6333 #. type: Content of: <book><chapter><screen>
6337 " Please give the distribution tag to get or a path to the\n"
6338 " package file ending in a /. The distribution\n"
6339 " tags are typically something like: stable unstable testing non-US\n"
6341 " Distribution [stable]:\n"
6344 #. type: Content of: <book><chapter><para>
6347 "The distribution refers to the Debian version in the archive, "
6348 "<emphasis>stable</emphasis> refers to the latest released version and "
6349 "<emphasis>unstable</emphasis> refers to the developmental "
6350 "version. <emphasis>non-US</emphasis> is only available on some mirrors and "
6351 "refers to packages that contain encryption technology or other things that "
6352 "cannot be exported from the United States. Importing these packages into the "
6353 "US is legal however."
6356 #. type: Content of: <book><chapter><screen>
6360 " Please give the components to get\n"
6361 " The components are typically something like: main contrib non-free\n"
6363 " Components [main contrib non-free]:\n"
6366 #. type: Content of: <book><chapter><para>
6369 "The components list refers to the list of sub distributions to fetch. The "
6370 "distribution is split up based on software licenses, main being DFSG free "
6371 "packages while contrib and non-free contain things that have various "
6372 "restrictions placed on their use and distribution."
6375 #. type: Content of: <book><chapter><para>
6378 "Any number of sources can be added, the setup script will continue to prompt "
6379 "until you have specified all that you want."
6382 #. type: Content of: <book><chapter><para>
6385 "Before starting to use <command>dselect</command> it is necessary to update "
6386 "the available list by selecting [U]pdate from the menu. This is a superset "
6387 "of <literal>apt-get update</literal> that makes the fetched information "
6388 "available to <command>dselect</command>. [U]pdate must be performed even if "
6389 "<literal>apt-get update</literal> has been run before."
6392 #. type: Content of: <book><chapter><para>
6395 "You can then go on and make your selections using [S]elect and then perform "
6396 "the installation using [I]nstall. When using the APT method the [C]onfig and "
6397 "[R]emove commands have no meaning, the [I]nstall command performs both of "
6401 #. type: Content of: <book><chapter><para>
6404 "By default APT will automatically remove the package (.deb) files once they "
6405 "have been successfully installed. To change this behavior place "
6406 "<literal>Dselect::clean \"prompt\";</literal> in /etc/apt/apt.conf."
6409 #. type: Content of: <book><chapter><title>
6411 msgid "The Interface"
6414 #. type: Content of: <book><chapter><para><footnote><para>
6417 "The <command>dselect</command> method actually is a set of wrapper scripts "
6418 "to <command>apt-get</command>. The method actually provides more "
6419 "functionality than is present in <command>apt-get</command> alone."
6422 #. type: Content of: <book><chapter><para>
6425 "Both that APT <command>dselect</command> method and "
6426 "<command>apt-get</command> share the same interface. It is a simple system "
6427 "that generally tells you what it will do and then goes and does "
6428 "it. <placeholder type=\"footnote\" id=\"0\"/> After printing out a summary "
6429 "of what will happen APT then will print out some informative status messages "
6430 "so that you can estimate how far along it is and how much is left to do."
6433 #. type: Content of: <book><chapter><section><title>
6438 #. type: Content of: <book><chapter><section><para>
6441 "Before all operations except update, APT performs a number of actions to "
6442 "prepare its internal state. It also does some checks of the system's "
6443 "state. At any time these operations can be performed by running "
6444 "<literal>apt-get check</literal>."
6447 #. type: Content of: <book><chapter><section><screen>
6452 "Reading Package Lists... Done\n"
6453 "Building Dependency Tree... Done\n"
6456 #. type: Content of: <book><chapter><section><para>
6459 "The first thing it does is read all the package files into memory. APT uses "
6460 "a caching scheme so this operation will be faster the second time it is "
6461 "run. If some of the package files are not found then they will be ignored "
6462 "and a warning will be printed when apt-get exits."
6465 #. type: Content of: <book><chapter><section><para>
6468 "The final operation performs a detailed analysis of the system's "
6469 "dependencies. It checks every dependency of every installed or unpacked "
6470 "package and considers if it is OK. Should this find a problem then a report "
6471 "will be printed out and <command>apt-get</command> will refuse to run."
6474 #. type: Content of: <book><chapter><section><screen>
6479 "Reading Package Lists... Done\n"
6480 "Building Dependency Tree... Done\n"
6481 "You might want to run apt-get -f install' to correct these.\n"
6482 "Sorry, but the following packages have unmet dependencies:\n"
6483 " 9fonts: Depends: xlib6g but it is not installed\n"
6484 " uucp: Depends: mailx but it is not installed\n"
6485 " blast: Depends: xlib6g (>= 3.3-5) but it is not installed\n"
6486 " adduser: Depends: perl-base but it is not installed\n"
6487 " aumix: Depends: libgpmg1 but it is not installed\n"
6488 " debiandoc-sgml: Depends: sgml-base but it is not installed\n"
6489 " bash-builtins: Depends: bash (>= 2.01) but 2.0-3 is installed\n"
6490 " cthugha: Depends: svgalibg1 but it is not installed\n"
6491 " Depends: xlib6g (>= 3.3-5) but it is not installed\n"
6492 " libreadlineg2: Conflicts:libreadline2 (<< 2.1-2.1)\n"
6495 #. type: Content of: <book><chapter><section><para>
6498 "In this example the system has many problems, including a serious problem "
6499 "with libreadlineg2. For each package that has unmet dependencies a line is "
6500 "printed out indicating the package with the problem and the dependencies "
6501 "that are unmet. A short explanation of why the package has a dependency "
6502 "problem is also included."
6505 #. type: Content of: <book><chapter><section><para><footnote><para>
6508 "APT however considers all known dependencies and attempts to prevent broken "
6512 #. type: Content of: <book><chapter><section><para>
6515 "There are two ways a system can get into a broken state like this. The first "
6516 "is caused by <command>dpkg</command> missing some subtle relationships "
6517 "between packages when performing upgrades. <placeholder type=\"footnote\" "
6518 "id=\"0\"/>. The second is if a package installation fails during an "
6519 "operation. In this situation a package may have been unpacked without its "
6520 "dependents being installed."
6523 #. type: Content of: <book><chapter><section><para>
6526 "The second situation is much less serious than the first because APT places "
6527 "certain constraints on the order that packages are installed. In both cases "
6528 "supplying the <literal>-f</literal> option to <command>apt-get</command> "
6529 "will cause APT to deduce a possible solution to the problem and then "
6530 "continue on. The APT <command>dselect</command> method always supplies the "
6531 "<literal>-f</literal> option to allow for easy continuation of failed "
6532 "maintainer scripts."
6535 #. type: Content of: <book><chapter><section><para>
6538 "However, if the <literal>-f</literal> option is used to correct a seriously "
6539 "broken system caused by the first case then it is possible that it will "
6540 "either fail immediately or the installation sequence will fail. In either "
6541 "case it is necessary to manually use dpkg (possibly with forcing options) to "
6542 "correct the situation enough to allow APT to proceed."
6545 #. type: Content of: <book><chapter><section><title>
6547 msgid "The Status Report"
6550 #. type: Content of: <book><chapter><section><para>
6553 "Before proceeding <command>apt-get</command> will present a report on what "
6554 "will happen. Generally the report reflects the type of operation being "
6555 "performed but there are several common elements. In all cases the lists "
6556 "reflect the final state of things, taking into account the "
6557 "<literal>-f</literal> option and any other relevant activities to the "
6558 "command being executed."
6561 #. type: Content of: <book><chapter><section><section><title>
6563 msgid "The Extra Package list"
6566 #. type: Content of: <book><chapter><section><section><screen>
6570 "The following extra packages will be installed:\n"
6571 " libdbd-mysql-perl xlib6 zlib1 xzx libreadline2 libdbd-msql-perl\n"
6572 " mailpgp xdpkg fileutils pinepgp zlib1g xlib6g perl-base\n"
6573 " bin86 libgdbm1 libgdbmg1 quake-lib gmp2 bcc xbuffy\n"
6574 " squake pgp-i python-base debmake ldso perl libreadlineg2\n"
6578 #. type: Content of: <book><chapter><section><section><para>
6581 "The Extra Package list shows all of the packages that will be installed or "
6582 "upgraded in excess of the ones mentioned on the command line. It is only "
6583 "generated for an <literal>install</literal> command. The listed packages are "
6584 "often the result of an Auto Install."
6587 #. type: Content of: <book><chapter><section><section><title>
6589 msgid "The Packages to Remove"
6592 #. type: Content of: <book><chapter><section><section><screen>
6596 "The following packages will be REMOVED:\n"
6597 " xlib6-dev xpat2 tk40-dev xkeycaps xbattle xonix\n"
6598 " xdaliclock tk40 tk41 xforms0.86 ghostview xloadimage xcolorsel\n"
6599 " xadmin xboard perl-debug tkined xtetris libreadline2-dev perl-suid\n"
6600 " nas xpilot xfig\n"
6603 #. type: Content of: <book><chapter><section><section><para>
6606 "The Packages to Remove list shows all of the packages that will be removed "
6607 "from the system. It can be shown for any of the operations and should be "
6608 "given a careful inspection to ensure nothing important is to be taken "
6609 "off. The <literal>-f</literal> option is especially good at generating "
6610 "packages to remove so extreme care should be used in that case. The list may "
6611 "contain packages that are going to be removed because they are only "
6612 "partially installed, possibly due to an aborted installation."
6615 #. type: Content of: <book><chapter><section><section><title>
6617 msgid "The New Packages list"
6620 #. type: Content of: <book><chapter><section><section><screen>
6624 "The following NEW packages will installed:\n"
6625 " zlib1g xlib6g perl-base libgdbmg1 quake-lib gmp2 pgp-i python-base\n"
6628 #. type: Content of: <book><chapter><section><section><para>
6631 "The New Packages list is simply a reminder of what will happen. The packages "
6632 "listed are not presently installed in the system but will be when APT is "
6636 #. type: Content of: <book><chapter><section><section><title>
6638 msgid "The Kept Back list"
6641 #. type: Content of: <book><chapter><section><section><screen>
6645 "The following packages have been kept back\n"
6646 " compface man-db tetex-base msql libpaper svgalib1\n"
6647 " gs snmp arena lynx xpat2 groff xscreensaver\n"
6650 #. type: Content of: <book><chapter><section><section><para>
6653 "Whenever the whole system is being upgraded there is the possibility that "
6654 "new versions of packages cannot be installed because they require new things "
6655 "or conflict with already installed things. In this case the package will "
6656 "appear in the Kept Back list. The best way to convince packages listed there "
6657 "to install is with <literal>apt-get install</literal> or by using "
6658 "<command>dselect</command> to resolve their problems."
6661 #. type: Content of: <book><chapter><section><section><title>
6663 msgid "Held Packages warning"
6666 #. type: Content of: <book><chapter><section><section><screen>
6670 "The following held packages will be changed:\n"
6674 #. type: Content of: <book><chapter><section><section><para>
6677 "Sometimes you can ask APT to install a package that is on hold, in such a "
6678 "case it prints out a warning that the held package is going to be "
6679 "changed. This should only happen during dist-upgrade or install."
6682 #. type: Content of: <book><chapter><section><section><title>
6684 msgid "Final summary"
6687 #. type: Content of: <book><chapter><section><section><para>
6689 msgid "Finally, APT will print out a summary of all the changes that will occur."
6692 #. type: Content of: <book><chapter><section><section><screen>
6696 "206 packages upgraded, 8 newly installed, 23 to remove and 51 not "
6698 "12 packages not fully installed or removed.\n"
6699 "Need to get 65.7M/66.7M of archives. After unpacking 26.5M will be used.\n"
6702 #. type: Content of: <book><chapter><section><section><para>
6705 "The first line of the summary simply is a reduced version of all of the "
6706 "lists and includes the number of upgrades - that is packages already "
6707 "installed that have new versions available. The second line indicates the "
6708 "number of poorly configured packages, possibly the result of an aborted "
6709 "installation. The final line shows the space requirements that the "
6710 "installation needs. The first pair of numbers refer to the size of the "
6711 "archive files. The first number indicates the number of bytes that must be "
6712 "fetched from remote locations and the second indicates the total size of all "
6713 "the archives required. The next number indicates the size difference between "
6714 "the presently installed packages and the newly installed packages. It is "
6715 "roughly equivalent to the space required in /usr after everything is "
6716 "done. If a large number of packages are being removed then the value may "
6717 "indicate the amount of space that will be freed."
6720 #. type: Content of: <book><chapter><section><section><para>
6723 "Some other reports can be generated by using the -u option to show packages "
6724 "to upgrade, they are similar to the previous examples."
6727 #. type: Content of: <book><chapter><section><title>
6729 msgid "The Status Display"
6732 #. type: Content of: <book><chapter><section><para>
6735 "During the download of archives and package files APT prints out a series of "
6739 #. type: Content of: <book><chapter><section><screen>
6743 "# apt-get update\n"
6744 "Get:1 http://ftp.de.debian.org/debian-non-US/ stable/non-US/ Packages\n"
6745 "Get:2 http://llug.sep.bnl.gov/debian/ testing/contrib Packages\n"
6746 "Hit http://llug.sep.bnl.gov/debian/ testing/main Packages\n"
6747 "Get:4 http://ftp.de.debian.org/debian-non-US/ unstable/binary-i386/ "
6749 "Get:5 http://llug.sep.bnl.gov/debian/ testing/non-free Packages\n"
6750 "11% [5 testing/non-free `Waiting for file' 0/32.1k 0%] 2203b/s 1m52s\n"
6753 #. type: Content of: <book><chapter><section><para>
6756 "The lines starting with <emphasis>Get</emphasis> are printed out when APT "
6757 "begins to fetch a file while the last line indicates the progress of the "
6758 "download. The first percent value on the progress line indicates the total "
6759 "percent done of all files. Unfortunately since the size of the Package files "
6760 "is unknown <literal>apt-get update</literal> estimates the percent done "
6761 "which causes some inaccuracies."
6764 #. type: Content of: <book><chapter><section><para>
6767 "The next section of the status line is repeated once for each download "
6768 "thread and indicates the operation being performed and some useful "
6769 "information about what is happening. Sometimes this section will simply read "
6770 "<emphasis>Forking</emphasis> which means the OS is loading the download "
6771 "module. The first word after the [ is the fetch number as shown on the "
6772 "history lines. The next word is the short form name of the object being "
6773 "downloaded. For archives it will contain the name of the package that is "
6777 #. type: Content of: <book><chapter><section><para>
6780 "Inside of the single quote is an informative string indicating the progress "
6781 "of the negotiation phase of the download. Typically it progresses from "
6782 "<emphasis>Connecting</emphasis> to <emphasis>Waiting for file</emphasis> to "
6783 "<emphasis>Downloading</emphasis> or <emphasis>Resuming</emphasis>. The final "
6784 "value is the number of bytes downloaded from the remote site. Once the "
6785 "download begins this is represented as <literal>102/10.2k</literal> "
6786 "indicating that 102 bytes have been fetched and 10.2 kilobytes is "
6787 "expected. The total size is always shown in 4 figure notation to preserve "
6788 "space. After the size display is a percent meter for the file itself. The "
6789 "second last element is the instantaneous average speed. This values is "
6790 "updated every 5 seconds and reflects the rate of data transfer for that "
6791 "period. Finally is shown the estimated transfer time. This is updated "
6792 "regularly and reflects the time to complete everything at the shown transfer "
6796 #. type: Content of: <book><chapter><section><para>
6799 "The status display updates every half second to provide a constant feedback "
6800 "on the download progress while the Get lines scroll back whenever a new file "
6801 "is started. Since the status display is constantly updated it is unsuitable "
6802 "for logging to a file, use the <literal>-q</literal> option to remove the "
6806 #. type: Content of: <book><chapter><section><title>
6811 #. type: Content of: <book><chapter><section><para>
6814 "APT uses <command>dpkg</command> for installing the archives and will switch "
6815 "over to the <command>dpkg</command> interface once downloading is "
6816 "completed. <command>dpkg</command> will also ask a number of questions as it "
6817 "processes the packages and the packages themselves may also ask several "
6818 "questions. Before each question there is usually a description of what it is "
6819 "asking and the questions are too varied to discuss completely here."
6822 #. type: Content of: <book><title>
6824 msgid "Using APT Offline"
6827 #. type: Content of: <book><bookinfo><abstract><para>
6830 "This document describes how to use APT in a non-networked environment, "
6831 "specifically a 'sneaker-net' approach for performing upgrades."
6834 #. type: Content of: <book><bookinfo>
6836 msgid "<copyright><year>1999</year><holder>Jason Gunthorpe</holder></copyright>"
6839 #. type: Content of: <book><chapter><title>
6841 msgid "Introduction"
6844 #. type: Content of: <book><chapter><section><title>
6845 #: offline.dbk:50 offline.dbk:80 offline.dbk:192
6849 #. type: Content of: <book><chapter><section><para>
6852 "Normally APT requires direct access to a Debian archive, either from a local "
6853 "media or through a network. Another common complaint is that a Debian "
6854 "machine is on a slow link, such as a modem and another machine has a very "
6855 "fast connection but they are physically distant."
6858 #. type: Content of: <book><chapter><section><para>
6861 "The solution to this is to use large removable media such as a Zip disc or a "
6862 "SuperDisk disc. These discs are not large enough to store the entire Debian "
6863 "archive but can easily fit a subset large enough for most users. The idea is "
6864 "to use APT to generate a list of packages that are required and then fetch "
6865 "them onto the disc using another machine with good connectivity. It is even "
6866 "possible to use another Debian machine with APT or to use a completely "
6867 "different OS and a download tool like wget. Let <emphasis>remote "
6868 "host</emphasis> mean the machine downloading the packages, and "
6869 "<emphasis>target host</emphasis> the one with bad or no connection."
6872 #. type: Content of: <book><chapter><section><para>
6875 "This is achieved by creatively manipulating the APT configuration file. The "
6876 "essential premise to tell APT to look on a disc for it's archive files. Note "
6877 "that the disc should be formated with a filesystem that can handle long file "
6878 "names such as ext2, fat32 or vfat."
6881 #. type: Content of: <book><chapter><title>
6883 msgid "Using APT on both machines"
6886 #. type: Content of: <book><chapter><section><para>
6889 "APT being available on both machines gives the simplest configuration. The "
6890 "basic idea is to place a copy of the status file on the disc and use the "
6891 "remote machine to fetch the latest package files and decide which packages "
6892 "to download. The disk directory structure should look like:"
6895 #. type: Content of: <book><chapter><section><screen>
6909 #. type: Content of: <book><chapter><section><title>
6911 msgid "The configuration file"
6914 #. type: Content of: <book><chapter><section><para>
6917 "The configuration file should tell APT to store its files on the disc and to "
6918 "use the configuration files on the disc as well. The sources.list should "
6919 "contain the proper sites that you wish to use from the remote machine, and "
6920 "the status file should be a copy of "
6921 "<emphasis>/var/lib/dpkg/status</emphasis> from the <emphasis>target "
6922 "host</emphasis>. Please note, if you are using a local archive you must use "
6923 "copy URIs, the syntax is identical to file URIs."
6926 #. type: Content of: <book><chapter><section><para>
6929 "<emphasis>apt.conf</emphasis> must contain the necessary information to make "
6933 #. type: Content of: <book><chapter><section><screen>
6939 " /* This is not necessary if the two machines are the same arch, it "
6941 " the remote APT what architecture the target machine is */\n"
6942 " Architecture \"i386\";\n"
6944 " Get::Download-Only \"true\";\n"
6949 " /* Use the disc for state information and redirect the status file from\n"
6950 " the /var/lib/dpkg default */\n"
6951 " State \"/disc/\";\n"
6952 " State::status \"status\";\n"
6954 " // Binary caches will be stored locally\n"
6955 " Cache::archives \"/disc/archives/\";\n"
6956 " Cache \"/tmp/\";\n"
6958 " // Location of the source list.\n"
6959 " Etc \"/disc/\";\n"
6963 #. type: Content of: <book><chapter><section><para>
6966 "More details can be seen by examining the apt.conf man page and the sample "
6967 "configuration file in "
6968 "<emphasis>/usr/share/doc/apt/examples/apt.conf</emphasis>."
6971 #. type: Content of: <book><chapter><section><para>
6974 "On the target machine the first thing to do is mount the disc and copy "
6975 "<emphasis>/var/lib/dpkg/status</emphasis> to it. You will also need to "
6976 "create the directories outlined in the Overview, "
6977 "<emphasis>archives/partial/</emphasis> and "
6978 "<emphasis>lists/partial/</emphasis>. Then take the disc to the remote "
6979 "machine and configure the sources.list. On the remote machine execute the "
6983 #. type: Content of: <book><chapter><section><screen>
6987 " # export APT_CONFIG=\"/disc/apt.conf\"\n"
6988 " # apt-get update\n"
6989 " [ APT fetches the package files ]\n"
6990 " # apt-get dist-upgrade\n"
6991 " [ APT fetches all the packages needed to upgrade the target machine ]\n"
6994 #. type: Content of: <book><chapter><section><para>
6997 "The dist-upgrade command can be replaced with any other standard APT "
6998 "commands, particularly dselect-upgrade. You can even use an APT front end "
6999 "such as <emphasis>dselect</emphasis>. However this presents a problem in "
7000 "communicating your selections back to the local computer."
7003 #. type: Content of: <book><chapter><section><para>
7006 "Now the disc contains all of the index files and archives needed to upgrade "
7007 "the target machine. Take the disc back and run:"
7010 #. type: Content of: <book><chapter><section><screen>
7014 " # export APT_CONFIG=\"/disc/apt.conf\"\n"
7015 " # apt-get check\n"
7016 " [ APT generates a local copy of the cache files ]\n"
7017 " # apt-get --no-d -o dir::state::status=/var/lib/dpkg/status dist-upgrade\n"
7018 " [ Or any other APT command ]\n"
7021 #. type: Content of: <book><chapter><section><para>
7024 "It is necessary for proper function to re-specify the status file to be the "
7025 "local one. This is very important!"
7028 #. type: Content of: <book><chapter><section><para>
7031 "If you are using dselect you can do the very risky operation of copying "
7032 "disc/status to /var/lib/dpkg/status so that any selections you made on the "
7033 "remote machine are updated. I highly recommend that people only make "
7034 "selections on the local machine - but this may not always be possible. DO "
7035 "NOT copy the status file if dpkg or APT have been run in the mean time!!"
7038 #. type: Content of: <book><chapter><title>
7040 msgid "Using APT and wget"
7043 #. type: Content of: <book><chapter><section><para>
7046 "<emphasis>wget</emphasis> is a popular and portable download tool that can "
7047 "run on nearly any machine. Unlike the method above this requires that the "
7048 "Debian machine already has a list of available packages."
7051 #. type: Content of: <book><chapter><section><para>
7054 "The basic idea is to create a disc that has only the archive files "
7055 "downloaded from the remote site. This is done by using the --print-uris "
7056 "option to apt-get and then preparing a wget script to actually fetch the "
7060 #. type: Content of: <book><chapter><section><title>
7065 #. type: Content of: <book><chapter><section><para>
7068 "Unlike the previous technique no special configuration files are "
7069 "required. We merely use the standard APT commands to generate the file list."
7072 #. type: Content of: <book><chapter><section><screen>
7076 " # apt-get dist-upgrade\n"
7077 " [ Press no when prompted, make sure you are happy with the actions ]\n"
7078 " # apt-get -qq --print-uris dist-upgrade > uris\n"
7079 " # awk '{print \"wget -O \" $2 \" \" $1}' < uris > /disc/wget-script\n"
7082 #. type: Content of: <book><chapter><section><para>
7085 "Any command other than dist-upgrade could be used here, including "
7089 #. type: Content of: <book><chapter><section><para>
7092 "The /disc/wget-script file will now contain a list of wget commands to "
7093 "execute in order to fetch the necessary archives. This script should be run "
7094 "with the current directory as the disc's mount point so as to save the "
7095 "output on the disc."
7098 #. type: Content of: <book><chapter><section><para>
7100 msgid "The remote machine would do something like"
7103 #. type: Content of: <book><chapter><section><screen>
7108 " # sh -x ./wget-script\n"
7112 #. type: Content of: <book><chapter><section><para>
7115 "Once the archives are downloaded and the disc returned to the Debian machine "
7116 "installation can proceed using,"
7119 #. type: Content of: <book><chapter><section><screen>
7122 msgid " # apt-get -o dir::cache::archives=\"/disc/\" dist-upgrade\n"
7125 #. type: Content of: <book><chapter><section><para>
7127 msgid "Which will use the already fetched archives on the disc."