Closed romangg closed 8 months ago
In the dismanctl -o
output after the lines
disman.backend.wayland: Loading Wayland backend.
kf.coreaddons: Checking for plugins in ("/usr/local/lib/qt5/plugins/disman/wayland", "/usr/local/bin/disman/wayland")
it should print something about the plugins that were rejected. For example here in a sway session issuing DISMAN_IN_PROCESS=1 kdisplay
it prints for me:
disman.backend.wayland: Backend "kwayland" rejected.
disman.backend.wayland: Backend "kwinft" rejected.
disman.backend.wayland: Backend "wlroots-wrapland" initialized.
Are the Wayland backend plugins installed at one of the paths mentioned in the log?
In GitLab by @jbeich on Nov 7, 2021, 14:16
Are the Wayland backend plugins installed at one of the paths mentioned in the log?
Yes, via system package.
$ pkg info -l disman | fgrep plugins
/usr/local/lib/qt5/plugins/disman/fake.so
/usr/local/lib/qt5/plugins/disman/qscreen.so
/usr/local/lib/qt5/plugins/disman/randr.so
/usr/local/lib/qt5/plugins/disman/wayland.so
/usr/local/lib/qt5/plugins/disman/wayland/kwayland.so
/usr/local/lib/qt5/plugins/disman/wayland/kwinft.so
/usr/local/lib/qt5/plugins/disman/wayland/wlroots-wrapland.so
That looks right. So the Wayland connection times out according to the log. But we also find
[4119624.287] wl_registry@2.global(19, "zwlr_output_manager_v1", 2)
so it should actually choose the wlroots-wrapland library. I can't reproduce the issue in a sway session on my Linux box. You're on FreeBSD, could there be an issue with the plugin creation due to that? I'm asking because while Disman logs the Wayland connection timing out here it does not for any plugin print this line before.
In GitLab by @jbeich on Nov 7, 2021, 15:12
could there be an issue with the plugin creation due to that?
Yes, according to printf debugging that line fails for every plugin under disman/wayland/
directory.
This is on kf5-kcoreaddons-5.87.0 where instantiate()
is @deprecated Since 5.86, use @ref KPluginFactory::loadFactory or @ref KPluginFactory::instantiatePlugin when using KPluginFactory. Otherwise use QPluginLoader::instance() instead.
.
That's likely fixed due to the refactorings of backends and now only having a single one anymore on Wayland. Please reopen if this is not the case.
In GitLab by @jbeich on Nov 7, 2021, 13:40
Tested under Sway with wlroots 0.14.1 and 0.15.0 snapshot (2021-11-05, fc1ed72b). Unlike #43 manually starting
disman_backend_launcher
doesn't help. Besides, XRandR backend works fine.