Building and running from source
Silius is built in Rust. First install Rust, then clone the repository and enter the directory.
At the moment, the recommended version of Rust is 1.71.1.
Build from source
Before you can build the project, you need some prerequisites installed:
libclang-dev
,pkg-config
andlibssl-dev
on Debian/Ubuntu.Ethereum execution client JSON-RPC API with enabled
debug_traceCall
. For production, you can use Geth or Erigon. For testing, we are using Geth dev mode (tested with v1.12.0); so you need to install Geth for running tests.solc
>=0.8.12.cargo-sort
andcargo-udeps
.
There are also some other third-party dependencies you need to setup (mainly ERC-4337 related smart contracts). These commands will clone the account abstraction repos and compile the smart contracts.
After everything is setup, you can start the build:
Running
You can now run the Silius with the following command:
Some of the most commonly used CLI params are:
eth-client-address
: HTTP or WS address to the Ethereum execution client (client should havedebug
RPC interface enabled, if not you need to run the bundler in unsafe mode with--uopool-mode unsafe
)mnemonic-file
: path to the seed phrase of the bundler's accountdatadir
: path to the folder where db file will be saved (in case the storage is database)beneficiary
: address to where the gas left is sententry-points
: address of the ERC-4337 singleton entry point smart contracthttp
: enable HTTP JSON-RPC endpointsws
: enablr WS JSON-RPC endpointseth-client-proxy-address
: HTTP address to the Ethereum execution client, where to forward the standard calls to the execution client
Last updated