Skip to content

Lumen | Install Testnet

HardwareRequirement
CPU4 Cores
RAM8 GB
Disk200 GB
sudo apt update
sudo apt-get install git curl build-essential make jq gcc snapd chrony lz4 tmux unzip bc -y
cd $HOME
wget https://github.com/network-lumen/blockchain/releases/download/v1.4.2/linux-amd64-v1.4.2 && mv linux-amd64-v1.4.2 lumend
chmod +x lumend
mv lumend /usr/local/bin/
lumend version
lumend init yourmoniker --chain-id lumen-testnet
wget -O $HOME/.lumen/config/genesis.json https://github.com/network-lumen/validator-kit/raw/refs/heads/testnet/config/genesis.json
PEERS="8ba58e9857b1ea11954181238d7bf87c09295ca1@157.180.17.63:26656"
sed -i -e "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.lumen/config/config.toml
sed -i -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0ulmn\"/" $HOME/.lumen/config/app.toml
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.lumen/config/config.toml
6. Custom config & port (optional, if needed)
Section titled “6. Custom config & port (optional, if needed)”
PORT=346
sed -i -e "s%:26657%:${PORT}57%" $HOME/.lumen/config/client.toml
sed -i -e "s%:26658%:${PORT}58%; s%:26657%:${PORT}57%; s%:6060%:${PORT}60%; s%:26656%:${PORT}56%; s%:26660%:${PORT}61%" $HOME/.lumen/config/config.toml
sed -i -e "s%:1317%:${PORT}17%; s%:9090%:${PORT}90%" $HOME/.lumen/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/.lumen/config/app.toml
sed -i 's|^indexer *=.*|indexer = "null"|' $HOME/.lumen/config/config.toml
sudo tee /etc/systemd/system/lumen.service > /dev/null <<EOF
[Unit]
Description=Lumen Node
After=network-online.target
[Service]
User=$USER
ExecStart=/usr/local/bin/lumend start --home $HOME/.lumen
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable lumen
sudo systemctl start lumen
sudo journalctl -u lumen -f
lumend keys add wallet --keyring-backend test
10. Generate a PQC key named validator-pqc
Section titled “10. Generate a PQC key named validator-pqc”
lumend keys pqc-generate \
--name validator-pqc \
--home ~/.lumen \
--keyring-backend test
WALLET_ADDR=$(lumend keys show wallet -a --home ~/.lumen --keyring-backend test)
PQC_PUBKEY=$(lumend keys pqc-show validator-pqc \
--home ~/.lumen \
--keyring-backend test \
| awk '/PubKey/ && /hex/ {print $NF; exit}')
lumend tx pqc link-account \
--from wallet \
--pubkey "$PQC_PUBKEY" \
--scheme dilithium3 \
--chain-id lumen-testnet \
--home ~/.lumen \
--keyring-backend test \
--node http://localhost:34657/ \
--gas auto \
--gas-adjustment 1.5 \
--fees 0ulmn \
--yes \
--broadcast-mode sync
lumend query pqc account "$WALLET_ADDR" \
--node http://localhost:34657/ \
--home ~/.lumen
CONSENSUS_PUBKEY=$(lumend comet show-validator)
16. Create validator.json file (fill your info)
Section titled “16. Create validator.json file (fill your info)”
cat > $HOME/.lumen/validator.json <<EOF
{
"pubkey": $CONSENSUS_PUBKEY,
"amount": "1000000ulmn",
"moniker": "your_moniker",
"identity": "your_keybase",
"website": "your_web",
"details": "your_detail",
"security": "your_email",
"commission-rate": "0.1",
"commission-max-rate": "0.2",
"commission-max-change-rate": "0.05",
"min-self-delegation": "1"
}
EOF
lumend tx staking create-validator $HOME/.lumen/validator.json \
--from wallet \
--chain-id lumen-testnet \
--keyring-backend test \
--home ~/.lumen \
--pqc-key validator-pqc \
--pqc-from "$WALLET_ADDR" \
--pqc-scheme dilithium3 \
--gas auto \
--gas-adjustment 1.5 \
--fees 0ulmn
cat $HOME/.lumen/config/node_key.json
cat $HOME/.lumen/config/priv_validator_key.json
cat $HOME/.lumen/pqc_keys/keys.json