Bug#1056571: pelican: please make the build reproducible

Chris Lamb lamby at debian.org
Thu Nov 23 10:33:45 GMT 2023


Source: pelican
Version: 4.9.1+dfsg-1
Severity: wishlist
Tags: patch
User: reproducible-builds at lists.alioth.debian.org
Usertags: timestamps
X-Debbugs-Cc: reproducible-bugs at lists.alioth.debian.org

Hi,

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

├── ./usr/share/doc/pelican/html/content.html
│ @@ -903,15 +903,15 @@
│
│                </div>
│              </a>
│          </div>
│          <div class="bottom-of-page">
│            <div class="left-details">
│              <div class="copyright">
│ -                Copyright © 2010–2023, <a href="https://justinmayer.com">Justin Mayer</a>, Alexis Metaireau, and contributors
│ +                Copyright © 2010–2024, <a href="https://justinmayer.com">Justin Mayer</a>, Alexis Metaireau, and contributors


A patch is attached that seeds this date from the SOURCE_DATE_EPOCH
environment variable.

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


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby at debian.org / chris-lamb.co.uk
       `-
-------------- next part --------------
--- a/debian/patches/reproducible-build.patch	1970-01-01 01:00:00.000000000 +0100
--- b/debian/patches/reproducible-build.patch	2023-11-23 10:30:16.704226475 +0000
@@ -0,0 +1,22 @@
+Description: Make the build reproducible
+Author: Chris Lamb <lamby at debian.org>
+Last-Update: 2023-11-23
+
+--- pelican-4.9.1+dfsg.orig/docs/conf.py
++++ pelican-4.9.1+dfsg/docs/conf.py
+@@ -1,5 +1,6 @@
+ import datetime
+ import os
++import time
+ import sys
+ 
+ if sys.version_info >= (3, 11):
+@@ -28,7 +29,7 @@ extensions = [
+ source_suffix = ".rst"
+ master_doc = "index"
+ project = project_data.get("name").upper()
+-year = datetime.datetime.now().date().year
++year = datetime.datetime.utcfromtimestamp(int(os.environ.get('SOURCE_DATE_EPOCH', time.time()))).year
+ copyright = f"2010\u2013{year}"
+ exclude_patterns = ["_build"]
+ release = project_data.get("version")
--- a/debian/patches/series	2023-11-23 10:05:08.543720337 +0000
--- b/debian/patches/series	2023-11-23 10:17:42.964110770 +0000
@@ -1,2 +1,3 @@
 default_theme.patch
 drop-notmyidea-builtin-themes.patch
+reproducible-build.patch


More information about the Reproducible-bugs mailing list