[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#990999: biber: reproducible builds: timezone-specific timestamps in PDF



Source: biber
Severity: normal
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: timestamps timezone
X-Debbugs-Cc: reproducible-bugs@lists.alioth.debian.org

A timezone-specific timestamp is embedded in biber.pdf:

  https://tests.reproducible-builds.org/debian/rb-pkg/bullseye/amd64/diffoscope-results/biber.html

  CreationDate:·"D:20210109045745-12'00'"
  vs.
  CreationDate:·"D:20210110065745+14'00'"


The attached patches fix this by calling lualatex with the --utc
argument in debian/rules and by patching biber.tex to not include a
document ID.

With these patches applied, biber should become reproducible on the
tests.reproducible-builds.org infrastructure.


Thanks for maintaining biber!


live well,
  vagrant
From e28893e3a4f317e2abce517b24c7707c760d1878 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@reproducible-builds.org>
Date: Mon, 12 Jul 2021 15:46:27 +0000
Subject: [PATCH 1/2] doc/biber.tex: Do not generate document ID.

The document ID is typically a hash of various information about the
built document including build path and time of document build.
---
 doc/biber.tex | 1 +
 1 file changed, 1 insertion(+)

diff --git a/doc/biber.tex b/doc/biber.tex
index 0df48fad..02e03b6a 100644
--- a/doc/biber.tex
+++ b/doc/biber.tex
@@ -1,4 +1,5 @@
 \documentclass{ltxdockit}
+\pdfvariable suppressoptionalinfo \numexpr512\relax
 \usepackage{btxdockit}
 \usepackage[british]{babel}
 \usepackage[strict=true,autostyle=true]{csquotes}
-- 
2.32.0

From ffdb8786f64b2b195cb93be22f4a0356a0f56bc2 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@reproducible-builds.org>
Date: Mon, 12 Jul 2021 15:49:11 +0000
Subject: [PATCH 2/2] debian/rules: Build PDF using UTC timezone and specified
 output directory.

Without specifying the timezone, embedded timestamps in the document
may vary between builds.

https://reproducible-builds.org/docs/timezones/
---
 debian/rules | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/debian/rules b/debian/rules
index 94f0241c..820c0048 100755
--- a/debian/rules
+++ b/debian/rules
@@ -10,8 +10,8 @@ export TEXMFVAR
 
 override_dh_auto_build:
 	dh_auto_build
-	# does not work at the moment
-	cd doc && lualatex biber.tex && lualatex biber.tex && lualatex biber.tex
-	
+	# Build biber.pdf using utc timezone
+	lualatex --utc --output-directory=doc doc/biber.tex
+
 override_dh_auto_test:
 	dh_auto_test -- test_files="$(TEST_FILES)"
-- 
2.32.0

Attachment: signature.asc
Description: PGP signature


Reply to: