diff options
Diffstat (limited to 'pkgs/applications/blockchains/polkadot/default.nix')
-rw-r--r-- | pkgs/applications/blockchains/polkadot/default.nix | 44 |
1 files changed, 25 insertions, 19 deletions
diff --git a/pkgs/applications/blockchains/polkadot/default.nix b/pkgs/applications/blockchains/polkadot/default.nix index a919a305419..c55d78b0176 100644 --- a/pkgs/applications/blockchains/polkadot/default.nix +++ b/pkgs/applications/blockchains/polkadot/default.nix @@ -1,37 +1,43 @@ -{ stdenv +{ clang , fetchFromGitHub +, lib +, llvmPackages +, protobuf , rustPlatform -, pkgconfig -, openssl }: - rustPlatform.buildRustPackage rec { pname = "polkadot"; - version = "0.2.17"; + version = "0.8.24"; src = fetchFromGitHub { owner = "paritytech"; - # N.B. In 2018, the thing that was "polkadot" was split off into its own - # repo, so if this package is ever updated it should be changed to - # paritytech/polkadot, as per comment here: - # https://github.com/paritytech/polkadot#note - repo = "substrate"; - rev = "19f4f4d4df3bb266086b4e488739f73d3d5e588c"; - sha256 = "0v7g03rbml2afw0splmyjh9nqpjg0ldjw09hyc0jqd3qlhgxiiyj"; + repo = "polkadot"; + rev = "v${version}"; + sha256 = "15q5scajxrf82k8nxysah8cs3yl2p09xzzwlkxvjkcn08r3zhig6"; }; - cargoSha256 = "1h5v7c7xi2r2wzh1pj6xidrg7dx23w3rjm88mggpq7574arijk4i"; + cargoSha256 = "0qp20g5c15qzp2n1nzwqbnn2wx6c905vh652nvkm7sb1d901iiqi"; + + cargoPatches = [ ./substrate-wasm-builder-runner.patch ]; + + nativeBuildInputs = [ clang ]; + + LIBCLANG_PATH = "${llvmPackages.libclang}/lib"; + PROTOC = "${protobuf}/bin/protoc"; + + # NOTE: We don't build the WASM runtimes since this would require a more + # complicated rust environment setup. The resulting binary is still useful for + # live networks since those just use the WASM blob from the network chainspec. + BUILD_DUMMY_WASM_BINARY = 1; - buildInputs = [ pkgconfig openssl openssl.dev ]; + # We can't run the test suite since we didn't compile the WASM runtimes. + doCheck = false; - meta = with stdenv.lib; { + meta = with lib; { description = "Polkadot Node Implementation"; homepage = "https://polkadot.network"; license = licenses.gpl3; - maintainers = [ maintainers.akru ]; + maintainers = with maintainers; [ akru andresilva ]; platforms = platforms.linux; - # Last attempt at building this was on v0.7.22 - # https://github.com/paritytech/polkadot/releases - broken = true; }; } |