[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Reproducible tarballs
From: |
Simon Josefsson |
Subject: |
Reproducible tarballs |
Date: |
Sun, 12 May 2024 12:56:55 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) |
All,
I have committed the attached patches giving us reproducible tarballs.
The particular logic to verify this continously is in the
000-reproducibility pipeline job, code here:
https://gitlab.com/gnulib/pipeline/-/blob/5b224c783dc4d3ef125f1d3974d895178a820c95/gnu/inetutils.yml#L284
Build results are here:
https://gitlab.com/gsasl/inetutils/-/pipelines/1287332401
With SHA256 checksum output comparisons done here:
https://gitlab.com/gsasl/inetutils/-/jobs/6831038807
/Simon
From 71226a79c9b9c7b1b0ef0d05f8f41ac79dd4e491 Mon Sep 17 00:00:00 2001
From: Simon Josefsson <simon@josefsson.org>
Date: Sun, 12 May 2024 10:46:33 +0200
Subject: [PATCH 1/3] maint: Make tarball reproducible.
* cfg.mk (TAR_OPTIONS): Hard code mode and mtime.
* Makefile.am (mtime-NEWS-to-git-HEAD): Add.
(dist-hook): Use it.
---
Makefile.am | 11 +++++++++++
cfg.mk | 2 ++
2 files changed, 13 insertions(+)
diff --git a/Makefile.am b/Makefile.am
index eab6400e..8ffcb90a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -46,3 +46,14 @@ gen-ChangeLog:
{ rm -f $(distdir)/ChangeLog && \
mv $(distdir)/cl-t $(distdir)/ChangeLog; } \
fi
+
+# dist
+
+dist-hook: mtime-NEWS-to-git-HEAD
+
+.PHONY: mtime-NEWS-to-git-HEAD
+mtime-NEWS-to-git-HEAD:
+ $(AM_V_GEN)if test -e $(srcdir)/.git \
+ && command -v git > /dev/null; then \
+ touch -m -d @"$$(git log -1 --format=%ct)" $(srcdir)/NEWS; \
+ fi
diff --git a/cfg.mk b/cfg.mk
index a0333e1c..307982a8 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -32,6 +32,8 @@ update-copyright-env = \
UPDATE_COPYRIGHT_USE_INTERVALS=2 \
UPDATE_COPYRIGHT_MAX_LINE_LENGTH=79
+TAR_OPTIONS += --mode=go+u,go-w --mtime=$(srcdir)/NEWS
+
# maint.mk's public-submodule-commit breaks on shallow gnulib
submodule-checks =
gl_public_submodule_commit =
--
2.41.0
From 9a3da0007d9507299cf38895ab92ea45aaf3f9d9 Mon Sep 17 00:00:00 2001
From: Simon Josefsson <simon@josefsson.org>
Date: Sun, 12 May 2024 11:59:04 +0200
Subject: [PATCH 2/3] telnetd: Make --help output reproducible.
* telnetd/telnetd.c (argp_options): Don't use PATH_LOGIN.
---
telnetd/telnetd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/telnetd/telnetd.c b/telnetd/telnetd.c
index 53565d37..25f45440 100644
--- a/telnetd/telnetd.c
+++ b/telnetd/telnetd.c
@@ -112,7 +112,7 @@ static struct argp_option argp_options[] = {
{"debug", 'D', "LEVEL", OPTION_ARG_OPTIONAL,
"set debugging level", GRID},
{"exec-login", 'E', "STRING", 0,
- "set program to be executed instead of " PATH_LOGIN, GRID},
+ "set program to be executed instead of standard login(1)", GRID},
{"no-hostinfo", 'h', NULL, 0,
"do not print host information before login has been completed", GRID},
{"linemode", 'l', "MODE", OPTION_ARG_OPTIONAL,
--
2.41.0
From af43139504811d5bfdd481db5303e0e5d803dcef Mon Sep 17 00:00:00 2001
From: Simon Josefsson <simon@josefsson.org>
Date: Sun, 12 May 2024 12:35:18 +0200
Subject: [PATCH 3/3] NEWS: Mention reproducible tarballs.
---
NEWS | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/NEWS b/NEWS
index 99d570e1..6d7bfef9 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,11 @@ GNU inetutils NEWS -- history of user-visible changes.
* Noteworthy changes in release ?.? (????-??-??) [?]
+** The release tarball is now reproducible.
+The following pairs are tested continously: Trisquel 11 and Ubuntu
+22.04, PureOS 10 and Debian 11, AlmaLinux 8 and RockyLinux 8,
+AlmaLinux 9 and RockyLinux 9.
+
** syslogd: Build fixes for macOS.
Thanks to Rui Chen and Caleb Xu, see
<https://savannah.gnu.org/bugs/?65093>.
--
2.41.0
signature.asc
Description: PGP signature
- Reproducible tarballs,
Simon Josefsson <=