DLT Node setup on Ubuntu/Debian

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

  • Ubuntu, recent versions
  • Debian, recent versions
  • Devuan
  • Kali Linux
  • MX Linux
  • Mint

IxianDLT was tested on Ubuntu (24.04+).

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

Prerequisites

  • Operating system: apt-based Linux distribution, such as Debian or Ubuntu
  • RAM: at least 16 GB
  • CPU: i7/i9/Xeon or AMD equivalent processor with at least 2GHz and at least 8 CPU threads
  • Free Disk Space: 1.5 TB+, 2 TB+ Recommended
  • Internet Connection Speed: 50 Mbps symmetrical or higher, 100 Mbps recommended

Additional requirements

  • Ability to forward a port from the public internet to the machine running the DLT Node. (Default port is TCP 10234.)

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
  1. Prepare a directory for the Ixian Project:
mkdir ~/Ixian
cd ~/Ixian
  1. Acquire the latest Ixian sources from github. Two repositories are required to build a DLT Master node:
git clone -b master https://github.com/ixian-platform/Ixian-Core.git
git clone -b master https://github.com/ixian-platform/Ixian-DLT.git

The directory structure should look like this:

.
..
Ixian-Core
Ixian-DLT
  1. Switch into the Ixian-DLT directory and execute rebuild.sh script:
cd Ixian-DLT
sh rebuild.sh

The script will build all necessary files, which will be located in '~/Ixian/Ixian-DLT/IxianDLT/bin/Release/net8.0/'

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

The Ixian DLT node is now ready to start.

Running the software

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

./IxianDLT

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

./IxianDLT --disableWebStart

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

dotnet IxianDLT.dll --disableWebStart

The output should look like this:

Ixian Console Output

** Side Notes:

  • On some systems we have noticed a problem with libargon2.so when built from source, causing an exception in DLT when trying to verify PoW transaction or when mining. Luckily Ubuntu (and possibly other distributions) provides its own libargon2.so, located in '/usr/lib/x86_64-linux-gnu/libargon2.so.0', you can simply replace the compiled version:
cp /usr/lib/x86_64-linux-gnu/libargon2.so.0 ~/Ixian/Ixian-DLT/IxianDLT/bin/Release/net8.0/libargon2.so

Creating a wallet

If this is the first time that you're starting Ixian DLT, 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 DLT node.

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

Verifying the status of the DLT 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 DLT Node to shut down.

Ixian Run Information

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

If the DLT Node is shut down and later restarted, it will have to synchronize again, but since most of the data will already be stored on the local disk, the synchronization phase will be much shorter.

Using your Ixian wallet

In order to interact with the running DLT Node and use the built-in wallet software, open a web browser and navigate to http://localhost:8081.

If you have configured a different API Port, then change the port number in the link like so: http://localhost:PORT_NUMBER.

The Ixian built-in Wallet looks like this:

Ixian Built-In Wallet

Upgrading the DLT 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:

DirectoryPath
Ixian-Core~/Ixian/Ixian-Core
Ixian-DLT~/Ixian/Ixian-DLT
Executable~/Ixian/Ixian-DLT/IxianDLT/bin/Release/net8.0

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-DLT/IxianDLT/bin/Release/net8.0/ixian.wal ~/ixian.wal.backup.
  2. Shutdown the Ixian DLT 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-DLT directory: cd ~/Ixian/Ixian-DLT.
  6. Update the sources to the latest version: git pull.
  7. Compile the new sources: sh rebuild.sh.
  8. Start the Ixian DLT Node again. The node will use the existing wallet file and downloaded data, so it will not need to generate a new wallet or synchronize again.

Configuration

See DLT Node Configuration options for details.