Hi Lucian,Nable has already contributed here and there as a reply to this mail. Also Reinhard pointed out that there indeed is an X-Server project for Android which is already in beta state.
I will inline go through your mail in detail below. On Sa 21 Sep 2013 19:00:52 CEST Lucian Apetre wrote:
I summed up what x2go needs to be ported on Android:
Thanks for investigating yourself already. That gives a good relaxation on my time budget. Deep thanks!
nxproxy - an application that is needed to access remote desktop.NX protocol makes it possible to run any graphical application on any OS across any network.Consists of 2 part a server side and a client side. For clients we have: Windows, Linux, MacOS, Solaris official site: http://www.nomachine.com/download.php
For X2Go we have ,,NX (redistributed)'' [1, 2]. We chose to maintain a redistributed version of the NoMachine stuff, as we have several patches [3] applied on top of NoMachines original sources.
The NX mechanism is this: o X2Go session runs in nxagent (we renamed it to x2goagent) o nxagent is an X-Server, highly adapted to handling X11 protocol over WAN connections (it is not X11 protocol anymore, it is NX protocol) o nxproxy runs on the client side o nxproxy understands NX protocol and translates it to X11 protocol So, basically, you should test things first, to see if they are feasible: o ssh -X -> launch X11 applications via ssh with x11-forwarding on your Android device o nxproxy -> nxproxy: nxproxy can provide an X-Server like DISPLAY to applications. nxproxy does not understand the X11 protocol itself, but it knows how to compress it and how to apply some caching magic to it. The nxproxy on the client side forwards the NX protocol traffic then to the local (Android'ish) X-Server o x2goagent -> nxproxy: The x2goagent differs from other X-Servers. The NoMachine people found a way to reduce X11's round-trips [4] to a minimum. The nxproxy->nxproxy approach also reduces X11 traffic quite a lot, but with x2goagent->nxproxy things become really smooth.
vcxrsv - an application that is an X display server a set of traditional sample X applications and tools, and a set of fontswe also can use xming from what i see in the code.i didn;t understand exactly what is the role of this x server on the application, i didn't find any doc on this.an x server for android: https://play.google.com/store/apps/details?id=au.com.darkside.XServer&hl=en
Yes, you should start playing with that one!!!
pulseaudio - an application used for sending application audio to another device. PulseAudio is designed for Linux systems. It has also been ported to and tested on Solaris, FreeBSD, NetBSD, MacOS X, Windows 2000 and Windows XP. pulse audio can be replaced with AudioFlinger that is the native android audio system.http://www.freedesktop.org/wiki/Software/PulseAudio/Ports/Android/
Cool! Did not know that.
Unclear issues: 1. can we use the x2go without the nxproxy, the protocol to compress data?
Yes and no. I am working on a non-x2goagent approach for X2Go. I am still unclear if that then will be pure X11, nxproxy->nxproxy or TigerVNC based. The idea is to make the X2Go Server (and later on also the client) pluggable concerning its display rendering strategies.
But at the moment, get prepared to porting nxproxy to Android.
If yes, I think that the porting can teoretically be made only using the X server for Android found here:https://play.google.com/store/apps/details?id=au.com.darkside.XServer&hl=en
The performance will be really really weak if you attempt using pure X11. That won't be much fun!!! It would also require changes in the X2Go Server code (which would not be a problem, if it became really necessary).
2. the x server application is running on the server machine or the client machine, or both? I notice that, for Win is running on the client side, is there a x server also on the server side?
There are two X-Servers involved: 1. client-side local X-Server: on Linux this is the local X.org, on Windows we found that VcXsrv provides the best results. On Mac OS X we use XQuartz. 2. x2goagent: with every X2Go session and instance of x2goagent is launched on the X2Go Server. The x2goagent can run in desktop mode or seamless application mode. In the Linux world it is very hard (if not impossible) to find a nested X-Server that provides both feature in one.
If there is any documentation to specify the processes used in x2go i will appreciate it.
Unfortuately, there is not. Best I can offer is the terminal session class [5] from Python X2Go. It should contain everything you need.
In addition to what has been written above. For making file transfer (folder sharing) available on Android you need an sftp-server on the Android device.
For further discussions on details may I invite you to join #x2go IRC channel on Freenode? Thanks!
Greets, Mike [1] http://code.x2go.org/gitweb?p=nx-libs.git;a=summary [2] http://code.x2go.org/releases/source/nx-libs/ [3] http://code.x2go.org/gitweb?p=nx-libs.git;a=tree;f=debian/patches [4] http://lwn.net/Articles/390389/[5] http://code.x2go.org/gitweb?p=python-x2go.git;a=blob;f=x2go/backends/terminal/_stdout.py
-- DAS-NETZWERKTEAM mike gabriel, herweg 7, 24357 fleckeby fon: +49 (1520) 1976 148 GnuPG Key ID 0x25771B31 mail: mike.gabr...@das-netzwerkteam.de, http://das-netzwerkteam.de freeBusy: https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb
pgplidie6oOZs.pgp
Description: Digitale PGP-Unterschrift
_______________________________________________ X2Go-Dev mailing list X2Go-Dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/x2go-dev