3. Prepare Genesis
Create and Submit Genesis Transaction and Peer ID
1. Get the latest code
# Go version 1.23.2 is required
git clone --branch v0.8.0 --depth 1 git@repos.gayadeed.it:d-foundation/protocol.git
cd protocol
make build
# or install sudo mv ./dchain /usr/local/bin
# check version to be the below:
dchain version --long
# ...
commit: 4c5f6dcd3d729d8fa92a770fa9dddd03dd3c9c05
cosmos_sdk_version: v0.53.4-dchain-v2
go: go version go1.23.8 linux/amd64
name: dchain
server_name: dchain
version: HEAD-4c5f6dcd3d729d8fa92a770fa9dddd03dd3c9c05
1. Create and Submit Genesis Trasaction
After the pre-genesis file has been prepared, you can now create the genesis transaction.
The pre-genesis.json
file can be found in the
D-Foundation Networks repo.
Copy the file into your node's home directory
2. Create genesis transaction keys
dchain genesis gentx <key-name> 1000000000000udt \
--chain-id="test-theodoric-2" \
--moniker=<moniker>\
--identity="<keybase-identity>" \
--website:"" \
--commission-max-change-rate="0.01" \
--commission-max-rate="0.1" \
--commission-rate="0.05" \
--min-self-delegation="1000000000000" \
--details="" \
--security-contact="" \
--node-id=$(dchain cometbft show-node-id)
which should result in a file written to Genesis transaction written to "DCHAIN_HOME/config/gentx/gentx-<>.json"
Upload this file to the Networks repo under
testnets/test-theodoric-2/gentx
.
Please also add peer information to testnets/test-theodoric-2/peers
. It should be in the form of
$(dchain comet show-node-id)@<ip>:<port>
.