Skip to main content
Skip table of contents

Installing the XNAT Desktop Client

The XNAT Desktop Client is available for use on modern Mac, Windows and Linux operating systems, though the installation methods and requirements differ for each system. 

Mac OS Installations

The XNAT Desktop Client for Mac OS includes an embedded Java Runtime Environment. There have been known issues accessing this bundled resource in virtualized Mac environments, so we strongly recommend only installing the client on a native Mac OS.

Installation is very straightforward. 

  1. Download the .DMG file from download.xnat.org/desktop-client
  2. Open the .DMG file and drag the app into your Applications folder
  3. Open the application for the first time
  4. If you get a security warning when trying to launch this application, open System Preferences > Security > General. You should see a message about this app and the option to "Open Anyway".

Opening the application for the first time will install file-handling support for all your browsers so that image session download requests from the XNAT web app will open in your desktop client. 


Windows Installations

The XNAT Desktop Client for Windows includes an embedded Java Runtime Environment. There have been known issues accessing this bundled resource in virtualized Windows environments, so we strongly recommend only installing the client on a native Windows OS. 

Installation is very straightforward. 

  1. Download the .exe file from download.xnat.org/desktop-client
  2. Open the .exe file , which launches the one-step installer

Installing the application will install file-handling support for all your browsers so that image session download requests from the XNAT web app will open in your desktop client. 


Linux Installations

Linux users must have a compatible JRE installed in order to use the XNAT Desktop Client.

The XNAT Desktop Client for Linux is distributed as an AppImage, which is an executable application that does not need a separate installation step. For more on working with AppImage files, see the AppImage documentation

The basic process for configuring and running the desktop client on linux is as follows:

  1. Verify that your server supports the C++ ABI version 1.3.9
  2. Install a Java 8 JRE
  3. Link the server libraries for your JRE to /opt/java/linux-x64/jre/lib/amd64/server
  4. Download the .AppImage file from download.xnat.org/desktop-client
  5. Make the .AppImage file executable
  6. Run the .AppImage file

Running the application for the first time will install file-handling support for all your browsers so that image session download requests from the XNAT web app will open in your desktop client.

Before doing any configuration or installation of anything, you should ensure that the libstdc++ library on your machine supports C++ ABI 1.3.9. You can verify this by first locating the library, then searching for the string CXXABI_1.3.9:

CODE
$ find /usr/lib /usr/lib64 -name libstdc++.so.6
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
$ strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep CXXABI_1.3.9
CXXABI_1.3.9

If you don't see CXXABI_1.3.9, you won't be able to run the XNAT desktop client on that machine. This is not an issue with the desktop client itself but with the Electron framework on which the desktop client runs. Server platforms and versions that are known not to support C++ ABI 1.3.9 include:

  • RHEL/CentOS 7.x (and earlier)
  • Fedora 19 (and earlier)

Server platforms and versions that are known to support C++ ABI 1.3.9 include:

  • Ubuntu 18.04 and later
  • CentOS 8

How you should install the JRE or JDK can vary based on your OS platform and version. For example, you can install the Java 8 JRE on Ubuntu 20.04 with the following command:

Installing JRE on Ubuntu 20.04

BASH
sudo apt install openjdk-8-jre

 You then need to link the server libraries from that folder to a location where the desktop client can find it. Since different platforms end up installing JREs/JDKs to different root paths and folders, the application looks in a folder that can be common across platforms. The code below shows how this can be configured on Ubuntu 20.04 (note that you'll either need to preface each command with sudo or perform these commands as root):

CODE
$ mkdir -p /opt/java/linux-x64/jre/lib/amd64

$ ls -l /usr/lib/jvm
total 4
lrwxrwxrwx 1 root root   20 Apr 21 06:46 java-1.8.0-openjdk-amd64 -> java-8-openjdk-amd64
drwxr-xr-x 7 root root 4096 May 24 12:53 java-8-openjdk-amd64

$ find /usr/lib/jvm/java-8-openjdk-amd64 -name server
/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server

$ ln -s /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server /opt/java/linux-x64/jre/lib/amd64/server

Once you've linked the JRE and downloaded the XNAT desktop client AppImage file, make the image executable:

CODE
chmod +x XNAT-Desktop-Client-2.0.4.AppImage

You should now be able to run with this command:

CODE
./XNAT-Desktop-Client-2.0.4.AppImage


JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.