Google Releases Open Source NX Server
wisesifu writes with news of a new open source NX server, dubbed NeatX, that was released by Google and promptly lost in the shuffle of the Chrome OS announcement. "NX technology was developed by NoMachine to handle remote X Window connections and make a graphical desktop display usable over the Internet. By its own admission, Google has been looking at remote desktop technologies for 'quite a while' and decided to develop Neatx as existing NX server products are either proprietary or difficult to maintain. 'The good old X Window system can be used over the network, but it has issues with network latency and bandwidth. Neatx remedies some of these issues,' Google engineers wrote on the company's open source blog. NoMachine had released parts of the source code to its NX product under the GPL, but the NX server remained proprietary. [...] Neatx is written in Python, with a few wrapper scripts in Bash and one program written in C 'for performance reasons.'"
As a longtime NX user, this will be very well received. I feel like I'm one of a couple dozen NX users, however, meaning that I think this will go largely unnoticed by mainstream users. The non-proprietary NX-server packages are very non-trivial to install and all attempts thus far at a completed server setup have remained inadequate and completely fly-by-night/unmaintained. I hope people start to use this more and thus perhaps even push the technology farther.
put the what in the where?
This is excellent news, I've really enjoyed using NX but always found it slightly temperamental to use. Still, it gave me high performance rootless application access over a dodgy wifi link in Germany, back to my machine at uni in the UK - with the ability to resume every time the wifi dropped. I've known people have trouble resuming dropped sessions, though it worked when I needed it. Anything which is well-supported and makes NX nicer to work with is very welcome - I hope Google press on with making this better and better. It's be real nice if they'd make an open source client available too, preferably with a choice of front-end widget libraries ;-)
Another project, which I actually head about on Slashdot and am very impressed by is Xpra: http://partiwm.org/wiki/xpra
Xpra = X Persistent Remote Applications, i.e. connect to your xpra server (tunnels through ssh by default) to get rootless applications delivered to your desktop, disconnect and reconnect somewhere else and get the same apps back. Like screen, for X. It's not meant for fast-changing displays, e.g. video. But it's a nice, compact approach that largely consists of a few thousand lines of Python. It uses modern X extensions cunningly to get the job done without having to understand most of the X protocol itself. And, somewhat like NX, it's better suited to high latency links than simple X11 protocol is. These days I think Xpra is starting to get more advanced features such as Windows client support, theme matching for remote and local apps, some clipboard sharing, etc. It's a nice little app that has its uses, particularly if you want something simpler than NX to set up and administer. The server can also be easily run by an unprivileged user whereas I'm not sure if that's the case for NX (?).
Because NX on modern hardware can provide a user experience that is virtually indistinguishable from a local desktop.
Even X or VNC on a fast connection with fast machines on both ends will feel a bit sluggish. NX works great on old hardware with slow connections -- if you've got multiple clients, you can squeeze more clients out of the same hardware/bandwidth. This can be a *huge* deal.
NoMachine's products aren't cheap, but can be totally worth it given the cost savings in hardware, bandwidth, and support. Their free version also works great for anything but a terminal server.
You can chalk me up as a *huge* fan of NX.
-- If you try to fail and succeed, which have you done? - Uli's moose