Source: gutenprint Severity: normal Tags: patch User: reproducible-bui...@lists.alioth.debian.org Usertags: timestamps username uname kernel X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org
Various information about the build environment is captured in the config.summary and gutenprint.tag files: https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/diffoscope-results/gutenprint.html /usr/share/doc/libgutenprint-doc/reference/gutenprint.tag.gz <path>/build/1st/gutenprint-5.3.3/include/gutenprint/</path> vs. <path>/build/2/gutenprint-5.3.3/2nd/include/gutenprint/</path> and /usr/lib/x86_64-linux-gnu/gutenprint/5.3/config.summary Generated·at·Fri·Nov·12·00:38:07·-12·2021·by·pbuilder1 vs. Generated·at·Fri·Dec·16·09:37:41·+14·2022·by·pbuilder2 and uname·-a·output: Linux·ionos1-amd64·5.10.0-9-amd64·#1·SMP·Debian·5.10.70-1·(2021-09-30)·x86_64·GNU/Linux vs. uname·-a·output: Linux·i-capture-the-hostname·5.14.0-0.bpo.2-amd64·#1·SMP·Debian·5.14.9-2~bpo11+1·(2021-10-10)·x86_64·GNU/Linux The attached two patches fix this by sanitizing the the files from debian/rules in the dh_installdocs override and dh_install-arch override targets. With these patches applied, gutenprint should build reproducibly on tests.reproducible-builds.org. On a somewhat unrelated note, I also noticed needing to override dh_listmissing to only warn rather than fail on missing various documentation files. I'm not sure if this was due to something in my specific environment, or a general issue for the package, but figured it was worth a heads up. Thanks for maintaining gutenprint! live well, vagrant
From 07e666d4cc4e93395852902610da198ee543852e Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian <vagr...@reproducible-builds.org> Date: Tue, 30 Nov 2021 02:27:28 +0000 Subject: [PATCH 1/2] debian/rules: Remove build paths from gutenprint.tag file. https://reproducible-builds.org/docs/build-path/ --- debian/rules | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/debian/rules b/debian/rules index d50deaf..c33e323 100755 --- a/debian/rules +++ b/debian/rules @@ -40,6 +40,10 @@ override_dh_installdocs: dh_installdocs -pescputil --link-doc=libgutenprint9 dh_installdocs -plibgutenprintui2-dev --link-doc=libgutenprintui2-2 dh_installdocs --remaining-packages + # Remove build directory from gutenprint.tag file to make + # build reproducible. + sed -i -e 's,$(CURDIR),BUILDPATH,g' \ + debian/libgutenprint-doc/usr/share/doc/libgutenprint-doc/reference/gutenprint.tag override_dh_install-arch: ifeq ($(DEB_BUILD_ARCH_OS),linux) -- 2.30.2
From 523247408d47590253c46f2119dc09104e972a10 Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian <vagr...@reproducible-builds.org> Date: Tue, 30 Nov 2021 02:31:37 +0000 Subject: [PATCH 2/2] debian/rules: Remove build path, timestamp, username and uname output from config.summary file. https://reproducible-builds.org/docs/build-path/ https://reproducible-builds.org/docs/timestamps/ https://tests.reproducible-builds.org/debian/issues/user_hostname_manually_added_requiring_further_investigation_issue.html https://tests.reproducible-builds.org/debian/issues/captures_kernel_version_issue.html --- debian/rules | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/debian/rules b/debian/rules index c33e323..06de18a 100755 --- a/debian/rules +++ b/debian/rules @@ -46,6 +46,12 @@ override_dh_installdocs: debian/libgutenprint-doc/usr/share/doc/libgutenprint-doc/reference/gutenprint.tag override_dh_install-arch: + # Remove build path, timestamp, username, and uname output to + # make build reproducible. + sed -i -e 's,$(CURDIR),BUILDPATH,g' \ + -e 's,Generated at.*,Generated at REDACTED,g' \ + -e 's,uname -a output:.*,uname -a output: REDACTED,g' \ + $(shell find debian/tmp/ -name config.summary) ifeq ($(DEB_BUILD_ARCH_OS),linux) dh_install -pprinter-driver-gutenprint usr/share/cups/usb endif -- 2.30.2
signature.asc
Description: PGP signature