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

Bug#590041: Mishandles Packages.gz from other archs



David Kalnischkies <kalnischkies+debian@gmail.com> writes:

> Hi Goswin,
>
> 2010/7/23 Goswin von Brederlow <goswin-v-b@web.de>:
>> root@frosties:/var/lib/apt/lists# apt-cache show libc6-armel-cross
>> E: Can't select versions from package 'libc6-armel-cross' as it purely virtual
>> E: No packages found
>
> try: apt-cache show libc6-armel-cross:armel
> or as an alternative:
> apt-cache show libc6-armel-cross -o APT::Architecture=armel

That works. Didn't know apt already supported the :arch.

>> And now for the really spooky part:
>> Testing some more I find that the problem is the Replaces line. Changing
>> libc6-armel-cross to Changing libc6-armel-cross2 makes libc6-armel-cross
>> appear. Changing it back makes it disapear.
>
> This happens as APT adds Replaces against all known architectures to the
> package. So what you get above is "correct" as you have "requested" package
> libc6-armel-cross:i386 and this one is virtual as it is only created for the
> Replaces line. Still i guess it should do the same for virtual packages
> as it does it already if the package doesn't exist at all:
> Get the next possible match if no architecture is requested explicit?
>
>
> Best regards,
>
> David Kalnischkies

The odd behaviour makes sense now. But shouldn't it show the entries for
all architectures if no specific architecture is requested? Just like it
shows all versions if no version is specified.

Short of that it could say what it actualy searched for:

E: Can't select versions from package 'libc6-armel-cross:amd64' as it purely virtual
E: No packages found

E: Unable to locate package libfoo-armel-cross:amd64
E: No packages found

But showing the right thing would be better.

MfG
        Goswin



Reply to: