6 ms·
Ask HN: What is the best setup to work remotely with GUI on Linux?
In the past I tried a couple of setups using different protocols (VNC / RDP) with varying server / client software but was never really satisfied. Since this is a common problem, I am sure that some people here on HN have a well tested configuration for this and might be willing to give some advice.
Scenario I am interested in:
* Server machine runs graphical applications (potentially GPU / OpenGL intensive)
* Client can connect via SSH and is supposed to see graphical application (full desktop or just application)
Thanks for any recommendation!
- LukeShu 8y agoI'm pretty happy with VNC with JPEG compression (which not all VNC implementations support). Depending on the use-case, I either use TigerVNC `vncserver` (creates a virtual X11 display, in my experience OpenGL performs very poorly), or TigerVNC `x0vncserver` (which attaches to a real/existing X11 display and polls it to serve it over VNC; OpenGL performed normally). TurboVNC is a fork of TigerVNC that has improved OpenGL performance. I can't comment on it too much. I either connect to VNC directly on :5900 if I'm on the same LAN, or I `ssh -L5901:localhost:5900 server-box`, then `vncviewer localhost:5901`.
- lclc123 8y agoI agree, VNC+JPEG is a good fit for this kind of thing. I posted a comment recommending TurboVNC earlier, but it looks to be hidden. It compared favorably with TigerVNC when I tested both. VirtualGL support is baked right in, though of course you have to first set up VirtualGL itself. That'll allow you to use the GPU on a headless machine and share it between users. (with some caveats)
- Ologn 8y agoIf the applications are running on Windows I tend to use RDP, if they are running on Unix I tend to use VNC. Running Firefox over a WAN is slow-going with X11 and ssh, VNC is much faster. The first one I tried was tightvnc, and it did the job for what I needed, so I have stuck with that.
- mcgrath_sh 8y agoX over SSH works for individual apps you launch from the command line. I do this for Calibre on my home server. I have never tried with a desktop. It is simply a config in the SSH config and then an option when launching SSH.
- TheCabin 8y agoGood recommendation. I've used this approach before but somehow had the impression that this doesn't work for OpenGL applications. Now that I think about it, I should simply give it a shot.
- LukeShu 8y agoSSH X11 forwarding won't have access to the GPU. It also tends to perform very poorly in all but fairly low-latency networks.
- bnegreve 8y agoYou may want to activate ssh compression (see ssh -C). If you're remote it can speed up X forwarding and make the whole application more reactive.
- daverobbins1 8y agoWhy not something like TeamViewer? https://www.teamviewer.com/en/download/linux/ https://www.teamviewer.com/en/download/linux/
- tempfasowsl 8y agox2go for opensource or nomachine if you don't mind paying are good options. They are better than X over ssh and usually a little better than rdp
- TheCabin 8y agoAwesome, thanks! Didn't hear of either yet.
- rmurri 8y agoThey also have good support for different screen sizes, and multi monitor differences between machines.
- gregopet 8y agonomachine worked great when I tried it (granted, that was a few years ago). Definitely worked better than RDP at that time!
- algorithm_dk 8y agothere's nothing acceptable over ssh you can do steam in-home streaming over zerotier. it's actually faster than geforce now i have a raspberry set up so that i can plug it anywhere and work on my home computer latency is so low that shooters are very much playable you can use steamlink hardware as a client, or the newish raspberry pi release
- rubicon33 8y agoyea steamlink is amazing BUT as far as I know, it cannot be used for arbitrary desktop streaming. You can certainly stream games wonderfully, but that's it.
- deleted 8y ago[deleted]
- sandreas 8y agoWell, what varying server / client software did you try? I'm pretty satisfied with xrdp on Ubuntu 18.04 Desktop. I did not test GPU intensive software, but its easy to install, runs nearly out of the box and client software is available for Windows, Linux and MacOS: https://help.ubuntu.com/community/xrdp https://help.ubuntu.com/community/xrdp
- lclc123 8y agoWhich VNC implementation(s) did you try? TurboVNC was developed with OpenGL applications in mind. It's from the same developer as VirtualGL, so the two are well-integrated. It does take some tweaking of the compression parameters for good performance. I also had better luck using its native TLS encryption rather than tunneling over SSH.
- hexadec 8y agoI recommend Parsec. I use it for gaming on remote Windows machines, but the Linux server works well too. I can access from my Chromebook or laptop with enough fidelity and good networking that allows me to do nearly anything. I still suck at CounterStrike, but that is not the software's fault. https://parsecgaming.com/ https://parsecgaming.com/
- dajohnson89 8y ago>gaming on remote Windows machines I have a linux desktop, but would love to do some windows gaming remotely. Isn't the latency introduced by gaming over VPN a problem? If not for single-player, then certainly multiplayer?
- twoquestions 8y agoIt's good for turn based games, but twitchy action games and shooters will suffer due to the latency. If you wanna play Stellaris or something over this and all you have locally is a potato machine, I'd highly recommend it.
- hexadec 8y agoParsec is a direct tunnel out of my home network, no VPN required. It is not ideal for CS:GO and such, but You Don't Know Jack, Cities: Skylines, and others are pretty good. 60 fps at 1080p to my Chromebook.
- Can_Not 8y agoParsec doesn't support remoting into linux machines.
- tonyaiken 8y agoWe use NoMachine at company.
- gargarplex 8y agoJust want to give a shoutout to my trusty friend Xvfb. Used many times to remotely & automatically operate GUI apps on Linux.
- anujsharmax 8y agoHave you looked into Apache Guacamole (http://guacamole.apache.org/ http://guacamole.apache.org/) Once you install Apache Guacamole on the remote machine, you can access it via your web browser
- Samon 8y agoI've had decent success using Xpra.
- ta3057 8y agoCould you give more details or point to documents which helped you reaching "decent success" level? Xpra can be a bit difficult to configure due to the amount of possibilities available.
- nickthemagicman 8y agoAWS has workspaces. They're not super cheap but it's all handled for you. Browser, mobile, desktop, etc.
- phakding 8y agoNo linux client
- deleted 8y ago[deleted]
- akulbe 8y agoRealVNC Enterprise works fantastic for me. ¯\_(ツ)_/¯
- simplyred 8y agoGPU and OpenGL intensive? NoMachine Terminal Server - that's what our company uses https://www.nomachine.com/terminal-server https://www.nomachine.com/terminal-server
- bigjojoto 8y agologin into your machine using ssh export your display to your ip xstart and the you'll have the complete remote desktop running on your machine. Of course you'll need a xserver emulator running on your local client.