Hi Charles and Jody! Charles, thanks a lot for your detailed report.
Jody, can you help us with the issue described below? jdupes is very important for Debian because some packages use it to remove duplicate files when building .deb binaries. Thanks a lot in advance. Cheers, Eriberto Em ter., 24 de nov. de 2020 às 23:21, Carlos Henrique Lima Melara <charlesmel...@outlook.com> escreveu: > > Package: jdupes > Version: 1.19.0-1 > Severity: normal > X-Debbugs-Cc: charlesmel...@outlook.com > > Dear Maintainer, hello. > > I use jdupes in the build process of a package I maintain [1]. It's an icon > theme and lots of png files are equal so jdupes is used to symlink them. The > package uses salsa CI and previous versions (before October) passed reprotest > (reproducibility test) on salsa [2] and on debian infrastructure [3]. But this > week I started to rearrange some things on the package and noticed that it > was failing salsa CI reprotest [6]. Then I also checked the Debian tests and > a strange thing showed up [3], only one test failed after October. > > Snippet of debian/rules: > > override_dh_auto_install: > dh_auto_install > # Removes duplicate files using softlinks > jdupes -lr debian/paper-icon-theme/usr/share/icons > > I went the to check both logs. The first from salsa CI indicated that the > .deb were different (I will attach the whole debdiff in this report). As > an example you can see a small part of it bellow: > > Files in second .deb but not in first > -rw-r--r-- root/root /usr/share/icons/Paper/16x16/apps/cmake-setup.png > lrwxrwxrwx root/root /usr/share/icons/Paper/16x16/apps/CMakeSetup.png -> > cmake-setup.png > lrwxrwxrwx root/root /usr/share/icons/Paper/16x16/apps/cmake.png -> > cmake-setup.png > Files in first .deb but not in second > -rw-r--r-- root/root /usr/share/icons/Paper/16x16/apps/cmake.png > lrwxrwxrwx root/root /usr/share/icons/Paper/16x16/apps/CMakeSetup.png -> > cmake.png > lrwxrwxrwx root/root /usr/share/icons/Paper/16x16/apps/cmake-setup.png > -> cmake.png > > The same story is seen on Debian infrastructure test (in the one that failed) > [4]. > > So I decided to test if jdupes was the source of the problem (this happened > before I had viewed the diffs) creating a branch on salsa to build without > jdupes. It went perfect [5] - but doubled the .deb size :( . > > Next step was trying to find some way out of this, I tried the --order > parameter with 'time' and 'name' unsuccessfully. > > The release of 1.19.0 in Debian was on 2020-10-13 so I suspect that the > irreproducibility was introduced in this version. Although some Debian > tests passed even with this new version of jdupes [3] I wasn't able to > replicate this behaviour on the salsa CI reprotest test, they all failed. > > I'm not exactly sure if reproducibility is a focus of jdupes but it seems > to be a raising concern for the Debian community and I would be very happy > if jdupes were to be reproducible friendly. > > Sorry for the long report but it might be useful for other maintainers > using jdupes too and hopefully also for fixing this issue. > > Regards, > Charles > > [1] https://tracker.debian.org/pkg/paper-icon-theme > [2] https://salsa.debian.org/debian/paper-icon-theme/-/jobs/997903 > [3] https://tests.reproducible-builds.org/debian/history/paper-icon-theme.html > [4] > https://tests.reproducible-builds.org/debian/rb-pkg/unstable/armhf/diffoscope-results/paper-icon-theme.html > [5] > https://salsa.debian.org/debian/paper-icon-theme/-/commit/6c3787ce6d3f7dcedf1c55d4b2518e3421230e44/pipelines?ref=reprod_build > [6] https://salsa.debian.org/debian/paper-icon-theme/-/jobs/1185645 > > -- System Information: > Debian Release: bullseye/sid > APT prefers unstable > APT policy: (500, 'unstable') > Architecture: amd64 (x86_64) > > Kernel: Linux 5.9.0-2-amd64 (SMP w/8 CPU threads) > Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set > to C.UTF-8), LANGUAGE=C.UTF-8 > Shell: /bin/sh linked to /usr/bin/dash > Init: unable to detect > > Versions of packages jdupes depends on: > ii libc6 2.31-4 > > jdupes recommends no packages. > > jdupes suggests no packages. > > -- no debconf information