qt6packages.qtwayland: Update wayland.xml to version 1.23.0#337913
qt6packages.qtwayland: Update wayland.xml to version 1.23.0#337913K900 merged 1 commit intoNixOS:masterfrom
Conversation
|
Sounds reasonable to me |
|
Uhh, what. Wayland negotiates protocol versions, the compositor not supporting newer versions should not be an issue. |
|
In fact, the clients using qtwayland were not affected, only the wayland compositor written by qtwayland had a serious bug I can reproduce this issue in NixOS and openSUSE, but Arch Linux works fine. I found it`s this patch fixed it. Update: Arch Linux seems to have introduced this patch to fix a bug in Telegram Desktop :
|
|
This feels very wrong. I'm willing to merge this because I don't really see major risks, but I would like to also understand how this is causing an issue, because it absolutely should not be. |
But isn't the example a client? |
|
OK so I think the issue here actually is: if the compositor is built with the vendored 1.22 header, and the client is built with 1.23, the client attempts to speak a new version of the protocol to the server, and then dies because the server doesn't understand it. |
qtwayland's example is a wayland compositor using QtWaylandCompositor API. For clients side, all GUI clients can reproduce this bug, even if it's a qt/qml client, it seems that the qtwayland's platform plugin does not use the vendored protocol |
|
It looks like the following upstream issue: |
|
OK, this makes more sense now. |
|
There seems to be a better solution to the problem: |
|
Yes, this was always the intended long term solution. |
Description of changes
It's usefull since #316130
Qt wayland compositor is broken due to wayland-protocols (especially wl_shm) upgrade,compositor that using qtwayland may cause client crash due to protocol version mismatch
Build and run a simple compositor example:
https://doc.qt.io/qt-6/qtwaylandcompositor-examples.html
Run a client,the client will crash
Things done
nix.conf? (See Nix manual)sandbox = relaxedsandbox = truenix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/)Add a 👍 reaction to pull requests you find important.