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

Bug#997689: smplayer: please make the build reproducible



Source: smplayer
Version: 21.8.0-1
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: timestamps
X-Debbugs-Cc: reproducible-bugs@lists.alioth.debian.org

Hi,

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

This is because it embedded a timestamp in the smplayer.appdata.xml
file. Strangely, this line was commented out (from an XML parser's
perspective, that is), but it still renders the build unreproducible:

   -    <!-- <release version="21.8.0" date="2022-11-25"/> -->
   +    <!-- <release version="21.8.0" date="2021-10-24"/> -->

Patch attached that uses SOURCE_DATE_EPOCH.

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


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby@debian.org / chris-lamb.co.uk
       `-
--- a/debian/patches/11-reproducible-build.patch	1970-01-01 01:00:00.000000000 +0100
--- b/debian/patches/11-reproducible-build.patch	2021-10-24 10:04:51.886520349 +0100
@@ -0,0 +1,13 @@
+Description: Make the build reproducible
+Author: Chris Lamb <lamby@debian.org>
+Last-Update: 2021-10-24
+
+--- smplayer-21.8.0.orig/install_appdata.sh
++++ smplayer-21.8.0/install_appdata.sh
+@@ -3,5 +3,5 @@ install -m 644 smplayer.appdata.xml $1
+ 
+ ./get_version.sh
+ sed -e "s/{version}/`cat version`/" -i $1
+-sed -e "s/{date}/`date +%Y-%m-%d`/" -i $1
++sed -e "s/{date}/`date --utc --date="@${SOURCE_DATE_EPOCH:-$(date +%s)}" +%Y-%m-%d`/" -i $1
+ 
--- a/debian/patches/series	2021-10-24 09:57:42.166572210 +0100
--- b/debian/patches/series	2021-10-24 10:05:10.302518129 +0100
@@ -8,3 +8,4 @@
 
 #08-disable-yt-js.patch - if the 'only' problem is https - fixed in 09-
 10_drop_DONATE_REMINDER.patch
+11-reproducible-build.patch

Reply to: