Ixian Documentation Welcome to Ixian Documentation Pages, here you can learn more about Ixian and how to get started quickly!

Note: This guide should work for most apt-based distributions, such as:

IxianS2 was tested on Ubuntu (22.04+).

Installing an Ixian S2 Node on Linux (Debian/Ubuntu clones)

Prerequisites

Additional requirements

Make sure you have the latest package repositories

Before beginning Ixian installation, it is recommended to update your package manager to the latest package database. On Ubuntu-based systems this is done with the following command:

sudo apt update

Install required software

  1. Install the dotnet 8.0 SDK following the guide for your Linux distribution here: DotNet Installation Guide.

  2. Install additional required packages:
    sudo apt install gcc git make unzip
    
  3. Prepare a directory for the Ixian Project:
    mkdir ~/Ixian
    cd ~/Ixian
    
  4. Acquire the latest Ixian sources from github. Two repositories are required to build an S2 Relay node:
    git clone -b master https://github.com/ProjectIxian/Ixian-Core.git
    git clone -b master https://github.com/ProjectIxian/Ixian-S2.git
    

    The directory structure should look like this:

    .
    ..
    Ixian-Core
    Ixian-S2
    
  5. Switch into the Ixian-S2 directory and download the required NuGet packages:
    cd Ixian-S2
    sh rebuild.sh
    

The script will build all necessary files, which will be located in ‘~/Ixian/Ixian-S2/IxianS2/bin/Release/net8.0/’

  1. Switch to the Ixian binaries folder:
    cd ~/Ixian/Ixian-S2/IxianS2/bin/Release/net8.0/
    

The Ixian S2 node is now ready to start.

Running the software

Switch to the Ixian S2 binaries folder and issue the command to start the IxianS2 software:

./IxianS2

If you’re on a console-only environment with no GUI, issue this command instead:

./IxianS2 --disableWebStart

Alternatively you can also start the Ixian DLT with this command:

dotnet IxianS2.dll --disableWebStart

The output should look like this:

Ixian Console Output

Creating a wallet

If this is the first time that you’re starting Ixian S2, a new wallet will be generated for you. You have to set your new wallet’s password to proceed. This password will be used to encrypt the ixian.wal wallet file and will be required every time you start the Ixian S2 node. The file is encrypted using AES256.

It is recommended to periodically copy the wallet to a safe location, preferably on an offline media (USB Key), or a different machine. The wallet file is called ixian.wal.

Verifying the status of the S2 Node

While the node is running, it will display a logo and some basic information in the command window. Please do not close this window, as closing it will cause the S2 Node to shut down.

Ixian Run Information

When the Ixian S2 Node first starts, the status text will display connecting while the software is retrieving the required information from the Ixian DLT network. When this process has been completed, the status text will change to active.

Changing the settings

There are several ways in which Ixian software can be configured:

Configuration on the command line

Ixian S2 Node settings can be provided on the command line when starting the IxianS2 executable. The most important parameters are:

Configuration file

An alternative to specifying parameters on the command line is the Ixian S2 configuration file, which can be used to configure the most important settings.

The format of the file is simple INI (without sections):

A list of options supported by the config file is:

Option name Type Repeatable Default Description
s2Port int No 10235 TCP port number for the S2 Node, when running on the main network.
testnetS2Port int No 11235 TCP port number for the S2 Node, when running on the test network.
apiPort int No 8001 Port for the internal REST API server to listen for commands. Note: This port is only avilable on the localhost interface (127.0.0.1).
testnetApiPort int No 8101 Port for the internal REST API server when the node is operating on the test network.
addApiUser Username:Password Yes EMPTY An additional layer of protection - will require all REST API calls to include the given username and password.
externalIp IP Address No EMPTY Configure this if the external IP address cannot be automatically determined via UPnP.
addPeer Hostname or IP Address Yes Seed Nodes Set this to use different Ixian DLT Mater nodes as seed - this option only has an effect in mainnet mode.
addTestnetPeer Hostname or IP Address Yes Seed Nodes Set this to use different Ixian DLT Mater nodes as seed - this option only has an effect in testnet mode.
maxLogSize int No 50 Size of the Ixian S2 log file (in megabytes), before it is automatically rotated.
maxLogCount int No 10 Number of old (full) log files to keep before deleting the oldest.
walletNotify string No EMPTY OS command to run whenever the local wallet is updated.

Any repeatable options may be specified more than once. If nonrepeatable options are specified multiple times, the last one is used.

Startup script

If you need to run the S2 Node with different settings, but are unable to use the configuration file, it can be tedious to type them out every time you wish to start the software. It is recommended to create a shell script (.sh) with the options already set. To do this, follow the guide below:

  1. Switch to the Ixian S2 Release folder. If you have followed the above instructions for building, the command should be cd ~/Ixian/Ixian-S2/IxianS2/bin/Release/net8.0/.
  2. Create a new script using your preferred text editor. This example uses nano: nano StartIxianS2.sh.
  3. Type or paste the IxianS2 command into the file. You may use the command below, which includes the most common options, as the starting point. ./IxianS2 -p 10235 -a 8001 -i 172.16.34.17
  4. Save the file and quit the editor. For nano, the command is Ctrl-X, then Y.
  5. Make the script file executable: chmod u+x StartIxianS2.sh.
  6. Use the new “StartIxian.sh” file to start the S2 Node with the specified options ./StartIxianS2.sh.

Upgrading the S2 Node software

When a new version is released, you can upgrade the software using the following checklist:

Note: It is recommended to backup the wallet file ixian.wal before performing any upgrade or changing any settings on the command line.

Note: We assume that you have followed the above instructions and the Ixian directory names are as follows: | Directory | Path | | — | — | | Ixian-Core | ~/Ixian/Ixian-Core | | Ixian-S2 | ~/Ixian/Ixian-S2 | | Executable | ~/Ixian/Ixian-S2/IxianS2/bin/Release |

If you have placed the Ixian source code folders elsewhere, change them in the below description. Furthermore, if you copied the executable files from the bin/Release folder someplace else, you will need to repeat the copy step to overwrite old executable files with new ones.

  1. Save the ixian wallet file: cp ~/Ixian/Ixian-S2/IxianS2/bin/Release/ixian.wal ~/ixian.wal.backup.
  2. Shutdown the Ixian S2 Node.
  3. Switch to the Ixian-Core directory: cd ~/Ixian/Ixian-Core.
  4. Update the sources to the latest version: git pull.
  5. Switch to the Ixian-S2 directory: cd ~/Ixian/Ixian-S2.
  6. Update the sources to the latest version: git pull.
  7. Run the rebuild script: sh rebuild.sh.
  8. (Optional) If you have copied the binaries elsewhere, repeat that step.
  9. Start the Ixian S2 Node again. The node will use the existing wallet file, so it will not need to generate a new wallet.

Cookies Policy

To make this site work properly, we sometimes place small data files called cookies on your device. Most big websites do this too.