June 8, 2022

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

Версия 1.18.1

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

Обязательно сохраните фразу состоящую из 24 слов!

15. Создаём учетную запись:

./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:

  1. Получите приглашение от кого-то с привилегиями приглашения.
  2. Отправьте 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 параметра, которые необходимо изменить:

  1. ADDRESS: Ваш фактический адрес учетной записи.
  2. URL: Ссылка на ваше эссе (формата: https://twitter.com/onblocxyz/status/1518765531746430976).

Введите пароль, чтобы завершить команду.

Все сделано! Вы успешно выполнили свою первую задачу на GNO.LAND!

От команды Gnoland:

"Мы создали это руководство для не-разработчиков в сообществе, которые готовы внести значимый вклад в Gnoland, получая вознаграждение. Потратьте некоторое время, чтобы написать о вещах, которые заставляют вас волноваться за Gnoland, опубликовать его в своем любимом средстве и поделиться с сообществом! Как всегда, наш приоритет - сделать блокчейн доступным для масс. Мы надеемся, что это руководство послужит возможностью для исследователей, обозревателей и журналистов в GnoWorldOrder!

До следующего раза!"

Ссылки:

Первое сообщение в блоге | Twitter | Discord

За информацию спасибо @e1ephant.