Jay | Install
System Specs
Section titled “System Specs”| Hardware | Requirement |
|---|---|
| CPU | 4 Cores |
| RAM | 8 GB |
| Disk | 200 GB |
Install Jay Mainnet Validator
Section titled “Install Jay Mainnet Validator”1. System Preparation
Section titled “1. System Preparation”sudo apt update && apt upgrade -ysudo apt install curl iptables build-essential git wget jq make gcc nano tmux htop nvme-cli pkg-config libssl-dev libleveldb-dev tar clang bsdmainutils ncdu unzip -y2. Install Go V1.24.13
Section titled “2. Install Go V1.24.13”cd $HOMEVER="1.24.13"wget "https://golang.org/dl/go$VER.linux-amd64.tar.gz"sudo rm -rf /usr/local/gosudo tar -C /usr/local -xzf "go$VER.linux-amd64.tar.gz"rm "go$VER.linux-amd64.tar.gz"
[ ! -f $HOME/.bash_profile ] && touch $HOME/.bash_profileecho "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profileecho "export GOROOT=$(go1.25.3 env GOROOT) PATH=$GOROOT/bin:$PATH" >> $HOME/.bash_profilesource $HOME/.bash_profile[ ! -d $HOME/go/bin ] && mkdir -p $HOME/go/bin3. Install jay Binary and init node
Section titled “3. Install jay Binary and init node”git clone https://github.com/bbtccore/thejaynetwork.gitcd thejaynetworkmake build
#move binarycp build/jaynd /usr/local/bin/
#init nodejaynd init test-jay --chain-id thejaynetwork
#install wasmcd $HOME/.jaynwget https://hub.maouam.xyz/hub/mainnet/jay/wasm.zipunzip wasm.zip4. Configure Peers
Section titled “4. Configure Peers”PEERS="9951f5546f067ed877dc425fadc98e234e0480c1@152.53.195.74:26656,c06244aa1a3f76707d4330e05df510010faff26c@89.58.25.104:26656"sed -i -e "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.jayn/config/config.toml5. Configure Pruning
Section titled “5. Configure Pruning”pruning="custom"pruning_keep_recent="100"pruning_keep_every="0"pruning_interval="10"
sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.jayn/config/app.tomlsed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.jayn/config/app.tomlsed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.jayn/config/app.tomlsed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.jayn/config/app.toml6. Set Custom Port (optional)
Section titled “6. Set Custom Port (optional)”PORT=346sed -i -e "s%:26657%:${PORT}57%" $HOME/.jayn/config/client.tomlsed -i -e "s%:26658%:${PORT}58%; s%:26657%:${PORT}57%; s%:6060%:${PORT}60%; s%:26656%:${PORT}56%; s%:26660%:${PORT}61%" $HOME/.jayn/config/config.tomlsed -i -e "s%:1317%:${PORT}17%; s%:9090%:${PORT}90%" $HOME/.jayn/config/app.toml
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 = "10"|' \$HOME/.jayn/config/app.toml
sed -i 's|^indexer *=.*|indexer = "null"|' $HOME/.jayn/config/config.toml7. Set state sync
Section titled “7. Set state sync”SNAP_RPC="http://89.58.25.104:26657"LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); \BLOCK_HEIGHT=$((LATEST_HEIGHT - 1000)); \TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash)echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH
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/.jayn/config/config.toml
more $HOME/.jayn/config/config.toml | grep 'rpc_servers'more $HOME/.jayn/config/config.toml | grep 'trust_height'more $HOME/.jayn/config/config.toml | grep 'trust_hash'8. Create Systemd Service
Section titled “8. Create Systemd Service”sudo tee /etc/systemd/system/jaynd.service > /dev/null <<EOF[Unit]Description=jayndAfter=network-online.target
[Service]User=rootExecStart=/usr/local/bin/jaynd start --home $HOME/.jaynRestart=on-failureRestartSec=3LimitNOFILE=65535
[Install]WantedBy=multi-user.targetEOF9. Start & Check logs
Section titled “9. Start & Check logs”sudo systemctl enable jayndsudo systemctl start jaynd
journalctl -u jaynd -f10. Create Validator JSON
Section titled “10. Create Validator JSON”cat <<EOF > $HOME/.jayn/validator.json{ "pubkey": $(jaynd comet show-validator), "amount": "1000000ujay", "moniker": "<YOUR_VALIDATOR_NAME>", "identity": "<YOUR_KEYBASE_ID>", "website": "<YOUR_WEBSITE>", "security": "<YOUR_EMAIL>", "details": "<YOUR_DETAILS>", "commission-rate": "0.05", "commission-max-rate": "0.20", "commission-max-change-rate": "0.01", "min-self-delegation": "1"}EOF11. Create Validator
Section titled “11. Create Validator”jaynd tx staking create-validator $HOME/.jayn/validator.json --from wallet --chain-id thejaynetwork --fees 2000ujaylastUpdated: 2026-05-25