[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#48205] [PATCH v2] gnu: emacs-org: Make build reproducible
From: |
Ludovic Courtès |
Subject: |
[bug#48205] [PATCH v2] gnu: emacs-org: Make build reproducible |
Date: |
Sat, 12 Jun 2021 00:54:36 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux) |
Hi,
Morgan.J.Smith@outlook.com skribis:
> From: Morgan Smith <Morgan.J.Smith@outlook.com>
>
> * gnu/packages/emacs-xyz.scm (emacs-org)[phases]: Remove loaddefs and use
> autoloads instead. Copy autoloads into build directory.
[...]
> (modify-phases %standard-phases
> + ;; Org ships with the file org-loaddefs.el that functions like our
> + ;; autoloads. Something about the interaction between the loaddefs
> + ;; and autoloads makes the build non-deterministic. We should opt
> for
> + ;; our autoloads system over the loaddefs since the loaddefs are
> + ;; autogenerated for the release tarball. org-loaddefs.el is
> + ;; mentioned by name in the source files so we have to do a blanket
> + ;; regex search and replace.
I wonder about the interaction.
Are you sure using org-autoloads.el everywhere is enough to fix the
problem? With current master, I see:
--8<---------------cut here---------------start------------->8---
$ guix challenge emacs-org --substitute-urls='https://ci.guix.gnu.org
https://bayfront.guix.gnu.org'
/gnu/store/2pny4z6mbi2aybgzzxz0yrzkds7hbpmq-emacs-org-9.4.6 contents differ:
no local build for
'/gnu/store/2pny4z6mbi2aybgzzxz0yrzkds7hbpmq-emacs-org-9.4.6'
https://ci.guix.gnu.org/nar/lzip/2pny4z6mbi2aybgzzxz0yrzkds7hbpmq-emacs-org-9.4.6:
098vc0wpc0rp9qrmh8l75n77j0bd4xjya3q8vd317rxdsfs9dd4n
https://bayfront.guix.gnu.org/nar/lzip/2pny4z6mbi2aybgzzxz0yrzkds7hbpmq-emacs-org-9.4.6:
0zfzlf28rs7rjvvlq1d3b7cngcvz5grvrkjvsc5j9vp0ikn0zg9p
differing files:
/share/emacs/site-lisp/org-9.4.6/org-loaddefs.el
/share/emacs/site-lisp/org-9.4.6/org-autoloads.elc
/share/emacs/site-lisp/org-9.4.6/org-autoloads.el
--8<---------------cut here---------------end--------------->8---
And with diffoscope:
--8<---------------cut here---------------start------------->8---
$ guix challenge emacs-org --substitute-urls='https://ci.guix.gnu.org
https://bayfront.guix.gnu.org' --diff=diffoscope
/gnu/store/2pny4z6mbi2aybgzzxz0yrzkds7hbpmq-emacs-org-9.4.6 contents differ:
no local build for
'/gnu/store/2pny4z6mbi2aybgzzxz0yrzkds7hbpmq-emacs-org-9.4.6'
https://ci.guix.gnu.org/nar/lzip/2pny4z6mbi2aybgzzxz0yrzkds7hbpmq-emacs-org-9.4.6:
098vc0wpc0rp9qrmh8l75n77j0bd4xjya3q8vd317rxdsfs9dd4n
https://bayfront.guix.gnu.org/nar/lzip/2pny4z6mbi2aybgzzxz0yrzkds7hbpmq-emacs-org-9.4.6:
0zfzlf28rs7rjvvlq1d3b7cngcvz5grvrkjvsc5j9vp0ikn0zg9p
bayfront.guix.gnu.org 1.7MiB 7.9MiB/s 00:00
[##################] 100.0%--- /tmp/guix-directory.vqBGkT
+++ /tmp/guix-directory.H4HEMX
│ --- /tmp/guix-directory.vqBGkT/share
├── +++ /tmp/guix-directory.H4HEMX/share
│ │ --- /tmp/guix-directory.vqBGkT/share/emacs
│ ├── +++ /tmp/guix-directory.H4HEMX/share/emacs
│ │ │ --- /tmp/guix-directory.vqBGkT/share/emacs/site-lisp
│ │ ├── +++ /tmp/guix-directory.H4HEMX/share/emacs/site-lisp
│ │ │ │ --- /tmp/guix-directory.vqBGkT/share/emacs/site-lisp/org-9.4.6
│ │ │ ├── +++ /tmp/guix-directory.H4HEMX/share/emacs/site-lisp/org-9.4.6
│ │ │ │ │ ---
/tmp/guix-directory.vqBGkT/share/emacs/site-lisp/org-9.4.6/org-autoloads.el
│ │ │ │ ├── +++
/tmp/guix-directory.H4HEMX/share/emacs/site-lisp/org-9.4.6/org-autoloads.el
│ │ │ │ │ @@ -1071,28 +1071,52 @@
│ │ │ │ │ ;;;### (autoloads nil "org-mouse" "org-mouse.el" (0 1 0 0))
│ │ │ │ │ ;;; Generated autoloads from org-mouse.el
│ │ │ │ │
│ │ │ │ │ (if (fboundp 'register-definition-prefixes)
(register-definition-prefixes "org-mouse" '("org-mouse-")))
│ │ │ │ │
│ │ │ │ │ ;;;***
│ │ │ │ │
│ │ │ │ │ +;;;### (autoloads "actual autoloads are elsewhere" "org-num"
"org-num.el"
│ │ │ │ │ +;;;;;; (0 1 0 0))
│ │ │ │ │ +;;; Generated autoloads from org-num.el
│ │ │ │ │ +
│ │ │ │ │ +(if (fboundp 'register-definition-prefixes)
(register-definition-prefixes "org-num" '("org-num-")))
│ │ │ │ │ +
│ │ │ │ │ +;;;***
│ │ │ │ │ +
│ │ │ │ │ ;;;### (autoloads nil "org-pcomplete" "org-pcomplete.el" (0 1 0 0))
│ │ │ │ │ ;;; Generated autoloads from org-pcomplete.el
│ │ │ │ │
│ │ │ │ │ (if (fboundp 'register-definition-prefixes)
(register-definition-prefixes "org-pcomplete" '("org-" "pcomplete/org-mode/")))
│ │ │ │ │
│ │ │ │ │ ;;;***
│ │ │ │ │
│ │ │ │ │ +;;;### (autoloads "actual autoloads are elsewhere" "org-plot"
"org-plot.el"
│ │ │ │ │ +;;;;;; (0 1 0 0))
│ │ │ │ │ +;;; Generated autoloads from org-plot.el
│ │ │ │ │ +
│ │ │ │ │ +(if (fboundp 'register-definition-prefixes)
(register-definition-prefixes "org-plot" '("org-plot")))
│ │ │ │ │ +
│ │ │ │ │ +;;;***
│ │ │ │ │ +
│ │ │ │ │ ;;;### (autoloads nil "org-protocol" "org-protocol.el" (0 1 0 0))
│ │ │ │ │ ;;; Generated autoloads from org-protocol.el
│ │ │ │ │
│ │ │ │ │ (if (fboundp 'register-definition-prefixes)
(register-definition-prefixes "org-protocol" '("org-protocol-")))
│ │ │ │ │
│ │ │ │ │ ;;;***
--8<---------------cut here---------------end--------------->8---
Thanks,
Ludo’.