apt wants to downgrade packages with pin-priority less than 1000

Alon Swartz alon at turnkeylinux.org
Tue Jan 6 14:46:35 GMT 2009


Hi Guys,

I never really got much response from my original mail describing the
issue, so I decided to reproduce the issue using a vanilla ubuntu
package and the ubuntu repositories directly (so you can see for
yourselves).

I have chosen base-files as its a small package without any build-deps,
but any package would work.

# dpkg -s base-files |grep Version
Version: 4.0.1ubuntu5.8.04.3

# grep deb-src /etc/apt/sources.list.d/sources.list
deb-src http://archive.ubuntu.com/ubuntu hardy-updates main

# apt-get source base-files
dpkg-source: extracting base-files in base-files-4.0.1ubuntu5.8.04.3
dpkg-source: unpacking base-files_4.0.1ubuntu5.8.04.3.tar.gz

# head debian/changelog
base-files (4.0.1ubuntu5.8.04.3-1) hardy-proposed; urgency=low

  * testing pinning issue

 -- Alon Swartz <alon at turnkeylinux.org>  Tue, 06 Jan 2009 00:00:00 +0000

# dpkg-buildpackage -b -tc

# dpkg -i base-files_4.0.1ubuntu5.8.04.3-1_i386.deb
Setting up base-files (4.0.1ubuntu5.8.04.3-1) ...

# dpkg -s base-files |grep Version
Version: 4.0.1ubuntu5.8.04.3-1

# cat /etc/apt/preferences
Package: base-files
Pin: release o=Ubuntu
Pin-Priority: 999

# apt-cache policy base-files
base-files:
  Installed: 4.0.1ubuntu5.8.04.3-1
  Candidate: 4.0.1ubuntu5.8.04.3
  Package pin: 4.0.1ubuntu5.8.04.3
  Version table:
 *** 4.0.1ubuntu5.8.04.3-1 999
        100 /var/lib/dpkg/status
     4.0.1ubuntu5.8.04.3 999
        500 http://archive.ubuntu.com hardy-updates/main Packages
     4.0.1ubuntu5 999
        500 http://archive.ubuntu.com hardy/main Packages

# apt-get install base-files
The following packages will be DOWNGRADED:
  base-files

In other words, apt wants to downgrade a package even though the
pin-priority is less than 1000, which goes against all the
documentation.

Is this a bug in apt, a bug in the documentation, or am I
mis-understanding something?

Cheers,
Alon Swartz


-- 
Website: http://www.turnkeylinux.org
Launchpad: https://launchpad.net/~alonswartz

Alon Swartz wrote:
> Martin Meredith wrote:
>> On Sat, Dec 27, 2008 at 09:14:56PM +0200, Alon Swartz wrote:
>>> Hi Guys,
>>>
>>> Firstly, let me introduce myself, I am one of the developers for TurnKey
>>> Linux, an opensource project that develops a family of lightweight
>>> installable Ubuntu based Live CD appliances optimized for various
>>> server-type tasks.
>>>
>>> Now, down to business...
>>>
>>> Summary
>>> -------
>>>
>>> apt will attempt to downgrade an installed package if the pin-priority
>>> of the package is greater than 99.
>>>
>>> apt will not downgrade when pin-priorty is 99 or below because the
>>> already installed package automatically gets a priority of 100.
>>>
>>> According to the apt_preferences manpage (mentioned several times), apt
>>> will *never* downgrade a package unless the priority of an available
>>> version exceeds 1000.
>>>
>>> Details
>>> -------
>>>
>>> I came across this issue because our package repository has not yet been
>>> updated with the latest package, but the latest package has been
>>> installed on the system.
>>>
>>> Although this shouldn't matter, apt seems to be breaking its own rules
>>> (unless I am missing something...)
>>>
>>> My testing system:
>>>     Ubuntu 8.04.1 (Hardy)
>>>     apt 0.7.9ubuntu17.1 for i386 compiled on Oct 27 2008 18:11:08
>>>
>>> # dpkg -s drupal5 |grep Version
>>> Version: 5.12-2
>>>
>>> # cat /etc/apt/preferences
>>> Package: drupal5
>>> Pin: release o=turnkeylinux
>>> Pin-Priority: 999
>>>
>>> Note: the pin-priority can be anything larger than 99 to reproduce this,
>>> and the same situation happens with other packages.
>>>
>>> # apt-cache policy drupal5
>>> drupal5:
>>>   Installed: 5.12-2
>>>   Candidate: 5.10-3
>>>   Package pin: 5.10-3
>>>   Version table:
>>>  *** 5.12-2 999
>>>         100 /var/lib/dpkg/status
>>>      5.10-3 999
>>>         500 http://archive.turnkeylinux.org hardy-security/universe Packages
>>>      5.7-1ubuntu1.1 999
>>>         500 http://archive.ubuntu.com hardy-security/universe Packages
>>>
>>> # apt-get install drupal5
>>> ...
>>> The following packages will be DOWNGRADED:
>>>   drupal5
>>>
>>> In other words, the installed version is 5.12-2 but apt wants to
>>> downgrade to the eariler version 5.10-3.
>>>
>>> Is this a bug in apt, a bug in the documentation, or am I
>>> mis-understanding something?
>> Is that the full of your apt preferences? Policy is reporting you've pinned the 
>> package by version.
>>
>> Can you pastebin your full preferences file, and the output of apt-config dump?
>>
>>
> 
> The above mentioned /etc/apt/preferences is my full preferences file.
> I have pinned the package to the release origin, not specifying a version.
> 
> # grep Origin
> /var/lib/apt/lists/archive.turnkeylinux.org_ubuntu_dists_hardy_Release
> Origin: turnkeylinux
> 
> The output of apt-config dump is available at the following link,
> although it looks like a vanilla ubuntu configuration:
> http://ubuntu.pastebin.com/f73a5138b
> 
> Cheers,
> Alon Swartz
> 





More information about the ubuntu-devel mailing list