Bug#1060254: mumble: please make the build reproducible

Chris Lamb lamby at debian.org
Mon Jan 8 10:24:37 GMT 2024


Source: mumble
Version: 1.5.517-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
mumble could not be built reproducibly.

This is because it embeds the current build date in an XML file:

│ │ │ │ ├── ./usr/share/metainfo/info.mumble.Mumble.appdata.xml
│ │ │ │ │ @@ -23,13 +23,13 @@
│ │ │ │ │    <screenshots>
│ │ │ │ │      <screenshot type="default">
│ │ │ │ │        <caption>Light and Dark Theme</caption>
│ │ │ │ │        <image>https://raw.githubusercontent.com/mumble-voip/mumble/master/screenshots/Mumble.png</image>
│ │ │ │ │      </screenshot>
│ │ │ │ │    </screenshots>
│ │ │ │ │    <releases>
│ │ │ │ │ -    <release type="stable" version="1.5.517" date="2024-01-02"/>
│ │ │ │ │ +    <release type="stable" version="1.5.517" date="2024-01-03"/>
│ │ │ │ │    </releases>
│ │ │ │ │    <provides>
│ │ │ │ │      <binary>mumble</binary>
│ │ │ │ │    </provides>
│ │ │ │ │  </component>

Patch attached. CMake is already following the SOURCE_DATE_EPOCH environment
variable if available, but it needs to be instructed to use the UTC timezone.

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


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby at debian.org / chris-lamb.co.uk
       `-
-------------- next part --------------
--- a/debian/patches/50-reproducible-build.diff	1970-01-01 01:00:00.000000000 +0100
--- b/debian/patches/50-reproducible-build.diff	2024-01-08 10:10:33.875933485 +0000
@@ -0,0 +1,15 @@
+Description: Make the build reproducible
+Author: Chris Lamb <lamby at debian.org>
+Last-Update: 2024-01-08
+
+--- mumble-1.5.517.orig/auxiliary_files/CMakeLists.txt
++++ mumble-1.5.517/auxiliary_files/CMakeLists.txt
+@@ -8,7 +8,7 @@ include(pkg-utils)
+ 
+ if(NOT BUILD_RELEASE_DATE)
+ 	# If BUILD_RELEASE_DATE has not been set, default to time of build
+-	string(TIMESTAMP BUILD_RELEASE_DATE "%Y-%m-%d")
++	string(TIMESTAMP BUILD_RELEASE_DATE "%Y-%m-%d" UTC)
+ endif()
+ 
+ if(overlay)
--- a/debian/patches/series	2024-01-08 09:47:51.592354667 +0000
--- b/debian/patches/series	2024-01-08 10:10:33.095927130 +0000
@@ -3,3 +3,4 @@
 #44-add-speechd-header.diff
 45-add-pid-location-hint.diff
 90-debianize-systemd-unit.diff
+50-reproducible-build.diff


More information about the Pkg-voip-maintainers mailing list