Skip to content

Commit a6aded8

Browse files
Merge pull request #1086 from multiversx/MX-16692-sovereign-docs-new-repo
Sovereign docs with new repo name
2 parents b735850 + f57979c commit a6aded8

File tree

4 files changed

+27
-27
lines changed

4 files changed

+27
-27
lines changed

docs/sovereign/distributed-setup.md

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,20 @@
44

55
This guide will help you deploy a public Sovereign Chain with real validators, enabling a truly decentralized setup. At its core, blockchain technology—and Sovereign Chains in particular—are designed to operate in a decentralized manner, powered by multiple independent validators. This ensures transparency, security, and resilience, as no single entity has control over the entire system. Unlike other guides we’ve provided, which focus on local setups, this solution emphasizes decentralization by involving multiple stakeholders in the validation process. By following the steps below, the owner can create the Sovereign Chain configuration for the network:
66

7-
### Step 1: Get the ```mx-chain-go``` Repository
7+
### Step 1: Get the `mx-chain-sovereign-go` Repository
88

99
Before proceeding, ensure that a **SSH key** for GitHub is configured on your machine.
1010

1111
1. Clone the GitHub repository:
1212
```bash
13-
git clone git@github.com:multiversx/mx-chain-go.git
13+
git clone git@github.com:multiversx/mx-chain-sovereign-go.git
1414
```
1515

16-
2. Checkout the specific Sovereign Chain SDK branch and navigate to testnet directory:
16+
2. Navigate to testnet directory:
1717
```bash
18-
cd mx-chain-go && git fetch && git checkout d699ffd && cd scripts/testnet
18+
cd mx-chain-sovereign-go/scripts/testnet
1919
```
2020

21-
:::info
22-
`d699ffd` is the commit hash we recommend to be used. If you want to use the latest version you can use the branch `feat/chain-go-sdk`.
23-
:::
24-
2521
### Step 2: Seeder Build
2622

2723
Build and run the seed node
@@ -81,7 +77,6 @@ _Note: Files marked with * will be discussed later in the document._
8177
8278
Sovereign configs can be found in `cmd/sovereignnode/config`
8379
```
84-
economics.toml
8580
enableEpochs.toml
8681
prefs.toml
8782
sovereignConfig.toml
@@ -197,7 +192,7 @@ Each validator should have:
197192
### Sovereign validator/observer node start
198193
199194
The following commands will start the sovereign validator node with the configuration from **config** folder and with the **validatorKey** (or multi key from **allValidatorsKey**).
200-
Adjust the flags as needed. You can find all the available flags in `/mx-chain-go/cmd/sovereignnode/flags.go`
195+
Adjust the flags as needed. You can find all the available flags in `/mx-chain-sovereign-go/cmd/sovereignnode/flags.go`
201196
202197
#### # single key
203198
```

docs/sovereign/local-setup.md

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,20 @@
44

55
This guide will help you deploy a full sovereign local network connected to MultiversX network. This includes all the smart contracts and dependent services needed. Follow these steps carefully to ensure a successful deployment.
66

7-
### Step 1: Get the `mx-chain-go` Repository
7+
### Step 1: Get the `mx-chain-sovereign-go` Repository
88

99
Before proceeding, ensure that a **SSH key** for GitHub is configured on your machine.
1010

1111
1. Clone the GitHub repository:
1212
```bash
13-
git clone git@github.com:multiversx/mx-chain-go.git
13+
git clone git@github.com:multiversx/mx-chain-sovereign-go.git
1414
```
1515

16-
2. Checkout the specific Sovereign Chain SDK branch and navigate to testnet directory:
16+
2. Navigate to testnet directory:
1717
```bash
18-
cd mx-chain-go && git fetch && git checkout d699ffd6a29513c573b1d212861f932e037d8f67 && cd scripts/testnet
18+
cd mx-chain-sovereign-go/scripts/testnet
1919
```
2020

21-
:::info
22-
`d699ffd6a29513c573b1d212861f932e037d8f67` is the commit hash we recommend to be used. If you want to use the latest version you can use the branch `feat/chain-go-sdk`.
23-
:::
24-
2521
3. Run the prerequisites script:
2622
```bash
2723
./prerequisites.sh
@@ -30,8 +26,8 @@ Before proceeding, ensure that a **SSH key** for GitHub is configured on your ma
3026
:::info
3127
The prerequisites script verifies and downloads the necessary packages to run the nodes and clones the required repositories:
3228

33-
- **mx-chain-deploy-go**: Initializes the configuration for the chain and deployment parameters.
34-
- **mx-chain-proxy-go**: Repository for the proxy.
29+
- **mx-chain-deploy-sovereign-go**: Initializes the configuration for the chain and deployment parameters.
30+
- **mx-chain-proxy-sovereign-go**: Repository for the sovereign proxy.
3531
- **mx-chain-sovereign-bridge-go**: Repository for the cross-chain service.
3632
- **mx-chain-tools-go**: Repository for updating elastic indices.
3733
:::
@@ -74,19 +70,27 @@ cd sovereignBridge
7470
WALLET="~/wallet.pem"
7571

7672
# Main Chain Constants
73+
MAIN_CHAIN_ELASTIC=https://testnet-index.multiversx.com
7774
PROXY = https://testnet-gateway.multiversx.com
7875
CHAIN_ID = T
76+
77+
# Native token
78+
NATIVE_ESDT_TICKER=SOV
79+
NATIVE_ESDT_NAME=SovToken
7980
```
8081

8182
:::note
8283
- **SOVEREIGN_DIRECTORY, TXS_OUTFILE_DIRECTORY, CONTRACTS_DIRECTORY** - represent the paths to the location where the deployment scripts will generate the outputs.
8384
- **WALLET** - should represent the wallet generated at Step 2.2.
85+
- **MAIN_CHAIN_ELASTIC** - represents the elasticsearch db from the main chain
8486
- **PROXY** - in this case, for the purpose of the test, the used proxy is the testnet one. Of course that the proper proxy should be used when deploying your own set of contracts depending on the development phase of your project.
8587
- **CHAIN_ID** - should represent the chain ID of the chain where the contracts are to be deployed.
8688
- **"1"** for Mainnet;
8789
- **"D"** for Devnet;
8890
- **"T"** for Testnet;
8991
- or use you own local network ID
92+
- **NATIVE_ESDT_TICKER** - represents the ticker from which the native esdt will be generated, and updated in configs
93+
- **NATIVE_ESDT_NAME** - represents the native esdt name
9094
:::
9195

9296
5. Source the script:
@@ -96,13 +100,14 @@ cd sovereignBridge
96100

97101
6. Deploy all cross-chain contracts on main chain and deploy Sovereign Chain with all required services:
98102
```bash
99-
deploySovereignWithCrossChainContracts
103+
deploySovereignWithCrossChainContracts sov
100104
```
101105

102106
:::info
103107
`deploySovereignWithCrossChainContracts` command will:
104108
- deploy all main chain smart contracts and update sovereign configs
105109
- deploy sovereign nodes and the main chain observer
110+
- `sov` is the prefix for ESDT tokens in the sovereign chain - it can be changed to any string consisting of 4 lowercase alphanumeric characters
106111
:::
107112

108113
### Step 3: Deploy services
@@ -113,7 +118,7 @@ ___
113118

114119
## Stop and clean local Sovereign Chain
115120

116-
1. Navigate to `mx-chain-go/scripts/testnet/sovereignBridge`.
121+
1. Navigate to `mx-chain-sovereign-go/scripts/testnet/sovereignBridge`.
117122
Source the script:
118123
```bash
119124
source script.sh
@@ -126,7 +131,7 @@ ___
126131

127132
## Upgrade and reset local Sovereign Chain
128133

129-
1. Navigate to `mx-chain-go/scripts/testnet/sovereignBridge`.
134+
1. Navigate to `mx-chain-sovereign-go/scripts/testnet/sovereignBridge`.
130135
Source the script:
131136
```bash
132137
source script.sh

docs/sovereign/standalone-evm.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ RunSmartContractCreate(input *ContractCreateInput) (*VMOutput, error)
1313
// RunSmartContractCall computes the result of a smart contract call and how the system must change after the execution
1414
RunSmartContractCall(input *ContractCallInput) (*VMOutput, error)
1515
```
16-
The **SCProcessor** from `mx-chain-go` prepares the input information for these functions. We aim to avoid modifying the **SCProcessor** itself; instead, all necessary abstractions will be implemented at the EVM level.
16+
The **SCProcessor** from `mx-chain-sovereign-go` prepares the input information for these functions. We aim to avoid modifying the **SCProcessor** itself; instead, all necessary abstractions will be implemented at the EVM level.
1717

1818
## 2. Input Preparation: EVMInputCreator
1919

@@ -35,7 +35,7 @@ To allow the EVM to function within MultiversX, we introduce a layer that bridge
3535

3636
### 3.2 Finalizing State Changes
3737

38-
After EVM execution finishes, we need to commit the resulting state changes to the blockchain. The EVM will use the `outputContext` component, which (together with the `storageContext`) tracks modified accounts and storages. It also creates the final `vmOutput`, which the `scProcessor` in `mx-chain-go` will then validate and apply to the blockchain (the trie) if everything is correct.
38+
After EVM execution finishes, we need to commit the resulting state changes to the blockchain. The EVM will use the `outputContext` component, which (together with the `storageContext`) tracks modified accounts and storages. It also creates the final `vmOutput`, which the `scProcessor` in `mx-chain-sovereign-go` will then validate and apply to the blockchain (the trie) if everything is correct.
3939

4040
## 4. Gas Metering
4141

docs/sovereign/token-management.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Main Chain -> Sovereign Chain
44

5-
1. Navigate to `/mx-chain-go/scripts/testnet/sovereignBridge`.
5+
1. Navigate to `/mx-chain-sovereign-go/scripts/testnet/sovereignBridge`.
66

77
Update the configuration file `config/configs.cfg` with the token settings you prefer. Example:
88
```ini
@@ -30,7 +30,7 @@
3030

3131
## Sovereign Chain -> Main Chain
3232

33-
1. Navigate to `/mx-chain-go/scripts/testnet/sovereignBridge`.
33+
1. Navigate to `/mx-chain-sovereign-go/scripts/testnet/sovereignBridge`.
3434

3535
Update the configuration file `config/configs.cfg` with the sovereign token settings you prefer. Example:
3636
```ini

0 commit comments

Comments
 (0)