1{ stdenv
2, lib
3, fetchFromGitHub
4, buildPythonPackage
5, rustPlatform
6, pythonOlder
7, openssl
8, perl
9}:
10
11buildPythonPackage rec {
12 pname = "clvm_rs";
13 version = "0.3.0";
14 disabled = pythonOlder "3.7";
15
16 src = fetchFromGitHub {
17 owner = "Chia-Network";
18 repo = "clvm_rs";
19 rev = version;
20 hash = "sha256-DJviuIBJg+MF0NvmdeWK31nV+q4UZCRdmdbEAJqwXXg=";
21 };
22
23 cargoDeps = rustPlatform.fetchCargoTarball {
24 inherit src;
25 name = "${pname}-${version}";
26 hash = "sha256-bgXUSm3M8J7E2ohPjPIimHJvz1ivWrsliKZlgchOdhQ=";
27 };
28
29 format = "pyproject";
30
31 buildAndTestSubdir = "wheel";
32
33 nativeBuildInputs = [
34 perl # used by openssl-sys to configure
35 ] ++ (with rustPlatform; [
36 cargoSetupHook
37 maturinBuildHook
38 ]);
39
40 buildInputs = [ openssl ];
41
42 pythonImportsCheck = [ "clvm_rs" ];
43
44 meta = with lib; {
45 broken = stdenv.isDarwin;
46 homepage = "https://chialisp.com/";
47 description = "Rust implementation of clvm";
48 license = licenses.asl20;
49 maintainers = teams.chia.members;
50 };
51}