Skip to content

Commit bf879a8

Browse files
committed
feat(reth): add reth execution client
1 parent 4a47712 commit bf879a8

File tree

2 files changed

+47
-1
lines changed

2 files changed

+47
-1
lines changed
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
{
2+
clang,
3+
lib,
4+
llvmPackages,
5+
fetchFromGitHub,
6+
rustPlatform,
7+
}:
8+
rustPlatform.buildRustPackage rec {
9+
pname = "reth";
10+
version = "0.1.0-alpha.2";
11+
12+
src = fetchFromGitHub {
13+
owner = "paradigmxyz";
14+
repo = pname;
15+
rev = "v${version}";
16+
hash = "sha256-+kGhVL7sIbd3WBaRA6XMTAPMCkxRTRacQKFM8oOCqg0=";
17+
};
18+
19+
cargoLock = {
20+
lockFile = "${src}/Cargo.lock";
21+
allowBuiltinFetchGit = true;
22+
outputHashes = {
23+
"boa_ast-0.16.0" = "sha256-M4tDrKM+cR3Xc7qZQ5uHw7lsMEP6OG/VvyHC2oW0BrI=";
24+
"discv5-0.3.0" = "sha256-Z1UZY47C2qtEr4WrOEiWynzsiwggOOEy9slZO5n97BM=";
25+
"igd-0.12.0" = "sha256-wjk/VIddbuoNFljasH5zsHa2JWiOuSW4VlcUS+ed5YY=";
26+
"revm-3.3.0" = "sha256-jmDzHpbWTXxkv+ATAqYznvcQy8V3EF2XVsCyLaH4p0o=";
27+
"ruint-1.8.0" = "sha256-OzIUivkNwtox7cMdqv6tkCMsJsGyVeTvfyMr5SZhuPg=";
28+
};
29+
};
30+
31+
nativeBuildInputs = [clang];
32+
33+
# Needed by libmdx
34+
LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
35+
36+
meta = {
37+
description = "Modular, contributor-friendly and blazing-fast implementation of the Ethereum protocol, in Rust";
38+
homepage = "https://github.com/paradigmxyz/reth";
39+
license = [lib.licenses.mit lib.licenses.asl20];
40+
mainProgram = "reth";
41+
platforms = ["x86_64-linux"];
42+
};
43+
}

packages/default.nix

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,12 @@
1111
self',
1212
pkgs,
1313
system,
14+
inputs',
1415
...
1516
}: let
1617
inherit (pkgs) callPackage;
1718
inherit (lib.flake) platformPkgs platformApps;
18-
#callPackageUnstable = inputs'.nixpkgs-unstable.legacyPackages.callPackage;
19+
callPackageUnstable = inputs'.nixpkgs-unstable.legacyPackages.callPackage;
1920
in {
2021
packages = platformPkgs system rec {
2122
# Consensus Clients
@@ -30,6 +31,7 @@
3031
geth = callPackage ./clients/execution/geth {};
3132
geth-sealer = callPackage ./clients/execution/geth-sealer {};
3233
nethermind = callPackage ./clients/execution/nethermind {};
34+
reth = callPackageUnstable ./clients/execution/reth {};
3335

3436
# Signers
3537
web3signer = callPackage ./signers/web3signer {};
@@ -96,6 +98,7 @@
9698
# execution clients
9799
besu.bin = "besu";
98100
erigon.bin = "erigon";
101+
reth.bin = "reth";
99102

100103
geth = {
101104
bin = "geth";

0 commit comments

Comments
 (0)