Mail archive
alpine-infra

Re: Building community/cargo, build-edge-x86_64 is stuck

From: William Pitcock <nenolod_at_dereferenced.org>
Date: Sun, 29 Oct 2017 22:14:15 -0500

Hi,

Since nobody fixed this on the builders, I wound up reverting this change.

However, I have more to say.

On Sat, Oct 28, 2017 at 1:44 PM, Jakub Jirutka <jakub_at_jirutka.cz> wrote:
> Hi,
>
> I’ve updated community/cargo package and removed dependency on external prebuilt binary, so it now (make)depends on itself (you need cargo to build cargo… *#^_at_$~$+). This is not a new situation, we did the same with community/rust some time ago. IIRC it needed some manual intervention on build server, but don’t know any details. Unfortunately I cannot do anything with it, ’cause I don’t have access to the builder.

A manual intervention on each builder is not an acceptable solution.
Policy requires that builds be reproducible, in other words, that they
can build with `abuild rootbld`.
So this change should not have been pushed to begin with.

> I changed the abuild to not use external prebuilt binary primarily because the old URI of prebuilt binaries built by upstream’s CI doesn’t work anymore. I didn’t find any other and if I understand their CI configuration, they don’t upload cargo built with musl anywhere (again!). However, we need cargo to build rust and we need rust to build cargo (*put some very angry and vulgar comment here*), so we must take cargo binary from somewhere when bootstrapping from scratch anyway.

A solution would be to take a copy of the cargo package from
distfiles.alpinelinux.org (the old version would still exist there),
and make a cargo-bootstrap package.

Look at the haskell + cabal packaging for inspiration, it is a similar
situation, and is policy compliant.

William
Received on Sun Oct 29 2017 - 22:14:15 GMT