Anoma testnet (Feigenbaum) — installation guidelines

3 min readJan 14, 2022


System requirements

According to their documentation, we need VPS with 16Gb RAM and one from the recent CPU like Intel i3, no info about the disk,

I`d recommend using SSD only, within 200Gb or more

OS Ubuntu 21 >>

# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 21.04
Release: 21.04
Codename: hirsute

My VPS is hosted on the Contabo hosting

After you get SSH access to your VPS server we are ready to start to install Anoma node

  1. Pre-installation step
  • let`s install all requirements and perform update all packages:
# apt update && sudo apt upgrade -y
# apt install make clang pkg-config libssl-dev libclang-dev build-essential git curl ntp jq llvm screen
  • Installation Rust, you will see the installations menu, choose the first (press 1), and press enter
curl --proto '=https' --tlsv1.2 -sSf | sh
1) Proceed with installation (default)
2) Customize installation
3) Cancel installation

2. Installation node

# source $HOME/.cargo/env
# cd $HOME
# git clone
# cd $HOME/anoma
Check the version:
# git checkout v0.2.0

Let`s create a screen session to have the ability to connect to the installation process even we`ll lost the SSH connection to VPS:

# screen -S anoma.node 
# cp -a $HOME/anoma/wasm $HOME/wasm
# cd $HOME/anoma
# make install
# cd $HOME
# anoma client utils join-network --chain-id=anoma-feigenbaum-0.ebb9e9f9013

Wait while the installation to complete.

3. Post-configuration steps

Let`s generate keys and create a wallet:

# anoma wallet key gen --alias walletname
No wallet found at ".anoma/anoma-feigenbaum-0.ebb9e9f9013/wallet.toml". Creating a new one.
Enter encryption password:***********
Successfully added a key and an address with alias: "walletname"

Let`s start a node and wait while it will be synced, to start a local Anoma ledger node, run:

# anoma ledger

for the best way to start a node I`d recommend using it as a service, to create it please perform the next steps:

# cd $HOME# tee <<EOF >/dev/null $HOME/anomad.service
ExecStart=$(which anoman) --wasm-dir $HOME/wasm/ --base-dir $HOME/.anoma/ ledger
# mv $HOME/anomad.service /etc/systemd/systemecho "Storage=persistent" >> /etc/systemd/journald.conf# systemctl restart systemd-journald && systemctl daemon-reload
# systemctl restart anomad
# systemctl satus anomad

if you choose a service, you can not use a screen tool to run it

For logs monitor, you can use journalctl tool, something like this:

# journalctl -u anomad -f

After complete synchronization, we should send a transaction to initialize the account:

# anomac init-account --alias walet alias name--public-key wallet name --source wallet name


wallet alias — you should input your wallet alias name

wallet name — you should input your wallet name

Now we can get some tokens from the faucet:

# anoma client transfer --source faucet --target your alias name --signer your alias name --token XAN --amount 1000

check balance:

# anoma client balance --token XAN --owner your alias name

Register validator:

# anoma client init-validator --alias validator name --source your wallet alias name

During this process, you will need to enter an encryption password that was created on the previous steps (wallet creation), save an output somewhere:

After successful execution you should see the following information:

Added alias my-validator for address 
Added alias my-validator-rewards for address

The validator's addresses and keys were stored in the wallet:
Validator address "validator name"
Staking reward address "validator-rewards"
Validator account key "validator-key"
Consensus key "validator-consensus-key"
Staking reward key "validator-rewards-key"
The ledger node has been setup to use this validator's address and consensus key.

Then restart you node.

# systemctl restart anomad