Manual Installation
Recommended Hardware: 8 Cores, 16GB RAM, 250GB of storage (NVME)
# install dependencies, if needed
sudo apt update && sudo apt upgrade -y
sudo apt install curl git wget htop tmux build-essential jq make lz4 gcc unzip -y
Node Name: my_node
Wallet: my_wallet
Port: 26
# install go, if needed
cd $HOME
VER="1.23.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"
[ ! -f ~/.bash_profile ] && touch ~/.bash_profile
echo "export PATH=$PATH:/usr/local/go/bin:~/go/bin" >> ~/.bash_profile
source $HOME/.bash_profile
[ ! -d ~/go/bin ] && mkdir -p ~/go/bin
go install github.com/cosmos/cosmos-sdk/cosmovisor/cmd/cosmovisor@v1.0.0
# set vars
echo "export WALLET="my_wallet"" >> $HOME/.bash_profile
echo "export MONIKER="my_node"" >> $HOME/.bash_profile
echo "export XRP_CHAIN_ID="xrplevm_1440000-1"" >> $HOME/.bash_profile
echo "export XRP_PORT="26"" >> $HOME/.bash_profile
source $HOME/.bash_profile
# download binary
cd $HOME
rm -rf xrp
git clone https://github.com/xrplevm/node xrp
cd xrp
git checkout v8.0.0
make install
# config and init app
exrpd init $MONIKER --chain-id xrplevm_1440000-1
sed -i \
-e "s/chain-id = .*/chain-id = \"xrplevm_1440000-1\"/" \
-e "s/keyring-backend = .*/keyring-backend = \"os\"/" \
-e "s/node = .*/node = \"tcp:\/\/localhost:${XRP_PORT}657\"/" $HOME/.exrpd/config/client.toml
# download genesis and addrbook
wget -O $HOME/.exrpd/config/genesis.json https://tecnodes.network/chains/mainnet/xrp/genesis.json
wget -O $HOME/.exrpd/config/addrbook.json https://tecnodes.network/chains/mainnet/xrp/addrbook.json
# set seeds and peers
SEEDS="ade4d8bc8cbe014af6ebdf3cb7b1e9ad36f412c0@seeds.xrp.tecnodes.network"
PEERS="ade4d8bc8cbe014af6ebdf3cb7b1e9ad36f412c0@peer.xrp.tecnodes.network:61657,5c1b408eb2bd0e4e285daba059a71c3423a16ae9@188.245.125.107:26656,e6ccf37182345ad048cf60335ab3dc1a5512baff@13.59.146.253:26656,d3adcf9eee8665ee2d3108f721b3613cdd18c3a3@23.227.223.49:26656,da165aaeac3adbc9845879e06f336c2668c5d915@65.21.214.84:9756,4f0855bd3cac712f2292dc39e1b8a3b5ffb68584@149.50.102.86:36656,4ef48d2cc03b332f9a711fc65dc0453839f9040d@8.52.153.92:61656,f3c3918006dba796ed67715eba9dea2bcae083e9@125.131.208.67:12002,522826623d65d27ef3f7db8a5259d003be5a93d3@65.108.229.19:26666,dc92e7b8ed2aafc34c400405916569aad0d990f3@169.155.44.68:26656"
sed -i -e "/^\[p2p\]/,/^\[/{s/^[[:space:]]*seeds *=.*/seeds = \"$SEEDS\"/}" \
-e "/^\[p2p\]/,/^\[/{s/^[[:space:]]*persistent_peers *=.*/persistent_peers = \"$PEERS\"/}" $HOME/.exrpd/config/config.toml
# create service file
sudo tee /etc/systemd/system/xrp.service > /dev/null < /dev/null; then
curl https://tecnodes.network/chains/mainnet/xrp/latest.tar.lz4 | lz4 -dc - | tar -xf - -C $HOME/.xrp
else
echo "no snapshot found"
fi
# enable and start service
sudo systemctl daemon-reload
sudo systemctl enable axoned
sudo systemctl restart xrp && sudo journalctl -u xrp -fo cat
Create wallet
# to create a new wallet, use the following command. don’t forget to save the mnemonic
exrpd keys add $WALLET
# to restore exexuting wallet, use the following command
exrpd keys add $WALLET --recover
# save wallet and validator address
WALLET_ADDRESS=$(exrpd keys show $WALLET -a)
VALOPER_ADDRESS=$(exrpd keys show $WALLET --bech val -a)
echo "export WALLET_ADDRESS="$WALLET_ADDRESS >> $HOME/.bash_profile
echo "export VALOPER_ADDRESS="$VALOPER_ADDRESS >> $HOME/.bash_profile
source $HOME/.bash_profile
# check sync status, once your node is fully synced, the output from above will print "false"
exrpd status 2>&1 | jq
# before creating a validator, you need to fund your wallet and check balance
exrpd query bank balances $WALLET_ADDRESS