See also https://mail.kde.org/pipermail/kde-windows/2017-May/010129.html .
When deploying Windows applications, Qt will not be able to find its plugins, including the essential "windows" platform plugin. Packages work around this by adding
utils.mergeTree(os.path.join(archiveDir, "plugins"), binPath)
in preArchive(). Doing this separately in each packaged application seems neither efficient nor future-proof (should default paths change, for instance). This patch moves the adjustment into the NullsoftInstallerPackager class.
The patch is not complete, in that it does not yet take care of removing the workarounds in the individual craft scripts. I'll do that, if the patch is considered a valid approach.
More fundamental notes:
- Also moves the "qml" directory. Several craft-scripts do that, although they all seem to share the bug that "bin" is appended twice, which probably means this was not working, so far.
- The only(?) current craft script that references the NullsoftInstallerPackager, but does not use a similar workaround is gammaray. Unfortunately I did not get gammaray to build, yet, and have not tested, how it would react to this change.