Installing, Updating, And Removing Aion

This section explains how to install Aion on your system.

Requirements

The following requirements must be met for Aion to work on your system:

  • Windows:

    • A 64-bit Intel or AMD processor.

    • Windows 10, build 19041.620 or newer. You can use Microsoft’s winver tool to check your Windows version.

    • At least 1.5GB of free hard disk or SSD based storage.

    • At least 4GB of memory.

  • Apple MacOS:

    • Intel based Mac, Aion currently does not support ARM based Mac computers.

    • MacOS Catalina, version 10.15.6 or newer. You can use “About This Mac” under the Apple menu item to check your MacOS version.

    • At least 1.5GB of free hard disk or SSD based storage.

    • At least 4GB of memory.

  • Linux:

    • A 64-bit Intel or AMD based system.

    • Software is tested on Ubuntu 18.04 LTS, Ubuntu 20.04 LTS, and CentOS version 8. We do not provide support for other Linux distributions although the software has few external dependencies and will likely work.

    • At least 1.5GB of free hard disk or SSD based storage.

    • At least 4GB of memory.

    • A Freedesktop.org compatible window manager. Other window managers may work with reduced functionality.

Note that you will need internet connectivity to install the software, check license status and receive software updates. You do not need a persistent internet connection to simply use Aion.

Additional Dependencies (Linux Only)

Note that you should verify that the following packages have been installed on your system prior to installing Aion.

Ubuntu 18.04 And 20.04

You should verify that the following packages have been installed on your Ubuntu 18.04 or Ubuntu 20.04 based Linux system.

  • libxcb-xinerama0

  • libxcb-xinput0

Ubuntu 20.04 also requires the libncurses5 library.

You can use the command listed below to fully patch your system and install the necessary packages from the command line.

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libxcb-xinerama0 libxcb-xinput0 libncurses5

Note that this assumes a minimal, fully updated, Ubuntu distribution.

CentOS 8.4

You should verify that the following packages have been installed on your CentOS 8.4 based Linux system.

  • ncurses-compat-libs

You can use the command listed below to fully patch your system and install the necessary packages from the command line.

sudo dnf update
sudo dnf upgrade
sudo dnf install ncurses-compat-libs

Note that this assumes a basic Workstation installation.

Other Linux Distributions

Inesonic, LLC does not provide official support for other Linux distributions; however, Aion has only a few external dependencies so configuring Aion to run on other Linux distributions should be fairly trivial.

You will generally need to install a subset of the XCB libraries and the ncurses library, version 5.

After you install Aion, you may also need to modify how Aion locates the ANSI-C runtime library. You can do this by making a modified copy of the aion shell script located at ${HOME}/bin/Aion/bin/aion or /opt/Aion/bin/aion. Copy your modified version of the Aion launch script outside of the Aion installation directory. Note that Aion will likely not successfully relaunch after performing an update as the Aion updater will attempt to use the Inesonic, LLC supplied launch script.

Your custom aion launch shell script must perform three actions:

  • Temporarily block execution of Aion if the Aion background updater tool, named bgupdater, is running. This will only happen if you install Aion as a system global installation. For details, see Automatic Updates.

  • Set the INESONIC_C_RUNTIME_LIBRARY environment variable to point to the system’s ANSI-C runtime library, typically named libc.so or libc.so.6.

  • Set the INESONIC_DL_LIBRARY environment variable to point to the system’s dynamic loader library, typically named libdl.so or libdl.so.2.

  • Add an entry to the LD_LIBRARY_PATH environment variable so that Aion can locate the necessary dynamic libraries it needs. You should append either ${HOME}/bin/Aion/bin or /opt/Aion/bin to your LD_LIBRARY_PATH environment variable as appropriate.

  • Run the actual Aion executable, named aion_core on Linux.

Note

The Aion updater tools will overwrite or remove any file located under ${HOME}/bin/Aion or /opt/Aion.

Note

Inesonic, LLC may update the aion launch script. Please refer back to updated versions of these directions to identify if changes to your custom launch shell script are required.

Running The Installer

The installation process is similar for all systems.

After purchasing a subscription, you should receive an e-mail with your installation key. Without this installation key, you can-not install Aion on your system. If you lost your installation key, you can request that the installation key be resent to you by logging into your account at https://inesonic.com/customer-sign-in/ and clicking “Install.” The installation key will be e-mailed to your registered e-mail account.

You should download the most recent version of the installer. The link to the latest version of the installer can be found in the welcome email. Alternately, you can obtain the installer by signing into your account at http://inesonic.com and clicking “Install”. Be sure to select the correct installer for your operating system.

On Windows and Linux, the download will be a self contained executable that you can run directly. We also provides the Windows executable in a zip file.

On MacOS, the installer will be a compressed .DMG archive containing the installer executable. Simply open the .DMG archive and run the installer.

Note that you can stop and restart the installation, if needed. The installer will take an inventory of the current installation and will download and install only those components that are missing or incomplete.

When you run the installer, the installer will prompt you to:

  • Accept the Inesonic, LLC software EULA as well as third party licenses.

  • On Windows and Linux, the installer will give you the option of specifying a custom installation location for Aion. On MacOS, Aion will always be installed under ~/Applications/Aion/.

  • Enter your installation key. The installer may pause briefly while validating your license.

  • After the license key has been verified, the installer will request your customized installation image from Inesonic, LLC servers. Your installation will be queued and then downloaded. The packaging process will take several minutes so please be patient. Once your installation package is available, it will be downloaded and installed.

  • Once completed, you will be given the option to run the installation immediately.

On Linux, if you run the installer as root, the installer will perform a global installation. The installation will be placed in a central location such as /opt/Aion that can be accessed by all users of the system. Note that the global installation must be tied to a specific user on https://www.inesonic.com and will only receive updates while that user’s subscription is valid.

If a global installation is performed, each user must also run the installer, provided in /opt/Aion/bin/installer to tie their installation key to their Linux user account. The installer will detect that a global installation is available and will use that installation rather than install multiple per-user installations on the same system.

Automatic Updates

Aion will update automatically as new versions become available. The exact method of performing updates varies slightly depending on your operating system and configuration.

On Windows, MacOS, and per-user installations on Linux, Aion will run an updater tool in the background when Aion starts. The updater tool will check for and stage any updates. The updater tool will continue to run until it completes its operation even if you quit Aion. Aion will prompt you to perform an update the next time you start Aion if the updater tool has downloaded and prepared an update for you last time it was run.

For Linux global installations, a cron job is run once daily that checks the status of the installation and performs updates, if needed, using a background updater tool. Updates will not be performed while any user on the system is actively running the software. Similarly, users will be temporarily blocked from starting Aion while the updater is running.

Note

The updater tools will remove any files under the product installation that are not part of the actual product. Do not modify or add any content under the product directory as it will be removed on subsequent updates.

Uninstalling

If needed, you can easily uninstall Aion.

Microsoft Windows

On Microsoft Windows, you can simply use Microsoft’s “Add/Remove Programs” tool under “System Settings”. To access, click Start and then click on the gear icon. Then click on “Apps”. Scroll down the list until you see “Inesonic, LLC Aion”, click on the program, then click “Uninstall”. Follow the prompts to remove Aion.

MacOS

Open “Finder” and select “Go | Home”. Double click on “Application” in the Finder window. Locate Aion and two-finger click or right click on it. Select “Move To Trash.”

Linux

You must manually remove the software on Linux.

Global Installations

For global installations, you should remove the following files and directories:

  • Remove the application directory. The default location is /opt/Aion.

  • Remove the Gnome and KDE desktop files, typically located at /usr/share/applications/com.inesonic.Aion.

  • Remove the background updater shell script invoked by cron. This script is typically located at /etc/cron.daily/aion_updater.

  • To avoid issues should you re-install the software in future, we recommend that you not remove the system configuration file located under /etc/xdg/.

Per-User Installations

For per-user installations, you should remove the following files and directories:

  • Remove the application directory, typically $HOME/bin/Aion.

  • Remove the Gnome and KDE desktop files, typically located at $HOME/.local/share/applications/com.inesonic.Aion or $HOME/.gnome2/vfolders/applications/com.inesonic.Aion.

  • Remove the desktop file, typically located at $HOME/Desktop/Aion.desktop.

Adding Additional Security To Linux System Global Installs

You can also setup a global Linux installation that does not require any portion of Aion run as root although the installation process is somewhat more involved.

Note that you will need an Inesonic, LLC account tied to the installation and Aion will only receive updates so long as that account is active.

  • Create a dedicated user account and group for Aion. You will temporarily need to log into this account during the installation process although you can disable logins when you are finished. For the example below, we will assume user aion, group aion with a home directory /home/aion.

    sudo adduser -c 'Aion Sandbox Account' -d /home/aion aion
    sudo passwd aion
    
  • Identify the location where you want the Aion installation directory to reside. For the example below, we will assume Aion will be installed at /opt/Aion.

  • Make directory to contain the Aion installation writable by the aion user. For this example, the directory would be /opt. When you are finished, you can remove write access to /opt but the /opt/Aion directory must remain fully accessible by user aion.

    sudo setfacl -m 'u:aion:rwx' /opt
    
  • Log in to a graphical shell as user aion. Alternately, you can use secure shell with X11 forwarding.

  • Run the Aion installer as user aion and perform the installation as a normal user, not as the root user. When you reach the screen shown in Figure 1, change the installation directory to /opt/Aion or similar by clicking on the Change button.

    ../_images/installation_directory_page.png

    Figure 1 Linux Installer Installation Directory Page

  • Once done, click Next and enter your installation code. Do not run |product| as user ``aion`` after the installation completes.

  • At a convenient location in the aion user’s home directory, create the script shown below, naming it aion_check_update. Be sure to adjust the script as needed to match your installation.

    #!/bin/bash
    ##-*-bash-*-##################################################################
    # Copyright 2021, Inesonic, LLC
    # All Rights Reserved
    ##############################################################################
    # Small script that checks for Aion updates only if nobody is running Aion.
    #
    
    BGUPDATER=/opt/Aion/bin/bgupdater
    
    # Don't run if we're already running.
    SCRIPT_NAME=$(basename -- ${0})
    let NUMBER_INSTANCES=$(ps -F | grep "bash" | grep "${SCRIPT_NAME}" | wc -l)-1
    if [ $NUMBER_INSTANCES -eq 1 ];
    then
        # Request to our customers:
        #   Please add the three lines below so that our servers don't get hit
        #   with hundreds of requests around the same time every day.  This will
        #   improve the QoS we provide to you.
    
        SLEEP_TIME=$[(${RANDOM} % 86400) + 1]
        echo "*** Sleeping for ${SLEEP_TIME} seconds."
        sleep ${SLEEP_TIME}
    
        # Wait until Aion is not actively running.
        while pidof "aion_core" >/dev/null;
        do
            echo "*** Aion is in use.  Try again in 5 minutes."
            sleep 300
        done
    
        # Now check for license changes and perform any updates.
        echo "*** Checking for updates."
        ${BGUPDATER}
    fi
    
  • Make the aion_check_update script executable using the chmod command.

    chmod +x /home/aion/aion_check_update
    
  • From the aion account, setup a user cron job to run the aion_check_update script once daily. To do this, use the crontab -e command as user aion. The crontab entry you add should look like 0 0 * * * /home/aion/aion_check_update.

  • Log out of the aion account and log back into an account with administrative or root access.

  • Recursively set permissions on the Aion installation directory to make the entire directory and contents world readable.

    sudo chmod --recursive --verbose o+r /opt/Aion/
    
  • If you like, you can remove user aion ‘s write access to the /opt directory.

    sudo setfacl -x 'u:aion:rx' /opt
    
  • Create the directory /etc/xdg/Inesonic, LLC. Please note the comma and space in the directory name. Make the directory world readable.

    sudo mkdir '/etc/xdg/Inesonic, LLC'
    sudo chmod o+r '/etc/xdg/Inesonic, LLC'
    
  • Create a hard link to the file /home/aion/.config/Inesonic, LLC/Aion.conf located at /etc/xdg/Inesonic, LLC/Aion.conf.

    sudo ln -P '/home/aion/.config/Inesonic, LLC/Aion.conf' '/etc/xdg/Inesonic, LLC/Aion.conf'
    
  • Using the ls -l command confirm that the directory /etc/xdg/Inesonic, LLC and the file /etc/xdg/Inesonic, LLC/Aion.conf are both world readable.

  • To allow Aion to appear as an option on all user’s menus, copy the desktop file from /home/aion/.local/share/applications/com.inesonic.Aion.desktop to /usr/share/applications/com.inesonic.Aion.desktop.

    sudo cp '/home/aion/.local/share/applications/com.inesonic.Aion.desktop' '/usr/share/applications/com.inesonic.Aion.desktop'
    

Once these step are completed, users with an active Inesonic, LLC subscription can can run the Aion installer from their account to activate Aion using the shared copy. The Aion installer will detect a global installation and use that installation rather than attempting to install a copy in the user’s account.

Note

To facilitate using global installations, the Linux version of Aion includes a copy of the Aion installer located at /opt/Aion/bin/installer.