Bug 4748 - Support Wayland desktop environments
Summary: Support Wayland desktop environments
Status: NEW
Alias: None
Product: ThinLinc
Classification: Unclassified
Component: VNC (show other bugs)
Version: trunk
Hardware: PC Unknown
: P2 Normal
Target Milestone: MediumPrio
Assignee: Pierre Ossman
URL:
Keywords:
Depends on: 8010
Blocks:
  Show dependency treegraph
 
Reported: 2013-07-10 21:08 CEST by Pierre Ossman
Modified: 2023-09-22 12:18 CEST (History)
0 users

See Also:
Acceptance Criteria:


Attachments

Description Pierre Ossman cendio 2013-07-10 21:08:29 CEST
Except for Ubuntu, the Linux world is moving towards replacing X11 with Wayland. This is something we eventually need to handle in order to stay relevant.

The new architecture unfortunately makes things a bit difficult for us. Wayland merges the display server with the window manager and compositor. So we can't just replace the display server like we do for X11.

Some ideas we can look in to:

1. There is a common libwayland-server that hopefully everyone will use. We could inject ourselves here and intercept relevant API calls.

2. libwayland-server has different types of backends. Perhaps the API and ABI are stable enough for us to ship a .so file.

3. We could ship a fake DRI driver. Unsure how stable that API is though. And we might also need a DRM driver, which means a kernel module. We also need to handle input somehow.

4. Layering Wayland on top of Wayland. Provided that backend is available on most distributions/desktop environments.
Comment 1 Pierre Ossman cendio 2013-10-22 13:23:04 CEST
Some suggestions from the RealVNC folks:

http://lists.freedesktop.org/archives/wayland-devel/2013-October/011536.html
Comment 3 Pierre Ossman cendio 2017-03-21 12:17:27 CET
Also note that people have taken this opportunity to change a bunch of things for how sessions start up, so we should probably look through our entire startup mechanism and see what needs to be changed to match a local wayland session.

E.g. login shells are no longer used:

https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=1149905
https://bugzilla.gnome.org/show_bug.cgi?id=736660

Our xstartup.d/xlogout.d approach might also need to change.
Comment 4 Pierre Ossman cendio 2021-04-13 13:24:17 CEST
Fedora apparently thinks KDE's support for Wayland is good enough to enable by default:

https://fedoraproject.org/wiki/Changes/WaylandByDefaultForPlasma
Comment 5 Pierre Ossman cendio 2022-06-23 11:23:30 CEST
GNOME just added this suggestion to drop X11 support, not just from GNOME, but GTK as well:

https://gitlab.gnome.org/GNOME/gtk/-/issues/5004
Comment 6 Pierre Ossman cendio 2022-08-29 14:54:14 CEST
This sneaked under the radar, but apparently RHEL 9 is the last release with X.org support:

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/9/html/9.0_release_notes/deprecated_functionality#deprecated-functionality_graphics-infrastructures

This isn't the same as dropping X11 support, but if they don't have any purely X11 sessions themselves, then it might be tempting to remove it here and there.

Some more discussion here:

https://bugzilla.redhat.com/show_bug.cgi?id=2119807
Comment 8 Pierre Ossman cendio 2022-10-13 08:06:40 CEST
Latest statement from GTK:

> When we discussed this issue at a recent gtk planning call, the outcome was:
> 
> - We should stop building the X11 backend by default in GTK 5
> - As long as we aren't doing any major GDK refactorings, keeping it around in its current state does not cost us much

https://gitlab.gnome.org/GNOME/gtk/-/issues/5004#note_1572984

I would assume that means the distributions will turn it on, and it will stay around until for now.
Comment 9 Pierre Ossman cendio 2022-10-21 12:49:37 CEST
(In reply to Pierre Ossman from comment #3)
> 
> E.g. login shells are no longer used:
> 
> https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=1149905
> https://bugzilla.gnome.org/show_bug.cgi?id=736660
> 

Note that this isn't true in practice right now. A hack was added to gnome-session to start a login shell when started through Wayland.

This is unfortunate, though, as it muddles where the responsibility for this lies.

Long term, the hope seems to be that systemd facilities can replace starting a login shell.
Comment 10 Pierre Ossman cendio 2023-05-29 08:50:22 CEST
Fedora's KDE spin are apparently trying to go Wayland only:

https://pagure.io/fedora-kde/SIG/issue/347

I guess that would mean that it would not be possible to run KDE in ThinLinc on a Fedora system any more.

The timeline isn't clear, though. The discussion is to do this for Plasma 6, which at this time does not have a timeline:

https://community.kde.org/Schedules/Plasma_6
Comment 11 Pierre Ossman cendio 2023-09-22 12:17:49 CEST
Fedora are now also discussing letting GNOME be Wayland only:

https://pagure.io/fedora-workstation/issue/395
Comment 12 Pierre Ossman cendio 2023-09-22 12:18:41 CEST
(In reply to Pierre Ossman from comment #10)
> Fedora's KDE spin are apparently trying to go Wayland only:
> 
> https://pagure.io/fedora-kde/SIG/issue/347
> 
> I guess that would mean that it would not be possible to run KDE in ThinLinc
> on a Fedora system any more.
> 

This has now progressed to a proposed change:

https://fedoraproject.org/wiki/Changes/KDE_Plasma_6

They unfortunately don't seem to touch on the regression for remote sessions at all in the proposal. :/

Note You need to log in before you can comment on or make changes to this bug.