Bug#814843: Origin pins for single packages don't work
Control: severity -1 wishlist
Control: retitle -1 show package-specific pin on sources
(Not a bug, just UI)
On Mon, Feb 15, 2016 at 12:46:30PM -0800, Russ Allbery wrote:
> Package: apt
> Version: 1.2.3
> Severity: normal
>
> I have the following files in /etc/apt/preferences.d:
>
> ==> google-base.pref <==
> Package: *
> Pin: origin dl.google.com
> Pin-Priority: 1
>
> ==> google-chrome.pref <==
> Package: google-chrome-stable
> Pin: origin dl.google.com
> Pin-Priority: 100
>
> The goal is to assign a low priority to all packages from dl.google.com
> except for google-chrome-stable, which gets a somewhat higher priority
> that allows automatic updates.
>
> But this doesn't actually work:
>
> google-chrome-stable:
> Installed: 48.0.2564.109-1
> Candidate: 48.0.2564.109-1
> Version table:
> *** 48.0.2564.109-1 100
This shows the pin matching a Package: google-chrome-stable entry.
> 1 http://dl.google.com/linux/chrome/deb stable/main amd64 Packages
This shows the pin value for that source, that is, Package: * pins.
> 100 /var/lib/dpkg/status
> The general pin works fine, but the specific package pin does not. If I
> delete the general pin entirely, I get:
>
> google-chrome-stable:
> Installed: 48.0.2564.109-1
> Candidate: 48.0.2564.109-1
> Version table:
> *** 48.0.2564.109-1 100
> 500 http://dl.google.com/linux/chrome/deb stable/main amd64 Packages
> 100 /var/lib/dpkg/status
>
> showing that the google-chrome.pref file appears to just be ignored
> completely. The same continues to be true even if I change it to be a
> version pin, as in:
No, you still get 100, as shown next to the version number.
Consider
Package: *
Pin: origin dl.google.com
Pin-Priority: 1
Package: google-chrome-stable
Pin: origin dl.google.com
Pin-Priority: 111
The output is:
google-chrome-stable:
Installed: 48.0.2564.103-1
Candidate: 48.0.2564.109-1
Version table:
48.0.2564.109-1 111
1 http://dl.google.com/linux/chrome/deb stable/main amd64 Packages
Meaning that the version was pinned at 111, whereas the source usually only
has 1.
Maybe it would make sense to show that
http://dl.google.com/linux/chrome/deb stable/main amd64 Packages
is effectively 111 here, but we do not store that information, we only
store one version -> pin assocation, so it fails for multiple ones. So
I don't think we can change that.
But I'll leave it open for now, maybe I get a better idea.
--
Julian Andres Klode - Debian Developer, Ubuntu Member
See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.
When replying, only quote what is necessary, and write each reply
directly below the part(s) it pertains to (`inline'). Thank you.
Reply to: