Nika03
December 3, 2024, 9:24pm
1
Hello, I have changed my flake from 24.05 to 24.11 and plasma Shell doesn’t start
qt.qpa.xcb: could not connect to display
qt.qpa.plugin: From 6.5.0, xcb-cursor0 or libxcb-cursor0 is needed to load the Qt xcb platform plugin.
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
Available platform plugins are: wayland, wayland-egl, linuxfb, offscreen, minimal, eglfs, vkkhrdisplay, xcb, minimalegl, vnc.
Aborted (core dumped)
I have seen this error usually when qtwayland
was not added as a buildInput
(and running on the application wayland), but plasma-desktop
does pass it…
Could you try starting it with the environment variable QT_DEBUG_PLUGINS=1
?
Nika03
December 4, 2024, 10:24am
3
I unfortunately only have access to the tty so I have to manually write the output
qt.core.plugin.factoryloader: looking at "libminimalegl.so"
at.core.plugin.loader: Found metadata in lib /nix/store/(...)-qtbase-6.8.0/lib/qt-6/plugins/platforms/libqminimalegl.so, metadata=
{
"IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
"MetaData": {
"Keys": [
"minimalegl"
]
},
"archlevel": 1,
"className": "QMinimalEglIntegrationPlugin",
"debug": false,
"version": 395264
}
qt.core.plugin.factoryloader: Got keys from plugin meta data QList("vnc")
qt.core.plugin.factoryloader: checking directory path "/nix/store/(...)-user-environment/lib/qt-6/plugins/platforms" ...
qt.core.plugin.factoryloader: checking directory path "/nix/store/(...)-system-path/lib/qt-5.15.15/plugins/platforms" ...
qt.core.plugin.factoryloader: checking directory path "/nix/store/(...)-system-path/lib/qt-6/plugins/platforms" ...
qt.core.plugin.factoryloader: looking at "libqwayland-generic.so"
qt.core.plugin.factoryloader: Got keys from plugin meta data QList("wayland")
qt.core.plugin.factoryloader: looking at "libqwayland-egl.so"
qt.core.plugin.factoryloader: Got keys from plugin meta data QList("wayland-egl")
qt.core.plugin.factoryloader: checking directory path "/run/wrappers/lib/qt-6/plugins/platforms" ...
qt.core.plugin.factoryloader: checking directory path "/home/nika/.nix-profile/lib/qt-6/plugins/platforms" ...
qt.core.plugin.factoryloader: checking directory path "/nix/profile/lib/qt-6/plugins/platforms" ...
qt.core.plugin.factoryloader: checking directory path "/home/nika/.local/state/nix/profile/lib/qt-6/plugins/platforms" ...
qt.core.plugin.factoryloader: checking directory path "/etc/profiles/per-user/nika/lib/qt-6/plugins/platforms" ...
qt.core.plugin.factoryloader: checking directory path "/nix/var/nix/profiles/default/lib/qt-6/plugins/platforms" ...
qt.core.plugin.factoryloader: checking directory path "/run/current-system/sw/lib/qt-6/plugins/platforms" ...
qt.core.plugin.factoryloader: looking at "libqwayland-generic.so"
qt.core.plugin.factoryloader: Got keys from plugin meta data QList("wayland")
qt.core.plugin.factoryloader: looking at "libqwayland-egl.so"
qt.core.plugin.factoryloader: Got keys from plugin meta data QList("wayland-egl")
qt.core.plugin.factoryloader: checking directory path "/nix/store/(...)-plasma-workspace-6.2.4/bin/platforms" ...
qt.core.library: "/nix/store/(...)-qtbase-6.8.0/lib/qt-6/plugins/platforms/libqxcb.so" loaded library
after this, rest of the log is exactly the same as I wrote it down without the debug
zimward
December 4, 2024, 11:47am
4
Maybe forcing QT_QPA_PLATFORM=wayland
will work around that as it seems the shared library is there. Otherwise ping a KDE-QT maintainer .
Nika03
December 4, 2024, 11:59am
5
I usually run xorg bc wayland still doesn’t play nicely with Nvidia but sure, I’ll look
Nika03
December 4, 2024, 12:06pm
6
@ilya-fedin @K900 @mjm @NickCao @ttuegel
Hello qt-kde maintainers, may I have some assistance with this matter?
Nika03
December 4, 2024, 1:48pm
7
I have fixed this problem myself.
I use now hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.beta
I have also added hardware.graphics.enable = true