Bug#1035804: unblock: jackd2/1.9.21~dfsg-3
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
Please unblock package jackd2
[ Reason ]
A regression (missing man pages) was discovered late in the freeze (30
April, Bug #1035308). The same day Vagrant submitted some
reproducibility fixes for man page generation, and one of these
patches also fixes #1035308. I just happened to notice, as a
Multimedia Team member.
[ Impact ]
Without these changes, there are no man pages for jackd (and
associated programs) which is a regression from bullseye. Given that
the generation of man pages needs to be reintroduced, it is best to do
it correctly and reproducibly; this is why I believe Vagrant's full
patch series is appropriate.
[ Tests ]
Man pages automatically build on buildd and reprobuild hosts now.
[ Risks ]
None. The changes affect man page generation, which is currently
inactive in bookworm.
[ Checklist ]
[x] all changes are documented in the d/changelog
[x] I reviewed all changes and I approve them
[x] attach debdiff against the package in testing
unblock jackd2/1.9.21~dfsg-3
diff -Nru jackd2-1.9.21~dfsg/debian/changelog jackd2-1.9.21~dfsg/debian/changelog
--- jackd2-1.9.21~dfsg/debian/changelog 2023-01-17 15:34:44.000000000 -0500
+++ jackd2-1.9.21~dfsg/debian/changelog 2023-05-04 15:29:39.000000000 -0400
@@ -1,3 +1,23 @@
+jackd2 (1.9.21~dfsg-3) unstable; urgency=medium
+
+ * Team upload.
+ * Import Vagrant Cascadian's reproducible builds patches:
+ - Add 0001-man-fill_template-Use-numeric-year-month-date-for-ma.patch.
+ Without this patch, manpages may contain a locale-translated month name,
+ as well as a different date based on the build environment timezone.
+ (Closes: #1035331).
+ - Add 0002-man-fill_template-Use-UTC-date-to-avoid-differences-.patch.
+ This patch solves variance in generated man page date stamps introduced
+ when man pages generated in different timezones are compared to each
+ other.
+ - Add 0003-man-fill_template-Use-POSIX-compatible-comparison.patch. When
+ built in an environment where /bin/sh -> bash, all of these manpages are
+ built and included in the package. When /bin/sh -> dash, the manpages
+ that users depend on are absent from bin:jackd2.
+ (Closes: #1035329, #1035308).
+
+ -- Nicholas D Steeves <sten@debian.org> Thu, 04 May 2023 15:29:39 -0400
+
jackd2 (1.9.21~dfsg-2) unstable; urgency=medium
* Team upload
diff -Nru jackd2-1.9.21~dfsg/debian/patches/0001-man-fill_template-Use-numeric-year-month-date-for-ma.patch jackd2-1.9.21~dfsg/debian/patches/0001-man-fill_template-Use-numeric-year-month-date-for-ma.patch
--- jackd2-1.9.21~dfsg/debian/patches/0001-man-fill_template-Use-numeric-year-month-date-for-ma.patch 1969-12-31 19:00:00.000000000 -0500
+++ jackd2-1.9.21~dfsg/debian/patches/0001-man-fill_template-Use-numeric-year-month-date-for-ma.patch 2023-05-04 15:29:39.000000000 -0400
@@ -0,0 +1,30 @@
+From 5fe932e274c720b68aff40125f1069fde1490935 Mon Sep 17 00:00:00 2001
+From: Vagrant Cascadian <vagrant@reproducible-builds.org>
+Date: Sun, 30 Apr 2023 15:44:21 -0700
+Subject: man/fill_template: Use numeric year-month-date for manpage.
+
+The month may be rendered for the locale of the build environment.
+
+https://reproducible-builds.org/docs/locales/
+---
+ man/fill_template | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/man/fill_template b/man/fill_template
+index 368cb1b..d1df18d 100644
+--- a/man/fill_template
++++ b/man/fill_template
+@@ -4,8 +4,8 @@ d=""
+
+ if [ "$2" == "True" ]; then
+ for i in *.0 ; do
+- sed -e "s/!VERSION!/${1}/g" -e "s/!DATE!/`date $d '+%B %Y'`/g" < ${i} > ${i%%0}1
++ sed -e "s/!VERSION!/${1}/g" -e "s/!DATE!/`date $d '+%Y-%m-%d'`/g" < ${i} > ${i%%0}1
+ done
+ else
+- sed -e "s/!VERSION!/${1}/g" -e "s/!DATE!/`date $d '+%B %Y'`/g" < jackd.0 > jackd.1
++ sed -e "s/!VERSION!/${1}/g" -e "s/!DATE!/`date $d '+%Y-%m-%d'`/g" < jackd.0 > jackd.1
+ fi
+--
+2.39.2
+
diff -Nru jackd2-1.9.21~dfsg/debian/patches/0002-man-fill_template-Use-UTC-date-to-avoid-differences-.patch jackd2-1.9.21~dfsg/debian/patches/0002-man-fill_template-Use-UTC-date-to-avoid-differences-.patch
--- jackd2-1.9.21~dfsg/debian/patches/0002-man-fill_template-Use-UTC-date-to-avoid-differences-.patch 1969-12-31 19:00:00.000000000 -0500
+++ jackd2-1.9.21~dfsg/debian/patches/0002-man-fill_template-Use-UTC-date-to-avoid-differences-.patch 2023-05-04 15:29:39.000000000 -0400
@@ -0,0 +1,26 @@
+From 021e05e61bc9ae982063d666de33473e391a0602 Mon Sep 17 00:00:00 2001
+From: Vagrant Cascadian <vagrant@reproducible-builds.org>
+Date: Sun, 30 Apr 2023 15:52:22 -0700
+Subject: man/fill_template: Use UTC date to avoid differences
+ based on timezone.
+
+https://reproducible-builds.org/docs/timezones/
+---
+ man/fill_template | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/man/fill_template b/man/fill_template
+index d1df18d..641cab8 100644
+--- a/man/fill_template
++++ b/man/fill_template
+@@ -1,6 +1,6 @@
+ #!/bin/sh
+ d=""
+-[ -z "$SOURCE_DATE_EPOCH" ] || d=--date=@$SOURCE_DATE_EPOCH
++[ -z "$SOURCE_DATE_EPOCH" ] || d="--utc --date=@$SOURCE_DATE_EPOCH"
+
+ if [ "$2" == "True" ]; then
+ for i in *.0 ; do
+--
+2.39.2
+
diff -Nru jackd2-1.9.21~dfsg/debian/patches/0003-man-fill_template-Use-POSIX-compatible-comparison.patch jackd2-1.9.21~dfsg/debian/patches/0003-man-fill_template-Use-POSIX-compatible-comparison.patch
--- jackd2-1.9.21~dfsg/debian/patches/0003-man-fill_template-Use-POSIX-compatible-comparison.patch 1969-12-31 19:00:00.000000000 -0500
+++ jackd2-1.9.21~dfsg/debian/patches/0003-man-fill_template-Use-POSIX-compatible-comparison.patch 2023-05-04 15:29:39.000000000 -0400
@@ -0,0 +1,27 @@
+From c4196d81e2f92f0664251a04834791952d59a023 Mon Sep 17 00:00:00 2001
+From: Vagrant Cascadian <vagrant@reproducible-builds.org>
+Date: Sun, 30 Apr 2023 15:52:59 -0700
+Subject: man/fill_template: Use POSIX compatible comparison.
+
+Bash supports == comparison, but other /bin/sh implementations may
+not.
+---
+ man/fill_template | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/man/fill_template b/man/fill_template
+index 641cab8..63642a3 100644
+--- a/man/fill_template
++++ b/man/fill_template
+@@ -2,7 +2,7 @@
+ d=""
+ [ -z "$SOURCE_DATE_EPOCH" ] || d="--utc --date=@$SOURCE_DATE_EPOCH"
+
+-if [ "$2" == "True" ]; then
++if [ "$2" = "True" ]; then
+ for i in *.0 ; do
+ sed -e "s/!VERSION!/${1}/g" -e "s/!DATE!/`date $d '+%Y-%m-%d'`/g" < ${i} > ${i%%0}1
+ done
+--
+2.39.2
+
diff -Nru jackd2-1.9.21~dfsg/debian/patches/series jackd2-1.9.21~dfsg/debian/patches/series
--- jackd2-1.9.21~dfsg/debian/patches/series 2023-01-17 14:24:25.000000000 -0500
+++ jackd2-1.9.21~dfsg/debian/patches/series 2023-05-04 15:29:39.000000000 -0400
@@ -1 +1,4 @@
1001-Fix_FTBFS.patch
+0001-man-fill_template-Use-numeric-year-month-date-for-ma.patch
+0002-man-fill_template-Use-UTC-date-to-avoid-differences-.patch
+0003-man-fill_template-Use-POSIX-compatible-comparison.patch
Reply to: