Skip to content
Logo Maouam Nodelab

Shido Mainnet

HardwareRequirement
CPU4 Cores
RAM8 GB
Disk200 GB
sudo apt update && apt upgrade -y
sudo apt install curl iptables build-essential git wget jq make gcc nano tmux htop nvme-cli pkg-config libssl-dev libleveldb-dev tar clang bsdmainutils ncdu unzip -y

cd $HOME
VER="1.25.3"
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"
[ ! -f $HOME/.bash_profile ] && touch $HOME/.bash_profile
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
echo "export GOROOT=$(go1.25.3 env GOROOT) PATH=$GOROOT/bin:$PATH" >> $HOME/.bash_profile
source $HOME/.bash_profile
[ ! -d $HOME/go/bin ] && mkdir -p $HOME/go/bin

cd $HOME
wget https://github.com/ShidoGlobal/shido-upgrade-v3.2.0/releases/download/ubuntu22.04/shidod
chmod +x shidod
mv shidod /usr/local/bin/
wget -O /usr/lib/libwasmvm.x86_64.so https://github.com/CosmWasm/wasmvm/releases/download/v2.1.4/libwasmvm.x86_64.so
#Verify Installation
shidod version

export HOMEDIR="$HOME/.shidod/"
shidod config set client chain-id shido_9008-1 --home $HOMEDIR
shidod config set client keyring-backend os --home $HOMEDIR
shidod init Test -o --chain-id shido_9008-1 --home $HOMEDIR

# Seeds not configured
PEERS="bc09b4d678127976fa5c110bbb56858b1a347e08@65.21.141.41:26656,59a7eef026f75180765bac5a90293a0686e14f4e@65.108.232.180:28656,8bc3477040ab7ef9b0635fc2cb1ea46845cc2f93@65.109.115.195:26656,e9207104d4cd85a18097fe07eec646a4660f9815@88.99.147.241:26656,0bfc540907ef1ea08a70dacd12e8f12d887137d5@45.149.204.240:26656,523b25de11811eb9fa244102c98e1cebb433d93d@45.90.122.47:26656,9175d479359850dbfc692a01ddf3b6d9b85e66e0@45.159.221.133:26656,93d223146fed882e85c3768ea44845932df483ad@45.90.121.111:26656,42c67bc5d7813fe273d43208400194e7a8bb81a0@85.190.246.81:26656,ab897953413fd07d3c75f854d3d326e1495b0386@167.86.124.38:26656,f91156c7370f50f1535ad05c691a325683778f8e@194.163.157.130:26656,b9c6d2efe500520be2f2580f71c4e219ab1de318@144.91.89.229:26656,cf7e57f6714275d7d28ba1bc81be2c47dfa23a41@173.212.196.235:26656,cc3625aaeb99ffcc4209cf68d4a5821eb3787ebe@49.0.207.158:26656,a82689a87eb31c1cd818bd07a11a833ab728b089@162.216.113.26:26656,0becc9e6de1c50bce7285a7f40e9b33f776e524f@154.12.228.46:26656,da0f97e10794e3154577c449f51448391ca6f5c2@119.8.162.212:26656,b89314600b61d9e933b7e7a3fbacf36cba079842@166.108.233.54:26656,1aa98da1d98341682ac0b3be83397862a6a9b63e@111.119.195.49:26656,cf6fa73d0de03edf1fee9ea37dd701138831746c@124.243.138.199:26656,60231be20d2b7db49262f41806bccdfae4743a5c@65.109.57.221:28656,e54176379eaec1ff90d57ee739daf95a7baa85c0@45.10.163.234:26656,d457e45a34167e6280204e50eca332e2dae1305f@38.242.226.17:26656,0ba0f738aa691a9fc0f629f46828d067dd712f49@166.108.226.54:26656,952519d26301b2b6ec00bdcef83c34f845efba1f@190.92.216.122:26656,b20be5ff9a0575a1a267d6b61370316eb7bbdb3a@89.117.57.35:26656"
sed -i -e "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.shidod/config/config.toml

pruning="custom"
pruning_keep_recent="100"
pruning_keep_every="0"
pruning_interval="10"
sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.shidod/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.shidod/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.shidod/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.shidod/config/app.toml

PORT=140
sed -i -e "s%:26657%:${PORT}57%" $HOME/.shidod/config/client.toml
sed -i -e "s%:26658%:${PORT}58%; s%:26657%:${PORT}57%; s%:6060%:${PORT}60%; s%:26656%:${PORT}56%; s%:26660%:${PORT}61%" $HOME/.shidod/config/config.toml
sed -i -e "s%:1317%:${PORT}17%; s%:9090%:${PORT}90%" $HOME/.shidod/config/app.toml

sudo tee /etc/systemd/system/shidod.service > /dev/null <<EOF
[Unit]
Description=Shidod Node
After=network-online.target
[Service]
User=$USER
ExecStart=$(which shidod) start --home $HOME/.shidod
Restart=on-failure
RestartSec=10
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable shidod

curl -L "https://hub.maouam.xyz/hub/mainnet/shido/snapshot/snapshot-shido-latest.tar.lz4" | lz4 -dc - | tar -xf - -C $HOME/.shidod

sudo systemctl start shidod && sudo journalctl -fu shidod -o cat

#sync status
shidod status 2>&1 | jq .SyncInfo
#validator info
shidod status 2>&1 | jq .ValidatorInfo

export HOMEDIR="$HOME/.shidod/"
WALLET=wallet #your_wallet_name
shidod keys add $WALLET --keyring-backend os --algo eth_secp256k1 --home $HOMEDIR

cd $HOME
# Create validator.json file
echo "{\"pubkey\":{\"@type\":\"/cosmos.crypto.ed25519.PubKey\",\"key\":\"$(shidod tendermint show-validator | grep -Po '\"key\":\s*\"\K[^"]*')\"},
\"amount\": \"1000000000000000000shido\",
\"moniker\": \"YourMoniker\",
\"identity\": \"KeybaseKey\",
\"website\": \"YourWebsite.com\",
\"security\": \"youremail@example.com\",
\"details\": \"YourDescription\",
\"commission-rate\": \"0.1\",
\"commission-max-rate\": \"0.2\",
\"commission-max-change-rate\": \"0.01\",
\"min-self-delegation\": \"1\"
}" > $HOME/.shidod/validator.json
# Create validator
shidod tx staking create-validator $HOME/.shidod/validator.json \
--from $WALLET \
--chain-id shido_9008-1 \
--fees 800000shido \
--gas 500000