October 5, 2022

EmpowerChain

Проект EmpowerChain пытается построить экономику замкнутого цикла, в которой вы сможете получать вознаграждение за переработку пластика. Как это будет реализована? Пока не совсем понятно.
Но что есть сейчас так это тестнет.

Обновляем и устанавливаем необходимые пакеты:

sudo apt update && sudo apt upgrade -y
sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool -y

Устанавливаем GO:

ver="1.18.2"
cd $HOME
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm "go$ver.linux-amd64.tar.gz"
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> ~/.bash_profile
source ~/.bash_profile
go version

Версия GO должна быть 1.18.2

Создаем переменные

NODENAME="Имя вашей ноды"

Далее сохраняем переменные в баш:

PORT=10
echo "export NODENAME=$NODENAME" >> $HOME/.bash_profile
echo "export WALLET=wallet" >> $HOME/.bash_profile
echo "export ECHAIN_ID=altruistic-1" >> $HOME/.bash_profile
echo "export PORT=${PORT}" >> $HOME/.bash_profile
source $HOME/.bash_profile

Скачиваем и устанавливаем бинарник:

cd $HOME
git clone https://github.com/empowerchain/empowerchain
cd empowerchain/chain
make build
chmod +x ./build/empowerd && mv ./build/empowerd /usr/local/bin/empowerd

Начинаем инициацию

empowerd init $NODENAME --chain-id $ECHAIN_ID

Записываем чейн и keyring-backend в конфиг, меняем порт

empowerd config chain-id $ECHAIN_ID
empowerd config keyring-backend test
empowerd config node tcp://localhost:${PORT}657

Скачиваем генезис файл

wget -qO $HOME/.empowerchain/config/genesis.json "https://raw.githubusercontent.com/empowerchain/empowerchain/main/testnets/altruistic-1/genesis.json"

Скачиваем addrbook

wget -qO $HOME/.empowerchain/config/addrbook.json "https://snapshots2-testnet.nodejumper.io/empower-testnet/addrbook.json"

Меняем порты

sed -i.bak -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:${PORT}658\"%; s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://127.0.0.1:${PORT}657\"%; s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:${PORT}060\"%; s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:${PORT}656\"%; s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":${PORT}660\"%" $HOME/.empowerchain/config/config.toml
sed -i.bak -e "s%^address = \"tcp://0.0.0.0:1317\"%address = \"tcp://0.0.0.0:${PORT}317\"%; s%^address = \":8080\"%address = \":${PORT}080\"%; s%^address = \"0.0.0.0:9090\"%address = \"0.0.0.0:${PORT}090\"%; s%^address = \"0.0.0.0:9091\"%address = \"0.0.0.0:${PORT}091\"%" $HOME/.empowerchain/config/app.toml

Отключаем индексацию

indexer="null"
sed -i -e "s/^indexer *=.*/indexer = \"$indexer\"/" $HOME/.empowerchain/config/config.toml

Ставим минимальную цену газа

sed -i -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.025umpwr\"/" $HOME/.empowerchain/config/app.toml

Настраиваем прунинг

pruning="custom" 
pruning_keep_recent="100" 
pruning_keep_every="0" 
pruning_interval="50" 
sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.empowerchain/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.empowerchain/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.empowerchain/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.empowerchain/config/app.toml

Ставим seed'ы и записываем их

seeds=""
peers="ca8b9d5fecd3258cb8bb4164017114898cd63ad5@empower-testnet.nodejumper.io:31656,6dae9286b4ef23151148922befc0f32a00cc1ec4@65.21.134.202:26656,ab4b4331d161cf0e98d3244e30225e4f38ac8d2f@65.109.28.177:44656,d9307a7ba665a54e65f4fa5dbb5401448e1c3456@65.109.30.117:30656,46b552c62df0523a2bfff285eb384e4b197484aa@65.21.133.125:33656,408980a63332b230a90ad549e93162dab303836f@65.108.225.158:17456,605b175a3cf6f71d454840baef08d0e81d94935f@65.108.52.192:46656,86669cd5e5914f862578d43de483f49e93d396b1@51.83.35.129:26656,b405572f7bf70f681d1e82f196e1399bf90a9d8a@138.201.197.163:26656,c5d44acd2f0ee122352d2f8154d9b29aeb9bf0ec@159.69.65.97:36656,2b3da30140b57d64a57a25485c237f9c7c3c3324@194.163.136.90:26656,8abceaabc650d81a751e40382f80af6c98ba466f@185.239.209.180:35656,333de3fc2eba7eead24e0c5f53d665662b2ba001@35.187.86.119:26656,b5df76282e8704d253012688613d4eb725d3cb12@77.37.176.99:56656,8498049b61177a53b3f0e6b8f7c4a574251a2bbb@149.102.157.96:36656,56d05d4ae0e1440ad7c68e52cc841c424d59badd@96.234.160.22:26656"
sed -i -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.empowerchain/config/config.toml

Сбрасываем данные цепи

empowerd tendermint unsafe-reset-all

Создаем сервисный файл

sudo tee /etc/systemd/system/empowerd.service > /dev/null <<EOF
[Unit]
Description=empowerNode
After=network-online.target

[Service]
User=$USER
ExecStart=$(which empowerd) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

Запускаем сервисный файл

sudo systemctl daemon-reload && sudo systemctl enable empowerd && sudo systemctl restart empowerd

Посмотреть логи

sudo journalctl -u empowerd -f -o cat

Эксплорер можете найти здесь

Создаем кошелек

empowerd keys add $WALLET

Кран - Заходим в дискорд, ветка #faucet

пишем следующее $request ваш_адрес altruistic-1

Создаем переменную с адресом для удобства

EADDRESS=$(empowerd keys show $WALLET -a)
echo 'export EADDRESS='${EADDRESS} >> $HOME/.bash_profile

Проверяем баланс

empowerd query bank balances $EADDRESS

Создаем переменную с валопер адресом для удобства

EVALOPER=$(empowerd keys show $WALLET --bech val -a)
echo 'export EVALOPER='${EVALOPER} >> $HOME/.bash_profile
source $HOME/.bash_profile

Создаем валидатора

empowerd tx staking create-validator \
  --amount 1000000umpwr \
  --from $WALLET \
  --commission-max-change-rate "0.01" \
  --commission-max-rate "0.2" \
  --commission-rate "0.07" \
  --min-self-delegation "1" \
  --pubkey  $(empowerd tendermint show-validator) \
  --moniker $NODENAME \
  --fees=6000umpwr \
  --chain-id $ECHAIN_ID

Редактируем информацию у валидатора (по желанию)

empowerd tx staking edit-validator \
--from=$WALLET \
--website="САЙТ" \
--identity="ID с keybase.io" \
--details="любые_детали" \
--chain-id=$ECHAIN_ID \
--fees=6000umpwr \
--gas-adjustment="1"

ПОЛЕЗНЫЕ КОМАНДЫ

Проверяем синк, верный статус false

empowerd status 2>&1 | jq .SyncInfo

Делегируем в себя

empowerd tx staking delegate $EVALOPER 1000000umpwr --from=$WALLET --fees=6000umpwr --chain-id=$ECHAIN_ID

Выход из тюрьмы

empowerd tx slashing unjail --from $WALLET --chain-id $ECHAIN_ID

Удаление ноды

sudo systemctl stop empowerd && sudo systemctl disable empowerd
sudo rm -rf /etc/systemd/system/empowerd
sudo rm -rf /usr/local/bin/empowerd
sudo rm -rf $HOME/.empowerd
sudo rm -rf $HOME/empowerchain
sudo rm -rf $HOME/.empowerchain

Авторский канал: https://t.me/cryptorussianbears

Мой чат для обсуждения: https://t.me/russianbears1