On Fri, Apr 13, 2007 at 06:29:49PM +0200, Loïc Minier wrote: > (Perhaps I don't understand what the -S flag is supposed to do.)
That appears to be the case. The point of "-S foo" is to find all the binary packages that come from the source package foo. Basically, it's -FSource, except that a binary package that has the same name as its source package will not have a Source field, so we have to look in Package if Source is not present. > LC_ALL=C grep-dctrl -S librsvg2-common \ > > /var/lib/apt/lists/ftp.de.debian.org_debian_dists_sid_main_binary-i386_Packages > => does not match That's right, librsvg2-common is not the name of a source package. > LC_ALL=C grep-dctrl -F Package:Source librsvg2-common \ > > /var/lib/apt/lists/ftp.de.debian.org_debian_dists_sid_main_binary-i386_Packages > => matches Sure. Since all records in Packages have a Package field, this is equivalent to -FPackage. > LC_ALL=C grep-dctrl -F Source:Package librsvg2-common \ > > /var/lib/apt/lists/ftp.de.debian.org_debian_dists_sid_main_binary-i386_Packages > => does not match -F Source:Package means the same thing as -S > I think -S should be changed to do "-FSource,Package" instead of > "-FSource:Package". Why? > Also, the behavior of "Source:Package" versus "Package:Source seems > inconsistent. How so?