Re: Pinning question
On Mon, 15 Sep 2003 22:23:46 -0400, you wrote:
>> Package: *
>> Pin: release potato
>> Pin-Priority: 800
>>
>> Package: *
>> Pin: release woody
>> Pin-Priority: 200
>>
>
>When I read the man pages for apt_preferences, the format is Pin:
>release a=stable, not pin: release woody. Maybe this will help.
> ^^ note
>potato is still in the 'dists' list of 'ftp.us.debian.org/debian' so I
>would guess using "Pin: release a=potato" would work?
>Chuck
I indeed tried this at first after seeing hundreds of web pages
explaining how, before reading the man page fully; according to the
man page:
Selection by release is more complicated and has three forms.
The primary purpose of release selections is to identify a set of
packages that match a specific vendor, or release (ie Debian
2.1).
The first two forms are shortcuts intended for quick command line use.
"""If the first character of the specification is a digit then it is
considered to be a release version match, otherwise a release
label match."""
"""Specifications which contain equals are full release data matches
and are a comma seperated list of one letter keys followed by an
equals then by the string."""
v=2.1*,o=Debian,c=main
l=Debian
a=stable
"""The data for these matches are taken from the Release files that
APT downloads during an update."""
Here is a the release file for the 'main' section of 'woody' on my
machine:
$ cat
/var/state/apt/lists/http.us.debian.org_debian_dists_woody_main_binary-i386_Release
Archive: stable
Version: 3.0r1a
Component: main
Origin: Debian
Label: Debian
Architecture: i386
Here is the release file for the 'main' section of 'potato' on my
machine:
$ cat
/var/state/apt/lists/archive.debian.org_debian-archive_dists_potato_main_binary-i386_Release
Archive: stable
Version: 2.2r7
Component: main
Origin: Debian
Label: Debian
Architecture: i386
The man page says the data for these matches are taken from the
release file. I commonly see 'release a=stable', release a=unstable',
used with pinning, so I assume 'a=' refers to the 'Archive:' field in
the release file.
That explains why I couldn't match on 'a=woody' for example. Since
both woody and potato are considered 'stable', I can't use 'a=' to
differentiate between them, as 'a=stable' would match both dists.
However, I should be able to match based on the 'Version:' field,
which is still different between releases. Indeed, at the end of
"http://www.debian.org/doc/manuals/apt-howto/ch-apt-get.en.html",
there is an example including version numbers:
Package: *
Pin: release v=2.2*,a=stable,c=main,o=Debian,l=Debian
Pin-Priority: 1001
I'm still not sure why my setup doesn't work:
>> Package: *
>> Pin: release v=2.2*
>> Pin-Priority: 800
>>
>> Package: *
>> Pin: release v=3.0*
>> Pin-Priority: 200
I must be something extremely simple that I'm missing, anybody else???
Reply to: