Bug#913913: apt-cache policy does not display all (security and updates) APT repos in buster
On Sat, 17 Nov 2018, Julian Andres Klode wrote:
> On Fri, Nov 16, 2018 at 04:26:24PM -0500, Yaroslav Halchenko wrote:
> > and I guess I can demystify right away what is going on (although I
> > didn't try to reconfirm by rebuilding or debugging):
> > https://salsa.debian.org/apt-team/apt/blob/master/apt-private/private-show.cc#L488
> > if (F.Flagged(pkgCache::Flag::NoPackages))
> > continue;
> > so no apt entries are displayed if they provide no packages ATM.
> > Although I could see how it is useful generally, for our purpose it is
> > somewhat of a blow, since we are trying to use apt-cache policy output
> > to decide what APT sources in general are configured. and since we are
> > rolling back in time to use snapshots, they might have had packages at
> > that point in time, thus we better adjust them as well.
> I don't know if it helps, but you might want to look at apt-get indextargets?
wow -- that is a great to know command to provide structured output, Thanks! in
the future (seems to be not present even in stretch's version of apt 1.0.10.2)
we should use it instead of apt-cache policy for sure BUT unfortunately it
also falls short the same way:
root@825f262c69cc:/# apt-get update
Hit:2 http://cdn-fastly.deb.debian.org/debian buster InRelease
Hit:1 http://security-cdn.debian.org/debian-security buster/updates InRelease
Hit:3 http://cdn-fastly.deb.debian.org/debian buster-updates InRelease
Reading package lists... Done
root@825f262c69cc:/# apt-get indextargets
MetaKey: main/binary-amd64/Packages
ShortDesc: Packages
Description: http://deb.debian.org/debian buster/main amd64 Packages
URI: http://deb.debian.org/debian/dists/buster/main/binary-amd64/Packages
Filename: /var/lib/apt/lists/deb.debian.org_debian_dists_buster_main_binary-amd64_Packages.lz4
Optional: no
KeepCompressed: yes
Codename: buster
Label: Debian
Origin: Debian
Suite: testing
Trusted: yes
Architecture: amd64
Base-URI: http://deb.debian.org/debian/dists/buster/
By-Hash: yes
Component: main
CompressionTypes: xz bz2 lzma gz lz4 zst uncompressed
Created-By: Packages
DefaultEnabled: yes
Fallback-Of:
Identifier: Packages
KeepCompressedAs: lz4 zst gz xz bz2 lzma uncompressed
PDiffs: yes
Release: buster
Repo-URI: http://deb.debian.org/debian/
Site: http://deb.debian.org/debian
Sourcesentry: /etc/apt/sources.list:1
Target-Of: deb
I haven't looked in the apt sources yet either the same conditioning on having
Packages is done.
> > Also documentation has no hint on such a "feature":
> > policy [pkg...]
> > policy is meant to help debug issues relating to the preferences file. With no
> > arguments it will print out the priorities of each source. Otherwise it prints
> > out detailed information about the priority selection of the named package.
> > so "each source", but not each source is printed out!
> > I wish this "feature" of skipping APT sources without packages was somehow
> > optional/configurable. Otherwise, at least documentation should mention such
> > feature.
> I don't necessarily see it as skipping sources. I don't think the Packages files
> for these sources exist in the cache (as none are downloaded), hence they won't be
> shown.
yes, they do not exist, but it doesn't mean that the "source" doesn't exist.
> Clearly source is not a particularly helpful term, as it's a bit vague (it's not
> a sources.list entry, after all). I think it should probably say "non-empty Packages
> index" or something.
I think "source" is ok in the description of "apt" command (unless talking
about "source package") since indeed we have sources.list and
sources.list.d, at least to me its semantic is clear.
--
Yaroslav O. Halchenko
Center for Open Neuroscience http://centerforopenneuroscience.org
Dartmouth College, 419 Moore Hall, Hinman Box 6207, Hanover, NH 03755
Phone: +1 (603) 646-9834 Fax: +1 (603) 646-1419
WWW: http://www.linkedin.com/in/yarik
Reply to: