On Aug 4, 2005, at 7:12 PM, Martin Costabel wrote:
This one comes from the "Installed-Size:" field in the DEBIAN/ control file. apt-get compares package versions not only by their version-revision number, but also by a VersionHash number which is computed by taking into account several fields of the control file (in apt-pkg/deb/deblistparser.cc), in particular the Installed-Size field. Therefore two copies of the same package with the same version, but different Installed-Size values are considered different, and in the apt-cache commands "dump", "show", "showpkg" they are listed as separate versions.
Thank you for figuring out this much, it should help a lot :-)If the problem is that apt considers the .deb on the server and the .deb on my hard drive to be different, one thing that confuses me is why we only see this problem in one direction. IE: Apt will download a package to replace the one I have installed via Fink, but I've never seen apt install a .deb on my disk to overwrite a downloaded one. Is there something special about one or the other situation?
Perhaps apt only gets confused if it doesn't see the .deb on your disk at all, for example if you haven't run scanpackages in a while? That would explain why I don't see this error much anymore.
If I understand correctly how fink determines if a package is apt- gettable, it can trip over the problem with different Installed- Size fields, too: It looks at the output of "apt-cache dump" and if the remote version has a different Installed-Size from the locally installed version, the dump shows the same version with several different "File:" fields; if the last one of these is /sw/var/lib/ dpkg/status, the version is marked as not apt-gettable, although the version may exist on the remote server. I don't understand, however, how this can happen for a package version that is not yet locally installed, which is where I am seeing this happen. Perhaps something to do with the apt cache files in /sw/var/cache/apt/ installed by the Fink installer.
I'll try looking into this. Dave
PGP.sig
Description: This is a digitally signed message part