Remote access to Wayland desktops under Fedora 29
Bird's Eye View
In Fedora 29, you can enable a VNC server on Wayland with a few mouse clicks, thus enabling remote desktop access.
On Linux, the X Window System (short X11) still draws the graphical user interface on the screen in most cases. Thanks to its integrated network functions, it can even transport program windows from remote computers onto the screen if required. This facilitates remote maintenance and simplifies thin client setup. While the computationally intensive application runs on a powerful computer, the user looks at the output on their local PC, which requires very little in terms of resources.
In Wayland, the newly-developed X11 successor, these neat network functions are missing in the plain vanilla version. Although Wayland is leaner and significantly more secure than X11, it lacks some proven functions. If you want to share your desktop on Wayland, you need separate remote desktop software.
Pimped Up
The lack of remote access in Wayland was a thorn in the Fedora team's side. While they used proven components and protocols to restore these missing network capabilities, they had to adapt or slightly modify existing software to meet their goal [1].
The idea was for communication to use the established Virtual Network Computing (VNC) protocol, with encrypted data on the wire and access to the remote desktop only possible for legitimate users. VNC relies on the client-server principle: A server program sends the content to be transferred to a client program, which in turn displays it on the screen.
The LibVNCServer library provides help in creating a VNC server. The Fedora developers first extended this with the functions required for encryption. Using LibVNCServer, the Gnome Remote Desktop implements a VNC server. The developers added the possibility to authenticate users with a password.
They used the relatively young PipeWire for data transfer and data format negotiation [2]. PipeWire's long-term goal is to transport audio and video data to the required locations as quickly as possible.
For the remote desktop function under Fedora, the developers had to adjust the systemd configuration accordingly. The init system can now enable PipeWire via a socket. Finally, the Fedora developers added the matching options in Gnome's System Preferences that allow users to enable or disable Gnome Remote Desktop.
Turn It On
The result of all this work can be found for the first time in Fedora 29 Workstation. The distribution automatically installs the gnome-remote-desktop package and all other components necessary for sharing the desktop. If you are using Fedora 29 with the Wayland session enabled by default, it is not difficult to display the desktop on other computers. In fact, it takes just a few clicks.
To do this, under Settings, select Sharing, and toggle the ON button in the titlebar, as shown in Figure 1. Then click Screen Sharing and enable this with the corresponding ON button in the dialog's titlebar (Figure 2).
Now you have a VNC server running on your system, which allows other computers to display your desktop on their local system. If you want to let the users work actively with the desktop environment, check the Allow connections to control the screen box.
You can expect some of your desktop's would-be users to be up to no good. To prevent this, the software requires you to explicitly grant each request with a mouse click. Alternatively, you can give other people password-based access. To do this, enable the Require a password option and enter a strong password in the input field. Anyone with the password will be able to view the desktop environment from their computer in the future.
Clientele
Next, you need to set up a VNC client for the computers that you want to access your desktop. You can do this on Fedora via Software by installing either Remmina or the Remote Desktop Viewer (aka Vinagre).
Start the client program and connect it to the VNC server – and thus to the machine on which you enabled sharing. In the case of Vinagre, click Connect, set Protocol to VNC, and type the VNC server's IP address or hostname in the Computer field. After you click Connect, Vinagre establishes contact with the remote computer(Figure 3).
If you select Remmina as the remote desktop client, set the combobox at the top left of the input field to VNC. Then enter the VNC server's IP address or hostname and press Enter (Figure 4).
If you previously set a password, you must tell it to the client. Otherwise, Fedora will ask you on the VNC server if you want to share the desktop with the corresponding client (Figure 5). You can confirm by pressing Accept.
In any case, an orange icon in the upper right corner (Figure 6) indicates that at least one other person can see the desktop. The client also presents the VNC server's desktop live.
If you disconnect from the client program, the VNC server may report an error (Oops! …). You can ignore this error: In tests, the release then continued to function without any problems.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Canonical Bumps LTS Support to 12 years
If you're worried that your Ubuntu LTS release won't be supported long enough to last, Canonical has a surprise for you in the form of 12 years of security coverage.
-
Fedora 40 Beta Released Soon
With the official release of Fedora 40 coming in April, it's almost time to download the beta and see what's new.
-
New Pentesting Distribution to Compete with Kali Linux
SnoopGod is now available for your testing needs
-
Juno Computers Launches Another Linux Laptop
If you're looking for a powerhouse laptop that runs Ubuntu, the Juno Computers Neptune 17 v6 should be on your radar.
-
ZorinOS 17.1 Released, Includes Improved Windows App Support
If you need or desire to run Windows applications on Linux, there's one distribution intent on making that easier for you and its new release further improves that feature.
-
Linux Market Share Surpasses 4% for the First Time
Look out Windows and macOS, Linux is on the rise and has even topped ChromeOS to become the fourth most widely used OS around the globe.
-
KDE’s Plasma 6 Officially Available
KDE’s Plasma 6.0 "Megarelease" has happened, and it's brimming with new features, polish, and performance.
-
Latest Version of Tails Unleashed
Tails 6.0 is based on Debian 12 and includes GNOME 43.
-
KDE Announces New Slimbook V with Plenty of Power and KDE’s Plasma 6
If you're a fan of KDE Plasma, you'll be thrilled to hear they've announced a new Slimbook with an AMD CPU and the latest version of KDE Plasma desktop.
-
Monthly Sponsorship Includes Early Access to elementary OS 8
If you want to get a glimpse of what's in the pipeline for elementary OS 8, just set up a monthly sponsorship to help fund its continued existence.