1 # Translation of apt manpages and documentation to LANGUAGE
2 # This file is distributed under the same license as the apt-doc package.
3 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
8 "Project-Id-Version: apt-doc 1.3~pre3+cmake2\n"
9 "Report-Msgid-Bugs-To: APT Development Team <deity@lists.debian.org>\n"
10 "POT-Creation-Date: 2016-08-06 23:20+0200\n"
11 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13 "Language-Team: LANGUAGE <LL@li.org>\n"
16 "Content-Type: text/plain; charset=UTF-8\n"
17 "Content-Transfer-Encoding: 8bit\n"
23 "<!ENTITY apt-author.team \"\n"
25 " <othername>APT team</othername>\n"
26 " <contrib></contrib>\n"
35 "<!ENTITY apt-qapage \"\n"
37 "\t\t<ulink url='http://packages.qa.debian.org/a/apt.html'>QA Page</ulink>\n"
46 "<!-- Boiler plate Bug reporting section -->\n"
47 "<!ENTITY manbugs \"\n"
48 " <refsect1><title>Bugs</title>\n"
49 " <para><ulink url='http://bugs.debian.org/src:apt'>APT bug page</ulink>.\n"
50 " If you wish to report a bug in APT, please see\n"
51 " <filename>/usr/share/doc/debian/bug-reporting.txt</filename> or the\n"
52 " &reportbug; command.\n"
62 "<!-- Boiler plate Author section -->\n"
63 "<!ENTITY manauthor \"\n"
64 " <refsect1><title>Author</title>\n"
65 " <para>APT was written by the APT team "
66 "<email>apt@packages.debian.org</email>.\n"
76 "<!-- Should be used within the option section of the text to\n"
77 " put in the blurb about -h, -v, -c and -o -->\n"
78 "<!ENTITY apt-commonoptions \"\n"
79 " <varlistentry><term><option>-h</option></term>\n"
80 " <term><option>--help</option></term>\n"
81 " <listitem><para>Show a short usage summary.\n"
92 " <term><option>-v</option></term>\n"
93 " <term><option>--version</option></term>\n"
94 " <listitem><para>Show the program version.\n"
105 " <term><option>-c</option></term>\n"
106 " <term><option>--config-file</option></term>\n"
107 " <listitem><para>Configuration File; Specify a configuration file to "
109 " The program will read the default configuration file and then this \n"
110 " configuration file. If configuration settings need to be set before "
112 " default configuration files are parsed specify a file with the "
113 "<envar>APT_CONFIG</envar>\n"
114 " environment variable. See &apt-conf; for syntax information.\n"
125 " <term><option>-o</option></term>\n"
126 " <term><option>--option</option></term>\n"
127 " <listitem><para>Set a Configuration Option; This will set an "
129 " configuration option. The syntax is <option>-o "
130 "Foo::Bar=bar</option>.\n"
131 " <option>-o</option> and <option>--option</option> can be used "
133 " times to set different options.\n"
144 "<!-- Should be used within the option section of the text to\n"
145 " put in the blurb about -h, -v, -c and -o -->\n"
146 "<!ENTITY apt-cmdblurb \"\n"
147 " <para>All command line options may be set using the configuration file, "
149 " descriptions indicate the configuration option to set. For boolean\n"
150 " options you can override the config file by using something like \n"
151 " <option>-f-</option>,<option>--no-f</option>, <option>-f=no</option>\n"
152 " or several other variations.\n"
161 "<!ENTITY file-aptconf \"\n"
162 " <varlistentry><term><filename>/etc/apt/apt.conf</filename></term>\n"
163 " <listitem><para>APT configuration file.\n"
164 " Configuration Item: "
165 "<literal>Dir::Etc::Main</literal>.</para></listitem>\n"
173 " <varlistentry><term><filename>/etc/apt/apt.conf.d/</filename></term>\n"
174 " <listitem><para>APT configuration file fragments.\n"
175 " Configuration Item: "
176 "<literal>Dir::Etc::Parts</literal>.</para></listitem>\n"
185 "<!ENTITY file-cachearchives \"\n"
186 " <varlistentry><term><filename>&cachedir;/archives/</filename></term>\n"
187 " <listitem><para>Storage area for retrieved package files.\n"
188 " Configuration Item: "
189 "<literal>Dir::Cache::Archives</literal>.</para></listitem>\n"
198 "<varlistentry><term><filename>&cachedir;/archives/partial/</filename></term>\n"
199 " <listitem><para>Storage area for package files in transit.\n"
200 " Configuration Item: <literal>Dir::Cache::Archives</literal> "
201 "(<filename>partial</filename> will be implicitly "
202 "appended)</para></listitem>\n"
211 "<!ENTITY file-preferences \"\n"
212 " <varlistentry><term><filename>/etc/apt/preferences</filename></term>\n"
213 " <listitem><para>Version preferences file.\n"
214 " This is where you would specify "pinning",\n"
215 " i.e. a preference to get certain packages\n"
216 " from a separate source\n"
217 " or from a different version of a distribution.\n"
218 " Configuration Item: "
219 "<literal>Dir::Etc::Preferences</literal>.</para></listitem>\n"
228 "<varlistentry><term><filename>/etc/apt/preferences.d/</filename></term>\n"
229 " <listitem><para>File fragments for the version preferences.\n"
230 " Configuration Item: "
231 "<literal>Dir::Etc::PreferencesParts</literal>.</para></listitem>\n"
240 "<!ENTITY file-sourceslist \"\n"
241 " <varlistentry><term><filename>/etc/apt/sources.list</filename></term>\n"
242 " <listitem><para>Locations to fetch packages from.\n"
243 " Configuration Item: "
244 "<literal>Dir::Etc::SourceList</literal>.</para></listitem>\n"
253 "<varlistentry><term><filename>/etc/apt/sources.list.d/</filename></term>\n"
254 " <listitem><para>File fragments for locations to fetch packages from.\n"
255 " Configuration Item: "
256 "<literal>Dir::Etc::SourceParts</literal>.</para></listitem>\n"
265 "<!ENTITY file-statelists \"\n"
266 " <varlistentry><term><filename>&statedir;/lists/</filename></term>\n"
267 " <listitem><para>Storage area for state information for each package "
268 "resource specified in\n"
270 " Configuration Item: "
271 "<literal>Dir::State::Lists</literal>.</para></listitem>\n"
280 "<varlistentry><term><filename>&statedir;/lists/partial/</filename></term>\n"
281 " <listitem><para>Storage area for state information in transit.\n"
282 " Configuration Item: <literal>Dir::State::Lists</literal> "
283 "(<filename>partial</filename> will be implicitly "
284 "appended)</para></listitem>\n"
293 "<!ENTITY file-trustedgpg \"\n"
294 " <varlistentry><term><filename>/etc/apt/trusted.gpg</filename></term>\n"
295 " <listitem><para>Keyring of local trusted keys, new keys will be added "
297 " Configuration Item: "
298 "<literal>Dir::Etc::Trusted</literal>.</para></listitem>\n"
307 "<varlistentry><term><filename>/etc/apt/trusted.gpg.d/</filename></term>\n"
308 " <listitem><para>File fragments for the trusted keys, additional "
310 " be stored here (by other packages or the administrator).\n"
311 " Configuration Item "
312 "<literal>Dir::Etc::TrustedParts</literal>.</para></listitem>\n"
321 "<!ENTITY file-extended_states \"\n"
323 "<varlistentry><term><filename>/var/lib/apt/extended_states</filename></term>\n"
324 " <listitem><para>Status list of auto-installed packages.\n"
325 " Configuration Item: <literal>Dir::State::extended_states</literal>.\n"
326 " </para></listitem>\n"
335 "<!-- TRANSLATOR: This is the section header for the following paragraphs - "
337 " to the other headers like NAME and DESCRIPTION and should therefore be "
339 "<!ENTITY translation-title \"TRANSLATION\">\n"
346 "<!-- TRANSLATOR: This is a placeholder. You should write here who has "
348 " to the translation in the past, who is responsible now and maybe "
349 "further information\n"
350 " specially related to your translation. -->\n"
351 "<!ENTITY translation-holder \"\n"
352 " The english translation was done by John Doe "
353 "<email>john@doe.org</email> in 2009,\n"
354 " 2010 and Daniela Acme <email>daniela@acme.us</email> in 2010 together "
356 " Debian Dummy l10n Team "
357 "<email>debian-l10n-dummy@lists.debian.org</email>.\n"
365 "<!-- TRANSLATOR: As a translation is allowed to have 20% of "
366 "untranslated/fuzzy strings\n"
367 " in a shipped manpage newer/modified paragraphs will maybe appear in "
369 " the generated manpage. This sentence is therefore here to tell the "
371 " is not a mistake by the translator - obviously the target is that at "
373 " releases this sentence is not needed. :) -->\n"
374 "<!ENTITY translation-english \"\n"
375 " Note that this translated document may contain untranslated parts.\n"
376 " This is done on purpose, to avoid losing content when the\n"
377 " translation is lagging behind the original content.\n"
384 "<!-- TRANSLATOR: used as in -o=config_string "
385 "e.g. -o=Debug::pkgProblemResolver=1 --> <!ENTITY synopsis-config-string "
392 "<!-- TRANSLATOR: used as in -c=config_file e.g. -c=./apt.conf --> <!ENTITY "
393 "synopsis-config-file \"config_file\">"
399 "<!-- TRANSLATOR: used as in -t=target_release or pkg/target_release "
400 "e.g. -t=squeeze apt/experimental --> <!ENTITY synopsis-target-release "
401 "\"target_release\">"
407 "<!-- TRANSLATOR: used as in -a=architecture e.g. -a=armel --> <!ENTITY "
408 "synopsis-architecture \"architecture\">"
414 "<!-- TRANSLATOR: used as in apt-get install pkg e.g. apt-get install awesome "
415 "--> <!ENTITY synopsis-pkg \"pkg\">"
421 "<!-- TRANSLATOR: used as in pkg=pkg_version_number e.g. apt=0.8.15 --> "
422 "<!ENTITY synopsis-pkg-ver-number \"pkg_version_number\">"
428 "<!-- TRANSLATOR: used as in apt-cache pkgnames prefix e.g. apt-cache "
429 "pkgnames apt --> <!ENTITY synopsis-prefix \"prefix\">"
435 "<!-- TRANSLATOR: used as in apt-cache search regex e.g. apt-cache search "
436 "awesome --> <!ENTITY synopsis-regex \"regex\">"
442 "<!-- TRANSLATOR: used as in apt-cdrom -d=cdrom_mount_point e.g. apt-cdrom "
443 "-d=/media/cdrom --> <!ENTITY synopsis-cdrom-mount \"cdrom_mount_point\">"
449 "<!-- TRANSLATOR: used as in apt-extracttemplates -t=temporary_directory "
450 "e.g. apt-extracttemplates -t=/tmp --> <!ENTITY synopsis-tmp-directory "
451 "\"temporary_directory\">"
457 "<!-- TRANSLATOR: used as in apt-extracttemplates filename --> <!ENTITY "
458 "synopsis-filename \"filename\">"
464 "<!-- TRANSLATOR: used as parameter for apt-ftparchive e.g. apt-ftparchive "
465 "packages path override-file pathprefix --> <!ENTITY synopsis-path \"path\">"
471 "<!-- TRANSLATOR: used as parameter for apt-ftparchive e.g. apt-ftparchive "
472 "packages path override-file pathprefix --> <!ENTITY synopsis-override "
479 "<!-- TRANSLATOR: used as parameter for apt-ftparchive e.g. apt-ftparchive "
480 "packages path override-file pathprefix --> <!ENTITY synopsis-pathprefix "
487 "<!-- TRANSLATOR: used as parameter for apt-ftparchive e.g. apt-ftparchive "
488 "generate section --> <!ENTITY synopsis-section \"section\">"
494 "<!-- TRANSLATOR: used as in apt-key export keyid e.g. apt-key export "
495 "473041FA --> <!ENTITY synopsis-keyid \"keyid\">"
498 #. type: Content of: <refentry><refmeta><manvolnum>
499 #: apt.8.xml:1 apt-get.8.xml:1 apt-cache.8.xml:1 apt-key.8.xml:1
500 #: apt-mark.8.xml:1 apt-secure.8.xml:1 apt-cdrom.8.xml:1 apt-config.8.xml:1
504 #. type: Content of: <refentry><refmeta><refmiscinfo>
505 #: apt.8.xml:1 apt-get.8.xml:1 apt-cache.8.xml:1 apt-key.8.xml:1
506 #: apt-mark.8.xml:1 apt-secure.8.xml:1 apt-cdrom.8.xml:1 apt-config.8.xml:1
507 #: apt.conf.5.xml:1 apt_preferences.5.xml:1 sources.list.5.xml:1
508 #: apt-extracttemplates.1.xml:1 apt-sortpkgs.1.xml:1 apt-ftparchive.1.xml:1
512 #. type: Content of: <refentry><refnamediv><refpurpose>
514 msgid "command-line interface"
517 #. type: Content of: <refentry><refsect1><title>
518 #: apt.8.xml:1 apt-get.8.xml:1 apt-cache.8.xml:1 apt-key.8.xml:1
519 #: apt-mark.8.xml:1 apt-secure.8.xml:1 apt-cdrom.8.xml:1 apt-config.8.xml:1
520 #: apt.conf.5.xml:1 apt_preferences.5.xml:1 sources.list.5.xml:1
521 #: apt-extracttemplates.1.xml:1 apt-sortpkgs.1.xml:1 apt-ftparchive.1.xml:1
525 #. type: Content of: <refentry><refsect1><para>
528 "<command>apt</command> provides a high-level commandline interface for the "
529 "package management system. It is intended as an end user interface and "
530 "enables some options better suited for interactive usage by default compared "
531 "to more specialized APT tools like &apt-get; and &apt-cache;."
534 #. type: Content of: <refentry><refsect1><para>
537 "Much like <command>apt</command> itself, its manpage is intended as an end "
538 "user interface and as such only mentions the most used commands and options "
539 "partly to not duplicate information in multiple places and partly to avoid "
540 "overwhelming readers with a cornucopia of options and details."
543 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
544 #: apt.8.xml:1 apt.8.xml:1 apt.8.xml:1 apt.8.xml:1 apt.8.xml:1
548 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
551 "<option>update</option> is used to download package information from all "
552 "configured sources. Other commands operate on this data to e.g. perform "
553 "package upgrades or search in and display details about all packages "
554 "available for installation."
557 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
560 "<option>upgrade</option> is used to install available upgrades of all "
561 "packages currently installed on the system from the sources configured via "
562 "&sources-list;. New packages will be installed if required to statisfy "
563 "dependencies, but existing packages will never be removed. If an upgrade for "
564 "a package requires the remove of an installed package the upgrade for this "
565 "package isn't performed."
568 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
571 "<literal>full-upgrade</literal> performs the function of upgrade but will "
572 "remove currently installed packages if this is needed to upgrade the system "
576 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
577 #: apt.8.xml:1 apt.8.xml:1 apt-key.8.xml:1
581 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
584 "Performs the requested action on one or more packages specified via ®ex;, "
585 "&glob; or exact match. The requested action can be overridden for specific "
586 "packages by append a plus (+) to the package name to install this package or "
587 "a minus (-) to remove it."
590 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
593 "A specific version of a package can be selected for installation by "
594 "following the package name with an equals (=) and the version of the package "
595 "to select. Alternatively the version from a specific release can be selected "
596 "by following the package name with a forward slash (/) and codename "
597 "(&debian-stable-codename;, &debian-testing-codename;, sid …) or suite name "
598 "(stable, testing, unstable). This will also select versions from this "
599 "release for dependencies of this package if needed to satisfy the request."
602 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
605 "Removing a package removes all packaged data, but leaves usually small "
606 "(modified) user configuration files behind, in case the remove was an "
607 "accident. Just issuing an installation request for the accidentally removed "
608 "package will restore its function as before in that case. On the other hand "
609 "you can get rid of these leftovers by calling <command>purge</command> even "
610 "on already removed packages. Note that this does not affect any data or "
611 "configuration stored in your home directory."
614 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
617 "<literal>autoremove</literal> is used to remove packages that were "
618 "automatically installed to satisfy dependencies for other packages and are "
619 "now no longer needed as dependencies changed or the package(s) needing them "
620 "were removed in the meantime."
623 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
626 "You should check that the list does not include applications you have grown "
627 "to like even though they were once installed just as a dependency of another "
628 "package. You can mark such a package as manually installed by using "
629 "&apt-mark;. Packages which you have installed explicitly via "
630 "<command>install</command> are also never proposed for automatic removal."
633 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
634 #: apt.8.xml:1 apt.8.xml:1
635 msgid "(&apt-cache;)"
638 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
641 "<option>search</option> can be used to search for the given ®ex; term(s) "
642 "in the list of available packages and display matches. This can e.g. be "
643 "useful if you are looking for packages having a specific feature. If you "
644 "are looking for a package including a specific file try &apt-file;."
647 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
650 "Show information about the given package(s) including its dependencies, "
651 "installation and download size, sources the package is available from, the "
652 "description of the packages content and much more. It can e.g. be helpful to "
653 "look at this information before allowing &apt; to remove a package or while "
654 "searching for new packages to install."
657 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
658 #: apt.8.xml:1 apt.8.xml:1
659 msgid "(work-in-progress)"
662 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
665 "<option>list</option> is somewhat similar to <command>dpkg-query "
666 "--list</command> in that it can display a list of packages satisfying "
667 "certain criteria. It supports &glob; patterns for matching package names as "
668 "well as options to list installed (<option>--installed</option>), "
669 "upgradeable (<option>--upgradeable</option>) or all available "
670 "(<option>--all-versions</option>) versions."
673 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
676 "<literal>edit-sources</literal> lets you edit your &sources-list; files in "
677 "your preferred texteditor while also providing basic sanity checks."
680 #. type: Content of: <refentry><refsect1><title>
682 msgid "Script Usage and Differences from Other APT Tools"
685 #. type: Content of: <refentry><refsect1><para>
688 "The &apt; commandline is designed as an end-user tool and it may change "
689 "behavior between versions. While it tries not to break backward "
690 "compatibility this is not guaranteed either if a change seems beneficial for "
694 #. type: Content of: <refentry><refsect1><para>
697 "All features of &apt; are available in dedicated APT tools like &apt-get; "
698 "and &apt-cache; as well. &apt; just changes the default value of some "
699 "options (see &apt-conf; and specifically the Binary scope). So you should "
700 "prefer using these commands (potentially with some additional options "
701 "enabled) in your scripts as they keep backward compatibility as much as "
705 #. type: Content of: <refentry><refsect1><title>
706 #: apt.8.xml:1 apt-get.8.xml:1 apt-cache.8.xml:1 apt-key.8.xml:1
707 #: apt-mark.8.xml:1 apt-secure.8.xml:1 apt-cdrom.8.xml:1 apt-config.8.xml:1
708 #: apt.conf.5.xml:1 apt_preferences.5.xml:1 sources.list.5.xml:1
709 #: apt-extracttemplates.1.xml:1 apt-sortpkgs.1.xml:1 apt-ftparchive.1.xml:1
713 #. type: Content of: <refentry><refsect1><para>
716 "&apt-get;, &apt-cache;, &sources-list;, &apt-conf;, &apt-config;, The APT "
717 "User's guide in &guidesdir;, &apt-preferences;, the APT Howto."
720 #. type: Content of: <refentry><refsect1><title>
721 #: apt.8.xml:1 apt-get.8.xml:1 apt-cache.8.xml:1 apt-mark.8.xml:1
722 #: apt-cdrom.8.xml:1 apt-config.8.xml:1 apt-extracttemplates.1.xml:1
723 #: apt-sortpkgs.1.xml:1 apt-ftparchive.1.xml:1
727 #. type: Content of: <refentry><refsect1><para>
730 "<command>apt</command> returns zero on normal operation, decimal 100 on "
734 #. type: Content of: <refentry><refnamediv><refpurpose>
736 msgid "APT package handling utility -- command-line interface"
739 #. type: Content of: <refentry><refsect1><para>
742 "<command>apt-get</command> is the command-line tool for handling packages, "
743 "and may be considered the user's \"back-end\" to other tools using the APT "
744 "library. Several \"front-end\" interfaces exist, such as &aptitude;, "
745 "&synaptic; and &wajig;."
748 #. type: Content of: <refentry><refsect1><para>
749 #: apt-get.8.xml:1 apt-cache.8.xml:1 apt-cdrom.8.xml:1 apt-config.8.xml:1
750 #: apt-ftparchive.1.xml:1
752 "Unless the <option>-h</option>, or <option>--help</option> option is given, "
753 "one of the commands below must be present."
756 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
759 "<literal>update</literal> is used to resynchronize the package index files "
760 "from their sources. The indexes of available packages are fetched from the "
761 "location(s) specified in <filename>/etc/apt/sources.list</filename>. For "
762 "example, when using a Debian archive, this command retrieves and scans the "
763 "<filename>Packages.gz</filename> files, so that information about new and "
764 "updated packages is available. An <literal>update</literal> should always be "
765 "performed before an <literal>upgrade</literal> or "
766 "<literal>dist-upgrade</literal>. Please be aware that the overall progress "
767 "meter will be incorrect as the size of the package files cannot be known in "
771 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
774 "<literal>upgrade</literal> is used to install the newest versions of all "
775 "packages currently installed on the system from the sources enumerated in "
776 "<filename>/etc/apt/sources.list</filename>. Packages currently installed "
777 "with new versions available are retrieved and upgraded; under no "
778 "circumstances are currently installed packages removed, or packages not "
779 "already installed retrieved and installed. New versions of currently "
780 "installed packages that cannot be upgraded without changing the install "
781 "status of another package will be left at their current version. An "
782 "<literal>update</literal> must be performed first so that "
783 "<command>apt-get</command> knows that new versions of packages are "
787 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
790 "<literal>dist-upgrade</literal> in addition to performing the function of "
791 "<literal>upgrade</literal>, also intelligently handles changing dependencies "
792 "with new versions of packages; <command>apt-get</command> has a \"smart\" "
793 "conflict resolution system, and it will attempt to upgrade the most "
794 "important packages at the expense of less important ones if necessary. The "
795 "<literal>dist-upgrade</literal> command may therefore remove some packages. "
796 "The <filename>/etc/apt/sources.list</filename> file contains a list of "
797 "locations from which to retrieve desired package files. See also "
798 "&apt-preferences; for a mechanism for overriding the general settings for "
799 "individual packages."
802 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
805 "<literal>dselect-upgrade</literal> is used in conjunction with the "
806 "traditional Debian packaging front-end, "
807 "&dselect;. <literal>dselect-upgrade</literal> follows the changes made by "
808 "&dselect; to the <literal>Status</literal> field of available packages, and "
809 "performs the actions necessary to realize that state (for instance, the "
810 "removal of old and the installation of new packages)."
813 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
816 "<literal>install</literal> is followed by one or more packages desired for "
817 "installation or upgrading. Each package is a package name, not a fully "
818 "qualified filename (for instance, in a Debian system, "
819 "<package>apt-utils</package> would be the argument provided, not "
820 "<filename>apt-utils_&apt-product-version;_amd64.deb</filename>). All "
821 "packages required by the package(s) specified for installation will also be "
822 "retrieved and installed. The <filename>/etc/apt/sources.list</filename> "
823 "file is used to locate the desired packages. If a hyphen is appended to the "
824 "package name (with no intervening space), the identified package will be "
825 "removed if it is installed. Similarly a plus sign can be used to designate "
826 "a package to install. These latter features may be used to override "
827 "decisions made by apt-get's conflict resolution system."
830 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
833 "A specific version of a package can be selected for installation by "
834 "following the package name with an equals and the version of the package to "
835 "select. This will cause that version to be located and selected for "
836 "install. Alternatively a specific distribution can be selected by following "
837 "the package name with a slash and the version of the distribution or the "
838 "Archive name (stable, testing, unstable)."
841 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
844 "Both of the version selection mechanisms can downgrade packages and must be "
848 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
851 "This is also the target to use if you want to upgrade one or more "
852 "already-installed packages without upgrading every package you have on your "
853 "system. Unlike the \"upgrade\" target, which installs the newest version of "
854 "all currently installed packages, \"install\" will install the newest "
855 "version of only the package(s) specified. Simply provide the name of the "
856 "package(s) you wish to upgrade, and if a newer version is available, it (and "
857 "its dependencies, as described above) will be downloaded and installed."
860 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
863 "Finally, the &apt-preferences; mechanism allows you to create an alternative "
864 "installation policy for individual packages."
867 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
870 "If no package matches the given expression and the expression contains one "
871 "of '.', '?' or '*' then it is assumed to be a POSIX regular expression, and "
872 "it is applied to all package names in the database. Any matches are then "
873 "installed (or removed). Note that matching is done by substring so 'lo.*' "
874 "matches 'how-lo' and 'lowest'. If this is undesired, anchor the regular "
875 "expression with a '^' or '$' character, or create a more specific regular "
879 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
882 "<literal>remove</literal> is identical to <literal>install</literal> except "
883 "that packages are removed instead of installed. Note that removing a package "
884 "leaves its configuration files on the system. If a plus sign is appended to "
885 "the package name (with no intervening space), the identified package will be "
886 "installed instead of removed."
889 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
892 "<literal>purge</literal> is identical to <literal>remove</literal> except "
893 "that packages are removed and purged (any configuration files are deleted "
897 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
900 "<literal>source</literal> causes <command>apt-get</command> to fetch source "
901 "packages. APT will examine the available packages to decide which source "
902 "package to fetch. It will then find and download into the current directory "
903 "the newest available version of that source package while respecting the "
904 "default release, set with the option "
905 "<literal>APT::Default-Release</literal>, the <option>-t</option> option or "
906 "per package with the <literal>pkg/release</literal> syntax, if possible."
909 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
912 "Source packages are tracked separately from binary packages via "
913 "<literal>deb-src</literal> lines in the &sources-list; file. This means that "
914 "you will need to add such a line for each repository you want to get sources "
915 "from; otherwise you will probably get either the wrong (too old/too new) "
916 "source versions or none at all."
919 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
922 "If the <option>--compile</option> option is specified then the package will "
923 "be compiled to a binary .deb using <command>dpkg-buildpackage</command> for "
924 "the architecture as defined by the <command>--host-architecture</command> "
925 "option. If <option>--download-only</option> is specified then the source "
926 "package will not be unpacked."
929 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
932 "A specific source version can be retrieved by postfixing the source name "
933 "with an equals and then the version to fetch, similar to the mechanism used "
934 "for the package files. This enables exact matching of the source package "
935 "name and version, implicitly enabling the "
936 "<literal>APT::Get::Only-Source</literal> option."
939 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
942 "Note that source packages are not installed and tracked in the "
943 "<command>dpkg</command> database like binary packages; they are simply "
944 "downloaded to the current directory, like source tarballs."
947 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
950 "<literal>build-dep</literal> causes apt-get to install/remove packages in an "
951 "attempt to satisfy the build dependencies for a source package. By default "
952 "the dependencies are satisfied to build the package natively. If desired a "
953 "host-architecture can be specified with the "
954 "<option>--host-architecture</option> option instead."
957 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
960 "<literal>check</literal> is a diagnostic tool; it updates the package cache "
961 "and checks for broken dependencies."
964 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
967 "<literal>download</literal> will download the given binary package into the "
971 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
974 "<literal>clean</literal> clears out the local repository of retrieved "
975 "package files. It removes everything but the lock file from "
976 "<filename>&cachedir;/archives/</filename> and "
977 "<filename>&cachedir;/archives/partial/</filename>."
980 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
981 #: apt-get.8.xml:1 apt-get.8.xml:1
985 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
986 #: apt-get.8.xml:1 apt-get.8.xml:1
987 msgid "alias since 1.1)"
990 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
993 "Like <literal>clean</literal>, <literal>autoclean</literal> clears out the "
994 "local repository of retrieved package files. The difference is that it only "
995 "removes package files that can no longer be downloaded, and are largely "
996 "useless. This allows a cache to be maintained over a long period without it "
997 "growing out of control. The configuration option "
998 "<literal>APT::Clean-Installed</literal> will prevent installed packages from "
999 "being erased if it is set to off."
1002 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1005 "<literal>autoremove</literal> is used to remove packages that were "
1006 "automatically installed to satisfy dependencies for other packages and are "
1007 "now no longer needed."
1010 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1013 "<literal>changelog</literal> tries to download the changelog of a package "
1014 "and displays it through <command>sensible-pager</command>. By default it "
1015 "displays the changelog for the version that is installed. However, you can "
1016 "specify the same options as for the <option>install</option> command."
1019 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1022 "Displays by default a deb822 formatted listing of information about all data "
1023 "files (aka index targets) <command>apt-get update</command> would "
1024 "download. Supports a <option>--format</option> option to modify the output "
1025 "format as well as accepts lines of the default output to filter the records "
1026 "by. The command is mainly used as an interface for external tools working "
1027 "with APT to get information as well as filenames for downloaded files so "
1028 "they can use them as well instead of downloading them again on their "
1029 "own. Detailed documentation is omitted here and can instead be found in the "
1030 "file &apt-acquire-additional-files; shipped by the "
1031 "<package>apt-doc</package> package."
1034 #. type: Content of: <refentry><refsect1><title>
1035 #: apt-get.8.xml:1 apt-cache.8.xml:1 apt-config.8.xml:1
1036 #: apt-extracttemplates.1.xml:1 apt-sortpkgs.1.xml:1 apt-ftparchive.1.xml:1
1040 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1043 "Do not consider recommended packages as a dependency for installing. "
1044 "Configuration Item: <literal>APT::Install-Recommends</literal>."
1047 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1050 "Consider suggested packages as a dependency for installing. Configuration "
1051 "Item: <literal>APT::Install-Suggests</literal>."
1054 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1057 "Download only; package files are only retrieved, not unpacked or installed. "
1058 "Configuration Item: <literal>APT::Get::Download-Only</literal>."
1061 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1064 "Fix; attempt to correct a system with broken dependencies in place. This "
1065 "option, when used with install/remove, can omit any packages to permit APT "
1066 "to deduce a likely solution. If packages are specified, these have to "
1067 "completely correct the problem. The option is sometimes necessary when "
1068 "running APT for the first time; APT itself does not allow broken package "
1069 "dependencies to exist on a system. It is possible that a system's dependency "
1070 "structure can be so corrupt as to require manual intervention (which usually "
1071 "means using <command>dpkg --remove</command> to eliminate some of the "
1072 "offending packages). Use of this option together with <option>-m</option> "
1073 "may produce an error in some situations. Configuration Item: "
1074 "<literal>APT::Get::Fix-Broken</literal>."
1077 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1080 "Ignore missing packages; if packages cannot be retrieved or fail the "
1081 "integrity check after retrieval (corrupted package files), hold back those "
1082 "packages and handle the result. Use of this option together with "
1083 "<option>-f</option> may produce an error in some situations. If a package is "
1084 "selected for installation (particularly if it is mentioned on the command "
1085 "line) and it could not be downloaded then it will be silently held back. "
1086 "Configuration Item: <literal>APT::Get::Fix-Missing</literal>."
1089 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1092 "Disables downloading of packages. This is best used with "
1093 "<option>--ignore-missing</option> to force APT to use only the .debs it has "
1094 "already downloaded. Configuration Item: "
1095 "<literal>APT::Get::Download</literal>."
1098 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1101 "Quiet; produces output suitable for logging, omitting progress indicators. "
1102 "More q's will produce more quiet up to a maximum of 2. You can also use "
1103 "<option>-q=#</option> to set the quiet level, overriding the configuration "
1104 "file. Note that quiet level 2 implies <option>-y</option>; you should never "
1105 "use -qq without a no-action modifier such as -d, --print-uris or -s as APT "
1106 "may decide to do something you did not expect. Configuration Item: "
1107 "<literal>quiet</literal>."
1110 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1113 "No action; perform a simulation of events that would occur based on the "
1114 "current system state but do not actually change the system. Locking will be "
1115 "disabled (<option>Debug::NoLocking</option>) so the system state could "
1116 "change while <command>apt-get</command> is running. Simulations can also be "
1117 "executed by non-root users which might not have read access to all apt "
1118 "configuration distorting the simulation. A notice expressing this warning "
1119 "is also shown by default for non-root users "
1120 "(<option>APT::Get::Show-User-Simulation-Note</option>). Configuration Item: "
1121 "<literal>APT::Get::Simulate</literal>."
1124 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1127 "Simulated runs print out a series of lines, each representing a "
1128 "<command>dpkg</command> operation: configure (<literal>Conf</literal>), "
1129 "remove (<literal>Remv</literal>) or unpack "
1130 "(<literal>Inst</literal>). Square brackets indicate broken packages, and "
1131 "empty square brackets indicate breaks that are of no consequence (rare)."
1134 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1137 "Automatic yes to prompts; assume \"yes\" as answer to all prompts and run "
1138 "non-interactively. If an undesirable situation, such as changing a held "
1139 "package, trying to install a unauthenticated package or removing an "
1140 "essential package occurs then <literal>apt-get</literal> will abort. "
1141 "Configuration Item: <literal>APT::Get::Assume-Yes</literal>."
1144 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1147 "Automatic \"no\" to all prompts. Configuration Item: "
1148 "<literal>APT::Get::Assume-No</literal>."
1151 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1154 "Do not show a list of all packages that are to be upgraded. Configuration "
1155 "Item: <literal>APT::Get::Show-Upgraded</literal>."
1158 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1161 "Show full versions for upgraded and installed packages. Configuration Item: "
1162 "<literal>APT::Get::Show-Versions</literal>."
1165 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1168 "This option controls the architecture packages are built for by "
1169 "<command>apt-get source --compile</command> and how cross-builddependencies "
1170 "are satisfied. By default is it not set which means that the host "
1171 "architecture is the same as the build architecture (which is defined by "
1172 "<literal>APT::Architecture</literal>). Configuration Item: "
1173 "<literal>APT::Get::Host-Architecture</literal>."
1176 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1179 "This option controls the activated build profiles for which a source package "
1180 "is built by <command>apt-get source --compile</command> and how build "
1181 "dependencies are satisfied. By default no build profile is active. More "
1182 "than one build profile can be activated at a time by concatenating them with "
1183 "a comma. Configuration Item: <literal>APT::Build-Profiles</literal>."
1186 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1189 "Compile source packages after downloading them. Configuration Item: "
1190 "<literal>APT::Get::Compile</literal>."
1193 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1196 "Ignore package holds; this causes <command>apt-get</command> to ignore a "
1197 "hold placed on a package. This may be useful in conjunction with "
1198 "<literal>dist-upgrade</literal> to override a large number of undesired "
1199 "holds. Configuration Item: <literal>APT::Ignore-Hold</literal>."
1202 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1205 "Allow installing new packages when used in conjunction with "
1206 "<literal>upgrade</literal>. This is useful if the update of a installed "
1207 "package requires new dependencies to be installed. Instead of holding the "
1208 "package back <literal>upgrade</literal> will upgrade the package and install "
1209 "the new dependencies. Note that <literal>upgrade</literal> with this option "
1210 "will never remove packages, only allow adding new ones. Configuration Item: "
1211 "<literal>APT::Get::Upgrade-Allow-New</literal>."
1214 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1217 "Do not upgrade packages; when used in conjunction with "
1218 "<literal>install</literal>, <literal>no-upgrade</literal> will prevent "
1219 "packages on the command line from being upgraded if they are already "
1220 "installed. Configuration Item: <literal>APT::Get::Upgrade</literal>."
1223 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1226 "Do not install new packages; when used in conjunction with "
1227 "<literal>install</literal>, <literal>only-upgrade</literal> will install "
1228 "upgrades for already installed packages only and ignore requests to install "
1229 "new packages. Configuration Item: "
1230 "<literal>APT::Get::Only-Upgrade</literal>."
1233 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1236 "This is a dangerous option that will cause apt to continue without prompting "
1237 "if it is doing downgrades. It should not be used except in very special "
1238 "situations. Using it can potentially destroy your system! Configuration "
1239 "Item: <literal>APT::Get::allow-downgrades</literal>. Introduced in APT 1.1."
1242 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1245 "Force yes; this is a dangerous option that will cause apt to continue "
1246 "without prompting if it is removing essentials. It should not be used except "
1247 "in very special situations. Using it can potentially destroy your system! "
1248 "Configuration Item: "
1249 "<literal>APT::Get::allow-remove-essential</literal>. Introduced in APT 1.1."
1252 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1255 "Force yes; this is a dangerous option that will cause apt to continue "
1256 "without prompting if it is changing held packages. It should not be used "
1257 "except in very special situations. Using it can potentially destroy your "
1258 "system! Configuration Item: "
1259 "<literal>APT::Get::allow-change-held-packages</literal>. Introduced in APT "
1263 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1266 "Force yes; this is a dangerous option that will cause apt to continue "
1267 "without prompting if it is doing something potentially harmful. It should "
1268 "not be used except in very special situations. Using "
1269 "<literal>force-yes</literal> can potentially destroy your system! "
1270 "Configuration Item: <literal>APT::Get::force-yes</literal>. This is "
1271 "deprecated and replaced by <option>--allow-downgrades</option>, "
1272 "<option>--allow-remove-essential</option>, "
1273 "<option>--allow-change-held-packages</option> in 1.1."
1276 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1279 "Instead of fetching the files to install their URIs are printed. Each URI "
1280 "will have the path, the destination file name, the size and the expected MD5 "
1281 "hash. Note that the file name to write to will not always match the file "
1282 "name on the remote site! This also works with the <literal>source</literal> "
1283 "and <literal>update</literal> commands. When used with the "
1284 "<literal>update</literal> command the MD5 and size are not included, and it "
1285 "is up to the user to decompress any compressed files. Configuration Item: "
1286 "<literal>APT::Get::Print-URIs</literal>."
1289 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1292 "Use purge instead of remove for anything that would be removed. An asterisk "
1293 "(\"*\") will be displayed next to packages which are scheduled to be "
1294 "purged. <option>remove --purge</option> is equivalent to the "
1295 "<option>purge</option> command. Configuration Item: "
1296 "<literal>APT::Get::Purge</literal>."
1299 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1302 "Re-install packages that are already installed and at the newest version. "
1303 "Configuration Item: <literal>APT::Get::ReInstall</literal>."
1306 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1309 "This option is on by default; use <literal>--no-list-cleanup</literal> to "
1310 "turn it off. When it is on, <command>apt-get</command> will automatically "
1311 "manage the contents of <filename>&statedir;/lists</filename> to ensure that "
1312 "obsolete files are erased. The only reason to turn it off is if you "
1313 "frequently change your sources list. Configuration Item: "
1314 "<literal>APT::Get::List-Cleanup</literal>."
1317 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1320 "This option controls the default input to the policy engine; it creates a "
1321 "default pin at priority 990 using the specified release string. This "
1322 "overrides the general settings in "
1323 "<filename>/etc/apt/preferences</filename>. Specifically pinned packages are "
1324 "not affected by the value of this option. In short, this option lets you "
1325 "have simple control over which distribution packages will be retrieved "
1326 "from. Some common examples might be <option>-t '2.1*'</option>, <option>-t "
1327 "unstable</option> or <option>-t sid</option>. Configuration Item: "
1328 "<literal>APT::Default-Release</literal>; see also the &apt-preferences; "
1332 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1335 "Only perform operations that are 'trivial'. Logically this can be considered "
1336 "related to <option>--assume-yes</option>; where "
1337 "<option>--assume-yes</option> will answer yes to any prompt, "
1338 "<option>--trivial-only</option> will answer no. Configuration Item: "
1339 "<literal>APT::Get::Trivial-Only</literal>."
1342 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1345 "If any packages are to be removed apt-get immediately aborts without "
1346 "prompting. Configuration Item: <literal>APT::Get::Remove</literal>."
1349 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1352 "If the command is either <literal>install</literal> or "
1353 "<literal>remove</literal>, then this option acts like running the "
1354 "<literal>autoremove</literal> command, removing unused dependency "
1355 "packages. Configuration Item: <literal>APT::Get::AutomaticRemove</literal>."
1358 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1361 "Only has meaning for the <literal>source</literal> and "
1362 "<literal>build-dep</literal> commands. Indicates that the given source "
1363 "names are not to be mapped through the binary table. This means that if "
1364 "this option is specified, these commands will only accept source package "
1365 "names as arguments, rather than accepting binary package names and looking "
1366 "up the corresponding source package. Configuration Item: "
1367 "<literal>APT::Get::Only-Source</literal>."
1370 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1373 "Download only the diff, dsc, or tar file of a source archive. Configuration "
1374 "Item: <literal>APT::Get::Diff-Only</literal>, "
1375 "<literal>APT::Get::Dsc-Only</literal>, and "
1376 "<literal>APT::Get::Tar-Only</literal>."
1379 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1382 "Only process architecture-dependent build-dependencies. Configuration Item: "
1383 "<literal>APT::Get::Arch-Only</literal>."
1386 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1389 "Ignore if packages can't be authenticated and don't prompt about it. This "
1390 "can be useful while working with local repositories, but is a huge security "
1391 "risk if data authenticity isn't ensured in another way by the user itself. "
1392 "The usage of the <option>Trusted</option> option for &sources-list; entries "
1393 "should usually be preferred over this global override. Configuration Item: "
1394 "<literal>APT::Get::AllowUnauthenticated</literal>."
1397 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1400 "Forbid the update command to acquire unverifiable data from configured "
1401 "sources. APT will fail at the update command for repositories without valid "
1402 "cryptographically signatures. See also &apt-secure; for details on the "
1403 "concept and the implications. Configuration Item: "
1404 "<literal>Acquire::AllowInsecureRepositories</literal>."
1407 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1410 "Show user friendly progress information in the terminal window when packages "
1411 "are installed, upgraded or removed. For a machine parsable version of this "
1412 "data see README.progress-reporting in the apt doc directory. Configuration "
1413 "Item: <literal>Dpkg::Progress</literal> and "
1414 "<literal>Dpkg::Progress-Fancy</literal>."
1417 #. type: Content of: <refentry><refsect1><title>
1418 #: apt-get.8.xml:1 apt-cache.8.xml:1 apt-key.8.xml:1 apt-mark.8.xml:1
1419 #: apt.conf.5.xml:1 apt_preferences.5.xml:1
1423 #. type: Content of: <refentry><refsect1><para>
1426 "&apt-cache;, &apt-cdrom;, &dpkg;, &sources-list;, &apt-conf;, &apt-config;, "
1427 "&apt-secure;, The APT User's guide in &guidesdir;, &apt-preferences;, the "
1431 #. type: Content of: <refentry><refsect1><para>
1434 "<command>apt-get</command> returns zero on normal operation, decimal 100 on "
1438 #. type: Content of: <refentry><refnamediv><refpurpose>
1439 #: apt-cache.8.xml:1
1440 msgid "query the APT cache"
1443 #. type: Content of: <refentry><refsect1><para>
1444 #: apt-cache.8.xml:1
1446 "<command>apt-cache</command> performs a variety of operations on APT's "
1447 "package cache. <command>apt-cache</command> does not manipulate the state of "
1448 "the system but does provide operations to search and generate interesting "
1449 "output from the package metadata. The metadata is acquired and updated via "
1450 "the 'update' command of e.g. <command>apt-get</command>, so that it can be "
1451 "outdated if the last update is too long ago, but in exchange "
1452 "<command>apt-cache</command> works independently of the availability of the "
1453 "configured sources (e.g. offline)."
1456 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1457 #: apt-cache.8.xml:1
1459 "<literal>gencaches</literal> creates APT's package cache. This is done "
1460 "implicitly by all commands needing this cache if it is missing or outdated."
1463 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term><option><replaceable>
1464 #: apt-cache.8.xml:1 apt-cache.8.xml:1 apt-cache.8.xml:1 apt-cache.8.xml:1
1465 #: apt-cache.8.xml:1 apt-cache.8.xml:1 apt-cache.8.xml:1 apt-cache.8.xml:1
1466 msgid "&synopsis-pkg;"
1469 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1470 #: apt-cache.8.xml:1
1472 "<literal>showpkg</literal> displays information about the packages listed on "
1473 "the command line. Remaining arguments are package names. The available "
1474 "versions and reverse dependencies of each package listed are listed, as well "
1475 "as forward dependencies for each version. Forward (normal) dependencies are "
1476 "those packages upon which the package in question depends; reverse "
1477 "dependencies are those packages that depend upon the package in "
1478 "question. Thus, forward dependencies must be satisfied for a package, but "
1479 "reverse dependencies need not be. For instance, <command>apt-cache showpkg "
1480 "libreadline2</command> would produce output similar to the following:"
1483 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><informalexample><programlisting>
1484 #: apt-cache.8.xml:1
1487 "Package: libreadline2\n"
1488 "Versions: 2.1-12(/var/state/apt/lists/foo_Packages),\n"
1489 "Reverse Depends: \n"
1490 " libreadlineg2,libreadline2\n"
1491 " libreadline2-altdev,libreadline2\n"
1493 "2.1-12 - libc5 (2 5.4.0-0) ncurses3.0 (0 (null))\n"
1496 "Reverse Provides: \n"
1499 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1500 #: apt-cache.8.xml:1
1502 "Thus it may be seen that libreadline2, version 2.1-12, depends on libc5 and "
1503 "ncurses3.0 which must be installed for libreadline2 to work. In turn, "
1504 "libreadlineg2 and libreadline2-altdev depend on libreadline2. If "
1505 "libreadline2 is installed, libc5 and ncurses3.0 (and ldso) must also be "
1506 "installed; libreadlineg2 and libreadline2-altdev do not have to be "
1507 "installed. For the specific meaning of the remainder of the output it is "
1508 "best to consult the apt source code."
1511 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1512 #: apt-cache.8.xml:1
1514 "<literal>stats</literal> displays some statistics about the cache. No "
1515 "further arguments are expected. Statistics reported are:"
1518 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1519 #: apt-cache.8.xml:1
1521 "<literal>Total package names</literal> is the number of package names found "
1525 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1526 #: apt-cache.8.xml:1
1528 "<literal>Normal packages</literal> is the number of regular, ordinary "
1529 "package names; these are packages that bear a one-to-one correspondence "
1530 "between their names and the names used by other packages for them in "
1531 "dependencies. The majority of packages fall into this category."
1534 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1535 #: apt-cache.8.xml:1
1537 "<literal>Pure virtual packages</literal> is the number of packages that "
1538 "exist only as a virtual package name; that is, packages only \"provide\" the "
1539 "virtual package name, and no package actually uses the name. For instance, "
1540 "\"mail-transport-agent\" in the Debian system is a pure virtual package; "
1541 "several packages provide \"mail-transport-agent\", but there is no package "
1542 "named \"mail-transport-agent\"."
1545 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1546 #: apt-cache.8.xml:1
1548 "<literal>Single virtual packages</literal> is the number of packages with "
1549 "only one package providing a particular virtual package. For example, in the "
1550 "Debian system, \"X11-text-viewer\" is a virtual package, but only one "
1551 "package, xless, provides \"X11-text-viewer\"."
1554 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1555 #: apt-cache.8.xml:1
1557 "<literal>Mixed virtual packages</literal> is the number of packages that "
1558 "either provide a particular virtual package or have the virtual package name "
1559 "as the package name. For instance, in the Debian system, \"debconf\" is both "
1560 "an actual package, and provided by the debconf-tiny package."
1563 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1564 #: apt-cache.8.xml:1
1566 "<literal>Missing</literal> is the number of package names that were "
1567 "referenced in a dependency but were not provided by any package. Missing "
1568 "packages may be an evidence if a full distribution is not accessed, or if a "
1569 "package (real or virtual) has been dropped from the distribution. Usually "
1570 "they are referenced from Conflicts or Breaks statements."
1573 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1574 #: apt-cache.8.xml:1
1576 "<literal>Total distinct</literal> versions is the number of package versions "
1577 "found in the cache. If more than one distribution is being accessed (for "
1578 "instance, \"stable\" and \"unstable\"), this value can be considerably "
1579 "larger than the number of total package names."
1582 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><itemizedlist><listitem><para>
1583 #: apt-cache.8.xml:1
1585 "<literal>Total dependencies</literal> is the number of dependency "
1586 "relationships claimed by all of the packages in the cache."
1589 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1590 #: apt-cache.8.xml:1
1592 "<literal>showsrc</literal> displays all the source package records that "
1593 "match the given package names. All versions are shown, as well as all "
1594 "records that declare the name to be a binary package. Use "
1595 "<option>--only-source</option> to display only source package names."
1598 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1599 #: apt-cache.8.xml:1
1601 "<literal>dump</literal> shows a short listing of every package in the "
1602 "cache. It is primarily for debugging."
1605 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1606 #: apt-cache.8.xml:1
1608 "<literal>dumpavail</literal> prints out an available list to stdout. This is "
1609 "suitable for use with &dpkg; and is used by the &dselect; method."
1612 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1613 #: apt-cache.8.xml:1
1615 "<literal>unmet</literal> displays a summary of all unmet dependencies in the "
1619 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1620 #: apt-cache.8.xml:1
1622 "<literal>show</literal> performs a function similar to <command>dpkg "
1623 "--print-avail</command>; it displays the package records for the named "
1627 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term><option><replaceable>
1628 #: apt-cache.8.xml:1
1629 msgid "&synopsis-regex;"
1632 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1633 #: apt-cache.8.xml:1
1635 "<literal>search</literal> performs a full text search on all available "
1636 "package lists for the POSIX regex pattern given, see ®ex;. It searches "
1637 "the package names and the descriptions for an occurrence of the regular "
1638 "expression and prints out the package name and the short description, "
1639 "including virtual package names. If <option>--full</option> is given then "
1640 "output identical to <literal>show</literal> is produced for each matched "
1641 "package, and if <option>--names-only</option> is given then the long "
1642 "description is not searched, only the package name and provided packages "
1646 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1647 #: apt-cache.8.xml:1
1649 "Separate arguments can be used to specify multiple search patterns that are "
1653 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1654 #: apt-cache.8.xml:1
1656 "<literal>depends</literal> shows a listing of each dependency a package has "
1657 "and all the possible other packages that can fulfill that dependency."
1660 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1661 #: apt-cache.8.xml:1
1663 "<literal>rdepends</literal> shows a listing of each reverse dependency a "
1667 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
1668 #: apt-cache.8.xml:1
1669 msgid "<optional><replaceable>&synopsis-prefix;</replaceable></optional>"
1672 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1673 #: apt-cache.8.xml:1
1675 "This command prints the name of each package APT knows. The optional "
1676 "argument is a prefix match to filter the name list. The output is suitable "
1677 "for use in a shell tab complete function and the output is generated "
1678 "extremely quickly. This command is best used with the "
1679 "<option>--generate</option> option."
1682 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1683 #: apt-cache.8.xml:1
1685 "Note that a package which APT knows of is not necessarily available to "
1686 "download, installable or installed, e.g. virtual packages are also listed in "
1687 "the generated list."
1690 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1691 #: apt-cache.8.xml:1
1693 "<literal>dotty</literal> takes a list of packages on the command line and "
1694 "generates output suitable for use by dotty from the <ulink "
1695 "url=\"http://www.research.att.com/sw/tools/graphviz/\">GraphViz</ulink> "
1696 "package. The result will be a set of nodes and edges representing the "
1697 "relationships between the packages. By default the given packages will trace "
1698 "out all dependent packages; this can produce a very large graph. To limit "
1699 "the output to only the packages listed on the command line, set the "
1700 "<literal>APT::Cache::GivenOnly</literal> option."
1703 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1704 #: apt-cache.8.xml:1
1706 "The resulting nodes will have several shapes; normal packages are boxes, "
1707 "pure virtual packages are triangles, mixed virtual packages are diamonds, "
1708 "missing packages are hexagons. Orange boxes mean recursion was stopped (leaf "
1709 "packages), blue lines are pre-depends, green lines are conflicts."
1712 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1713 #: apt-cache.8.xml:1
1714 msgid "Caution, dotty cannot graph larger sets of packages."
1717 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1718 #: apt-cache.8.xml:1
1720 "The same as <literal>dotty</literal>, only for xvcg from the <ulink "
1721 "url=\"http://rw4.cs.uni-sb.de/users/sander/html/gsvcg1.html\">VCG "
1725 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
1726 #: apt-cache.8.xml:1
1727 msgid "<optional><replaceable>&synopsis-pkg;</replaceable>…</optional>"
1730 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1731 #: apt-cache.8.xml:1
1733 "<literal>policy</literal> is meant to help debug issues relating to the "
1734 "preferences file. With no arguments it will print out the priorities of each "
1735 "source. Otherwise it prints out detailed information about the priority "
1736 "selection of the named package."
1739 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1740 #: apt-cache.8.xml:1
1742 "<literal>apt-cache</literal>'s <literal>madison</literal> command attempts "
1743 "to mimic the output format and a subset of the functionality of the Debian "
1744 "archive management tool, <literal>madison</literal>. It displays available "
1745 "versions of a package in a tabular format. Unlike the original "
1746 "<literal>madison</literal>, it can only display information for the "
1747 "architecture for which APT has retrieved package lists "
1748 "(<literal>APT::Architecture</literal>)."
1751 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1752 #: apt-cache.8.xml:1
1754 "Select the file to store the package cache. The package cache is the primary "
1755 "cache used by all operations. Configuration Item: "
1756 "<literal>Dir::Cache::pkgcache</literal>."
1759 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1760 #: apt-cache.8.xml:1
1762 "Select the file to store the source cache. The source is used only by "
1763 "<literal>gencaches</literal> and it stores a parsed version of the package "
1764 "information from remote sources. When building the package cache the source "
1765 "cache is used to avoid reparsing all of the package files. Configuration "
1766 "Item: <literal>Dir::Cache::srcpkgcache</literal>."
1769 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1770 #: apt-cache.8.xml:1
1772 "Quiet; produces output suitable for logging, omitting progress indicators. "
1773 "More q's will produce more quietness up to a maximum of 2. You can also use "
1774 "<option>-q=#</option> to set the quietness level, overriding the "
1775 "configuration file. Configuration Item: <literal>quiet</literal>."
1778 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1779 #: apt-cache.8.xml:1
1781 "Print only important dependencies; for use with <literal>unmet</literal> and "
1782 "<literal>depends</literal>. Causes only Depends and Pre-Depends relations to "
1783 "be printed. Configuration Item: <literal>APT::Cache::Important</literal>."
1786 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1787 #: apt-cache.8.xml:1
1789 "Per default the <command>depends</command> and <command>rdepends</command> "
1790 "print all dependencies. This can be tweaked with these flags which will omit "
1791 "the specified dependency type. Configuration Item: "
1792 "<literal>APT::Cache::Show<replaceable>DependencyType</replaceable></literal> "
1793 "e.g. <literal>APT::Cache::ShowRecommends</literal>."
1796 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1797 #: apt-cache.8.xml:1
1799 "Per default <command>depends</command> and <command>rdepends</command> print "
1800 "only dependencies explicitly expressed in the metadata. With this flag it "
1801 "will also show dependencies implicitly added based on the encountered data. "
1802 "A <literal>Conflicts: foo</literal> e.g. expresses implicitly that this "
1803 "package also conflicts with the package foo from any other architecture. "
1804 "Configuration Item: <literal>APT::Cache::ShowImplicit</literal>."
1807 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1808 #: apt-cache.8.xml:1
1810 "Print full package records when searching. Configuration Item: "
1811 "<literal>APT::Cache::ShowFull</literal>."
1814 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1815 #: apt-cache.8.xml:1
1817 "Print full records for all available versions. This is the default; to turn "
1818 "it off, use <option>--no-all-versions</option>. If "
1819 "<option>--no-all-versions</option> is specified, only the candidate version "
1820 "will be displayed (the one which would be selected for installation). This "
1821 "option is only applicable to the <literal>show</literal> command. "
1822 "Configuration Item: <literal>APT::Cache::AllVersions</literal>."
1825 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1826 #: apt-cache.8.xml:1
1828 "Perform automatic package cache regeneration, rather than use the cache as "
1829 "it is. This is the default; to turn it off, use "
1830 "<option>--no-generate</option>. Configuration Item: "
1831 "<literal>APT::Cache::Generate</literal>."
1834 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1835 #: apt-cache.8.xml:1
1837 "Only search on the package and provided package names, not the long "
1838 "descriptions. Configuration Item: <literal>APT::Cache::NamesOnly</literal>."
1841 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1842 #: apt-cache.8.xml:1
1844 "Make <literal>pkgnames</literal> print all names, including virtual packages "
1845 "and missing dependencies. Configuration Item: "
1846 "<literal>APT::Cache::AllNames</literal>."
1849 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1850 #: apt-cache.8.xml:1
1852 "Make <literal>depends</literal> and <literal>rdepends</literal> recursive so "
1853 "that all packages mentioned are printed once. Configuration Item: "
1854 "<literal>APT::Cache::RecurseDepends</literal>."
1857 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1858 #: apt-cache.8.xml:1
1860 "Limit the output of <literal>depends</literal> and "
1861 "<literal>rdepends</literal> to packages which are currently installed. "
1862 "Configuration Item: <literal>APT::Cache::Installed</literal>."
1865 #. type: Content of: <refentry><refsect1><para>
1866 #: apt-cache.8.xml:1
1867 msgid "&apt-conf;, &sources-list;, &apt-get;"
1870 #. type: Content of: <refentry><refsect1><para>
1871 #: apt-cache.8.xml:1
1873 "<command>apt-cache</command> returns zero on normal operation, decimal 100 "
1877 #. type: Content of: <refentry><refnamediv><refpurpose>
1879 msgid "APT key management utility"
1882 #. type: Content of: <refentry><refsect1><para>
1885 "<command>apt-key</command> is used to manage the list of keys used by apt to "
1886 "authenticate packages. Packages which have been authenticated using these "
1887 "keys will be considered trusted."
1890 #. type: Content of: <refentry><refsect1><para>
1893 "Note that if usage of <command>apt-key</command> is desired the additional "
1894 "installation of the GNU Privacy Guard suite (packaged in "
1895 "<package>gnupg</package>) is required. For this reason alone the programatic "
1896 "usage (especially in package maintainerscripts!) is strongly discouraged. "
1897 "Further more the output format of all commands is undefined and can and does "
1898 "change whenever the underlying commands change. <command>apt-key</command> "
1899 "will try to detect such usage and generates warnings on stderr in these "
1903 #. type: Content of: <refentry><refsect1><title>
1908 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1911 "Add a new key to the list of trusted keys. The key is read from the "
1912 "filename given with the parameter &synopsis-param-filename; or if the "
1913 "filename is <literal>-</literal> from standard input."
1916 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1919 "It is critical that keys added manually via <command>apt-key</command> are "
1920 "verified to belong to the owner of the repositories they claim to be for "
1921 "otherwise the &apt-secure; infrastructure is completely undermined."
1924 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1927 "Instead of using this command a keyring can be placed directly in the "
1928 "<filename>/etc/apt/trusted.gpg.d/</filename> directory with a descriptive "
1929 "name (same rules for filename apply as for &apt-conf; files) and "
1930 "\"<literal>gpg</literal>\" as file extension."
1933 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1935 msgid "Remove a key from the list of trusted keys."
1938 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1940 msgid "Output the key &synopsis-param-keyid; to standard output."
1943 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1945 msgid "Output all trusted keys to standard output."
1948 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1950 msgid "List trusted keys with fingerprints."
1953 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1956 "Pass advanced options to gpg. With <command>adv --recv-key</command> you can "
1957 "e.g. download key from keyservers directly into the the trusted set of "
1958 "keys. Note that there are <emphasis>no</emphasis> checks performed, so it is "
1959 "easy to completely undermine the &apt-secure; infrastructure if used without "
1963 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
1965 msgid "(deprecated)"
1968 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1971 "Update the local keyring with the archive keyring and remove from the local "
1972 "keyring the archive keys which are no longer valid. The archive keyring is "
1973 "shipped in the <literal>archive-keyring</literal> package of your "
1974 "distribution, e.g. the &keyring-package; package in &keyring-distro;."
1977 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1980 "Note that a distribution does not need to and in fact should not use this "
1981 "command any longer and instead ship keyring files in the "
1982 "<filename>/etc/apt/trusted.gpg</filename> directory directly as this avoids "
1983 "a dependency on <package>gnupg</package> and it is easier to manage keys by "
1984 "simply adding and removing files for maintainers and users alike."
1987 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
1990 "Perform an update working similarly to the <command>update</command> command "
1991 "above, but get the archive keyring from a URI instead and validate it "
1992 "against a master key. This requires an installed &wget; and an APT build "
1993 "configured to have a server to fetch from and a master keyring to validate. "
1994 "APT in Debian does not support this command, relying on "
1995 "<command>update</command> instead, but Ubuntu's APT does."
1998 #. type: Content of: <refentry><refsect1><title>
1999 #: apt-key.8.xml:1 apt-mark.8.xml:1 apt-mark.8.xml:1 apt-cdrom.8.xml:1
2003 #. type: Content of: <refentry><refsect1><para>
2006 "Note that options need to be defined before the commands described in the "
2010 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2013 "With this option it is possible to specify a particular keyring file the "
2014 "command should operate on. The default is that a command is executed on the "
2015 "<filename>trusted.gpg</filename> file as well as on all parts in the "
2016 "<filename>trusted.gpg.d</filename> directory, though "
2017 "<filename>trusted.gpg</filename> is the primary keyring which means that "
2018 "e.g. new keys are added to this one."
2021 #. type: Content of: <refentry><refsect1><para>
2023 msgid "&apt-get;, &apt-secure;"
2026 #. type: Content of: <refentry><refnamediv><refpurpose>
2028 msgid "show, set and unset various settings for a package"
2031 #. type: Content of: <refentry><refsect1><para>
2034 "<command>apt-mark</command> can be used as a unified front-end to set "
2035 "various settings for a package, such as marking a package as being "
2036 "automatically/manually installed or changing <command>dpkg</command> "
2037 "selections such as hold, install, deinstall and purge which are respected "
2038 "e.g. by <command>apt-get dselect-upgrade</command> or "
2039 "<command>aptitude</command>."
2042 #. type: Content of: <refentry><refsect1><title>
2044 msgid "Automatically and Manually Installed Packages"
2047 #. type: Content of: <refentry><refsect1><para>
2050 "When you request that a package is installed, and as a result other packages "
2051 "are installed to satisfy its dependencies, the dependencies are marked as "
2052 "being automatically installed, while the package you installed explicitly is "
2053 "marked as manually installed. Once an automatically installed package is no "
2054 "longer depended on by any manually installed package it is considered no "
2055 "longer needed and e.g. <command>apt-get</command> or "
2056 "<command>aptitude</command> will at least suggest removing them."
2059 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2062 "<literal>auto</literal> is used to mark a package as being automatically "
2063 "installed, which will cause the package to be removed when no more manually "
2064 "installed packages depend on this package."
2067 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2070 "<literal>manual</literal> is used to mark a package as being manually "
2071 "installed, which will prevent the package from being automatically removed "
2072 "if no other packages depend on it."
2075 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2078 "<literal>showauto</literal> is used to print a list of automatically "
2079 "installed packages with each package on a new line. All automatically "
2080 "installed packages will be listed if no package is given. If packages are "
2081 "given only those which are automatically installed will be shown."
2084 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2087 "<literal>showmanual</literal> can be used in the same way as "
2088 "<literal>showauto</literal> except that it will print a list of manually "
2089 "installed packages instead."
2092 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
2095 "Read/Write package stats from the filename given with the parameter "
2096 "&synopsis-param-filename; instead of from the default location, which is "
2097 "<filename>extended_status</filename> in the directory defined by the "
2098 "Configuration Item: <literal>Dir::State</literal>."
2101 #. type: Content of: <refentry><refsect1><title>
2103 msgid "Prevent Changes for a Package"
2106 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2109 "<literal>hold</literal> is used to mark a package as held back, which will "
2110 "prevent the package from being automatically installed, upgraded or removed."
2113 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2116 "<literal>unhold</literal> is used to cancel a previously set hold on a "
2117 "package to allow all actions again."
2120 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2123 "<literal>showhold</literal> is used to print a list of packages on hold in "
2124 "the same way as for the other show commands."
2127 #. type: Content of: <refentry><refsect1><title>
2129 msgid "Schedule Packages for Install, Remove and Purge"
2132 #. type: Content of: <refentry><refsect1><para>
2135 "Some front-ends like <command>apt-get dselect-upgrade</command> can be used "
2136 "to apply previously scheduled changes to the install state of packages. Such "
2137 "changes can be scheduled with the <option>install</option>, "
2138 "<option>remove</option> (also known as <option>deinstall</option>) and "
2139 "<option>purge</option> commands. Packages with a specific selection can be "
2140 "displayed with <option>showinstall</option>, <option>showremove</option> and "
2141 "<option>showpurge</option> respectively. More information about these so "
2142 "called dpkg selections can be found in &dpkg;."
2145 #. type: Content of: <refentry><refsect1><para>
2148 "<command>apt-mark</command> returns zero on normal operation, non-zero on "
2152 #. type: Content of: <refentry><refnamediv><refpurpose>
2153 #: apt-secure.8.xml:1
2154 msgid "Archive authentication support for APT"
2157 #. type: Content of: <refentry><refsect1><para>
2158 #: apt-secure.8.xml:1
2160 "Starting with version 0.6, <command>APT</command> contains code that does "
2161 "signature checking of the Release file for all repositories. This ensures "
2162 "that data like packages in the archive can't be modified by people who have "
2163 "no access to the Release file signing key. Starting with version 1.1 "
2164 "<command>APT</command> requires repositories to provide recent "
2165 "authentication information for unimpeded usage of the repository."
2168 #. type: Content of: <refentry><refsect1><para>
2169 #: apt-secure.8.xml:1
2171 "If an archive has an unsigned Release file or no Release file at all current "
2172 "APT versions will refuse to download data from them by default in "
2173 "<command>update</command> operations and even if forced to download "
2174 "front-ends like &apt-get; will require explicit confirmation if an "
2175 "installation request includes a package from such an unauthenticated "
2179 #. type: Content of: <refentry><refsect1><para>
2180 #: apt-secure.8.xml:1
2182 "As a temporary exception &apt-get; (not &apt;!) raises warnings only if it "
2183 "encounters unauthenticated archives to give a slightly longer grace period "
2184 "on this backward compatibility effecting change. This exception will be "
2185 "removed in future releases and you can opt-out of this grace period by "
2186 "setting the configuration option "
2187 "<option>Binary::apt-get::Acquire::AllowInsecureRepositories</option> to "
2188 "<literal>false</literal> or "
2189 "<option>--no-allow-insecure-repositories</option> on the command line."
2192 #. type: Content of: <refentry><refsect1><para>
2193 #: apt-secure.8.xml:1
2195 "You can force all APT clients to raise only warnings by setting the "
2196 "configuration option <option>Acquire::AllowInsecureRepositories</option> to "
2197 "<literal>true</literal>. Individual repositories can also be allowed to be "
2198 "insecure via the &sources-list; option "
2199 "<literal>allow-insecure=yes</literal>. Note that insecure repositories are "
2200 "strongly discouraged and all options to force apt to continue supporting "
2201 "them will eventually be removed. Users also have the "
2202 "<option>Trusted</option> option available to disable even the warnings, but "
2203 "be sure to understand the implications as detailed in &sources-list;."
2206 #. type: Content of: <refentry><refsect1><para>
2207 #: apt-secure.8.xml:1
2209 "A repository which previously was authentication but would loose this state "
2210 "in an <command>update</command> operation raises an error in all APT clients "
2211 "irrespective of the option to allow or forbid usage of insecure "
2212 "repositories. The error can be overcome by additionally setting "
2213 "<option>Acquire::AllowDowngradeToInsecureRepositories</option> to "
2214 "<literal>true</literal> or for Individual repositories with the "
2215 "&sources-list; option <literal>allow-downgrade-to-insecure=yes</literal>."
2218 #. type: Content of: <refentry><refsect1><para>
2219 #: apt-secure.8.xml:1
2221 "Note: All APT-based package management front-ends like &apt-get;, &aptitude; "
2222 "and &synaptic; support this authentication feature, so this manpage uses "
2223 "<literal>APT</literal> to refer to them all for simplicity only."
2226 #. type: Content of: <refentry><refsect1><title>
2227 #: apt-secure.8.xml:1
2228 msgid "Trusted Repositories"
2231 #. type: Content of: <refentry><refsect1><para>
2232 #: apt-secure.8.xml:1
2234 "The chain of trust from an APT archive to the end user is made up of several "
2235 "steps. <command>apt-secure</command> is the last step in this chain; "
2236 "trusting an archive does not mean that you trust its packages not to contain "
2237 "malicious code, but means that you trust the archive maintainer. It's the "
2238 "archive maintainer's responsibility to ensure that the archive's integrity "
2242 #. type: Content of: <refentry><refsect1><para>
2243 #: apt-secure.8.xml:1
2245 "apt-secure does not review signatures at a package level. If you require "
2246 "tools to do this you should look at <command>debsig-verify</command> and "
2247 "<command>debsign</command> (provided in the debsig-verify and devscripts "
2248 "packages respectively)."
2251 #. type: Content of: <refentry><refsect1><para>
2252 #: apt-secure.8.xml:1
2254 "The chain of trust in Debian starts (e.g.) when a maintainer uploads a new "
2255 "package or a new version of a package to the Debian archive. In order to "
2256 "become effective, this upload needs to be signed by a key contained in one "
2257 "of the Debian package maintainer keyrings (available in the debian-keyring "
2258 "package). Maintainers' keys are signed by other maintainers following "
2259 "pre-established procedures to ensure the identity of the key holder. Similar "
2260 "procedures exist in all Debian-based distributions."
2263 #. type: Content of: <refentry><refsect1><para>
2264 #: apt-secure.8.xml:1
2266 "Once the uploaded package is verified and included in the archive, the "
2267 "maintainer signature is stripped off, and checksums of the package are "
2268 "computed and put in the Packages file. The checksums of all of the Packages "
2269 "files are then computed and put into the Release file. The Release file is "
2270 "then signed by the archive key for this &keyring-distro; release, and "
2271 "distributed alongside the packages and the Packages files on "
2272 "&keyring-distro; mirrors. The keys are in the &keyring-distro; archive "
2273 "keyring available in the &keyring-package; package."
2276 #. type: Content of: <refentry><refsect1><para>
2277 #: apt-secure.8.xml:1
2279 "End users can check the signature of the Release file, extract a checksum of "
2280 "a package from it and compare it with the checksum of the package they "
2281 "downloaded by hand - or rely on APT doing this automatically."
2284 #. type: Content of: <refentry><refsect1><para>
2285 #: apt-secure.8.xml:1
2287 "Notice that this is distinct from checking signatures on a per package "
2288 "basis. It is designed to prevent two possible attacks:"
2291 #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para>
2292 #: apt-secure.8.xml:1
2294 "<literal>Network \"man in the middle\" attacks</literal>. Without signature "
2295 "checking, malicious agents can introduce themselves into the package "
2296 "download process and provide malicious software either by controlling a "
2297 "network element (router, switch, etc.) or by redirecting traffic to a rogue "
2298 "server (through ARP or DNS spoofing attacks)."
2301 #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para>
2302 #: apt-secure.8.xml:1
2304 "<literal>Mirror network compromise</literal>. Without signature checking, a "
2305 "malicious agent can compromise a mirror host and modify the files in it to "
2306 "propagate malicious software to all users downloading packages from that "
2310 #. type: Content of: <refentry><refsect1><para>
2311 #: apt-secure.8.xml:1
2313 "However, it does not defend against a compromise of the master server itself "
2314 "(which signs the packages) or against a compromise of the key used to sign "
2315 "the Release files. In any case, this mechanism can complement a per-package "
2319 #. type: Content of: <refentry><refsect1><title>
2320 #: apt-secure.8.xml:1
2321 msgid "User Configuration"
2324 #. type: Content of: <refentry><refsect1><para>
2325 #: apt-secure.8.xml:1
2327 "<command>apt-key</command> is the program that manages the list of keys used "
2328 "by APT to trust repositories. It can be used to add or remove keys as well "
2329 "as list the trusted keys. Limiting which key(s) are able to sign which "
2330 "archive is possible via the <option>Signed-By</option> in &sources-list;."
2333 #. type: Content of: <refentry><refsect1><para>
2334 #: apt-secure.8.xml:1
2336 "Note that a default installation already contains all keys to securely "
2337 "acquire packages from the default repositories, so fiddling with "
2338 "<command>apt-key</command> is only needed if third-party repositories are "
2342 #. type: Content of: <refentry><refsect1><para>
2343 #: apt-secure.8.xml:1
2345 "In order to add a new key you need to first download it (you should make "
2346 "sure you are using a trusted communication channel when retrieving it), add "
2347 "it with <command>apt-key</command> and then run <command>apt-get "
2348 "update</command> so that apt can download and verify the "
2349 "<filename>InRelease</filename> or <filename>Release.gpg</filename> files "
2350 "from the archives you have configured."
2353 #. type: Content of: <refentry><refsect1><title>
2354 #: apt-secure.8.xml:1
2355 msgid "Archive Configuration"
2358 #. type: Content of: <refentry><refsect1><para>
2359 #: apt-secure.8.xml:1
2361 "If you want to provide archive signatures in an archive under your "
2362 "maintenance you have to:"
2365 #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para>
2366 #: apt-secure.8.xml:1
2368 "<emphasis>Create a toplevel Release file</emphasis>, if it does not exist "
2369 "already. You can do this by running <command>apt-ftparchive "
2370 "release</command> (provided in apt-utils)."
2373 #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para>
2374 #: apt-secure.8.xml:1
2376 "<emphasis>Sign it</emphasis>. You can do this by running <command>gpg "
2377 "--clearsign -o InRelease Release</command> and <command>gpg -abs -o "
2378 "Release.gpg Release</command>."
2381 #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para>
2382 #: apt-secure.8.xml:1
2384 "<emphasis>Publish the key fingerprint</emphasis>, so that your users will "
2385 "know what key they need to import in order to authenticate the files in the "
2386 "archive. It is best to ship your key in its own keyring package like "
2387 "&keyring-distro; does with &keyring-package; to be able to distribute "
2388 "updates and key transitions automatically later."
2391 #. type: Content of: <refentry><refsect1><itemizedlist><listitem><para>
2392 #: apt-secure.8.xml:1
2394 "<emphasis>Provide instructions on how to add your archive and "
2395 "key</emphasis>. If your users can't acquire your key securely the chain of "
2396 "trust described above is broken. How you can help users add your key "
2397 "depends on your archive and target audience ranging from having your keyring "
2398 "package included in another archive users already have configured (like the "
2399 "default repositories of their distribution) to leveraging the web of trust."
2402 #. type: Content of: <refentry><refsect1><para>
2403 #: apt-secure.8.xml:1
2405 "Whenever the contents of the archive change (new packages are added or "
2406 "removed) the archive maintainer has to follow the first two steps outlined "
2410 #. type: Content of: <refentry><refsect1><para>
2411 #: apt-secure.8.xml:1
2413 "&apt-conf;, &apt-get;, &sources-list;, &apt-key;, &apt-ftparchive;, "
2414 "&debsign;, &debsig-verify;, &gpg;"
2417 #. type: Content of: <refentry><refsect1><para>
2418 #: apt-secure.8.xml:1
2420 "For more background information you might want to review the <ulink "
2421 "url=\"https://www.debian.org/doc/manuals/securing-debian-howto/ch7\">Debian "
2422 "Security Infrastructure</ulink> chapter of the Securing Debian Manual (also "
2423 "available in the harden-doc package) and the <ulink "
2424 "url=\"http://www.cryptnet.net/fdp/crypto/strong_distro.html\" >Strong "
2425 "Distribution HOWTO</ulink> by V. Alex Brennen."
2428 #. type: Content of: <refentry><refsect1><title>
2429 #: apt-secure.8.xml:1
2430 msgid "Manpage Authors"
2433 #. type: Content of: <refentry><refsect1><para>
2434 #: apt-secure.8.xml:1
2436 "This man-page is based on the work of Javier Fernández-Sanguino Peña, Isaac "
2437 "Jones, Colin Walters, Florian Weimer and Michael Vogt."
2440 #. type: Content of: <refentry><refnamediv><refpurpose>
2441 #: apt-cdrom.8.xml:1
2442 msgid "APT CD-ROM management utility"
2445 #. type: Content of: <refentry><refsect1><para>
2446 #: apt-cdrom.8.xml:1
2448 "<command>apt-cdrom</command> is used to add a new CD-ROM to APT's list of "
2449 "available sources. <command>apt-cdrom</command> takes care of determining "
2450 "the structure of the disc as well as correcting for several possible "
2451 "mis-burns and verifying the index files."
2454 #. type: Content of: <refentry><refsect1><para>
2455 #: apt-cdrom.8.xml:1
2457 "It is necessary to use <command>apt-cdrom</command> to add CDs to the APT "
2458 "system; it cannot be done by hand. Furthermore each disc in a multi-CD set "
2459 "must be inserted and scanned separately to account for possible mis-burns."
2462 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2463 #: apt-cdrom.8.xml:1
2465 "<literal>add</literal> is used to add a new disc to the source list. It will "
2466 "unmount the CD-ROM device, prompt for a disc to be inserted and then proceed "
2467 "to scan it and copy the index files. If the disc does not have a proper "
2468 "<filename>.disk</filename> directory you will be prompted for a descriptive "
2472 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2473 #: apt-cdrom.8.xml:1
2475 "APT uses a CD-ROM ID to track which disc is currently in the drive and "
2476 "maintains a database of these IDs in "
2477 "<filename>&statedir;/cdroms.list</filename>"
2480 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2481 #: apt-cdrom.8.xml:1
2483 "A debugging tool to report the identity of the current disc as well as the "
2487 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2488 #: apt-cdrom.8.xml:1
2490 "Do not try to auto-detect the CD-ROM path. Usually combined with the "
2491 "<option>--cdrom</option> option. Configuration Item: "
2492 "<literal>Acquire::cdrom::AutoDetect</literal>."
2495 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2496 #: apt-cdrom.8.xml:1
2498 "Mount point; specify the location to mount the CD-ROM. This mount point must "
2499 "be listed in <filename>/etc/fstab</filename> and properly configured. "
2500 "Configuration Item: <literal>Acquire::cdrom::mount</literal>."
2503 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2504 #: apt-cdrom.8.xml:1
2506 "Rename a disc; change the label of a disc or override the disc's given "
2507 "label. This option will cause <command>apt-cdrom</command> to prompt for a "
2508 "new label. Configuration Item: <literal>APT::CDROM::Rename</literal>."
2511 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2512 #: apt-cdrom.8.xml:1
2514 "No mounting; prevent <command>apt-cdrom</command> from mounting and "
2515 "unmounting the mount point. Configuration Item: "
2516 "<literal>APT::CDROM::NoMount</literal>."
2519 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2520 #: apt-cdrom.8.xml:1
2522 "Fast Copy; Assume the package files are valid and do not check every "
2523 "package. This option should be used only if <command>apt-cdrom</command> has "
2524 "been run on this disc before and did not detect any errors. Configuration "
2525 "Item: <literal>APT::CDROM::Fast</literal>."
2528 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2529 #: apt-cdrom.8.xml:1
2531 "Thorough Package Scan; This option may be needed with some old Debian "
2532 "1.1/1.2 discs that have Package files in strange places. It takes much "
2533 "longer to scan the CD but will pick them all up."
2536 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2537 #: apt-cdrom.8.xml:1
2539 "No Changes; Do not change the &sources-list; file and do not write index "
2540 "files. Everything is still checked however. Configuration Item: "
2541 "<literal>APT::CDROM::NoAct</literal>."
2544 #. type: Content of: <refentry><refsect1><para>
2545 #: apt-cdrom.8.xml:1
2546 msgid "&apt-conf;, &apt-get;, &sources-list;"
2549 #. type: Content of: <refentry><refsect1><para>
2550 #: apt-cdrom.8.xml:1
2552 "<command>apt-cdrom</command> returns zero on normal operation, decimal 100 "
2556 #. type: Content of: <refentry><refnamediv><refpurpose>
2557 #: apt-config.8.xml:1
2558 msgid "APT Configuration Query program"
2561 #. type: Content of: <refentry><refsect1><para>
2562 #: apt-config.8.xml:1
2564 "<command>apt-config</command> is an internal program used by various "
2565 "portions of the APT suite to provide consistent configurability. It accesses "
2566 "the main configuration file <filename>/etc/apt/apt.conf</filename> in a "
2567 "manner that is easy to use for scripted applications."
2570 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2571 #: apt-config.8.xml:1
2573 "shell is used to access the configuration information from a shell "
2574 "script. It is given pairs of arguments, the first being a shell variable and "
2575 "the second the configuration value to query. As output it lists shell "
2576 "assignment commands for each value present. In a shell script it should be "
2580 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><informalexample><programlisting>
2581 #: apt-config.8.xml:1
2585 "RES=`apt-config shell OPTS MyApp::options`\n"
2589 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2590 #: apt-config.8.xml:1
2592 "This will set the shell environment variable $OPTS to the value of "
2593 "MyApp::options with a default of <option>-f</option>."
2596 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2597 #: apt-config.8.xml:1
2599 "The configuration item may be postfixed with a /[fdbi]. f returns file "
2600 "names, d returns directories, b returns true or false and i returns an "
2601 "integer. Each of the returns is normalized and verified internally."
2604 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2605 #: apt-config.8.xml:1
2606 msgid "Just show the contents of the configuration space."
2609 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2610 #: apt-config.8.xml:1
2612 "Include options which have an empty value. This is the default, so use "
2613 "--no-empty to remove them from the output."
2616 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term><option><replaceable>
2617 #: apt-config.8.xml:1
2618 msgid "%f "%v";%n"
2621 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2622 #: apt-config.8.xml:1
2624 "Defines the output of each config option. %t will be replaced with "
2625 "its individual name, %f with its full hierarchical name and %v "
2626 "with its value. Use uppercase letters and special characters in the value "
2627 "will be encoded to ensure that it can e.g. be safely used in a quoted-string "
2628 "as defined by RFC822. Additionally %n will be replaced by a newline, "
2629 "and %N by a tab. A % can be printed by using %%."
2632 #. type: Content of: <refentry><refsect1><para>
2633 #: apt-config.8.xml:1 apt-extracttemplates.1.xml:1 apt-sortpkgs.1.xml:1
2634 #: apt-ftparchive.1.xml:1
2638 #. type: Content of: <refentry><refsect1><para>
2639 #: apt-config.8.xml:1
2641 "<command>apt-config</command> returns zero on normal operation, decimal 100 "
2645 #. type: Content of: <refentry><refentryinfo><author><contrib>
2647 msgid "Initial documentation of Debug::*."
2650 #. type: Content of: <refentry><refentryinfo><author><email>
2652 msgid "dburrows@debian.org"
2655 #. type: Content of: <refentry><refmeta><manvolnum>
2656 #: apt.conf.5.xml:1 apt_preferences.5.xml:1 sources.list.5.xml:1
2660 #. type: Content of: <refentry><refnamediv><refpurpose>
2662 msgid "Configuration file for APT"
2665 #. type: Content of: <refentry><refsect1><para>
2668 "<filename>/etc/apt/apt.conf</filename> is the main configuration file shared "
2669 "by all the tools in the APT suite of tools, though it is by no means the "
2670 "only place options can be set. The suite also shares a common command line "
2671 "parser to provide a uniform environment."
2674 #. type: Content of: <refentry><refsect1><orderedlist><para>
2677 "When an APT tool starts up it will read the configuration files in the "
2681 #. type: Content of: <refentry><refsect1><orderedlist><listitem><para>
2684 "the file specified by the <envar>APT_CONFIG</envar> environment variable (if "
2688 #. type: Content of: <refentry><refsect1><orderedlist><listitem><para>
2691 "all files in <literal>Dir::Etc::Parts</literal> in alphanumeric ascending "
2692 "order which have either no or \"<literal>conf</literal>\" as filename "
2693 "extension and which only contain alphanumeric, hyphen (-), underscore (_) "
2694 "and period (.) characters. Otherwise APT will print a notice that it has "
2695 "ignored a file, unless that file matches a pattern in the "
2696 "<literal>Dir::Ignore-Files-Silently</literal> configuration list - in which "
2697 "case it will be silently ignored."
2700 #. type: Content of: <refentry><refsect1><orderedlist><listitem><para>
2702 msgid "the main configuration file specified by <literal>Dir::Etc::main</literal>"
2705 #. type: Content of: <refentry><refsect1><orderedlist><listitem><para>
2708 "all options set in the binary specific configuration subtree are moved into "
2709 "the root of the tree."
2712 #. type: Content of: <refentry><refsect1><orderedlist><listitem><para>
2715 "the command line options are applied to override the configuration "
2716 "directives or to load even more configuration files."
2719 #. type: Content of: <refentry><refsect1><title>
2724 #. type: Content of: <refentry><refsect1><para>
2727 "The configuration file is organized in a tree with options organized into "
2728 "functional groups. Option specification is given with a double colon "
2729 "notation; for instance <literal>APT::Get::Assume-Yes</literal> is an option "
2730 "within the APT tool group, for the Get tool. Options do not inherit from "
2731 "their parent groups."
2734 #. type: Content of: <refentry><refsect1><para>
2737 "Syntactically the configuration language is modeled after what the ISC tools "
2738 "such as bind and dhcp use. Lines starting with <literal>//</literal> are "
2739 "treated as comments (ignored), as well as all text between "
2740 "<literal>/*</literal> and <literal>*/</literal>, just like C/C++ comments. "
2741 "Each line is of the form <literal>APT::Get::Assume-Yes \"true\";</literal>. "
2742 "The quotation marks and trailing semicolon are required. The value must be "
2743 "on one line, and there is no kind of string concatenation. Values must not "
2744 "include backslashes or extra quotation marks. Option names are made up of "
2745 "alphanumeric characters and the characters \"/-:._+\". A new scope can be "
2746 "opened with curly braces, like this:"
2749 #. type: Content of: <refentry><refsect1><informalexample><programlisting>
2755 " Assume-Yes \"true\";\n"
2756 " Fix-Broken \"true\";\n"
2761 #. type: Content of: <refentry><refsect1><para>
2764 "with newlines placed to make it more readable. Lists can be created by "
2765 "opening a scope and including a single string enclosed in quotes followed by "
2766 "a semicolon. Multiple entries can be included, separated by a semicolon."
2769 #. type: Content of: <refentry><refsect1><informalexample><programlisting>
2772 msgid "DPkg::Pre-Install-Pkgs {\"/usr/sbin/dpkg-preconfigure --apt\";};\n"
2775 #. type: Content of: <refentry><refsect1><para>
2778 "In general the sample configuration file &configureindex; is a good guide "
2779 "for how it should look."
2782 #. type: Content of: <refentry><refsect1><para>
2785 "Case is not significant in names of configuration items, so in the previous "
2786 "example you could use <literal>dpkg::pre-install-pkgs</literal>."
2789 #. type: Content of: <refentry><refsect1><para>
2792 "Names for the configuration items are optional if a list is defined as can "
2793 "be seen in the <literal>DPkg::Pre-Install-Pkgs</literal> example above. If "
2794 "you don't specify a name a new entry will simply add a new option to the "
2795 "list. If you specify a name you can override the option in the same way as "
2796 "any other option by reassigning a new value to the option."
2799 #. type: Content of: <refentry><refsect1><para>
2802 "Two special commands are defined: <literal>#include</literal> (which is "
2803 "deprecated and not supported by alternative implementations) and "
2804 "<literal>#clear</literal>. <literal>#include</literal> will include the "
2805 "given file, unless the filename ends in a slash, in which case the whole "
2806 "directory is included. <literal>#clear</literal> is used to erase a part of "
2807 "the configuration tree. The specified element and all its descendants are "
2808 "erased. (Note that these lines also need to end with a semicolon.)"
2811 #. type: Content of: <refentry><refsect1><para>
2814 "The <literal>#clear</literal> command is the only way to delete a list or a "
2815 "complete scope. Reopening a scope (or using the syntax described below with "
2816 "an appended <literal>::</literal>) will <emphasis>not</emphasis> override "
2817 "previously written entries. Options can only be overridden by addressing a "
2818 "new value to them - lists and scopes can't be overridden, only cleared."
2821 #. type: Content of: <refentry><refsect1><para>
2824 "All of the APT tools take an -o option which allows an arbitrary "
2825 "configuration directive to be specified on the command line. The syntax is a "
2826 "full option name (<literal>APT::Get::Assume-Yes</literal> for instance) "
2827 "followed by an equals sign then the new value of the option. To append a new "
2828 "element to a list, add a trailing <literal>::</literal> to the name of the "
2829 "list. (As you might suspect, the scope syntax can't be used on the command "
2833 #. type: Content of: <refentry><refsect1><para>
2836 "Note that appending items to a list using <literal>::</literal> only works "
2837 "for one item per line, and that you should not use it in combination with "
2838 "the scope syntax (which adds <literal>::</literal> implicitly). Using both "
2839 "syntaxes together will trigger a bug which some users unfortunately depend "
2840 "on: an option with the unusual name \"<literal>::</literal>\" which acts "
2841 "like every other option with a name. This introduces many problems; for one "
2842 "thing, users who write multiple lines in this <emphasis>wrong</emphasis> "
2843 "syntax in the hope of appending to a list will achieve the opposite, as only "
2844 "the last assignment for this option \"<literal>::</literal>\" will be "
2845 "used. Future versions of APT will raise errors and stop working if they "
2846 "encounter this misuse, so please correct such statements now while APT "
2847 "doesn't explicitly complain about them."
2850 #. type: Content of: <refentry><refsect1><title>
2852 msgid "The APT Group"
2855 #. type: Content of: <refentry><refsect1><para>
2858 "This group of options controls general APT behavior as well as holding the "
2859 "options for all of the tools."
2862 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2865 "System Architecture; sets the architecture to use when fetching files and "
2866 "parsing package lists. The internal default is the architecture apt was "
2870 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2873 "All Architectures the system supports. For instance, CPUs implementing the "
2874 "<literal>amd64</literal> (also called <literal>x86-64</literal>) "
2875 "instruction set are also able to execute binaries compiled for the "
2876 "<literal>i386</literal> (<literal>x86</literal>) instruction set. This list "
2877 "is used when fetching files and parsing package lists. The initial default "
2878 "is always the system's native architecture "
2879 "(<literal>APT::Architecture</literal>), and foreign architectures are added "
2880 "to the default list when they are registered via <command>dpkg "
2881 "--add-architecture</command>."
2884 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2887 "This scope defines which compression formats are supported, how compression "
2888 "and decompression can be performed if support for this format isn't built "
2889 "into apt directly and a cost-value indicating how costly it is to compress "
2890 "something in this format. As an example the following configuration stanza "
2891 "would allow apt to download and uncompress as well as create and store files "
2892 "with the low-cost <literal>.reversed</literal> file extension which it will "
2893 "pass to the command <command>rev</command> without additional commandline "
2894 "parameters for compression and uncompression:"
2897 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><informalexample><programlisting>
2901 "APT::Compressor::rev {\n"
2903 "\tExtension \".reversed\";\n"
2904 "\tBinary \"rev\";\n"
2905 "\tCompressArg {};\n"
2906 "\tUncompressArg {};\n"
2911 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2914 "List of all build profiles enabled for build-dependency resolution, without "
2915 "the \"<literal>profile.</literal>\" namespace prefix. By default this list "
2916 "is empty. The <envar>DEB_BUILD_PROFILES</envar> as used by "
2917 "&dpkg-buildpackage; overrides the list notation."
2920 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2923 "Default release to install packages from if more than one version is "
2924 "available. Contains release name, codename or release version. Examples: "
2925 "'stable', 'testing', 'unstable', '&debian-stable-codename;', "
2926 "'&debian-testing-codename;', '4.0', '5.0*'. See also &apt-preferences;."
2929 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2932 "Ignore held packages; this global option causes the problem resolver to "
2933 "ignore held packages in its decision making."
2936 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2939 "Defaults to on. When turned on the autoclean feature will remove any "
2940 "packages which can no longer be downloaded from the cache. If turned off "
2941 "then packages that are locally installed are also excluded from cleaning - "
2942 "but note that APT provides no direct means to reinstall them."
2945 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2948 "Defaults to on, which will cause APT to install essential and important "
2949 "packages as soon as possible in an install/upgrade operation, in order to "
2950 "limit the effect of a failing &dpkg; call. If this option is disabled, APT "
2951 "treats an important package in the same way as an extra package: between the "
2952 "unpacking of the package A and its configuration there can be many other "
2953 "unpack or configuration calls for other unrelated packages B, C etc. If "
2954 "these cause the &dpkg; call to fail (e.g. because package B's maintainer "
2955 "scripts generate an error), this results in a system state in which package "
2956 "A is unpacked but unconfigured - so any package depending on A is now no "
2957 "longer guaranteed to work, as its dependency on A is no longer satisfied."
2960 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2963 "The immediate configuration marker is also applied in the potentially "
2964 "problematic case of circular dependencies, since a dependency with the "
2965 "immediate flag is equivalent to a Pre-Dependency. In theory this allows APT "
2966 "to recognise a situation in which it is unable to perform immediate "
2967 "configuration, abort, and suggest to the user that the option should be "
2968 "temporarily deactivated in order to allow the operation to proceed. Note "
2969 "the use of the word \"theory\" here; in the real world this problem has "
2970 "rarely been encountered, in non-stable distribution versions, and was caused "
2971 "by wrong dependencies of the package in question or by a system in an "
2972 "already broken state; so you should not blindly disable this option, as the "
2973 "scenario mentioned above is not the only problem it can help to prevent in "
2977 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2980 "Before a big operation like <literal>dist-upgrade</literal> is run with this "
2981 "option disabled you should try to explicitly <literal>install</literal> the "
2982 "package APT is unable to configure immediately; but please make sure you "
2983 "also report your problem to your distribution and to the APT team with the "
2984 "buglink below, so they can work on improving or correcting the upgrade "
2988 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
2991 "Never enable this option unless you <emphasis>really</emphasis> know what "
2992 "you are doing. It permits APT to temporarily remove an essential package to "
2993 "break a Conflicts/Conflicts or Conflicts/Pre-Depends loop between two "
2994 "essential packages. <emphasis>Such a loop should never exist and is a grave "
2995 "bug</emphasis>. This option will work if the essential packages are not "
2996 "<command>tar</command>, <command>gzip</command>, <command>libc</command>, "
2997 "<command>dpkg</command>, <command>dash</command> or anything that those "
2998 "packages depend on."
3001 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3004 "APT uses since version 0.7.26 a resizable memory mapped cache file to store "
3005 "the available information. <literal>Cache-Start</literal> acts as a hint of "
3006 "the size the cache will grow to, and is therefore the amount of memory APT "
3007 "will request at startup. The default value is 20971520 bytes (~20 MB). Note "
3008 "that this amount of space needs to be available for APT; otherwise it will "
3009 "likely fail ungracefully, so for memory restricted devices this value should "
3010 "be lowered while on systems with a lot of configured sources it should be "
3011 "increased. <literal>Cache-Grow</literal> defines in bytes with the default "
3012 "of 1048576 (~1 MB) how much the cache size will be increased in the event "
3013 "the space defined by <literal>Cache-Start</literal> is not enough. This "
3014 "value will be applied again and again until either the cache is big enough "
3015 "to store all information or the size of the cache reaches the "
3016 "<literal>Cache-Limit</literal>. The default of "
3017 "<literal>Cache-Limit</literal> is 0 which stands for no limit. If "
3018 "<literal>Cache-Grow</literal> is set to 0 the automatic growth of the cache "
3022 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3024 msgid "Defines which packages are considered essential build dependencies."
3027 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3030 "The Get subsection controls the &apt-get; tool; please see its documentation "
3031 "for more information about the options here."
3034 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3037 "The Cache subsection controls the &apt-cache; tool; please see its "
3038 "documentation for more information about the options here."
3041 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3044 "The CDROM subsection controls the &apt-cdrom; tool; please see its "
3045 "documentation for more information about the options here."
3048 #. type: Content of: <refentry><refsect1><title>
3050 msgid "The Acquire Group"
3053 #. type: Content of: <refentry><refsect1><para>
3056 "The <literal>Acquire</literal> group of options controls the download of "
3057 "packages as well as the various \"acquire methods\" responsible for the "
3058 "download itself (see also &sources-list;)."
3061 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3064 "Security related option defaulting to true, as giving a Release file's "
3065 "validation an expiration date prevents replay attacks over a long timescale, "
3066 "and can also for example help users to identify mirrors that are no longer "
3067 "updated - but the feature depends on the correctness of the clock on the "
3068 "user system. Archive maintainers are encouraged to create Release files with "
3069 "the <literal>Valid-Until</literal> header, but if they don't or a stricter "
3070 "value is desired the <literal>Max-ValidTime</literal> option below can be "
3071 "used. The <option>Check-Valid-Until</option> option of &sources-list; "
3072 "entries should be preferred to disable the check selectively instead of "
3073 "using this global override."
3076 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3079 "Maximum time (in seconds) after its creation (as indicated by the "
3080 "<literal>Date</literal> header) that the <filename>Release</filename> file "
3081 "should be considered valid. If the Release file itself includes a "
3082 "<literal>Valid-Until</literal> header the earlier date of the two is used as "
3083 "the expiration date. The default value is <literal>0</literal> which stands "
3084 "for \"valid forever\". Archive specific settings can be made by appending "
3085 "the label of the archive to the option name. Preferably, the same can be "
3086 "achieved for specific &sources-list; entries by using the "
3087 "<option>Valid-Until-Max</option> option there."
3090 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3093 "Minimum time (in seconds) after its creation (as indicated by the "
3094 "<literal>Date</literal> header) that the <filename>Release</filename> file "
3095 "should be considered valid. Use this if you need to use a seldom updated "
3096 "(local) mirror of a more frequently updated archive with a "
3097 "<literal>Valid-Until</literal> header instead of completely disabling the "
3098 "expiration date checking. Archive specific settings can and should be used "
3099 "by appending the label of the archive to the option name. Preferably, the "
3100 "same can be achieved for specific &sources-list; entries by using the "
3101 "<option>Valid-Until-Min</option> option there."
3104 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3107 "Try to download deltas called <literal>PDiffs</literal> for indexes (like "
3108 "<filename>Packages</filename> files) instead of downloading whole ones. True "
3109 "by default. Preferably, this can be set for specific &sources-list; entries "
3110 "or index files by using the <option>PDiffs</option> option there."
3113 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3116 "Two sub-options to limit the use of PDiffs are also available: "
3117 "<literal>FileLimit</literal> can be used to specify a maximum number of "
3118 "PDiff files should be downloaded to update a "
3119 "file. <literal>SizeLimit</literal> on the other hand is the maximum "
3120 "percentage of the size of all patches compared to the size of the targeted "
3121 "file. If one of these limits is exceeded the complete file is downloaded "
3122 "instead of the patches."
3125 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3128 "Try to download indexes via an URI constructed from a hashsum of the "
3129 "expected file rather than downloaded via a well-known stable filename. True "
3130 "by default, but automatically disabled if the source indicates no support "
3131 "for it. Usage can be forced with the special value \"force\". Preferably, "
3132 "this can be set for specific &sources-list; entries or index files by using "
3133 "the <option>By-Hash</option> option there."
3136 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3139 "Queuing mode; <literal>Queue-Mode</literal> can be one of "
3140 "<literal>host</literal> or <literal>access</literal> which determines how "
3141 "APT parallelizes outgoing connections. <literal>host</literal> means that "
3142 "one connection per target host will be opened, <literal>access</literal> "
3143 "means that one connection per URI type will be opened."
3146 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3149 "Number of retries to perform. If this is non-zero APT will retry failed "
3150 "files the given number of times."
3153 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3156 "Use symlinks for source archives. If set to true then source archives will "
3157 "be symlinked when possible instead of copying. True is the default."
3160 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3163 "<literal>http::Proxy</literal> sets the default proxy to use for HTTP "
3164 "URIs. It is in the standard form of "
3165 "<literal>http://[[user][:pass]@]host[:port]/</literal>. Per host proxies "
3166 "can also be specified by using the form "
3167 "<literal>http::Proxy::<host></literal> with the special keyword "
3168 "<literal>DIRECT</literal> meaning to use no proxies. If no one of the above "
3169 "settings is specified, <envar>http_proxy</envar> environment variable will "
3173 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3176 "Three settings are provided for cache control with HTTP/1.1 compliant proxy "
3177 "caches. <literal>No-Cache</literal> tells the proxy not to use its cached "
3178 "response under any circumstances. <literal>Max-Age</literal> sets the "
3179 "allowed maximum age (in seconds) of an index file in the cache of the "
3180 "proxy. <literal>No-Store</literal> specifies that the proxy should not "
3181 "store the requested archive files in its cache, which can be used to prevent "
3182 "the proxy from polluting its cache with (big) .deb files."
3185 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3186 #: apt.conf.5.xml:1 apt.conf.5.xml:1
3188 "The option <literal>timeout</literal> sets the timeout timer used by the "
3189 "method; this value applies to the connection as well as the data timeout."
3192 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3195 "The setting <literal>Acquire::http::Pipeline-Depth</literal> can be used to "
3196 "enable HTTP pipelining (RFC 2616 section 8.1.2.2) which can be beneficial "
3197 "e.g. on high-latency connections. It specifies how many requests are sent in "
3198 "a pipeline. APT tries to detect and workaround misbehaving webservers and "
3199 "proxies at runtime, but if you know that yours does not conform to the "
3200 "HTTP/1.1 specification pipelining can be disabled by setting the value to "
3201 "0. It is enabled by default with the value 10."
3204 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3207 "<literal>Acquire::http::AllowRedirect</literal> controls whether APT will "
3208 "follow redirects, which is enabled by default."
3211 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3214 "The used bandwidth can be limited with "
3215 "<literal>Acquire::http::Dl-Limit</literal> which accepts integer values in "
3216 "kilobytes per second. The default value is 0 which deactivates the limit and "
3217 "tries to use all available bandwidth. Note that this option implicitly "
3218 "disables downloading from multiple servers at the same time."
3221 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3224 "<literal>Acquire::http::User-Agent</literal> can be used to set a different "
3225 "User-Agent for the http download method as some proxies allow access for "
3226 "clients only if the client uses a known identifier."
3229 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3232 "<literal>Acquire::http::Proxy-Auto-Detect</literal> can be used to specify "
3233 "an external command to discover the http proxy to use. The first and only "
3234 "parameter is an URI denoting the host to be contacted to allow for "
3235 "host-specific configuration. APT expects the command to output the proxy on "
3236 "stdout as a single line in the style <literal>http://proxy:port/</literal> "
3237 "or the word <literal>DIRECT</literal> if no proxy should be used. No output "
3238 "indicates that the generic proxy settings should be used. Note that "
3239 "auto-detection will not be used for a host if a host-specific proxy "
3240 "configuration is already set via "
3241 "<literal>Acquire::http::Proxy::<replaceable>HOST</replaceable></literal>. "
3242 "See the &squid-deb-proxy-client; package for an example implementation that "
3243 "uses avahi. This option takes precedence over the legacy option name "
3244 "<literal>ProxyAutoDetect</literal>."
3247 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3250 "The <literal>Cache-control</literal>, <literal>Timeout</literal>, "
3251 "<literal>AllowRedirect</literal>, <literal>Dl-Limit</literal> and "
3252 "<literal>proxy</literal> options work for HTTPS URIs in the same way as for "
3253 "the <literal>http</literal> method, and default to the same values if they "
3254 "are not explicitly set. The <literal>Pipeline-Depth</literal> option is not "
3258 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3261 "<literal>CaInfo</literal> suboption specifies place of file that holds info "
3262 "about trusted certificates. <literal><host>::CaInfo</literal> is the "
3263 "corresponding per-host option. <literal>Verify-Peer</literal> boolean "
3264 "suboption determines whether or not the server's host certificate should be "
3265 "verified against trusted certificates. "
3266 "<literal><host>::Verify-Peer</literal> is the corresponding per-host "
3267 "option. <literal>Verify-Host</literal> boolean suboption determines whether "
3268 "or not the server's hostname should be verified. "
3269 "<literal><host>::Verify-Host</literal> is the corresponding per-host "
3270 "option. <literal>SslCert</literal> determines what certificate to use for "
3271 "client authentication. <literal><host>::SslCert</literal> is the "
3272 "corresponding per-host option. <literal>SslKey</literal> determines what "
3273 "private key to use for client "
3274 "authentication. <literal><host>::SslKey</literal> is the corresponding "
3275 "per-host option. <literal>SslForceVersion</literal> overrides default SSL "
3276 "version to use. It can contain either of the strings "
3277 "'<literal>TLSv1</literal>' or '<literal>SSLv3</literal>'. "
3278 "<literal><host>::SslForceVersion</literal> is the corresponding "
3282 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3285 "<literal>ftp::Proxy</literal> sets the default proxy to use for FTP URIs. "
3286 "It is in the standard form of "
3287 "<literal>ftp://[[user][:pass]@]host[:port]/</literal>. Per host proxies can "
3288 "also be specified by using the form "
3289 "<literal>ftp::Proxy::<host></literal> with the special keyword "
3290 "<literal>DIRECT</literal> meaning to use no proxies. If no one of the above "
3291 "settings is specified, <envar>ftp_proxy</envar> environment variable will be "
3292 "used. To use an FTP proxy you will have to set the "
3293 "<literal>ftp::ProxyLogin</literal> script in the configuration file. This "
3294 "entry specifies the commands to send to tell the proxy server what to "
3295 "connect to. Please see &configureindex; for an example of how to do "
3296 "this. The substitution variables representing the corresponding URI "
3297 "component are <literal>$(PROXY_USER)</literal>, "
3298 "<literal>$(PROXY_PASS)</literal>, <literal>$(SITE_USER)</literal>, "
3299 "<literal>$(SITE_PASS)</literal>, <literal>$(SITE)</literal> and "
3300 "<literal>$(SITE_PORT)</literal>."
3303 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3306 "Several settings are provided to control passive mode. Generally it is safe "
3307 "to leave passive mode on; it works in nearly every environment. However, "
3308 "some situations require that passive mode be disabled and port mode FTP used "
3309 "instead. This can be done globally or for connections that go through a "
3310 "proxy or for a specific host (see the sample config file for examples)."
3313 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3316 "It is possible to proxy FTP over HTTP by setting the "
3317 "<envar>ftp_proxy</envar> environment variable to an HTTP URL - see the "
3318 "discussion of the http method above for syntax. You cannot set this in the "
3319 "configuration file and it is not recommended to use FTP over HTTP due to its "
3323 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3326 "The setting <literal>ForceExtended</literal> controls the use of RFC2428 "
3327 "<literal>EPSV</literal> and <literal>EPRT</literal> commands. The default is "
3328 "false, which means these commands are only used if the control connection is "
3329 "IPv6. Setting this to true forces their use even on IPv4 connections. Note "
3330 "that most FTP servers do not support RFC2428."
3333 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout>
3336 msgid "/cdrom/::Mount \"foo\";"
3339 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3342 "For URIs using the <literal>cdrom</literal> method, the only configurable "
3343 "option is the mount point, <literal>cdrom::Mount</literal>, which must be "
3344 "the mount point for the CD-ROM (or DVD, or whatever) drive as specified in "
3345 "<filename>/etc/fstab</filename>. It is possible to provide alternate mount "
3346 "and unmount commands if your mount point cannot be listed in the fstab. The "
3347 "syntax is to put <placeholder type=\"literallayout\" id=\"0\"/> within the "
3348 "<literal>cdrom</literal> block. It is important to have the trailing slash. "
3349 "Unmount commands can be specified using UMount."
3352 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3355 "For GPGV URIs the only configurable option is "
3356 "<literal>gpgv::Options</literal>, which passes additional parameters to "
3360 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis>
3364 "Acquire::CompressionTypes::<replaceable>FileExtension</replaceable> "
3365 "\"<replaceable>Methodname</replaceable>\";"
3368 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3371 "List of compression types which are understood by the acquire methods. "
3372 "Files like <filename>Packages</filename> can be available in various "
3373 "compression formats. By default the acquire methods can decompress and "
3374 "recompress many common formats like <command>xz</command> and "
3375 "<command>gzip</command>; with this scope the supported formats can be "
3376 "queried, modified as well as support for more formats added (see also "
3377 "<option>APT::Compressor</option>). The syntax for this is: <placeholder "
3378 "type=\"synopsis\" id=\"0\"/>"
3381 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis>
3384 msgid "Acquire::CompressionTypes::Order:: \"gz\";"
3387 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><synopsis>
3390 msgid "Acquire::CompressionTypes::Order { \"xz\"; \"gz\"; };"
3393 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3396 "Also, the <literal>Order</literal> subgroup can be used to define in which "
3397 "order the acquire system will try to download the compressed files. The "
3398 "acquire system will try the first and proceed with the next compression type "
3399 "in this list on error, so to prefer one over the other type simply add the "
3400 "preferred type first - types not already added will be implicitly appended "
3401 "to the end of the list, so e.g. <placeholder type=\"synopsis\" id=\"0\"/> "
3402 "can be used to prefer <command>gzip</command> compressed files over all "
3403 "other compression formats. If <command>xz</command> should be preferred "
3404 "over <command>gzip</command> and <command>bzip2</command> the configure "
3405 "setting should look like this: <placeholder type=\"synopsis\" id=\"1\"/> It "
3406 "is not needed to add <literal>bz2</literal> to the list explicitly as it "
3407 "will be added automatically."
3410 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><literallayout>
3413 msgid "Dir::Bin::bzip2 \"/bin/bzip2\";"
3416 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3420 "<literal>Dir::Bin::<replaceable>Methodname</replaceable></literal> will be "
3421 "checked at run time. If this option has been set and support for this format "
3422 "isn't directly built into apt, the method will only be used if this file "
3423 "exists; e.g. for the <literal>bzip2</literal> method (the inbuilt) setting "
3424 "is: <placeholder type=\"literallayout\" id=\"0\"/> Note also that list "
3425 "entries specified on the command line will be added at the end of the list "
3426 "specified in the configuration files, but before the default entries. To "
3427 "prefer a type in this case over the ones specified in the configuration "
3428 "files you can set the option direct - not in list style. This will not "
3429 "override the defined list; it will only prefix the list with this type."
3432 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3435 "The special type <literal>uncompressed</literal> can be used to give "
3436 "uncompressed files a preference, but note that most archives don't provide "
3437 "uncompressed files so this is mostly only useable for local mirrors."
3440 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3443 "When downloading <literal>gzip</literal> compressed indexes (Packages, "
3444 "Sources, or Translations), keep them gzip compressed locally instead of "
3445 "unpacking them. This saves quite a lot of disk space at the expense of more "
3446 "CPU requirements when building the local package caches. False by default."
3449 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3452 "The Languages subsection controls which <filename>Translation</filename> "
3453 "files are downloaded and in which order APT tries to display the "
3454 "description-translations. APT will try to display the first available "
3455 "description in the language which is listed first. Languages can be defined "
3456 "with their short or long language codes. Note that not all archives provide "
3457 "<filename>Translation</filename> files for every language - the long "
3458 "language codes are especially rare."
3461 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><programlisting>
3464 msgid "Acquire::Languages { \"environment\"; \"de\"; \"en\"; \"none\"; \"fr\"; };"
3467 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3470 "The default list includes \"environment\" and "
3471 "\"en\". \"<literal>environment</literal>\" has a special meaning here: it "
3472 "will be replaced at runtime with the language codes extracted from the "
3473 "<literal>LC_MESSAGES</literal> environment variable. It will also ensure "
3474 "that these codes are not included twice in the list. If "
3475 "<literal>LC_MESSAGES</literal> is set to \"C\" only the "
3476 "<filename>Translation-en</filename> file (if available) will be used. To "
3477 "force APT to use no Translation file use the setting "
3478 "<literal>Acquire::Languages=none</literal>. \"<literal>none</literal>\" is "
3479 "another special meaning code which will stop the search for a suitable "
3480 "<filename>Translation</filename> file. This tells APT to download these "
3481 "translations too, without actually using them unless the environment "
3482 "specifies the languages. So the following example configuration will result "
3483 "in the order \"en, de\" in an English locale or \"de, en\" in a German "
3484 "one. Note that \"fr\" is downloaded, but not used unless APT is used in a "
3485 "French locale (where the order would be \"fr, de, en\"). <placeholder "
3486 "type=\"programlisting\" id=\"0\"/>"
3489 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3492 "Note: To prevent problems resulting from APT being executed in different "
3493 "environments (e.g. by different users or by other programs) all Translation "
3494 "files which are found in <filename>/var/lib/apt/lists/</filename> will be "
3495 "added to the end of the list (after an implicit "
3496 "\"<literal>none</literal>\")."
3499 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3501 msgid "When downloading, force to use only the IPv4 protocol."
3504 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3506 msgid "When downloading, force to use only the IPv6 protocol."
3509 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3512 "The maximum file size of Release/Release.gpg/InRelease files. The default "
3516 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3519 "This option controls if apt will use the DNS SRV server record as specified "
3520 "in RFC 2782 to select an alternative server to connect to. The default is "
3524 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3527 "Allow update operations to load data files from repositories without "
3528 "sufficient security information. The default value is "
3529 "\"<literal>false</literal>\". Concept, implications as well as alternatives "
3530 "are detailed in &apt-secure;."
3533 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3536 "Allow update operations to load data files from repositories which provide "
3537 "security information, but these are deemed no longer cryptographically "
3538 "strong enough. The default value is \"<literal>false</literal>\". Concept, "
3539 "implications as well as alternatives are detailed in &apt-secure;."
3542 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3545 "Allow that a repository that was previously gpg signed to become unsigned "
3546 "during an update operation. When there is no valid signature for a "
3547 "previously trusted repository apt will refuse the update. This option can be "
3548 "used to override this protection. You almost certainly never want to enable "
3549 "this. The default is <literal>false</literal>. Concept, implications as "
3550 "well as alternatives are detailed in &apt-secure;."
3553 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term>
3558 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3561 "Acquiring changelogs can only be done if an URI is known from where to get "
3562 "them. Preferable the Release file indicates this in a 'Changelogs' "
3563 "field. If this isn't available the Label/Origin field of the Release file is "
3564 "used to check if a "
3565 "<literal>Acquire::Changelogs::URI::Label::<replaceable>LABEL</replaceable></literal> "
3567 "<literal>Acquire::Changelogs::URI::Origin::<replaceable>ORIGIN</replaceable></literal> "
3568 "option exists and if so this value is taken. The value in the Release file "
3569 "can be overridden with "
3570 "<literal>Acquire::Changelogs::URI::Override::Label::<replaceable>LABEL</replaceable></literal> "
3572 "<literal>Acquire::Changelogs::URI::Override::Origin::<replaceable>ORIGIN</replaceable></literal>. "
3573 "The value should be a normal URI to a text file, except that package "
3574 "specific data is replaced with the placeholder "
3575 "<literal>@CHANGEPATH@</literal>. The value for it is: 1. if the package is "
3576 "from a component (e.g. <literal>main</literal>) this is the first part "
3577 "otherwise it is omitted, 2. the first letter of source package name, except "
3578 "if the source package name starts with '<literal>lib</literal>' in which "
3579 "case it will be the first four letters. 3. The complete source package "
3580 "name. 4. the complete name again and 5. the source version. The first (if "
3581 "present), second, third and fourth part are separated by a slash "
3582 "('<literal>/</literal>') and between the fourth and fifth part is an "
3583 "underscore ('<literal>_</literal>'). The special value "
3584 "'<literal>no</literal>' is available for this option indicating that this "
3585 "source can't be used to acquire changelog files from. Another source will be "
3586 "tried if available in this case."
3589 #. type: Content of: <refentry><refsect1><title>
3591 msgid "Binary specific configuration"
3594 #. type: Content of: <refentry><refsect1><para>
3597 "Especially with the introduction of the <command>apt</command> binary it can "
3598 "be useful to set certain options only for a specific binary as even options "
3599 "which look like they would effect only a certain binary like "
3600 "<option>APT::Get::Show-Versions</option> effect <command>apt-get</command> "
3601 "as well as <command>apt</command>."
3604 #. type: Content of: <refentry><refsect1><para>
3607 "Setting an option for a specific binary only can be achieved by setting the "
3608 "option inside the "
3609 "<option>Binary::<replaceable>specific-binary</replaceable></option> "
3610 "scope. Setting the option <option>APT::Get::Show-Versions</option> for the "
3611 "<command>apt</command> only can e.g. by done by setting "
3612 "<option>Binary::apt::APT::Get::Show-Versions</option> instead."
3615 #. type: Content of: <refentry><refsect1><para>
3618 "Note that as seen in the DESCRIPTION section further above you can't set "
3619 "binary-specific options on the commandline itself nor in configuration files "
3620 "loaded via the commandline."
3623 #. type: Content of: <refentry><refsect1><title>
3628 #. type: Content of: <refentry><refsect1><para>
3631 "The <literal>Dir::State</literal> section has directories that pertain to "
3632 "local state information. <literal>lists</literal> is the directory to place "
3633 "downloaded package lists in and <literal>status</literal> is the name of the "
3634 "&dpkg; status file. <literal>preferences</literal> is the name of the APT "
3635 "<filename>preferences</filename> file. <literal>Dir::State</literal> "
3636 "contains the default directory to prefix on all sub-items if they do not "
3637 "start with <filename>/</filename> or <filename>./</filename>."
3640 #. type: Content of: <refentry><refsect1><para>
3643 "<literal>Dir::Cache</literal> contains locations pertaining to local cache "
3644 "information, such as the two package caches <literal>srcpkgcache</literal> "
3645 "and <literal>pkgcache</literal> as well as the location to place downloaded "
3646 "archives, <literal>Dir::Cache::archives</literal>. Generation of caches can "
3647 "be turned off by setting <literal>pkgcache</literal> or "
3648 "<literal>srcpkgcache</literal> to <literal>\"\"</literal>. This will slow "
3649 "down startup but save disk space. It is probably preferable to turn off the "
3650 "pkgcache rather than the srcpkgcache. Like <literal>Dir::State</literal> "
3651 "the default directory is contained in <literal>Dir::Cache</literal>"
3654 #. type: Content of: <refentry><refsect1><para>
3657 "<literal>Dir::Etc</literal> contains the location of configuration files, "
3658 "<literal>sourcelist</literal> gives the location of the sourcelist and "
3659 "<literal>main</literal> is the default configuration file (setting has no "
3660 "effect, unless it is done from the config file specified by "
3661 "<envar>APT_CONFIG</envar>)."
3664 #. type: Content of: <refentry><refsect1><para>
3667 "The <literal>Dir::Parts</literal> setting reads in all the config fragments "
3668 "in lexical order from the directory specified. After this is done then the "
3669 "main config file is loaded."
3672 #. type: Content of: <refentry><refsect1><para>
3675 "Binary programs are pointed to by "
3676 "<literal>Dir::Bin</literal>. <literal>Dir::Bin::Methods</literal> specifies "
3677 "the location of the method handlers and <literal>gzip</literal>, "
3678 "<literal>bzip2</literal>, <literal>lzma</literal>, <literal>dpkg</literal>, "
3679 "<literal>apt-get</literal> <literal>dpkg-source</literal> "
3680 "<literal>dpkg-buildpackage</literal> and <literal>apt-cache</literal> "
3681 "specify the location of the respective programs."
3684 #. type: Content of: <refentry><refsect1><para>
3687 "The configuration item <literal>RootDir</literal> has a special meaning. If "
3688 "set, all paths will be relative to <literal>RootDir</literal>, "
3689 "<emphasis>even paths that are specified absolutely</emphasis>. So, for "
3690 "instance, if <literal>RootDir</literal> is set to "
3691 "<filename>/tmp/staging</filename> and <literal>Dir::State::status</literal> "
3692 "is set to <filename>/var/lib/dpkg/status</filename>, then the status file "
3693 "will be looked up in <filename>/tmp/staging/var/lib/dpkg/status</filename>. "
3694 "If you want to prefix only relative paths, set <literal>Dir</literal> "
3698 #. type: Content of: <refentry><refsect1><para>
3701 "The <literal>Ignore-Files-Silently</literal> list can be used to specify "
3702 "which files APT should silently ignore while parsing the files in the "
3703 "fragment directories. Per default a file which end with "
3704 "<literal>.disabled</literal>, <literal>~</literal>, <literal>.bak</literal> "
3705 "or <literal>.dpkg-[a-z]+</literal> is silently ignored. As seen in the last "
3706 "default value these patterns can use regular expression syntax."
3709 #. type: Content of: <refentry><refsect1><title>
3711 msgid "APT in DSelect"
3714 #. type: Content of: <refentry><refsect1><para>
3717 "When APT is used as a &dselect; method several configuration directives "
3718 "control the default behavior. These are in the <literal>DSelect</literal> "
3722 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3725 "Cache Clean mode; this value may be one of <literal>always</literal>, "
3726 "<literal>prompt</literal>, <literal>auto</literal>, "
3727 "<literal>pre-auto</literal> and <literal>never</literal>. "
3728 "<literal>always</literal> and <literal>prompt</literal> will remove all "
3729 "packages from the cache after upgrading, <literal>prompt</literal> (the "
3730 "default) does so conditionally. <literal>auto</literal> removes only those "
3731 "packages which are no longer downloadable (replaced with a new version for "
3732 "instance). <literal>pre-auto</literal> performs this action before "
3733 "downloading new packages."
3736 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3739 "The contents of this variable are passed to &apt-get; as command line "
3740 "options when it is run for the install phase."
3743 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3746 "The contents of this variable are passed to &apt-get; as command line "
3747 "options when it is run for the update phase."
3750 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3753 "If true the [U]pdate operation in &dselect; will always prompt to continue. "
3754 "The default is to prompt only on error."
3757 #. type: Content of: <refentry><refsect1><title>
3759 msgid "How APT calls &dpkg;"
3762 #. type: Content of: <refentry><refsect1><para>
3765 "Several configuration directives control how APT invokes &dpkg;. These are "
3766 "in the <literal>DPkg</literal> section."
3769 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3772 "This is a list of options to pass to &dpkg;. The options must be specified "
3773 "using the list notation and each list item is passed as a single argument to "
3777 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3780 "This is a list of shell commands to run before/after invoking &dpkg;. Like "
3781 "<literal>options</literal> this must be specified in list notation. The "
3782 "commands are invoked in order using <filename>/bin/sh</filename>; should any "
3783 "fail APT will abort."
3786 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3789 "This is a list of shell commands to run before invoking &dpkg;. Like "
3790 "<literal>options</literal> this must be specified in list notation. The "
3791 "commands are invoked in order using <filename>/bin/sh</filename>; should any "
3792 "fail APT will abort. APT will pass the filenames of all .deb files it is "
3793 "going to install to the commands, one per line on the requested file "
3794 "descriptor, defaulting to standard input."
3797 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3800 "Version 2 of this protocol sends more information through the requested file "
3801 "descriptor: a line with the text <literal>VERSION 2</literal>, the APT "
3802 "configuration space, and a list of package actions with filename and version "
3806 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3809 "Each configuration directive line has the form "
3810 "<literal>key=value</literal>. Special characters (equal signs, newlines, "
3811 "nonprintable characters, quotation marks, and percent signs in "
3812 "<literal>key</literal> and newlines, nonprintable characters, and percent "
3813 "signs in <literal>value</literal>) are %-encoded. Lists are represented by "
3814 "multiple <literal>key::=value</literal> lines with the same key. The "
3815 "configuration section ends with a blank line."
3818 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3821 "Package action lines consist of five fields in Version 2: package name "
3822 "(without architecture qualification even if foreign), old version, direction "
3823 "of version change (< for upgrades, > for downgrades, = for no change), "
3824 "new version, action. The version fields are \"-\" for no version at all (for "
3825 "example when installing a package for the first time; no version is treated "
3826 "as earlier than any real version, so that is an upgrade, indicated as "
3827 "<literal>- < 1.23.4</literal>). The action field is \"**CONFIGURE**\" if "
3828 "the package is being configured, \"**REMOVE**\" if it is being removed, or "
3829 "the filename of a .deb file if it is being unpacked."
3832 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3835 "In Version 3 after each version field follows the architecture of this "
3836 "version, which is \"-\" if there is no version, and a field showing the "
3837 "MultiArch type \"same\", \"foreign\", \"allowed\" or \"none\". Note that "
3838 "\"none\" is an incorrect typename which is just kept to remain compatible, "
3839 "it should be read as \"no\" and users are encouraged to support both."
3842 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3845 "The version of the protocol to be used for the command "
3846 "<literal><replaceable>cmd</replaceable></literal> can be chosen by setting "
3847 "<literal>DPkg::Tools::options::<replaceable>cmd</replaceable>::Version</literal> "
3848 "accordingly, the default being version 1. If APT isn't supporting the "
3849 "requested version it will send the information in the highest version it has "
3850 "support for instead."
3853 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3856 "The file descriptor to be used to send the information can be requested with "
3857 "<literal>DPkg::Tools::options::<replaceable>cmd</replaceable>::InfoFD</literal> "
3858 "which defaults to <literal>0</literal> for standard input and is available "
3859 "since version 0.9.11. Support for the option can be detected by looking for "
3860 "the environment variable <envar>APT_HOOK_INFO_FD</envar> which contains the "
3861 "number of the used file descriptor as a confirmation."
3864 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3867 "APT chdirs to this directory before invoking &dpkg;, the default is "
3868 "<filename>/</filename>."
3871 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
3874 "These options are passed to &dpkg-buildpackage; when compiling packages; the "
3875 "default is to disable signing and produce all binaries."
3878 #. type: Content of: <refentry><refsect1><refsect2><title>
3880 msgid "dpkg trigger usage (and related options)"
3883 #. type: Content of: <refentry><refsect1><refsect2><para>
3886 "APT can call &dpkg; in such a way as to let it make aggressive use of "
3887 "triggers over multiple calls of &dpkg;. Without further options &dpkg; will "
3888 "use triggers once each time it runs. Activating these options can therefore "
3889 "decrease the time needed to perform the install or upgrade. Note that it is "
3890 "intended to activate these options per default in the future, but as it "
3891 "drastically changes the way APT calls &dpkg; it needs a lot more testing. "
3892 "<emphasis>These options are therefore currently experimental and should not "
3893 "be used in production environments.</emphasis> It also breaks progress "
3894 "reporting such that all front-ends will currently stay around half (or more) "
3895 "of the time in the 100% state while it actually configures all packages."
3898 #. type: Content of: <refentry><refsect1><refsect2><para><literallayout>
3902 "DPkg::NoTriggers \"true\";\n"
3903 "PackageManager::Configure \"smart\";\n"
3904 "DPkg::ConfigurePending \"true\";\n"
3905 "DPkg::TriggersPending \"true\";"
3908 #. type: Content of: <refentry><refsect1><refsect2><para>
3911 "Note that it is not guaranteed that APT will support these options or that "
3912 "these options will not cause (big) trouble in the future. If you have "
3913 "understand the current risks and problems with these options, but are brave "
3914 "enough to help testing them, create a new configuration file and test a "
3915 "combination of options. Please report any bugs, problems and improvements "
3916 "you encounter and make sure to note which options you have used in your "
3917 "reports. Asking &dpkg; for help could also be useful for debugging proposes, "
3918 "see e.g. <command>dpkg --audit</command>. A defensive option combination "
3919 "would be <placeholder type=\"literallayout\" id=\"0\"/>"
3922 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
3925 "Add the no triggers flag to all &dpkg; calls (except the ConfigurePending "
3926 "call). See &dpkg; if you are interested in what this actually means. In "
3927 "short: &dpkg; will not run the triggers when this flag is present unless it "
3928 "is explicitly called to do so in an extra call. Note that this option "
3929 "exists (undocumented) also in older APT versions with a slightly different "
3930 "meaning: Previously these option only append --no-triggers to the configure "
3931 "calls to &dpkg; - now APT will also add this flag to the unpack and remove "
3935 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
3938 "Valid values are \"<literal>all</literal>\", \"<literal>smart</literal>\" "
3939 "and \"<literal>no</literal>\". The default value is "
3940 "\"<literal>all</literal>\", which causes APT to configure all packages. The "
3941 "\"<literal>smart</literal>\" way is to configure only packages which need to "
3942 "be configured before another package can be unpacked (Pre-Depends), and let "
3943 "the rest be configured by &dpkg; with a call generated by the "
3944 "ConfigurePending option (see below). On the other hand, "
3945 "\"<literal>no</literal>\" will not configure anything, and totally relies on "
3946 "&dpkg; for configuration (which at the moment will fail if a Pre-Depends is "
3947 "encountered). Setting this option to any value other than "
3948 "<literal>all</literal> will implicitly also activate the next option by "
3949 "default, as otherwise the system could end in an unconfigured and "
3950 "potentially unbootable state."
3953 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
3956 "If this option is set APT will call <command>dpkg --configure "
3957 "--pending</command> to let &dpkg; handle all required configurations and "
3958 "triggers. This option is activated automatically per default if the previous "
3959 "option is not set to <literal>all</literal>, but deactivating it could be "
3960 "useful if you want to run APT multiple times in a row - e.g. in an "
3961 "installer. In these sceneries you could deactivate this option in all but "
3965 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
3968 "Useful for the <literal>smart</literal> configuration as a package which has "
3969 "pending triggers is not considered as <literal>installed</literal>, and "
3970 "&dpkg; treats them as <literal>unpacked</literal> currently which is a "
3971 "showstopper for Pre-Dependencies (see debbugs #526774). Note that this will "
3972 "process all triggers, not only the triggers needed to configure this "
3976 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para><literallayout>
3980 "OrderList::Score {\n"
3982 "\tEssential 200;\n"
3984 "\tPreDepends 50;\n"
3988 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
3991 "Essential packages (and their dependencies) should be configured immediately "
3992 "after unpacking. It is a good idea to do this quite early in the upgrade "
3993 "process as these configure calls also currently require "
3994 "<literal>DPkg::TriggersPending</literal> which will run quite a few triggers "
3995 "(which may not be needed). Essentials get per default a high score but the "
3996 "immediate flag is relatively low (a package which has a Pre-Depends is rated "
3997 "higher). These option and the others in the same group can be used to "
3998 "change the scoring. The following example shows the settings with their "
3999 "default values. <placeholder type=\"literallayout\" id=\"0\"/>"
4002 #. type: Content of: <refentry><refsect1><title>
4004 msgid "Periodic and Archives options"
4007 #. type: Content of: <refentry><refsect1><para>
4010 "<literal>APT::Periodic</literal> and <literal>APT::Archives</literal> groups "
4011 "of options configure behavior of apt periodic updates, which is done by the "
4012 "<literal>/usr/lib/apt/apt.systemd.daily</literal> script. See the top of "
4013 "this script for the brief documentation of these options."
4016 #. type: Content of: <refentry><refsect1><title>
4018 msgid "Debug options"
4021 #. type: Content of: <refentry><refsect1><para>
4024 "Enabling options in the <literal>Debug::</literal> section will cause "
4025 "debugging information to be sent to the standard error stream of the program "
4026 "utilizing the <literal>apt</literal> libraries, or enable special program "
4027 "modes that are primarily useful for debugging the behavior of "
4028 "<literal>apt</literal>. Most of these options are not interesting to a "
4029 "normal user, but a few may be:"
4032 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
4035 "<literal>Debug::pkgProblemResolver</literal> enables output about the "
4036 "decisions made by <literal>dist-upgrade, upgrade, install, remove, "
4040 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
4043 "<literal>Debug::NoLocking</literal> disables all file locking. This can be "
4044 "used to run some operations (for instance, <literal>apt-get -s "
4045 "install</literal>) as a non-root user."
4048 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
4051 "<literal>Debug::pkgDPkgPM</literal> prints out the actual command line each "
4052 "time that <literal>apt</literal> invokes &dpkg;."
4056 #. motivating example, except I haven't a clue why you'd want
4058 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
4061 "<literal>Debug::IdentCdrom</literal> disables the inclusion of statfs data "
4065 #. type: Content of: <refentry><refsect1><para>
4067 msgid "A full list of debugging options to apt follows."
4070 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4072 msgid "Print information related to accessing <literal>cdrom://</literal> sources."
4075 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4077 msgid "Print information related to downloading packages using FTP."
4080 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4082 msgid "Print information related to downloading packages using HTTP."
4085 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4087 msgid "Print information related to downloading packages using HTTPS."
4090 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4093 "Print information related to verifying cryptographic signatures using "
4094 "<literal>gpg</literal>."
4097 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4100 "Output information about the process of accessing collections of packages "
4101 "stored on CD-ROMs."
4104 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4106 msgid "Describes the process of resolving build-dependencies in &apt-get;."
4109 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4112 "Output each cryptographic hash that is generated by the "
4113 "<literal>apt</literal> libraries."
4116 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4119 "Do not include information from <literal>statfs</literal>, namely the number "
4120 "of used and free blocks on the CD-ROM filesystem, when generating an ID for "
4124 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4127 "Disable all file locking. For instance, this will allow two instances of "
4128 "<quote><literal>apt-get update</literal></quote> to run at the same time."
4131 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4133 msgid "Log when items are added to or removed from the global download queue."
4136 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4139 "Output status messages and errors related to verifying checksums and "
4140 "cryptographic signatures of downloaded files."
4143 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4146 "Output information about downloading and applying package index list diffs, "
4147 "and errors relating to package index list diffs."
4150 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4153 "Output information related to patching apt package lists when downloading "
4154 "index diffs instead of full indices."
4157 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4159 msgid "Log all interactions with the sub-processes that actually perform downloads."
4162 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4165 "Log events related to the automatically-installed status of packages and to "
4166 "the removal of unused packages."
4169 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4172 "Generate debug messages describing which packages are being automatically "
4173 "installed to resolve dependencies. This corresponds to the initial "
4174 "auto-install pass performed in, e.g., <literal>apt-get install</literal>, "
4175 "and not to the full <literal>apt</literal> dependency resolver; see "
4176 "<literal>Debug::pkgProblemResolver</literal> for that."
4179 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4182 "Generate debug messages describing which packages are marked as "
4183 "keep/install/remove while the ProblemResolver does his work. Each addition "
4184 "or deletion may trigger additional actions; they are shown indented two "
4185 "additional spaces under the original entry. The format for each line is "
4186 "<literal>MarkKeep</literal>, <literal>MarkDelete</literal> or "
4187 "<literal>MarkInstall</literal> followed by <literal>package-name <a.b.c "
4188 "-> d.e.f | x.y.z> (section)</literal> where <literal>a.b.c</literal> "
4189 "is the current version of the package, <literal>d.e.f</literal> is the "
4190 "version considered for installation and <literal>x.y.z</literal> is a newer "
4191 "version, but not considered for installation (because of a low pin "
4192 "score). The later two can be omitted if there is none or if it is the same "
4193 "as the installed version. <literal>section</literal> is the name of the "
4194 "section the package appears in."
4197 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4200 "When invoking &dpkg;, output the precise command line with which it is being "
4201 "invoked, with arguments separated by a single space character."
4204 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4207 "Output all the data received from &dpkg; on the status file descriptor and "
4208 "any errors encountered while parsing it."
4211 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4214 "Generate a trace of the algorithm that decides the order in which "
4215 "<literal>apt</literal> should pass packages to &dpkg;."
4218 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4220 msgid "Output status messages tracing the steps performed when invoking &dpkg;."
4223 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4225 msgid "Output the priority of each package list on startup."
4228 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4231 "Trace the execution of the dependency resolver (this applies only to what "
4232 "happens when a complex dependency problem is encountered)."
4235 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4238 "Display a list of all installed packages with their calculated score used by "
4239 "the pkgProblemResolver. The description of the package is the same as "
4240 "described in <literal>Debug::pkgDepCache::Marker</literal>"
4243 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4246 "Print information about the vendors read from "
4247 "<filename>/etc/apt/vendors.list</filename>."
4250 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
4253 "Display the external commands that are called by apt hooks. This includes "
4254 "e.g. the config options <literal>DPkg::{Pre,Post}-Invoke</literal> or "
4255 "<literal>APT::Update::{Pre,Post}-Invoke</literal>."
4258 #. type: Content of: <refentry><refsect1><title>
4259 #: apt.conf.5.xml:1 apt_preferences.5.xml:1 sources.list.5.xml:1
4260 #: apt-ftparchive.1.xml:1
4264 #. type: Content of: <refentry><refsect1><para>
4267 "&configureindex; is a configuration file showing example values for all "
4271 #. ? reading apt.conf
4272 #. type: Content of: <refentry><refsect1><para>
4274 msgid "&apt-cache;, &apt-config;, &apt-preferences;."
4277 #. type: Content of: <refentry><refnamediv><refpurpose>
4278 #: apt_preferences.5.xml:1
4279 msgid "Preference control file for APT"
4282 #. type: Content of: <refentry><refsect1><para>
4283 #: apt_preferences.5.xml:1
4285 "The APT preferences file <filename>/etc/apt/preferences</filename> and the "
4286 "fragment files in the <filename>/etc/apt/preferences.d/</filename> folder "
4287 "can be used to control which versions of packages will be selected for "
4291 #. type: Content of: <refentry><refsect1><para>
4292 #: apt_preferences.5.xml:1
4294 "Several versions of a package may be available for installation when the "
4295 "&sources-list; file contains references to more than one distribution (for "
4296 "example, <literal>stable</literal> and <literal>testing</literal>). APT "
4297 "assigns a priority to each version that is available. Subject to dependency "
4298 "constraints, <command>apt-get</command> selects the version with the highest "
4299 "priority for installation. The APT preferences override the priorities that "
4300 "APT assigns to package versions by default, thus giving the user control "
4301 "over which one is selected for installation."
4304 #. type: Content of: <refentry><refsect1><para>
4305 #: apt_preferences.5.xml:1
4307 "Several instances of the same version of a package may be available when the "
4308 "&sources-list; file contains references to more than one source. In this "
4309 "case <command>apt-get</command> downloads the instance listed earliest in "
4310 "the &sources-list; file. The APT preferences do not affect the choice of "
4311 "instance, only the choice of version."
4314 #. type: Content of: <refentry><refsect1><para>
4315 #: apt_preferences.5.xml:1
4317 "Preferences are a strong power in the hands of a system administrator but "
4318 "they can become also their biggest nightmare if used without care! APT will "
4319 "not question the preferences, so wrong settings can lead to uninstallable "
4320 "packages or wrong decisions while upgrading packages. Even more problems "
4321 "will arise if multiple distribution releases are mixed without a good "
4322 "understanding of the following paragraphs. Packages included in a specific "
4323 "release aren't tested in (and therefore don't always work as expected in) "
4324 "older or newer releases, or together with other packages from different "
4325 "releases. You have been warned."
4328 #. type: Content of: <refentry><refsect1><para>
4329 #: apt_preferences.5.xml:1
4331 "Note that the files in the <filename>/etc/apt/preferences.d</filename> "
4332 "directory are parsed in alphanumeric ascending order and need to obey the "
4333 "following naming convention: The files have either no or "
4334 "\"<literal>pref</literal>\" as filename extension and only contain "
4335 "alphanumeric, hyphen (-), underscore (_) and period (.) characters. "
4336 "Otherwise APT will print a notice that it has ignored a file, unless that "
4337 "file matches a pattern in the <literal>Dir::Ignore-Files-Silently</literal> "
4338 "configuration list - in which case it will be silently ignored."
4341 #. type: Content of: <refentry><refsect1><refsect2><title>
4342 #: apt_preferences.5.xml:1
4343 msgid "APT's Default Priority Assignments"
4346 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
4347 #: apt_preferences.5.xml:1
4350 "<command>apt-get install -t testing "
4351 "<replaceable>some-package</replaceable></command>\n"
4354 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
4355 #: apt_preferences.5.xml:1
4357 msgid "APT::Default-Release \"stable\";\n"
4360 #. type: Content of: <refentry><refsect1><refsect2><para>
4361 #: apt_preferences.5.xml:1
4363 "If there is no preferences file or if there is no entry in the file that "
4364 "applies to a particular version then the priority assigned to that version "
4365 "is the priority of the distribution to which that version belongs. It is "
4366 "possible to single out a distribution, \"the target release\", which "
4367 "receives a higher priority than other distributions do by default. The "
4368 "target release can be set on the <command>apt-get</command> command line or "
4369 "in the APT configuration file <filename>/etc/apt/apt.conf</filename>. Note "
4370 "that this has precedence over any general priority you set in the "
4371 "<filename>/etc/apt/preferences</filename> file described later, but not over "
4372 "specifically pinned packages. For example, <placeholder "
4373 "type=\"programlisting\" id=\"0\"/> <placeholder type=\"programlisting\" "
4377 #. type: Content of: <refentry><refsect1><refsect2><para>
4378 #: apt_preferences.5.xml:1
4380 "If the target release has been specified then APT uses the following "
4381 "algorithm to set the priorities of the versions of a package. Assign:"
4384 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4385 #: apt_preferences.5.xml:1
4389 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4390 #: apt_preferences.5.xml:1
4392 "to the versions coming from archives which in their "
4393 "<filename>Release</filename> files are marked as \"NotAutomatic: yes\" but "
4394 "<emphasis>not</emphasis> as \"ButAutomaticUpgrades: yes\" like the Debian "
4395 "<literal>experimental</literal> archive."
4398 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4399 #: apt_preferences.5.xml:1
4400 msgid "priority 100"
4403 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4404 #: apt_preferences.5.xml:1
4406 "to the version that is already installed (if any) and to the versions coming "
4407 "from archives which in their <filename>Release</filename> files are marked "
4408 "as \"NotAutomatic: yes\" and \"ButAutomaticUpgrades: yes\" like the Debian "
4409 "backports archive since <literal>squeeze-backports</literal>."
4412 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4413 #: apt_preferences.5.xml:1
4414 msgid "priority 500"
4417 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4418 #: apt_preferences.5.xml:1
4419 msgid "to the versions that do not belong to the target release."
4422 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4423 #: apt_preferences.5.xml:1
4424 msgid "priority 990"
4427 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4428 #: apt_preferences.5.xml:1
4429 msgid "to the versions that belong to the target release."
4432 #. type: Content of: <refentry><refsect1><refsect2><para>
4433 #: apt_preferences.5.xml:1
4435 "The highest of those priorities whose description matches the version is "
4436 "assigned to the version."
4439 #. type: Content of: <refentry><refsect1><refsect2><para>
4440 #: apt_preferences.5.xml:1
4442 "If the target release has not been specified then APT simply assigns "
4443 "priority 100 to all installed package versions and priority 500 to all "
4444 "uninstalled package versions, except versions coming from archives which in "
4445 "their <filename>Release</filename> files are marked as \"NotAutomatic: yes\" "
4446 "- these versions get the priority 1 or priority 100 if it is additionally "
4447 "marked as \"ButAutomaticUpgrades: yes\"."
4450 #. type: Content of: <refentry><refsect1><refsect2><para>
4451 #: apt_preferences.5.xml:1
4453 "APT then applies the following rules, listed in order of precedence, to "
4454 "determine which version of a package to install."
4457 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4458 #: apt_preferences.5.xml:1
4460 "Never downgrade unless the priority of an available version exceeds 1000. "
4461 "(\"Downgrading\" is installing a less recent version of a package in place "
4462 "of a more recent version. Note that none of APT's default priorities "
4463 "exceeds 1000; such high priorities can only be set in the preferences file. "
4464 "Note also that downgrading a package can be risky.)"
4467 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4468 #: apt_preferences.5.xml:1
4469 msgid "Install the highest priority version."
4472 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4473 #: apt_preferences.5.xml:1
4475 "If two or more versions have the same priority, install the most recent one "
4476 "(that is, the one with the higher version number)."
4479 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4480 #: apt_preferences.5.xml:1
4482 "If two or more versions have the same priority and version number but either "
4483 "the packages differ in some of their metadata or the "
4484 "<literal>--reinstall</literal> option is given, install the uninstalled one."
4487 #. type: Content of: <refentry><refsect1><refsect2><para>
4488 #: apt_preferences.5.xml:1
4490 "In a typical situation, the installed version of a package (priority 100) "
4491 "is not as recent as one of the versions available from the sources listed in "
4492 "the &sources-list; file (priority 500 or 990). Then the package will be "
4493 "upgraded when <command>apt-get install "
4494 "<replaceable>some-package</replaceable></command> or <command>apt-get "
4495 "upgrade</command> is executed."
4498 #. type: Content of: <refentry><refsect1><refsect2><para>
4499 #: apt_preferences.5.xml:1
4501 "More rarely, the installed version of a package is <emphasis>more</emphasis> "
4502 "recent than any of the other available versions. The package will not be "
4503 "downgraded when <command>apt-get install "
4504 "<replaceable>some-package</replaceable></command> or <command>apt-get "
4505 "upgrade</command> is executed."
4508 #. type: Content of: <refentry><refsect1><refsect2><para>
4509 #: apt_preferences.5.xml:1
4511 "Sometimes the installed version of a package is more recent than the version "
4512 "belonging to the target release, but not as recent as a version belonging to "
4513 "some other distribution. Such a package will indeed be upgraded when "
4514 "<command>apt-get install <replaceable>some-package</replaceable></command> "
4515 "or <command>apt-get upgrade</command> is executed, because at least "
4516 "<emphasis>one</emphasis> of the available versions has a higher priority "
4517 "than the installed version."
4520 #. type: Content of: <refentry><refsect1><refsect2><title>
4521 #: apt_preferences.5.xml:1
4522 msgid "The Effect of APT Preferences"
4525 #. type: Content of: <refentry><refsect1><refsect2><para>
4526 #: apt_preferences.5.xml:1
4528 "The APT preferences file allows the system administrator to control the "
4529 "assignment of priorities. The file consists of one or more multi-line "
4530 "records separated by blank lines. Records can have one of two forms, a "
4531 "specific form and a general form."
4534 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4535 #: apt_preferences.5.xml:1
4537 "The specific form assigns a priority (a \"Pin-Priority\") to one or more "
4538 "specified packages with a specified version or version range. For example, "
4539 "the following record assigns a high priority to all versions of the "
4540 "<filename>perl</filename> package whose version number begins with "
4541 "\"<literal>&good-perl;</literal>\". Multiple packages can be separated by "
4545 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4546 #: apt_preferences.5.xml:1
4550 "Pin: version &good-perl;*\n"
4551 "Pin-Priority: 1001\n"
4554 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4555 #: apt_preferences.5.xml:1
4557 "The general form assigns a priority to all of the package versions in a "
4558 "given distribution (that is, to all the versions of packages that are listed "
4559 "in a certain <filename>Release</filename> file) or to all of the package "
4560 "versions coming from a particular Internet site, as identified by the site's "
4561 "fully qualified domain name."
4564 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4565 #: apt_preferences.5.xml:1
4567 "This general-form entry in the APT preferences file applies only to groups "
4568 "of packages. For example, the following record assigns a high priority to "
4569 "all package versions available from the local site."
4572 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4573 #: apt_preferences.5.xml:1
4577 "Pin: origin \"\"\n"
4578 "Pin-Priority: 999\n"
4581 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4582 #: apt_preferences.5.xml:1
4584 "A note of caution: the keyword used here is \"<literal>origin</literal>\" "
4585 "which can be used to match a hostname. The following record will assign a "
4586 "high priority to all versions available from the server identified by the "
4587 "hostname \"ftp.de.debian.org\""
4590 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4591 #: apt_preferences.5.xml:1
4595 "Pin: origin \"ftp.de.debian.org\"\n"
4596 "Pin-Priority: 999\n"
4599 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4600 #: apt_preferences.5.xml:1
4602 "This should <emphasis>not</emphasis> be confused with the Origin of a "
4603 "distribution as specified in a <filename>Release</filename> file. What "
4604 "follows the \"Origin:\" tag in a <filename>Release</filename> file is not an "
4605 "Internet address but an author or vendor name, such as \"Debian\" or "
4609 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4610 #: apt_preferences.5.xml:1
4612 "The following record assigns a low priority to all package versions "
4613 "belonging to any distribution whose Archive name is "
4614 "\"<literal>unstable</literal>\"."
4617 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4618 #: apt_preferences.5.xml:1
4622 "Pin: release a=unstable\n"
4623 "Pin-Priority: 50\n"
4626 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4627 #: apt_preferences.5.xml:1
4629 "The following record assigns a high priority to all package versions "
4630 "belonging to any distribution whose Codename is "
4631 "\"<literal>&debian-testing-codename;</literal>\"."
4634 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4635 #: apt_preferences.5.xml:1
4639 "Pin: release n=&debian-testing-codename;\n"
4640 "Pin-Priority: 900\n"
4643 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4644 #: apt_preferences.5.xml:1
4646 "The following record assigns a high priority to all package versions "
4647 "belonging to any release whose Archive name is \"<literal>stable</literal>\" "
4648 "and whose release Version number is "
4649 "\"<literal>&debian-stable-version;</literal>\"."
4652 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><programlisting>
4653 #: apt_preferences.5.xml:1
4657 "Pin: release a=stable, v=&debian-stable-version;\n"
4658 "Pin-Priority: 500\n"
4661 #. type: Content of: <refentry><refsect1><refsect2><para>
4662 #: apt_preferences.5.xml:1
4664 "The effect of the comma operator is similar to an \"and\" in logic: All "
4665 "conditions must be satisfied for the pin to match. There is one exception: "
4666 "For any type of condition (such as two \"a\" conditions), only the last such "
4667 "condition is checked."
4670 #. type: Content of: <refentry><refsect1><refsect2><title>
4671 #: apt_preferences.5.xml:1
4672 msgid "Regular expressions and &glob; syntax"
4675 #. type: Content of: <refentry><refsect1><refsect2><para>
4676 #: apt_preferences.5.xml:1
4678 "APT also supports pinning by &glob; expressions, and regular expressions "
4679 "surrounded by slashes. For example, the following example assigns the "
4680 "priority 500 to all packages from experimental where the name starts with "
4681 "gnome (as a &glob;-like expression) or contains the word kde (as a POSIX "
4682 "extended regular expression surrounded by slashes)."
4685 #. type: Content of: <refentry><refsect1><refsect2><programlisting>
4686 #: apt_preferences.5.xml:1
4689 "Package: gnome* /kde/\n"
4690 "Pin: release a=experimental\n"
4691 "Pin-Priority: 500\n"
4694 #. type: Content of: <refentry><refsect1><refsect2><para>
4695 #: apt_preferences.5.xml:1
4697 "The rule for those expressions is that they can occur anywhere where a "
4698 "string can occur. Thus, the following pin assigns the priority 990 to all "
4699 "packages from a release starting with &ubuntu-codename;."
4702 #. type: Content of: <refentry><refsect1><refsect2><programlisting>
4703 #: apt_preferences.5.xml:1
4707 "Pin: release n=&ubuntu-codename;*\n"
4708 "Pin-Priority: 990\n"
4711 #. type: Content of: <refentry><refsect1><refsect2><para>
4712 #: apt_preferences.5.xml:1
4714 "If a regular expression occurs in a <literal>Package</literal> field, the "
4715 "behavior is the same as if this regular expression were replaced with a list "
4716 "of all package names it matches. It is undecided whether this will change in "
4717 "the future; thus you should always list wild-card pins first, so later "
4718 "specific pins override it. The pattern \"<literal>*</literal>\" in a "
4719 "Package field is not considered a &glob; expression in itself."
4722 #. type: Content of: <refentry><refsect1><refsect2><title>
4723 #: apt_preferences.5.xml:1
4724 msgid "How APT Interprets Priorities"
4727 #. type: Content of: <refentry><refsect1><refsect2><para>
4728 #: apt_preferences.5.xml:1
4730 "Priorities (P) assigned in the APT preferences file must be positive or "
4731 "negative integers. They are interpreted as follows (roughly speaking):"
4734 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4735 #: apt_preferences.5.xml:1
4736 msgid "P >= 1000"
4739 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4740 #: apt_preferences.5.xml:1
4742 "causes a version to be installed even if this constitutes a downgrade of the "
4746 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4747 #: apt_preferences.5.xml:1
4748 msgid "990 <= P < 1000"
4751 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4752 #: apt_preferences.5.xml:1
4754 "causes a version to be installed even if it does not come from the target "
4755 "release, unless the installed version is more recent"
4758 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4759 #: apt_preferences.5.xml:1
4760 msgid "500 <= P < 990"
4763 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4764 #: apt_preferences.5.xml:1
4766 "causes a version to be installed unless there is a version available "
4767 "belonging to the target release or the installed version is more recent"
4770 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4771 #: apt_preferences.5.xml:1
4772 msgid "100 <= P < 500"
4775 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4776 #: apt_preferences.5.xml:1
4778 "causes a version to be installed unless there is a version available "
4779 "belonging to some other distribution or the installed version is more recent"
4782 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4783 #: apt_preferences.5.xml:1
4784 msgid "0 < P < 100"
4787 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4788 #: apt_preferences.5.xml:1
4790 "causes a version to be installed only if there is no installed version of "
4794 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4795 #: apt_preferences.5.xml:1
4799 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4800 #: apt_preferences.5.xml:1
4801 msgid "prevents the version from being installed"
4804 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4805 #: apt_preferences.5.xml:1
4809 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4810 #: apt_preferences.5.xml:1
4811 msgid "has undefined behaviour, do not use it."
4814 #. type: Content of: <refentry><refsect1><refsect2><para>
4815 #: apt_preferences.5.xml:1
4817 "The first specific-form record matching an available package version "
4818 "determines the priority of the package version. Failing that, the priority "
4819 "of the package is defined as the maximum of all priorities defined by "
4820 "generic-form records matching the version. Records defined using patterns "
4821 "in the Pin field other than \"*\" are treated like specific-form records."
4824 #. type: Content of: <refentry><refsect1><refsect2><para>
4825 #: apt_preferences.5.xml:1
4827 "For example, suppose the APT preferences file contains the three records "
4828 "presented earlier:"
4831 #. type: Content of: <refentry><refsect1><refsect2><programlisting>
4832 #: apt_preferences.5.xml:1
4836 "Pin: version &good-perl;*\n"
4837 "Pin-Priority: 1001\n"
4840 "Pin: origin \"\"\n"
4841 "Pin-Priority: 999\n"
4844 "Pin: release unstable\n"
4845 "Pin-Priority: 50\n"
4848 #. type: Content of: <refentry><refsect1><refsect2><para>
4849 #: apt_preferences.5.xml:1
4853 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4854 #: apt_preferences.5.xml:1
4856 "The most recent available version of the <literal>perl</literal> package "
4857 "will be installed, so long as that version's version number begins with "
4858 "\"<literal>&good-perl;</literal>\". If <emphasis>any</emphasis> "
4859 "&good-perl;* version of <literal>perl</literal> is available and the "
4860 "installed version is &bad-perl;*, then <literal>perl</literal> will be "
4864 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4865 #: apt_preferences.5.xml:1
4867 "A version of any package other than <literal>perl</literal> that is "
4868 "available from the local system has priority over other versions, even "
4869 "versions belonging to the target release."
4872 #. type: Content of: <refentry><refsect1><refsect2><para><itemizedlist><listitem><simpara>
4873 #: apt_preferences.5.xml:1
4875 "A version of a package whose origin is not the local system but some other "
4876 "site listed in &sources-list; and which belongs to an "
4877 "<literal>unstable</literal> distribution is only installed if it is selected "
4878 "for installation and no version of the package is already installed."
4881 #. type: Content of: <refentry><refsect1><refsect2><title>
4882 #: apt_preferences.5.xml:1
4883 msgid "Determination of Package Version and Distribution Properties"
4886 #. type: Content of: <refentry><refsect1><refsect2><para>
4887 #: apt_preferences.5.xml:1
4889 "The locations listed in the &sources-list; file should provide "
4890 "<filename>Packages</filename> and <filename>Release</filename> files to "
4891 "describe the packages available at that location."
4894 #. type: Content of: <refentry><refsect1><refsect2><para>
4895 #: apt_preferences.5.xml:1
4897 "The <filename>Packages</filename> file is normally found in the directory "
4898 "<filename>.../dists/<replaceable>dist-name</replaceable>/<replaceable>component</replaceable>/<replaceable>arch</replaceable></filename>: "
4900 "<filename>.../dists/stable/main/binary-i386/Packages</filename>. It "
4901 "consists of a series of multi-line records, one for each package available "
4902 "in that directory. Only two lines in each record are relevant for setting "
4906 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4907 #: apt_preferences.5.xml:1
4908 msgid "the <literal>Package:</literal> line"
4911 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4912 #: apt_preferences.5.xml:1
4913 msgid "gives the package name"
4916 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4917 #: apt_preferences.5.xml:1 apt_preferences.5.xml:1
4918 msgid "the <literal>Version:</literal> line"
4921 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4922 #: apt_preferences.5.xml:1
4923 msgid "gives the version number for the named package"
4926 #. type: Content of: <refentry><refsect1><refsect2><para>
4927 #: apt_preferences.5.xml:1
4929 "The <filename>Release</filename> file is normally found in the directory "
4930 "<filename>.../dists/<replaceable>dist-name</replaceable></filename>: for "
4931 "example, <filename>.../dists/stable/Release</filename>, or "
4932 "<filename>.../dists/&debian-stable-codename;/Release</filename>. It "
4933 "consists of a single multi-line record which applies to "
4934 "<emphasis>all</emphasis> of the packages in the directory tree below its "
4935 "parent. Unlike the <filename>Packages</filename> file, nearly all of the "
4936 "lines in a <filename>Release</filename> file are relevant for setting APT "
4940 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4941 #: apt_preferences.5.xml:1
4942 msgid "the <literal>Archive:</literal> or <literal>Suite:</literal> line"
4945 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4946 #: apt_preferences.5.xml:1
4948 "names the archive to which all the packages in the directory tree belong. "
4949 "For example, the line \"Archive: stable\" or \"Suite: stable\" specifies "
4950 "that all of the packages in the directory tree below the parent of the "
4951 "<filename>Release</filename> file are in a <literal>stable</literal> "
4952 "archive. Specifying this value in the APT preferences file would require "
4956 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
4957 #: apt_preferences.5.xml:1
4959 msgid "Pin: release a=stable\n"
4962 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
4963 #: apt_preferences.5.xml:1
4964 msgid "the <literal>Codename:</literal> line"
4967 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4968 #: apt_preferences.5.xml:1
4970 "names the codename to which all the packages in the directory tree belong. "
4971 "For example, the line \"Codename: &debian-testing-codename;\" specifies that "
4972 "all of the packages in the directory tree below the parent of the "
4973 "<filename>Release</filename> file belong to a version named "
4974 "<literal>&debian-testing-codename;</literal>. Specifying this value in the "
4975 "APT preferences file would require the line:"
4978 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
4979 #: apt_preferences.5.xml:1
4981 msgid "Pin: release n=&debian-testing-codename;\n"
4984 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
4985 #: apt_preferences.5.xml:1
4987 "names the release version. For example, the packages in the tree might "
4988 "belong to Debian release version &debian-stable-version;. Note that there "
4989 "is normally no version number for the <literal>testing</literal> and "
4990 "<literal>unstable</literal> distributions because they have not been "
4991 "released yet. Specifying this in the APT preferences file would require one "
4992 "of the following lines."
4995 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
4996 #: apt_preferences.5.xml:1
4999 "Pin: release v=&debian-stable-version;\n"
5000 "Pin: release a=stable, v=&debian-stable-version;\n"
5001 "Pin: release &debian-stable-version;\n"
5004 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
5005 #: apt_preferences.5.xml:1
5006 msgid "the <literal>Component:</literal> line"
5009 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
5010 #: apt_preferences.5.xml:1
5012 "names the licensing component associated with the packages in the directory "
5013 "tree of the <filename>Release</filename> file. For example, the line "
5014 "\"Component: main\" specifies that all the packages in the directory tree "
5015 "are from the <literal>main</literal> component, which entails that they are "
5016 "licensed under terms listed in the Debian Free Software Guidelines. "
5017 "Specifying this component in the APT preferences file would require the "
5021 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
5022 #: apt_preferences.5.xml:1
5024 msgid "Pin: release c=main\n"
5027 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
5028 #: apt_preferences.5.xml:1
5029 msgid "the <literal>Origin:</literal> line"
5032 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
5033 #: apt_preferences.5.xml:1
5035 "names the originator of the packages in the directory tree of the "
5036 "<filename>Release</filename> file. Most commonly, this is "
5037 "<literal>Debian</literal>. Specifying this origin in the APT preferences "
5038 "file would require the line:"
5041 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
5042 #: apt_preferences.5.xml:1
5044 msgid "Pin: release o=Debian\n"
5047 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><term>
5048 #: apt_preferences.5.xml:1
5049 msgid "the <literal>Label:</literal> line"
5052 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara>
5053 #: apt_preferences.5.xml:1
5055 "names the label of the packages in the directory tree of the "
5056 "<filename>Release</filename> file. Most commonly, this is "
5057 "<literal>Debian</literal>. Specifying this label in the APT preferences "
5058 "file would require the line:"
5061 #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><programlisting>
5062 #: apt_preferences.5.xml:1
5064 msgid "Pin: release l=Debian\n"
5067 #. type: Content of: <refentry><refsect1><refsect2><para>
5068 #: apt_preferences.5.xml:1
5070 "All of the <filename>Packages</filename> and <filename>Release</filename> "
5071 "files retrieved from locations listed in the &sources-list; file are stored "
5072 "in the directory <filename>/var/lib/apt/lists</filename>, or in the file "
5073 "named by the variable <literal>Dir::State::Lists</literal> in the "
5074 "<filename>apt.conf</filename> file. For example, the file "
5075 "<filename>debian.lcs.mit.edu_debian_dists_unstable_contrib_binary-i386_Release</filename> "
5076 "contains the <filename>Release</filename> file retrieved from the site "
5077 "<literal>debian.lcs.mit.edu</literal> for <literal>binary-i386</literal> "
5078 "architecture files from the <literal>contrib</literal> component of the "
5079 "<literal>unstable</literal> distribution."
5082 #. type: Content of: <refentry><refsect1><refsect2><title>
5083 #: apt_preferences.5.xml:1
5084 msgid "Optional Lines in an APT Preferences Record"
5087 #. type: Content of: <refentry><refsect1><refsect2><para>
5088 #: apt_preferences.5.xml:1
5090 "Each record in the APT preferences file can optionally begin with one or "
5091 "more lines beginning with the word <literal>Explanation:</literal>. This "
5092 "provides a place for comments."
5095 #. type: Content of: <refentry><refsect1><refsect2><title>
5096 #: apt_preferences.5.xml:1
5097 msgid "Tracking Stable"
5100 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
5101 #: apt_preferences.5.xml:1
5104 "Explanation: Uninstall or do not install any Debian-originated\n"
5105 "Explanation: package versions other than those in the stable distro\n"
5107 "Pin: release a=stable\n"
5108 "Pin-Priority: 900\n"
5111 "Pin: release o=Debian\n"
5112 "Pin-Priority: -10\n"
5115 #. type: Content of: <refentry><refsect1><refsect2><para>
5116 #: apt_preferences.5.xml:1
5118 "The following APT preferences file will cause APT to assign a priority "
5119 "higher than the default (500) to all package versions belonging to a "
5120 "<literal>stable</literal> distribution and a prohibitively low priority to "
5121 "package versions belonging to other <literal>Debian</literal> "
5122 "distributions. <placeholder type=\"programlisting\" id=\"0\"/>"
5125 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
5126 #: apt_preferences.5.xml:1 apt_preferences.5.xml:1 apt_preferences.5.xml:1
5129 "apt-get install <replaceable>package-name</replaceable>\n"
5131 "apt-get dist-upgrade\n"
5134 #. type: Content of: <refentry><refsect1><refsect2><para>
5135 #: apt_preferences.5.xml:1
5137 "With a suitable &sources-list; file and the above preferences file, any of "
5138 "the following commands will cause APT to upgrade to the latest "
5139 "<literal>stable</literal> version(s). <placeholder type=\"programlisting\" "
5143 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
5144 #: apt_preferences.5.xml:1
5146 msgid "apt-get install <replaceable>package</replaceable>/testing\n"
5149 #. type: Content of: <refentry><refsect1><refsect2><para>
5150 #: apt_preferences.5.xml:1
5152 "The following command will cause APT to upgrade the specified package to the "
5153 "latest version from the <literal>testing</literal> distribution; the package "
5154 "will not be upgraded again unless this command is given again. <placeholder "
5155 "type=\"programlisting\" id=\"0\"/>"
5158 #. type: Content of: <refentry><refsect1><refsect2><title>
5159 #: apt_preferences.5.xml:1
5160 msgid "Tracking Testing or Unstable"
5163 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
5164 #: apt_preferences.5.xml:1
5168 "Pin: release a=testing\n"
5169 "Pin-Priority: 900\n"
5172 "Pin: release a=unstable\n"
5173 "Pin-Priority: 800\n"
5176 "Pin: release o=Debian\n"
5177 "Pin-Priority: -10\n"
5180 #. type: Content of: <refentry><refsect1><refsect2><para>
5181 #: apt_preferences.5.xml:1
5183 "The following APT preferences file will cause APT to assign a high priority "
5184 "to package versions from the <literal>testing</literal> distribution, a "
5185 "lower priority to package versions from the <literal>unstable</literal> "
5186 "distribution, and a prohibitively low priority to package versions from "
5187 "other <literal>Debian</literal> distributions. <placeholder "
5188 "type=\"programlisting\" id=\"0\"/>"
5191 #. type: Content of: <refentry><refsect1><refsect2><para>
5192 #: apt_preferences.5.xml:1
5194 "With a suitable &sources-list; file and the above preferences file, any of "
5195 "the following commands will cause APT to upgrade to the latest "
5196 "<literal>testing</literal> version(s). <placeholder type=\"programlisting\" "
5200 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
5201 #: apt_preferences.5.xml:1
5203 msgid "apt-get install <replaceable>package</replaceable>/unstable\n"
5206 #. type: Content of: <refentry><refsect1><refsect2><para>
5207 #: apt_preferences.5.xml:1
5209 "The following command will cause APT to upgrade the specified package to the "
5210 "latest version from the <literal>unstable</literal> distribution. "
5211 "Thereafter, <command>apt-get upgrade</command> will upgrade the package to "
5212 "the most recent <literal>testing</literal> version if that is more recent "
5213 "than the installed version, otherwise, to the most recent "
5214 "<literal>unstable</literal> version if that is more recent than the "
5215 "installed version. <placeholder type=\"programlisting\" id=\"0\"/>"
5218 #. type: Content of: <refentry><refsect1><refsect2><title>
5219 #: apt_preferences.5.xml:1
5220 msgid "Tracking the evolution of a codename release"
5223 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
5224 #: apt_preferences.5.xml:1
5227 "Explanation: Uninstall or do not install any Debian-originated package "
5229 "Explanation: other than those in the distribution codenamed with "
5230 "&debian-testing-codename; or sid\n"
5232 "Pin: release n=&debian-testing-codename;\n"
5233 "Pin-Priority: 900\n"
5235 "Explanation: Debian unstable is always codenamed with sid\n"
5237 "Pin: release n=sid\n"
5238 "Pin-Priority: 800\n"
5241 "Pin: release o=Debian\n"
5242 "Pin-Priority: -10\n"
5245 #. type: Content of: <refentry><refsect1><refsect2><para>
5246 #: apt_preferences.5.xml:1
5248 "The following APT preferences file will cause APT to assign a priority "
5249 "higher than the default (500) to all package versions belonging to a "
5250 "specified codename of a distribution and a prohibitively low priority to "
5251 "package versions belonging to other <literal>Debian</literal> distributions, "
5252 "codenames and archives. Note that with this APT preference APT will follow "
5253 "the migration of a release from the archive <literal>testing</literal> to "
5254 "<literal>stable</literal> and later <literal>oldstable</literal>. If you "
5255 "want to follow for example the progress in <literal>testing</literal> "
5256 "notwithstanding the codename changes you should use the example "
5257 "configurations above. <placeholder type=\"programlisting\" id=\"0\"/>"
5260 #. type: Content of: <refentry><refsect1><refsect2><para>
5261 #: apt_preferences.5.xml:1
5263 "With a suitable &sources-list; file and the above preferences file, any of "
5264 "the following commands will cause APT to upgrade to the latest version(s) in "
5265 "the release codenamed with <literal>&debian-testing-codename;</literal>. "
5266 "<placeholder type=\"programlisting\" id=\"0\"/>"
5269 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
5270 #: apt_preferences.5.xml:1
5272 msgid "apt-get install <replaceable>package</replaceable>/sid\n"
5275 #. type: Content of: <refentry><refsect1><refsect2><para>
5276 #: apt_preferences.5.xml:1
5278 "The following command will cause APT to upgrade the specified package to the "
5279 "latest version from the <literal>sid</literal> distribution. Thereafter, "
5280 "<command>apt-get upgrade</command> will upgrade the package to the most "
5281 "recent <literal>&debian-testing-codename;</literal> version if that is more "
5282 "recent than the installed version, otherwise, to the most recent "
5283 "<literal>sid</literal> version if that is more recent than the installed "
5284 "version. <placeholder type=\"programlisting\" id=\"0\"/>"
5287 #. type: Content of: <refentry><refsect1><para>
5288 #: apt_preferences.5.xml:1
5289 msgid "&apt-get; &apt-cache; &apt-conf; &sources-list;"
5292 #. type: Content of: <refentry><refnamediv><refpurpose>
5293 #: sources.list.5.xml:1
5294 msgid "List of configured APT data sources"
5297 #. type: Content of: <refentry><refsect1><para>
5298 #: sources.list.5.xml:1
5300 "The source list <filename>/etc/apt/sources.list</filename> and the files "
5301 "contained in <filename>/etc/apt/sources.list.d/</filename> are designed to "
5302 "support any number of active sources and a variety of source media. The "
5303 "files list one source per line (one-line style) or contain multiline stanzas "
5304 "defining one or more sources per stanza (deb822 style), with the most "
5305 "preferred source listed first (in case a single version is available from "
5306 "more than one source). The information available from the configured sources "
5307 "is acquired by <command>apt-get update</command> (or by an equivalent "
5308 "command from another APT front-end)."
5311 #. type: Content of: <refentry><refsect1><title>
5312 #: sources.list.5.xml:1
5313 msgid "sources.list.d"
5316 #. type: Content of: <refentry><refsect1><para>
5317 #: sources.list.5.xml:1
5319 "The <filename>/etc/apt/sources.list.d</filename> directory provides a way to "
5320 "add sources.list entries in separate files. Two different file formats are "
5321 "allowed as described in the next two sections. Filenames need to have "
5322 "either the extension <filename>.list</filename> or "
5323 "<filename>.sources</filename> depending on the contained format. The "
5324 "filenames may only contain letters (a-z and A-Z), digits (0-9), underscore "
5325 "(_), hyphen (-) and period (.) characters. Otherwise APT will print a "
5326 "notice that it has ignored a file, unless that file matches a pattern in the "
5327 "<literal>Dir::Ignore-Files-Silently</literal> configuration list - in which "
5328 "case it will be silently ignored."
5331 #. type: Content of: <refentry><refsect1><title>
5332 #: sources.list.5.xml:1
5333 msgid "One-Line-Style Format"
5336 #. type: Content of: <refentry><refsect1><para>
5337 #: sources.list.5.xml:1
5339 "Files in this format have the extension <filename>.list</filename>. Each "
5340 "line specifying a source starts with a type "
5341 "(e.g. <literal>deb-src</literal>) followed by options and arguments for "
5342 "this type. Individual entries cannot be continued onto a following "
5343 "line. Empty lines are ignored, and a <literal>#</literal> character anywhere "
5344 "on a line marks the remainder of that line as a comment. Consequently an "
5345 "entry can be disabled by commenting out the entire line. If options should "
5346 "be provided they are separated by spaces and all of them together are "
5347 "enclosed by square brackets (<literal>[]</literal>) included in the line "
5348 "after the type separated from it with a space. If an option allows multiple "
5349 "values these are separated from each other with a comma "
5350 "(<literal>,</literal>). An option name is separated from its value(s) by an "
5351 "equals sign (<literal>=</literal>). Multivalue options also have "
5352 "<literal>-=</literal> and <literal>+=</literal> as separators, which instead "
5353 "of replacing the default with the given value(s) modify the default value(s) "
5354 "to remove or include the given values."
5357 #. type: Content of: <refentry><refsect1><para>
5358 #: sources.list.5.xml:1
5360 "This is the traditional format and supported by all apt versions. Note that "
5361 "not all options as described below are supported by all apt versions. Note "
5362 "also that some older applications parsing this format on their own might not "
5363 "expect to encounter options as they were uncommon before the introduction of "
5364 "multi-architecture support."
5367 #. type: Content of: <refentry><refsect1><title>
5368 #: sources.list.5.xml:1
5369 msgid "deb822-Style Format"
5372 #. type: Content of: <refentry><refsect1><para>
5373 #: sources.list.5.xml:1
5375 "Files in this format have the extension <filename>.sources</filename>. The "
5376 "format is similar in syntax to other files used by Debian and its "
5377 "derivatives, such as the metadata files that apt will download from the "
5378 "configured sources or the <filename>debian/control</filename> file in a "
5379 "Debian source package. Individual entries are separated by an empty line; "
5380 "additional empty lines are ignored, and a <literal>#</literal> character at "
5381 "the start of the line marks the entire line as a comment. An entry can hence "
5382 "be disabled by commenting out each line belonging to the stanza, but it is "
5383 "usually easier to add the field \"Enabled: no\" to the stanza to disable the "
5384 "entry. Removing the field or setting it to yes reenables it. Options have "
5385 "the same syntax as every other field: A fieldname separated by a colon "
5386 "(<literal>:</literal>) and optionally spaces from its value(s). Note "
5387 "especially that multiple values are separated by spaces, not by commas as in "
5388 "the one-line format. Multivalue fields like <literal>Architectures</literal> "
5389 "also have <literal>Architectures-Add</literal> and "
5390 "<literal>Architectures-Remove</literal> to modify the default value rather "
5391 "than replacing it."
5394 #. type: Content of: <refentry><refsect1><para>
5395 #: sources.list.5.xml:1
5397 "This is a new format supported by apt itself since version 1.1. Previous "
5398 "versions ignore such files with a notice message as described earlier. It "
5399 "is intended to make this format gradually the default format, deprecating "
5400 "the previously described one-line-style format, as it is easier to create, "
5401 "extend and modify for humans and machines alike especially if a lot of "
5402 "sources and/or options are involved. Developers who are working with and/or "
5403 "parsing apt sources are highly encouraged to add support for this format and "
5404 "to contact the APT team to coordinate and share this work. Users can freely "
5405 "adopt this format already, but may encounter problems with software not "
5406 "supporting the format yet."
5409 #. type: Content of: <refentry><refsect1><title>
5410 #: sources.list.5.xml:1
5411 msgid "The deb and deb-src Types: General Format"
5414 #. type: Content of: <refentry><refsect1><para>
5415 #: sources.list.5.xml:1
5417 "The <literal>deb</literal> type references a typical two-level Debian "
5418 "archive, <filename>distribution/component</filename>. The "
5419 "<literal>distribution</literal> is generally a suite name like "
5420 "<literal>stable</literal> or <literal>testing</literal> or a codename like "
5421 "<literal>&debian-stable-codename;</literal> or "
5422 "<literal>&debian-testing-codename;</literal> while component is one of "
5423 "<literal>main</literal>, <literal>contrib</literal> or "
5424 "<literal>non-free</literal>. The <literal>deb-src</literal> type references "
5425 "a Debian distribution's source code in the same form as the "
5426 "<literal>deb</literal> type. A <literal>deb-src</literal> line is required "
5427 "to fetch source indexes."
5430 #. type: Content of: <refentry><refsect1><para>
5431 #: sources.list.5.xml:1
5433 "The format for two one-line-style entries using the <literal>deb</literal> "
5434 "and <literal>deb-src</literal> types is:"
5437 #. type: Content of: <refentry><refsect1><literallayout>
5438 #: sources.list.5.xml:1
5441 "deb [ option1=value1 option2=value2 ] uri suite [component1] [component2] "
5443 "deb-src [ option1=value1 option2=value2 ] uri suite [component1] "
5444 "[component2] [...]"
5447 #. type: Content of: <refentry><refsect1><para><literallayout>
5448 #: sources.list.5.xml:1
5451 " Types: deb deb-src\n"
5454 " Components: [component1] [component2] [...]\n"
5455 " option1: value1\n"
5456 " option2: value2\n"
5460 #. type: Content of: <refentry><refsect1><para>
5461 #: sources.list.5.xml:1
5463 "Alternatively the equivalent entry in deb822 style looks like this: "
5464 "<placeholder type=\"literallayout\" id=\"0\"/>"
5467 #. type: Content of: <refentry><refsect1><para>
5468 #: sources.list.5.xml:1
5470 "The URI for the <literal>deb</literal> type must specify the base of the "
5471 "Debian distribution, from which APT will find the information it needs. "
5472 "<literal>suite</literal> can specify an exact path, in which case the "
5473 "components must be omitted and <literal>suite</literal> must end with a "
5474 "slash (<literal>/</literal>). This is useful for the case when only a "
5475 "particular sub-directory of the archive denoted by the URI is of interest. "
5476 "If <literal>suite</literal> does not specify an exact path, at least one "
5477 "<literal>component</literal> must be present."
5480 #. type: Content of: <refentry><refsect1><para>
5481 #: sources.list.5.xml:1
5483 "<literal>suite</literal> may also contain a variable, "
5484 "<literal>$(ARCH)</literal> which expands to the Debian architecture (such as "
5485 "<literal>amd64</literal> or <literal>armel</literal>) used on the "
5486 "system. This permits architecture-independent "
5487 "<filename>sources.list</filename> files to be used. In general this is only "
5488 "of interest when specifying an exact path; <literal>APT</literal> will "
5489 "automatically generate a URI with the current architecture otherwise."
5492 #. type: Content of: <refentry><refsect1><para>
5493 #: sources.list.5.xml:1
5495 "Especially in the one-line-style format since only one distribution can be "
5496 "specified per line it may be necessary to have multiple lines for the same "
5497 "URI, if a subset of all available distributions or components at that "
5498 "location is desired. APT will sort the URI list after it has generated a "
5499 "complete set internally, and will collapse multiple references to the same "
5500 "Internet host, for instance, into a single connection, so that it does not "
5501 "inefficiently establish a connection, close it, do something else, and then "
5502 "re-establish a connection to that same host. APT also parallelizes "
5503 "connections to different hosts to more effectively deal with sites with low "
5507 #. type: Content of: <refentry><refsect1><para>
5508 #: sources.list.5.xml:1
5510 "It is important to list sources in order of preference, with the most "
5511 "preferred source listed first. Typically this will result in sorting by "
5512 "speed from fastest to slowest (CD-ROM followed by hosts on a local network, "
5513 "followed by distant Internet hosts, for example)."
5516 #. type: Content of: <refentry><refsect1><para><literallayout>
5517 #: sources.list.5.xml:1
5519 msgid "&sourceslist-list-format;"
5522 #. type: Content of: <refentry><refsect1><para><literallayout>
5523 #: sources.list.5.xml:1
5525 msgid "&sourceslist-sources-format;"
5528 #. type: Content of: <refentry><refsect1><para>
5529 #: sources.list.5.xml:1
5531 "As an example, the sources for your distribution could look like this in "
5532 "one-line-style format: <placeholder type=\"literallayout\" id=\"0\"/> or "
5533 "like this in deb822 style format: <placeholder type=\"literallayout\" "
5537 #. type: Content of: <refentry><refsect1><title>
5538 #: sources.list.5.xml:1
5539 msgid "The deb and deb-src types: Options"
5542 #. type: Content of: <refentry><refsect1><para>
5543 #: sources.list.5.xml:1
5545 "Each source entry can have options specified to modify which source is "
5546 "accessed and how data is acquired from it. Format, syntax and names of the "
5547 "options vary between the one-line-style and deb822-style formats as "
5548 "described, but they both have the same options available. For simplicity we "
5549 "list the deb822 fieldname and provide the one-line name in brackets. "
5550 "Remember that besides setting multivalue options explicitly, there is also "
5551 "the option to modify them based on the default, but we aren't listing those "
5552 "names explicitly here. Unsupported options are silently ignored by all APT "
5556 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
5557 #: sources.list.5.xml:1
5559 "<option>Architectures</option> (<option>arch</option>) is a multivalue "
5560 "option defining for which architectures information should be downloaded. If "
5561 "this option isn't set the default is all architectures as defined by the "
5562 "<option>APT::Architectures</option> config option."
5565 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
5566 #: sources.list.5.xml:1
5568 "<option>Languages</option> (<option>lang</option>) is a multivalue option "
5569 "defining for which languages information such as translated package "
5570 "descriptions should be downloaded. If this option isn't set the default is "
5571 "all languages as defined by the <option>Acquire::Languages</option> config "
5575 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
5576 #: sources.list.5.xml:1
5578 "<option>Targets</option> (<option>target</option>) is a multivalue option "
5579 "defining which download targets apt will try to acquire from this source. If "
5580 "not specified, the default set is defined by the "
5581 "<option>Acquire::IndexTargets</option> configuration scope (targets are "
5582 "specified by their name in the <literal>Created-By</literal> field). "
5583 "Additionally, targets can be enabled or disabled by using the "
5584 "<literal>Identifier</literal> field as an option with a boolean value "
5585 "instead of using this multivalue option."
5588 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
5589 #: sources.list.5.xml:1
5591 "<option>PDiffs</option> (<option>pdiffs</option>) is a yes/no value which "
5592 "controls if APT should try to use PDiffs to update old indexes instead of "
5593 "downloading the new indexes entirely. The value of this option is ignored if "
5594 "the repository doesn't announce the availability of PDiffs. Defaults to the "
5595 "value of the option with the same name for a specific index file defined in "
5596 "the <option>Acquire::IndexTargets</option> scope, which itself defaults to "
5597 "the value of configuration option <option>Acquire::PDiffs</option> which "
5598 "defaults to <literal>yes</literal>."
5601 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
5602 #: sources.list.5.xml:1
5604 "<option>By-Hash</option> (<option>by-hash</option>) can have the value "
5605 "<literal>yes</literal>, <literal>no</literal> or <literal>force</literal> "
5606 "and controls if APT should try to acquire indexes via a URI constructed from "
5607 "a hashsum of the expected file instead of using the well-known stable "
5608 "filename of the index. Using this can avoid hashsum mismatches, but requires "
5609 "a supporting mirror. A <literal>yes</literal> or <literal>no</literal> value "
5610 "activates/disables the use of this feature if this source indicates support "
5611 "for it, while <literal>force</literal> will enable the feature regardless of "
5612 "what the source indicates. Defaults to the value of the option of the same "
5613 "name for a specific index file defined in the "
5614 "<option>Acquire::IndexTargets</option> scope, which itself defaults to the "
5615 "value of configuration option <option>Acquire::By-Hash</option> which "
5616 "defaults to <literal>yes</literal>."
5619 #. type: Content of: <refentry><refsect1><para>
5620 #: sources.list.5.xml:1
5622 "Furthermore, there are options which if set affect <emphasis>all</emphasis> "
5623 "sources with the same URI and Suite, so they have to be set on all such "
5624 "entries and can not be varied between different components. APT will try to "
5625 "detect and error out on such anomalies."
5628 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
5629 #: sources.list.5.xml:1
5631 "<option>Allow-Insecure</option> (<option>allow-insecure</option>), "
5632 "<option>Allow-Weak</option> (<option>allow-weak</option>) and "
5633 "<option>Allow-Downgrade-To-Insecure</option> "
5634 "(<option>allow-downgrade-to-insecure</option>) are boolean values which all "
5635 "default to <literal>no</literal>. If set to <literal>yes</literal> they "
5636 "circumvent parts of &apt-secure; and should therefore not be used lightly!"
5639 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
5640 #: sources.list.5.xml:1
5642 "<option>Trusted</option> (<option>trusted</option>) is a tri-state value "
5643 "which defaults to APT deciding if a source is considered trusted or if "
5644 "warnings should be raised before e.g. packages are installed from this "
5645 "source. This option can be used to override that decision. The value "
5646 "<literal>yes</literal> tells APT always to consider this source as trusted, "
5647 "even if it doesn't pass authentication checks. It disables parts of "
5648 "&apt-secure;, and should therefore only be used in a local and trusted "
5649 "context (if at all) as otherwise security is breached. The value "
5650 "<literal>no</literal> does the opposite, causing the source to be handled as "
5651 "untrusted even if the authentication checks passed successfully. The default "
5652 "value can't be set explicitly."
5655 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
5656 #: sources.list.5.xml:1
5658 "<option>Signed-By</option> (<option>signed-by</option>) is either an "
5659 "absolute path to a keyring file (has to be accessible and readable for the "
5660 "<literal>_apt</literal> user, so ensure everyone has read-permissions on the "
5661 "file) or one or more fingerprints of keys either in the "
5662 "<filename>trusted.gpg</filename> keyring or in the keyrings in the "
5663 "<filename>trusted.gpg.d/</filename> directory (see <command>apt-key "
5664 "fingerprint</command>). If the option is set, only the key(s) in this "
5665 "keyring or only the keys with these fingerprints are used for the "
5666 "&apt-secure; verification of this repository. Defaults to the value of the "
5667 "option with the same name if set in the previously acquired "
5668 "<filename>Release</filename> file. Otherwise all keys in the trusted "
5669 "keyrings are considered valid signers for this repository."
5672 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
5673 #: sources.list.5.xml:1
5675 "<option>Check-Valid-Until</option> (<option>check-valid-until</option>) is "
5676 "a yes/no value which controls if APT should try to detect replay attacks. A "
5677 "repository creator can declare a time until which the data provided in the "
5678 "repository should be considered valid, and if this time is reached, but no "
5679 "new data is provided, the data is considered expired and an error is "
5680 "raised. Besides increasing security, as a malicious attacker can't send old "
5681 "data forever to prevent a user from upgrading to a new version, this also "
5682 "helps users identify mirrors which are no longer updated. However, some "
5683 "repositories such as historic archives are not updated any more by design, "
5684 "so this check can be disabled by setting this option to "
5685 "<literal>no</literal>. Defaults to the value of configuration option "
5686 "<option>Acquire::Check-Valid-Until</option> which itself defaults to "
5687 "<literal>yes</literal>."
5690 #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para>
5691 #: sources.list.5.xml:1
5693 "<option>Valid-Until-Min</option> (<option>valid-until-min</option>) and "
5694 "<option>Valid-Until-Max</option> (<option>valid-until-max</option>) can be "
5695 "used to raise or lower the time period in seconds in which the data from "
5696 "this repository is considered valid. -Max can be especially useful if the "
5697 "repository provides no Valid-Until field on its Release file to set your own "
5698 "value, while -Min can be used to increase the valid time on seldom updated "
5699 "(local) mirrors of a more frequently updated but less accessible archive "
5700 "(which is in the sources.list as well) instead of disabling the check "
5701 "entirely. Default to the value of the configuration options "
5702 "<option>Acquire::Min-ValidTime</option> and "
5703 "<option>Acquire::Max-ValidTime</option> which are both unset by default."
5706 #. type: Content of: <refentry><refsect1><title>
5707 #: sources.list.5.xml:1
5708 msgid "URI Specification"
5711 #. type: Content of: <refentry><refsect1><para>
5712 #: sources.list.5.xml:1
5713 msgid "The currently recognized URI types are:"
5716 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5717 #: sources.list.5.xml:1
5719 "The file scheme allows an arbitrary directory in the file system to be "
5720 "considered an archive. This is useful for NFS mounts and local mirrors or "
5724 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5725 #: sources.list.5.xml:1
5727 "The cdrom scheme allows APT to use a local CD-ROM drive with media "
5728 "swapping. Use the &apt-cdrom; program to create cdrom entries in the source "
5732 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5733 #: sources.list.5.xml:1
5735 "The http scheme specifies an HTTP server for the archive. If an environment "
5736 "variable <envar>http_proxy</envar> is set with the format "
5737 "http://server:port/, the proxy server specified in <envar>http_proxy</envar> "
5738 "will be used. Users of authenticated HTTP/1.1 proxies may use a string of "
5739 "the format http://user:pass@server:port/. Note that this is an insecure "
5740 "method of authentication."
5743 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5744 #: sources.list.5.xml:1
5746 "The ftp scheme specifies an FTP server for the archive. APT's FTP behavior "
5747 "is highly configurable; for more information see the &apt-conf; manual "
5748 "page. Please note that an FTP proxy can be specified by using the "
5749 "<envar>ftp_proxy</envar> environment variable. It is possible to specify an "
5750 "HTTP proxy (HTTP proxy servers often understand FTP URLs) using this "
5751 "environment variable and <emphasis>only</emphasis> this environment "
5752 "variable. Proxies using HTTP specified in the configuration file will be "
5756 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5757 #: sources.list.5.xml:1
5759 "The copy scheme is identical to the file scheme except that packages are "
5760 "copied into the cache directory instead of used directly at their location. "
5761 "This is useful for people using removable media to copy files around with "
5765 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5766 #: sources.list.5.xml:1
5768 "The rsh/ssh method invokes RSH/SSH to connect to a remote host and access "
5769 "the files as a given user. Prior configuration of rhosts or RSA keys is "
5770 "recommended. The standard <command>find</command> and <command>dd</command> "
5771 "commands are used to perform the file transfers from the remote host."
5774 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><term>
5775 #: sources.list.5.xml:1
5776 msgid "adding more recognizable URI types"
5779 #. type: Content of: <refentry><refsect1><para><variablelist><varlistentry><listitem><para>
5780 #: sources.list.5.xml:1
5782 "APT can be extended with more methods shipped in other optional packages, "
5783 "which should follow the naming scheme "
5784 "<package>apt-transport-<replaceable>method</replaceable></package>. For "
5785 "instance, the APT team also maintains the package "
5786 "<package>apt-transport-https</package>, which provides access methods for "
5787 "HTTPS URIs with features similar to the http method. Methods for using "
5788 "e.g. debtorrent are also available - see &apt-transport-debtorrent;."
5791 #. type: Content of: <refentry><refsect1><para>
5792 #: sources.list.5.xml:1
5794 "Uses the archive stored locally (or NFS mounted) at /home/apt/debian for "
5795 "stable/main, stable/contrib, and stable/non-free."
5798 #. type: Content of: <refentry><refsect1><literallayout>
5799 #: sources.list.5.xml:1
5801 msgid "deb file:/home/apt/debian stable main contrib non-free"
5804 #. type: Content of: <refentry><refsect1><literallayout>
5805 #: sources.list.5.xml:1
5809 "URIs: file:/home/apt/debian\n"
5811 "Components: main contrib non-free"
5814 #. type: Content of: <refentry><refsect1><para>
5815 #: sources.list.5.xml:1
5816 msgid "As above, except this uses the unstable (development) distribution."
5819 #. type: Content of: <refentry><refsect1><literallayout>
5820 #: sources.list.5.xml:1
5822 msgid "deb file:/home/apt/debian unstable main contrib non-free"
5825 #. type: Content of: <refentry><refsect1><literallayout>
5826 #: sources.list.5.xml:1
5830 "URIs: file:/home/apt/debian\n"
5831 "Suites: unstable\n"
5832 "Components: main contrib non-free"
5835 #. type: Content of: <refentry><refsect1><para>
5836 #: sources.list.5.xml:1
5837 msgid "Sources specification for the above."
5840 #. type: Content of: <refentry><refsect1><literallayout>
5841 #: sources.list.5.xml:1
5843 msgid "deb-src file:/home/apt/debian unstable main contrib non-free"
5846 #. type: Content of: <refentry><refsect1><literallayout>
5847 #: sources.list.5.xml:1
5851 "URIs: file:/home/apt/debian\n"
5852 "Suites: unstable\n"
5853 "Components: main contrib non-free"
5856 #. type: Content of: <refentry><refsect1><para>
5857 #: sources.list.5.xml:1
5859 "The first line gets package information for the architectures in "
5860 "<literal>APT::Architectures</literal> while the second always retrieves "
5861 "<literal>amd64</literal> and <literal>armel</literal>."
5864 #. type: Content of: <refentry><refsect1><literallayout>
5865 #: sources.list.5.xml:1
5868 "deb http://httpredir.debian.org/debian &debian-stable-codename; main\n"
5869 "deb [ arch=amd64,armel ] http://httpredir.debian.org/debian "
5870 "&debian-stable-codename; main"
5873 #. type: Content of: <refentry><refsect1><literallayout>
5874 #: sources.list.5.xml:1
5878 "URIs: http://httpredir.debian.org/debian\n"
5879 "Suites: &debian-stable-codename;\n"
5880 "Components: main\n"
5883 "URIs: http://httpredir.debian.org/debian\n"
5884 "Suites: &debian-stable-codename;\n"
5885 "Components: main\n"
5886 "Architectures: amd64 armel\n"
5889 #. type: Content of: <refentry><refsect1><para>
5890 #: sources.list.5.xml:1
5892 "Uses HTTP to access the archive at archive.debian.org, and uses only the "
5896 #. type: Content of: <refentry><refsect1><literallayout>
5897 #: sources.list.5.xml:1
5899 msgid "deb http://archive.debian.org/debian-archive hamm main"
5902 #. type: Content of: <refentry><refsect1><literallayout>
5903 #: sources.list.5.xml:1
5907 "URIs: http://archive.debian.org/debian-archive\n"
5912 #. type: Content of: <refentry><refsect1><para>
5913 #: sources.list.5.xml:1
5915 "Uses FTP to access the archive at ftp.debian.org, under the debian "
5916 "directory, and uses only the &debian-stable-codename;/contrib area."
5919 #. type: Content of: <refentry><refsect1><literallayout>
5920 #: sources.list.5.xml:1
5922 msgid "deb ftp://ftp.debian.org/debian &debian-stable-codename; contrib"
5925 #. type: Content of: <refentry><refsect1><literallayout>
5926 #: sources.list.5.xml:1
5930 "URIs: ftp://ftp.debian.org/debian\n"
5931 "Suites: &debian-stable-codename;\n"
5932 "Components: contrib"
5935 #. type: Content of: <refentry><refsect1><para>
5936 #: sources.list.5.xml:1
5938 "Uses FTP to access the archive at ftp.debian.org, under the debian "
5939 "directory, and uses only the unstable/contrib area. If this line appears as "
5940 "well as the one in the previous example in <filename>sources.list</filename> "
5941 "a single FTP session will be used for both resource lines."
5944 #. type: Content of: <refentry><refsect1><literallayout>
5945 #: sources.list.5.xml:1
5947 msgid "deb ftp://ftp.debian.org/debian unstable contrib"
5950 #. type: Content of: <refentry><refsect1><literallayout>
5951 #: sources.list.5.xml:1
5955 "URIs: ftp://ftp.debian.org/debian\n"
5956 "Suites: unstable\n"
5957 "Components: contrib"
5960 #. type: Content of: <refentry><refsect1><para><literallayout>
5961 #: sources.list.5.xml:1
5963 msgid "deb http://ftp.tlh.debian.org/universe unstable/binary-$(ARCH)/"
5966 #. type: Content of: <refentry><refsect1><para><literallayout>
5967 #: sources.list.5.xml:1
5971 "URIs: http://ftp.tlh.debian.org/universe\n"
5972 "Suites: unstable/binary-$(ARCH)/"
5975 #. type: Content of: <refentry><refsect1><para>
5976 #: sources.list.5.xml:1
5978 "Uses HTTP to access the archive at ftp.tlh.debian.org, under the universe "
5979 "directory, and uses only files found under "
5980 "<filename>unstable/binary-i386</filename> on i386 machines, "
5981 "<filename>unstable/binary-amd64</filename> on amd64, and so forth for other "
5982 "supported architectures. [Note this example only illustrates how to use the "
5983 "substitution variable; official debian archives are not structured like "
5984 "this] <placeholder type=\"literallayout\" id=\"0\"/> <placeholder "
5985 "type=\"literallayout\" id=\"1\"/>"
5988 #. type: Content of: <refentry><refsect1><para>
5989 #: sources.list.5.xml:1
5991 "Uses HTTP to get binary packages as well as sources from the stable, testing "
5992 "and unstable suites and the components main and contrib."
5995 #. type: Content of: <refentry><refsect1><literallayout>
5996 #: sources.list.5.xml:1
5999 "deb http://httpredir.debian.org/debian stable main contrib\n"
6000 "deb-src http://httpredir.debian.org/debian stable main contrib\n"
6001 "deb http://httpredir.debian.org/debian testing main contrib\n"
6002 "deb-src http://httpredir.debian.org/debian testing main contrib\n"
6003 "deb http://httpredir.debian.org/debian unstable main contrib\n"
6004 "deb-src http://httpredir.debian.org/debian unstable main contrib"
6007 #. type: Content of: <refentry><refsect1><literallayout>
6008 #: sources.list.5.xml:1
6011 "Types: deb deb-src\n"
6012 "URIs: http://httpredir.debian.org/debian\n"
6013 "Suites: stable testing unstable\n"
6014 "Components: main contrib\n"
6017 #. type: Content of: <refentry><refsect1><para>
6018 #: sources.list.5.xml:1
6019 msgid "&apt-get;, &apt-conf;, &apt-acquire-additional-files;"
6022 #. type: Content of: <refentry><refmeta><manvolnum>
6023 #: apt-extracttemplates.1.xml:1 apt-sortpkgs.1.xml:1 apt-ftparchive.1.xml:1
6027 #. type: Content of: <refentry><refnamediv><refpurpose>
6028 #: apt-extracttemplates.1.xml:1
6030 "Utility to extract <command>debconf</command> config and templates from "
6034 #. type: Content of: <refentry><refsect1><para>
6035 #: apt-extracttemplates.1.xml:1
6037 "<command>apt-extracttemplates</command> will take one or more Debian package "
6038 "files as input and write out (to a temporary directory) all associated "
6039 "config scripts and template files. For each passed in package that contains "
6040 "config scripts and templates, one line of output will be generated in the "
6044 #. type: Content of: <refentry><refsect1><para>
6045 #: apt-extracttemplates.1.xml:1
6046 msgid "package version template-file config-script"
6049 #. type: Content of: <refentry><refsect1><para>
6050 #: apt-extracttemplates.1.xml:1
6052 "template-file and config-script are written to the temporary directory "
6053 "specified by the <option>-t</option> or <option>--tempdir</option> "
6054 "(<literal>APT::ExtractTemplates::TempDir</literal>) directory, with "
6055 "filenames of the form <filename>package.template.XXXXXX</filename> and "
6056 "<filename>package.config.XXXXXX</filename>"
6059 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6060 #: apt-extracttemplates.1.xml:1
6062 "Temporary directory in which to write extracted <command>debconf</command> "
6063 "template files and config scripts. Configuration Item: "
6064 "<literal>APT::ExtractTemplates::TempDir</literal>"
6067 #. type: Content of: <refentry><refsect1><para>
6068 #: apt-extracttemplates.1.xml:1
6070 "<command>apt-extracttemplates</command> returns zero on normal operation, "
6071 "decimal 100 on error."
6074 #. type: Content of: <refentry><refnamediv><refpurpose>
6075 #: apt-sortpkgs.1.xml:1
6076 msgid "Utility to sort package index files"
6079 #. type: Content of: <refentry><refsect1><para>
6080 #: apt-sortpkgs.1.xml:1
6082 "<command>apt-sortpkgs</command> will take an index file (source index or "
6083 "package index) and sort the records so that they are ordered by the package "
6084 "name. It will also sort the internal fields of each record according to the "
6085 "internal sorting rules."
6088 #. type: Content of: <refentry><refsect1><para>
6089 #: apt-sortpkgs.1.xml:1
6090 msgid "All output is sent to standard output; the input must be a seekable file."
6093 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6094 #: apt-sortpkgs.1.xml:1
6096 "Use source index field ordering. Configuration Item: "
6097 "<literal>APT::SortPkgs::Source</literal>."
6100 #. type: Content of: <refentry><refsect1><para>
6101 #: apt-sortpkgs.1.xml:1
6103 "<command>apt-sortpkgs</command> returns zero on normal operation, decimal "
6107 #. type: Content of: <refentry><refnamediv><refpurpose>
6108 #: apt-ftparchive.1.xml:1
6109 msgid "Utility to generate index files"
6112 #. type: Content of: <refentry><refsect1><para>
6113 #: apt-ftparchive.1.xml:1
6115 "<command>apt-ftparchive</command> is the command line tool that generates "
6116 "the index files that APT uses to access a distribution source. The index "
6117 "files should be generated on the origin site based on the content of that "
6121 #. type: Content of: <refentry><refsect1><para>
6122 #: apt-ftparchive.1.xml:1
6124 "<command>apt-ftparchive</command> is a superset of the &dpkg-scanpackages; "
6125 "program, incorporating its entire functionality via the "
6126 "<literal>packages</literal> command. It also contains a contents file "
6127 "generator, <literal>contents</literal>, and an elaborate means to 'script' "
6128 "the generation process for a complete archive."
6131 #. type: Content of: <refentry><refsect1><para>
6132 #: apt-ftparchive.1.xml:1
6134 "Internally <command>apt-ftparchive</command> can make use of binary "
6135 "databases to cache the contents of a .deb file and it does not rely on any "
6136 "external programs aside from &gzip;. When doing a full generate it "
6137 "automatically performs file-change checks and builds the desired compressed "
6141 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6142 #: apt-ftparchive.1.xml:1
6144 "The packages command generates a package file from a directory tree. It "
6145 "takes the given directory and recursively searches it for .deb files, "
6146 "emitting a package record to stdout for each. This command is approximately "
6147 "equivalent to &dpkg-scanpackages;."
6150 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6151 #: apt-ftparchive.1.xml:1 apt-ftparchive.1.xml:1
6152 msgid "The option <option>--db</option> can be used to specify a binary caching DB."
6155 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6156 #: apt-ftparchive.1.xml:1
6158 "The <literal>sources</literal> command generates a source index file from a "
6159 "directory tree. It takes the given directory and recursively searches it "
6160 "for .dsc files, emitting a source record to stdout for each. This command is "
6161 "approximately equivalent to &dpkg-scansources;."
6164 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6165 #: apt-ftparchive.1.xml:1
6167 "If an override file is specified then a source override file will be looked "
6168 "for with an extension of .src. The --source-override option can be used to "
6169 "change the source override file that will be used."
6172 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6173 #: apt-ftparchive.1.xml:1
6175 "The <literal>contents</literal> command generates a contents file from a "
6176 "directory tree. It takes the given directory and recursively searches it for "
6177 ".deb files, and reads the file list from each file. It then sorts and writes "
6178 "to stdout the list of files matched to packages. Directories are not written "
6179 "to the output. If multiple packages own the same file then each package is "
6180 "separated by a comma in the output."
6183 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6184 #: apt-ftparchive.1.xml:1
6186 "The <literal>release</literal> command generates a Release file from a "
6187 "directory tree. It recursively searches the given directory for uncompressed "
6188 "and compressed <filename>Packages</filename>, <filename>Sources</filename>, "
6189 "<filename>Contents</filename>, <filename>Components</filename> and "
6190 "<filename>icons</filename> files as well as <filename>Release</filename>, "
6191 "<filename>Index</filename> and <filename>md5sum.txt</filename> files by "
6192 "default (<literal>APT::FTPArchive::Release::Default-Patterns</literal>). "
6193 "Additional filename patterns can be added by listing them in "
6194 "<literal>APT::FTPArchive::Release::Patterns</literal>. It then writes to "
6195 "stdout a <filename>Release</filename> file containing (by default) an MD5, "
6196 "SHA1, SHA256 and SHA512 digest for each file."
6199 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6200 #: apt-ftparchive.1.xml:1
6202 "Values for the additional metadata fields in the Release file are taken from "
6203 "the corresponding variables under "
6204 "<literal>APT::FTPArchive::Release</literal>, "
6205 "e.g. <literal>APT::FTPArchive::Release::Origin</literal>. The supported "
6206 "fields are <literal>Origin</literal>, <literal>Label</literal>, "
6207 "<literal>Suite</literal>, <literal>Version</literal>, "
6208 "<literal>Codename</literal>, <literal>Date</literal>, "
6209 "<literal>Valid-Until</literal>, <literal>Signed-By</literal>, "
6210 "<literal>Architectures</literal>, <literal>Components</literal> and "
6211 "<literal>Description</literal>."
6214 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6215 #: apt-ftparchive.1.xml:1
6217 "The <literal>generate</literal> command is designed to be runnable from a "
6218 "cron script and builds indexes according to the given config file. The "
6219 "config language provides a flexible means of specifying which index files "
6220 "are built from which directories, as well as providing a simple means of "
6221 "maintaining the required settings."
6224 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6225 #: apt-ftparchive.1.xml:1
6227 "The <literal>clean</literal> command tidies the databases used by the given "
6228 "configuration file by removing any records that are no longer necessary."
6231 #. type: Content of: <refentry><refsect1><title>
6232 #: apt-ftparchive.1.xml:1
6233 msgid "The Generate Configuration"
6236 #. type: Content of: <refentry><refsect1><para>
6237 #: apt-ftparchive.1.xml:1
6239 "The <literal>generate</literal> command uses a configuration file to "
6240 "describe the archives that are going to be generated. It follows the typical "
6241 "ISC configuration format as seen in ISC tools like bind 8 and dhcpd. "
6242 "&apt-conf; contains a description of the syntax. Note that the generate "
6243 "configuration is parsed in sectional manner, but &apt-conf; is parsed in a "
6244 "tree manner. This only effects how the scope tag is handled."
6247 #. type: Content of: <refentry><refsect1><para>
6248 #: apt-ftparchive.1.xml:1
6249 msgid "The generate configuration has four separate sections, each described below."
6252 #. type: Content of: <refentry><refsect1><refsect2><title>
6253 #: apt-ftparchive.1.xml:1
6254 msgid "<literal>Dir</literal> Section"
6257 #. type: Content of: <refentry><refsect1><refsect2><para>
6258 #: apt-ftparchive.1.xml:1
6260 "The <literal>Dir</literal> section defines the standard directories needed "
6261 "to locate the files required during the generation process. These "
6262 "directories are prepended certain relative paths defined in later sections "
6263 "to produce a complete an absolute path."
6266 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6267 #: apt-ftparchive.1.xml:1
6269 "Specifies the root of the FTP archive, in a standard Debian configuration "
6270 "this is the directory that contains the <filename>ls-LR</filename> and dist "
6274 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6275 #: apt-ftparchive.1.xml:1
6276 msgid "Specifies the location of the override files."
6279 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6280 #: apt-ftparchive.1.xml:1
6281 msgid "Specifies the location of the cache files."
6284 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6285 #: apt-ftparchive.1.xml:1
6287 "Specifies the location of the file list files, if the "
6288 "<literal>FileList</literal> setting is used below."
6291 #. type: Content of: <refentry><refsect1><refsect2><title>
6292 #: apt-ftparchive.1.xml:1
6293 msgid "<literal>Default</literal> Section"
6296 #. type: Content of: <refentry><refsect1><refsect2><para>
6297 #: apt-ftparchive.1.xml:1
6299 "The <literal>Default</literal> section specifies default values, and "
6300 "settings that control the operation of the generator. Other sections may "
6301 "override these defaults with a per-section setting."
6304 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6305 #: apt-ftparchive.1.xml:1
6307 "Sets the default compression schemes to use for the package index files. It "
6308 "is a string that contains a space separated list of at least one of the "
6309 "compressors configured via the <option>APT::Compressor</option> "
6310 "configuration scope. The default for all compression schemes is '. gzip'."
6313 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6314 #: apt-ftparchive.1.xml:1
6316 "Sets the default list of file extensions that are package files. This "
6317 "defaults to '.deb'."
6320 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6321 #: apt-ftparchive.1.xml:1
6323 "This is similar to <literal>Packages::Compress</literal> except that it "
6324 "controls the compression for the Sources files."
6327 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6328 #: apt-ftparchive.1.xml:1
6330 "Sets the default list of file extensions that are source files. This "
6331 "defaults to '.dsc'."
6334 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6335 #: apt-ftparchive.1.xml:1
6337 "This is similar to <literal>Packages::Compress</literal> except that it "
6338 "controls the compression for the Contents files."
6341 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6342 #: apt-ftparchive.1.xml:1
6344 "This is similar to <literal>Packages::Compress</literal> except that it "
6345 "controls the compression for the Translation-en master file."
6348 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6349 #: apt-ftparchive.1.xml:1
6351 "Specifies the number of kilobytes to delink (and replace with hard links) "
6352 "per run. This is used in conjunction with the per-section "
6353 "<literal>External-Links</literal> setting."
6356 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6357 #: apt-ftparchive.1.xml:1
6359 "Specifies the mode of all created index files. It defaults to 0644. All "
6360 "index files are set to this mode with no regard to the umask."
6363 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6364 #: apt-ftparchive.1.xml:1 apt-ftparchive.1.xml:1
6366 "Specifies whether long descriptions should be included in the "
6367 "<filename>Packages</filename> file or split out into a master "
6368 "<filename>Translation-en</filename> file."
6371 #. type: Content of: <refentry><refsect1><refsect2><title>
6372 #: apt-ftparchive.1.xml:1
6373 msgid "<literal>TreeDefault</literal> Section"
6376 #. type: Content of: <refentry><refsect1><refsect2><para>
6377 #: apt-ftparchive.1.xml:1
6379 "Sets defaults specific to <literal>Tree</literal> sections. All of these "
6380 "variables are substitution variables and have the strings $(DIST), "
6381 "$(SECTION) and $(ARCH) replaced with their respective values."
6384 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6385 #: apt-ftparchive.1.xml:1
6387 "Sets the number of kilobytes of contents files that are generated each "
6388 "day. The contents files are round-robined so that over several days they "
6389 "will all be rebuilt."
6392 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6393 #: apt-ftparchive.1.xml:1
6395 "Controls the number of days a contents file is allowed to be checked without "
6396 "changing. If this limit is passed the mtime of the contents file is "
6397 "updated. This case can occur if the package file is changed in such a way "
6398 "that does not result in a new contents file [override edit for instance]. A "
6399 "hold off is allowed in hopes that new .debs will be installed, requiring a "
6400 "new file anyhow. The default is 10, the units are in days."
6403 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6404 #: apt-ftparchive.1.xml:1
6406 "Sets the top of the .deb directory tree. Defaults to "
6407 "<filename>$(DIST)/$(SECTION)/binary-$(ARCH)/</filename>"
6410 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6411 #: apt-ftparchive.1.xml:1
6413 "Sets the top of the source package directory tree. Defaults to "
6414 "<filename>$(DIST)/$(SECTION)/source/</filename>"
6417 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6418 #: apt-ftparchive.1.xml:1
6420 "Sets the output Packages file. Defaults to "
6421 "<filename>$(DIST)/$(SECTION)/binary-$(ARCH)/Packages</filename>"
6424 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6425 #: apt-ftparchive.1.xml:1
6427 "Sets the output Sources file. Defaults to "
6428 "<filename>$(DIST)/$(SECTION)/source/Sources</filename>"
6431 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6432 #: apt-ftparchive.1.xml:1
6434 "Sets the output Translation-en master file with the long descriptions if "
6435 "they should be not included in the Packages file. Defaults to "
6436 "<filename>$(DIST)/$(SECTION)/i18n/Translation-en</filename>"
6439 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6440 #: apt-ftparchive.1.xml:1
6442 "Sets the path prefix that causes a symlink to be considered an internal link "
6443 "instead of an external link. Defaults to "
6444 "<filename>$(DIST)/$(SECTION)/</filename>"
6447 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6448 #: apt-ftparchive.1.xml:1
6450 "Sets the output Contents file. Defaults to "
6451 "<filename>$(DIST)/$(SECTION)/Contents-$(ARCH)</filename>. If this setting "
6452 "causes multiple Packages files to map onto a single Contents file (as is the "
6453 "default) then <command>apt-ftparchive</command> will integrate those "
6454 "package files together automatically."
6457 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6458 #: apt-ftparchive.1.xml:1
6459 msgid "Sets header file to prepend to the contents output."
6462 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6463 #: apt-ftparchive.1.xml:1
6465 "Sets the binary cache database to use for this section. Multiple sections "
6466 "can share the same database."
6469 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6470 #: apt-ftparchive.1.xml:1
6472 "Specifies that instead of walking the directory tree, "
6473 "<command>apt-ftparchive</command> should read the list of files from the "
6474 "given file. Relative files names are prefixed with the archive directory."
6477 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6478 #: apt-ftparchive.1.xml:1
6480 "Specifies that instead of walking the directory tree, "
6481 "<command>apt-ftparchive</command> should read the list of files from the "
6482 "given file. Relative files names are prefixed with the archive directory. "
6483 "This is used when processing source indexes."
6486 #. type: Content of: <refentry><refsect1><refsect2><title>
6487 #: apt-ftparchive.1.xml:1
6488 msgid "<literal>Tree</literal> Section"
6491 #. type: Content of: <refentry><refsect1><refsect2><para>
6492 #: apt-ftparchive.1.xml:1
6494 "The <literal>Tree</literal> section defines a standard Debian file tree "
6495 "which consists of a base directory, then multiple sections in that base "
6496 "directory and finally multiple Architectures in each section. The exact "
6497 "pathing used is defined by the <literal>Directory</literal> substitution "
6501 #. type: Content of: <refentry><refsect1><refsect2><para>
6502 #: apt-ftparchive.1.xml:1
6504 "The <literal>Tree</literal> section takes a scope tag which sets the "
6505 "<literal>$(DIST)</literal> variable and defines the root of the tree (the "
6506 "path is prefixed by <literal>ArchiveDir</literal>). Typically this is a "
6507 "setting such as <filename>dists/&debian-stable-codename;</filename>."
6510 #. type: Content of: <refentry><refsect1><refsect2><para>
6511 #: apt-ftparchive.1.xml:1
6513 "All of the settings defined in the <literal>TreeDefault</literal> section "
6514 "can be used in a <literal>Tree</literal> section as well as three new "
6518 #. type: Content of: <refentry><refsect1><refsect2><para><programlisting>
6519 #: apt-ftparchive.1.xml:1
6522 "for i in Sections do \n"
6523 " for j in Architectures do\n"
6524 " Generate for DIST=scope SECTION=i ARCH=j\n"
6528 #. type: Content of: <refentry><refsect1><refsect2><para>
6529 #: apt-ftparchive.1.xml:1
6531 "When processing a <literal>Tree</literal> section "
6532 "<command>apt-ftparchive</command> performs an operation similar to: "
6533 "<placeholder type=\"programlisting\" id=\"0\"/>"
6536 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6537 #: apt-ftparchive.1.xml:1
6539 "This is a space separated list of sections which appear under the "
6540 "distribution; typically this is something like <literal>main contrib "
6541 "non-free</literal>"
6544 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6545 #: apt-ftparchive.1.xml:1
6547 "This is a space separated list of all the architectures that appear under "
6548 "search section. The special architecture 'source' is used to indicate that "
6549 "this tree has a source archive. The architecture 'all' signals that "
6550 "architecture specific files like <filename>Packages</filename> should not "
6551 "include information about architecture <literal>all</literal> packages in "
6552 "all files as they will be available in a dedicated file."
6555 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6556 #: apt-ftparchive.1.xml:1
6558 "Sets the binary override file. The override file contains section, priority "
6559 "and maintainer address information."
6562 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6563 #: apt-ftparchive.1.xml:1
6565 "Sets the source override file. The override file contains section "
6569 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6570 #: apt-ftparchive.1.xml:1 apt-ftparchive.1.xml:1
6571 msgid "Sets the binary extra override file."
6574 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6575 #: apt-ftparchive.1.xml:1 apt-ftparchive.1.xml:1
6576 msgid "Sets the source extra override file."
6579 #. type: Content of: <refentry><refsect1><refsect2><title>
6580 #: apt-ftparchive.1.xml:1
6581 msgid "<literal>BinDirectory</literal> Section"
6584 #. type: Content of: <refentry><refsect1><refsect2><para>
6585 #: apt-ftparchive.1.xml:1
6587 "The <literal>bindirectory</literal> section defines a binary directory tree "
6588 "with no special structure. The scope tag specifies the location of the "
6589 "binary directory and the settings are similar to the <literal>Tree</literal> "
6590 "section with no substitution variables or "
6591 "<literal>Section</literal><literal>Architecture</literal> settings."
6594 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6595 #: apt-ftparchive.1.xml:1
6596 msgid "Sets the Packages file output."
6599 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6600 #: apt-ftparchive.1.xml:1
6602 "Sets the Sources file output. At least one of <literal>Packages</literal> or "
6603 "<literal>Sources</literal> is required."
6606 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6607 #: apt-ftparchive.1.xml:1
6608 msgid "Sets the Contents file output (optional)."
6611 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6612 #: apt-ftparchive.1.xml:1
6613 msgid "Sets the binary override file."
6616 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6617 #: apt-ftparchive.1.xml:1
6618 msgid "Sets the source override file."
6621 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6622 #: apt-ftparchive.1.xml:1
6623 msgid "Sets the cache DB."
6626 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6627 #: apt-ftparchive.1.xml:1
6628 msgid "Appends a path to all the output paths."
6631 #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para>
6632 #: apt-ftparchive.1.xml:1
6633 msgid "Specifies the file list file."
6636 #. type: Content of: <refentry><refsect1><title>
6637 #: apt-ftparchive.1.xml:1
6638 msgid "The Binary Override File"
6641 #. type: Content of: <refentry><refsect1><para>
6642 #: apt-ftparchive.1.xml:1
6644 "The binary override file is fully compatible with &dpkg-scanpackages;. It "
6645 "contains four fields separated by spaces. The first field is the package "
6646 "name, the second is the priority to force that package to, the third is the "
6647 "section to force that package to and the final field is the maintainer "
6648 "permutation field."
6651 #. type: Content of: <refentry><refsect1><para><literallayout>
6652 #: apt-ftparchive.1.xml:1
6654 msgid "old [// oldn]* => new"
6657 #. type: Content of: <refentry><refsect1><para><literallayout>
6658 #: apt-ftparchive.1.xml:1
6663 #. type: Content of: <refentry><refsect1><para>
6664 #: apt-ftparchive.1.xml:1
6666 "The general form of the maintainer field is: <placeholder "
6667 "type=\"literallayout\" id=\"0\"/> or simply, <placeholder "
6668 "type=\"literallayout\" id=\"1\"/> The first form allows a double-slash "
6669 "separated list of old email addresses to be specified. If any of those are "
6670 "found then new is substituted for the maintainer field. The second form "
6671 "unconditionally substitutes the maintainer field."
6674 #. type: Content of: <refentry><refsect1><title>
6675 #: apt-ftparchive.1.xml:1
6676 msgid "The Source Override File"
6679 #. type: Content of: <refentry><refsect1><para>
6680 #: apt-ftparchive.1.xml:1
6682 "The source override file is fully compatible with &dpkg-scansources;. It "
6683 "contains two fields separated by spaces. The first field is the source "
6684 "package name, the second is the section to assign it."
6687 #. type: Content of: <refentry><refsect1><title>
6688 #: apt-ftparchive.1.xml:1
6689 msgid "The Extra Override File"
6692 #. type: Content of: <refentry><refsect1><para>
6693 #: apt-ftparchive.1.xml:1
6695 "The extra override file allows any arbitrary tag to be added or replaced in "
6696 "the output. It has three columns, the first is the package, the second is "
6697 "the tag and the remainder of the line is the new value."
6700 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6701 #: apt-ftparchive.1.xml:1
6703 "Generate the given checksum. These options default to on, when turned off "
6704 "the generated index files will not have the checksum fields where possible. "
6705 "Configuration Items: "
6706 "<literal>APT::FTPArchive::<replaceable>Checksum</replaceable></literal> and "
6707 "<literal>APT::FTPArchive::<replaceable>Index</replaceable>::<replaceable>Checksum</replaceable></literal> "
6708 "where <literal><replaceable>Index</replaceable></literal> can be "
6709 "<literal>Packages</literal>, <literal>Sources</literal> or "
6710 "<literal>Release</literal> and "
6711 "<literal><replaceable>Checksum</replaceable></literal> can be "
6712 "<literal>MD5</literal>, <literal>SHA1</literal>, <literal>SHA256</literal> "
6713 "or <literal>SHA512</literal>."
6716 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6717 #: apt-ftparchive.1.xml:1
6719 "Use a binary caching DB. This has no effect on the generate command. "
6720 "Configuration Item: <literal>APT::FTPArchive::DB</literal>."
6723 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6724 #: apt-ftparchive.1.xml:1
6726 "Quiet; produces output suitable for logging, omitting progress indicators. "
6727 "More q's will produce more quiet up to a maximum of 2. You can also use "
6728 "<option>-q=#</option> to set the quiet level, overriding the configuration "
6729 "file. Configuration Item: <literal>quiet</literal>."
6732 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6733 #: apt-ftparchive.1.xml:1
6735 "Perform Delinking. If the <literal>External-Links</literal> setting is used "
6736 "then this option actually enables delinking of the files. It defaults to on "
6737 "and can be turned off with <option>--no-delink</option>. Configuration "
6738 "Item: <literal>APT::FTPArchive::DeLinkAct</literal>."
6741 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6742 #: apt-ftparchive.1.xml:1
6744 "Perform contents generation. When this option is set and package indexes are "
6745 "being generated with a cache DB then the file listing will also be extracted "
6746 "and stored in the DB for later use. When using the generate command this "
6747 "option also allows the creation of any Contents files. The default is on. "
6748 "Configuration Item: <literal>APT::FTPArchive::Contents</literal>."
6751 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6752 #: apt-ftparchive.1.xml:1
6754 "Select the source override file to use with the <literal>sources</literal> "
6755 "command. Configuration Item: "
6756 "<literal>APT::FTPArchive::SourceOverride</literal>."
6759 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6760 #: apt-ftparchive.1.xml:1
6762 "Make the caching databases read only. Configuration Item: "
6763 "<literal>APT::FTPArchive::ReadOnlyDB</literal>."
6766 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6767 #: apt-ftparchive.1.xml:1
6769 "Accept in the <literal>packages</literal> and <literal>contents</literal> "
6770 "commands only package files matching <literal>*_arch.deb</literal> or "
6771 "<literal>*_all.deb</literal> instead of all package files in the given "
6772 "path. Configuration Item: <literal>APT::FTPArchive::Architecture</literal>."
6775 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6776 #: apt-ftparchive.1.xml:1
6778 "&apt-ftparchive; caches as much as possible of metadata in a cachedb. If "
6779 "packages are recompiled and/or republished with the same version again, this "
6780 "will lead to problems as the now outdated cached metadata like size and "
6781 "checksums will be used. With this option enabled this will no longer happen "
6782 "as it will be checked if the file was changed. Note that this option is set "
6783 "to \"<literal>false</literal>\" by default as it is not recommend to upload "
6784 "multiply versions/builds of a package with the same versionnumber, so in "
6785 "theory nobody will have these problems and therefore all these extra checks "
6789 #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para>
6790 #: apt-ftparchive.1.xml:1
6792 "This configuration option defaults to \"<literal>true</literal>\" and should "
6793 "only be set to <literal>\"false\"</literal> if the Archive generated with "
6794 "&apt-ftparchive; also provides <filename>Translation</filename> files. Note "
6795 "that the <filename>Translation-en</filename> master file can only be created "
6796 "in the generate command."
6799 #. type: Content of: <refentry><refsect1><para><programlisting>
6800 #: apt-ftparchive.1.xml:1
6803 "<command>apt-ftparchive</command> packages "
6804 "<replaceable>directory</replaceable> | <command>gzip</command> > "
6805 "<filename>Packages.gz</filename>\n"
6808 #. type: Content of: <refentry><refsect1><para>
6809 #: apt-ftparchive.1.xml:1
6811 "To create a compressed Packages file for a directory containing binary "
6812 "packages (.deb): <placeholder type=\"programlisting\" id=\"0\"/>"
6815 #. type: Content of: <refentry><refsect1><para>
6816 #: apt-ftparchive.1.xml:1
6818 "<command>apt-ftparchive</command> returns zero on normal operation, decimal "
6822 #. type: Attribute 'lang' of: <book>
6823 #: guide.dbk:1 offline.dbk:1
6827 #. type: Content of: <book><title>
6829 msgid "APT User's Guide"
6832 #. type: Content of: <book><bookinfo><authorgroup><author><personname>
6833 #: guide.dbk:1 offline.dbk:1
6834 msgid "Jason Gunthorpe"
6837 #. type: Content of: <book><bookinfo><authorgroup><author><email>
6838 #: guide.dbk:1 offline.dbk:1
6839 msgid "jgg@debian.org"
6842 #. type: Content of: <book><bookinfo><releaseinfo>
6843 #: guide.dbk:1 offline.dbk:1
6844 msgid "Version &apt-product-version;"
6847 #. type: Content of: <book><bookinfo><abstract><para>
6850 "This document provides an overview of how to use the the APT package "
6854 #. type: Content of: <book><bookinfo>
6856 msgid "<copyright><year>1998</year><holder>Jason Gunthorpe</holder></copyright>"
6859 #. type: Content of: <book><bookinfo><legalnotice><title>
6860 #: guide.dbk:1 offline.dbk:1
6861 msgid "License Notice"
6864 #. type: Content of: <book><bookinfo><legalnotice><para>
6865 #: guide.dbk:1 offline.dbk:1
6867 "\"APT\" and this document are free software; you can redistribute them "
6868 "and/or modify them under the terms of the GNU General Public License as "
6869 "published by the Free Software Foundation; either version 2 of the License, "
6870 "or (at your option) any later version."
6873 #. type: Content of: <book><bookinfo><legalnotice><para>
6874 #: guide.dbk:1 offline.dbk:1
6876 "For more details, on Debian systems, see the file "
6877 "/usr/share/common-licenses/GPL for the full license."
6880 #. type: Content of: <book><chapter><title>
6885 #. type: Content of: <book><chapter><para>
6888 "The APT package currently contains two sections, the APT "
6889 "<command>dselect</command> method and the <command>apt-get</command> command "
6890 "line user interface. Both provide a way to install and remove packages as "
6891 "well as download new packages from the Internet."
6894 #. type: Content of: <book><chapter><section><title>
6896 msgid "Anatomy of the Package System"
6899 #. type: Content of: <book><chapter><section><para>
6902 "The Debian packaging system has a large amount of information associated "
6903 "with each package to help assure that it integrates cleanly and easily into "
6904 "the system. The most prominent of its features is the dependency system."
6907 #. type: Content of: <book><chapter><section><para>
6910 "The dependency system allows individual programs to make use of shared "
6911 "elements in the system such as libraries. It simplifies placing infrequently "
6912 "used portions of a program in separate packages to reduce the number of "
6913 "things the average user is required to install. Also, it allows for choices "
6914 "in mail transport agents, X servers and so on."
6917 #. type: Content of: <book><chapter><section><para>
6920 "The first step to understanding the dependency system is to grasp the "
6921 "concept of a simple dependency. The meaning of a simple dependency is that a "
6922 "package requires another package to be installed at the same time to work "
6926 #. type: Content of: <book><chapter><section><para>
6929 "For instance, mailcrypt is an emacs extension that aids in encrypting email "
6930 "with GPG. Without GPGP installed mailcrypt is useless, so mailcrypt has a "
6931 "simple dependency on GPG. Also, because it is an emacs extension it has a "
6932 "simple dependency on emacs, without emacs it is completely useless."
6935 #. type: Content of: <book><chapter><section><para>
6938 "The other important dependency to understand is a conflicting dependency. It "
6939 "means that a package, when installed with another package, will not work and "
6940 "may possibly be extremely harmful to the system. As an example consider a "
6941 "mail transport agent such as sendmail, exim or qmail. It is not possible to "
6942 "have two mail transport agents installed because both need to listen to the "
6943 "network to receive mail. Attempting to install two will seriously damage the "
6944 "system so all mail transport agents have a conflicting dependency with all "
6945 "other mail transport agents."
6948 #. type: Content of: <book><chapter><section><para>
6951 "As an added complication there is the possibility for a package to pretend "
6952 "to be another package. Consider that exim and sendmail for many intents are "
6953 "identical, they both deliver mail and understand a common interface. Hence, "
6954 "the package system has a way for them to declare that they are both "
6955 "mail-transport-agents. So, exim and sendmail both declare that they provide "
6956 "a mail-transport-agent and other packages that need a mail transport agent "
6957 "depend on mail-transport-agent. This can add a great deal of confusion when "
6958 "trying to manually fix packages."
6961 #. type: Content of: <book><chapter><section><para>
6964 "At any given time a single dependency may be met by packages that are "
6965 "already installed or it may not be. APT attempts to help resolve dependency "
6966 "issues by providing a number of automatic algorithms that help in selecting "
6967 "packages for installation."
6970 #. type: Content of: <book><chapter><title>
6975 #. type: Content of: <book><chapter><para>
6978 "<command>apt-get</command> provides a simple way to install packages from "
6979 "the command line. Unlike <command>dpkg</command>, <command>apt-get</command> "
6980 "does not understand .deb files, it works with the package's proper name and "
6981 "can only install .deb archives from a <emphasis>Source</emphasis>."
6984 #. type: Content of: <book><chapter><para><footnote><para>
6987 "If you are using an http proxy server you must set the http_proxy "
6988 "environment variable first, see sources.list(5)"
6991 #. type: Content of: <book><chapter><para>
6994 "The first <placeholder type=\"footnote\" id=\"0\"/> thing that should be "
6995 "done before using <command>apt-get</command> is to fetch the package lists "
6996 "from the <emphasis>Sources</emphasis> so that it knows what packages are "
6997 "available. This is done with <literal>apt-get update</literal>. For "
7001 #. type: Content of: <book><chapter><screen>
7005 "# apt-get update\n"
7006 "Get http://ftp.de.debian.org/debian-non-US/ stable/binary-i386/ Packages\n"
7007 "Get http://llug.sep.bnl.gov/debian/ testing/contrib Packages\n"
7008 "Reading Package Lists... Done\n"
7009 "Building Dependency Tree... Done\n"
7012 #. type: Content of: <book><chapter><para>
7014 msgid "Once updated there are several commands that can be used:"
7017 #. type: Content of: <book><chapter><variablelist><varlistentry><term>
7022 #. type: Content of: <book><chapter><variablelist><varlistentry><listitem><para>
7025 "Upgrade will attempt to gently upgrade the whole system. Upgrade will never "
7026 "install a new package or remove an existing package, nor will it ever "
7027 "upgrade a package that might cause some other package to break. This can be "
7028 "used daily to relatively safely upgrade the system. Upgrade will list all of "
7029 "the packages that it could not upgrade, this usually means that they depend "
7030 "on new packages or conflict with some other "
7031 "package. <command>dselect</command> or <literal>apt-get install</literal> "
7032 "can be used to force these packages to install."
7035 #. type: Content of: <book><chapter><variablelist><varlistentry><term>
7040 #. type: Content of: <book><chapter><variablelist><varlistentry><listitem><para>
7043 "Install is used to install packages by name. The package is automatically "
7044 "fetched and installed. This can be useful if you already know the name of "
7045 "the package to install and do not want to go into a GUI to select it. Any "
7046 "number of packages may be passed to install, they will all be "
7047 "fetched. Install automatically attempts to resolve dependency problems with "
7048 "the listed packages and will print a summary and ask for confirmation if "
7049 "anything other than its arguments are changed."
7052 #. type: Content of: <book><chapter><variablelist><varlistentry><term>
7054 msgid "dist-upgrade"
7057 #. type: Content of: <book><chapter><variablelist><varlistentry><listitem><para>
7060 "Dist-upgrade is a complete upgrader designed to simplify upgrading between "
7061 "releases of Debian. It uses a sophisticated algorithm to determine the best "
7062 "set of packages to install, upgrade and remove to get as much of the system "
7063 "to the newest release. In some situations it may be desired to use "
7064 "dist-upgrade rather than spend the time manually resolving dependencies in "
7065 "<command>dselect</command>. Once dist-upgrade has completed then "
7066 "<command>dselect</command> can be used to install any packages that may have "
7070 #. type: Content of: <book><chapter><variablelist><varlistentry><listitem><para>
7073 "It is important to closely look at what dist-upgrade is going to do, its "
7074 "decisions may sometimes be quite surprising."
7077 #. type: Content of: <book><chapter><para>
7080 "<command>apt-get</command> has several command line options that are "
7081 "detailed in its man page, "
7082 "<citerefentry><refentrytitle>apt-get</refentrytitle><manvolnum>8</manvolnum></citerefentry>. "
7083 "The most useful option is <literal>-d</literal> which does not install the "
7084 "fetched files. If the system has to download a large number of package it "
7085 "would be undesired to start installing them in case something goes "
7086 "wrong. When <literal>-d</literal> is used the downloaded archives can be "
7087 "installed by simply running the command that caused them to be downloaded "
7088 "again without <literal>-d</literal>."
7091 #. type: Content of: <book><chapter><title>
7096 #. type: Content of: <book><chapter><para>
7099 "The APT <command>dselect</command> method provides the complete APT system "
7100 "with the <command>dselect</command> package selection "
7101 "GUI. <command>dselect</command> is used to select the packages to be "
7102 "installed or removed and APT actually installs them."
7105 #. type: Content of: <book><chapter><para>
7108 "To enable the APT method you need to select [A]ccess in "
7109 "<command>dselect</command> and then choose the APT method. You will be "
7110 "prompted for a set of <emphasis>Sources</emphasis> which are places to fetch "
7111 "archives from. These can be remote Internet sites, local Debian mirrors or "
7112 "CD-ROMs. Each source can provide a fragment of the total Debian archive, APT "
7113 "will automatically combine them to form a complete set of packages. If you "
7114 "have a CD-ROM then it is a good idea to specify it first and then specify a "
7115 "mirror so that you have access to the latest bug fixes. APT will "
7116 "automatically use packages on your CD-ROM before downloading from the "
7120 #. type: Content of: <book><chapter><screen>
7124 " Set up a list of distribution source locations\n"
7126 " Please give the base URL of the debian distribution.\n"
7127 " The access schemes I know about are: http file\n"
7130 " file:/mnt/debian,\n"
7131 " ftp://ftp.debian.org/debian,\n"
7132 " http://ftp.de.debian.org/debian,\n"
7135 " URL [http://llug.sep.bnl.gov/debian]:\n"
7138 #. type: Content of: <book><chapter><para>
7141 "The <emphasis>Sources</emphasis> setup starts by asking for the base of the "
7142 "Debian archive, defaulting to a HTTP mirror. Next it asks for the "
7143 "distribution to get."
7146 #. type: Content of: <book><chapter><screen>
7150 " Please give the distribution tag to get or a path to the\n"
7151 " package file ending in a /. The distribution\n"
7152 " tags are typically something like: stable unstable testing non-US\n"
7154 " Distribution [stable]:\n"
7157 #. type: Content of: <book><chapter><para>
7160 "The distribution refers to the Debian version in the archive, "
7161 "<emphasis>stable</emphasis> refers to the latest released version and "
7162 "<emphasis>unstable</emphasis> refers to the developmental "
7163 "version. <emphasis>non-US</emphasis> is only available on some mirrors and "
7164 "refers to packages that contain encryption technology or other things that "
7165 "cannot be exported from the United States. Importing these packages into the "
7166 "US is legal however."
7169 #. type: Content of: <book><chapter><screen>
7173 " Please give the components to get\n"
7174 " The components are typically something like: main contrib non-free\n"
7176 " Components [main contrib non-free]:\n"
7179 #. type: Content of: <book><chapter><para>
7182 "The components list refers to the list of sub distributions to fetch. The "
7183 "distribution is split up based on software licenses, main being DFSG free "
7184 "packages while contrib and non-free contain things that have various "
7185 "restrictions placed on their use and distribution."
7188 #. type: Content of: <book><chapter><para>
7191 "Any number of sources can be added, the setup script will continue to prompt "
7192 "until you have specified all that you want."
7195 #. type: Content of: <book><chapter><para>
7198 "Before starting to use <command>dselect</command> it is necessary to update "
7199 "the available list by selecting [U]pdate from the menu. This is a superset "
7200 "of <literal>apt-get update</literal> that makes the fetched information "
7201 "available to <command>dselect</command>. [U]pdate must be performed even if "
7202 "<literal>apt-get update</literal> has been run before."
7205 #. type: Content of: <book><chapter><para>
7208 "You can then go on and make your selections using [S]elect and then perform "
7209 "the installation using [I]nstall. When using the APT method the [C]onfig and "
7210 "[R]emove commands have no meaning, the [I]nstall command performs both of "
7214 #. type: Content of: <book><chapter><para>
7217 "By default APT will automatically remove the package (.deb) files once they "
7218 "have been successfully installed. To change this behavior place "
7219 "<literal>Dselect::clean \"prompt\";</literal> in /etc/apt/apt.conf."
7222 #. type: Content of: <book><chapter><title>
7224 msgid "The Interface"
7227 #. type: Content of: <book><chapter><para><footnote><para>
7230 "The <command>dselect</command> method actually is a set of wrapper scripts "
7231 "to <command>apt-get</command>. The method actually provides more "
7232 "functionality than is present in <command>apt-get</command> alone."
7235 #. type: Content of: <book><chapter><para>
7238 "Both that APT <command>dselect</command> method and "
7239 "<command>apt-get</command> share the same interface. It is a simple system "
7240 "that generally tells you what it will do and then goes and does "
7241 "it. <placeholder type=\"footnote\" id=\"0\"/> After printing out a summary "
7242 "of what will happen APT then will print out some informative status messages "
7243 "so that you can estimate how far along it is and how much is left to do."
7246 #. type: Content of: <book><chapter><section><title>
7251 #. type: Content of: <book><chapter><section><para>
7254 "Before all operations except update, APT performs a number of actions to "
7255 "prepare its internal state. It also does some checks of the system's "
7256 "state. At any time these operations can be performed by running "
7257 "<literal>apt-get check</literal>."
7260 #. type: Content of: <book><chapter><section><screen>
7265 "Reading Package Lists... Done\n"
7266 "Building Dependency Tree... Done\n"
7269 #. type: Content of: <book><chapter><section><para>
7272 "The first thing it does is read all the package files into memory. APT uses "
7273 "a caching scheme so this operation will be faster the second time it is "
7274 "run. If some of the package files are not found then they will be ignored "
7275 "and a warning will be printed when apt-get exits."
7278 #. type: Content of: <book><chapter><section><para>
7281 "The final operation performs a detailed analysis of the system's "
7282 "dependencies. It checks every dependency of every installed or unpacked "
7283 "package and considers if it is OK. Should this find a problem then a report "
7284 "will be printed out and <command>apt-get</command> will refuse to run."
7287 #. type: Content of: <book><chapter><section><screen>
7292 "Reading Package Lists... Done\n"
7293 "Building Dependency Tree... Done\n"
7294 "You might want to run apt-get -f install' to correct these.\n"
7295 "Sorry, but the following packages have unmet dependencies:\n"
7296 " 9fonts: Depends: xlib6g but it is not installed\n"
7297 " uucp: Depends: mailx but it is not installed\n"
7298 " blast: Depends: xlib6g (>= 3.3-5) but it is not installed\n"
7299 " adduser: Depends: perl-base but it is not installed\n"
7300 " aumix: Depends: libgpmg1 but it is not installed\n"
7301 " debiandoc-sgml: Depends: sgml-base but it is not installed\n"
7302 " bash-builtins: Depends: bash (>= 2.01) but 2.0-3 is installed\n"
7303 " cthugha: Depends: svgalibg1 but it is not installed\n"
7304 " Depends: xlib6g (>= 3.3-5) but it is not installed\n"
7305 " libreadlineg2: Conflicts:libreadline2 (<< 2.1-2.1)\n"
7308 #. type: Content of: <book><chapter><section><para>
7311 "In this example the system has many problems, including a serious problem "
7312 "with libreadlineg2. For each package that has unmet dependencies a line is "
7313 "printed out indicating the package with the problem and the dependencies "
7314 "that are unmet. A short explanation of why the package has a dependency "
7315 "problem is also included."
7318 #. type: Content of: <book><chapter><section><para><footnote><para>
7321 "APT however considers all known dependencies and attempts to prevent broken "
7325 #. type: Content of: <book><chapter><section><para>
7328 "There are two ways a system can get into a broken state like this. The first "
7329 "is caused by <command>dpkg</command> missing some subtle relationships "
7330 "between packages when performing upgrades. <placeholder type=\"footnote\" "
7331 "id=\"0\"/>. The second is if a package installation fails during an "
7332 "operation. In this situation a package may have been unpacked without its "
7333 "dependents being installed."
7336 #. type: Content of: <book><chapter><section><para>
7339 "The second situation is much less serious than the first because APT places "
7340 "certain constraints on the order that packages are installed. In both cases "
7341 "supplying the <literal>-f</literal> option to <command>apt-get</command> "
7342 "will cause APT to deduce a possible solution to the problem and then "
7343 "continue on. The APT <command>dselect</command> method always supplies the "
7344 "<literal>-f</literal> option to allow for easy continuation of failed "
7345 "maintainer scripts."
7348 #. type: Content of: <book><chapter><section><para>
7351 "However, if the <literal>-f</literal> option is used to correct a seriously "
7352 "broken system caused by the first case then it is possible that it will "
7353 "either fail immediately or the installation sequence will fail. In either "
7354 "case it is necessary to manually use dpkg (possibly with forcing options) to "
7355 "correct the situation enough to allow APT to proceed."
7358 #. type: Content of: <book><chapter><section><title>
7360 msgid "The Status Report"
7363 #. type: Content of: <book><chapter><section><para>
7366 "Before proceeding <command>apt-get</command> will present a report on what "
7367 "will happen. Generally the report reflects the type of operation being "
7368 "performed but there are several common elements. In all cases the lists "
7369 "reflect the final state of things, taking into account the "
7370 "<literal>-f</literal> option and any other relevant activities to the "
7371 "command being executed."
7374 #. type: Content of: <book><chapter><section><section><title>
7376 msgid "The Extra Package list"
7379 #. type: Content of: <book><chapter><section><section><screen>
7383 "The following extra packages will be installed:\n"
7384 " libdbd-mysql-perl xlib6 zlib1 xzx libreadline2 libdbd-msql-perl\n"
7385 " mailpgp xdpkg fileutils pinepgp zlib1g xlib6g perl-base\n"
7386 " bin86 libgdbm1 libgdbmg1 quake-lib gmp2 bcc xbuffy\n"
7387 " squake pgp-i python-base debmake ldso perl libreadlineg2\n"
7391 #. type: Content of: <book><chapter><section><section><para>
7394 "The Extra Package list shows all of the packages that will be installed or "
7395 "upgraded in excess of the ones mentioned on the command line. It is only "
7396 "generated for an <literal>install</literal> command. The listed packages are "
7397 "often the result of an Auto Install."
7400 #. type: Content of: <book><chapter><section><section><title>
7402 msgid "The Packages to Remove"
7405 #. type: Content of: <book><chapter><section><section><screen>
7409 "The following packages will be REMOVED:\n"
7410 " xlib6-dev xpat2 tk40-dev xkeycaps xbattle xonix\n"
7411 " xdaliclock tk40 tk41 xforms0.86 ghostview xloadimage xcolorsel\n"
7412 " xadmin xboard perl-debug tkined xtetris libreadline2-dev perl-suid\n"
7413 " nas xpilot xfig\n"
7416 #. type: Content of: <book><chapter><section><section><para>
7419 "The Packages to Remove list shows all of the packages that will be removed "
7420 "from the system. It can be shown for any of the operations and should be "
7421 "given a careful inspection to ensure nothing important is to be taken "
7422 "off. The <literal>-f</literal> option is especially good at generating "
7423 "packages to remove so extreme care should be used in that case. The list may "
7424 "contain packages that are going to be removed because they are only "
7425 "partially installed, possibly due to an aborted installation."
7428 #. type: Content of: <book><chapter><section><section><title>
7430 msgid "The New Packages list"
7433 #. type: Content of: <book><chapter><section><section><screen>
7437 "The following NEW packages will installed:\n"
7438 " zlib1g xlib6g perl-base libgdbmg1 quake-lib gmp2 pgp-i python-base\n"
7441 #. type: Content of: <book><chapter><section><section><para>
7444 "The New Packages list is simply a reminder of what will happen. The packages "
7445 "listed are not presently installed in the system but will be when APT is "
7449 #. type: Content of: <book><chapter><section><section><title>
7451 msgid "The Kept Back list"
7454 #. type: Content of: <book><chapter><section><section><screen>
7458 "The following packages have been kept back\n"
7459 " compface man-db tetex-base msql libpaper svgalib1\n"
7460 " gs snmp arena lynx xpat2 groff xscreensaver\n"
7463 #. type: Content of: <book><chapter><section><section><para>
7466 "Whenever the whole system is being upgraded there is the possibility that "
7467 "new versions of packages cannot be installed because they require new things "
7468 "or conflict with already installed things. In this case the package will "
7469 "appear in the Kept Back list. The best way to convince packages listed there "
7470 "to install is with <literal>apt-get install</literal> or by using "
7471 "<command>dselect</command> to resolve their problems."
7474 #. type: Content of: <book><chapter><section><section><title>
7476 msgid "Held Packages warning"
7479 #. type: Content of: <book><chapter><section><section><screen>
7483 "The following held packages will be changed:\n"
7487 #. type: Content of: <book><chapter><section><section><para>
7490 "Sometimes you can ask APT to install a package that is on hold, in such a "
7491 "case it prints out a warning that the held package is going to be "
7492 "changed. This should only happen during dist-upgrade or install."
7495 #. type: Content of: <book><chapter><section><section><title>
7497 msgid "Final summary"
7500 #. type: Content of: <book><chapter><section><section><para>
7502 msgid "Finally, APT will print out a summary of all the changes that will occur."
7505 #. type: Content of: <book><chapter><section><section><screen>
7509 "206 packages upgraded, 8 newly installed, 23 to remove and 51 not "
7511 "12 packages not fully installed or removed.\n"
7512 "Need to get 65.7M/66.7M of archives. After unpacking 26.5M will be used.\n"
7515 #. type: Content of: <book><chapter><section><section><para>
7518 "The first line of the summary simply is a reduced version of all of the "
7519 "lists and includes the number of upgrades - that is packages already "
7520 "installed that have new versions available. The second line indicates the "
7521 "number of poorly configured packages, possibly the result of an aborted "
7522 "installation. The final line shows the space requirements that the "
7523 "installation needs. The first pair of numbers refer to the size of the "
7524 "archive files. The first number indicates the number of bytes that must be "
7525 "fetched from remote locations and the second indicates the total size of all "
7526 "the archives required. The next number indicates the size difference between "
7527 "the presently installed packages and the newly installed packages. It is "
7528 "roughly equivalent to the space required in /usr after everything is "
7529 "done. If a large number of packages are being removed then the value may "
7530 "indicate the amount of space that will be freed."
7533 #. type: Content of: <book><chapter><section><section><para>
7536 "Some other reports can be generated by using the -u option to show packages "
7537 "to upgrade, they are similar to the previous examples."
7540 #. type: Content of: <book><chapter><section><title>
7542 msgid "The Status Display"
7545 #. type: Content of: <book><chapter><section><para>
7548 "During the download of archives and package files APT prints out a series of "
7552 #. type: Content of: <book><chapter><section><screen>
7556 "# apt-get update\n"
7557 "Get:1 http://ftp.de.debian.org/debian-non-US/ stable/non-US/ Packages\n"
7558 "Get:2 http://llug.sep.bnl.gov/debian/ testing/contrib Packages\n"
7559 "Hit http://llug.sep.bnl.gov/debian/ testing/main Packages\n"
7560 "Get:4 http://ftp.de.debian.org/debian-non-US/ unstable/binary-i386/ "
7562 "Get:5 http://llug.sep.bnl.gov/debian/ testing/non-free Packages\n"
7563 "11% [5 testing/non-free `Waiting for file' 0/32.1k 0%] 2203b/s 1m52s\n"
7566 #. type: Content of: <book><chapter><section><para>
7569 "The lines starting with <emphasis>Get</emphasis> are printed out when APT "
7570 "begins to fetch a file while the last line indicates the progress of the "
7571 "download. The first percent value on the progress line indicates the total "
7572 "percent done of all files. Unfortunately since the size of the Package files "
7573 "is unknown <literal>apt-get update</literal> estimates the percent done "
7574 "which causes some inaccuracies."
7577 #. type: Content of: <book><chapter><section><para>
7580 "The next section of the status line is repeated once for each download "
7581 "thread and indicates the operation being performed and some useful "
7582 "information about what is happening. Sometimes this section will simply read "
7583 "<emphasis>Forking</emphasis> which means the OS is loading the download "
7584 "module. The first word after the [ is the fetch number as shown on the "
7585 "history lines. The next word is the short form name of the object being "
7586 "downloaded. For archives it will contain the name of the package that is "
7590 #. type: Content of: <book><chapter><section><para>
7593 "Inside of the single quote is an informative string indicating the progress "
7594 "of the negotiation phase of the download. Typically it progresses from "
7595 "<emphasis>Connecting</emphasis> to <emphasis>Waiting for file</emphasis> to "
7596 "<emphasis>Downloading</emphasis> or <emphasis>Resuming</emphasis>. The final "
7597 "value is the number of bytes downloaded from the remote site. Once the "
7598 "download begins this is represented as <literal>102/10.2k</literal> "
7599 "indicating that 102 bytes have been fetched and 10.2 kilobytes is "
7600 "expected. The total size is always shown in 4 figure notation to preserve "
7601 "space. After the size display is a percent meter for the file itself. The "
7602 "second last element is the instantaneous average speed. This values is "
7603 "updated every 5 seconds and reflects the rate of data transfer for that "
7604 "period. Finally is shown the estimated transfer time. This is updated "
7605 "regularly and reflects the time to complete everything at the shown transfer "
7609 #. type: Content of: <book><chapter><section><para>
7612 "The status display updates every half second to provide a constant feedback "
7613 "on the download progress while the Get lines scroll back whenever a new file "
7614 "is started. Since the status display is constantly updated it is unsuitable "
7615 "for logging to a file, use the <literal>-q</literal> option to remove the "
7619 #. type: Content of: <book><chapter><section><title>
7624 #. type: Content of: <book><chapter><section><para>
7627 "APT uses <command>dpkg</command> for installing the archives and will switch "
7628 "over to the <command>dpkg</command> interface once downloading is "
7629 "completed. <command>dpkg</command> will also ask a number of questions as it "
7630 "processes the packages and the packages themselves may also ask several "
7631 "questions. Before each question there is usually a description of what it is "
7632 "asking and the questions are too varied to discuss completely here."
7635 #. type: Content of: <book><title>
7637 msgid "Using APT Offline"
7640 #. type: Content of: <book><bookinfo><abstract><para>
7643 "This document describes how to use APT in a non-networked environment, "
7644 "specifically a 'sneaker-net' approach for performing upgrades."
7647 #. type: Content of: <book><bookinfo>
7649 msgid "<copyright><year>1999</year><holder>Jason Gunthorpe</holder></copyright>"
7652 #. type: Content of: <book><chapter><title>
7654 msgid "Introduction"
7657 #. type: Content of: <book><chapter><section><title>
7658 #: offline.dbk:1 offline.dbk:1 offline.dbk:1
7662 #. type: Content of: <book><chapter><section><para>
7665 "Normally APT requires direct access to a Debian archive, either from a local "
7666 "media or through a network. Another common complaint is that a Debian "
7667 "machine is on a slow link, such as a modem and another machine has a very "
7668 "fast connection but they are physically distant."
7671 #. type: Content of: <book><chapter><section><para>
7674 "The solution to this is to use large removable media such as a Zip disc or a "
7675 "SuperDisk disc. These discs are not large enough to store the entire Debian "
7676 "archive but can easily fit a subset large enough for most users. The idea is "
7677 "to use APT to generate a list of packages that are required and then fetch "
7678 "them onto the disc using another machine with good connectivity. It is even "
7679 "possible to use another Debian machine with APT or to use a completely "
7680 "different OS and a download tool like wget. Let <emphasis>remote "
7681 "host</emphasis> mean the machine downloading the packages, and "
7682 "<emphasis>target host</emphasis> the one with bad or no connection."
7685 #. type: Content of: <book><chapter><section><para>
7688 "This is achieved by creatively manipulating the APT configuration file. The "
7689 "essential premise to tell APT to look on a disc for it's archive files. Note "
7690 "that the disc should be formatted with a filesystem that can handle long "
7691 "file names such as ext2, fat32 or vfat."
7694 #. type: Content of: <book><chapter><title>
7696 msgid "Using APT on both machines"
7699 #. type: Content of: <book><chapter><section><para>
7702 "APT being available on both machines gives the simplest configuration. The "
7703 "basic idea is to place a copy of the status file on the disc and use the "
7704 "remote machine to fetch the latest package files and decide which packages "
7705 "to download. The disk directory structure should look like:"
7708 #. type: Content of: <book><chapter><section><screen>
7722 #. type: Content of: <book><chapter><section><title>
7724 msgid "The configuration file"
7727 #. type: Content of: <book><chapter><section><para>
7730 "The configuration file should tell APT to store its files on the disc and to "
7731 "use the configuration files on the disc as well. The sources.list should "
7732 "contain the proper sites that you wish to use from the remote machine, and "
7733 "the status file should be a copy of "
7734 "<emphasis>/var/lib/dpkg/status</emphasis> from the <emphasis>target "
7735 "host</emphasis>. Please note, if you are using a local archive you must use "
7736 "copy URIs, the syntax is identical to file URIs."
7739 #. type: Content of: <book><chapter><section><para>
7742 "<emphasis>apt.conf</emphasis> must contain the necessary information to make "
7746 #. type: Content of: <book><chapter><section><screen>
7752 " /* This is not necessary if the two machines are the same arch, it "
7754 " the remote APT what architecture the target machine is */\n"
7755 " Architecture \"i386\";\n"
7757 " Get::Download-Only \"true\";\n"
7762 " /* Use the disc for state information and redirect the status file from\n"
7763 " the /var/lib/dpkg default */\n"
7764 " State \"/disc/\";\n"
7765 " State::status \"status\";\n"
7767 " // Binary caches will be stored locally\n"
7768 " Cache::archives \"/disc/archives/\";\n"
7769 " Cache \"/tmp/\";\n"
7771 " // Location of the source list.\n"
7772 " Etc \"/disc/\";\n"
7776 #. type: Content of: <book><chapter><section><para>
7779 "More details can be seen by examining the apt.conf man page and the sample "
7780 "configuration file in "
7781 "<emphasis>/usr/share/doc/apt/examples/apt.conf</emphasis>."
7784 #. type: Content of: <book><chapter><section><para>
7787 "On the target machine the first thing to do is mount the disc and copy "
7788 "<emphasis>/var/lib/dpkg/status</emphasis> to it. You will also need to "
7789 "create the directories outlined in the Overview, "
7790 "<emphasis>archives/partial/</emphasis> and "
7791 "<emphasis>lists/partial/</emphasis>. Then take the disc to the remote "
7792 "machine and configure the sources.list. On the remote machine execute the "
7796 #. type: Content of: <book><chapter><section><screen>
7800 " # export APT_CONFIG=\"/disc/apt.conf\"\n"
7801 " # apt-get update\n"
7802 " [ APT fetches the package files ]\n"
7803 " # apt-get dist-upgrade\n"
7804 " [ APT fetches all the packages needed to upgrade the target machine ]\n"
7807 #. type: Content of: <book><chapter><section><para>
7810 "The dist-upgrade command can be replaced with any other standard APT "
7811 "commands, particularly dselect-upgrade. You can even use an APT front end "
7812 "such as <emphasis>dselect</emphasis>. However this presents a problem in "
7813 "communicating your selections back to the local computer."
7816 #. type: Content of: <book><chapter><section><para>
7819 "Now the disc contains all of the index files and archives needed to upgrade "
7820 "the target machine. Take the disc back and run:"
7823 #. type: Content of: <book><chapter><section><screen>
7827 " # export APT_CONFIG=\"/disc/apt.conf\"\n"
7828 " # apt-get check\n"
7829 " [ APT generates a local copy of the cache files ]\n"
7830 " # apt-get --no-d -o dir::state::status=/var/lib/dpkg/status dist-upgrade\n"
7831 " [ Or any other APT command ]\n"
7834 #. type: Content of: <book><chapter><section><para>
7837 "It is necessary for proper function to re-specify the status file to be the "
7838 "local one. This is very important!"
7841 #. type: Content of: <book><chapter><section><para>
7844 "If you are using dselect you can do the very risky operation of copying "
7845 "disc/status to /var/lib/dpkg/status so that any selections you made on the "
7846 "remote machine are updated. I highly recommend that people only make "
7847 "selections on the local machine - but this may not always be possible. DO "
7848 "NOT copy the status file if dpkg or APT have been run in the mean time!!"
7851 #. type: Content of: <book><chapter><title>
7853 msgid "Using APT and wget"
7856 #. type: Content of: <book><chapter><section><para>
7859 "<emphasis>wget</emphasis> is a popular and portable download tool that can "
7860 "run on nearly any machine. Unlike the method above this requires that the "
7861 "Debian machine already has a list of available packages."
7864 #. type: Content of: <book><chapter><section><para>
7867 "The basic idea is to create a disc that has only the archive files "
7868 "downloaded from the remote site. This is done by using the --print-uris "
7869 "option to apt-get and then preparing a wget script to actually fetch the "
7873 #. type: Content of: <book><chapter><section><title>
7878 #. type: Content of: <book><chapter><section><para>
7881 "Unlike the previous technique no special configuration files are "
7882 "required. We merely use the standard APT commands to generate the file list."
7885 #. type: Content of: <book><chapter><section><screen>
7889 " # apt-get dist-upgrade\n"
7890 " [ Press no when prompted, make sure you are happy with the actions ]\n"
7891 " # apt-get -qq --print-uris dist-upgrade > uris\n"
7892 " # awk '{print \"wget -O \" $2 \" \" $1}' < uris > /disc/wget-script\n"
7895 #. type: Content of: <book><chapter><section><para>
7898 "Any command other than dist-upgrade could be used here, including "
7902 #. type: Content of: <book><chapter><section><para>
7905 "The /disc/wget-script file will now contain a list of wget commands to "
7906 "execute in order to fetch the necessary archives. This script should be run "
7907 "with the current directory as the disc's mount point so as to save the "
7908 "output on the disc."
7911 #. type: Content of: <book><chapter><section><para>
7913 msgid "The remote machine would do something like"
7916 #. type: Content of: <book><chapter><section><screen>
7921 " # sh -x ./wget-script\n"
7925 #. type: Content of: <book><chapter><section><para>
7928 "Once the archives are downloaded and the disc returned to the Debian machine "
7929 "installation can proceed using,"
7932 #. type: Content of: <book><chapter><section><screen>
7935 msgid " # apt-get -o dir::cache::archives=\"/disc/\" dist-upgrade\n"
7938 #. type: Content of: <book><chapter><section><para>
7940 msgid "Which will use the already fetched archives on the disc."