SHiNE-server/shine-solana/shine/scripts/CreateGovernmentTokenAndDAO/README.md

75 lines
2.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# CreateGovernmentTokenAndDAO
## RU
Единый набор скриптов для:
1. создания governance token,
2. выдачи/сжигания membership токенов,
3. передачи прав на Governance PDA,
4. создания DAO (Realm/Governance/Treasury).
### Важная структура ключей
Используются две папки:
- `keypairs/dao_creator/` — ключ инициатора DAO и плательщика (ровно 1 `*.json`).
- `keypairs/government_token/` — ключ mint governance token (ровно 1 `*.json`).
Скрипты автоматически берут единственный файл из этих папок.
Если в папке `government_token` 0 файлов или больше 1 — скрипт завершится ошибкой.
### Скрипты
```bash
./01_create_governance_token.sh
./02_mint_token_to_wallet.sh <WALLET>
./03_force_burn_from_wallet.sh <WALLET>
./04_create_dao.sh
./05_transfer_rights_to_governance_pda.sh
./grind_vanity_mint.sh [PREFIX] [COUNT] [ignore-case]
```
### Базовый порядок
1. (Опционально) `grind_vanity_mint.sh`, затем ОБЯЗАТЕЛЬНО скопировать выбранный json в `keypairs/government_token/`.
Пример:
```bash
cp ./runs/<FOUND_KEYPAIR>.json ./keypairs/government_token/selected_mint.json
```
2. `01_create_governance_token.sh`
3. В `governance_token.config.env` указать `GT_MINT_ADDRESS`.
4. `02_mint_token_to_wallet.sh <WALLET>`
5. `03_force_burn_from_wallet.sh <WALLET>`
6. `04_create_dao.sh`
7. Внести полученный Governance PDA в `GT_GOVERNANCE_PDA`.
8. `05_transfer_rights_to_governance_pda.sh`
---
## EN
Unified scripts for:
1. governance token creation,
2. membership mint/burn,
3. authority transfer to Governance PDA,
4. DAO creation (Realm/Governance/Treasury).
### Required keypair layout
Two folders are used:
- `keypairs/dao_creator/` — DAO creator/payer keypair (exactly 1 `*.json`).
- `keypairs/government_token/` — governance token mint keypair (exactly 1 `*.json`).
Scripts auto-detect the single file in each folder.
If `government_token` has 0 files or more than 1 file, script fails with error.
### Scripts
```bash
./01_create_governance_token.sh
./02_mint_token_to_wallet.sh <WALLET>
./03_force_burn_from_wallet.sh <WALLET>
./04_create_dao.sh
./05_transfer_rights_to_governance_pda.sh
./grind_vanity_mint.sh [PREFIX] [COUNT] [ignore-case]
```