bug-inetutils
[Top][All Lists]
Advanced

[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

Attachment: signature.asc
Description: PGP signature


reply via email to

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