guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Timestamps in ...-autoloads.el files


From: Ludovic Courtès
Subject: Re: Timestamps in ...-autoloads.el files
Date: Wed, 21 Oct 2015 18:55:53 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Alex Kost <address@hidden> skribis:

> I like the idea to honor SOURCE_DATE_EPOCH, so I'm attaching a patch for
> this.  But now I don't know how to make Guix set this variable during
> the build process :-(  Need help.

Ahem, eventually, we’ll have to set it in ‘gnu-build’ in (guix build
gnu-build-system) in the next ‘core-updates’ cycle.

In the interim, we can set it in a phase of ‘emacs-build-system’, which
would entail few rebuilds.

WDYT?

> From b8dc19a65980690a636ad7f9f39b3c84991f4975 Mon Sep 17 00:00:00 2001
> From: Alex Kost <address@hidden>
> Date: Wed, 21 Oct 2015 15:59:23 +0300
> Subject: [PATCH] gnu: emacs: Honor 'SOURCE_DATE_EPOCH'.
> MIME-Version: 1.0
> Content-Type: text/plain; charset=UTF-8
> Content-Transfer-Encoding: 8bit
>
> Suggested by Ludovic Courtès <address@hidden>.
>
> * gnu/packages/patches/emacs-source-date-epoch.patch: New patch.
> * gnu-system.am (dist_patch_DATA): Add it.
> * gnu/packages/emacs.scm (emacs)[source]: Use it.

LGTM.

> +++ b/gnu/packages/patches/emacs-source-date-epoch.patch
> @@ -0,0 +1,20 @@
> +Honor SOURCE_DATE_EPOCH variable to avoid non-determinism in generated
> +"autoloads" files.
> +
> +--- a/lisp/emacs-lisp/autoload.el
> ++++ b/lisp/emacs-lisp/autoload.el
> +@@ -378,8 +378,12 @@
> +   "Insert the section-header line,
> + which lists the file name and which functions are in it, etc."
> +   (insert generate-autoload-section-header)
> +-  (prin1 `(autoloads ,autoloads ,load-name ,file ,time)
> +-     outbuf)
> ++  (let* ((env  (getenv "SOURCE_DATE_EPOCH"))
> ++         (time (if env
> ++                   (seconds-to-time (string-to-number env))
> ++                 time)))
> ++    (prin1 `(autoloads ,autoloads ,load-name ,file ,time)
> ++           outbuf))
> +   (terpri outbuf)
> +   ;; Break that line at spaces, to avoid very long lines.
> +   ;; Make each sub-line into a comment.

Could you also submit it upstream, Cc’ing guix-devel and
address@hidden  Hopefully that is
acceptable.  (I searched a bit but didn’t find a similar patch by the
Debian Reproducible team, but patch-tracker.debian.org is unreachable.)

Thanks!

Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]