Source: isync
Version: 1.5.1-1
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
isync could not be built reproducibly.

This is because the manual pages included the current date:

├── ./usr/share/man/man1/mbsync.1.gz
│ │ @@ -1,14 +1,14 @@
│ │  .\" mbsync - mailbox synchronizer
│ │  .
│ │ -.TH mbsync 1 2025-03-13 "isync 1.5.1" "User Commands"
│ │ +.TH mbsync 1 2026-04-15 "isync 1.5.1" "User Commands"
│ │  .
│ │  .SH NAME

Patch attached that sources this value from SOURCE_DATE_EPOCH.

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


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      la...@debian.org / chris-lamb.co.uk
       `-
--- a/debian/patches/reproducible-build.patch   1970-01-01 01:00:00.000000000 
+0100
--- b/debian/patches/reproducible-build.patch   2025-03-31 11:14:22.256947078 
+0100
@@ -0,0 +1,15 @@
+Description: Make the build reproducible
+Author: Chris Lamb <la...@debian.org>
+Last-Update: 2025-03-31
+
+--- isync-1.5.1.orig/configure.ac
++++ isync-1.5.1/configure.ac
+@@ -251,7 +251,7 @@ if test "x$have_macos_keychain" != xno;
+     AC_SUBST(KEYCHAIN_LIBS, 
["-Wl,-framework,Security,-framework,CoreFoundation"])
+ fi
+ 
+-RELEASE_DATE=`date -r $0 +%F`
++RELEASE_DATE=m4_esyscmd([date --utc --date="@${SOURCE_DATE_EPOCH:-$(date 
+%s)}" +%Y-%m-%d])
+ AC_SUBST(RELEASE_DATE)
+ 
+ AC_CONFIG_FILES([Makefile src/Makefile src/mbsync.1 src/mdconvert.1 
isync.spec])
--- a/debian/patches/series     1970-01-01 01:00:00.000000000 +0100
--- b/debian/patches/series     2025-03-31 11:14:19.800927193 +0100
@@ -0,0 +1 @@
+reproducible-build.patch

Reply via email to