]> git.saurik.com Git - apt.git/blobdiff - doc/apt.conf.5.xml
fix two typos in apt.conf & apt-cache manpage
[apt.git] / doc / apt.conf.5.xml
index 7d5f7e9b38ae55a6f64efe2b36e4ce40f132f2d9..48ad9c026a422cbf6cdc1512fed2c00d87ccd248 100644 (file)
@@ -19,7 +19,7 @@
    &apt-email;
    &apt-product;
    <!-- The last update date -->
-   <date>2012-06-09T00:00:00Z</date>
+   <date>2015-12-14T00:00:00Z</date>
  </refentryinfo>
  
  <refmeta>
@@ -54,6 +54,8 @@
         configuration list - in which case it will be silently ignored.</para></listitem>
       <listitem><para>the main configuration file specified by
         <literal>Dir::Etc::main</literal></para></listitem>
+      <listitem><para>all options set in the binary specific configuration
+           subtree are moved into the root of the tree.</para></listitem>
       <listitem><para>the command line options are applied to override the
         configuration directives or to load even more configuration files.</para></listitem>
    </orderedlist>
@@ -183,7 +185,7 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
      <varlistentry><term><option>Default-Release</option></term>
      <listitem><para>Default release to install packages from if more than one
      version is available. Contains release name, codename or release version. Examples: 'stable', 'testing',
-     'unstable', '&stable-codename;', '&testing-codename;', '4.0', '5.0*'. See also &apt-preferences;.</para></listitem>
+     'unstable', '&debian-stable-codename;', '&debian-testing-codename;', '4.0', '5.0*'. See also &apt-preferences;.</para></listitem>
      </varlistentry>
 
      <varlistentry><term><option>Ignore-Hold</option></term>
@@ -301,6 +303,8 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
      <literal>Valid-Until</literal> header, but if they don't or a
      stricter value is desired the <literal>Max-ValidTime</literal>
      option below can be used.
+     The <option>Check-Valid-Until</option> option of &sources-list; entries should be
+     preferred to disable the check selectively instead of using this global override.
      </para></listitem>
      </varlistentry>
 
@@ -312,7 +316,8 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
         the earlier date of the two is used as the expiration date.
         The default value is <literal>0</literal> which stands for "valid forever".
         Archive specific settings can be made by appending the label of the archive
-        to the option name.
+        to the option name. Preferably, the same can be achieved for specific
+        &sources-list; entries by using the <option>Valid-Until-Max</option> option there.
         </para></listitem>
      </varlistentry>
 
@@ -324,14 +329,17 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
         frequently updated archive with a <literal>Valid-Until</literal> header
         instead of completely disabling the expiration date checking.
         Archive specific settings can and should be used by appending the label of
-        the archive to the option name.
+        the archive to the option name. Preferably, the same can be achieved for specific
+        &sources-list; entries by using the <option>Valid-Until-Min</option> option there.
         </para></listitem>
      </varlistentry>
 
      <varlistentry><term><option>PDiffs</option></term>
         <listitem><para>Try to download deltas called <literal>PDiffs</literal> for
-        indexes (like <filename>Packages</filename> files) instead of downloading
-        whole ones. True by default.</para>
+        indexes (like <filename>Packages</filename> files) instead of
+        downloading whole ones. True by default. Preferably, this can be set
+        for specific &sources-list; entries or index files by using the
+        <option>PDiffs</option> option there.</para>
         <para>Two sub-options to limit the use of PDiffs are also available:
         <literal>FileLimit</literal> can be used to specify a maximum number of
         PDiff files should be downloaded to update a file. <literal>SizeLimit</literal>
@@ -341,6 +349,16 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
         </para></listitem>
      </varlistentry>
 
+     <varlistentry><term><option>By-Hash</option></term>
+        <listitem><para>Try to download indexes via an URI constructed from a
+        hashsum of the expected file rather than downloaded via a well-known
+        stable filename. True by default, but automatically disabled if the
+        source indicates no support for it. Usage can be forced with the special
+        value "force". Preferably, this can be set for specific &sources-list; entries
+        or index files by using the <option>By-Hash</option> option there.
+        </para></listitem>
+     </varlistentry>
+
      <varlistentry><term><option>Queue-Mode</option></term>
      <listitem><para>Queuing mode; <literal>Queue-Mode</literal> can be one of <literal>host</literal> or 
      <literal>access</literal> which determines how  APT parallelizes outgoing 
@@ -593,6 +611,15 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
         </para></listitem>
      </varlistentry>
 
+     <varlistentry><term><option>EnableSrvRecords</option></term>
+        <listitem><para>
+           This option controls if apt will use the DNS SRV server record
+           as specified in RFC 2782 to select an alternative server to
+           connect to.
+           The default is "true".
+        </para></listitem>
+     </varlistentry>
+
      <varlistentry><term><option>AllowInsecureRepositories</option></term>
         <listitem><para>
            Allow the update operation to load data files from
@@ -608,7 +635,7 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
         <listitem><para>
            Allow that a repository that was previously gpg signed to become
            unsigned durign a update operation. When there is no valid signature
-           of a perviously trusted repository apt will refuse the update. This
+           of a previously trusted repository apt will refuse the update. This
            option can be used to override this protection. You almost certainly
            never want to enable this. The default is false.
 
@@ -629,11 +656,11 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
          with <literal>Acquire::Changelogs::URI::Override::Label::<replaceable>LABEL</replaceable></literal>
          or <literal>Acquire::Changelogs::URI::Override::Origin::<replaceable>ORIGIN</replaceable></literal>.
 
-         The value should be a normal URI to a text file, expect that package specific data is
-         replaced with the placeholder <literal>CHANGEPATH</literal>. The
+         The value should be a normal URI to a text file, except that package specific data is
+         replaced with the placeholder <literal>@CHANGEPATH@</literal>. The
          value for it is: 1. if the package is from a component (e.g. <literal>main</literal>)
          this is the first part otherwise it is omitted, 2. the first letter of source package name,
-         expect if the source package name starts with '<literal>lib</literal>' in which case it will
+         except if the source package name starts with '<literal>lib</literal>' in which case it will
          be the first four letters. 3. The complete source package name. 4. the complete name again and
          5. the source version.
          The first (if present), second, third and fourth part are separated by a slash ('<literal>/</literal>')
@@ -648,6 +675,24 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
    </variablelist>
  </refsect1>
 
+ <refsect1><title>Binary specific configuration</title>
+    <para>Especially with the introduction of the <command>apt</command> binary
+       it can be useful to set certain options only for a specific binary as
+       even options which look like they would effect only a certain binary like
+       <option>APT::Get::Show-Versions</option> effect
+       <command>apt-get</command> as well as <command>apt</command>.
+    </para>
+    <para>Setting an option for a specific binary only can be achieved by
+       setting the option inside the
+       <option>Binary::<replaceable>specific-binary</replaceable></option>
+       scope. Setting the option <option>APT::Get::Show-Versions</option> for
+       the <command>apt</command> only can e.g. by done by setting
+       <option>Binary::apt::APT::Get::Show-Versions</option> instead.</para>
+    <para>Note that as seen in the DESCRIPTION section further above you can't
+       set binary-specific options on the commandline itself nor in
+       configuration files loaded via the commandline.</para>
+ </refsect1>
+
  <refsect1><title>Directories</title>
 
    <para>The <literal>Dir::State</literal> section has directories that pertain to local 
@@ -686,7 +731,7 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
 
    <para>
      The configuration item <literal>RootDir</literal> has a special
-     meaning.  If set, all paths in <literal>Dir::</literal> will be
+     meaning.  If set, all paths will be
      relative to <literal>RootDir</literal>, <emphasis>even paths that
      are specified absolutely</emphasis>.  So, for instance, if
      <literal>RootDir</literal> is set to
@@ -695,6 +740,7 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
      <filename>/var/lib/dpkg/status</filename>, then the status file
      will be looked up in
      <filename>/tmp/staging/var/lib/dpkg/status</filename>.
+     If you want to prefix only relative paths, set <literal>Dir</literal> instead.
    </para>
 
    <para>
@@ -770,10 +816,35 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";};
      install to the commands, one per line on the requested file descriptor, defaulting
      to standard input.</para>
 
-     <para>Version 2 of this protocol dumps more information, including the
-     protocol version, the APT configuration space and the packages, files
-     and versions being changed. Version 3 adds the architecture and <literal>MultiArch</literal>
-     flag to each version being dumped.</para>
+     <para>Version 2 of this protocol sends more information through the requested
+     file descriptor: a line with the text <literal>VERSION 2</literal>,
+     the APT configuration space, and a list of package actions with filename
+     and version information.</para>
+
+     <para>Each configuration directive line has the form
+     <literal>key=value</literal>.  Special characters (equal signs, newlines,
+     nonprintable characters, quotation marks, and percent signs in
+     <literal>key</literal> and newlines, nonprintable characters, and percent
+     signs in <literal>value</literal>) are %-encoded. Lists are represented
+     by multiple <literal>key::=value</literal> lines with the same key. The
+     configuration section ends with a blank line.</para>
+
+     <para>Package action lines consist of five fields in Version 2: package
+     name (without architecture qualification even if foreign), old version,
+     direction of version change (&lt; for upgrades, &gt; for downgrades, = for
+     no change), new version, action. The version fields are "-" for no version
+     at all (for example when installing a package for the first time; no
+     version is treated as earlier than any real version, so that is an
+     upgrade, indicated as <literal>- &lt; 1.23.4</literal>). The action field
+     is "**CONFIGURE**" if the package is being configured, "**REMOVE**" if it
+     is being removed, or the filename of a .deb file if it is being
+     unpacked.</para>
+
+     <para>In Version 3 after each version field follows the architecture
+     of this version, which is "-" if there is no version, and a field showing
+     the MultiArch type "same", "foreign", "allowed" or "none". Note that "none"
+     is an incorrect typename which is just kept to remain compatible, it
+     should be read as "no" and users are encouraged to support both.</para>
 
      <para>The version of the protocol to be used for the command
      <literal><replaceable>cmd</replaceable></literal> can be chosen by setting