Bug#1136686: pampi: please make the build reproducible
Chris Lamb
lamby at debian.org
Thu May 14 20:43:40 BST 2026
Source: pampi
Version: 1.3+dfsg1-4
Severity: wishlist
Tags: patch
User: reproducible-builds at lists.alioth.debian.org
Usertags: filesytem
X-Debbugs-Cc: reproducible-bugs at lists.alioth.debian.org
Hi,
Whilst working on the Reproducible Builds effort [0], we noticed that
pampi could not be built reproducibly.
This is because two parts of upstream's build system iterates over the
filesystem in "filesystem naive" order, without sorting.
Patch attached. Note that $(wildcard ...) sorts by default.
[0] https://reproducible-builds.org/
Regards,
--
,''`.
: :' : Chris Lamb
`. `'` lamby at debian.org / chris-lamb.co.uk
`-
-------------- next part --------------
--- a/debian/patches/reproducible-build.patch 1969-12-31 16:00:00.000000000 -0800
--- b/debian/patches/reproducible-build.patch 2026-05-14 12:40:24.891186333 -0700
@@ -0,0 +1,25 @@
+Description: Make the build reproducible
+Author: Chris Lamb <lamby at debian.org>
+Last-Update: 2026-05-14
+
+--- pampi-1.3+dfsg1.orig/pampi/libs/Makefile
++++ pampi-1.3+dfsg1/pampi/libs/Makefile
+@@ -1,5 +1,5 @@
+-UIFILES = $(shell ls *.ui)
+-RCFILES = $(shell ls *.rc)
++UIFILES = $(wildcard *.ui)
++RCFILES = $(wildcard *.rc)
+ PyUIFILES = $(patsubst %.ui, ui_%.py, $(UIFILES))
+ PyRCFILES = $(patsubst %.rc, rc_%.py, $(RCFILES))
+
+--- pampi-1.3+dfsg1.orig/pampi/translations/make_pampi.pro.py
++++ pampi-1.3+dfsg1/pampi/translations/make_pampi.pro.py
+@@ -7,7 +7,7 @@ if __name__ == "__main__":
+ with open(infileName) as infile, open("pampi.pro", "w") as outfile:
+ # ajout de toutes les sources de plugins
+ pluginFiles = os.scandir("../libs/plugins")
+- for p in pluginFiles:
++ for p in sorted(pluginFiles, key=lambda x: x.path):
+ if p.path.endswith(".py"):
+ outfile.write("SOURCES += " + p.path + "\n")
+ outfile.write("\n")
--- a/debian/patches/series 2026-05-14 12:31:11.552121381 -0700
--- b/debian/patches/series 2026-05-14 12:32:55.393062303 -0700
@@ -4,3 +4,4 @@
change-font-path.patch
script-nonfree.patch
pampi-nonfree.patch
+reproducible-build.patch
More information about the Reproducible-bugs
mailing list