SUMMARY When building breeze-icons from source twice, libKF6BreezeIcons.so is not always bit-by-bit identical. This is an attractive property because it allows more easy verification of build artifacts, for more details see https://reproducible-builds.org . STEPS TO REPRODUCE 1. Build breeze-icons 2. store libKF6BreezeIcons.so 3. Build breeze-icons cleanly again OBSERVED RESULT libKF6BreezeIcons.so is different, specifically https://reproducible.nixos.org/diffoscope/breeze-icons-adaa24fbf467/ EXPECTED RESULT libKF6BreezeIcons.so is identical ADDITIONAL INFORMATION This started being nondeterministic somewhere between 6.2.0 and 6.3.0, but also confirmed on 6.14.0 and 6.17.0 It seems perhaps resources are embedded in a nondeterministic order
Thank you for the bug report! However Plasma 6.3.0 no longer receives updates or maintenance from KDE; active versions are 6.4 or newer. Please upgrade to an active version as soon as your distribution makes it available to you. Plasma is a fast-moving project, and bugs in one version are often fixed in the next one. If you need help with Plasma 6.3.0, please contact your distribution, who bears the responsibility of providing help for older releases that are no longer receiving updates from KDE. If you can reproduce the issue after upgrading to an active version, feel free to re-open this bug report.
Reopening with an updated 'Version First Reported In' to avoid the bot from closing it. As said I confirmed the issue is still there on versions 6.14.0 and 6.17.0, but those are not in the tag lists it seems.
I wonder if this might be due to the use of the unsorted QDirIterator (as opposed to e.g. QDir::entryList) in qrcAlias.cpp. That does seem to have received significant changes between 6.2.0 and 6.3.0.
Can you try if sorted iterators fix it?
Ok, reading the docs one can not tell it to sort. We could collect the output and just sort that before writing the qrc.
That seems reasonable, https://invent.kde.org/frameworks/breeze-icons/-/merge_requests/496
Git commit 0c7550acd879d2cfa70a36ac093b7aceb18ae0a6 by Christoph Cullmann, on behalf of Arnout Engelen. Committed on 30/08/2025 at 15:21. Pushed by cullmann into branch 'master'. Sort generated qrc For reproducible builds (https://reproducible-builds.org) Sadly I don't have a particularly strong reproducer for this problem, but testing manually with disorderfs and inspecting the results \_suggests\_ this does the trick. M +16 -10 src/tools/qrcAlias.cpp https://invent.kde.org/frameworks/breeze-icons/-/commit/0c7550acd879d2cfa70a36ac093b7aceb18ae0a6