A repository for building Geth and other EVM execution clients with native ERC-4337 tracers.
Client | Release version | Pre-built docker image | Build binary from source |
---|---|---|---|
go-ethereum | v1.13.15 |
✅ | ✅ |
bor (Polygon PoS) | v1.4.1 |
❌ | ✅ |
nitro (Arbitrum) | v3.2.1 |
✅ | ❌ |
op-geth (Optimism) | v1.101408.0 |
✅ | ❌ |
base-node (Base) | v0.10.2 |
✅ | ❌ |
bsc (Binance Smart Chain) | v1.4.15 |
❌ | ✅ |
avalanchego (Avax) | v1.11.8 |
❌ | ✅ |
Pre-built docker images are available at the following repositories. The tags correlate to the execution client's commit ref that the tracer was compiled with.
Alternatively, you can build all binaries from source by cloning this repository.
Note that this repository uses git submodules to build execution clients based on a pinned release version. Make sure to include the --recurse-submodules
flag in your git clone command.
git clone --recurse-submodules https://github.com/stackup-wallet/erc-4337-execution-client-builder.git
Most clients will require the following system dependencies to successfully compile:
- Go 1.21
Use the following scripts to build a client from source with native ERC-4337 tracers included.
$CLIENT
can be replaced with one of the currently supported execution clients:
go-ethereum
bor
nitro
op-geth
base-node
bsc
avalanchego
./build_scripts/$CLIENT.sh
All binaries will be available in the ./builds/$CLIENT
directory.
See the documentation on Geth's custom EVM tracers for details on setting up a dev environment for tracer iterations.
Distributed under the GPL-3.0 License. See LICENSE for more information.
Feel free to direct any technical related questions to the dev-hub
channel in the Stackup Discord.