X-Original-To: alpine-infra@alpinelinux.org Received: from luna.geeknet.cz (luna.geeknet.cz [37.205.9.141]) by lists.alpinelinux.org (Postfix) with ESMTP id E0C025C4F74 for ; Mon, 30 Oct 2017 16:39:22 +0000 (GMT) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by luna.geeknet.cz (Postfix) with ESMTPSA id A151091CDD; Mon, 30 Oct 2017 17:39:21 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jirutka.cz; s=mail; t=1509381561; bh=cPkoyafxm6fo1TCl1G8vEjxUVuYbGVa+BU8VWnIJSRI=; h=Subject:From:In-Reply-To:Date:Cc:References:To; b=iuBBoAJjRjSDrl3/ZMF2dxM+rhxZFEh3SwB5HfW5NHW9aBhs4N9RgYXlA4CKyIaQr 6GfpHP66pieWugEH4e83beso3OMUAo6m3DKNHRuHWxTrCXRmQ7XjVES5goBBalJ7Uw 5aHs3MRkTEVbwcXxAixnovTzQ5p2bfcyLrqj1hLk= Content-Type: multipart/signed; boundary="Apple-Mail=_BE7DF933-057C-4424-97F5-D0E90E688C53"; protocol="application/pgp-signature"; micalg=pgp-sha384 Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Subject: Re: Building community/cargo, build-edge-x86_64 is stuck From: Jakub Jirutka In-Reply-To: Date: Mon, 30 Oct 2017 17:39:19 +0100 Cc: alpine-infra@alpinelinux.org Message-Id: References: <700B1EC2-05EB-433D-B8CA-886DDF4CAE70@jirutka.cz> To: William Pitcock --Apple-Mail=_BE7DF933-057C-4424-97F5-D0E90E688C53 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > 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. No, I thought this too, but it=E2=80=99s not how it really works. See = below. > Look at the haskell + cabal packaging for inspiration, it is a similar = situation, and is policy compliant. Have *you* looked at ghc (haskell) package? I did some time ago (and = now), tried hard to figure out how does it build. There is = `makedepends_build=3D"$pkgname"`, so it depends on itself. There used to = be package ghc-bootstrap, but it was not used anymore (and even that = couldn=E2=80=99t work without manual intervention). I asked fabled about = it and he explained me that ghc-bootstrap was only temporary for initial = bootstrap, now ghc depends on itself and it must be probably manually = installed on the builder when bootstrapping. The same situation is community/rust. I even mentioned this in my email. Unfortunately the bootstrapping (and cross-compilation) process is still = not documented anywhere, so I can refer only to information that I was = told by more competent people like fabled. > A solution would be to take a copy of the cargo package from = distfiles.alpinelinux.org This is actually a good idea. I can keep it as it was before, just use = our cargo binary instead of now non-existence binary from the upstream. fabled or ncopa, could you please explain how is ghc and similar = packages handled? Ideally directly on wiki, or just via email and I will = copy it to wiki. Jakub > On 30. Oct 2017, at 4:14, William Pitcock = wrote: >=20 > Hi, >=20 > Since nobody fixed this on the builders, I wound up reverting this = change. >=20 > However, I have more to say. >=20 > On Sat, Oct 28, 2017 at 1:44 PM, Jakub Jirutka = wrote: >> Hi, >>=20 >> I=E2=80=99ve updated community/cargo package and removed dependency = on external prebuilt binary, so it now (make)depends on itself (you need = cargo to build cargo=E2=80=A6 *#^@$~$+). 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=E2=80=99t know any details. = Unfortunately I cannot do anything with it, =E2=80=99cause I don=E2=80=99t= have access to the builder. >=20 > 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. >=20 >> I changed the abuild to not use external prebuilt binary primarily = because the old URI of prebuilt binaries built by upstream=E2=80=99s CI = doesn=E2=80=99t work anymore. I didn=E2=80=99t find any other and if I = understand their CI configuration, they don=E2=80=99t 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. >=20 > 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. >=20 > Look at the haskell + cabal packaging for inspiration, it is a similar > situation, and is policy compliant. >=20 > William --Apple-Mail=_BE7DF933-057C-4424-97F5-D0E90E688C53 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- iQEzBAEBCQAdFiEEwlgOtm6+gnC7W+06PZeHr2nsdbkFAln3VbcACgkQPZeHr2ns dbntPgf9Fz6lgmGWHPNmsOB+sEsdsAZGFhkf2wErL9dqMOvpmQ47JhFzURNOWIPI QL6pkmKqVGztTVUaCudQ3YEtqA39ejD3Mk7HXfo4lM+uGisYfoOJGTaXagXgO2EG tFni7R6sMlqadU8q9j9leh0lfuA8tpttRAG9WjytIrsJkwGVcdGuqVRCkp8rJVPG gAs0h5dty0D8RE08+nZ5mrOUCPBeOuMg9i/O+GRwLMHkExGn1ZjGIlMlwc7CEQdL ZOUCQdfi7vqWMZrrSDhPqWFK2QHq5G2gKlUVv148GypqzEknAq8Yntp5qOt6mD31 cz7J9xn5BavLttQnyzcfIuQ9dVgM2w== =KRr2 -----END PGP SIGNATURE----- --Apple-Mail=_BE7DF933-057C-4424-97F5-D0E90E688C53--