On 10/25/2010 05:36 PM, Mike Gabriel wrote:
Hi Gerry,
thanks for asking your questions.
On Mo 25 Okt 2010 17:58:56 CEST Gerry Reno wrote:
There appear to be a number of efforts involving developing python scripts for x2go.
What are the status of these python efforts? Did Jörg abandon his effort?
Yes, Jörgs approach was initially licensed as GPL, but his contractor refused to grant publication under an open license.
Mike, you mentioned the you were redeveloping Jörg's scripts.
Yes, I have rewritten Jörgs ideas and expanded the possibilities:
- pulse audio support
- local folder sharing
- printing (work in progress)
Is that effort finished?
No, that will probably take a great little while more. Dick Kniep from Lindix in the Netherlands writes a GUI around the new Python X2go library, whereas I will support his effort by co-developing the Python X2go module.
I myself use my pyhoca-cli intensively (from the command line) and I am very satisfied with its stability (on Ubuntu lucid).
The collaboration with Dick will hopefully bring forth:
o a GUI based client (wxPython) that operates form the systray in Windows / as a docking applet in Linux (GNOME/KDE), one main objective is multi-session support. Dick also plans a MacOS X version, but I am not sure how that will integrate in the Mac desktop (not familiar with terminology)
o handling of x2goclient config files (printing, settings)
o handling session profiles in ~/.x2goclient/sessions
I will also later add LDAP support... In fact, there is still a bunch of work to do...
And what ssh connection approach is being taken with python scripts?
Python X2go uses the Python Paramiko SSH implementation.
Multiple ssh connections the same as the perl scripts? Or establish and reuse a single ssh connection?
Python X2go builds up one SSH Transport connection. Through this connection all tunnels (nxproxy, audio, local sharing, printing) are handled. I have implemented its own SFTP server into Python X2go. This means: Python X2go does not need a local SSH daemon. Python X2go uses its own SFTP implementation (works great for me).
And what is the minimum python level necessary to run these python scripts? 2.3, 2.4, 2.5, 2.6?
You need Python2.6 with Greenlet/Gevent module. I have prepared packages for Ubuntu lucid/maverick and Debian squeeze/sid in our DAS-NETZWERKTEAM repository.
Just trying to gauge the requirements, features and maturity of the python efforts.
Please refer to our project homepage, SVN and the Epydoc-generated API documentation:
Greets, Mike
PS: currently I am working on a completely different project, which will last another week at least. Once that is done, I will return to Python X2go development.
Thanks Mike. That all sounds great. Paramiko certainly looks like a good choice.
Python 2.6 might limit somewhat. I'll have to see how far back in distros we could possibly go using 2.6.
When I get some time here I'll start playing around with these scripts.
If at all possible I would prefer to use python over perl. Better
performance and little nicer syntax.
Regards, Gerry