Need Help with duperemove in Debian

Roland Clobus rclobus at rclobus.nl
Sun Aug 31 14:08:37 UTC 2025


Hello Marc,> On Tue, Aug 26, 2025 at 11:24:48AM +0200, kpcyrd wrote:
>> I'm not sure if Makefile wildcards (like `foo: *.o`) are still 
>> unsorted, but if there's something like `gcc -o foo $(find -name 
>> '*.o')` that's going to be an issue.
> 
> I wildcards being used in the Makefile here:
> 
> CFILES = $(filter-out tests.c,$(wildcard *.c))
> DIST_SOURCES:=$(CFILES) $(wildcard *.h) LICENSE Makefile
> 
> Did I understand correctly that this should be:
> 
> CFILES = $(filter-out tests.c,$(wildcard *.c | sort))
> DIST_SOURCES:=$(CFILES) $(wildcard *.h | sort) LICENSE Makefile
> 
> That didn't improve things though, diffoscope output is still 24000 
> lines: https://salsa.debian.org/debian/duperemove/-/jobs/8159762

Have you tried to use 'disorderfs' [1][2]? If you build twice: once on a 
sorted and once on a reverse-sorted file system, you might see the 
places where ordering by the file system is important for the binary 
artifact.

While doing sort, you could use 'LC_ALL="C"', to ensure ASCII-based 
sorting (some locales place e.g. u-umlaut after z, other locales between 
u and v)

With kind regards,
Roland Clobus

[1] https://reproducible-builds.org/tools/
[2] https://manpages.debian.org/trixie/disorderfs/disorderfs.1.en.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.reproducible-builds.org/pipermail/rb-general/attachments/20250831/c8d1e665/attachment.sig>


More information about the rb-general mailing list