[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: apt-pinning, strange behavior



Le 09.10.2013 19:28, Dmitrii Kashin a écrit :
berenger.morel@neutralite.org writes:

Since I had to reinstall from my last kernel error, I decided to stay
with stable on that computer, but I need some softwares in less
outdated versions, like development libraries or i3 ( this one is not
a need but a question of comfort, I admit ), so I want to use
apt-pining.

I have set all packages from stable to a priority of 900 and testing
packages with 500.
But tzdata wants to upgrade, for an unknown reason.

Certainly it wants. According to apt_preferences(5):

Yes, it wants, because I did not specified the priority for the release stable-updates. This is what apt-cache policy pointed, and once fixed, my problem disappeared, and I finally understood that obvious issue.

You should use priority of >=990 for the target release.

In the same priority range, the package which will be installed is the one with the highest priority, so it is fine to have one set of package with 500 ( or I could take 600 or any other value ) for low priority, and the other at 900 ( or 800 or... ), so that the version with 900 will be installed against the lower one, even if the lower one is more recent.

Explicitly making it to a priority of 900 for stable fixes that, but I
can not understand why it is needed?

You have just set this priority to the whole stable repository. This
should not work at all.

Maybe it will be sane to show us how you set pins?

Here are the 2 versions, first the one which really works ( in the hope I did not forget something, since I have enabled stable-updates, stable/updates, stable and testing. So I am not sure about the stable/updates one. Not used to stable.):

====================================
Package: *
Pin: release a=stable
Pin-Priority: 800

Package: *
Pin: release a=stable-updates
Pin-Priority: 900

Package: *
Pin: release a=testing
Pin-Priority: 500

Package: i3-wm i3
Pin: release a=testing
Pin-Priority: 900

#i3 dependencies
Package: gir1.2-glib-2.0 libc-dev-bin libc6 libc6-dev libgirepository-1.0-1 libglib2.0-0 libpango1.0-0 locales python-gi
Pin: release a=testing
Pin-Priority: 900

Package: clang
Pin: release a=testing
Pin-Priority: 900

#clang dependencies
Package: libclang-common-dev libgcc1 libgomp1 libitm1 libquadmath0 libstdc++6 libobjc4
Pin: release a=testing
Pin-Priority: 900
====================================

The one which with tzdata updated to testing:
====================================
Package: *
Pin: release a=stable
Pin-Priority: 900

Package: *
Pin: release a=testing
Pin-Priority: 500

Package: i3-wm i3
Pin: release a=testing
Pin-Priority: 900

#i3 dependencies
Package: gir1.2-glib-2.0 libc-dev-bin libc6 libc6-dev libgirepository-1.0-1 libglib2.0-0 libpango1.0-0 locales python-gi
Pin: release a=testing
Pin-Priority: 900

Package: clang
Pin: release a=testing
Pin-Priority: 900

#clang dependencies
Package: libclang-common-dev libgcc1 libgomp1 libitm1 libquadmath0 libstdc++6 libobjc4
Pin: release a=testing
Pin-Priority: 900
====================================

PS: I think I should probably send the package-specific priorities and their dependencies into specific files in preferences.d/ but I'll do that when I'll have a real lot of packages that I need updated. 2 packages ( 3 in fact, I do not show opera here, to stay with the original situation ) can be kept in one file without making it unmaintainable.


Reply to: