Please help me understand APT pinning...
Hi,
I've struggled with this issue for hours and gotten no help from
Manpages, nor IRC. So if someone could help me and CC me on their reply
(as I am not subscribed), I would be very grateful.
I am running a Debian Squeeze system. I want to install selected
packages from debian-multimedia and grml on it. Furthermore, I don't
trust Opera Software ASA completely, and therefore want to make sure no
packages of theirs are installed over packages available from anywhere
else. As a secondary goal, I want to use my ISP's mirror whereever
possible, to avoid unnecessary internet traffic. Allow me to post my
attempts to configure this:
=== Begin /etc/apt/sources.list ===
deb http://mirror.netcologne.de/debian squeeze main contrib non-free
deb http://mirror.netcologne.de/debian sid main
deb http://deb.opera.com/opera/ squeeze non-free
deb http://mirror.netcologne.de/debian-multimedia.org squeeze main
deb http://mirror.netcologne.de/www.grml.org/deb.grml.org/ grml-testing main
=== End /etc/apt/sources.list ===
=== Begin /etc/apt/preferences ===
Package: *
Pin: release o=The grml project
Pin-Priority: 400
Package: *
Pin: release o=Unofficial Multimedia Packages
Pin-Priority: 400
Package: *
Pin: origin deb.opera.com
Pin-Priority: 300
=== End /etc/apt/preferences ===
=== Begin output of apt-cache policy ===
Package files:
100 /var/lib/dpkg/status
release a=now
400 http://mirror.netcologne.de grml-testing/main Packages
release o=The grml project,a=grml-testing,n=grml-testing,l=grml,c=main
origin mirror.netcologne.de
500 http://mirror.netcologne.de squeeze/main Translation-en_US
990 http://mirror.netcologne.de squeeze/main Packages
release v=None,o=Unofficial Multimedia
Packages,a=testing,n=squeeze,l=Unofficial Multimedia Packages,c=main
origin mirror.netcologne.de
990 http://deb.opera.com squeeze/non-free Packages
release o=Opera Software ASA,a=testing,n=squeeze,l=The Opera web
browser,c=non-free
origin deb.opera.com
500 http://mirror.netcologne.de sid/main Packages
release o=Debian,a=unstable,n=sid,l=Debian,c=main
origin mirror.netcologne.de
990 http://mirror.netcologne.de squeeze/non-free Packages
release o=Debian,a=testing,n=squeeze,l=Debian,c=non-free
origin mirror.netcologne.de
990 http://mirror.netcologne.de squeeze/contrib Packages
release o=Debian,a=testing,n=squeeze,l=Debian,c=contrib
origin mirror.netcologne.de
990 http://mirror.netcologne.de squeeze/main Packages
release o=Debian,a=testing,n=squeeze,l=Debian,c=main
origin mirror.netcologne.de
Pinned packages:
=== End output of apt-cache policy ===
As you can see, I failed miserably. The very same method that works fine
for the grml packages, fails for the debian-multimedia packages. I have
also tried "l=" instead of "o=", as well as copy&pasting the complete
release line from the output of apt-cache policy. I have tried using
double quote characters. I have tried changing the order of grml and
debian-multimedia in the preferences file. I have run aptitude update or
apt-get update after every change. Nothing works.
For Opera, I have not invested quite as much effort, especially since I
specifically want the "origin" feature, not the "release" feature, to
work here; however, "release o=Opera Software ASA" also does not work,
nor does adding double-quotes around "deb.opera.com".
So if anyone understands APT pinning... please help me!
Regards,
Michael
PS Again, please CC me, I am not subscribed to this list.
Reply to: