Getting started as a validator on Mix Mainnet
Pre-requirements
To be a Mix validator, you first must see that you meet the pre-requirements:
- You know what it means to be a Mix validator - How to become a validator
- You have at least 100K MIX tokens, or you will have an aggregated delegation of at least 100K MIX tokens (you can purchase MIX tokens on Uniswap).
- You have an always-on hardware that meets the pre-requisites - How to run network nodes
How to become a Mix validator
To quickly become a validator, follow these steps:
Step 1: Download the `quickstart.sh` script and an `.env` example file:
mkdir fuse-validator
cd fuse-validator
wget -O quickstart.sh https://raw.githubusercontent.com/chainkloud/mix-network/master/scripts/quickstart.sh
chmod 777 quickstart.sh
wget -O .env https://raw.githubusercontent.com/chainkloud/mix-network/master/scripts/examples/.env.validator.example
Step 2: Update the `.env` file:
set "sudo" on `PERMISSION_PREFIX` if running docker/docker-compose requires root
(optional) set 'VAL_NAME' to display a custom name on status.miexs.com (cannot contain spaces)
Step 3: Run the script as a validator:
./quickstart.sh
\:::tip
After running the script successfully, you will see your address in the health site. \:::
Step 5: Stake and/or delegate!
Stake
To stake MIX tokens, all you should do is send your MIX tokens to the Mix Consensus contract address over the Mix network from the validator address.
\:::tip
The Mix Consensus contract address: 0x1c7DFFd9313A0f3f20518E88735932D02bef4F28
\:::
The easiest way is to import your private key or key-store file to your favorite wallet (for example, Metamask), switch the network to Mix, and send the MIX tokens (native tokens) to the Consensus contract address.
\:::info You can find your key-store (containing your private key) and the password for the created account in:
$HOME/fusenet/config/keys/FuseNetwork/UTC--xxxx
$HOME/fusenet/config/pass.pwd
\:::
Delegate
To delegate, send the MIX tokens from any address to the Consensus contract address with the data: 0x5c19a95c000000000000000000000000<address without 0x>.
\:::tip
Example:
For the address: 0xb8ce4a040e8aa33bbe2de62e92851b7d7afd52de\
Use: 0x5c19a95c000000000000000000000000b8ce4a040e8aa33bbe2de62e92851b7d7afd52de as the data.
5c19a95c is for the delegate(address) function signature.
b8ce4a040e8aa33bbe2de62e92851b7d7afd52dein this example, is an address you're delegating to (without the 0x prefix)
\:::
Step 6: Wait for one cycle (approximately 48 hours).
Wait until the next cycle is started.
\:::tip
You can see that you are validating both in the health and explorer sites. \:::
For live support, contact us on Telegram or Discord. Good luck, and happy validating!