audiobookshelf: 2.18.1 -> 2.19.0 (#378967)
[NixPkgs.git] / pkgs / by-name / er / erigon / package.nix
blob5fcc6673d107025c6396bab9c9dc032489bdb617
2   lib,
3   buildGoModule,
4   fetchFromGitHub,
5   nix-update-script,
6 }:
8 let
9   pname = "erigon";
10   version = "2.61.0";
12 buildGoModule {
13   inherit pname version;
15   src = fetchFromGitHub {
16     owner = "ledgerwatch";
17     repo = pname;
18     rev = "v${version}";
19     hash = "sha256-B9FDGBx5ac1v0PqVK/2LhDH2seRthZxtaGu3G9flo0A=";
20     fetchSubmodules = true;
21   };
23   vendorHash = "sha256-bGVHIrICYWyHPgWWgEAIT+J/IIPjcWqTHeuqbT6lung=";
24   proxyVendor = true;
26   # Build errors in mdbx when format hardening is enabled:
27   #   cc1: error: '-Wformat-security' ignored without '-Wformat' [-Werror=format-security]
28   hardeningDisable = [ "format" ];
30   # Fix error: 'Caught SIGILL in blst_cgo_init'
31   # https://github.com/bnb-chain/bsc/issues/1521
32   CGO_CFLAGS = "-O -D__BLST_PORTABLE__";
33   CGO_CFLAGS_ALLOW = "-O -D__BLST_PORTABLE__";
35   subPackages = [
36     "cmd/erigon"
37     "cmd/evm"
38     "cmd/rpcdaemon"
39     "cmd/rlpdump"
40   ];
42   # Matches the tags to upstream's release build configuration
43   # https://github.com/ledgerwatch/erigon/blob/0c0dbe5f3a81cf8f16da8e4838312ab80ebe5302/.goreleaser.yml
44   #
45   # Enabling silkworm also breaks the build as it requires dynamically linked libraries.
46   # If we need it in the future, we should consider packaging silkworm and silkworm-go
47   # as depenedencies explicitly.
48   tags = [
49     "nosqlite"
50     "noboltdb"
51     "nosilkworm"
52   ];
54   passthru.updateScript = nix-update-script { };
56   meta = with lib; {
57     homepage = "https://github.com/ledgerwatch/erigon/";
58     description = "Ethereum node implementation focused on scalability and modularity";
59     license = with licenses; [
60       lgpl3Plus
61       gpl3Plus
62     ];
63     maintainers = with maintainers; [
64       d-xo
65       happysalada
66     ];
67   };