1{
2 lib,
3 buildDunePackage,
4 fetchFromGitLab,
5 zarith,
6 zarith_stubs_js ? null,
7 integers_stubs_js,
8 integers,
9 hex,
10 alcotest,
11}:
12
13buildDunePackage rec {
14 pname = "bls12-381";
15 version = "6.1.0";
16 src = fetchFromGitLab {
17 owner = "nomadic-labs";
18 repo = "cryptography/ocaml-bls12-381";
19 rev = version;
20 hash = "sha256-z2ZSOrXgm+XjdrY91vqxXSKhA0DyJz6JkkNljDZznX8=";
21 };
22
23 minimalOCamlVersion = "4.08";
24
25 postPatch = ''
26 patchShebangs ./src/*.sh
27 '';
28
29 propagatedBuildInputs = [
30 zarith
31 zarith_stubs_js
32 integers_stubs_js
33 hex
34 integers
35 ];
36
37 checkInputs = [
38 alcotest
39 ];
40
41 doCheck = true;
42
43 meta = {
44 homepage = "https://nomadic-labs.gitlab.io/cryptography/ocaml-bls12-381/bls12-381/";
45 description = "Implementation of BLS12-381 and some cryptographic primitives built on top of it";
46 license = lib.licenses.mit;
47 maintainers = [ lib.maintainers.ulrikstrid ];
48 };
49}