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.
Kinda. Its great that its being added in. I’ve reworked several of my workflows to get around its absence. Would be nice to have it back working.
I can’t use Wayland until Qt gets their crap together…
I accidentally flipped from Xorg to Wayland on my laptop, and for a week couldn’t figure out why I couldn’t copy and paste into Qt Applications. There were even some bugs between trying to highlight some things in Evolution and copy to be able to paste elsewhere, like it was using some funky clipboard separate from the rest of what I was running. But I do know the few Qt applications I use were affected (quassel (need to find a proper replacement for this that uses GTK3), Zoom (closed source..) and Hipchat (also closed source).
Wayland does seem nicer overall though.
In what way? I can see developers care about the windowing system APIs, but as a user, what does it do or improve compared to X?
In the old days with weird configuration and shit i could see why it was not perfect, but these days with modern distros where most hardware just works and sets correct options out of the box, what is the real difference?
I recently resurrected an old PC to use it as a headless NAS/Plex server, and actually found X forwarding useful, which is the first time in more than a decade i had a need for that feature, but was pretty nice that it was still there and i didn’t need something silly like VNC or remote desktop, just ssh -X
X must die. This worthless piece of crap barely works on 100mbit/s connection when displaying mere terminal with some effects. On rdp it’s possible to watch movie or play game over 3G connection. Xcrap couldn’t load terminal window after 1 minute …
Properly implemented RDP is great, and SPICE is also interesting, but X can be made somewhat nice as well. Try X2go
https://en.wikipedia.org/wiki/X2Go
LOL. RDP isn’t fun over 3G. I can’t imagine watching any sort of video over RDP on a 3G link. X is worse than RDP in a lot of ways, but going hyperbolic like this tells me that you have no idea what you’re talking about or you’re just trolling.
Either way, I’d much rather have the very flexible but slow remoting you get with X over the non-existent remoting we’ve had with Wayland.
You have some spectacularly bad latency on your 100mb connection, but yes, X11 is a terribly verbose protocol.
I highly recommend xpra, although it’s very finicky about codecs and version numbers.
Don’t think I’d try playing movies over it, but that’s not really what it’s for.
Do you care about security? Keyloggers are absurdly easy to write in X11.
Much, much more difficult in Wayland.
Overall the wayland experience as user isn’t that much different as you pointed out.
I realize keyloggers are trivially easy to write for X… but is there something about Wayland that makes it impossible? If not, how is this a significant advantage? Surely there’s got to be a better justification for Wayland? As someone who uses remote X clients on a regular basis, I’d certainly need a better reason.
Wayland’s approach to sandboxing is meant to be paired with sandboxing at other layers.
For example, Flatpak, which provides “Portals” for mobile-like sandboxing for desktop apps.
(eg. Anything based on a new enough Qt or GTK+ will automatically have its Open/Save/Print dialogs indirected through the appropriate Flatpak APIs when run under Flatpak.)
That also has the added benefit that all Flatpak’d applications will share the same set of DE-defined common dialogs, regardless of which toolkit they use. (Finally, a proper successor to LD_PRELOAD hacks like kgtk.)
Edited 2017-08-31 12:52 UTC
Considering almost all software both from official repos and unofficial repos or even most self compiled software is installed by root, there are like a million other attack vectors if you manage to get a malicious package installed.
Even if you do think that software installed by official repos is dangerous already, that isn’t a good reason not to improve security. Every little bit helps. If anything thats a really good reason to improve defense mechanisms and add security layers.
Keyloggers are also very easy to guard against with X11. If you’re paranoid enough to be worried about someone logging your keystrokes you should also be paranoid enough to be sandboxing your X applications, problem solved.
Sandboxing isn’t as easy as you make it seem.
For example, last I checked, Chromium/Chrome didn’t work with the sandbox extension and it’s just the most prominent example of somewhere you’ll run into problems.
The point of Wayland is to break things once to fix the accumulated problems of decades. Requiring that applications play nicely under a sandbox is only one of those fixes.
Also, your argument devolves to security through obscurity because, if Linux becomes popular enough, keylogging it ceases to be a targeted activity.
Edited 2017-08-31 12:57 UTC
Qt is better now. I ran into those same bugs myself. It hasn’t been a problem in a long time.