GNØ Land ⚛️ - Guide potential rewards
Дже Квон, основатель COSMOS и Tendermint, разрабатывает новый блокчейн под названием Gnoland с целью оптимизации процесса консенсуса между валидаторами, полноты языка смарт-контрактов и устойчивости токеномики.
В Gnolang будет использоваться собственный язык программирования "Golang", который наследует более высокую скорость компиляции, более краткую грамматику и ресурсоэффективный параллелизм.
Сейчас проект находится на очень ранней стадии где много дел только у разработчиков. Однако для сообщества команда подготовила некоторые задания за которые обещают потенциальные награды. Давайте приступим.
1. В первую очередь нам необходимо обжиться сервером для установки на него тестового узла (ноды) сети Gnoland. Рекомендую сервис Firstvds. Берём в аренду выделенный сервер с параметрами 2GB RAM - 2GB CPU - 40GB SSD - OS Ubuntu 20.04. Никакого валидатора на этом этапе мы запускать не будем, поэтому мощный сервер нам не нужен. В дальнейшем характеристики можно увеличить.
2. После подключения к вашему серверу через консоль, нам необходимо установить Go. Сначала убедитесь, что ваш рабочий каталог установлен в домашней директории. Для этого используйте следующую команду:
cd $HOME
3. Далее устанавливаем необходимую утилиту командой:
wget https://go.dev/dl/go1.18.1.linux-amd64.tar.gz
4. Теперь мы распакуем файл с помощью команды:
sudo tar -xvf go1.18.1.linux-amd64.tar.gz
5. Как только вы распакуете файл, мы перейдем в локальный каталог с помощью:
sudo mv go /usr/local
6. Затем нам нужно сделать Go доступным для нашей командной строки, установив путь. Откройте файл конфигурации оболочки в текстовом редакторе GNU nano, используя следующую команду:
nano ~/.bashrc
7. В открывшемся окне, переместитесь в самый низ и вставьте следующее:
export GOROOT=/usr/local/go export GOPATH=$HOME/go export PATH=$GOPATH/bin:$GOROOT/bin:$PATH
Сохраняем комбинацией клавиш Ctrl+O, затем Enter и выходим Ctrl+X
8. Перезагрузите сервер для вступления изменений в силу. После проверяем версию установленного Go командой:
go version
9. Прежде чем мы продолжим, нам нужно установить команду make, одну из наиболее часто используемых команд для компиляции и установки программ из исходного кода. Используйте следующую команду:
sudo apt install make
10. И ещё команду Git, которая позволяет клонировать репозиторий с Github.
add-apt-repository ppa:git-core/ppa
apt update
apt install git
11. После клонируем репозиторий Gnoland с помощью следующей команды:
git clone https://github.com/gnolang/gno/
12. Затем перейдите в каталог gno:
cd gno
13. Создаём Gnoland с помощью команды:
make
14. Создаём мнемоническую фразу:
./build/gnokey generate
./build/gnokey add account --recover
Слово "account" в команде, можно заменить своим названием. Например:
./build/gnokey add mastercrypto --recover
После ввода команды вам предложит ввести пароль, подтвердить пароль и ввести мнемонику.
Теперь у нас должен отобразится наш адрес кошелька следующего формата:
g1f7896asdfgh78963wertyu7410258yhnjui789r7
, копируем и сохраняем, в дальнейшем пригодится. Далее с этим кошельком идём и получаем тестовые токены из крана. Вам будет начислено 100 $GNOTs.
./build/gnokey query auth/accounts/g1mc3vy7n8lexdf9rre7srhefeyyc9ca5znqyhz7 --remote gno.land:36657
Замените g1mc3vy7n8lexdf9rre7srhefeyyc9ca5znqyhz7
на свой адрес кошелька.
16. Регистрация пользователя GNO.LAND.
В настоящее время существует 2 способа регистрации в качестве пользователя на GNO.LAND:
- Получите приглашение от кого-то с привилегиями приглашения.
- Отправьте 2000 $ GNOTs в регистрационный контракт.
Мы идем со 2-м вариантом, так как это “более разрешенный” подход, тогда как 1-й вариант предполагает выпрашивание приглашений от незнакомцев.
17. Для добычи 2000 $ GNOTs, нам необходимо запустить скрипт который будет автоматически запрашивать токены из крана testnet каждые 2 секунды, но перед этим необходимо установить команду curl
для работы скрипта.
Переходим в домашнюю директорию:
cd
sudo apt update
sudo apt install curl
Теперь возвращаемся обратно и запускаем скрипт:
cd gno
while true; do curl 'https://gno.land:5050/' --data-raw 'toaddr=ADDRESS'; ./build/gnokey query "bank/balances/ADDRESS" --remote gno.land:36657; sleep 2; done;
В команде в двух местах слово ADDRESS замените на свой адрес кошелька который мы до этого сохраняли.
Скрипт начнёт запрашивать по 100 монет каждые 2 секунды и выводить вам текущий баланс. Если при работе скрипта вы заметили что баланс не увеличивается, тогда остановите его комбинацией клавиш Ctrl+C , немного подождите и запустите заново. Возможно это необходимо будет проделать несколько раз, так как бот блокирует на спам. При достижении 2100 $ GNOTs, на вашем балансе, остановите скрипт (Ctrl+C)
./build/gnokey query auth/accounts/g1mc3vy7n8lexdf9rre7srhefeyyc9ca5znqyhz7 --remote gno.land:36657
Также из выведенной информации сохраняем себе следующие значения: account_number
и sequence
18. Теперь мы собираемся создать файл, который будет содержать информацию о транзакции, которая зарегистрирует вас как пользователя с помощью следующей команды:
./build/gnokey maketx call ADDRESS --pkgpath "gno.land/r/users" --func "Register" --gas-fee 1gnot --gas-wanted 2000000 --send "2000gnot" --args "" --args "USERNAME" --args "" > unsigned.tx
В этой команде есть 2 параметра, которые нужно изменить:
1. ADDRESS
: Фактический адрес вашей учетной записи.
2. USERNAME
: Имя пользователя по вашему выбору. Обратите внимание, что ваше имя пользователя должно состоять из 6 ~ 17 символов, начинаться со строчной буквы и содержать только строчные буквенно-цифровые символы, цифры и символы подчеркивания.
19. Далее создаём файл, который мы будем использовать для подписания нашей транзакции с помощью следующей команды:
./build/gnokey sign ADDRESS --txpath unsigned.tx --chainid testchain --number ACCOUNTNUMBER --sequence SEQUENCENUMBER > signed.tx
В этой команде есть 3 параметра, необходимо изменить:
1. ADDRESS
: фактический адрес вашей учетной записи.
2. ACCOUNT_NUMBER
: значение для account_number, которое мы получили выше.
3. SEQUENCE_NUMBER: значение для последовательности, которую мы получили выше.
Введите свой пароль, чтобы завершить выполнение команды.
20. Теперь мы собираемся транслировать нашу транзакцию с помощью следующей команды:
./build/gnokey broadcast signed.tx --remote gno.land:36657
Вы получите подтверждающее сообщение с фактической суммой газа (комиссия за транзакцию), которую вы использовали для своей транзакции.
Эта транзакция должна была зарегистрировать вас как пользователя в списке пользователей. Давайте проверим! Ищите себя по имени которое создали в пункте 18.
А вот теперь приступим к стадии за которую нас ждут потенциальные награды😱
Нам необходимо написать короткое эссе в своем любимом блоге (будь то Twitter, Medium и пр.), почему вы заинтересованы в Gnoland. Обратите внимание, что в этой задаче нет ограничения на слово, поэтому не стесняйтесь писать столько, сколько хотите, будь то много или мало!
После публикации нашего материала необходимо добавить его на доску с помощью следующей команды в нашей консоли:
Если вы заново вошли на свой сервер, то убедитесь что вводите команду с ножной директории, с помощью команды:
cd gno
./build/gnokey maketx call ADDRESS --pkgpath "gno.land/r/boards" --func "CreateReply" --gas-fee 1gnot --gas-wanted 2000000 --send "" --broadcast true --chainid testchain --args "1" --args "8" --args "8" --args "URL" --remote gno.land:36657
В этой команде есть 3 параметра, которые необходимо изменить:
ADDRESS
: Ваш фактический адрес учетной записи.URL
: Ссылка на ваше эссе (формата:https://twitter.com/onblocxyz/status/1518765531746430976
).
Введите пароль, чтобы завершить команду.
Все сделано! Вы успешно выполнили свою первую задачу на GNO.LAND!
От команды Gnoland:
"Мы создали это руководство для не-разработчиков в сообществе, которые готовы внести значимый вклад в Gnoland, получая вознаграждение. Потратьте некоторое время, чтобы написать о вещах, которые заставляют вас волноваться за Gnoland, опубликовать его в своем любимом средстве и поделиться с сообществом! Как всегда, наш приоритет - сделать блокчейн доступным для масс. Мы надеемся, что это руководство послужит возможностью для исследователей, обозревателей и журналистов в GnoWorldOrder!