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

apt-get -t, the real story

Can someone please explain to me, at long last, how the apt-get -t
option really works (or is supposed to)?  The manpage says:




		    This option controls the default input to the
		    policy engine, it creates a default pin at pri-
		    ority 990 using the specified release string. The
		    preferences file may further override this
		    setting. In short, this option lets you have
		    simple control over which distribution packages
		    will be retrieved from. Some common examples might
		    be -t `2.1*' or -t unstable.

This gives the impression it instructs apt to prefer packages
according to fields of the respective Release files, as documented in
apt_preferences(5).  But _which field_ ??  "unstable" would be in
the Archive: field but "2.1" would be in the Version: field!

The reason I ask is that I cannot persuade apt to do the right thing
with my (peculiar) kind of sources.list file:


deb ftp://ftp.us.debian.org/debian testing main
deb ftp://non-us.debian.org/debian-non-US testing non-US/main
deb ftp://security.debian.org/debian-security testing/updates main
deb ftp://security.debian.org/debian-security stable/updates main 


No matter what I do, I can't make apt prefer a security-fixed version
from stable over a later (yet unfixed) version from testing.  I have
to either just wget the debs bypassing apt, or temporarily edit out
the testing sources.

So how _is_ this supposed to work?  And how can I find out, other than
studying the source of apt?

Actually, just before firing this off, I found a way, sort of.  If I
postfix every package name on the command line with /stable, it does
what I want.  But still this is much less convenient than -t, assuming
it can be made to cooperate.

Ian Zimmerman, Oakland, California, U.S.A.
GPG: 433BA087  9C0F 194F 203A 63F7 B1B8  6E5A 8CA3 27DB 433B A087
EngSoc adopts market economy: cheap is wasteful, efficient is expensive.

Reply to: