Namada logo

Namada

testnet
Chain ID
housefire-alpaca.cc0d3e0c033be
Node
v101.1.1

πŸ“š Node installation

Update packages

sudo apt update && sudo apt upgrade -y

Install dependencies

sudo apt-get install -y make git-core libssl-dev pkg-config libclang-12-dev build-essential protobuf-compiler libudev-dev libprotobuf-dev

Install Go

cd $HOME && \
ver="1.21.4" && \
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

The output should be: go version go1.21.4 linux/amd64

Install Rust and Nodejs

sudo curl https://sh.rustup.rs -sSf | sh -s -- -y
. $HOME/.cargo/env
curl https://deb.nodesource.com/setup_18.x | sudo bash
sudo apt install nodejs -y

Download binary for work

cd $HOME
rm -rf namada
git clone https://github.com/anoma/namada
cd namada
git checkout v101.1.1
make build-release
sudo mv $HOME/namada/target/release/namada* /usr/local/bin/
namada --version

The output should be: Namada v101.1.1

cd $HOME
rm -rf cometbft
git clone https://github.com/cometbft/cometbft.git
cd cometbft
git checkout v0.37.15
make build
sudo mv $HOME/cometbft/build/cometbft /usr/local/bin/
cometbft version

The output should be: v0.37.15

Specify variables, for ease of work

echo 'export namada_t_moniker="Validator_name"' >> $HOME/.bash_profile
echo 'export namada_t_wallet="Wallet_name"' >> $HOME/.bash_profile
echo 'export namada_t_port="111"' >> $HOME/.bash_profile
source $HOME/.bash_profile

Initialize the node

For genesis validator:
namada client utils join-network --chain-id housefire-alpaca.cc0d3e0c033be --genesis-validator $namada_t_moniker
For post-genesis validator:
namada client utils join-network --chain-id housefire-alpaca.cc0d3e0c033be
Add persistent peers:
PEERS=tcp://a26e06ea312c6c5612b38aafc45cbec300b6a43b@135.181.5.27:14200,tcp://3e254524b630ee5a1d0df6aa40b4ed1370b5e51a@74.50.93.254:26656,tcp://0ed550f6f3acc48505fb194ad7966d923db5f7bb@167.99.185.160:26656
sed -i.bak -e "s|^persistent_peers *=.*|persistent_peers = \"$PEERS\"|" ~/.local/share/namada/housefire-alpaca.cc0d3e0c033be/config.toml

Optional Settings

Change port
cd $HOME/.local/share/namada/housefire-alpaca.cc0d3e0c033be && \
sed -i.bak \
    -e "s/:\s*26656/:${namada_t_port}56/g" \
    -e "s/:\s*26657/:${namada_t_port}57/g" \
    -e "s/:\s*26658/:${namada_t_port}58/g" \
    -e "s/:\s*26545/:${namada_t_port}45/g" \
    -e "s/:\s*26660/:${namada_t_port}59/g" \
    -e "s/:\s*8545/:${namada_t_port}61/g" \
config.toml

Create a service file

sudo tee /etc/systemd/system/namada.service > /dev/null <<EOF
[Unit]
Description=namada
After=network-online.target
[Service]
User=$USER
WorkingDirectory=$HOME/.local/share/namada
Environment=TM_LOG_LEVEL=p2p:none,pex:error
Environment=NAMADA_CMT_STDOUT=true
ExecStart=$(which namada) ledger run 
StandardOutput=syslog
StandardError=syslog
Restart=always
RestartSec=10
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
              
sudo systemctl daemon-reload &&
sudo systemctl enable namada &&
sudo systemctl restart namada && sudo journalctl -u namada -f -o cat