Your mileage may vary by use case and bandwidth, especially over the public internet. But if someone has a similar use case to mine in 2019, it's still probably usable.
Even wireshark is usable this way.
I do a lot of these things with Linux, you cannot do in Windows:
- Log in, start an arbitrary program. Then log out, without the program stopping
- Start a GUI application as a different user than the one logged in graphically
- Start a GUI application that resides inside a container
- Start a GUI application in the local LAN over ssh
Take those away and you take away the biggest edge Linux has over Windows.I do this all the time to confine an application to a network namespace.
It is great for forcing some GUI applications (for example a browser) through VPN while keeping everything else going over the default route.
This way you can make sure the browser in your network namespace can only use the VPN.
Start a GUI application as a different user than the one logged in graphically
the xauth command will let you do this (which is what ssh X forwarding does)I don't think X-forwarding is a good substitute for VNC(-alikes) if you need to do long sessions, but for occasional one-off GUI work where either there's no CLI equivalent, or the CLI version isn't the best choice, it does get the job done.
It was also useful when I wanted to output some pixel graphics from Erlang to my Windows desktop from a program running on unixy devices. x server windows, x client on linux, freebsd, os x -- occasionally also ran with os x as x server and linux or freebsd as x client.
The key thing for me is the ability to export the gui for a single application on one system to a desktop environment on another --- I think this is possible with other systems, but it's not easily exposed. Performance and fidelity of the experience is usually not that important for me, as long as it's usable.
The main draw is just that it works so seamlessly. All you have to do is remember to add the "-X" flag when you call ssh and everything just works.
It works great. And Mozilla/Firefox has been working wonders with it (when you open a web link on a remote application, it opens the URL in the local, already opened Firefox and has been doing so since Netscape times).
NX allowed me to work on my Linux desktop in Iceland from a hotel room in China.
Every time I've tried it, it was plagued with problems (fonts, HiDPI issues, different environments) and horrible performance. I mostly had to resort back to NX, which is okish, but not better at all than Windows' RDP or better VNC solutions. So what's the big draw here?