Nexa Installation

Download the pre-compiled binary (available for a few popular Linux distributions) from here and unzip contents at an appropriate directory of your choice. 

Note: It should work fine on the popular Linux distributions. please follow instructions on the same web-page to compile from source.

The Xoken Nexa server can be started as below.

$ xoken-node

The program sources configurable parameters from two different config files, as below:

  • node-config.yaml: Contains all the general Nexa node, Bitcoin P2P & listen endpoint related configurations.
  • arivi-config.yaml: Contains all the Arivi P2P related configurations (typically autogenerated)

Place the node-config.yaml (provided in the release) in the same directory as the xoken-nexa executable. Typically you will need to update the following parameters.

  • bitcoinNodeListenIP : the Nexa host's public IP that is used to interact with other `bitcoind` nodes via BitconP2P.
  • bitcoinNodeListenPort : the system port that is used to connect with other `bitcoind` nodes. Default value of '3000' is recommended.
  • endPointTLSListenIP : the host's public IP where the TLS endpoint is listening.
  • endPointTLSListenPort : the port being used by the TLS server. Default value of '9090' is recommended.
  • tlsCertificatePath : the TLS self-signed certificate file path, including the file-name.
  • tlsKeyfilePath : the TLS keyfile path, including the file-name.
  • tlsCertificateStorePath : Please set to any valid directory, currently the client certificate validation is disabled.

The rest are mostly tuning related parameters and meant for advanced users.

Backup keys

Once the server has started successfully, open the newly generated arivi-config.yaml file and safely backup the application generated secret key. This is essential to restore the unique identity of your node, since nodes maintain the reputation of their peers.

secretKey: d670be193389c79349edd8ea4194925609f39cbeffc59b78fc1b4d431c0ebac

To keep processes running even after exiting the shell or terminal, you can use the nohup command or can configure it as a systemd service and use below template to execute as a daemon service.

sudo systemctl <start|stop> <node-service-name>