Installation on a server (experts only)

What follows are detailed instructions for installing z-Tree unleashed on your own server. We recommend the use of Debian.

Only do this if you are a Linux aficionado. If you are not, use our simple installation instructions using the virtual machine image (which can also be used on a server) or ask your local Linux guru to do this for you. Using these instructions while not being a Linux aficionado may have grave consequences, and there is no warranty.

  1. Login to your server as root and create the user lab:

     root@zunleashed ~ % adduser lab
    

    Set a secure password for lab:

     root@zunleashed ~ % passwd lab
    
  2. Install required and suggested packages:

     root@zunleashed ~ % echo "deb http://deb.debian.org/debian/ unstable main" | tee /etc/apt/sources.list.d/unstable-wireguard.list
     root@zunleashed ~ % printf 'Package: *\nPin: release a=unstable\nPin-Priority: 90\n' | tee /etc/apt/preferences.d/limit-unstable
     root@zunleashed ~ % dpkg --add-architecture i386
     root@zunleashed ~ % apt update
     root@zunleashed ~ % apt install git wine wine32 wireguard ssl-cert nginx psmisc sudo tmux
     root@zunleashed ~ % apt install xtightvncviewer x11vnc xvfb vinagre
     root@zunleashed ~ % apt install netcat-openbsd rsync htop geany zip
     root@zunleashed ~ % ln -s /usr/bin/python3 /usr/bin/python 2>/dev/null
    
  3. Add lab to the sudoers file:

     root@zunleashed ~ % echo "lab ALL=(ALL) NOPASSWD: ALL" | tee -a /etc/sudoers
    

    This enables sudo passwordless authentication for the lab user. Make sure that only authorized personnel has access to the lab user.

  4. Log in as lab, clone this repository and set up some symbolic links:

     root@zunleashed ~ % su - lab
      lab@zunleashed ~ $ git clone https://gitlab.com/cler1/ztree-unleashed
      lab@zunleashed ~ $ ln -s ztree-unleashed/scripts scripts
      lab@zunleashed ~ $ ln -s ztree-unleashed/utils utils
    

    If you use Debian or a broadly compatible system such as Ubuntu and wish to enable automatic installation of configuration files, please execute the following:

     lab@zunleashed ~ $ sudo touch /etc/zu_oem
    
  5. Initialize z-Tree unleashed:

     lab@zunleashed ~ $ cd scripts
     lab@zunleashed ~/scripts $ ./init.sh
    
  6. You are essentially done. We recommend that you put the z-Tree and z-Leaf executables into /share/zTree. For example, you can use a web browser to download files. But you could also use rsync or SFTP (e.g. using Filezilla).

  7. You can run a session like this:

     lab@zunleashed ~ $ cd scripts
     lab@zunleashed ~/scripts $ ./start_session_simple.sh
    
This document is still a work-in-progress.