Source: fritzconnection
Version: 1.14.0-2
Severity: wishlist
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: timestamps
X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org

Hi,

Whilst working on the Reproducible Builds effort [0], we noticed that
fritzconnection could not be built reproducibly.

This is because the documentation embedded the current build date.

Patch attached.

 [0] https://reproducible-builds.org/


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      la...@debian.org / chris-lamb.co.uk
       `-
--- a/debian/patches/reproducible-builds.patch  1970-01-01 01:00:00.000000000 
+0100
--- b/debian/patches/reproducible-builds.patch  2024-11-14 09:29:23.865841876 
+0000
@@ -0,0 +1,30 @@
+Description: Make the build reproducible
+Author: Chris Lamb <la...@debian.org>
+Last-Update: 2024-11-14
+
+--- fritzconnection-1.14.0.orig/docs/conf.py
++++ fritzconnection-1.14.0/docs/conf.py
+@@ -21,7 +21,8 @@
+ 
+ # import fritzconnection
+ import re
+-from datetime import date
++import os
++import time
+ from pathlib import Path
+ 
+ 
+@@ -35,9 +36,12 @@ def get_version():
+         return mo.group(1)
+     raise RuntimeError(f"Unable to find version string in {path}")
+ 
++year = time.strftime(
++    "%Y", time.gmtime(int(os.environ.get('SOURCE_DATE_EPOCH', time.time()))),
++)
+ 
+ project = 'fritzconnection'
+-copyright = '2013 - {}, Klaus Bremer'.format(date.today().year)
++copyright = f'2013 - {year}, Klaus Bremer'
+ author = 'Klaus Bremer'
+ 
+ # release: the fritzconnection.__version__ as is, including alpha/beta/rc tags
--- a/debian/patches/series     1970-01-01 01:00:00.000000000 +0100
--- b/debian/patches/series     2024-11-14 09:29:22.933839325 +0000
@@ -0,0 +1 @@
+reproducible-builds.patch

Reply via email to