The installation of go should proceed as shown in official golang installation guide https://golang.org/doc/install . In order to run the node, minimum golang version should be 1.12.4.
The main branch that will be used is the master branch. Alternatively, an older release tag can be used.
mkdir go && echo "export GOPATH=$HOME/go" >> ~/.profilesource ~/.profilemkdir -p $GOPATH/src/github.com/ElrondNetworkcd $GOPATH/src/github.com/ElrondNetworkgit clone https://github.com/ElrondNetwork/elrond-gocd elrond-go && git checkout tags/v1.0.24git pullcd ..git clone https://github.com/ElrondNetwork/elrond-configcd elrond-config && git checkout tags/BoN-ph1-w1-p1git pullcp *.* ../elrond-go/cmd/node/configcd ../elrond-goGO111MODULE=on go mod vendorcd cmd/node && go build -i -v -ldflags="-X main.appVersion=$(git describe --tags --long --dirty)"
In order to be registered in the Elrond Network, a node must possess 2 types of (secret key, public key) pairs. One is used to identify the node’s credential used to generate transactions (having the sender field its account address) and the other is used in the process of the block signing. Please note that this is a preliminary mechanism, in the next releases the first (private, public key) pair will be dropped when the staking mechanism will be fully implemented. To build and run the keygenerator, the following commands will need to be run:
cd ../keygeneratorgo build./keygenerator
The previous generated .pem files needs to be copied in the same directory where the node binary resides in order to start the node.
cp initialBalancesSk.pem ./../node/config/cp initialNodesSk.pem ./../node/config/ulimit -n 65535cd ../node && ./node
The node binary has some flags defined (for a brief description, the user can use --help flag). Those flags can be used to directly alter the configuration values defined in .toml/.json files and can be used when launching more than one instance of the binary.