diff options
Diffstat (limited to 'pkgs/development/ocaml-modules')
-rw-r--r-- | pkgs/development/ocaml-modules/curses/default.nix | 1 | ||||
-rw-r--r-- | pkgs/development/ocaml-modules/digestif/default.nix | 29 | ||||
-rw-r--r-- | pkgs/development/ocaml-modules/faraday/default.nix | 34 | ||||
-rw-r--r-- | pkgs/development/ocaml-modules/farfadet/default.nix | 34 | ||||
-rw-r--r-- | pkgs/development/ocaml-modules/lru/default.nix | 27 | ||||
-rw-r--r-- | pkgs/development/ocaml-modules/mysql/default.nix | 11 | ||||
-rw-r--r-- | pkgs/development/ocaml-modules/psq/default.nix | 29 |
7 files changed, 162 insertions, 3 deletions
diff --git a/pkgs/development/ocaml-modules/curses/default.nix b/pkgs/development/ocaml-modules/curses/default.nix index 834b810183ba..4fd75e7aac53 100644 --- a/pkgs/development/ocaml-modules/curses/default.nix +++ b/pkgs/development/ocaml-modules/curses/default.nix @@ -27,6 +27,5 @@ stdenv.mkDerivation rec { license = licenses.gpl2; maintainers = [ maintainers.volth ]; platforms = ocaml.meta.platforms or []; - broken = true; }; } diff --git a/pkgs/development/ocaml-modules/digestif/default.nix b/pkgs/development/ocaml-modules/digestif/default.nix new file mode 100644 index 000000000000..cf8b5335d594 --- /dev/null +++ b/pkgs/development/ocaml-modules/digestif/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }: + +if !stdenv.lib.versionAtLeast ocaml.version "4.3" +then throw "digestif is not available for OCaml ${ocaml.version}" +else + +stdenv.mkDerivation rec { + name = "ocaml${ocaml.version}-digestif-${version}"; + version = "0.5"; + + src = fetchurl { + url = "https://github.com/mirage/digestif/releases/download/v${version}/digestif-${version}.tbz"; + sha256 = "0fsyfi5ps17j3wjav5176gf6z3a5xcw9aqhcr1gml9n9ayfbkhrd"; + }; + + unpackCmd = "tar -xjf $curSrc"; + + buildInputs = [ ocaml findlib ocamlbuild topkg ]; + + inherit (topkg) buildPhase installPhase; + + meta = { + description = "Simple hash algorithms in OCaml"; + homepage = "https://github.com/mirage/digestif"; + license = stdenv.lib.licenses.mit; + maintainers = [ stdenv.lib.maintainers.vbgl ]; + inherit (ocaml.meta) platforms; + }; +} diff --git a/pkgs/development/ocaml-modules/faraday/default.nix b/pkgs/development/ocaml-modules/faraday/default.nix new file mode 100644 index 000000000000..8f30ec519777 --- /dev/null +++ b/pkgs/development/ocaml-modules/faraday/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder, alcotest }: + +if !stdenv.lib.versionAtLeast ocaml.version "4.02" +then throw "faraday is not available for OCaml ${ocaml.version}" +else + +stdenv.mkDerivation rec { + name = "ocaml${ocaml.version}-faraday-${version}"; + version = "0.5.0"; + + src = fetchFromGitHub { + owner = "inhabitedtype"; + repo = "faraday"; + rev = version; + sha256 = "1kql0il1frsbx6rvwqd7ahi4m14ik6la5an6c2w4x7k00ndm4d7n"; + }; + + buildInputs = [ ocaml findlib jbuilder alcotest ]; + + buildPhase = "jbuilder build -p faraday"; + + doCheck = true; + checkPhase = "jbuilder runtest"; + + inherit (jbuilder) installPhase; + + meta = { + description = "Serialization library built for speed and memory efficiency"; + license = stdenv.lib.licenses.bsd3; + maintainers = [ stdenv.lib.maintainers.vbgl ]; + inherit (src.meta) homepage; + inherit (ocaml.meta) platforms; + }; +} diff --git a/pkgs/development/ocaml-modules/farfadet/default.nix b/pkgs/development/ocaml-modules/farfadet/default.nix new file mode 100644 index 000000000000..080cc74998df --- /dev/null +++ b/pkgs/development/ocaml-modules/farfadet/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg +, faraday +}: + +if !stdenv.lib.versionAtLeast ocaml.version "4.3" +then throw "farfadet is not available for OCaml ${ocaml.version}" +else + +stdenv.mkDerivation rec { + name = "ocaml${ocaml.version}-farfadet-${version}"; + version = "0.2"; + + src = fetchurl { + url = "https://github.com/oklm-wsh/Farfadet/releases/download/v${version}/farfadet-${version}.tbz"; + sha256 = "06wvd57c8khpq0c2hvm15zng269zvabsw1lcaqphqdcckl67nsxr"; + }; + + unpackCmd = "tar -xjf $curSrc"; + + buildInputs = [ ocaml findlib ocamlbuild topkg ]; + + propagatedBuildInputs = [ faraday ]; + + inherit (topkg) buildPhase installPhase; + + meta = { + description = "A printf-like for Faraday library"; + homepage = "https://github.com/oklm-wsh/Farfadet"; + license = stdenv.lib.licenses.mit; + maintainers = [ stdenv.lib.maintainers.vbgl ]; + inherit (ocaml.meta) platforms; + }; +} + diff --git a/pkgs/development/ocaml-modules/lru/default.nix b/pkgs/development/ocaml-modules/lru/default.nix new file mode 100644 index 000000000000..3e474c5653a7 --- /dev/null +++ b/pkgs/development/ocaml-modules/lru/default.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, psq }: + +stdenv.mkDerivation rec { + name = "ocaml${ocaml.version}-lru-${version}"; + version = "0.2.0"; + + src = fetchurl { + url = "https://github.com/pqwy/lru/releases/download/v${version}/lru-${version}.tbz"; + sha256 = "0bd7js9rrma1fjjjjc3fgr9l5fjbhgihx2nsaf96g2b35iiaimd0"; + }; + + unpackCmd = "tar -xjf $curSrc"; + + buildInputs = [ ocaml findlib ocamlbuild topkg ]; + + propagatedBuildInputs = [ psq ]; + + inherit (topkg) buildPhase installPhase; + + meta = { + homepage = "https://github.com/pqwy/lru"; + description = "Scalable LRU caches for OCaml"; + maintainers = [ stdenv.lib.maintainers.vbgl ]; + license = stdenv.lib.licenses.isc; + inherit (ocaml.meta) platforms; + }; +} diff --git a/pkgs/development/ocaml-modules/mysql/default.nix b/pkgs/development/ocaml-modules/mysql/default.nix index 3fa8e9d46b40..5482d7ac87cd 100644 --- a/pkgs/development/ocaml-modules/mysql/default.nix +++ b/pkgs/development/ocaml-modules/mysql/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, ocaml, findlib, mysql }: +{ stdenv, fetchurl, fetchpatch, ocaml, findlib, mysql, openssl }: # TODO: la versione stabile da' un errore di compilazione dovuto a # qualche cambiamento negli header .h @@ -26,7 +26,14 @@ stdenv.mkDerivation rec { createFindlibDestdir = true; - propagatedBuildInputs = [ mysql.client ]; + propagatedBuildInputs = [ mysql.connector-c ]; + + patches = [ + (fetchpatch { + url = "https://github.com/ygrek/ocaml-mysql/compare/v1.2.1...d6d1b3b262ae2cf493ef56f1dd7afcf663a70a26.patch"; + sha256 = "0018s2wcrvbsw9yaqmwq500qmikwffrgdp5xg9b8v7ixhd4gi6hn"; + }) + ]; meta = { homepage = http://ocaml-mysql.forge.ocamlcore.org; diff --git a/pkgs/development/ocaml-modules/psq/default.nix b/pkgs/development/ocaml-modules/psq/default.nix new file mode 100644 index 000000000000..fc3fa81a02a9 --- /dev/null +++ b/pkgs/development/ocaml-modules/psq/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }: + +if !stdenv.lib.versionAtLeast ocaml.version "4.02" +then throw "psq is not available for OCaml ${ocaml.version}" +else + +stdenv.mkDerivation rec { + name = "ocaml${ocaml.version}-psq-${version}"; + version = "0.1.0"; + + src = fetchurl { + url = "https://github.com/pqwy/psq/releases/download/v${version}/psq-${version}.tbz"; + sha256 = "08ghgdivbjrxnaqc3hsb69mr9s2ql5ds0fb97b7z6zimzqibz6lp"; + }; + + unpackCmd = "tar -xjf $curSrc"; + + buildInputs = [ ocaml findlib ocamlbuild topkg ]; + + inherit (topkg) buildPhase installPhase; + + meta = { + description = "Functional Priority Search Queues for OCaml"; + homepage = "https://github.com/pqwy/psq"; + maintainers = [ stdenv.lib.maintainers.vbgl ]; + license = stdenv.lib.licenses.isc; + inherit (ocaml.meta) platforms; + }; +} |