Гайд по поднятию ноды Sui и выполнию заданий Devnet.
На данный момент лучше поставить фулл ноду!!
Сразу скажу, что я далеко не гуру, могу ошибаться в терминологии и т.д.
Сервер брал на 4/8/160, память можно меньше, но 4 ядра самое оптимальное, как показывает практика
Обновляем и устанавливаем нужные пакеты
sudo apt update && sudo apt upgrade -y
Если появляется такое окно, то выбираем первый пункт и нажимаем ок
sudo apt install make clang pkg-config libssl-dev
Далее устанавливаем Rust и Cargo
curl https://sh.rustup.rs -sSf | sh
Выбираем стандартную установку, пишем 1
Если возникает такая ошибка, то надо установить curl
sudo apt update sudo apt install curl
source ~/.profile
source ~/.cargo/env
Проверяем версию cargo, должна быть 1.61.0 или выше
cargo -V
apt install libprotobuf-dev protobuf-compiler
apt install make clang pkg-config libssl-dev
Переходим непосредственно к установке sui, установка занимает 20-30 минут
cargo install --locked --git https://github.com/MystenLabs/sui.git --branch "devnet" sui
sudo ufw allow 5000
sudo ufw allow 5001
Проверяем кошелек, должно быть написано примерно вот так: /root/.cargo/bin/wallet
which wallet
wallet active-address
Пишем сначала y, потом нажимаем Enter
Проверяем ещё раз этой командой, кошелек должен выглядить вот так:
После этого заходим в дискорд, в канал #devnet-faucet и запрашиваем монеты с крана командой !faucet <ваш кошелек>
Переходим к созданию НФТ
wallet create-example-nft
НФТ можно посмотреть тут https://explorer.devnet.sui.io/ введя id нфт, также можно посмотреть что есть на кошельке введя туда его адрес.
НФТ которое было создано не имеет ни картинки, ни описания, поэтому создаем полноценный PFP NFT (ссылка пишется без скобок, остальное с ними)
wallet create-example-nft --url=ссылка --description="описание" --name="имя"
Кому лень делать самому, можете скопировать мой вариант
wallet create-example-nft --url=https://lh3.googleusercontent.com/pw/AM-JKLVZJD47LzjISscW86gnnL2jqWOTT76M18I4DWATp-SLlp_aNX7n20eEDR8w_gYzo636uOMdkkQ0Iag8HtVKFm1ANWlhNgP4VTo9cu7himwGTY7p9kOUNuqmZpTjNtel5zmsdn0hXipwMNox6Oqwcn45=s640-no?authuser=0 --description="Hitman. Agent 047" --name="Dmitriyi Hitman"
Созданное НФТ можно проверить по ссылке выше
Допустим мы хотим создать НФТ для игры, которую можно будет минтить на любой адрес.
git clone https://github.com/MystenLabs/sui.git
wallet publish --path sui/sui_programmability/examples/move_tutorial --gas-budget 30000
Сохраняем 2 id выделенных на скрине
wallet new-address
wallet call --function sword_create --module M1 --package 0x<PACKAGE_ID> --args \"0x<FORGE_ID>\" 42 7 \"0x<PLAYER_ADDRESS>\" --gas-budget 30000
Где:
<PACKAGE_ID> первый id, который сохраняли, а <FORGE_ID> второй, <PLAYER_ADDRESS> - кошелёк, который только что создали
На этом пока все. Этот мануал был написан благодаря:
@sr20de#7650 и его гайду
Uncle Bogdan#5559 и его скрипту, гитхаб
Моя статья почему Sui это круто
Присоединяйтесь в дискорд, там всегда помогут и расскажут последние новости!