> 2026年3月16日 18:29,Miao Wang <[email protected]> 写道:
> 
> 
> 
>> 2026年3月16日 18:22,Michael Tokarev <[email protected]> 写道:
>> 
>> On 16.03.2026 13:09, Miao Wang wrote:
>> 
>>>> ipxe build-depends on:
>>>> - qemu-system-i386:amd64 | qemu-system-i386:amd64
>>>> qemu-system-x86 depends on missing:
>>>> - ipxe-qemu:amd64 (> 1.21.1+git20220113.fbbdc3926+dfsg-1~)
>>>> 
>>>> This installability chain doesn't seem to work on the buildds with
>>>> the current state in unstable.
>> 
>>> I don't know why this should happen. The previous version ipxe-qemu was
>>> actually in the archive before my upload. Actually it was available when
>>> building on amd64, so building on amd64 was successful. Why it became
>>> unavailable when building on all? I don't quite understand the reason
>>> and I don't know how to prevent this from happening.
>> 
>> This is a general issue on buildds when a package build-depends on
>> itself (either directly or through an inter-dependency).  Sometimes
>> it works, but once any build failure happens, it wont work anymore until
>> dependencies are changed.
>> 
>> This is why I created a special build profile for qemu (it build-depends
>> on itself directly), - because if any error happens when building, it
>> wont work anymore and needs to be re-uploaded with missing pieces
>> included.
>> 
>> In qemu things are a bit easier, since it build-depends on arch-all
>> component of itself (qemu-system-data) when building arch-indep
>> pieces only.  Here with ipxe, things are a bit more complicated.
>> 
>> How ipxe uses qemu-system-x86 during build, exactly?
> 
> Actually, for running tests.
> 
> I'm curious about when old arch:all packages are deleted. I noticed
> that old arch:any packages are only deleted when a corresponding 
> new binary package is uploaded. Is there any different policies
> on the deletion of old arch:all packages?
> 
> Cheers,
> 
> Miao Wang

I discovered that when uploading an arch:any binary package, the 
previous version arch-all packages built by the same source package 
are removed from the Packages file of that architecture. In our case,
the package built for amd64 was uploaded before the starting of the
build for the arch-all package, and the ipxe-qemu package, which is
arch-all, got removed from the index for amd64. Since arch-all
packages are built on amd64, the build dependency for ipxe:all cannot
be satisfied. 

As a result, to make the build successful, we should ensure that
the start of building on all happens before the upload of amd64 packages,
otherwise there is possibility that similar event like this happens.
Is there any mechanisms achieving this?


Cheers,

Miao Wang

Reply via email to