Git Product home page Git Product logo

mainnet-3's Introduction

Lum Network - MainNet

You already know the drill, but you'll find all the informations here!

Timeline

Phase 1: Gentx submission deadline

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.

Phase 2: MainNet Genesis Launch

December 14th, 5:00PM UTC

You must have your validator up and running by this time and be available for further instructions if necessary.

Key informations

Chain ID

lum-network-1

Genesis file

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]

Seed nodes

Available here: ./seeds.txt

[TODO/UPCOMING]

Persistent peers

Available here: ./persistent_peers.txt

[TODO/UPCOMING]

lumd version

$ lumd version --long
name: lum
server_name: lumd
version: 1.0.4
commit: e3068181b029af45bcbbe4678804b776eef6087b

Installation

Prerequisites: Make sure to have Golang >=1.17.

Make sure your Go configuration looks like that one (especially the GO111Module):

export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin

Clone the repository

git clone https://github.com/lum-network/chain.git
cd chain
git checkout v1.0.4
make install

Check that you have the right lumd version installed:

lumd version --long
name: lum
server_name: lumd
version: 1.0.4
commit: e3068181b029af45bcbbe4678804b776eef6087b

Minimum hardware requirements

  • 4 CPU ores
  • 16 GB RAM
  • 200 GB of disk space
  • 100 mbps bandwidth

Setup validator node

Generate genesis transaction (gentx)

  1. 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
  2. Create a local key pair:

    lumd keys add <key-name>
  3. 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
  4. 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"

Submit genesis transaction

  • 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.

Running in production

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

mainnet-3's People

Contributors

armyids avatar curlycrypto184 avatar daluxxx avatar gotogu avatar jetlag666 avatar kalpatech-team avatar lebascou avatar unitychaos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.