Remote dedicated clients installation

When installing dedicated clients on a machine that is different from the machine where the REVEN server is running, you can follow the procedures below.

NOTE: Installing the dedicated clients is not mandatory, as you can start Axion and Python sessions directly from the Project Manager.

Installing the Axion AppImage on a remote client

To install the Axion GUI on a remote Windows or Linux client, Tetrane provides an AppImage package.

NOTE: Again, connecting an Axion client remotely may require configuring your network. See above for more details.

Installing the Axion AppImage package on Windows 10

  1. Install Windows Subsystem for Linux (WSL) - follow Microsoft's doc
  2. Install a linux distribution: the following instructions were tested on Debian & Ubuntu, but the AppImage is designed to work on any other if you prefer a different distribution.
  3. Install Xming (or another X Windows Server that runs on Windows) and launch it
  • Warning: if you run the AppImage in WSL2, you must start Xming through the XLaunch app and check No Access Control because both your Windows & Linux environments are going to communicate through the network.
  1. From the WSL shell:
    1. Install some dependencies from the WSL shell:
    # install base dependencies
    sudo apt update
    sudo apt install x11-apps
    sudo apt install libgl1-mesa-glx
    sudo apt install libharfbuzz-bin
    
    # optionally, users can install xfce4 to have a graphical theme
    sudo apt install xfce4
    
    1. Export the display to be able to use graphical applications:
    # On WSL1
    export DISPLAY=:0
    
    # On WSL2 linux runs on a separate network than the host, so you must point to the host's address
    # Because of that, you must also create a Windows firewall inbound rule to allow connections to port 6000
    # and ensure your X server running on the host allows connection from the WSL guest.
    export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf 2>/dev/null):0
    
    # And to test the display:
    xeyes
    
    1. Execute the appimage:
    /mnt/c/.../Axion-x.y.z.AppImage
    

When following the procedure above, you should have Axion running. However, on WSL1 and older versions of WSL2, you may encounter the following error upon executing the AppImage:

fuse: device not found, try 'modprobe fuse' first

Cannot mount AppImage, please check your FUSE setup.
You might still be able to extract the contents of this AppImage
if you run it with the --appimage-extract option.

If you see this error, you will need to take some additional steps:

  1. From the WSL shell:
    1. Extract the AppImage:
    /mnt/c/.../Axion-x.y.z.AppImage --appimage-extract
    
    1. Check that your version of strip in WSL is at least 2.34. If it is not the case, please use a more recent linux distribution.
    strip --version
    
    1. Strip the libQt5Core.so.5 dependency inside the extracted AppImage:
    strip --remove-section=.note.ABI-tag squashfs-root/usr/lib/libQt5Core.so.5
    
    1. Execute Axion inside of the extracted AppImage:
    ./squashfs-root/AppRun
    

Installing the Axion AppImage package on Linux

All you need to do is make it executable and run it. It is a compressed image with all the dependencies and libraries needed to run the desired software. So there is no extraction, no installation needed. You can uninstall it by deleting it.

Installing the Python API on a remote client

Please refer to the Python API installation page.

Enabling rendering of VMs and Axion on a remote machine via X forwarding

When not locally logged in the REVEN server, but working from a remote client, you can enable the rendering of Virtual Machines (VMs) and the Axion GUI on the remote machine by enabling X forwarding.

This procedure is only available when the REVEN server has been installed from the native Debian package.

  1. Ensure you have the setting QUASAR_USE_VNC set to False.

  2. Connect to the REVEN host through SSH with X forwarding enabled: ssh -Y your-login@your-reven-host

  3. Launch the Project Manager services, with the following command at the root of the installation directory: ./start.sh

  4. Point your favorite web browser to the Project Manager's homepage: https://your-reven-host:8880/

NOTE: Only the ssh connection that executed the ./start.sh command will be able to display Axion and the VMs remotely. If this connection gets closed, open a new connection to ./stop.sh the REVEN server and then ./start.sh it again. In particular, this means that in this configuration, other users cannot use your REVEN instance, as X applications such as Axion and the VMs would be redirected to your display.

NOTE: If you ever want to get back the rendering in browser of Axion and the VMs, toogle QUASAR_USE_VNC back to True.