Source: imagemagick
Severity: normal
Tags: patch
User: [email protected]
Usertags: usrmerge
X-Debbugs-Cc: [email protected]

Various files embed the full path to the "mv" and "rm" binaries, which
are different on usrmerge systems:

  
https://tests.reproducible-builds.org/debian/rb-pkg/bullseye/amd64/diffoscope-results/imagemagick.html

  /etc/ImageMagick-6/delegates.xml

  
<delegate·xmlns=""·decode="bpg"·command="&quot;bpgdec&quot;·-b·16·-o·&quot;%o.png&quot;·&quot;%i&quot;;·/bin/mv·&quot;%o.png&quot;·&quot;%o&quot;"/>
  vs.
  
<delegate·xmlns=""·decode="bpg"·command="&quot;bpgdec&quot;·-b·16·-o·&quot;%o.png&quot;·&quot;%i&quot;;·/usr/bin/mv·&quot;%o.png&quot;·&quot;%o&quot;"/>


The attached patch fixes this in debian/rules by passing arguments to
configure to use the paths in the non-usrmerge paths, as usrmerge
systems typically have compatibility symlinks, while non-usrmerge
systems do not.


This patch does not resolve all reproducibility issues (a patch for
consistent dates was just submitted), though the main identified issue
is build paths, which is not tested for bullseye.


Thanks for maintaining imagemagick!


live well,
  vagrant
From 3bf9713f938ea8cbc1fb91c167a87ac9bb9a27b5 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <[email protected]>
Date: Mon, 22 Feb 2021 01:23:34 +0000
Subject: [PATCH 2/4] debian/rules: Pass MVDelegate and RMDelegate to
 configure.

The path to "mv" and "rm" may end up in binaries or documentation,
which may be /bin/CMD or /usr/bin/CMD depending on if the running
system is a usrmerge system or not. Consistently use /bin/CMD as this
is the most compatible path.

https://tests.reproducible-builds.org/debian/issues/paths_vary_due_to_usrmerge_issue.html
---
 debian/rules | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/debian/rules b/debian/rules
index 118f703..cf0a609 100755
--- a/debian/rules
+++ b/debian/rules
@@ -96,7 +96,9 @@ STATIC_CONFIGURE_OPTIONS := \
 	--without-rsvg
 CONFIGURE_OPTIONS ?= $(STATIC_CONFIGURE_OPTIONS) \
 			    $(CONFIGURE_OPTIONS_CACHE) \
-			    $(CONFIGURE_ARCH_FLAGS)
+			    $(CONFIGURE_ARCH_FLAGS) \
+			    MVDelegate=/bin/mv \
+			    RMDelegate=/bin/rm
 
 # export for alternatives
 export MAGICK_PROGRAMS := compare animate convert composite conjure import identify stream display montage mogrify
-- 
2.20.1

Attachment: signature.asc
Description: PGP signature

Reply via email to