[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#70169] [PATCH v3 13/13] maint: Ensure generated file reproducibilit
From: |
Janneke Nieuwenhuizen |
Subject: |
[bug#70169] [PATCH v3 13/13] maint: Ensure generated file reproducibility for dist. |
Date: |
Wed, 10 Apr 2024 19:25:27 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
pelzflorian (Florian Pelz) writes:
Hello Florian,
> Janneke Nieuwenhuizen <janneke@gnu.org> writes:
>> +auto-clean: maintainer-clean-vti doc-clean
>> + rm -f ABOUT-NLS INSTALL
>> + rm -f aclocal.m4 configure libtool Makefile.in
>> + git clean -fdx -- '.am*' build-aux m4 po
>
> Could you enclose the call to git in
> “if test -e .git; then … fi” as well?
I've changed it to
if test -e .git; then \
git clean -fdx -- '.am*' build-aux m4 po; \
else \
rm -rf .am*; \
$(MAKE) -C po/guix maintainer-clean; \
$(MAKE) -C po/packages maintainer-clean; \
fi
> I’ve switched to wip-tarball, but the hash is different.
> It is still quite similar.
> florian@floriandesktop ~/src/guix [env]$ diffoscope
> guix-1.3.0.57741-0e3053.tar.gz /tmp/guix-1.3.0.57741-0e3053.tar.gz
> --- guix-1.3.0.57741-0e3053.tar.gz
> +++ /tmp/guix-1.3.0.57741-0e3053.tar.gz
> ├── guix-1.3.0.57741-0e3053.tar
> │ ├── file list
[..]
> │ │ @@ -215,25 +215,25 @@
> │ │ --rw-r--r-- 0 0 0 123 2024-04-08 18:08:07.000000
> guix-1.3.0.57741-0e3053/doc/stamp-2
> │ │ --rw-r--r-- 0 0 0 123 2024-04-08 18:08:07.000000
> guix-1.3.0.57741-0e3053/doc/stamp-3
> │ │ +-rw-r--r-- 0 0 0 125 2024-04-08 18:08:07.000000
> guix-1.3.0.57741-0e3053/doc/stamp-2
> │ │ +-rw-r--r-- 0 0 0 125 2024-04-08 18:08:07.000000
> guix-1.3.0.57741-0e3053/doc/stamp-3
[..]
> guix-1.3.0.57741-0e3053/etc/completion/bash/guix
> │ ├── guix-1.3.0.57741-0e3053/doc/stamp-2
> │ │ @@ -1,4 +1,4 @@
> │ │ -@set UPDATED 29 Februar 2024
> │ │ -@set UPDATED-MONTH Februar 2024
> │ │ +@set UPDATED 29 February 2024
> │ │ +@set UPDATED-MONTH February 2024
> │ │ @set EDITION .3.0.57741-0e3053
> │ │ @set VERSION .3.0.57741-0e3053
[..]
> I have used an de_DE locale where February is Februar.
Wow, that's amazing news, and thanks for testing! (I could have said:
well, using de_DE is /asking/ for such differences ;)
I tested with
export LANG=de_DE LANGUAGE=fr_FR LC_TIME=pt_BR
and found similar errors, and only those. In this case LC_TIME
prevailed. So I made this change
--8<---------------cut here---------------start------------->8---
@@ -264,8 +264,8 @@ endif
# Git rather than using metadata from the filesystem.
define version.texi-from-git
$(srcdir)/doc/stamp-$(1): $(srcdir)/$(2) $(top_srcdir)/configure
- $$(AM_V_GEN)set -e \
- export LC_ALL=C; \
+ $$(AM_V_GEN)set -e; \
+ export LANG=C LANGUAGE=C LC_ALL=C LC_TIME=C; \
export TZ=UTC0; \
timestamp="$$$$(git log --pretty=format:%ct -n1 -- "$$<" \
2>/dev/null \
--8<---------------cut here---------------end--------------->8---
and checked against a clean/LC_ALL=C locale.
Not sure if I should send a V4 for this? Let's see if there are more
comments.
Greetings,
Janneke
--
Janneke Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com
- [bug#70169] [PATCH v3 00/13] Reproducible `make dist' tarball in defiance of Autotools and Gettext, (continued)
- [bug#70169] [PATCH v3 00/13] Reproducible `make dist' tarball in defiance of Autotools and Gettext, Janneke Nieuwenhuizen, 2024/04/08
- [bug#70169] [PATCH v3 01/13] doc: Use "dejavu sans" instead of "Helvetica" or "sans" in dot images., Janneke Nieuwenhuizen, 2024/04/08
- [bug#70169] [PATCH v3 07/13] maint: Generate 'doc/version-LANG.texi' reproducibly., Janneke Nieuwenhuizen, 2024/04/08
- [bug#70169] [PATCH v3 03/13] maint: Use reproducible timestamps and name for tarball., Janneke Nieuwenhuizen, 2024/04/08
- [bug#70169] [PATCH v3 02/13] maint: Cater for running `make dist' from a worktree., Janneke Nieuwenhuizen, 2024/04/08
- [bug#70169] [PATCH v3 04/13] maint: Generate 'doc/version.texi' reproducibly., Janneke Nieuwenhuizen, 2024/04/08
- [bug#70169] [PATCH v3 10/13] maint: Avoid EPS generation to fail silently, ensure reproducibility., Janneke Nieuwenhuizen, 2024/04/08
- [bug#70169] [PATCH v3 11/13] maint: Avoid PNG and PDF generation to fail silently., Janneke Nieuwenhuizen, 2024/04/08
- [bug#70169] [PATCH v3 13/13] maint: Ensure generated file reproducibility for dist., Janneke Nieuwenhuizen, 2024/04/08
[bug#70169] [PATCH v3 08/13] maint: Use xgettext.scm wrapper to create .PO files reproducibly., Janneke Nieuwenhuizen, 2024/04/08
[bug#70169] [PATCH v3 06/13] maint: Generate AUTHORS and ChangeLog reproducibly., Janneke Nieuwenhuizen, 2024/04/08
[bug#70169] [PATCH v3 09/13] maint: Use reproducible Git timestamp for POT-Creation-Date., Janneke Nieuwenhuizen, 2024/04/08
[bug#70169] [PATCH v3 05/13] maint: Help help2man generate reproducible man-pages., Janneke Nieuwenhuizen, 2024/04/08
[bug#70169] [PATCH v3 12/13] maint: Reset CreationDate metadata on generated PDFs., Janneke Nieuwenhuizen, 2024/04/08