Adding Wayland xdg_shell extension to sailfishos lipstick compositor

At Fosdem 2026 we had some discussions if it would be feasible to add the currently missing Wayland xdg_shell extension to sailfishos lipstick compositor as an “lipstick extension”.. I thought of starting to explore that this weekend, and then I figured it has already been done! :slight_smile:

See the pull request here: Implement XDG shell interface by affenull2345 · Pull Request #68 · sailfishos/lipstick · GitHub

Thanks a lot @affe_null !

xdg_shell Wayland extension is needed by most of the modern wayland apps, and also by recent app frameworks and toolkits (Qt6, GTK, etc), so it’s really important to get that extension implemented and merged in to stock sailfishos lipstick compositor.

I just wanted to open a forum thread about this important development, to bring some attention to this important feature.

xdg_shell support is already been used in the Webkit Browser work @ WebKit Browsers for SFOS (Safari Engine)

xdg_shell support is also needed to be able to run Qt6 apps directly without the separate qt-runner wrapper (not sure if some other extensions are needed aswell to run qt6 apps natively, but at least the xdg_shell is a major blocker).

Note that this method of adding xdg_shell extension as “lipstick extension” is much easier (for Jolla) compared to doing the full sailfishos Qt6 upgrade (which would also bring newer QtWayland with xdg_shell support to lipstick, but would be a much bigger task, not to mention to GPLv3/LGPLv3 issue).

Now let the reviews start and let’s get the xdg_shell extension support merged in to lipstick!

13 Likes

Isn’t that up to Jolla people to do?? I mean yeah people from the community can test but Jolla is the one that decides what goes in.

The implementation in the linked PR is not complete.
So unless you can improve it and add the missing bits, there’s little point in wishing for it.

Anyone is allowed to read the changes and give feedback if they have useful notes. In that sense is not limited to just Jolla.

It’s a very good start, and it probably doesn’t need to implement all the bits and pieces straightaway, it can be improved later.

10 Likes

Feel free to comment on the PR if you see something that can be improved. If you are referring to the missing subsurface support, I think it would be better to have that reviewed separately, it’s not really part of xdg-shell.

7 Likes

At the end of the day you are the ones running the show so….

Hopefully someone at jolla will give feedback soon.

That was indeed what I meant.

1 Like

xdg_shell support was merged to lipstick today via Implement xdg-shell interface (second version) by n2klb · Pull Request #69 · sailfishos/lipstick · GitHub

7 Likes

Great news, hopefully it means it’s in 5.1, just curious what it means in practice, will rust gui apps work all of a sudden?