Installation Validator
Install Node Producer/Validator Sge
Chain ID: sgenet-1 | Latest Binary Version: v1.1.1
Update and install packages for compiling
sudo apt update
sudo apt install curl git jq lz4 build-essential zsh -y
User Management
Running in user (Assume) : salinem We never used this username in our production !
Create User, Please Refer to User and Group Management
Login as User salinem
or
and make sure we are in directory
Running in user : salinem
FHS of SGE
Create FHS for application
echo "Install FHS"
mkdir -p ${HOME}/tmp
mkdir -p ${HOME}/lib
mkdir -p ${HOME}/bin
mkdir -p ${HOME}/conf
mkdir -p ${HOME}/systemd
Install Golang
# Install Go 1.22.3
wget https://go.dev/dl/go1.22.3.linux-amd64.tar.gz
tar xf go1.22.3.linux-amd64.tar.gz
mv go ${HOME}/bin
Environment and Variable
If Using ZSH
# Set Go path to $PATH variable
echo "export PATH=$PATH:/usr/local/go/bin:~/go/bin" >> $HOME/.zshrc
echo "export GOPATH="${HOME}/lib" >> $HOME/.zshrc
echo "export GOMAXPROCS=2" >> $HOME/.zshrc
echo "export CHAIN_ID=sgenet-1" >> $HOME/.zshrc
echo "export WALLET_NAME=mywallet" >> $HOME/.zshrc
echo "export MONIKER=MYNODE" >> $HOME/.zshrc
source ~/.zshrc
If Using BASH
# Set Go path to $PATH variable
echo "export PATH=$PATH:/usr/local/go/bin:~/go/bin" >> $HOME/.bashrc
echo "export GOPATH="${HOME}/lib" >> >> $HOME/.bahsrc
echo "export GOMAXPROCS=2" >> $HOME/.bashrc
echo "export CHAIN_ID=sgenet-1" >> $HOME/.bashrc
echo "export WALLET_NAME=mywallet" >> $HOME/.bashrc
echo "export MONIKER=MYNODE" >> $HOME/.bashrc
source ~/.bashrc
Install Sge
cd ${HOME}/source
# Clone SGE Protocol version v1.1.1
git clone https://github.com/sge-network/sge sge
cd ${HOME}/source/sge
git fetch && git checkout v{'changed': True, 'stdout': '', 'stderr': 'v1.7.0-tmfix', 'rc': 0, 'cmd': '/app/mainnet/sge/bin/sged version', 'start': '2024-06-11 06:40:56.196099', 'end': '2024-06-11 06:40:56.262733', 'delta': '0:00:00.066634', 'msg': '', 'stdout_lines': [], 'stderr_lines': ['v1.7.0-tmfix'], 'ansible_facts': {'discovered_interpreter_python': '/usr/bin/python3'}, 'failed': False}
make build
cp build/sged ${HOME}/bin/
Intialize Node
sged init --chain-id $CHAIN_ID "$MONIKER"
Replace genesis file with our genesis file
wget https://snapshots.indonode.net/sge/genesis.json -O $HOME/.sge/config/genesis.json
Create new account
sged keys add $WALLET_NAME
Validate Genesis
sged validate-genesis
Edit config, You can refer to Edit Configuration Node
Apply State Sync, refer to State Sync
Last updated