Closed pp3345 closed 5 years ago
From my chat with the Wayland people, their recommendation is that applications should generate/use the the interface locally.
The code in xserver is doing this exact thing (search for wayland-eglstream-protocols).
Perhaps mutter should be fixed and the "fix" reverted?
From my chat with the Wayland people, their recommendation is that applications should generate/use the the interface locally.
The code in xserver is doing this exact thing (search for wayland-eglstream-protocols).
Perhaps mutter should be fixed and the "fix" reverted?
Actually, wayland-eglstream interfaces should be private, while wayland-eglstream-controller ones should be public. I'll prepare a patch to fix that both with autotools and meson.
We didn't want to make mutter depend on libnvidia-egl-wayland.so, so we deliberately made it dlsym() the required interface. If not found, mutter just keeps going as usual.
I might be missing something, but it seems that after https://github.com/NVIDIA/egl-wayland/commit/1fdde29286b39cb89f8c8f8e8fcc9ddc4b9f361e,
libnvidia-egl-wayland.so
isn't exporting thewl_eglstream_controller_interface
symbol anymore. mutter looks for this symbol in https://gitlab.gnome.org/GNOME/mutter/blob/master/src/wayland/meta-wayland-egl-stream.c#L91. Using a branch that has all commits up to https://github.com/NVIDIA/egl-wayland/commit/1676d1d2bfe646fb3ecbba29a85db529dd399493 but excluding the meson fixes (newer commits cherry-picked), things work fine.This short program may be used for testing (use
-ldl
):