diff --git a/pkgs/default.nix b/pkgs/default.nix index 0f816ac3..1402c42b 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -69,6 +69,10 @@ }; slither = callPackage ./slither {}; snarkjs = callPackage ./snarkjs {}; + ssv-dkg = callPackage2311 ./ssv-dkg { + bls = callPackage2311 ./bls {}; + mcl = callPackage2311 ./mcl {}; + }; ssvnode = callPackage2311 ./ssvnode { bls = callPackage2311 ./bls {}; mcl = callPackage2311 ./mcl {}; @@ -138,6 +142,7 @@ sedge.bin = "sedge"; slither.bin = "slither"; snarkjs.bin = "snarkjs"; + ssv-dkg.bin = "ssv-dkg"; ssvnode.bin = "ssvnode"; staking-deposit-cli.bin = "deposit"; teku.bin = "teku"; diff --git a/pkgs/ssv-dkg/default.nix b/pkgs/ssv-dkg/default.nix new file mode 100644 index 00000000..1ac050b1 --- /dev/null +++ b/pkgs/ssv-dkg/default.nix @@ -0,0 +1,34 @@ +{ + bls, + buildGo120Module, + fetchFromGitHub, + lib, + mcl, +}: +buildGo120Module rec { + pname = "ssv-dkg"; + version = "2.1.0"; + + src = fetchFromGitHub { + owner = "ssvlabs"; + repo = pname; + rev = "v${version}"; + hash = "sha256-PXqjLvX9ewYtrOb3TDeNfuMxHamS1b6fh61FLAV2srE="; + }; + + vendorHash = "sha256-NtZRe8ldkYU2TXZQMEJ0bZyH44ZOknNdZON3cZhMOmg="; + + buildInputs = [bls mcl]; + + subPackages = ["cmd/ssv-dkg"]; + + ldflags = ["-X main.Version=v${version}"]; + + meta = with lib; { + description = "The ssv-dkg tool enable operators to participate in ceremonies to generate distributed validator keys for Ethereum stakers."; + homepage = "https://github.com/ssvlabs/ssv-dkg"; + license = with licenses; [gpl3Plus]; + mainProgram = "ssv-dkg"; + platforms = ["x86_64-linux" "aarch64-darwin" "aarch64-linux"]; + }; +}