Join The Public Testnet
Hardware Requirements
Minimal
4GB RAM
300GB SSD
2 vCPU
Recommended
8GB RAM
600GB SSD
4 vCPU
Installation Steps
Install dependencies:
cd $HOME
sudo apt update
sudo apt install make clang pkg-config libssl-dev build-essential git jq ncdu bsdmainutils -y < "/dev/null"Install Go:
cd $HOME
wget -O go1.20.3.linux-amd64.tar.gz https://go.dev/dl/go1.20.3.linux-amd64.tar.gz
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.20.3.linux-amd64.tar.gz && rm go1.20.3.linux-amd64.tar.gz
echo 'export GOROOT=/usr/local/go' >> $HOME/.bashrc
echo 'export GOPATH=$HOME/go' >> $HOME/.bashrc
echo 'export GO111MODULE=on' >> $HOME/.bashrc
echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> $HOME/.bashrc && . $HOME/.bashrc
go versionClone git repository:
git clone --branch public-testnet https://github.com/stafihub/stafihubInstall:
cd $HOME/stafihub && make installDownload genesis (replace YOUR_NODE_NAME):
stafihubd init YOUR_NODE_NAME --chain-id stafihub-testnet-1
wget -O $HOME/.stafihub/config/genesis.json "https://raw.githubusercontent.com/stafihub/network/main/testnets/stafihub-testnet-1/genesis.json"
stafihubd tendermint unsafe-reset-all --home ~/.stafihubConfigure your node:
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.01ufis\"/" $HOME/.stafihub/config/app.toml
sed -i '/\[grpc\]/{:a;n;/enabled/s/false/true/;Ta};/\[api\]/{:a;n;/enable/s/false/true/;Ta;}' $HOME/.stafihub/config/app.toml
peers="[email protected]:26656,[email protected]:26656"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" $HOME/.stafihub/config/config.tomlStart the node in the background:
stafihubd startOr install service to run the node:
echo "[Unit]
Description=StaFiHub Node
After=network.target
[Service]
User=$USER
Type=simple
ExecStart=$(which stafihubd) start
Restart=on-failure
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target" > $HOME/stafihubd.service
sudo mv $HOME/stafihubd.service /etc/systemd/system
sudo tee <<EOF >/dev/null /etc/systemd/journald.conf
Storage=persistent
EOF
sudo systemctl restart systemd-journald
sudo systemctl daemon-reload
sudo systemctl enable stafihubd
sudo systemctl restart stafihubdCheck your node logs:
journalctl -u stafihubd -fGenerate keys
stafihubd keys add YOUR_WALLET_NAME --keyring-backend fileYou can recover your keys with --recover flag if you have mnemonic
Faucet
You can ask for tokens in the #faucet Discord channel.
!faucet send YOUR_WALLET_ADDRESSCreate validator
Use the following command (do not forget to replace YOUR_NODE_NAME and YOUR_WALLET_NAME):
stafihubd tx staking create-validator -y --amount=1000000ufis --pubkey=$(stafihubd tendermint show-validator) --moniker=YOUR_NODE_NAME --website="<website>" --details="<details>" --commission-rate=0.10 --commission-max-rate=0.20 --commission-max-change-rate=0.01 --min-self-delegation=1 --from=YOUR_WALLET_NAME --chain-id=stafihub-testnet-1 --gas-prices=0.025ufis --keyring-backend fileEdit Validator Description
You can edit your validator's public description. This info is to identify your validator, and will be relied on by delegators to decide which validators to stake to. Make sure to provide input for every flag below. If a flag is not included in the command the field will default to empty, if the field has never been set or remain the same if it has been set in the past.
The <YOUR_WALLET_NAME> specifies which validator you are editing. If you choose to not include some of the flags below, remember that the --from flag must be included to identify the validator to update.
The --identity can be used as to verify identity with systems like Keybase or UPort. When using Keybase, --identity should be populated with a 16-digit string that is generated with a keybase.io (opens new window)account. It's a cryptographically secure method of verifying your identity across multiple online networks. The Keybase API allows us to retrieve your Keybase avatar. This is how you can add a logo to your validator profile.
stafihubd tx staking edit-validator --new-moniker=YOUR_NODE_NAME --website="<website>" --details="<details>" --commission-rate="0.10" --gas="auto" --gas-prices=0.025ufis --from=YOUR_WALLET_NAME --chain-id=stafihub-testnet-1 --keyring-backend fileWarning: Please note that some parameters such as commission-max-rate and commission-max-change-rate cannot be changed once your validator is up and running.
Note: The commission-rate value must adhere to the following rules:
Must be between 0 and the validator's
commission-max-rateMust not exceed the validator's
commission-max-change-ratewhich is maximum % point change rate per day. In other words, a validator can only change its commission once per day and withincommission-max-change-ratebounds.
Unjail Validator
When a validator is "jailed" for downtime, you must submit an Unjail transaction from the operator account in order to be able to get block proposer rewards again (depends on the zone fee distribution).
stafihubd tx slashing unjail --from=YOUR_WALLET_NAME --chain-id=stafihub-testnet-1 --gas-prices=0.025ufis --keyring-backend fileExplorer
Explorer available here.
Last updated