https://t.me/cryptolbs

ВСЕ КОМАНДЫ ВВОДИТЬ ПО ОТДЕЛЬНОСТИ!

sudo apt update

sudo apt upgrade
#Если спросит Y/n - вводите Y

apt install curl git -y 

curl — proto ‘=https’ — tlsv1.2 -sSf <https://sh.rustup.rs> | sh # Вводим 1

source "$HOME/.cargo/env"

git clone <https://github.com/FuelLabs/fuelup/>

cd fuelup/

./fuelup-init.sh # N

export PATH="${HOME}/.fuelup/bin:${PATH}"

fuelup self update

fuelup toolchain install beta-3

fuelup default beta-3

mkdir fuel-project

cd fuel-project

forc new counter-contract

vim counter-contract/src/main.sw 
# Должен открыться файл с текстом контракта
# Нажимаем клавишу I, в терминале снизу должно появиться слово INSERT
# Стираем весь текст контракта и вписываем свой 
# (если что вставить текст в Ubuntu можно ПКМ:

# Начало контракта (МЕНЯ НЕ КОПИРОВАТЬ)
contract;

storage {
    counter: u64 = 0,
}

abi Counter {
    #[storage(read, write)]
    fn increment();

    #[storage(read)]
    fn count() -> u64;
}

impl Counter for Contract {
    #[storage(read)]
    fn count() -> u64 {
        storage.counter
    }

    #[storage(read, write)]
    fn increment() {
        storage.counter = storage.counter + 1;
    }
}

# Конец контракта (МЕНЯ НЕ КОПИРОВАТЬ)

# Нажимаем ESC и вводим :w, затем ENTER
# Вводим :q и нажимаем ENTER, вас должно выбросить из контракта!

fuelup toolchain new test_toolchain

fuelup component add [email protected]

fuelup component add forc-wallet

cd counter-contract

forc build

forc-wallet new # Попросит ввести пароль - придумываем любой
# подтверждаем его, вылазит мнемоника и **сохраняем мнемонику и пароль!**

forc-wallet account new # Попросит пароль - вводим пароль с предыдущего пункта.
# должен высветиться адрес кошелька 
# пример - fuel10ut4u04ml0acsmhz704j54p3wzkxfp6u38ez6y693n3etvu6fexqlm9sx4

# **Запрашиваем токены введя адрес кошелька - <https://faucet-beta-3.fuel.network/?ref=fuel>
# Проверить пришли ли они можно тут - <https://fuellabs.github.io/block-explorer-v2/beta-3/?ref=fuel#/>

ВСЕ ЧТО НИЖЕ МОЖЕТ ПОЛУЧИТЬСЯ НЕ С ПЕРВОГО РАЗА, ЭТО НОРМАЛЬНО!
(Могут быть ошибки аля Invalid Signature, пробуйте подписывать заново)
---------------------------------------

forc deploy --node-url beta-3.fuel.network/graphql --gas-price 1 --random-salt**
# Вводим адрес кошелька и нажимаем ENTER
# Команда выплюнет строку(пример) - 
# Transaction id to sign: 24c2ce640308f8990a9195601b2ef86785d60c7be6f7b8cb20675ba4595390ab
# Копируем Id(пример) - 24c2ce640308f8990a9195601b2ef86785d60c7be6f7b8cb20675ba4595390ab

ОТКРЫВАЕМ НОВЫЙ ТЕРМИНАЛ НА ТОМ ЖЕ СЕРВЕРЕ! (просто подключаемся второй раз на сервак)

cd fuelup/fuel-project/counter-contract/

export PATH="${HOME}/.fuelup/bin:${PATH}"

forc-wallet account 0 sign tx-id <transaction_id c первого терминала>
# вводим пароль, нажимаем Enter и получаем Signature - **КОПИРУЕМ ЕГО!
# пример - Signature: 0ac518c908afa7f9ca21b820a6ae1142ac5a6f5ca84e5119a2ce2b4e4fdfe11e5e1fe717b71bd82436b7f483d01815f92a8c96b223409adb0a0ebdfe4014dbe6

ВОЗВРАЩАЕМСЯ В ПЕРВЫЙ ТЕРМИНАЛ И ВСТАВЛЯЕМ ПОЛУЧЕННЫЙ SIGNATURE
# ENTER
# contract e9597cae4ff6d793e33613e3b66604dcbed8012fa37c4fcb27ceaf0003be7808 
# deployed in block 0x49c7ce6d7b538ebb6a0730c8269ad4a233ae04de198c90a7e0aeaaf9524512e9**

**ГОТОВО!
Можем перейти в кошелек и найти транзакцию создания контракта - [тык](<https://fuellabs.github.io/block-explorer-v2/transaction/0x24c2ce640308f8990a9195601b2ef86785d60c7be6f7b8cb20675ba4595390ab>)**

https://t.me/cryptolbs - ПОДПИШИСЬ СУКААААААААААААААААААААААААААААААААААААА