Subject: deeptools is not reproducible
From: Maxim Cournoyer <[email-masked]>
To: bug-guix <[email-masked]>
Date: Wed, 20 Mar 2019 23:01:32 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

On current master (commit af184b68e78aa51b6ff50b7327dfbbdb1d6e6843),
deeptools does not build reproducibly:

$ guix build --check --no-grafts deeptools

--8<---------------cut here---------------start------------->8---
...
guix build: error: derivation `/gnu/store/hky07zjsvai0x3n99lqmgyh6rhld6v4s-deeptools-3.1.3.drv' may not be deterministic: output `/gnu/store/0j8200f20mp5grjkjh5kw2q9a67gw3rn-deeptools-3.1.3' differs
--8<---------------cut here---------------end--------------->8---

$ diff -ru "$(guix build deeptools)" /gnu/store/0j8200f20mp5grjkjh5kw2q9a67gw3rn-deeptools-3.1.3

--8<---------------cut here---------------start------------->8---
│ │ │ │ ├── tree.cpython-37m-x86_64-linux-gnu.so
│ │ │ │ │ ├── /gnu/store/02iklp4swqs0ipxhg5x9b2shmj6b30h1-binutils-2.31.1/bin/readelf --wide --dynamic {}
│ │ │ │ │ │ @@ -2,15 +2,15 @@
│ │ │ │ │ │  Dynamic section at offset 0xcd90 contains 30 entries:
│ │ │ │ │ │    Tag        Type                         Name/Value
│ │ │ │ │ │   0x0000000000000001 (NEEDED)             Shared library: [libz.so.1]
│ │ │ │ │ │   0x0000000000000001 (NEEDED)             Shared library: [libpython3.7m.so.1.0]
│ │ │ │ │ │   0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
│ │ │ │ │ │   0x0000000000000001 (NEEDED)             Shared library: [libpthread.so.0]
│ │ │ │ │ │   0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
│ │ │ │ │ │ - 0x000000000000001d (RUNPATH)            Library runpath: [/gnu/store/9z98cvjm7p7z21xdid1ryydxy5vyz6wr-python-3.7.0/lib:/gnu/store/h90vnqw0nwd0hhm1l5dgxsdrigddfmq4-glibc-2.28/lib:/gnu/store/4sqps8dczv3g7rwbdibfz6rf5jlk7w90-gcc-5.5.0-lib/lib:/gnu/store/nq4lsyipmfb0q7g26ra45rwwqrh3x8zw-zlib-1.2.11/lib:/gnu/store/4sqps8dczv3g7rwbdibfz6rf5jlk7w90-gcc-5.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../..]
│ │ │ │ │ │ + 0x000000000000001d (RUNPATH)            Library runpath:
[/gnu/store/b7fqhszxl02g6pfm3vw6b3cjz472qrly-python-3.7.0/lib:/gnu/store/h90vnqw0nwd0hhm1l5dgxsdrigddfmq4-glibc-2.28/lib:/gnu/store/4sqps8dczv3g7rwbdibfz6rf5jlk7w90-gcc-5.5.0-lib/lib:/gnu/store/nq4lsyipmfb0q7g26ra45rwwqrh3x8zw-zlib-1.2.11/lib:/gnu/store/4sqps8dczv3g7rwbdibfz6rf5jlk7w90-gcc-5.5.0-lib/lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../..]
--8<---------------cut here---------------end--------------->8---

There are multiple more instances of differences in the two versions.

Maybe something to do with two flavors of Python being used?

$ guix refresh --list-transitive deeptools | tr ' ' '\n' | grep -E 'python-(minimal|wrapper)|python2?@'
[email-masked]
[email-masked]
[email-masked]
[email-masked]
[email-masked]
[email-masked]