πŸ’» System Configuration

Usually, you should be able to run a node on an operating system of your choice. You will be able to compile the Nolus daemon on most modern Linux distributions and recent versions of macOS. However, this tutorial uses commands available in the Ubuntu LTS release. If you are using a different operating system, you might need to adjust the commands you will see. Running a full node on the Nolus blockchain is a resource-intensive process that requires a persistent server since you would need to store all the information on the blockchain and constantly be in sync with the other network participants. It is also a prerequisite for being a validator.

βš™ Hardware Requirements

The recommended hardware to run a Nolus node will vary depending on the node's use case and desired functionalities. For example, if the node acts as an archive, meaning that it stores all the historical data of the blockchain dating back to the genesis block, it would naturally require a lot of storage (disk space). The recommended by us minimum requirements to run a full node are the following:

πŸ‘¨β€πŸ­ Prerequisites

Golang go1.20.4 linux/amd64 Linux users

sudo apt-get install -y build-essential

Nolus core is the official Golang reference implementation used for a node. Follow this guide to install Nolus core which will allow you to use nolusd. nolusd stands for Nolus Daemon and is the command-line interface (CLI) and daemon that enables you to interact with the Nolus blockchain.

πŸ— Build Nolus Core

1. Use Git to Clone the Nolus Core Repository

git clone <https://github.com/Nolus-Protocol/nolus-core>

2. Make Sure That You Are in the β€œCore” Directory

cd nolus-core

3. Check Out the Main Branch Containing the Latest Stable Release

<aside> πŸ’‘ If you want to sync from block 1, then feel free to checkout the initial version of the rila-1 testnet which is v0.3.0 and upgrade the binary once you reach an upgrade height. Should you decide to checkout the latest version (v0.4.1), you would be able to sync from a recent snapshot (not yet available).

</aside>

git checkout [latest version]