[Pkg-gmagick-im-team] Bug#983303: imagemagick: reproducible builds: Embeds different paths on usrmerge system

Vagrant Cascadian vagrant at reproducible-builds.org
Wed Nov 17 00:04:06 GMT 2021


On 2021-02-22, Vagrant Cascadian wrote:
> 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=""bpgdec"·-b·16·-o·"%o.png"·"%i";·/bin/mv·"%o.png"·"%o""/>
>   vs.
>   <delegate·xmlns=""·decode="bpg"·command=""bpgdec"·-b·16·-o·"%o.png"·"%i";·/usr/bin/mv·"%o.png"·"%o""/>
>
>
> 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 fixing:

  Bug#983302: imagemagick: reproducible builds: Embeds date dependent on timezone

It reduced the reproducibility diff in bookworm significantly!

Any chance we could also get this bug fixed too; with the patch applied
it should build reproducibly once imagemagick migrates to bookworm. In
unstable and experimental, build paths will still trigger
reproducibility issues.

Thanks for maintaining imagemagick!


live well,
  vagrant


> From 3bf9713f938ea8cbc1fb91c167a87ac9bb9a27b5 Mon Sep 17 00:00:00 2001
> From: Vagrant Cascadian <vagrant at reproducible-builds.org>
> 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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 227 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-gmagick-im-team/attachments/20211116/4620cb6b/attachment.sig>


More information about the Pkg-gmagick-im-team mailing list