GNU bug report logs - #30287
Go compiler tries writing to the store

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix; Reported by: Leo Famulari <leo@HIDDEN>; dated Mon, 29 Jan 2018 21:40:02 UTC; Maintainer for guix is bug-guix@HIDDEN.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 29 Jan 2018 21:39:20 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 29 16:39:20 2018
Received: from localhost ([127.0.0.1]:48270 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1egH96-000809-CP
	for submit <at> debbugs.gnu.org; Mon, 29 Jan 2018 16:39:20 -0500
Received: from eggs.gnu.org ([208.118.235.92]:33865)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <leo@HIDDEN>) id 1egH94-0007zv-B3
 for submit <at> debbugs.gnu.org; Mon, 29 Jan 2018 16:39:18 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <leo@HIDDEN>) id 1egH8y-0002nf-0L
 for submit <at> debbugs.gnu.org; Mon, 29 Jan 2018 16:39:12 -0500
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=-0.5 required=5.0 tests=BAYES_05,T_DKIM_INVALID
 autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:44839)
 by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <leo@HIDDEN>) id 1egH8x-0002nW-Sg
 for submit <at> debbugs.gnu.org; Mon, 29 Jan 2018 16:39:11 -0500
Received: from eggs.gnu.org ([2001:4830:134:3::10]:53067)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <leo@HIDDEN>) id 1egH8w-0001RJ-M5
 for bug-guix@HIDDEN; Mon, 29 Jan 2018 16:39:11 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <leo@HIDDEN>) id 1egH8t-0002mX-Hb
 for bug-guix@HIDDEN; Mon, 29 Jan 2018 16:39:10 -0500
Received: from out3-smtp.messagingengine.com ([66.111.4.27]:41169)
 by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)
 (Exim 4.71) (envelope-from <leo@HIDDEN>) id 1egH8t-0002mP-CU
 for bug-guix@HIDDEN; Mon, 29 Jan 2018 16:39:07 -0500
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44])
 by mailout.nyi.internal (Postfix) with ESMTP id C6E892111D;
 Mon, 29 Jan 2018 16:39:06 -0500 (EST)
Received: from frontend2 ([10.202.2.161])
 by compute4.internal (MEProxy); Mon, 29 Jan 2018 16:39:06 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=famulari.name;
 h=cc:content-type:date:from:in-reply-to:message-id:mime-version
 :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s=
 mesmtp; bh=xAhey1Z2cAVhLScXJxnlUistCiZuUoImPEpU5aTgi5g=; b=qAHvI
 mxO3QJ2huFLogB6F1OhuPvZG3xg/kTL+yu0HGWDk7CpFuo9G93OMFybo7j6KE7YJ
 C7XIv3FF2KalOSmMGR3Rouw3JdVpVmHyLb5SuqEv1KHgoEi58I4ekzSllF4UoSbi
 KbvQSKoLMup+ZiTUiywMuHYBrkSmq4o+NEWBk0=
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:from:in-reply-to
 :message-id:mime-version:references:subject:to:x-me-sender
 :x-me-sender:x-sasl-enc; s=fm1; bh=xAhey1Z2cAVhLScXJxnlUistCiZuU
 oImPEpU5aTgi5g=; b=MhgawiRp7GL4JrrYXGl0BbxnDqusPwhKG5t3XiioaDGmp
 Mze2xeNjnRsG/IUedmcqlV1gecK2tcTofRDvnK561BM2NL9TgTuT32btOygwu3ch
 JW4S2mROXA7B2TAq45KMDvJAzFNbgGccDzEpnG75eRMYLs3Cpv9UcGfGaLvA9uSh
 UIR4mkyVsFyEVJiHmK12u1po68Hqcqrhz6lW6HVoi+bdjao5f+M9hGTgQ3Zn/xqD
 vqG3Lf4eHQsksdnFwtG2TDMy/JM42Q0vikXLSp/ikz5S4Y5djUQChSa3x4CuBthp
 S/fl2cgWT7iwnth1DIScTwWnIjo/iF98gxqrIbGOA==
X-ME-Sender: <xms:epRvWiT4nJuozasKE1p03kujLu-EYdV5dLulO7LLn-OgNiGttXtkuw>
Received: from localhost (c-76-124-202-137.hsd1.pa.comcast.net
 [76.124.202.137])
 by mail.messagingengine.com (Postfix) with ESMTPA id 7B7F7240B6;
 Mon, 29 Jan 2018 16:39:06 -0500 (EST)
Date: Mon, 29 Jan 2018 16:39:05 -0500
From: Leo Famulari <leo@HIDDEN>
To: Peter Mikkelsen <petermikkelsen10@HIDDEN>
Subject: Go compiler tries writing to the store
Message-ID: <20180129213905.GB8542@HIDDEN>
References: <CADh9keUd2=WuQoY55rYKUFtkbpymMP2YxRFDaJ=oifdZCOQcrw@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha256;
 protocol="application/pgp-signature"; boundary="gatW/ieO32f1wygP"
Content-Disposition: inline
In-Reply-To: <CADh9keUd2=WuQoY55rYKUFtkbpymMP2YxRFDaJ=oifdZCOQcrw@HIDDEN>
User-Agent: Mutt/1.9.2 (2017-12-15)
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
 [fuzzy]
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -4.1 (----)
X-Debbugs-Envelope-To: submit
Cc: bug-guix@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -4.1 (----)


--gatW/ieO32f1wygP
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Mon, Jan 29, 2018 at 10:50:10AM +0100, Peter Mikkelsen wrote:
> Hi guix,

Hi, thanks for this report! I saw your brief conversation on #guix with
civodul. Unfortunately I've only been paying attention to packaging Go
software with Guix, so I didn't notice this issue.

> For example, after setting the environment variable GOPATH to
> /home/peter/go, and creating a small hello world program in there, I
> would normally be able to run 'go install' in that folder, and the
> hello world binary would end up in my gopath. But on guixSD this is
> not the case, since it seems like 'go install' is trying to compile
> every single library provided by to go package itself, and that means
> writing to the store, which is not possible.

This is definitely a problem that we need to fix. However, I'm not sure
where to start...

I'll try debugging by checking if this works on Nix, and seeing what
they do differently.

> So my question is: Is there a way to prevent 'go install' compiling
> things in the store, maybe by pre-compiling during installation of the
> go package? Or is there another preferred way to develop go
> applications on guix, since what i do now is 'go build', but that gets
> really slow with larger projects, at it recompiles everything
> everytime if i understand it right.

The compiler should never try to write to the store; something is wrong
with how we build it.

Changing the subject slightly, yes, `go build` always recompiles some
things:

In general, for Go libraries (they call them "packages"), `go build`
always discards the compiled objects. You have to use `go install` to
retain them and achieve a caching speedup.

For Go executable programs (called "commands"), `go build` does keep the
compiled executable.

To quote the docs [0]:

"Build compiles the packages named by the import paths, along with their
dependencies, but it does not install the results. [...] When compiling
multiple packages or a single non-main package, build compiles the
packages but discards the resulting object, serving only as a check that
the packages can be built."

https://golang.org/cmd/go/

--gatW/ieO32f1wygP
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEsFFZSPHn08G5gDigJkb6MLrKfwgFAlpvlHkACgkQJkb6MLrK
fwgZ0w/+JAo3Hfy3D+VKjXYcg896DSk5suh0Tezp7hznMdTq64yeMlDiY2B9W4kR
ooBa4R5AOB08f80+zsXT2755IaSgRnPhVhlMQk3XECUGN4Gq93QHd6mDnfVQDP38
xV3hk1AEi7wblWwvvB4z5vPMPFH2MVPG5RCs8Y4Jl1myB1Mz7IHV6V5JEk4pEmaP
43hXUgUlLwiK6HNRbPw33TCjM9RLenE6hEeDxwJ49zwTHFI5pjPjCo/EI1af8iiz
2ZwVmLjPYgUm3rk4B4lywEDQAXoVkuElZ0TmY9LEnKqEaVSBJ/LCnj5ztYYmu0Ja
QeJMe6hqlADHcLXxVPVJfOIvMpdeeIBw8vYa1vlxvLYyLE1nzk2UubjLXU6QO6U7
HY4lNLblluVnJrsAm9P3nuK4K0myc6VkWQk5YAOoi/0cpt+Fp4nLWn9dDSwaLAv3
1fvsW6oDEknFGiupQn9w2wj9DOTNuj4Dhkuit5qKWfYH8JYq6MpwmsjBImEPERIG
pdNRCKz0HJAncs12eju2oz/ihIM3NAXdLdvRR5ELHbQk4OHOZwUgTWtc+DN1pVDC
/MJWfFZVr706tqdfJGXYT1npmOEd6g4Bo6XA21mOa2KszDW49A8vL/BK5ngyoHQJ
vytjUn7dPD8Mh67f/W+baXJx4MjkyqT/V8gGrMC1ebj219/EbWc=
=ZVLo
-----END PGP SIGNATURE-----

--gatW/ieO32f1wygP--




Acknowledgement sent to Leo Famulari <leo@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-guix@HIDDEN. Full text available.
Report forwarded to bug-guix@HIDDEN:
bug#30287; Package guix. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 25 Nov 2019 12:00:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.