LWN.net Logo

Google releases Neatx NX server

Google releases Neatx NX server

Posted Jul 25, 2009 8:51 UTC (Sat) by njs (guest, #40338)
Parent article: Google releases Neatx NX server

Neat! From a quick look, it seems they still depend on the upstream 'nxagent', which makes me sad.

For those unfamiliar with NX's innards, 'nxagent' is the somewhat opaque name that NoMachine gave to the actual X server that's been hacked to run headless, display on other X servers via the NX protocol, and reconnect to the remote X server open request -- i.e., the part that provides the core functionality. What Google's released is a rewrite of the management scripts that surround this core -- the way you connect to an NX session is that you ssh in as the magic user 'nx', and then speak a special protocol to log in again as your actual user, and then speak another special protocol to manage sessions, and then get a proxy to the actual underlying nxagent. Various programs are needed to implement these protocols, spawn and manage the actual nxagents, proxy to them, etc. The freenx implementations are rather grotty, as mentioned, and Google's look much cleaner. Really what *I* want is a way to skip them altogether, though, both aesthetic and practical grounds.

Unfortunately, nxagent itself is (last I checked) a forked version of the old XF86 monolithic tree, developed by a "occasionally throw a big pile of undocumented tarballs over the wall" method, and it *should* make it easy to get a simple persistent X session running under a single user account, there are some restrictions that make it hard. I don't remember exactly what problems I ran into anymore -- hopefully someone will correct me if I'm wrong -- but IIRC you cannot *start* a session in headless mode, only start it in attached mode and then disconnect, and if you tell it that you want to reconnect but fail to do so within 30 seconds, it will just quit and take down all your running programs. If your wireless drops out at the wrong time then sucks to be you.

(Standard disclosure/shameless plug: I was so frustrated that I wrote a competitor, 'xpra'.)


(Log in to post comments)

Google releases Neatx NX server

Posted Jul 25, 2009 13:24 UTC (Sat) by rvfh (subscriber, #31018) [Link]

This XPRA stuff is really neat! Is there any nice front-end for novice users? I guess the way it works might not be obvious for loads of people...

Ideally you'd want to initiate the server from a client, and apps from there too.

Anyway, I'll see how fast it is from work, and if it is, then xpra will become part of my list of must-install packages!

Google releases Neatx NX server

Posted Jul 26, 2009 3:26 UTC (Sun) by njs (guest, #40338) [Link]

> Is there any nice front-end for novice users?

There isn't any whizzy GUI front-end right now, no -- you just say 'xpra attach ssh:whereever' (or click on a shortcut to that), and Control-C to kill it. But the client is <500 lines of Python, so it wouldn't be hard to add more bells and whistles if someone cares to do so.

> Ideally you'd want to initiate the server from a client

Good point! I wrote the patch for this... but then realized that there's a problem: the client doesn't necessarily know where the xpra executable is installed on the server, so it can't necessarily find it to start it. You can work around this by requiring that it always be installed in a well known location, but then we're back to the heavy-weight NX-style setup (I don't have root on the server where I use xpra!). And typing 'ssh whereever xpra start' isn't really harder than typing 'xpra start ssh:whereever' anyway.

(This problem doesn't arise when connecting to an already running server, because the server does some magic at start-up time so the client can always find it.)

> and apps from there too.

This is easy, but would need that fancier client GUI to be useful. (It'd just be equivalent to 'ssh <host> env DISPLAY=<...> nohup <command>', anyway, except that if we built it in, then a client could make that request over its existing ssh connection without spawning a new one. Of course, you could just run a terminal under xpra too.)

Google releases Neatx NX server

Posted Jul 28, 2009 13:34 UTC (Tue) by kh (subscriber, #19413) [Link]

I would really like to have some connection program like crossloop.com so I could remote in to help family members who have switched to Linux when we are both behind NAT'd firewalls.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds