User Tools

Site Tools


wiki:components:pyhoca-cli

This is an old revision of the document!


PyHoca-CLI - Download/Installation & Usage

The name PyHoca is a word play combining two powerful entities: Python and Phoca (mascot of X2go, Latin species name for seals).

PyHoca-CLI is a client implementation for X2Go using the project's Python API (Python module). PyHoca-CLI can be operated completely from the command line and the goal is to reflect the full functionality spectrum of python-x2go.

Download/Installation

Debian GNU/Linux

PyHoca-CLI can be installed from the X2Go package repository. Add the X2Go repository for Debian to your APT system before you continue.

Ubuntu GNU/Linux

PyHoca-CLI can be installed from X2Go PPA on Launchpad. Add the X2Go/stable PPA to your APT system before you continue.

After adding either of the above package sources to your Debian/Ubuntu system you will need to update your system with the new repository information by starting a terminal and execute the following commands (on Debian make sure you have sudo installed and configured):

$ sudo aptitude update
$ sudo aptitude install pyhoca-cli

Other GNU/Linux (from source tarball)

Other GNU/Linux distributions can install PyHoca-CLI from source tarballs. The PyHoca-CLI tarball releases can be downloaded from http://code.x2go.org/releases/source/pyhoca-cli, please choose the newest version available there and also consult the README.recommended file (if available) at the same location.

Before installation make sure your system fulfills the (Python module) dependencies for PyHoca-CLI, amongst others: python-x2go, python-paramiko, python-gevent, python-greenlet, python-setproctitle, python-argparse.

If you have seen to installing required dependencies, extract the source tarball and run the Python installation script:

tar -vzxf pyhoca-cli_<version>.tar.gz
cd pyhoca-cli_<version>
python setup.py install

MS Windows

A PyHoca-CLI installer for MS Windows is planned, but not available, yet.

MacOS

A PyHoca-CLI installer for MacOS is planned, but not available, yet.

Usage

PyHoca-CLI Command Line Arguments

PyHoca-CLI has a man page.

On your GNU/Linux system execute

   $ man pyhoca-cli

An always up-to-date html version of the pyhoca-cli man page can be be retrieved from the X2go Git repository: man pyhoca-cli.

Security notice: amongst many options PyHoca-CLI offers a –password option. You should never use this password option from the command line, directly (as it will probably appear in the command history of your terminal shell). However, it might be handy for some of you to use this option when calling pyhoca-cli from within your own scripts.

The –password value (i.e. the actual password passed to PyHoca-CLI) will also be obfuscated in the process list of your system (*nix operating systems only).

Note: On Windows systems the –password option is disabled, and so not available.

Starting PyHoca-CLI

To start an X2go session for remote user foo on X2go server myserver.local with PyHoca-CLI open a terminal window and execute the following command:

$ pyhoca-cli --server myserver.local -N -c GNOME --user //foo// --add-to-known-hosts

If you have a valid X2go session profile configuration ($HOME/.x2goclient/sessions file) you can also use the –session-profile option. For a session profile in x2goclient's sessions file named MyProfile use this command:

$ pyhoca-cli --session-profile MyProfile

Desktop Sharing with PyHoca-CLI

To share an already running local or remote X2go desktop session of user foo on X2go server myserver.local with PyHoca-CLI open a terminal window and execute the following commands:

$ pyhoca-cli --server myserver.local --list-desktops --user foo --add-to-known-hosts

Now a list of available/sharable desktop sessions will be shown (your/foo's own desktops are always sharable), e.g. foo@:0 (local desktop on the server):

someone@client:~$ pyhoca-cli --server myserver.local --list-desktops
pyhoca-cli[20238] NOTICE: preparing requested X2go session
pyhoca-cli[20238] (PyHocaCLI) NOTICE: preparing requested X2go session
pyhoca-cli[20238] (x2gosessregistry-pylib) NOTICE: registering X2go session Pyhoca-Client_Session...
pyhoca-cli[20238] (x2goclient-pylib) NOTICE: initializing X2go session...
pyhoca-cli[20238] (x2gocontrolsession-pylib) NOTICE: connecting to myserver.local

X2go desktops available for sharing
===================================
Host: myserver.local - [<ip-address>]:<port>
Username: foo

foo@:0
foo@:51
bar@:52

To view foo's local desktop session foo@:0 use this command line:

someone@client:~$ pyhoca-cli --server myserver.local --share-desktop foo@:0 --user foo --add-to-known-hosts

The next change in the command line (–share-mode 1) will enable you to access foo's local desktop in full (read-write) access mode…

someone@client:~$ pyhoca-cli --server myserver.local --share-desktop foo@:0 --share-mode 1 --user foo --add-to-known-hosts

If foo is logged in via X2go on desktop foo@:51, you could connect to that desktop as well…

someone@client:~$ pyhoca-cli --server myserver.local --share-desktop foo@:51 --share-mode 1 --user foo --add-to-known-hosts

And if another user bar on your X2go server has enabled desktop sharing (more info here), then you could use this command to let user foo view user bar's desktop session…

someone@client:~$ pyhoca-cli --server myserver.local --share-desktop bar@:52 --user foo --add-to-known-hosts

Further Readings

Please also consult further README and TODO documentation in the PyHoca-CLI Git project (X2go upstream site): http://code.x2go.org/gitweb?p=pyhoca-cli.git;a=tree

wiki/components/pyhoca-cli.1321352237.txt.gz · Last modified: 2013/03/08 13:31 (external edit)