Avail

Download and install most recent edition of PuTTY by visiting the official website:

You will find the IP adress of your VPS in the second email. Launch PuTTY, enter the IP address of your VPS and click “Open”:

Once the server interface is open, you will be prompted to provide login details; simply enter “root” as the user and use your chosen password:

Congratulations! You are now successfully logged into your server:

Part 3: Preparations

To continue, we can update the packages by running the following commands in the terminal. The first part of the command (sudo apt update) updates the package lists for upgrades, and the second part (sudo apt upgrade -y) actually performs the upgrades with the “-y” flag allowing for automatic confirmation of prompts during the upgrade process:

sudo apt update && sudo apt upgrade -y

Part 4: Installation

Following our system update, we will proceed to install the required packages:

sudo apt install curl iptables build-essential git wget jq make gcc nano tmux htop tar ncdu unzip -y

We now need to create a directory called .avail and then navigate into this directory:

cd $HOME
mkdir $HOME/.avail
cd $HOME/.avail

Now, we must download the binaries and verify the version. Remember to update the version (v1.10.0.0) in the first command to the latest one. You may also need to modify the filename of the tar file:

wget https://github.com/availproject/avail/releases/download/v1.10.0.0/x86_64-ubuntu-2204-data-avail.tar.gz && tar -xvf x86_64-ubuntu-2204-data-avail.tar.gz
rm -rf x86_64-ubuntu-2204-data-avail.tar.gz
mv data-avail /usr/bin/avail

avail --version

We’re now going to create a service file. Remember to replace the “name” parameter with your validator name, substituting “YOUR_VALIDATOR_NAME” with the actual name of your validator:

sudo tee /etc/systemd/system/avail.service > /dev/null <<EOF
[Unit]
Description=AvailNode
After=network-online.target

[Service]
User=$USER
ExecStart=$(which avail) -d /home/avail/data --chain goldberg --validator --name YOUR_VALIDATOR_NAME
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

Let’s proceed with initiating the service file:

sudo systemctl daemon-reload
sudo systemctl enable avail
sudo systemctl restart avail

Now, we will check the status of the service and monitor the synchronization process:

sudo journalctl -u avail -f -o cat

The output will look something like this:

We need to verify our node on the telemetry page. Currently, as my node is in the process of synchronizing, it appears in grey. Once synchronization is finished, it will display in white, including details on block time and block propagation time. For me, the synchronization process took around 48 hours:

Once the node has completed synchronization, execute the following command to retrieve the id:

curl -H "Content-Type: application/json" -d '{"id":1, "jsonrpc":"2.0", "method": "author_rotateKeys", "params":[]}' http://localhost:9944

The output will appear like this → {“jsonrpc”:”2.0",”result”:”0x……………”,”id”:1}

Note that our id begins with “0x”. Remember to save it, as it will be necessary for later use.

Part 5: Creating an account

To set up an account, we must visit this website, navigate to the “Accounts” tab and select “Add Account”:

Create a new account and don’t forget to save the seed phrase:

Now, enter a name for the account and a strong password. Then, a json file will be downloaded, make sure to save that as well:

Next, copy your wallet address and join the official Avail Discord Server. To access the Testnet faucet, you need to go to https://passport-verifier.avail.tools/ and link your Gitcoin Passport with a score exceeding 20. While some may find it easy to achieve this score, it can be challenging, especially if you’re not an keen social media user. Additionally, if you’re reluctant to share your government documents with less-known companies or prefer not to purchase GTC tokens to boost their ecosystem artificially, attaining this score might not be so easy. Also, I believe that requiring Gitcoin Passport verification just to obtain Testnet tokens is a bit excessive, but if you still decide to do so, you need to get the “Passport Verified” role on Discord, head over to the #goldberg-faucet channel and type the command:

/deposit “your address”

After a while, you will receive tokens in your wallet. Next, go to the staking tab and click on the stash icon.

Now, input the amount you wish to bond, click “bond”, and complete the process by selecting “Sign and submit”:

After that, you’ll have the opportunity to input the Session Key. Enter the id you received following the node’s synchronization and click “Set Session Key”.

If you manage to accumulate at least 999 AVL (perhaps by claiming 5 Testnet tokens daily or requesting assistance from the team), you can proceed by pressing the validator button. Here, specify the amount of AVL to bond and click “next”. Then, re-enter your session key, set the reward commission percentage, enable nominations, and conclude the process by selecting “Bond & Validate”.

Given that all 290 validator positions are currently filled, you would need to wait until some cease operating. Your turn will come after the node operators who are already in queue (currently 13) secure their spots.

If you encounter any issues, I recommend consulting the official documentation first. If you still need assistance, you can have a look at the “FAQ” channel on the official Discord server. Alternatively, you’re always welcome to reach out to me directly for assistance.

Last updated