Website: https://nibiru.fi/
Twitter: https://twitter.com/NibiruChain
Discord: https://discord.gg/nibirufi
Explorer: https://explorer.nodesync.top/Nibiru-Mainnet/staking
Stake with us: https://app.nibiru.fi/stake
1. Minimum hardware requirement
8 Cores, 16G Ram, 500G SSD, Ubuntu 22.04
2. Server preparation
sudo apt update && sudo apt upgrade -y
sudo apt install make curl git wget htop tmux build-essential jq make lz4 gcc unzip -y
3. Install GO
#Install GO
ver="1.21.5"
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm "go$ver.linux-amd64.tar.gz"
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile
go version
4. Download and build binaries
cd $HOME
rm -rf nibiru
git clone https://github.com/NibiruChain/nibiru.git
cd nibiru
git checkout v1.3.0
5. Initialize the node
nibid config chain-id cataclysm-1
nibid config keyring-backend file
nibid config node tcp://localhost:26657
nibid init MyNode --chain-id cataclysm-1
curl -Ls https://files.nodesync.top/Nibiru/genesis.json > $HOME/.nibid/config/genesis.json
curl -Ls https://files.nodesync.top/Nibiru/addrbook.json > $HOME/.nibid/config/addrbook.json
# Add seeds
sed -i -e "s|^seeds *=.*|seeds = \"400f3d9e30b69e78a7fb891f60d76fa3c73f0ecc@nibiru.rpc.kjnodes.com:13959\"|" $HOME/.nibid/config/config.toml
# Set minimum gas price
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0.025unibi\"|" $HOME/.nibid/config/app.toml
# Set pruning
sed -i \
-e 's|^pruning *=.*|pruning = "custom"|' \
-e 's|^pruning-keep-recent *=.*|pruning-keep-recent = "100"|' \
-e 's|^pruning-keep-every *=.*|pruning-keep-every = "0"|' \
-e 's|^pruning-interval *=.*|pruning-interval = "19"|' \
$HOME/.nibid/config/app.toml
# Download latest chain snapshot
curl -L https://snapshots.kjnodes.com/nibiru/snapshot_latest.tar.lz4 | tar -Ilz4 -xf - -C $HOME/.nibid
5. Create Service and Start node
sudo tee /etc/systemd/system/nibid.service > /dev/null <<EOF
[Unit]
Description=Nibi Validator
After=network-online.target
[Service]
User=root
ExecStart=$(which nibid) start
Restart=always
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable nibid
sudo systemctl restart nibid
sudo journalctl -u nibid -f --no-hostname -o cat
6. Wallet
Add New Wallet Key - Save seed
nibid keys add wallet
Recover existing key
nibid keys add wallet --recover
List All Keys
6.1 Query Wallet Balance
nibid q bank balances $(nibid keys show wallet -a)
6.2 Check sync status
False is synced
nibid status 2>&1 | jq .SyncInfo.catching_up
6.3 Create Validator
Change your info "XXXXXX"
nibid tx staking create-validator \
--amount 1000000unibi \
--pubkey $(nibid tendermint show-validator) \
--moniker "XXXXXX" \
--identity "XXXXXX" \
--details "XXXXXX" \
--website "XXXXXX" \
--security-contact "XXXXXX" \
--chain-id cataclysm-1 \
--commission-rate 0.05 \
--commission-max-rate 0.20 \
--commission-max-change-rate 0.05 \
--min-self-delegation 1 \
--from wallet \
--fees 5000unibi \
-y
6.4 Edit Existing Validator
Change your info
nibid tx staking edit-validator \
--new-moniker "YOUR_MONIKER_NAME" \
--identity "YOUR_KEYBASE_ID" \
--details "YOUR_DETAILS" \
--website "YOUR_WEBSITE_URL" \
--chain-id cataclysm-1 \
--commission-rate 0.05 \
--from wallet \
--fees 5000unibi \
-y
6.5 Delegate Token to your own validator
nibid tx staking delegate $(nibid keys show wallet --bech val -a) 1000000unibi --from wallet --chain-id cataclysm-1 --fees 5000unibi -y
6.6 Withdraw rewards and commission from your validator
nibid tx distribution withdraw-rewards $(nibid keys show wallet --bech val -a) --commission --from wallet --chain-id cataclysm-1 --fees 5000unibi -y
6.7 Unjail validator
nibid tx slashing unjail --from wallet --chain-id cataclysm-1 --fees 5000unibi -y
6.8 Services Management
# Reload Service
sudo systemctl daemon-reload
# Enable Service
sudo systemctl enable nibid
# Disable Service
sudo systemctl disable nibid
# Start Service
sudo systemctl start nibid
# Stop Service
sudo systemctl stop nibid
# Restart Service
sudo systemctl restart nibid
# Check Service Status
sudo systemctl status nibid
# Check Service Logs
sudo journalctl -u nibid -f --no-hostname -o cat
7. Backup Validator
Important
cat $HOME/.nibid/config/priv_validator_key.json
8. Remove node
cd $HOME
sudo systemctl stop nibid.service
sudo systemctl disable nibid.service
sudo rm /etc/systemd/system/nibid.service
sudo systemctl daemon-reload
rm -f $(which nibid)
rm -rf $HOME/.nibid
rm -rf $HOME/nibiru
Last updated