Subject: Support reproducible builds
From: [email-masked] (Ludovic Courtès)
To: [email-masked]
Cc: Mark H Weaver <[email-masked]>
Date: Tue, 07 Apr 2015 13:48:16 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Currently .go files embed randomly-generated symbols stemming from
‘syntax-session-id’, which prevents reproducible builds (see
<https://lists.gnu.org/archive/html/guix-devel/2013-09/msg00159.html>.)

One way to fix it would be to allow users to specify a random seed used
when generating session ids, and to make that available as a
command-line option to ‘guild compile’.  (GCC does something similar
with its ‘-frandom-seed’ option.)

Probably, ‘syntax-session-id’ would have to be a SRFI-39 parameter and
we would need a ‘fresh-syntax-session-id’ procedure that would take a
seed as a parameter.  In turn, ‘fresh_syntax_session_id’ would need to
take that extra argument, and it would need to be changed to not read
directly from /dev/urandom.

WDYT?

Ludo’.