Package: popularity-contest Version: 1.53 Severity: important Tags: patch
Coin, I got this reported by cron: /etc/cron.daily/popularity-contest: Package `libc6-i686' is not installed. Use dpkg --info (= dpkg-deb --info) to examine archive files, and dpkg --contents (= dpkg-deb --contents) to list their contents.In the "Read dpkg database of installed packages" part of /usr/sbin/popularity-contest, the call to dpkg-query report a list of packages like this:
install ok installed libc6-i686Unfortunately, the call to dpkg -L <pkg> in proc_pkgs() fails because indeed libc6-i686, which is libc6-i686:amd64 on this host, does not exist while libc6-i686:i386 does.
I guess being conservative is the safest choice on the dpkg's side and using an updated format to include the architecture is a very easy change for applications migrating to the multiarch world. The small attached patch seems to solve this issue.
Regards. -- Marc Dequènes (Duck)
--- /usr/sbin/popularity-contest.orig 2012-02-15 20:21:29.593742437 +0100 +++ /usr/sbin/popularity-contest 2012-02-15 20:22:10.274234367 +0100 @@ -158,7 +158,7 @@ } # Read dpkg database of installed packages -open PACKAGES, "dpkg-query --show --showformat='\${status} \${package}\\n'|"; +open PACKAGES, "dpkg-query --show --showformat='\${status} \${package}:\${architecture}\\n'|"; my @pkglist = (); while (<PACKAGES>) {
pgpr6J0z3gpsN.pgp
Description: PGP Digital Signature