Subject: Re: [bug#35511] [PATCH 0/1] Add configure flag to emacs to improve repoducibility

From: Ludovic Courtès <[email-masked]>
Date: Tue, 21 May 2019 22:50:20 +0200

Hi wednesday,

wednesday <[email-masked]> skribis:

> This patch adds the --disable-build-details configure-flag to the emacs package.
> By default the emacs binary stores some information about how it was build, as
> stated here:
> "By default the dumped emacs executable records details such as the build time and host name. Use the --disable-build-details option of configure to suppress these details, so that building and installing Emacs twice from the same sources is more likely to result in identical copies of Emacs."
> https://www.gnu.org/software/emacs/manual/html_node/elisp/Building-Emacs.html
>
> There is also this mailing list post about emacs repoducibility:
> https://lists.gnu.org/archive/html/emacs-devel/2016-11/msg00711.html

This is the right thing to do, applied!

I’m committing a followup that does the same for ‘emacs-minimal’ (even
though ‘emacs-minimal’ has 784 dependent packages, I’m committing to
‘master’ because most of these build in a few seconds.)

I’ve run:

  guix challenge emacs \
    --substitute-urls='https://mirror.hydra.gnu.org https://berlin.guix.gnu.org'

on a commit before this patch, and there’s the ‘.emacs-real’ binary
alongside a dozen of .elc files that differ.  So this may not be the end
of the road, but we should keep monitoring with ‘challenge’ and ‘--check’.

Thank you!

Ludo’.