September 16

Как сделать пре-генезис делегацию в Namada

Всем привет! Процесс подготовки к запуску мейннета Namada идет полным ходом. На данный момент завершена первая стадия (Stage 1), в ходе которой сформирован сет генезис-валидаторов. Мы не можем не похвастаться тем, что запускаем наш Stakeflow Validator в генезисе.

Если в генезисе вам начислены токены NAM, например, вы получили их в рамках предыдущего аирдропа (проверить это можно по наличию вашего адреса в balances.toml), то уже со старта вы сможете отправить свои токены в стейкинг и получать доход.

Хорошая новость в том, что это не очень сложно: потребуется всего лишь установить бинарники Namada на компьютер и выполнить несколько команд в CLI.

Чтобы максимально облегчить этот процесс, мы подготовили инструкцию. Примерное время выполнения всех операций даже для самого неподготовленного пользователя составит всего 15-20 минут.

  1. Подготовительная часть. Здесь мы создадим временные папки для скачивания и хранения бинарников, а также внесем изменения в переменные среды.

Откройте встроенный терминал Terminal.

Создайте папку в корневом каталоге, из которой будем запускать бинарники.

mkdir -p $HOME/bin

Создадим папку в корневом каталоге, в которую мы будем скачивать бинарники

mkdir -p $HOME/NAMADA

Для того, чтобы установленные бинарники запускались из CLI, необходимо добавить путь к ним в переменные среды. Для этого нужно открыть файл .zshrc

nano $HOME/.zshrc

и в самом низу документа вставить строчку

export PATH="$HOME/bin:$PATH"

после этого нажатием на Ctrl + x необходимо закрыть файл, и нажатием "y" + Enter подтвердить сохраняемые изменения.

Последнее действие на этом этапе - перезагрузка терминала, чтобы изменения вступили в силу. Для этого нужно выйти из терминала и снова зайти в него

  1. Скачивание необходимых бинарников из интернета

Переходим в папку NAMADA

cd $HOME/NAMADA

Скачиваем архив с бинарником cometbft

  • Если у вас Mac с процессором M1 то используем команду
wget <https://github.com/cometbft/cometbft/releases/download/v0.37.9/cometbft_0.37.9_darwin_arm64.tar.gz>

И разархивируем его в папку bin

tar -xzvf cometbft_0.37.9_darwin_arm64.tar.gz -C $HOME/bin
  • Если у вас Mac на базе AMD64 то используем команду
wget <https://github.com/cometbft/cometbft/releases/download/v0.37.9/cometbft_0.37.9_darwin_amd64.tar.gz>

И разархивируем его в папку bin

tar -xzvf cometbft_0.37.9_darwin_amd64.tar.gz -C $HOME/bin

Скачиваем бинарники намады (убедитесь что вы находитесь в папке NAMADA)

wget <https://github.com/anoma/namada/releases/download/v0.43.0/namada-v0.43.0-Darwin-arm64.tar.gz>

И разархивируем их в папку bin

tar -xzvf namada-v0.43.0-Darwin-arm64.tar.gz -C $HOME/bin

Проблема в том, что они разархивировались в папку namada-v0.43.0-Darwin-arm64 внутри папки bin. Переместим же их непосредственно в папку bin

cp "$HOME/bin/namada-v0.43.0-Darwin-arm64/namada" $HOME/bin/ && cp "$HOME/bin/namada-v0.43.0-Darwin-arm64/namadac" $HOME/bin/ && cp "$HOME/bin/namada-v0.43.0-Darwin-arm64/namadan" $HOME/bin/ && cp "$HOME/bin/namada-v0.43.0-Darwin-arm64/namadaw" $HOME/bin/

Теперь бинарники готовы к работе, проверим их функциональность

cometbft version

(должно ответить 0.37.9)

namada --version

(должно ответить v0.43.0)

  1. Создание пре-генезис транзакции

Для начала необходимо импортировать ключи Вашего кошелька. Для этого исполните команду ниже

namadaw --pre-genesis derive --alias $ALIAS

заменив переменную $ALIAS словом, которым вы хотите назвать ваши ключи, например my_keys, в результате чего получится команда

namadaw --pre-genesis derive --alias my_keys

После выполнения команды вам будет предложено установить защитный пароль для учетной записи (его нужно будет повторить два раза, после каждого нажимая Enter) а затем ввести сид-фразу (помните, что с ней нужно обращаться осмотрительно).

Далее необходимо создать транзакцию делегирования. Если вы хотите делегировать в нашего валидатора, то просто выполните команду ниже, заменив $YOUR_ADDRESS на ваш адрес в сети Namada. Если хотите делегировать другому валидатору - просто замените адрес в флаге --validator

namadac utils genesis-bond \\
--validator tnam1q93th4stcuxfs0h8kn9uw0uhdj59dfa5hu768v4t \\
--amount 0 \\
--source $YOUR_ADDRESS \\
--path $HOME/NAMADA/transactions.toml

В результате выполнения команды выше в папке $HOME/NAMADA/ будет создан файл transactions.toml. Его можно открыть выполнив команду

nano $HOME/NAMADA/transactions.toml

Содержимое должно выглядеть как-то так:

Остается выполнить последний этап и подписать эту транзакцию вашим ключом, чтобы подтвердить ее легитимность. Для этого нужно выполнить команду ниже:

namadac utils sign-genesis-txs \\
--path $HOME/NAMADA/transactions.toml \\
--output $HOME/NAMADA/transactions-signed.toml

Данная команда должна создать в папке $HOME/NAMADA/ подписанный файл с названием transactions-signed.toml. Для проверки его можно открыть командой

nano $HOME/NAMADA/transactions-signed.toml

Содержимое должно выглядеть примерно так:

Поздравляем! Вы справились с основной и самой трудной частью! Осталось только подать этот файл в виде пулл-реквеста в папку transactions в генезис-репозитории Namada. Если вы никогда не делали этого ранее, существуют подробные гайды, например, этот. При создании пулл-реквеста обязательно придерживайтесь требований разработчиков Namada:

  • Перед подачей PR переименуйте ваш transactions-signed.toml файл в {ваш github username}-bond.toml.
  • Ваш GitHub username в имени файла должен точно соответствовать имени аккаунта GitHub, с которого вы подаете PR.
  • Назовите ваш PR "Add {ваш github username} pre-genesis transactions".

Если ваш файл .toml корректен и ваш PR пройдет все проверки CI, он будет принят. Если возникнут проблемы с вашим PR, возможно придется что-то подкорректировать, поэтому следите за статусом вашего PR.

В любом случае, если у вас возникнут затруднения, проверьте официальную документацию проекта и инструкцию, а также вы всегда можете написать в наш чат, где мы с радостью поможем вам справиться с вашей проблемой.

Желаем удачи!


Ресурсы Stakeflow: