- Install
Git - Install
Node.js 16 LTS - Download latest
ckb (Portable), tested withckb 0.109.0 - Extract the
ckbcompressed folder and renamed it to~/ckb
This is section takes material from both Nervos devchain guide and Ian instructions.
From within ~/ckb_dev:
-
Copy the
datadirectory from an existing ckb mainnet installation tockb_dev. -
Download the corresponding chain spec file based on mainnet.
-
Initialize dev chain and import mainnet chain spec:
ckb init -c dev --import-spec /path/to/downloaded/mainnet.toml --force- In the
specs/dev.tomlfile change the first line to:
name = "ckb_dev"- In the
specs/dev.tomlfile under the[params]section set:
[params]
genesis_epoch_length = 1743 # keep genesis_epoch_length the same as original file
# Other parameters...
initial_primary_epoch_reward = 1_917_808_21917808
secondary_epoch_reward = 613_698_63013698
max_block_cycles = 10_000_000_000
cellbase_maturity = 0
primary_epoch_reward_halving_interval = 8760
epoch_duration_target = 2 # instead of 14400
permanent_difficulty_in_dummy = true- In the
specs/dev.tomlfile under the[pow]section set:
[pow]
func = "Dummy"- In the
ckb.tomlfile under the[block_assembler]section set:
[block_assembler]
code_hash = "0x9bd7e06f3ecf4be0f2fcd2188b23f1b9fcc88e5d4b65a8637b17723bbda3cce8"
args = "0xc8328aabcd9b9e8e64fbc566c4385c3bdeb219d7" # ckt1...gwga account
hash_type = "type"
message = "0x"- In the
ckb.tomlfile under the[logger]section set:
[logger]
filter = "info,ckb-script=debug"# instead of "info"
# Other parameters...- In the
ckb-miner.tomlfile under the[[miner.workers]]section set:
[[miner.workers]]
# Other parameters...
value = 200 # instead of 5000- Activate the new spec for the first use by running the following command for a few seconds:
ckb run --skip-spec-check --overwrite-spec- In a new terminal start ckb node and miner:
(trap 'kill -INT 0' SIGINT; cd ~/ckb_dev/; ./ckb run --indexer & sleep 1 && ./ckb miner)- Download this repo in a folder of your choice:
git clone https://github.com/dckb-rescuer/v1-interface.git- Enter into the repo:
cd v1-interface- Install dependencies:
npm i- Run bot demo:
npm run start