Jonas Ã…dahl from Red Hat has been busy adding new D-Bus APIs to libmutter. Mutter is the GNOME window manager and Wayland compositor. The two new APIs, org.gnome.Mutter.RemoteDesktop and org.gnome.Mutter.ScreenCast, expose a PipeWire stream containing the contents of the system’s screens. The new APIs can create full-screen streams, or streams for individual windows. Only the former has been implemented.
These new APIs finally allows for services such as RDP and VNC servers and screen recording under Wayland. Once again, Mr. Ã…hdahl delivers! He has also created GNOME Remote Desktop, a new user-level systemd service daemon that is built on the new RemoteDesktop API in libmutter, plus VNC support from libvncserver. The new service can be used to connect up a remote VNC client to your local screen’s session. GNOME Remote Desktop appears to be a drop-in replacement for Vino server.
GNOME has been without its own Remote Desktop option since the switch to Wayland, and this work fills that gap.