-
Notifications
You must be signed in to change notification settings - Fork 47
Description
With latest builds of linuxdeploy, linuxdeploy-qt-plugin the resulting qt6 AppImage is broken.
Here is the log:
linuxdeploy version 1-alpha (git commit ID cc7b864), GitHub actions build 335 built on 2026-03-01 02:26:01 UTC
[...]
[qt/stdout] -- Creating qt.conf in AppDir --
[qt/stdout] Creating Qt conf file: AppDir/usr/bin/qt.conf
[qt/stdout]
[qt/stdout] -- Note: skipping AppRun hook creation on Qt 6 --
[qt/stdout]
[qt/stdout] Done!
Launching bundle.AppImage no longer reads for bin/qt.conf file. Seems the bash script is required to reach the current working directory.
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Aborted (core dumped) ./test.AppImage
I found this change, issue #155 commit: 4e4d51c
If the apprun-hooks folder doesn't exist with content, linuxdeploy doesn't create the script, linuxdeploy::deployAppRunWrapperIfNecessary() https://github.com/linuxdeploy/linuxdeploy/blob/cc7b86472c3caa3fd729b9dc502fd2aa78394257/src/core/appdir_root_setup.cpp#L268
Maybe the script solution is not very nice, because it requires bash to be installed on the system. I don't know if there's another way to comply this wrap through linuxdeploy directly.
Note: I'm using Qt6 binaries from conda-forge and I don't know if there is implications for current working directory and the logic to locate local qt.conf file.