Chain ID: self-1
| Node Version: v1.0.1
note
First You Need Set Variabels
MONIKER=<YOUR_MONIKER_NAME>
echo "export MONIKER=$MONIKER" >> $HOME/.bash_profile
echo "export SELFCHAIN_CHAIN_ID="self-1"" >> $HOME/.bash_profile
source $HOME/.bash_profile
- Wallet
- Validator
- Token
- Service
- Governance
- Utility
- Delete
Wallet
Create Wallet
selfchaind keys add wallet
Recovery Wallet
selfchaind keys add wallet --recover
List All Wallet
selfchaind keys list
Delete Wallet
selfchaind keys delete wallet
Check Wallet Balance
selfchaind q bank balances $(selfchaind keys show wallet -a)
Validator
note
Make sure you have adjust YOUR_KEYBASE_ID, YOUR_DETAILS, YOUR_WEBSITE_URL
Create Validator
selfchaind tx staking create-validator \
--amount=1000000uslf \
--pubkey=$(selfchaind tendermint show-validator) \
--moniker=$MONIKER \
--identity="YOUR_KEYBASE_ID" \
--details="YOUR_DETAILS" \
--website="YOUR_WEBSITE_URL" \
--chain-id=$SELFCHAIN_CHAIN_ID \
--commission-rate=0.10 \
--commission-max-rate=0.20 \
--commission-max-change-rate=0.01 \
--min-self-delegation=1000 \
--from=wallet \
--gas-adjustment=1.5 \
--gas="auto" \
--gas-prices=1uslf
Edit Validator
selfchaind tx staking edit-validator \
--new-moniker="YOUR MONIKER" \
--identity="IDENTITY KEYBASE" \
--details="DETAILS VALIDATOR" \
--website="LINK WEBSITE" \
--chain-id=$SELFCHAIN_CHAIN_ID \
--from=wallet \
--gas-adjustment=1.5 \
--gas="auto" \
--gas-prices=1uslf
Check Jailed Reason
selfchaind query slashing signing-info $(selfchaind tendermint show-validator)
Unjail Validator
selfchaind tx slashing unjail --from wallet --chain-id $SELFCHAIN_CHAIN_ID --gas-adjustment 1.5 --gas auto --gas-prices 1uslf -y
Token
Withdraw Rewards
selfchaind tx distribution withdraw-all-rewards --from wallet --chain-id $SELFCHAIN_CHAIN_ID --gas-adjustment 1.5 --gas auto --gas-prices 1uslf -y
Withdraw Rewards with Comission
selfchaind tx distribution withdraw-rewards $(selfchaind keys show wallet --bech val -a) --commission --from wallet --chain-id $SELFCHAIN_CHAIN_ID --gas-adjustment 1.5 --gas auto --gas-prices 1uslf -y
Delegate Tokens to Your Validator
selfchaind tx staking delegate $(selfchaind keys show wallet --bech val -a) 100000uslf --from wallet --chain-id $SELFCHAIN_CHAIN_ID --gas-adjustment 1.5 --gas auto --gas-prices 1uslf -y
Redelegate Tokens to Another Validator
selfchaind tx staking redelegate $(selfchaind keys show wallet --bech val -a) <TO_VALOPER_ADDRESS> 100000uslf --from wallet --chain-id $SELFCHAIN_CHAIN_ID --gas-adjustment 1.5 --gas auto --gas-prices 1uslf -y
Unbond Tokens from Your Validator
selfchaind tx staking unbond $(selfchaind keys show wallet --bech val -a) 100000uslf --from wallet --chain-id $SELFCHAIN_CHAIN_ID --gas-adjustment 1.5 --gas auto --gas-prices 1uslf -y
Send Tokens to Any Wallet
selfchaind tx bank send wallet <TO_WALLET_ADDRESS> 100000uslf --from wallet --chain-id $SELFCHAIN_CHAIN_ID --gas-adjustment 1.5 --gas auto --gas-prices 1uslf -y
Service
Reload Service
sudo systemctl daemon-reload
Enable Service
sudo systemctl enable selfchaind
Disable Service
sudo systemctl disable selfchaind
Start Service
sudo systemctl start selfchaind
Stop Service
sudo systemctl stop selfchaind
Restart Service
sudo systemctl restart selfchaind
Check Service Status
sudo systemctl status selfchaind
Check Service Logs
sudo journalctl -u selfchaind -f --no-hostname -o cat
Governance
tip
For Vote, You can change the value of yes to no, abstain, no_with_veto
Vote
selfchaind tx gov vote 1 yes --from wallet --chain-id $SELFCHAIN_CHAIN_ID --gas-adjustment 1.5 --gas auto --gas-prices 1uslf -y
List all Proposals
selfchaind query gov proposals
Check Vote
selfchaind tx gov vote PROPOSAL_NUMBER VOTE_OPTION --from wallet --chain-id $SELFCHAIN_CHAIN_ID --gas-adjustment 1.5 --gas auto --gas-prices 1uslf -y
Create new Proposal
selfchaind tx gov submit-proposal \
--title="Title" \
--description="Description" \
--deposit=10000000uslf \
--type="Text" \
--from=wallet \
--gas-adjustment 1.5 \
--gas "auto" \
--gas-prices=1uslf \
-y
Utility
Set Indexer null / kv
sed -i 's|^indexer *=.*|indexer = "null"|' $HOME/.selfchain/config/config.toml
Get Validator Info
selfchaind status 2>&1 | jq .ValidatorInfo
Get Denom Info
selfchaind q bank denom-metadata -oj | jq
Get Sync Status
selfchaind status 2>&1 | jq .SyncInfo.catching_up
Get Latest Height
selfchaind status 2>&1 | jq .SyncInfo.latest_block_height
Get Node Peer
echo $(selfchaind tendermint show-node-id)'@'$(curl -s ifconfig.me)':'$(cat $HOME/.selfchain/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
Set Minimum Gas Price
sed -i -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.0025uslf\"/" $HOME/.selfchain/config/app.toml
Enable Prometheus
sed -i 's|^prometheus *=.*|prometheus = true|' $HOME/.selfchain/config/config.toml
Reset Chain Data
selfchaind tendermint unsafe-reset-all --home $HOME/.selfchain --keep-addr-book
Delete
WARNING!!! Please, before you advance to the following step! The entire chain data will be gone! Make sure you have a backup of your priv_validator_key.json!
Delete Node
sudo systemctl stop selfchaind && sudo systemctl disable selfchaind && sudo rm /etc/systemd/system/selfchaind.service && sudo systemctl daemon-reload && sudo rm -rf $(which selfchaind) && rm -rf $HOME/.selfchain