#1149724 src:swi-prolog: please build the manindex.db file reproducibly

#1149724#5
Date:
2026-10-02 16:52:28 UTC
From:
To:
Dear Maintainer,

According to the Debian package rebuild infrastructure at reproduce.debian.net,
the swi-prolog-doc and swi-prolog-test packages do not currently build
reproducibly.

In both cases, nondeterministic builds of a documentation index, 'manindex.db',
contribute to this.

Recent versions of the diffoscope comparison tool are able to identify that the
only difference is in the ordering of entries within the index.

I _think_ that those entries are built by walking the filesystem, so I've added
a 'fileordering' usertag to this bugreport.  Determinism might be achievable by
adding a sorting step in the man_index.pl script.

I think that the code that builds the index is around here in the source:

https://sources.debian.org/src/swi-prolog/9.2.9+dfsg-1.1/packages/pldoc/man_index.pl?hl=146#L140-L158

...however, my Prolog-fu is insufficient to write a patch to add deterministic
sorting of the indexed entries.

Thanks,
James