You already know the drill, but you'll find all the informations here!
December 13th, 5:00PM UTC
You must submit your gentx (see instructions below) by this time to be included in the genesis.
./config-genesis.json contains the genesis configuration (without any account yet). Feel free to comment on that over Discord.
December 14th, 5:00PM UTC
You must have your validator up and running by this time and be available for further instructions if necessary.
lum-network-1
Available in this repository: ./genesis.json
curl -s https://raw.githubusercontent.com/lum-network/mainnet/master/genesis.json > ~/.lumd/config/genesis.json
sha256sum ~/.lumd/config/genesis.json
[TODO/UPCOMING]
Available here: ./seeds.txt
[TODO/UPCOMING]
Available here: ./persistent_peers.txt
[TODO/UPCOMING]
$ lumd version --long
name: lum
server_name: lumd
version: 1.0.4
commit: e3068181b029af45bcbbe4678804b776eef6087b
Prerequisites: Make sure to have Golang >=1.17.
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
git clone https://github.com/lum-network/chain.git
cd chain
git checkout v1.0.4
make install
lumd version --long
name: lum
server_name: lumd
version: 1.0.4
commit: e3068181b029af45bcbbe4678804b776eef6087b
- 4 CPU ores
- 16 GB RAM
- 200 GB of disk space
- 100 mbps bandwidth
-
Initialize the Lum Network directories and create the local genesis file with the correct chain-id:
lumd init <moniker-name> --chain-id=lum-network-1
-
Create a local key pair:
lumd keys add <key-name>
-
Add your account to your local genesis file with the following amount (1Mi LUM + 1 LUM) and the key you just created.
lumd add-genesis-account $(lumd keys show <key-name> -a) 1000001000000ulum
-
Create the gentx, use
1000000000000ulum
(1Mi LUM):lumd gentx <key-name> 1000000000000ulum \ --chain-id=lum-network-1 \ --moniker="<moniker>" \ --commission-rate="0.01" \ --[other custom params]
If all goes well, you will see a message similar to the following:
Genesis transaction written to "/home/user/.lumd/config/gentx/gentx-******.json"
-
Fork the mainnet repo into your Github account
-
Clone your repo using
git clone https://github.com/<your-github-username>/mainnet
-
Copy the generated gentx json file to
<repo_path>/gentxs/
> cd mainnet > cp ~/.lumd/config/gentx/gentx-*****.json ./gentxs/gentx-<moniker-name>.json
-
Commit and push to your repo
-
Create a PR onto https://github.com/lum-network/mainnet
-
Only PRs from invited validators will be accepted. This is to ensure the network successfully starts on time.
Download Genesis file when the time is right.
curl -s https://raw.githubusercontent.com/lum-network/mainnet/master/genesis.json > ~/.lumd/config/genesis.json
sha256sum ~/.lumd/config/genesis.json
[TODO/UPCOMING]
Create a systemd file for your Lum Network service:
sudo nano /etc/systemd/system/lumd.service
Copy and paste the following and update <YOUR_HOME_PATH>
:
[Unit]
Description=Lum Network daemon
After=network-online.target
[Service]
User=lum
ExecStart=/<YOUR_HOME_PATH>/go/bin/lumd start --p2p.laddr tcp://0.0.0.0:26656 --home /<YOUR_HOME_PATH>/.lumd
Restart=on-failure
RestartSec=3
LimitNOFILE=4096
[Install]
WantedBy=multi-user.target
2
This assumes $HOME/go
to be your Go workspace, and $HOME/.lumd
to be your directory for config and data. Your actual directory locations may vary.
Enable and start the new service:
sudo systemctl enable lumd
sudo systemctl start lumd
Check status:
lumd status
Check logs:
journalctl -u lumd -f