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

Pinning to upgrade only unstable packages



Hello there

thanks for the really great APT .

I have one problem which I cannot solve by reading manuals and browsing the internet.

I have a mixed system, it's an Ubuntu oneiric - precise
(I hope my APT is like Debian's and I can ask here for help?)

I think I understood how to use pinning so to perform what is explained here http://www.debian.org/doc/manuals/debian-reference/ch02.en.html --> mixed system so that unstable packages are upgraded with unstable packages, stable packages are upgraded with stable packages.

Now I want to set up a **temporary**!! pinning file so that I can do an "apt-get upgrade" to upgrade only unstable packages while leaving all stables at the current version EVEN if there is a stable update for them.

Note that ubuntu has an <releasename>-updates and an <releasename>-security repository which frequently update packages for the "stable" ones, and these brings in HUNDREDS of packages each time, and such a mega-installation is exactly what I am trying to avoid in this case.

I supposed this preferences file would do the trick:
--------------------------------------------
Package: *
Pin: release a=oneiric
Pin: origin ""
Pin-Priority: 1001

Package: *
Pin: release a=oneiric-updates
Pin: origin ""
Pin-Priority: 1001

Package: *
Pin: release a=oneiric-security
Pin: origin ""
Pin-Priority: 1001
--------------------------------------------
but it doesn't work: "apt-get upgrade --simulate" show that all packages are being upgraded to precise (unstable). It seems like the origin line does not match. This is contrary to manpage and I dotn't know how to make it match.

By reading through the code I found this other possibility:

Pin: release a=now

which matches locally installed packages (same that I thought Pin: origin "" would do) but after having bound the "a" to "now" I can't also bind it to something else, so I cannot distinguish anymore an oneiric* package (which I don't want to upgrade) from a precise* package (which I do want to upgrade).

I tried combinations such as one or more of:

Package: *
Pin: release a=now,n=oneiric
Pin-Priority: 1000

Package: *
Pin: release a=now,n=oneiric-updates
Pin-Priority: 1000

but without success.
Can you tell me how I should do?

Thank you
S.


Reply to: