From efc487fbd46905f5f3efc4f31d7df15625bcbecf Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Thu, 7 May 2009 12:04:21 +0200 Subject: [apt-pkg] allow also codenames for specifying a release * MatchType::Release checks first for archive than for codename equality * new n= option in apt_preference to be able to pin based on a codeName --- doc/apt-get.8.xml | 9 ++++- doc/apt.conf.5.xml | 2 +- doc/apt_preferences.5.xml | 90 ++++++++++++++++++++++++++++++++++++++++++++--- 3 files changed, 95 insertions(+), 6 deletions(-) (limited to 'doc') diff --git a/doc/apt-get.8.xml b/doc/apt-get.8.xml index c1b3470ef..c63b2a6c6 100644 --- a/doc/apt-get.8.xml +++ b/doc/apt-get.8.xml @@ -53,6 +53,9 @@ target_release_number_expression + + target_release_codename + @@ -71,6 +74,9 @@ /target_release_name + + /target_release_codename + @@ -455,7 +461,8 @@ of this option. In short, this option lets you have simple control over which distribution packages will be retrieved from. Some common examples might be - or . + , + or . Configuration Item: APT::Default-Release; see also the &apt-preferences; manual page. diff --git a/doc/apt.conf.5.xml b/doc/apt.conf.5.xml index 74966c5b3..fb2be9a28 100644 --- a/doc/apt.conf.5.xml +++ b/doc/apt.conf.5.xml @@ -110,7 +110,7 @@ DPkg::Pre-Install-Pkgs {"/usr/sbin/dpkg-preconfigure --apt";}; Default-Release Default release to install packages from if more than one - version available. Contains release name or release version. Examples: 'stable', 'testing', 'unstable', '4.0', '5.0*'. Release codenames ('etch', 'lenny' etc.) are not allowed now. See also &apt-preferences;. + version available. Contains release name, codename or release version. Examples: 'stable', 'testing', 'unstable', 'lenny', 'squeeze', '4.0', '5.0*'. See also &apt-preferences;. Ignore-Hold diff --git a/doc/apt_preferences.5.xml b/doc/apt_preferences.5.xml index 162c2f00e..ff63f1dd3 100644 --- a/doc/apt_preferences.5.xml +++ b/doc/apt_preferences.5.xml @@ -14,7 +14,7 @@ &apt-email; &apt-product; - 29 February 2004 + 04 May 2009 @@ -190,6 +190,15 @@ Pin: release a=unstable Pin-Priority: 50 +The following record assigns a high priority to all package versions +belonging to any distribution whose Codename is "squeeze". + + +Package: * +Pin: release n=squeeze +Pin-Priority: 900 + + The following record assigns a high priority to all package versions belonging to any release whose Archive name is "stable" and whose release Version number is "3.0". @@ -327,10 +336,11 @@ file are relevant for setting APT priorities: -the Archive: line +the Archive: or Suite: line 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 Release file are in a stable archive. Specifying this value in the APT preferences file @@ -342,6 +352,22 @@ Pin: release a=stable + +the Codename: line +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 Release file belong to a version named +squeeze. Specifying this value in the APT preferences file +would require the line: + + +Pin: release n=squeeze + + + + the Version: line names the release version. For example, the @@ -522,7 +548,64 @@ version. apt-get install package/unstable + + + + +Tracking the evolution of a codename release + +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 Debian distributions, +codenames and archives. +Note that with this APT preference APT will follow the migration of a release +from the archive testing to stable and +later oldstable. If you want to follow for example the progress +in testing notwithstanding the codename changes you should use +the example configurations above. + + +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 + + + +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 squeeze. + + +apt-get install package-name +apt-get upgrade +apt-get dist-upgrade + + + +The following command will cause APT to upgrade the specified +package to the latest version from the sid distribution. +Thereafter, apt-get upgrade will upgrade +the package to the most recent squeeze version if that is +more recent than the installed version, otherwise, to the most recent +sid version if that is more recent than the installed +version. + +apt-get install package/sid + + @@ -535,4 +618,3 @@ apt-get install package/unstable &manbugs; - -- cgit v1.2.3