TARBALL INSTALLATION OF x2goserver
==================================

1.) USERS + GROUPS for X2Go
---------------------------
Set up x2gouser account and its group if they do not exist
already:

 $ groupadd --system x2gouser
 $ useradd --system --no-create-home \
           --shell /bin/false --home /var/lib/x2go x2gouser

Set up x2goprint account and its group if they do not exist
already:

 $ groupadd --system x2goprint
 $ useradd --system \
           --shell /bin/false --home /var/spool/x2goprint x2goprint
 $ chown x2goprint:x2goprint ~x2goprint
 $ chmod 0770 ~x2goprint

2.) BUILD + INSTALL x2goserver FILES
-----------------------------
Extract tarball and run

 $ make && sudo make install

in base folder of the extracted tarball.


3.) SGID GROUP
--------------
Configure ownership, permissions and setgid group bits of
libx2go-server-db-sqlite3-wrapper and x2goprint:

  NOTE: The described actions have already been performed by the Makefile
  run, leaving this here for documentation only.

 $ chown root:x2gouser /usr/lib/x2go/libx2go-server-db-sqlite3-wrapper
 $ chmod 2755 /usr/lib/x2go/libx2go-server-db-sqlite3-wrapper

 $ chown root:x2goprint /usr/bin/x2goprint
 $ chmod 2755 /usr/bin/x2goprint

 $ chown 0440 /etc/sudoers.d/x2goserver

4.) INIT SCRIPT
---------------
Create a simple init script that starts $PREFIX/sbin/x2gocleansessions on system start
(runlevel 2-3-4-5).

Alternatively, you can add a single line to /etc/rc.local:

/usr/local/sbin/x2gocleansessions &


5.) LOCAL FOLDER SHARING
------------------------
Users that shall be able to use X2Go's local folder sharing functionality (via sshfs)
have to be members of your server system's ,,fuse'' group

 $ usermod -a -G fuse <username>


6.) PRINTING
------------
Also users that shall be able to send print jobs to client-side printers have to be
members of the server-side ,,fuse'' group (see above).

As X2Go printing setups can be rather versatile, details on X2Go printing are explained in
the project's wiki:
https://www.x2go.org/doku.php/wiki:components:printing
https://www.x2go.org/doku.php/wiki:advanced:multi-node:x2goserver-printing


7.) DATABASE SETUP (SQLite3 only)
---------------------------------

 $ x2godbadmin --createdb


7a.) DEFAULT: SQLite3 setup
---------------------------
This variant is the default X2Go database setup. The X2Go database keeps track of
running/suspended/finished X2Go sessions, mounted devices, etc. If you use SQLite3
as DB backend, X2Go will run on one single server.

For multi-X2GoServer support use the PostgreSQL setup variant of X2Go server. All files
are already resent for this setup. If not, please report it as a bug.


7b.) ALTERNATIVE: PostgreSQL setup
----------------------------------
This variant is for a setup of x2goserver that uses a PostgreSQL database backend...

The exact installation of x2goserver with PostgreSQL support is described here:
https://www.x2go.org/doku.php/wiki:advanced:multi-node:x2goserver-pgsql

