Configurable Setup
This guide goes through the customized setup.
To join the Citrea Devnet properly, we need to do two things: Running a Bitcoin Node in Signet mode that syncs with our custom Signet, and running a Citrea Node that syncs with the Citrea Devnet.
Why a Custom Bitcoin Signet?
We're running our custom Bitcoin Signet, because:
There's not enough testnet or signet BTC available to public.
There are deep reorgs happening on testnet.
Using our own signet (which has only block time modification of 1 minute compared to public signet), we can provide better bridge experience for testing purposes.
Step 1: Bitcoin Signet Setup
For this step, we've prepared a simple Docker container.
Step 1.1: Install Docker
Install Docker from here: https://docs.docker.com/get-docker/
Step 1.2: Setup Bitcoin Signet
Clone the Bitcoin Signet Container and navigate to the folder
Step 1.3: Build Signet Container
Step 1.4: Run Signet Container
Run it the Bitcoin client with the following command:
Citrea Signet Bitcoin should be running in your system now.
Step 2: Citrea Client Setup
Step 2.1: Install Rust
If you don't have it, install it from here.
Step 2.2: Clone the source code
Let's clone the repository from the latest tag:
Step 2.3: Edit rollup config file
Config for Citrea Devnet resides in the configs/devnet/
folder, configs/devnet/rollup_config.toml
file. There are several fields to modify, you can use the following if your Bitcoin Signet is working:
The above config will work fine with the Docker command above, so unless you have an expertise, we advise you to not to change them.
Optionally, you can also add db_max_open_files = 5000
under [storage]
section and type ulimit -n 5000
to the terminal to get a syncing speed boost. Please keep in mind them it may affect the overall performance of your system while syncing.
Step 2.4: Build the project
If all above works fine, build the project:
This step may take several minutes or more, depending on your hardware.
If you want to see proving (optional), remove the SKIP_GUEST_BUILD
flag and run the following first:
If you also want to see less logs, you can put RUST_LOG=info
to the beginning of the command.
Step 2.5: Run
Run the following to start running the Citrea binary.
If you have any questions, please don't hesitate visit our Discord and ask us in the #developer-chat channel.
Last updated