bash <(curl -s https://raw.githubusercontent.com/UnityNodes/scripts/main/initia/install-initia.sh)
1️⃣ Installation packeges and dependencies
# Install dependencies for building from source
sudo apt update
sudo apt install -y lz4 jq make git gcc build-essential curl chrony unzip gzip snapd tmux bc
# Install Go
sudo rm -rf /usr/local/go
curl -L https://go.dev/dl/go1.21.6.linux-amd64.tar.gz | sudo tar -xzf - -C /usr/local
echo 'export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin' >> $HOME/.bash_profile
source .bash_profile
Replace "NODE_MONIKER" with your name moniker
# Clone project repository
cd $HOME
rm -rf initia
git clone https://github.com/initia-labs/initia.git
cd initia
git checkout v0.2.23-stage-2
make install
# Build binary
make install
# Set node CLI configuration
initiad config node tcp://localhost:26657
initiad config keyring-backend os
initiad config chain-id initiation-1
source $HOME/.bash_profile
# Initialize the node
initiad init "NODE_MONIKER" --chain-id initiation-1
# Download addrbook files
curl -L https://snapshots-testnet.unitynodes.com/initia-testnet/genesis.json > $HOME/.initia/config/genesis.json
curl -Ls https://snapshots-testnet.unitynodes.com/initia-testnet/addrbook.json > $HOME/.initia/config/addrbook.json
# Set peers
peers="bad45b64989234450a47786a2476dbaf35126d47@149.50.108.4:27656,97cb27fae552ebe055f25b8fe10af83d337d655e@195.26.255.73:46656,d5519e378247dfb61dfe90652d1fe3e2b3005a5b@65.109.68.190:17956,fc37e22ae9405cf00a775a014366d428376e47b3@37.27.48.77:29656,0244e6fd80ee6d3880412fe26b6a2a7ef09d035b@207.244.236.250:27656,42cd9d7a33f8250ad2dbe04634e7c7c23fca6657@5.9.80.214:26656,8c7585098b9f8689f8ac455f1bb6704edf5bc3b8@65.109.58.86:25756,a63a6f6eae66b5dce57f5c568cdb0a79923a4e18@168.119.10.134:26628,d952f8524f597ec1bca7f8d634f4630ac985b87c@65.109.113.233:25756,0ade03f733d802ec391b1c53ee2bfb4710cacd8a@1.53.252.54:26656,860319cc62c2d333b07c777b123ad2376823bae9@81.0.218.54:27656,279da7b0059aa22f0d60354fdd5a0c44f482fe61@81.0.219.123:27656,94d967dd96877f2db5558bb1a919a48ddde24524@64.44.90.136:27656,917cdc7c059c5eadf2629b5a6ab90733ca37e3fa@34.142.138.228:27656,a3484833e7a92443c6745d778f401959d3744e6a@38.242.231.170:27656,f5b18fb2b9dd614021b5c018bc494e8f81ebd1ac@109.199.124.148:27656,002f1c70403e7507093c852d55c8f69214ae921e@65.108.252.205:46656"
sed -i -e "s|^persistent_peers *=.*|persistent_peers = \"$peers\"|" $HOME/.initia/config/config.toml
# Set minimum gas price
sed -i -e "s|^minimum-gas-prices *=.*|minimum-gas-prices = \"0.15uinit,0.01uusdc\"|" $HOME/.initia/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/.initia/config/app.toml
# Download latest chain data snapshot
initiad tendermint unsafe-reset-all --home $HOME/.initia --keep-addr-book
curl https://snapshots-testnet.unitynodes.com/initia-testnet/initia-testnet-latest.tar.lz4 | lz4 -dc - | tar -xf - -C $HOME/.initia
# Create a service
sudo tee /etc/systemd/system/initiad.service > /dev/null <<EOF
[Unit]
Description=initiad
After=network-online.target
[Service]
User=$USER
ExecStart=$(which initiad) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable initiad
# Start the service and check the logs
sudo systemctl start initiad.service
sudo journalctl -u initiad.service -f -o cat
Save all information after entering the command, without this you will not be able to restore data to the wallet. SAVE SEED PHRASE (12 words).
2️⃣ Go to the faucet and get test tokens to your wallet ( can be received every 24 hours)
3️⃣ View your wallet balance
initiad keys q bank balances "address"
if the balance is displayed - continue further
4️⃣ View the sync status of your node
initiad status | jq | grep "catching_up"
If "true" - not synchronized // "false" - synchronized
initiad tx mstaking create-validator \
--amount 2000000uinit \
--pubkey $(initiad tendermint show-validator) \
--moniker "$YOUR_MONIKER" \ #Validator name, displayed in explorers.
--identity "" \ #Use your KeyBase ID. If you don't have one, leave it empty.
--website "" \ #Your website is available, or leave the field blank
--details "$YOUR_DETAILS" \ #Any details about your validator.
--chain-id initiation-1 \
--commission-rate 0.05 \
--commission-max-rate 0.20 \
--commission-max-change-rate 0.05 \
--from wallet \
--fees 80000uinit \
-y
After entering the command, you will receive hash transactions, check the status in the explorer
6️⃣ Save priv_validator_key.json
cat $HOME/.initia/config/priv_validator_key.json