X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/d2f3195a03a718ffb56924282727700f02ca9c49..ef1dff93202fa61e0b8cda761906bbca31e217bc:/doc/apt_preferences.5.xml diff --git a/doc/apt_preferences.5.xml b/doc/apt_preferences.5.xml index c55bb4ee2..ff63f1dd3 100644 --- a/doc/apt_preferences.5.xml +++ b/doc/apt_preferences.5.xml @@ -14,7 +14,7 @@ &apt-email; &apt-product; <!-- The last update date --> - <date>29 February 2004</date> + <date>04 May 2009</date> </refentryinfo> <refmeta> @@ -60,6 +60,9 @@ belongs. It is possible to single out a distribution, "the target release", which receives a higher priority than other distributions do by default. The target release can be set on the <command>apt-get</command> command line or in the APT configuration file <filename>/etc/apt/apt.conf</filename>. +Note that this has precedence over any general priority you set in the +<filename>/etc/apt/preferences</filename> file described later, but not +over specifically pinned packages. For example, <programlisting> @@ -187,6 +190,15 @@ Pin: release a=unstable Pin-Priority: 50 </programlisting> +<simpara>The following record assigns a high priority to all package versions +belonging to any distribution whose Codename is "<literal>squeeze</literal>".</simpara> + +<programlisting> +Package: * +Pin: release n=squeeze +Pin-Priority: 900 +</programlisting> + <simpara>The following record assigns a high priority to all package versions belonging to any release whose Archive name is "<literal>stable</literal>" and whose release Version number is "<literal>3.0</literal>".</simpara> @@ -324,10 +336,11 @@ file are relevant for setting APT priorities: <variablelist> <varlistentry> -<term>the <literal>Archive:</literal> line</term> +<term>the <literal>Archive:</literal> or <literal>Suite:</literal> line</term> <listitem><simpara>names the archive to which all the packages in the directory tree belong. For example, the line -"Archive: stable" +"Archive: stable" or +"Suite: stable" specifies that all of the packages in the directory tree below the parent of the <filename>Release</filename> file are in a <literal>stable</literal> archive. Specifying this value in the APT preferences file @@ -339,6 +352,22 @@ Pin: release a=stable </listitem> </varlistentry> +<varlistentry> +<term>the <literal>Codename:</literal> line</term> +<listitem><simpara>names the codename to which all the packages +in the directory tree belong. For example, the line +"Codename: squeeze" +specifies that all of the packages in the directory +tree below the parent of the <filename>Release</filename> file belong to a version named +<literal>squeeze</literal>. Specifying this value in the APT preferences file +would require the line: +</simpara> +<programlisting> +Pin: release n=squeeze +</programlisting> +</listitem> +</varlistentry> + <varlistentry> <term>the <literal>Version:</literal> line</term> <listitem><simpara>names the release version. For example, the @@ -519,7 +548,64 @@ version. apt-get install <replaceable>package</replaceable>/unstable </programlisting> </para> +</refsect2> + + +<refsect2> +<title>Tracking the evolution of a codename release</title> + +<para>The following APT preferences file will cause APT to assign a +priority higher than the default (500) to all package versions belonging +to a specified codename of a distribution and a prohibitively low priority to +package versions belonging to other <literal>Debian</literal> distributions, +codenames and archives. +Note that with this APT preference APT will follow the migration of a release +from the archive <literal>testing</literal> to <literal>stable</literal> and +later <literal>oldstable</literal>. If you want to follow for example the progress +in <literal>testing</literal> notwithstanding the codename changes you should use +the example configurations above. + +<programlisting> +Explanation: Uninstall or do not install any Debian-originated package versions +Explanation: other than those in the distribution codenamed with squeeze or sid +Package: * +Pin: release n=squeeze +Pin-Priority: 900 + +Explanation: Debian unstable is always codenamed with sid +Package: * +Pin: release a=sid +Pin-Priority: 800 + +Package: * +Pin: release o=Debian +Pin-Priority: -10 +</programlisting> +</para> + +<para>With a suitable &sources-list; file and the above preferences file, +any of the following commands will cause APT to upgrade to the +latest version(s) in the release codenamed with <literal>squeeze</literal>. + +<programlisting> +apt-get install <replaceable>package-name</replaceable> +apt-get upgrade +apt-get dist-upgrade +</programlisting> +</para> + +<para>The following command will cause APT to upgrade the specified +package to the latest version from the <literal>sid</literal> distribution. +Thereafter, <command>apt-get upgrade</command> will upgrade +the package to the most recent <literal>squeeze</literal> version if that is +more recent than the installed version, otherwise, to the most recent +<literal>sid</literal> version if that is more recent than the installed +version. +<programlisting> +apt-get install <replaceable>package</replaceable>/sid +</programlisting> +</para> </refsect2> </refsect1> @@ -532,4 +618,3 @@ apt-get install <replaceable>package</replaceable>/unstable &manbugs; </refentry> -