> $HOME/.bash_profile source $HOME/.bash_profile # Build binary cd $HOME git clone https://github.com/KiFoundation/ki-tools.git git checkout main git pull git checkout 3.0.0 make install cd $HOME kid version #Mainnet-3.0.0 # Set VARS KI_CHAIN=kichain-2 KI_NODENAME="YOUR_NODE_NAME" KI_WALLET="YOUR_WALLET_NAME" echo 'export KI_CHAIN='$KI_CHAIN >> $HOME/.bash_profile echo 'export KI_NODENAME='${KI_NODENAME} >> $HOME/.bash_profile echo 'export KI_WALLET='${KI_WALLET} >> $HOME/.bash_profile source $HOME/.bash_profile # Init kid init ${KI_NODENAME} --chain-"> > $HOME/.bash_profile source $HOME/.bash_profile # Build binary cd $HOME git clone https://github.com/KiFoundation/ki-tools.git git checkout main git pull git checkout 3.0.0 make install cd $HOME kid version #Mainnet-3.0.0 # Set VARS KI_CHAIN=kichain-2 KI_NODENAME="YOUR_NODE_NAME" KI_WALLET="YOUR_WALLET_NAME" echo 'export KI_CHAIN='$KI_CHAIN >> $HOME/.bash_profile echo 'export KI_NODENAME='${KI_NODENAME} >> $HOME/.bash_profile echo 'export KI_WALLET='${KI_WALLET} >> $HOME/.bash_profile source $HOME/.bash_profile # Init kid init ${KI_NODENAME} --chain-"> > $HOME/.bash_profile source $HOME/.bash_profile # Build binary cd $HOME git clone https://github.com/KiFoundation/ki-tools.git git checkout main git pull git checkout 3.0.0 make install cd $HOME kid version #Mainnet-3.0.0 # Set VARS KI_CHAIN=kichain-2 KI_NODENAME="YOUR_NODE_NAME" KI_WALLET="YOUR_WALLET_NAME" echo 'export KI_CHAIN='$KI_CHAIN >> $HOME/.bash_profile echo 'export KI_NODENAME='${KI_NODENAME} >> $HOME/.bash_profile echo 'export KI_WALLET='${KI_WALLET} >> $HOME/.bash_profile source $HOME/.bash_profile # Init kid init ${KI_NODENAME} --chain-">
# Update if needed
sudo apt update && sudo apt upgrade -y

# Install packages
sudo apt install curl tar wget pkg-config libssl-dev jq build-essential git make ncdu -y

# Install GO 1.18.3
ver="1.18.3"
cd $HOME
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

# Build binary
cd $HOME
git clone <https://github.com/KiFoundation/ki-tools.git>
git checkout main
git pull
git checkout 3.0.0
make install
cd $HOME

kid version
#Mainnet-3.0.0

# Set VARS
KI_CHAIN=kichain-2
KI_NODENAME="YOUR_NODE_NAME"
KI_WALLET="YOUR_WALLET_NAME"

echo 'export KI_CHAIN='$KI_CHAIN >> $HOME/.bash_profile
echo 'export KI_NODENAME='${KI_NODENAME} >> $HOME/.bash_profile
echo 'export KI_WALLET='${KI_WALLET} >> $HOME/.bash_profile
source $HOME/.bash_profile

# Init
kid init ${KI_NODENAME} --chain-id $KI_CHAIN

kid config chain-id $KI_CHAIN

# Download genesis
wget -O $HOME/.kid/config/genesis.json "<https://github.com/KiFoundation/ki-networks/raw/v0.1/Mainnet/kichain-2/genesis.json>"

# Configure
sed -i.bak -e "s/^moniker *=.*/moniker = \\"$KI_NODENAME\\"/" $HOME/.kid/config/config.toml

PEERS_LIST="$(curl -s "<https://raw.githubusercontent.com/KiFoundation/ki-networks/v0.1/Mainnet/kichain-2/peers.txt")">
PEERS=$(echo $PEERS_LIST | tr ' ' ',')
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \\"$PEERS\\"/" $HOME/.kid/config/config.toml

SEEDS_LIST="$(curl -s "<https://raw.githubusercontent.com/KiFoundation/ki-networks/v0.1/Mainnet/kichain-2/seeds.txt")">
SEEDS=$(echo $SEEDS_LIST | tr ' ' ',')
sed -i.bak -e "s/^seeds *=.*/seeds = \\"$SEEDS\\"/" $HOME/.kid/config/config.toml

MIN_GAS_PRICE="0.025uxki"
sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \\"$MIN_GAS_PRICE\\"/" $HOME/.kid/config/app.toml

# config pruning
pruning_keep_recent="10000"
pruning_keep_every="0"
pruning_interval="10"

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

# reset
kid tendermint unsafe-reset-all --home $HOME/.kid

# download addrbook
wget -O $HOME/.kid/config/addrbook.json "<https://github.com/maxzonder/kichain/raw/main/addrbook.json>"

# Create service
sudo tee /etc/systemd/system/kichaind.service > /dev/null <<EOF
[Unit]
Description=KiChain Mainnet
After=network-online.target
[Service]
User=$USER
ExecStart=$(which kid) start
Restart=on-failure
RestartSec=10
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF

# Start node
sudo systemctl daemon-reload
sudo systemctl enable kichaind

**# KICHAIN-2 MAINNET STATE-SYNC SNAPSHOT**

SNAP_RPC="<http://195.3.223.11:26667>"

LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height)
BLOCK_HEIGHT=$((LATEST_HEIGHT - 2000))
TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash)

# check
echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH

# if OUTPUT ok! - do next

sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\\1true| ; \\
s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|\\1\\"$SNAP_RPC,$SNAP_RPC\\"| ; \\
s|^(trust_height[[:space:]]+=[[:space:]]+).*$|\\1$BLOCK_HEIGHT| ; \\
s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|\\1\\"$TRUST_HASH\\"| ; \\
s|^(seeds[[:space:]]+=[[:space:]]+).*$|\\1\\"\\"|" $HOME/.kid/config/config.toml

sudo systemctl restart kichaind && journalctl -u kichaind -f -o cat

#END