Install Go

# First remove any existing old Go installation
sudo rm -rf /usr/local/go

# Install correct Go version
curl <https://dl.google.com/go/go1.17.2.linux-amd64.tar.gz> | sudo tar -C/usr/local -zxvf -

# Update environment variables to include go
cat <<'EOF' >>$HOME/.profile
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
EOF

source $HOME/.profile

go version
go version go1.17.2 linux/amd64

Install Dependencies

sudo apt-get install build-essential -y && sudo apt-get install jq -y

Celestia App

cd $HOME
git clone <https://github.com/celestiaorg/celestia-app.git>
cd celestia-app/
make install

Celestia Node

cd $HOME
git clone <https://github.com/celestiaorg/celestia-node.git>
cd celestia-node/
make install

Set Network Params

cd $HOME
git clone <https://github.com/celestiaorg/networks.git>

# do init
MONIKER="your_moniker"
celestia-appd init $MONIKER --chain-id devnet-2

# get network configs
cp ~/networks/devnet-2/genesis.json  ~/.celestia-app/config/

#update seeds
seeds='"[email protected]:26656"'
echo $seeds
sed -i.bak -e "s/^seeds *=.*/seeds = $seeds/" $HOME/.celestia-app/config/config.toml

Run as a service

sudo tee <<EOF >/dev/null /etc/systemd/system/celestia-appd.service
[Unit]
Description=celestia-appd Cosmos daemon
After=network-online.target

[Service]
User=$USER
ExecStart=$HOME/go/bin/celestia-appd start
Restart=on-failure
RestartSec=3
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target
EOF

cat /etc/systemd/system/celestia-appd.service

sudo systemctl enable celestia-appd
sudo systemctl daemon-reload
sudo systemctl restart celestia-appd

# tail logs
journalctl -u celestia-appd.service -f

Create Keys

cd ~
# create keys
cd networks/scripts
node_name="your_wallet_name"
./1_create_key.sh $node_name

Request Faucet in Discord

Screenshot 2021-12-26 at 10.44.13 PM.png

<aside> ⚠️ Before you create you validator make sure you are fully synced with the network curl -s localhost:26657/status | jq .result | jq .sync_info In the output of the above command make sure catching_up is false "catching_up": false

</aside>

Create Validator


MONIKER="your_moniker"

celestia-appd tx staking create-validator \\
 --amount=1000000celes \\
 --pubkey=$(celestia-appd tendermint show-validator) \\
 --moniker=$MONIKER \\
~~~~ --chain-id=devnet-2 \\
 --commission-rate=0.1 \\
 --commission-max-rate=0.2 \\
 --commission-max-change-rate=0.01 \\
 --min-self-delegation=1000000 \\
 --from=$node_name \\
 --keyring-backend=test