ocamlPackages: swap throws to meta.broken
throws no longer work with the current ci we have in nixpkgs
This commit is contained in:
@@ -20,48 +20,47 @@
|
||||
...
|
||||
}@args:
|
||||
|
||||
if args ? minimumOCamlVersion && lib.versionOlder ocaml.version args.minimumOCamlVersion then
|
||||
throw "${pname}-${version} is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation (
|
||||
args
|
||||
// {
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
|
||||
stdenv.mkDerivation (
|
||||
args
|
||||
// {
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
ocaml_oasis
|
||||
]
|
||||
++ nativeBuildInputs;
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
ocaml_oasis
|
||||
]
|
||||
++ nativeBuildInputs;
|
||||
inherit createFindlibDestdir;
|
||||
inherit dontStrip;
|
||||
|
||||
inherit createFindlibDestdir;
|
||||
inherit dontStrip;
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
oasis setup
|
||||
ocaml setup.ml -configure --prefix $OCAMLFIND_DESTDIR --exec-prefix $out
|
||||
ocaml setup.ml -build
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
oasis setup
|
||||
ocaml setup.ml -configure --prefix $OCAMLFIND_DESTDIR --exec-prefix $out
|
||||
ocaml setup.ml -build
|
||||
runHook postBuild
|
||||
'';
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
ocaml setup.ml -test
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
ocaml setup.ml -test
|
||||
runHook postCheck
|
||||
'';
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out
|
||||
ocaml setup.ml -install
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out
|
||||
ocaml setup.ml -install
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
}
|
||||
)
|
||||
meta = args.meta // {
|
||||
broken = args ? minimumOCamlVersion && lib.versionOlder ocaml.version args.minimumOCamlVersion;
|
||||
};
|
||||
}
|
||||
)
|
||||
|
||||
@@ -16,83 +16,80 @@
|
||||
autoreconfHook,
|
||||
}:
|
||||
|
||||
lib.throwIf (buildOcamlBindings && !lib.versionAtLeast ocamlPackages.ocaml.version "4.05")
|
||||
"OCaml binding are not available for OCaml < 4.05"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libnbd";
|
||||
version = "1.22.1";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "libnbd";
|
||||
version = "1.22.1";
|
||||
src = fetchurl {
|
||||
url = "https://download.libguestfs.org/libnbd/${lib.versions.majorMinor version}-stable/${pname}-${version}.tar.gz";
|
||||
hash = "sha256-9oVJrU2YcXGnKaDf8SoHKGtG7vpH5355/DKIiYrchHI=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.libguestfs.org/libnbd/${lib.versions.majorMinor version}-stable/${pname}-${version}.tar.gz";
|
||||
hash = "sha256-9oVJrU2YcXGnKaDf8SoHKGtG7vpH5355/DKIiYrchHI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
bash-completion
|
||||
pkg-config
|
||||
perl
|
||||
autoreconfHook
|
||||
nativeBuildInputs = [
|
||||
bash-completion
|
||||
pkg-config
|
||||
perl
|
||||
autoreconfHook
|
||||
]
|
||||
++ lib.optionals buildPythonBindings [ python3 ]
|
||||
++ lib.optionals buildOcamlBindings (
|
||||
with ocamlPackages;
|
||||
[
|
||||
findlib
|
||||
ocaml
|
||||
]
|
||||
++ lib.optionals buildPythonBindings [ python3 ]
|
||||
++ lib.optionals buildOcamlBindings (
|
||||
with ocamlPackages;
|
||||
[
|
||||
findlib
|
||||
ocaml
|
||||
]
|
||||
);
|
||||
);
|
||||
|
||||
buildInputs = [
|
||||
fuse
|
||||
fuse3
|
||||
gnutls
|
||||
libxml2
|
||||
];
|
||||
buildInputs = [
|
||||
fuse
|
||||
fuse3
|
||||
gnutls
|
||||
libxml2
|
||||
];
|
||||
|
||||
postPatch = lib.optionalString buildOcamlBindings ''
|
||||
substituteInPlace ocaml/Makefile.am \
|
||||
--replace-fail '$(DESTDIR)$(OCAMLLIB)' '$(out)/lib/ocaml/${ocamlPackages.ocaml.version}/site-lib'
|
||||
postPatch = lib.optionalString buildOcamlBindings ''
|
||||
substituteInPlace ocaml/Makefile.am \
|
||||
--replace-fail '$(DESTDIR)$(OCAMLLIB)' '$(out)/lib/ocaml/${ocamlPackages.ocaml.version}/site-lib'
|
||||
'';
|
||||
|
||||
configureFlags = lib.optionals buildPythonBindings [
|
||||
"--with-python-installdir=${placeholder "out"}/${python3.sitePackages}"
|
||||
];
|
||||
|
||||
installFlags = [ "bashcompdir=$(out)/share/bash-completion/completions" ];
|
||||
|
||||
postInstall = lib.optionalString buildPythonBindings ''
|
||||
LIBNBD_PYTHON_METADATA='${placeholder "out"}/${python3.sitePackages}/nbd-${version}.dist-info/METADATA'
|
||||
install -Dm644 -T ${./libnbd-metadata} $LIBNBD_PYTHON_METADATA
|
||||
substituteAllInPlace $LIBNBD_PYTHON_METADATA
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://gitlab.com/nbdkit/libnbd";
|
||||
description = "Network Block Device client library in userspace";
|
||||
longDescription = ''
|
||||
NBD — Network Block Device — is a protocol for accessing Block Devices
|
||||
(hard disks and disk-like things) over a Network. This is the NBD client
|
||||
library in userspace, a simple library for writing NBD clients.
|
||||
|
||||
The key features are:
|
||||
- Synchronous API for ease of use.
|
||||
- Asynchronous API for writing non-blocking, multithreaded clients. You
|
||||
can mix both APIs freely.
|
||||
- High performance.
|
||||
- Minimal dependencies for the basic library.
|
||||
- Well-documented, stable API.
|
||||
- Bindings in several programming languages.
|
||||
- Shell (nbdsh) for command line and scripting.
|
||||
'';
|
||||
|
||||
configureFlags = lib.optionals buildPythonBindings [
|
||||
"--with-python-installdir=${placeholder "out"}/${python3.sitePackages}"
|
||||
license = with licenses; lgpl21Plus;
|
||||
maintainers = with maintainers; [
|
||||
humancalico
|
||||
];
|
||||
|
||||
installFlags = [ "bashcompdir=$(out)/share/bash-completion/completions" ];
|
||||
|
||||
postInstall = lib.optionalString buildPythonBindings ''
|
||||
LIBNBD_PYTHON_METADATA='${placeholder "out"}/${python3.sitePackages}/nbd-${version}.dist-info/METADATA'
|
||||
install -Dm644 -T ${./libnbd-metadata} $LIBNBD_PYTHON_METADATA
|
||||
substituteAllInPlace $LIBNBD_PYTHON_METADATA
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://gitlab.com/nbdkit/libnbd";
|
||||
description = "Network Block Device client library in userspace";
|
||||
longDescription = ''
|
||||
NBD — Network Block Device — is a protocol for accessing Block Devices
|
||||
(hard disks and disk-like things) over a Network. This is the NBD client
|
||||
library in userspace, a simple library for writing NBD clients.
|
||||
|
||||
The key features are:
|
||||
- Synchronous API for ease of use.
|
||||
- Asynchronous API for writing non-blocking, multithreaded clients. You
|
||||
can mix both APIs freely.
|
||||
- High performance.
|
||||
- Minimal dependencies for the basic library.
|
||||
- Well-documented, stable API.
|
||||
- Bindings in several programming languages.
|
||||
- Shell (nbdsh) for command line and scripting.
|
||||
'';
|
||||
license = with licenses; lgpl21Plus;
|
||||
maintainers = with maintainers; [
|
||||
humancalico
|
||||
];
|
||||
platforms = with platforms; linux;
|
||||
};
|
||||
}
|
||||
platforms = with platforms; linux;
|
||||
broken = buildOcamlBindings && !lib.versionAtLeast ocamlPackages.ocaml.version "4.05";
|
||||
};
|
||||
}
|
||||
# TODO: package the 1.6-stable version too
|
||||
# TODO: git version needs ocaml
|
||||
# TODO: bindings for go
|
||||
|
||||
@@ -15,69 +15,66 @@
|
||||
functory,
|
||||
}:
|
||||
|
||||
if lib.versionAtLeast ocaml.version "4.06" then
|
||||
throw "mezzo is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
let
|
||||
check-ocaml-version = lib.versionAtLeast (lib.getVersion ocaml);
|
||||
in
|
||||
|
||||
let
|
||||
check-ocaml-version = lib.versionAtLeast (lib.getVersion ocaml);
|
||||
in
|
||||
assert check-ocaml-version "4";
|
||||
|
||||
assert check-ocaml-version "4";
|
||||
stdenv.mkDerivation {
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "mezzo";
|
||||
version = "0.0.m8";
|
||||
|
||||
pname = "mezzo";
|
||||
version = "0.0.m8";
|
||||
src = fetchFromGitHub {
|
||||
owner = "protz";
|
||||
repo = "mezzo";
|
||||
rev = "m8";
|
||||
sha256 = "0yck5r6di0935s3iy2mm9538jkf77ssr789qb06ms7sivd7g3ip6";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "protz";
|
||||
repo = "mezzo";
|
||||
rev = "m8";
|
||||
sha256 = "0yck5r6di0935s3iy2mm9538jkf77ssr789qb06ms7sivd7g3ip6";
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
camlp4
|
||||
menhir
|
||||
];
|
||||
buildInputs = [
|
||||
yojson
|
||||
menhirLib
|
||||
ulex
|
||||
pprint
|
||||
fix
|
||||
functory
|
||||
ocamlbuild
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
camlp4
|
||||
menhir
|
||||
];
|
||||
buildInputs = [
|
||||
yojson
|
||||
menhirLib
|
||||
ulex
|
||||
pprint
|
||||
fix
|
||||
functory
|
||||
ocamlbuild
|
||||
];
|
||||
|
||||
# Sets warning 3 as non-fatal
|
||||
prePatch =
|
||||
lib.optionalString (check-ocaml-version "4.02") ''
|
||||
substituteInPlace myocamlbuild.pre.ml \
|
||||
--replace '@1..3' '@1..2+3'
|
||||
''
|
||||
# Compatibility with PPrint ≥ 20220103
|
||||
+ ''
|
||||
substituteInPlace typing/Fact.ml --replace PPrintOCaml PPrint.OCaml
|
||||
'';
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
postInstall = ''
|
||||
mkdir $out/bin
|
||||
cp mezzo $out/bin/
|
||||
# Sets warning 3 as non-fatal
|
||||
prePatch =
|
||||
lib.optionalString (check-ocaml-version "4.02") ''
|
||||
substituteInPlace myocamlbuild.pre.ml \
|
||||
--replace '@1..3' '@1..2+3'
|
||||
''
|
||||
# Compatibility with PPrint ≥ 20220103
|
||||
+ ''
|
||||
substituteInPlace typing/Fact.ml --replace PPrintOCaml PPrint.OCaml
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://protz.github.io/mezzo/";
|
||||
description = "Programming language in the ML tradition, which places strong emphasis on the control of aliasing and access to mutable memory";
|
||||
license = licenses.gpl2;
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
};
|
||||
}
|
||||
createFindlibDestdir = true;
|
||||
|
||||
postInstall = ''
|
||||
mkdir $out/bin
|
||||
cp mezzo $out/bin/
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://protz.github.io/mezzo/";
|
||||
description = "Programming language in the ML tradition, which places strong emphasis on the control of aliasing and access to mutable memory";
|
||||
license = licenses.gpl2;
|
||||
broken = lib.versionAtLeast ocaml.version "4.06";
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,57 +9,51 @@
|
||||
cmdliner,
|
||||
}:
|
||||
|
||||
let
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
in
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||
"b0 is not available for OCaml ${ocaml.version}"
|
||||
pname = "ocaml${ocaml.version}-b0";
|
||||
version = "0.0.5";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/releases/b0-${version}.tbz";
|
||||
sha256 = "sha256-ty04JQcP4RCme/VQw0ko2IBebWWX5cBU6nRTTeV1I/I=";
|
||||
};
|
||||
|
||||
pname = "ocaml${ocaml.version}-b0";
|
||||
version = "0.0.5";
|
||||
strictDeps = true;
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/releases/b0-${version}.tbz";
|
||||
sha256 = "sha256-ty04JQcP4RCme/VQw0ko2IBebWWX5cBU6nRTTeV1I/I=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [
|
||||
topkg
|
||||
cmdliner
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [
|
||||
topkg
|
||||
cmdliner
|
||||
];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Software construction and deployment kit";
|
||||
longDescription = ''
|
||||
WARNING this package is unstable and work in progress, do not depend on
|
||||
it.
|
||||
B0 describes software construction and deployments using modular and
|
||||
customizable definitions written in OCaml. B0 describes:
|
||||
* Build environments.
|
||||
* Software configuration, build and testing.
|
||||
* Source and binary deployments.
|
||||
* Software life-cycle procedures.
|
||||
B0 also provides the B00 build library which provides abitrary build
|
||||
abstraction with reliable and efficient incremental rebuilds. The B00
|
||||
library can be – and has been – used on its own to devise domain specific
|
||||
build systems.
|
||||
'';
|
||||
homepage = "https://erratique.ch/software/b0";
|
||||
inherit (ocaml.meta) platforms;
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.Julow ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "Software construction and deployment kit";
|
||||
longDescription = ''
|
||||
WARNING this package is unstable and work in progress, do not depend on
|
||||
it.
|
||||
B0 describes software construction and deployments using modular and
|
||||
customizable definitions written in OCaml. B0 describes:
|
||||
* Build environments.
|
||||
* Software configuration, build and testing.
|
||||
* Source and binary deployments.
|
||||
* Software life-cycle procedures.
|
||||
B0 also provides the B00 build library which provides abitrary build
|
||||
abstraction with reliable and efficient incremental rebuilds. The B00
|
||||
library can be – and has been – used on its own to devise domain specific
|
||||
build systems.
|
||||
'';
|
||||
homepage = "https://erratique.ch/software/b0";
|
||||
inherit (ocaml.meta) platforms;
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.Julow ];
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.08");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -42,111 +42,108 @@
|
||||
z3,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.08" then
|
||||
throw "BAP is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-bap";
|
||||
version = "2.5.0+pr1621";
|
||||
src = fetchFromGitHub {
|
||||
owner = "BinaryAnalysisPlatform";
|
||||
repo = "bap";
|
||||
rev = "65c282d94e8b7028e8a986c637db3a2378a753f6";
|
||||
hash = "sha256-LUZZOgG1T8xa5jLA/fDft8ofYb/Yf6QjTrl6AlLY7H0=";
|
||||
};
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-bap";
|
||||
version = "2.5.0+pr1621";
|
||||
src = fetchFromGitHub {
|
||||
owner = "BinaryAnalysisPlatform";
|
||||
repo = "bap";
|
||||
rev = "65c282d94e8b7028e8a986c637db3a2378a753f6";
|
||||
hash = "sha256-LUZZOgG1T8xa5jLA/fDft8ofYb/Yf6QjTrl6AlLY7H0=";
|
||||
};
|
||||
sigs = fetchurl {
|
||||
url = "https://github.com/BinaryAnalysisPlatform/bap/releases/download/v${version}/sigs.zip";
|
||||
sha256 = "0d69jd28z4g64mglq94kj5imhmk5f6sgcsh9q2nij3b0arpcliwk";
|
||||
};
|
||||
|
||||
sigs = fetchurl {
|
||||
url = "https://github.com/BinaryAnalysisPlatform/bap/releases/download/v${version}/sigs.zip";
|
||||
sha256 = "0d69jd28z4g64mglq94kj5imhmk5f6sgcsh9q2nij3b0arpcliwk";
|
||||
};
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
setupHook = writeText "setupHook.sh" ''
|
||||
export CAML_LD_LIBRARY_PATH="''${CAML_LD_LIBRARY_PATH-}''${CAML_LD_LIBRARY_PATH:+:}''$1/lib/ocaml/${ocaml.version}/site-lib/ocaml${ocaml.version}-bap-${version}/"
|
||||
export CAML_LD_LIBRARY_PATH="''${CAML_LD_LIBRARY_PATH-}''${CAML_LD_LIBRARY_PATH:+:}''$1/lib/ocaml/${ocaml.version}/site-lib/ocaml${ocaml.version}-bap-${version}-llvm-plugins/"
|
||||
'';
|
||||
|
||||
setupHook = writeText "setupHook.sh" ''
|
||||
export CAML_LD_LIBRARY_PATH="''${CAML_LD_LIBRARY_PATH-}''${CAML_LD_LIBRARY_PATH:+:}''$1/lib/ocaml/${ocaml.version}/site-lib/ocaml${ocaml.version}-bap-${version}/"
|
||||
export CAML_LD_LIBRARY_PATH="''${CAML_LD_LIBRARY_PATH-}''${CAML_LD_LIBRARY_PATH:+:}''$1/lib/ocaml/${ocaml.version}/site-lib/ocaml${ocaml.version}-bap-${version}-llvm-plugins/"
|
||||
'';
|
||||
nativeBuildInputs = [
|
||||
which
|
||||
makeWrapper
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
ocaml_oasis
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
which
|
||||
makeWrapper
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
ocaml_oasis
|
||||
];
|
||||
buildInputs = [
|
||||
ocamlbuild
|
||||
linenoise
|
||||
ounit
|
||||
ppx_bitstring
|
||||
z3
|
||||
utop
|
||||
libxml2
|
||||
ncurses
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
ocamlbuild
|
||||
linenoise
|
||||
ounit
|
||||
ppx_bitstring
|
||||
z3
|
||||
utop
|
||||
libxml2
|
||||
ncurses
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
bitstring
|
||||
camlzip
|
||||
cmdliner
|
||||
ppx_bap
|
||||
core_kernel
|
||||
ezjsonm
|
||||
fileutils
|
||||
jane_rope
|
||||
mmap
|
||||
lwt
|
||||
ocamlgraph
|
||||
ocurl
|
||||
re
|
||||
uri
|
||||
zarith
|
||||
piqi
|
||||
parsexp
|
||||
piqi-ocaml
|
||||
uuidm
|
||||
frontc
|
||||
yojson
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
bitstring
|
||||
camlzip
|
||||
cmdliner
|
||||
ppx_bap
|
||||
core_kernel
|
||||
ezjsonm
|
||||
fileutils
|
||||
jane_rope
|
||||
mmap
|
||||
lwt
|
||||
ocamlgraph
|
||||
ocurl
|
||||
re
|
||||
uri
|
||||
zarith
|
||||
piqi
|
||||
parsexp
|
||||
piqi-ocaml
|
||||
uuidm
|
||||
frontc
|
||||
yojson
|
||||
];
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
export OCAMLPATH=$OCAMLPATH:$OCAMLFIND_DESTDIR;
|
||||
export PATH=$PATH:$out/bin
|
||||
export CAML_LD_LIBRARY_PATH=''${CAML_LD_LIBRARY_PATH-}''${CAML_LD_LIBRARY_PATH:+:}$OCAMLFIND_DESTDIR/bap-plugin-llvm/:$OCAMLFIND_DESTDIR/bap/
|
||||
mkdir -p $out/lib/bap
|
||||
make install
|
||||
rm $out/bin/baptop
|
||||
makeWrapper ${utop}/bin/utop $out/bin/baptop --prefix OCAMLPATH : $OCAMLPATH --prefix PATH : $PATH --add-flags "-ppx ppx-bap -short-paths -require \"bap.top\""
|
||||
wrapProgram $out/bin/bapbuild --prefix OCAMLPATH : $OCAMLPATH --prefix PATH : $PATH
|
||||
ln -s $sigs $out/share/bap/sigs.zip
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
export OCAMLPATH=$OCAMLPATH:$OCAMLFIND_DESTDIR;
|
||||
export PATH=$PATH:$out/bin
|
||||
export CAML_LD_LIBRARY_PATH=''${CAML_LD_LIBRARY_PATH-}''${CAML_LD_LIBRARY_PATH:+:}$OCAMLFIND_DESTDIR/bap-plugin-llvm/:$OCAMLFIND_DESTDIR/bap/
|
||||
mkdir -p $out/lib/bap
|
||||
make install
|
||||
rm $out/bin/baptop
|
||||
makeWrapper ${utop}/bin/utop $out/bin/baptop --prefix OCAMLPATH : $OCAMLPATH --prefix PATH : $PATH --add-flags "-ppx ppx-bap -short-paths -require \"bap.top\""
|
||||
wrapProgram $out/bin/bapbuild --prefix OCAMLPATH : $OCAMLPATH --prefix PATH : $PATH
|
||||
ln -s $sigs $out/share/bap/sigs.zip
|
||||
runHook postInstall
|
||||
'';
|
||||
disableIda = "--disable-ida";
|
||||
disableGhidra = "--disable-ghidra";
|
||||
|
||||
disableIda = "--disable-ida";
|
||||
disableGhidra = "--disable-ghidra";
|
||||
patches = [
|
||||
./curses_is_ncurses.patch
|
||||
];
|
||||
|
||||
patches = [
|
||||
./curses_is_ncurses.patch
|
||||
];
|
||||
preConfigure = ''
|
||||
substituteInPlace oasis/monads --replace-warn core_kernel.rope jane_rope
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace oasis/monads --replace-warn core_kernel.rope jane_rope
|
||||
'';
|
||||
configureFlags = [
|
||||
"--enable-everything ${disableIda} ${disableGhidra}"
|
||||
"--with-llvm-config=${llvm.dev}/bin/llvm-config"
|
||||
];
|
||||
|
||||
configureFlags = [
|
||||
"--enable-everything ${disableIda} ${disableGhidra}"
|
||||
"--with-llvm-config=${llvm.dev}/bin/llvm-config"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Platform for binary analysis. It is written in OCaml, but can be used from other languages";
|
||||
homepage = "https://github.com/BinaryAnalysisPlatform/bap/";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.maurer ];
|
||||
mainProgram = "bap";
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "Platform for binary analysis. It is written in OCaml, but can be used from other languages";
|
||||
homepage = "https://github.com/BinaryAnalysisPlatform/bap/";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.maurer ];
|
||||
mainProgram = "bap";
|
||||
broken = lib.versionOlder ocaml.version "4.08";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,28 +8,25 @@
|
||||
ounit,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ppxlib.version "0.18.0" then
|
||||
throw "ppx_bitstring is not available with ppxlib-${ppxlib.version}"
|
||||
else
|
||||
buildDunePackage {
|
||||
pname = "ppx_bitstring";
|
||||
inherit (bitstring) version src;
|
||||
|
||||
buildDunePackage {
|
||||
pname = "ppx_bitstring";
|
||||
inherit (bitstring) version src;
|
||||
patches = lib.optional (lib.versionAtLeast ppxlib.version "0.36") (fetchpatch {
|
||||
url = "https://github.com/xguerin/bitstring/commit/b42d4924cbb5ec5fd5309e6807852b63f456f35d.patch";
|
||||
hash = "sha256-wtpSnGOzIUTmB3LhyHGopecy7F/5SYFOwaR6eReV+6g=";
|
||||
});
|
||||
|
||||
patches = lib.optional (lib.versionAtLeast ppxlib.version "0.36") (fetchpatch {
|
||||
url = "https://github.com/xguerin/bitstring/commit/b42d4924cbb5ec5fd5309e6807852b63f456f35d.patch";
|
||||
hash = "sha256-wtpSnGOzIUTmB3LhyHGopecy7F/5SYFOwaR6eReV+6g=";
|
||||
});
|
||||
buildInputs = [
|
||||
bitstring
|
||||
ppxlib
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
bitstring
|
||||
ppxlib
|
||||
];
|
||||
doCheck = lib.versionAtLeast ocaml.version "4.08";
|
||||
checkInputs = [ ounit ];
|
||||
|
||||
doCheck = lib.versionAtLeast ocaml.version "4.08";
|
||||
checkInputs = [ ounit ];
|
||||
|
||||
meta = bitstring.meta // {
|
||||
description = "Bitstrings and bitstring matching for OCaml - PPX extension";
|
||||
};
|
||||
}
|
||||
meta = bitstring.meta // {
|
||||
description = "Bitstrings and bitstring matching for OCaml - PPX extension";
|
||||
broken = lib.versionOlder ppxlib.version "0.18.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,11 +8,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version =
|
||||
if lib.versionAtLeast ocaml.version "5.3" then
|
||||
throw "brisk-reconciler is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
"1.0.0-alpha1";
|
||||
version = "1.0.0-alpha1";
|
||||
in
|
||||
|
||||
buildDunePackage {
|
||||
@@ -42,5 +38,6 @@ buildDunePackage {
|
||||
homepage = "https://github.com/briskml/brisk-reconciler";
|
||||
maintainers = with lib.maintainers; [ momeemt ];
|
||||
license = lib.licenses.mit;
|
||||
broken = lib.versionAtLeast ocaml.version "5.3";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,44 +8,41 @@
|
||||
autoreconfHook,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.02" || lib.versionAtLeast ocaml.version "5.0" then
|
||||
throw "bz2 is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-bz2";
|
||||
version = "0.7.0";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-bz2";
|
||||
version = "0.7.0";
|
||||
src = fetchFromGitLab {
|
||||
owner = "irill";
|
||||
repo = "camlbz2";
|
||||
rev = version;
|
||||
sha256 = "sha256-jBFEkLN2fbC3LxTu7C0iuhvNg64duuckBHWZoBxrV/U=";
|
||||
};
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "irill";
|
||||
repo = "camlbz2";
|
||||
rev = version;
|
||||
sha256 = "sha256-jBFEkLN2fbC3LxTu7C0iuhvNg64duuckBHWZoBxrV/U=";
|
||||
};
|
||||
autoreconfFlags = [
|
||||
"-I"
|
||||
"."
|
||||
];
|
||||
|
||||
autoreconfFlags = [
|
||||
"-I"
|
||||
"."
|
||||
];
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
bzip2
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
bzip2
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
preInstall = "mkdir -p $OCAMLFIND_DESTDIR/stublibs";
|
||||
|
||||
preInstall = "mkdir -p $OCAMLFIND_DESTDIR/stublibs";
|
||||
|
||||
meta = with lib; {
|
||||
description = "OCaml bindings for the libbz2 (AKA, bzip2) (de)compression library";
|
||||
downloadPage = "https://gitlab.com/irill/camlbz2";
|
||||
license = licenses.lgpl21;
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "OCaml bindings for the libbz2 (AKA, bzip2) (de)compression library";
|
||||
downloadPage = "https://gitlab.com/irill/camlbz2";
|
||||
license = licenses.lgpl21;
|
||||
broken = lib.versionOlder ocaml.version "4.02" || lib.versionAtLeast ocaml.version "5.0";
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -6,36 +6,33 @@
|
||||
findlib,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.10" then
|
||||
throw "camlpdf is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.8";
|
||||
pname = "ocaml${ocaml.version}-camlpdf";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.8";
|
||||
pname = "ocaml${ocaml.version}-camlpdf";
|
||||
src = fetchFromGitHub {
|
||||
owner = "johnwhitington";
|
||||
repo = "camlpdf";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-+SFuFqlrP0nwm199y0QFWYvlwD+Cbh0PHA5bmXIWdNk=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "johnwhitington";
|
||||
repo = "camlpdf";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-+SFuFqlrP0nwm199y0QFWYvlwD+Cbh0PHA5bmXIWdNk=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
preInstall = ''
|
||||
mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "OCaml library for reading, writing and modifying PDF files";
|
||||
homepage = "https://github.com/johnwhitington/camlpdf";
|
||||
license = licenses.lgpl21Plus;
|
||||
maintainers = with maintainers; [ vbgl ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "OCaml library for reading, writing and modifying PDF files";
|
||||
homepage = "https://github.com/johnwhitington/camlpdf";
|
||||
license = licenses.lgpl21Plus;
|
||||
maintainers = with maintainers; [ vbgl ];
|
||||
broken = lib.versionOlder ocaml.version "4.10";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,41 +8,38 @@
|
||||
ocamlbuild,
|
||||
}:
|
||||
|
||||
if lib.versionAtLeast ocaml.version "4.06" then
|
||||
throw "cil is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml-cil";
|
||||
version = "1.7.3";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml-cil";
|
||||
version = "1.7.3";
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/cil/cil-${version}.tar.gz";
|
||||
sha256 = "05739da0b0msx6kmdavr3y2bwi92jbh3szc35d7d8pdisa8g5dv9";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/cil/cil-${version}.tar.gz";
|
||||
sha256 = "05739da0b0msx6kmdavr3y2bwi92jbh3szc35d7d8pdisa8g5dv9";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
perl
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
perl
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
preConfigure = ''
|
||||
substituteInPlace Makefile.in --replace 'MACHDEPCC=gcc' 'MACHDEPCC=$(CC)'
|
||||
export FORCE_PERL_PREFIX=1
|
||||
'';
|
||||
prefixKey = "-prefix=";
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace Makefile.in --replace 'MACHDEPCC=gcc' 'MACHDEPCC=$(CC)'
|
||||
export FORCE_PERL_PREFIX=1
|
||||
'';
|
||||
prefixKey = "-prefix=";
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://sourceforge.net/projects/cil/";
|
||||
description = "Front-end for the C programming language that facilitates program analysis and transformation";
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://sourceforge.net/projects/cil/";
|
||||
description = "Front-end for the C programming language that facilitates program analysis and transformation";
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
broken = lib.versionAtLeast ocaml.version "4.06";
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,41 +9,38 @@
|
||||
topkg,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.14.0" then
|
||||
throw "cmarkit is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cmarkit";
|
||||
version = "0.3.0";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cmarkit";
|
||||
version = "0.3.0";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/cmarkit/releases/cmarkit-${version}.tbz";
|
||||
hash = "sha256-RouM5iU7VeTT0+4yhBgdEmxROeP/X31iqDjd1VI7z5c=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/cmarkit/releases/cmarkit-${version}.tbz";
|
||||
hash = "sha256-RouM5iU7VeTT0+4yhBgdEmxROeP/X31iqDjd1VI7z5c=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [
|
||||
topkg
|
||||
cmdliner
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
topkg
|
||||
cmdliner
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = with lib; {
|
||||
description = "CommonMark parser and renderer for OCaml";
|
||||
homepage = "https://erratique.ch/software/cmarkit";
|
||||
changelog = "https://github.com/dbuenzli/cmarkit/blob/v${version}/CHANGES.md";
|
||||
license = licenses.isc;
|
||||
maintainers = [ ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "CommonMark parser and renderer for OCaml";
|
||||
homepage = "https://erratique.ch/software/cmarkit";
|
||||
changelog = "https://github.com/dbuenzli/cmarkit/blob/v${version}/CHANGES.md";
|
||||
license = licenses.isc;
|
||||
maintainers = [ ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = lib.versionOlder ocaml.version "4.14.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,8 +5,6 @@
|
||||
ocaml,
|
||||
}:
|
||||
|
||||
assert (lib.versionAtLeast ocaml.version "4.03");
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cmdliner";
|
||||
version = "1.0.4";
|
||||
@@ -34,5 +32,6 @@ stdenv.mkDerivation rec {
|
||||
license = licenses.isc;
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.03");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,36 +5,33 @@
|
||||
ocaml,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||
"cmdliner 1.1 is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cmdliner";
|
||||
version = "1.3.0";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "cmdliner";
|
||||
version = "1.3.0";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/${pname}/releases/${pname}-${version}.tbz";
|
||||
sha256 = "sha256-joGA9XO0QPanqMII2rLK5KgjhP7HMtInhNG7bmQWjLs=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/${pname}/releases/${pname}-${version}.tbz";
|
||||
sha256 = "sha256-joGA9XO0QPanqMII2rLK5KgjhP7HMtInhNG7bmQWjLs=";
|
||||
};
|
||||
nativeBuildInputs = [ ocaml ];
|
||||
|
||||
nativeBuildInputs = [ ocaml ];
|
||||
makeFlags = [ "PREFIX=$(out)" ];
|
||||
installTargets = "install install-doc";
|
||||
installFlags = [
|
||||
"LIBDIR=$(out)/lib/ocaml/${ocaml.version}/site-lib/${pname}"
|
||||
"DOCDIR=$(out)/share/doc/${pname}"
|
||||
];
|
||||
postInstall = ''
|
||||
mv $out/lib/ocaml/${ocaml.version}/site-lib/${pname}/{opam,${pname}.opam}
|
||||
'';
|
||||
|
||||
makeFlags = [ "PREFIX=$(out)" ];
|
||||
installTargets = "install install-doc";
|
||||
installFlags = [
|
||||
"LIBDIR=$(out)/lib/ocaml/${ocaml.version}/site-lib/${pname}"
|
||||
"DOCDIR=$(out)/share/doc/${pname}"
|
||||
];
|
||||
postInstall = ''
|
||||
mv $out/lib/ocaml/${ocaml.version}/site-lib/${pname}/{opam,${pname}.opam}
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://erratique.ch/software/cmdliner";
|
||||
description = "OCaml module for the declarative definition of command line interfaces";
|
||||
license = licenses.isc;
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://erratique.ch/software/cmdliner";
|
||||
description = "OCaml module for the declarative definition of command line interfaces";
|
||||
license = licenses.isc;
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.08");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,34 +7,31 @@
|
||||
camlp4,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"config-file is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml-config-file";
|
||||
version = "1.2";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml-config-file";
|
||||
version = "1.2";
|
||||
src = fetchurl {
|
||||
url = "https://forge.ocamlcore.org/frs/download.php/1387/config-file-${version}.tar.gz";
|
||||
sha256 = "1b02yxcnsjhr05ssh2br2ka4hxsjpdw34ldl3nk33wfnkwk7g67q";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://forge.ocamlcore.org/frs/download.php/1387/config-file-${version}.tar.gz";
|
||||
sha256 = "1b02yxcnsjhr05ssh2br2ka4hxsjpdw34ldl3nk33wfnkwk7g67q";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
camlp4
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
camlp4
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = {
|
||||
homepage = "http://config-file.forge.ocamlcore.org/";
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
description = "OCaml library used to manage the configuration file(s) of an application";
|
||||
license = lib.licenses.lgpl2Plus;
|
||||
maintainers = with lib.maintainers; [ vbgl ];
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
homepage = "http://config-file.forge.ocamlcore.org/";
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
description = "OCaml library used to manage the configuration file(s) of an application";
|
||||
license = lib.licenses.lgpl2Plus;
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
maintainers = with lib.maintainers; [ vbgl ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,44 +7,41 @@
|
||||
camlpdf,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.10" then
|
||||
throw "cpdf is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-cpdf";
|
||||
version = "2.8";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-cpdf";
|
||||
version = "2.8";
|
||||
src = fetchFromGitHub {
|
||||
owner = "johnwhitington";
|
||||
repo = "cpdf-source";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-DvTY5EQcvnL76RlQTcVqBiycqbCdGQCXzarSMH2P/pg=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "johnwhitington";
|
||||
repo = "cpdf-source";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-DvTY5EQcvnL76RlQTcVqBiycqbCdGQCXzarSMH2P/pg=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
propagatedBuildInputs = [ camlpdf ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
propagatedBuildInputs = [ camlpdf ];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
preInstall = ''
|
||||
mkdir -p $OCAMLFIND_DESTDIR
|
||||
mkdir -p $out/bin
|
||||
cp cpdf $out/bin
|
||||
mkdir -p $out/share/
|
||||
cp -r doc $out/share
|
||||
cp cpdfmanual.pdf $out/share/doc/cpdf/
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
mkdir -p $OCAMLFIND_DESTDIR
|
||||
mkdir -p $out/bin
|
||||
cp cpdf $out/bin
|
||||
mkdir -p $out/share/
|
||||
cp -r doc $out/share
|
||||
cp cpdfmanual.pdf $out/share/doc/cpdf/
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "PDF Command Line Tools";
|
||||
homepage = "https://www.coherentpdf.com/";
|
||||
license = licenses.agpl3Only;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
mainProgram = "cpdf";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "PDF Command Line Tools";
|
||||
homepage = "https://www.coherentpdf.com/";
|
||||
license = licenses.agpl3Only;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
mainProgram = "cpdf";
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = lib.versionOlder ocaml.version "4.10";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -6,43 +6,40 @@
|
||||
findlib,
|
||||
}:
|
||||
|
||||
if lib.versionAtLeast ocaml.version "4.06" then
|
||||
throw "cryptgps is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation {
|
||||
pname = "ocaml-cryptgps";
|
||||
version = "0.2.1";
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "ocaml-cryptgps";
|
||||
version = "0.2.1";
|
||||
src = fetchurl {
|
||||
url = "http://download.camlcity.org/download/cryptgps-0.2.1.tar.gz";
|
||||
sha256 = "1mp7i42cm9w9grmcsa69m3h1ycpn6a48p43y4xj8rsc12x9nav3s";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.camlcity.org/download/cryptgps-0.2.1.tar.gz";
|
||||
sha256 = "1mp7i42cm9w9grmcsa69m3h1ycpn6a48p43y4xj8rsc12x9nav3s";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
strictDeps = true;
|
||||
|
||||
dontConfigure = true; # Skip configure phase
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = {
|
||||
homepage = "http://projects.camlcity.org/projects/cryptgps.html";
|
||||
description = "Cryptographic functions for OCaml";
|
||||
longDescription = ''
|
||||
This library implements the symmetric cryptographic algorithms
|
||||
Blowfish, DES, and 3DES. The algorithms are written in O'Caml,
|
||||
i.e. this is not a binding to some C library, but the implementation
|
||||
itself.
|
||||
'';
|
||||
license = lib.licenses.mit;
|
||||
broken = lib.versionAtLeast ocaml.version "4.06";
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [
|
||||
lib.maintainers.maggesi
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
dontConfigure = true; # Skip configure phase
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = {
|
||||
homepage = "http://projects.camlcity.org/projects/cryptgps.html";
|
||||
description = "Cryptographic functions for OCaml";
|
||||
longDescription = ''
|
||||
This library implements the symmetric cryptographic algorithms
|
||||
Blowfish, DES, and 3DES. The algorithms are written in O'Caml,
|
||||
i.e. this is not a binding to some C library, but the implementation
|
||||
itself.
|
||||
'';
|
||||
license = lib.licenses.mit;
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [
|
||||
lib.maintainers.maggesi
|
||||
];
|
||||
};
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -17,63 +17,59 @@
|
||||
ocsipersist,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.3")
|
||||
"eliom is not available for OCaml ${ocaml.version}"
|
||||
buildDunePackage rec {
|
||||
pname = "eliom";
|
||||
version = "11.1.1";
|
||||
|
||||
buildDunePackage
|
||||
rec {
|
||||
pname = "eliom";
|
||||
version = "11.1.1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocsigen";
|
||||
repo = "eliom";
|
||||
rev = version;
|
||||
hash = "sha256-ALuoyO6axNQEeBteBVIFwdoSrbLxxcaSTObAcLPGIvo=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocsigen";
|
||||
repo = "eliom";
|
||||
rev = version;
|
||||
hash = "sha256-ALuoyO6axNQEeBteBVIFwdoSrbLxxcaSTObAcLPGIvo=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
which
|
||||
];
|
||||
buildInputs = [
|
||||
js_of_ocaml-ocamlbuild
|
||||
js_of_ocaml-ppx_deriving_json
|
||||
ppx_optcomp
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
which
|
||||
];
|
||||
buildInputs = [
|
||||
js_of_ocaml-ocamlbuild
|
||||
js_of_ocaml-ppx_deriving_json
|
||||
ppx_optcomp
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
js_of_ocaml-lwt
|
||||
js_of_ocaml-ppx
|
||||
js_of_ocaml-tyxml
|
||||
lwt_ppx
|
||||
lwt_react
|
||||
ocsigen_server
|
||||
ocsipersist
|
||||
ppx_deriving
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
js_of_ocaml-lwt
|
||||
js_of_ocaml-ppx
|
||||
js_of_ocaml-tyxml
|
||||
lwt_ppx
|
||||
lwt_react
|
||||
ocsigen_server
|
||||
ocsipersist
|
||||
ppx_deriving
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
setupHook = [ ./setup-hook.sh ];
|
||||
|
||||
setupHook = [ ./setup-hook.sh ];
|
||||
meta = {
|
||||
homepage = "http://ocsigen.org/eliom/";
|
||||
description = "OCaml Framework for programming Web sites and client/server Web applications";
|
||||
|
||||
meta = {
|
||||
homepage = "http://ocsigen.org/eliom/";
|
||||
description = "OCaml Framework for programming Web sites and client/server Web applications";
|
||||
longDescription = ''
|
||||
Eliom is a framework for programming Web sites
|
||||
and client/server Web applications. It introduces new concepts to
|
||||
simplify programming common behaviours and uses advanced static
|
||||
typing features of OCaml to check many properties of the Web site
|
||||
at compile time. If you want to write a Web application, Eliom
|
||||
makes possible to write the whole application as a single program
|
||||
(client and server parts). A syntax extension is used to
|
||||
distinguish both parts and the client side is compiled to JS using
|
||||
Ocsigen Js_of_ocaml.
|
||||
'';
|
||||
|
||||
longDescription = ''
|
||||
Eliom is a framework for programming Web sites
|
||||
and client/server Web applications. It introduces new concepts to
|
||||
simplify programming common behaviours and uses advanced static
|
||||
typing features of OCaml to check many properties of the Web site
|
||||
at compile time. If you want to write a Web application, Eliom
|
||||
makes possible to write the whole application as a single program
|
||||
(client and server parts). A syntax extension is used to
|
||||
distinguish both parts and the client side is compiled to JS using
|
||||
Ocsigen Js_of_ocaml.
|
||||
'';
|
||||
|
||||
license = lib.licenses.lgpl21;
|
||||
|
||||
maintainers = [ lib.maintainers.gal_bolle ];
|
||||
};
|
||||
}
|
||||
license = lib.licenses.lgpl21;
|
||||
broken = lib.versionAtLeast ocaml.version "5.3";
|
||||
maintainers = [ lib.maintainers.gal_bolle ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,36 +7,33 @@
|
||||
ocamlbuild,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.02" || lib.versionAtLeast ocaml.version "5.0" then
|
||||
throw "erm_xml is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation {
|
||||
pname = "ocaml${ocaml.version}-erm_xml";
|
||||
version = "0.3+20180112";
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "ocaml${ocaml.version}-erm_xml";
|
||||
version = "0.3+20180112";
|
||||
src = fetchFromGitHub {
|
||||
owner = "hannesm";
|
||||
repo = "xml";
|
||||
rev = "bbabdade807d8281fc48806da054b70dfe482479";
|
||||
sha256 = "sha256-OQdLTq9tJZc6XlcuPv2gxzYiQAUGd6AiBzfSi169XL0=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hannesm";
|
||||
repo = "xml";
|
||||
rev = "bbabdade807d8281fc48806da054b70dfe482479";
|
||||
sha256 = "sha256-OQdLTq9tJZc6XlcuPv2gxzYiQAUGd6AiBzfSi169XL0=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/hannesm/xml";
|
||||
description = "XML Parser for discrete data";
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
license = lib.licenses.bsd3;
|
||||
maintainers = with lib.maintainers; [ vbgl ];
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
homepage = "https://github.com/hannesm/xml";
|
||||
description = "XML Parser for discrete data";
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
license = lib.licenses.bsd3;
|
||||
broken = lib.versionOlder ocaml.version "4.02" || lib.versionAtLeast ocaml.version "5.0";
|
||||
maintainers = with lib.maintainers; [ vbgl ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,44 +8,41 @@
|
||||
ounit,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.02")
|
||||
"ocaml_expat is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-expat";
|
||||
version = "1.3.0";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-expat";
|
||||
version = "1.3.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "whitequark";
|
||||
repo = "ocaml-expat";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-eDA6MUcztaI+fpunWBdanNnPo9Y5gvbj/ViVcxYYEBg=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "whitequark";
|
||||
repo = "ocaml-expat";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-eDA6MUcztaI+fpunWBdanNnPo9Y5gvbj/ViVcxYYEBg=";
|
||||
};
|
||||
prePatch = ''
|
||||
substituteInPlace Makefile --replace "gcc" "\$(CC)"
|
||||
'';
|
||||
|
||||
prePatch = ''
|
||||
substituteInPlace Makefile --replace "gcc" "\$(CC)"
|
||||
'';
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
buildInputs = [ expat ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
buildInputs = [ expat ];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
doCheck = lib.versionAtLeast ocaml.version "4.08";
|
||||
checkTarget = "testall";
|
||||
checkInputs = [ ounit ];
|
||||
|
||||
doCheck = lib.versionAtLeast ocaml.version "4.08";
|
||||
checkTarget = "testall";
|
||||
checkInputs = [ ounit ];
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = {
|
||||
description = "OCaml wrapper for the Expat XML parsing library";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (src.meta) homepage;
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "OCaml wrapper for the Expat XML parsing library";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (src.meta) homepage;
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.02");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,26 +5,24 @@
|
||||
ocaml,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0") "facile is not available for OCaml ≥ 5.0"
|
||||
buildDunePackage rec {
|
||||
pname = "facile";
|
||||
version = "1.1.4";
|
||||
|
||||
buildDunePackage
|
||||
rec {
|
||||
pname = "facile";
|
||||
version = "1.1.4";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/Emmanuel-PLF/facile/releases/download/${version}/facile-${version}.tbz";
|
||||
sha256 = "0jqrwmn6fr2vj2rrbllwxq4cmxykv7zh0y4vnngx29f5084a04jp";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/Emmanuel-PLF/facile/releases/download/${version}/facile-${version}.tbz";
|
||||
sha256 = "0jqrwmn6fr2vj2rrbllwxq4cmxykv7zh0y4vnngx29f5084a04jp";
|
||||
};
|
||||
doCheck = true;
|
||||
|
||||
doCheck = true;
|
||||
duneVersion = if lib.versionAtLeast ocaml.version "4.12" then "2" else "1";
|
||||
postPatch = lib.optionalString (duneVersion != "1") "dune upgrade";
|
||||
|
||||
duneVersion = if lib.versionAtLeast ocaml.version "4.12" then "2" else "1";
|
||||
postPatch = lib.optionalString (duneVersion != "1") "dune upgrade";
|
||||
|
||||
meta = {
|
||||
homepage = "http://opti.recherche.enac.fr/facile/";
|
||||
license = lib.licenses.lgpl21Plus;
|
||||
description = "Functional Constraint Library";
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
homepage = "http://opti.recherche.enac.fr/facile/";
|
||||
license = lib.licenses.lgpl21Plus;
|
||||
description = "Functional Constraint Library";
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,38 +9,35 @@
|
||||
faraday,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.3" then
|
||||
throw "farfadet is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-farfadet";
|
||||
version = "0.3";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-farfadet";
|
||||
version = "0.3";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/oklm-wsh/Farfadet/releases/download/v${version}/farfadet-${version}.tbz";
|
||||
sha256 = "0nlafnp0pwx0n4aszpsk6nvcvqi9im306p4jhx70si7k3xprlr2j";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/oklm-wsh/Farfadet/releases/download/v${version}/farfadet-${version}.tbz";
|
||||
sha256 = "0nlafnp0pwx0n4aszpsk6nvcvqi9im306p4jhx70si7k3xprlr2j";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
propagatedBuildInputs = [ faraday ];
|
||||
|
||||
propagatedBuildInputs = [ faraday ];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = {
|
||||
description = "Printf-like for Faraday library";
|
||||
homepage = "https://github.com/oklm-wsh/Farfadet";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "Printf-like for Faraday library";
|
||||
homepage = "https://github.com/oklm-wsh/Farfadet";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = lib.versionOlder ocaml.version "4.3";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,39 +9,36 @@
|
||||
cmdliner,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.08" then
|
||||
throw "fmt is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.11.0";
|
||||
pname = "ocaml${ocaml.version}-fmt";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.11.0";
|
||||
pname = "ocaml${ocaml.version}-fmt";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/fmt/releases/fmt-${version}.tbz";
|
||||
sha256 = "sha256-hXz9R6VLUkKc2bPiZl5EFzzRvTtDW+znFy+YStU3ahs=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/fmt/releases/fmt-${version}.tbz";
|
||||
sha256 = "sha256-hXz9R6VLUkKc2bPiZl5EFzzRvTtDW+znFy+YStU3ahs=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [
|
||||
cmdliner
|
||||
topkg
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [
|
||||
cmdliner
|
||||
topkg
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://erratique.ch/software/fmt";
|
||||
license = licenses.isc;
|
||||
description = "OCaml Format pretty-printer combinators";
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://erratique.ch/software/fmt";
|
||||
license = licenses.isc;
|
||||
description = "OCaml Format pretty-printer combinators";
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
broken = lib.versionOlder ocaml.version "4.08";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,38 +9,35 @@
|
||||
astring,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.03" then
|
||||
throw "fpath is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-fpath";
|
||||
version = "0.7.3";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-fpath";
|
||||
version = "0.7.3";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/fpath/releases/fpath-${version}.tbz";
|
||||
sha256 = "03z7mj0sqdz465rc4drj1gr88l9q3nfs374yssvdjdyhjbqqzc0j";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/fpath/releases/fpath-${version}.tbz";
|
||||
sha256 = "03z7mj0sqdz465rc4drj1gr88l9q3nfs374yssvdjdyhjbqqzc0j";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
propagatedBuildInputs = [ astring ];
|
||||
|
||||
propagatedBuildInputs = [ astring ];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = {
|
||||
description = "OCaml module for handling file system paths with POSIX and Windows conventions";
|
||||
homepage = "https://erratique.ch/software/fpath";
|
||||
license = lib.licenses.isc;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "OCaml module for handling file system paths with POSIX and Windows conventions";
|
||||
homepage = "https://erratique.ch/software/fpath";
|
||||
license = lib.licenses.isc;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = lib.versionOlder ocaml.version "4.03";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -20,35 +20,32 @@ let
|
||||
};
|
||||
in
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"functory is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation {
|
||||
pname = "ocaml${ocaml.version}-functory";
|
||||
inherit (param) version;
|
||||
|
||||
stdenv.mkDerivation
|
||||
{
|
||||
pname = "ocaml${ocaml.version}-functory";
|
||||
inherit (param) version;
|
||||
src = fetchurl {
|
||||
url = "https://www.lri.fr/~filliatr/functory/download/functory-${param.version}.tar.gz";
|
||||
inherit (param) sha256;
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.lri.fr/~filliatr/functory/download/functory-${param.version}.tar.gz";
|
||||
inherit (param) sha256;
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
installTargets = [ "ocamlfind-install" ];
|
||||
|
||||
installTargets = [ "ocamlfind-install" ];
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://www.lri.fr/~filliatr/functory/";
|
||||
description = "Distributed computing library for Objective Caml which facilitates distributed execution of parallelizable computations in a seamless fashion";
|
||||
license = licenses.lgpl21;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://www.lri.fr/~filliatr/functory/";
|
||||
description = "Distributed computing library for Objective Caml which facilitates distributed execution of parallelizable computations in a seamless fashion";
|
||||
license = licenses.lgpl21;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -13,43 +13,40 @@ let
|
||||
version = "1.0.0";
|
||||
in
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||
"gg is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation {
|
||||
|
||||
stdenv.mkDerivation
|
||||
{
|
||||
pname = "ocaml${ocaml.version}-gg";
|
||||
inherit version;
|
||||
|
||||
pname = "ocaml${ocaml.version}-gg";
|
||||
inherit version;
|
||||
src = fetchurl {
|
||||
url = "${homepage}/releases/gg-${version}.tbz";
|
||||
sha256 = "sha256:0j7bpj8k17csnz6v6frkz9aycywsb7xmznnb31g8rbfk3626f3ci";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "${homepage}/releases/gg-${version}.tbz";
|
||||
sha256 = "sha256:0j7bpj8k17csnz6v6frkz9aycywsb7xmznnb31g8rbfk3626f3ci";
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Basic types for computer graphics in OCaml";
|
||||
longDescription = ''
|
||||
Gg is an OCaml module providing basic types for computer graphics. It
|
||||
defines types and functions for floats, vectors, points, sizes,
|
||||
matrices, quaternions, axis aligned boxes, colors, color spaces, and
|
||||
raster data.
|
||||
'';
|
||||
inherit homepage;
|
||||
inherit (ocaml.meta) platforms;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.jirkamarsik ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "Basic types for computer graphics in OCaml";
|
||||
longDescription = ''
|
||||
Gg is an OCaml module providing basic types for computer graphics. It
|
||||
defines types and functions for floats, vectors, points, sizes,
|
||||
matrices, quaternions, axis aligned boxes, colors, color spaces, and
|
||||
raster data.
|
||||
'';
|
||||
inherit homepage;
|
||||
inherit (ocaml.meta) platforms;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.jirkamarsik ];
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.08");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -11,8 +11,6 @@
|
||||
let
|
||||
minimumSupportedOcamlVersion = "4.02.0";
|
||||
in
|
||||
assert lib.versionOlder minimumSupportedOcamlVersion ocaml.version;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "hmap";
|
||||
version = "0.8.1";
|
||||
@@ -46,5 +44,6 @@ stdenv.mkDerivation rec {
|
||||
homepage = "https://erratique.ch/software/hmap";
|
||||
license = lib.licenses.isc;
|
||||
maintainers = [ lib.maintainers.pmahoney ];
|
||||
broken = !(lib.versionOlder minimumSupportedOcamlVersion ocaml.version);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,51 +9,48 @@
|
||||
extlib,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||
"javalib is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-javalib";
|
||||
version = "3.2.2";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-javalib";
|
||||
version = "3.2.2";
|
||||
src = fetchFromGitHub {
|
||||
owner = "javalib-team";
|
||||
repo = "javalib";
|
||||
rev = version;
|
||||
hash = "sha256-XaI7GTU/O5UEWuYX4yqaIRmEoH7FuvCg/+gtKbE/P1s=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "javalib-team";
|
||||
repo = "javalib";
|
||||
rev = version;
|
||||
hash = "sha256-XaI7GTU/O5UEWuYX4yqaIRmEoH7FuvCg/+gtKbE/P1s=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
which
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
which
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
patches = [
|
||||
./configure.sh.patch
|
||||
./Makefile.config.example.patch
|
||||
];
|
||||
|
||||
patches = [
|
||||
./configure.sh.patch
|
||||
./Makefile.config.example.patch
|
||||
];
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
configureScript = "./configure.sh";
|
||||
dontAddPrefix = "true";
|
||||
dontAddStaticConfigureFlags = true;
|
||||
configurePlatforms = [ ];
|
||||
|
||||
configureScript = "./configure.sh";
|
||||
dontAddPrefix = "true";
|
||||
dontAddStaticConfigureFlags = true;
|
||||
configurePlatforms = [ ];
|
||||
propagatedBuildInputs = [
|
||||
camlzip
|
||||
extlib
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
camlzip
|
||||
extlib
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Library that parses Java .class files into OCaml data structures";
|
||||
homepage = "https://javalib-team.github.io/javalib/";
|
||||
license = licenses.lgpl3;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "Library that parses Java .class files into OCaml data structures";
|
||||
homepage = "https://javalib-team.github.io/javalib/";
|
||||
license = licenses.lgpl3;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.08");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,28 +7,25 @@
|
||||
zlib,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"kafka is not available for OCaml ${ocaml.version}"
|
||||
buildDunePackage rec {
|
||||
pname = "kafka";
|
||||
version = "0.5";
|
||||
|
||||
buildDunePackage
|
||||
rec {
|
||||
pname = "kafka";
|
||||
version = "0.5";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/didier-wenzek/ocaml-kafka/releases/download/${version}/kafka-${version}.tbz";
|
||||
sha256 = "0m9212yap0a00hd0f61i4y4fna3141p77qj3mm7jl1h4q60jdhvy";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/didier-wenzek/ocaml-kafka/releases/download/${version}/kafka-${version}.tbz";
|
||||
sha256 = "0m9212yap0a00hd0f61i4y4fna3141p77qj3mm7jl1h4q60jdhvy";
|
||||
};
|
||||
propagatedBuildInputs = [
|
||||
rdkafka
|
||||
zlib
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
rdkafka
|
||||
zlib
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/didier-wenzek/ocaml-kafka";
|
||||
description = "OCaml bindings for Kafka";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/didier-wenzek/ocaml-kafka";
|
||||
description = "OCaml bindings for Kafka";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,23 +7,20 @@
|
||||
cmdliner,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"kafka_lwt is not available for OCaml ${ocaml.version}"
|
||||
buildDunePackage {
|
||||
pname = "kafka_lwt";
|
||||
|
||||
buildDunePackage
|
||||
{
|
||||
pname = "kafka_lwt";
|
||||
inherit (kafka) version src;
|
||||
|
||||
inherit (kafka) version src;
|
||||
buildInputs = [ cmdliner ];
|
||||
|
||||
buildInputs = [ cmdliner ];
|
||||
propagatedBuildInputs = [
|
||||
kafka
|
||||
lwt
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
kafka
|
||||
lwt
|
||||
];
|
||||
|
||||
meta = kafka.meta // {
|
||||
description = "OCaml bindings for Kafka, Lwt bindings";
|
||||
};
|
||||
}
|
||||
meta = kafka.meta // {
|
||||
description = "OCaml bindings for Kafka, Lwt bindings";
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,73 +9,70 @@
|
||||
camlp-streams,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.06" then
|
||||
throw "lablgl is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-lablgl";
|
||||
version = "1.07";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-lablgl";
|
||||
version = "1.07";
|
||||
src = fetchFromGitHub {
|
||||
owner = "garrigue";
|
||||
repo = "lablgl";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-GiQKHMn5zHyvDrA2ve12X5YTm3/RZp8tukIqifgVaW4=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "garrigue";
|
||||
repo = "lablgl";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-GiQKHMn5zHyvDrA2ve12X5YTm3/RZp8tukIqifgVaW4=";
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
buildInputs = [
|
||||
libglut
|
||||
camlp-streams
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
libGLU
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
patches = [ ./META.patch ];
|
||||
|
||||
preConfigure = ''
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs
|
||||
cp \
|
||||
Makefile.config.${if stdenv.hostPlatform.isDarwin then "osx" else "ex"} \
|
||||
Makefile.config
|
||||
'';
|
||||
|
||||
makeFlags = [
|
||||
"BINDIR=${placeholder "out"}/bin/"
|
||||
"INSTALLDIR=${placeholder "out"}/lib/ocaml/${ocaml.version}/site-lib/lablgl/"
|
||||
"DLLDIR=${placeholder "out"}/lib/ocaml/${ocaml.version}/site-lib/stublibs/"
|
||||
"XINCLUDES="
|
||||
"TKINCLUDES="
|
||||
"TKLIBS="
|
||||
];
|
||||
|
||||
buildFlags = [
|
||||
"lib"
|
||||
"libopt"
|
||||
"glut"
|
||||
"glutopt"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
cp ./META $out/lib/ocaml/${ocaml.version}/site-lib/lablgl
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "OpenGL bindings for ocaml";
|
||||
homepage = "http://wwwfun.kurims.kyoto-u.ac.jp/soft/lsl/lablgl.html";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [
|
||||
pSub
|
||||
vbgl
|
||||
];
|
||||
buildInputs = [
|
||||
libglut
|
||||
camlp-streams
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
libGLU
|
||||
];
|
||||
|
||||
patches = [ ./META.patch ];
|
||||
|
||||
preConfigure = ''
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs
|
||||
cp \
|
||||
Makefile.config.${if stdenv.hostPlatform.isDarwin then "osx" else "ex"} \
|
||||
Makefile.config
|
||||
'';
|
||||
|
||||
makeFlags = [
|
||||
"BINDIR=${placeholder "out"}/bin/"
|
||||
"INSTALLDIR=${placeholder "out"}/lib/ocaml/${ocaml.version}/site-lib/lablgl/"
|
||||
"DLLDIR=${placeholder "out"}/lib/ocaml/${ocaml.version}/site-lib/stublibs/"
|
||||
"XINCLUDES="
|
||||
"TKINCLUDES="
|
||||
"TKLIBS="
|
||||
];
|
||||
|
||||
buildFlags = [
|
||||
"lib"
|
||||
"libopt"
|
||||
"glut"
|
||||
"glutopt"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
cp ./META $out/lib/ocaml/${ocaml.version}/site-lib/lablgl
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "OpenGL bindings for ocaml";
|
||||
homepage = "http://wwwfun.kurims.kyoto-u.ac.jp/soft/lsl/lablgl.html";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [
|
||||
pSub
|
||||
vbgl
|
||||
];
|
||||
mainProgram = "lablglut";
|
||||
};
|
||||
}
|
||||
mainProgram = "lablglut";
|
||||
broken = lib.versionOlder ocaml.version "4.06";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -10,41 +10,38 @@
|
||||
xmlm,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.02" || lib.versionAtLeast ocaml.version "4.13" then
|
||||
throw "lablgtk-extras is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.6";
|
||||
pname = "ocaml${ocaml.version}-lablgtk-extras";
|
||||
src = fetchFromGitLab {
|
||||
domain = "framagit.org";
|
||||
owner = "zoggy";
|
||||
repo = "lablgtk-extras";
|
||||
rev = "release-${version}";
|
||||
sha256 = "1bbdp5j18s582mmyd7qiaq1p08g2ag4gl7x65pmzahbhg719hjda";
|
||||
};
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.6";
|
||||
pname = "ocaml${ocaml.version}-lablgtk-extras";
|
||||
src = fetchFromGitLab {
|
||||
domain = "framagit.org";
|
||||
owner = "zoggy";
|
||||
repo = "lablgtk-extras";
|
||||
rev = "release-${version}";
|
||||
sha256 = "1bbdp5j18s582mmyd7qiaq1p08g2ag4gl7x65pmzahbhg719hjda";
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
camlp4
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
config-file
|
||||
lablgtk
|
||||
xmlm
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
camlp4
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
config-file
|
||||
lablgtk
|
||||
xmlm
|
||||
];
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = {
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = with lib.maintainers; [ vbgl ];
|
||||
homepage = "https://framagit.org/zoggy/lablgtk-extras/";
|
||||
description = "Collection of libraries and modules useful when developing OCaml/LablGtk2 applications";
|
||||
license = lib.licenses.lgpl2Plus;
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = with lib.maintainers; [ vbgl ];
|
||||
homepage = "https://framagit.org/zoggy/lablgtk-extras/";
|
||||
description = "Collection of libraries and modules useful when developing OCaml/LablGtk2 applications";
|
||||
license = lib.licenses.lgpl2Plus;
|
||||
broken = lib.versionOlder ocaml.version "4.02" || lib.versionAtLeast ocaml.version "4.13";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -10,49 +10,46 @@
|
||||
zarith,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.07")
|
||||
"lem is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-lem";
|
||||
version = "2025-03-13";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-lem";
|
||||
version = "2025-03-13";
|
||||
src = fetchFromGitHub {
|
||||
owner = "rems-project";
|
||||
repo = "lem";
|
||||
rev = version;
|
||||
hash = "sha256-ZV2OiFonMlNzqtsumMQ8jzY9/ATaZxiNHZ7JzOfGluY=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rems-project";
|
||||
repo = "lem";
|
||||
rev = version;
|
||||
hash = "sha256-ZV2OiFonMlNzqtsumMQ8jzY9/ATaZxiNHZ7JzOfGluY=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
ocamlbuild
|
||||
findlib
|
||||
ocaml
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
zarith
|
||||
num
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
ocamlbuild
|
||||
findlib
|
||||
ocaml
|
||||
installFlags = [ "INSTALL_DIR=$(out)" ];
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/lem --set LEMLIB $out/share/lem/library
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/rems-project/lem";
|
||||
description = "Tool for lightweight executable mathematics";
|
||||
mainProgram = "lem";
|
||||
maintainers = with maintainers; [ genericnerdyusername ];
|
||||
license = with licenses; [
|
||||
bsd3
|
||||
gpl2
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
zarith
|
||||
num
|
||||
];
|
||||
|
||||
installFlags = [ "INSTALL_DIR=$(out)" ];
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/lem --set LEMLIB $out/share/lem/library
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/rems-project/lem";
|
||||
description = "Tool for lightweight executable mathematics";
|
||||
mainProgram = "lem";
|
||||
maintainers = with maintainers; [ genericnerdyusername ];
|
||||
license = with licenses; [
|
||||
bsd3
|
||||
gpl2
|
||||
];
|
||||
platforms = ocaml.meta.platforms;
|
||||
};
|
||||
}
|
||||
platforms = ocaml.meta.platforms;
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.07");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,35 +7,32 @@
|
||||
lem,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.07")
|
||||
"linksem is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-linksem";
|
||||
version = "0.8";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-linksem";
|
||||
version = "0.8";
|
||||
src = fetchFromGitHub {
|
||||
owner = "rems-project";
|
||||
repo = "linksem";
|
||||
rev = version;
|
||||
hash = "sha256-7/YfDK3TruKCckMzAPLRrwBkHRJcX1S+AzXHWRxkZPA=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rems-project";
|
||||
repo = "linksem";
|
||||
rev = version;
|
||||
hash = "sha256-7/YfDK3TruKCckMzAPLRrwBkHRJcX1S+AzXHWRxkZPA=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
findlib
|
||||
ocaml
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
findlib
|
||||
ocaml
|
||||
];
|
||||
propagatedBuildInputs = [ lem ];
|
||||
|
||||
propagatedBuildInputs = [ lem ];
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/rems-project/linksem";
|
||||
description = "Formalisation of substantial parts of ELF linking and DWARF debug information";
|
||||
maintainers = with maintainers; [ genericnerdyusername ];
|
||||
license = licenses.bsd2;
|
||||
platforms = ocaml.meta.platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/rems-project/linksem";
|
||||
description = "Formalisation of substantial parts of ELF linking and DWARF debug information";
|
||||
maintainers = with maintainers; [ genericnerdyusername ];
|
||||
license = licenses.bsd2;
|
||||
platforms = ocaml.meta.platforms;
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.07");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -12,66 +12,63 @@
|
||||
libmysqlclient,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.07")
|
||||
"mariadb is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-mariadb";
|
||||
version = "1.1.6";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-mariadb";
|
||||
version = "1.1.6";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/andrenth/ocaml-mariadb/releases/download/${version}/ocaml-mariadb-${version}.tar.gz";
|
||||
sha256 = "sha256-3/C1Gz6luUzS7oaudLlDHMT6JB2v5OdbLVzJhtayHGM=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/andrenth/ocaml-mariadb/releases/download/${version}/ocaml-mariadb-${version}.tar.gz";
|
||||
sha256 = "sha256-3/C1Gz6luUzS7oaudLlDHMT6JB2v5OdbLVzJhtayHGM=";
|
||||
};
|
||||
patches =
|
||||
lib.lists.map
|
||||
(
|
||||
x:
|
||||
fetchpatch {
|
||||
url = "https://github.com/andrenth/ocaml-mariadb/commit/${x.path}.patch";
|
||||
inherit (x) hash;
|
||||
}
|
||||
)
|
||||
[
|
||||
{
|
||||
path = "9db2e4d8dec7c584213d0e0f03d079a36a35d9d5";
|
||||
hash = "sha256-heROtU02cYBJ5edIHMdYP1xNXcLv8h79GYGBuudJhgE=";
|
||||
}
|
||||
{
|
||||
path = "40cd3102bc7cce4ed826ed609464daeb1bbb4581";
|
||||
hash = "sha256-YVsAMJiOgWRk9xPaRz2sDihBYLlXv+rhWtQIMOVLtSg=";
|
||||
}
|
||||
];
|
||||
|
||||
patches =
|
||||
lib.lists.map
|
||||
(
|
||||
x:
|
||||
fetchpatch {
|
||||
url = "https://github.com/andrenth/ocaml-mariadb/commit/${x.path}.patch";
|
||||
inherit (x) hash;
|
||||
}
|
||||
)
|
||||
[
|
||||
{
|
||||
path = "9db2e4d8dec7c584213d0e0f03d079a36a35d9d5";
|
||||
hash = "sha256-heROtU02cYBJ5edIHMdYP1xNXcLv8h79GYGBuudJhgE=";
|
||||
}
|
||||
{
|
||||
path = "40cd3102bc7cce4ed826ed609464daeb1bbb4581";
|
||||
hash = "sha256-YVsAMJiOgWRk9xPaRz2sDihBYLlXv+rhWtQIMOVLtSg=";
|
||||
}
|
||||
];
|
||||
postPatch = ''
|
||||
substituteInPlace setup.ml --replace '#use "topfind"' \
|
||||
'#directory "${findlib}/lib/ocaml/${ocaml.version}/site-lib/";; #use "topfind"'
|
||||
'';
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.ml --replace '#use "topfind"' \
|
||||
'#directory "${findlib}/lib/ocaml/${ocaml.version}/site-lib/";; #use "topfind"'
|
||||
'';
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
buildInputs = [
|
||||
mariadb
|
||||
libmysqlclient
|
||||
camlp-streams
|
||||
ocamlbuild
|
||||
];
|
||||
propagatedBuildInputs = [ ctypes ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
buildInputs = [
|
||||
mariadb
|
||||
libmysqlclient
|
||||
camlp-streams
|
||||
ocamlbuild
|
||||
];
|
||||
propagatedBuildInputs = [ ctypes ];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
preInstall = "mkdir -p $OCAMLFIND_DESTDIR/stublibs";
|
||||
|
||||
preInstall = "mkdir -p $OCAMLFIND_DESTDIR/stublibs";
|
||||
|
||||
meta = {
|
||||
description = "OCaml bindings for MariaDB";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ bcc32 ];
|
||||
homepage = "https://github.com/andrenth/ocaml-mariadb";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "OCaml bindings for MariaDB";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ bcc32 ];
|
||||
homepage = "https://github.com/andrenth/ocaml-mariadb";
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.07");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,26 +5,24 @@
|
||||
ocaml,
|
||||
}:
|
||||
|
||||
if !(lib.versionOlder ocaml.version "5.0.0") then
|
||||
throw "memprof-limits is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
buildDunePackage rec {
|
||||
pname = "memprof-limits";
|
||||
version = "0.2.1";
|
||||
buildDunePackage rec {
|
||||
pname = "memprof-limits";
|
||||
version = "0.2.1";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "gadmm";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-Pmuln5TihPoPZuehZlqPfERif6lf7O+0454kW9y3aKc=";
|
||||
};
|
||||
src = fetchFromGitLab {
|
||||
owner = "gadmm";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-Pmuln5TihPoPZuehZlqPfERif6lf7O+0454kW9y3aKc=";
|
||||
};
|
||||
|
||||
minimalOCamlVersion = "4.12";
|
||||
minimalOCamlVersion = "4.12";
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://ocaml.org/p/memprof-limits/latest";
|
||||
description = "Memory limits, allocation limits, and thread cancellation for OCaml";
|
||||
license = licenses.lgpl3;
|
||||
maintainers = with maintainers; [ alizter ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://ocaml.org/p/memprof-limits/latest";
|
||||
description = "Memory limits, allocation limits, and thread cancellation for OCaml";
|
||||
license = licenses.lgpl3;
|
||||
maintainers = with maintainers; [ alizter ];
|
||||
broken = !(lib.versionOlder ocaml.version "5.0.0");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,36 +8,33 @@
|
||||
topkg,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||
"mtime is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-mtime";
|
||||
version = "2.1.0";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-mtime";
|
||||
version = "2.1.0";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/mtime/releases/mtime-${version}.tbz";
|
||||
sha256 = "sha256-CXyygC43AerZVy4bSD1aKMbi8KOUSfqvm0StiomDTYg=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/mtime/releases/mtime-${version}.tbz";
|
||||
sha256 = "sha256-CXyygC43AerZVy4bSD1aKMbi8KOUSfqvm0StiomDTYg=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Monotonic wall-clock time for OCaml";
|
||||
homepage = "https://erratique.ch/software/mtime";
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
license = licenses.bsd3;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "Monotonic wall-clock time for OCaml";
|
||||
homepage = "https://erratique.ch/software/mtime";
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
license = licenses.bsd3;
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.08");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,28 +5,26 @@
|
||||
ocaml,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0") "nonstd is not available for OCaml ≥ 5.0"
|
||||
buildDunePackage rec {
|
||||
pname = "nonstd";
|
||||
version = "0.0.3";
|
||||
|
||||
buildDunePackage
|
||||
rec {
|
||||
pname = "nonstd";
|
||||
version = "0.0.3";
|
||||
minimalOCamlVersion = "4.02";
|
||||
|
||||
minimalOCamlVersion = "4.02";
|
||||
src = fetchzip {
|
||||
url = "https://bitbucket.org/smondet/${pname}/get/${pname}.${version}.tar.gz";
|
||||
sha256 = "0ccjwcriwm8fv29ij1cnbc9win054kb6pfga3ygzdbjpjb778j46";
|
||||
};
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://bitbucket.org/smondet/${pname}/get/${pname}.${version}.tar.gz";
|
||||
sha256 = "0ccjwcriwm8fv29ij1cnbc9win054kb6pfga3ygzdbjpjb778j46";
|
||||
};
|
||||
duneVersion = if lib.versionAtLeast ocaml.version "4.12" then "2" else "1";
|
||||
postPatch = lib.optionalString (duneVersion != "1") "dune upgrade";
|
||||
doCheck = true;
|
||||
|
||||
duneVersion = if lib.versionAtLeast ocaml.version "4.12" then "2" else "1";
|
||||
postPatch = lib.optionalString (duneVersion != "1") "dune upgrade";
|
||||
doCheck = true;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://bitbucket.org/smondet/nonstd";
|
||||
description = "Non-standard mini-library";
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.alexfmpe ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://bitbucket.org/smondet/nonstd";
|
||||
description = "Non-standard mini-library";
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.alexfmpe ];
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,32 +9,29 @@
|
||||
brr,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||
"note is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-note";
|
||||
version = "0.0.3";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/note/releases/note-${version}.tbz";
|
||||
hash = "sha256-ZZOvCnyz7UWzFtGFI1uC0ZApzyylgZYM/HYIXGVXY2k=";
|
||||
};
|
||||
buildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-note";
|
||||
version = "0.0.3";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/note/releases/note-${version}.tbz";
|
||||
hash = "sha256-ZZOvCnyz7UWzFtGFI1uC0ZApzyylgZYM/HYIXGVXY2k=";
|
||||
};
|
||||
buildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
propagatedBuildInputs = [ brr ];
|
||||
|
||||
propagatedBuildInputs = [ brr ];
|
||||
|
||||
meta = {
|
||||
homepage = "https://erratique.ch/software/note";
|
||||
description = "OCaml module for functional reactive programming";
|
||||
license = lib.licenses.isc;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
homepage = "https://erratique.ch/software/note";
|
||||
description = "OCaml module for functional reactive programming";
|
||||
license = lib.licenses.isc;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.08");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -20,63 +20,59 @@
|
||||
let
|
||||
pname = "ocaml-cairo";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
version = "1.2.0";
|
||||
|
||||
if lib.versionAtLeast ocaml.version "4.06" then
|
||||
throw "${pname} is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
src = fetchurl {
|
||||
url = "http://cgit.freedesktop.org/cairo-ocaml/snapshot/cairo-ocaml-${version}.zip";
|
||||
sha256 = "0l4p9bp6kclr570mxma8wafibr1g5fsjj8h10yr4b507g0hmlh0l";
|
||||
};
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
version = "1.2.0";
|
||||
patches = [ ./META.patch ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://cgit.freedesktop.org/cairo-ocaml/snapshot/cairo-ocaml-${version}.zip";
|
||||
sha256 = "0l4p9bp6kclr570mxma8wafibr1g5fsjj8h10yr4b507g0hmlh0l";
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
patches = [ ./META.patch ];
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
unzip
|
||||
ocaml
|
||||
automake
|
||||
gnum4
|
||||
autoconf
|
||||
findlib
|
||||
];
|
||||
buildInputs = [
|
||||
freetype
|
||||
lablgtk
|
||||
cairo
|
||||
gdk-pixbuf
|
||||
gtk2
|
||||
pango
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
createFindlibDestdir = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
unzip
|
||||
ocaml
|
||||
automake
|
||||
gnum4
|
||||
autoconf
|
||||
findlib
|
||||
];
|
||||
buildInputs = [
|
||||
freetype
|
||||
lablgtk
|
||||
cairo
|
||||
gdk-pixbuf
|
||||
gtk2
|
||||
pango
|
||||
];
|
||||
preConfigure = ''
|
||||
aclocal -I support
|
||||
autoconf
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE `pkg-config --cflags cairo gdk-pixbuf glib gtk+ pango`"
|
||||
export LABLGTKDIR=${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2
|
||||
cp ${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2/pango.ml ./src
|
||||
cp ${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2/gaux.ml ./src
|
||||
'';
|
||||
|
||||
createFindlibDestdir = true;
|
||||
postInstall = ''
|
||||
cp META $out/lib/ocaml/${ocaml.version}/site-lib/cairo/
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
aclocal -I support
|
||||
autoconf
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE `pkg-config --cflags cairo gdk-pixbuf glib gtk+ pango`"
|
||||
export LABLGTKDIR=${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2
|
||||
cp ${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2/pango.ml ./src
|
||||
cp ${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2/gaux.ml ./src
|
||||
'';
|
||||
makeFlags = [ "INSTALLDIR=$(out)/lib/ocaml/${ocaml.version}/site-lib/cairo" ];
|
||||
|
||||
postInstall = ''
|
||||
cp META $out/lib/ocaml/${ocaml.version}/site-lib/cairo/
|
||||
'';
|
||||
|
||||
makeFlags = [ "INSTALLDIR=$(out)/lib/ocaml/${ocaml.version}/site-lib/cairo" ];
|
||||
|
||||
meta = {
|
||||
homepage = "http://cairographics.org/cairo-ocaml";
|
||||
description = "Ocaml bindings for cairo library";
|
||||
license = lib.licenses.gpl2;
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
homepage = "http://cairographics.org/cairo-ocaml";
|
||||
description = "Ocaml bindings for cairo library";
|
||||
license = lib.licenses.gpl2;
|
||||
broken = lib.versionAtLeast ocaml.version "4.06";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -10,49 +10,46 @@
|
||||
perl,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.02")
|
||||
"libvirt is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml-libvirt";
|
||||
version = "0.6.1.5";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml-libvirt";
|
||||
version = "0.6.1.5";
|
||||
src = fetchFromGitLab {
|
||||
owner = "libvirt";
|
||||
repo = "libvirt-ocaml";
|
||||
rev = "v${version}";
|
||||
sha256 = "0xpkdmknk74yqxgw8z2w8b7ss8hpx92xnab5fsqg2byyj55gzf2k";
|
||||
};
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "libvirt";
|
||||
repo = "libvirt-ocaml";
|
||||
rev = "v${version}";
|
||||
sha256 = "0xpkdmknk74yqxgw8z2w8b7ss8hpx92xnab5fsqg2byyj55gzf2k";
|
||||
};
|
||||
propagatedBuildInputs = [ libvirt ];
|
||||
|
||||
propagatedBuildInputs = [ libvirt ];
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
pkg-config
|
||||
findlib
|
||||
perl
|
||||
ocaml
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoreconfHook
|
||||
pkg-config
|
||||
findlib
|
||||
perl
|
||||
ocaml
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
buildFlags = [
|
||||
"all"
|
||||
"opt"
|
||||
"CPPFLAGS=-Wno-error"
|
||||
];
|
||||
installTargets = "install-opt";
|
||||
preInstall = ''
|
||||
# Fix 'dllmllibvirt.so' install failure into non-existent directory.
|
||||
mkdir -p $OCAMLFIND_DESTDIR/stublibs
|
||||
'';
|
||||
|
||||
buildFlags = [
|
||||
"all"
|
||||
"opt"
|
||||
"CPPFLAGS=-Wno-error"
|
||||
];
|
||||
installTargets = "install-opt";
|
||||
preInstall = ''
|
||||
# Fix 'dllmllibvirt.so' install failure into non-existent directory.
|
||||
mkdir -p $OCAMLFIND_DESTDIR/stublibs
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "OCaml bindings for libvirt";
|
||||
homepage = "https://libvirt.org/ocaml/";
|
||||
license = licenses.gpl2;
|
||||
maintainers = [ ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "OCaml bindings for libvirt";
|
||||
homepage = "https://libvirt.org/ocaml/";
|
||||
license = licenses.gpl2;
|
||||
maintainers = [ ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.02");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,30 +7,27 @@
|
||||
ppx_derivers,
|
||||
}:
|
||||
|
||||
if lib.versionOlder "4.13" ocaml.version then
|
||||
throw "ocaml-migrate-parsetree-1.8 is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
buildDunePackage rec {
|
||||
pname = "ocaml-migrate-parsetree";
|
||||
version = "1.8.0";
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "ocaml-migrate-parsetree";
|
||||
version = "1.8.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocaml-ppx";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "16x8sxc4ygxrr1868qpzfqyrvjf3hfxvjzmxmf6ibgglq7ixa2nq";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocaml-ppx";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "16x8sxc4ygxrr1868qpzfqyrvjf3hfxvjzmxmf6ibgglq7ixa2nq";
|
||||
};
|
||||
propagatedBuildInputs = [
|
||||
ppx_derivers
|
||||
result
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
ppx_derivers
|
||||
result
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Convert OCaml parsetrees between different major versions";
|
||||
license = lib.licenses.lgpl21;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (src.meta) homepage;
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "Convert OCaml parsetrees between different major versions";
|
||||
license = lib.licenses.lgpl21;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (src.meta) homepage;
|
||||
broken = lib.versionOlder "4.13" ocaml.version;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,28 +5,25 @@
|
||||
ocaml,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.1")
|
||||
"ocaml-migrate-parsetree is not available for OCaml ${ocaml.version}"
|
||||
buildDunePackage rec {
|
||||
pname = "ocaml-migrate-parsetree";
|
||||
version = "2.4.0";
|
||||
|
||||
buildDunePackage
|
||||
rec {
|
||||
pname = "ocaml-migrate-parsetree";
|
||||
version = "2.4.0";
|
||||
minimalOCamlVersion = "4.02";
|
||||
|
||||
minimalOCamlVersion = "4.02";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ocaml-ppx/${pname}/releases/download/${version}/${pname}-${version}.tbz";
|
||||
sha256 = "sha256-7EnEUtwzemIFVqtoK/AZi/UBglULUC2PsjClkSYKpqQ=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ocaml-ppx/${pname}/releases/download/${version}/${pname}-${version}.tbz";
|
||||
sha256 = "sha256-7EnEUtwzemIFVqtoK/AZi/UBglULUC2PsjClkSYKpqQ=";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Convert OCaml parsetrees between different major versions";
|
||||
license = lib.licenses.lgpl21;
|
||||
maintainers = with lib.maintainers; [
|
||||
vbgl
|
||||
sternenseemann
|
||||
];
|
||||
homepage = "https://github.com/ocaml-ppx/ocaml-migrate-parsetree";
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "Convert OCaml parsetrees between different major versions";
|
||||
license = lib.licenses.lgpl21;
|
||||
maintainers = with lib.maintainers; [
|
||||
vbgl
|
||||
sternenseemann
|
||||
];
|
||||
homepage = "https://github.com/ocaml-ppx/ocaml-migrate-parsetree";
|
||||
broken = lib.versionAtLeast ocaml.version "5.1";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -13,41 +13,35 @@
|
||||
let
|
||||
inherit (callPackage ./generic.nix args) src version library_deps;
|
||||
in
|
||||
buildDunePackage {
|
||||
pname = "ocamlformat";
|
||||
inherit src version;
|
||||
|
||||
lib.throwIf
|
||||
(
|
||||
lib.versionAtLeast ocaml.version "5.0" && !lib.versionAtLeast version "0.23"
|
||||
|| lib.versionAtLeast ocaml.version "5.1" && !lib.versionAtLeast version "0.25"
|
||||
|| lib.versionAtLeast ocaml.version "5.2" && !lib.versionAtLeast version "0.26.2"
|
||||
|| lib.versionAtLeast ocaml.version "5.3" && !lib.versionAtLeast version "0.27"
|
||||
)
|
||||
"ocamlformat ${version} is not available for OCaml ${ocaml.version}"
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
buildDunePackage
|
||||
{
|
||||
pname = "ocamlformat";
|
||||
inherit src version;
|
||||
nativeBuildInputs = if lib.versionAtLeast version "0.25.1" then [ ] else [ menhir ];
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
buildInputs = [
|
||||
re
|
||||
]
|
||||
++ library_deps
|
||||
++ lib.optionals (lib.versionAtLeast version "0.25.1") [
|
||||
(ocamlformat-lib.override { inherit version; })
|
||||
];
|
||||
|
||||
nativeBuildInputs = if lib.versionAtLeast version "0.25.1" then [ ] else [ menhir ];
|
||||
|
||||
buildInputs = [
|
||||
re
|
||||
]
|
||||
++ library_deps
|
||||
++ lib.optionals (lib.versionAtLeast version "0.25.1") [
|
||||
(ocamlformat-lib.override { inherit version; })
|
||||
meta = {
|
||||
homepage = "https://github.com/ocaml-ppx/ocamlformat";
|
||||
description = "Auto-formatter for OCaml code";
|
||||
maintainers = with lib.maintainers; [
|
||||
Zimmi48
|
||||
Julow
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/ocaml-ppx/ocamlformat";
|
||||
description = "Auto-formatter for OCaml code";
|
||||
maintainers = with lib.maintainers; [
|
||||
Zimmi48
|
||||
Julow
|
||||
];
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "ocamlformat";
|
||||
};
|
||||
}
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "ocamlformat";
|
||||
broken =
|
||||
lib.versionAtLeast ocaml.version "5.0" && !lib.versionAtLeast version "0.23"
|
||||
|| lib.versionAtLeast ocaml.version "5.1" && !lib.versionAtLeast version "0.25"
|
||||
|| lib.versionAtLeast ocaml.version "5.2" && !lib.versionAtLeast version "0.26.2"
|
||||
|| lib.versionAtLeast ocaml.version "5.3" && !lib.versionAtLeast version "0.27";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -13,65 +13,62 @@
|
||||
nettle,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionOlder ocaml.version "4.02" || lib.versionAtLeast ocaml.version "5.0")
|
||||
"ocamlnet is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-ocamlnet";
|
||||
version = "4.1.9";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-ocamlnet";
|
||||
version = "4.1.9";
|
||||
src = fetchurl {
|
||||
url = "http://download.camlcity.org/download/ocamlnet-${version}.tar.gz";
|
||||
sha256 = "1vlwxjxr946gdl61a1d7yk859cijq45f60dhn54ik3w4g6cx33pr";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.camlcity.org/download/ocamlnet-${version}.tar.gz";
|
||||
sha256 = "1vlwxjxr946gdl61a1d7yk859cijq45f60dhn54ik3w4g6cx33pr";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
which
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
buildInputs = [
|
||||
ncurses
|
||||
ocaml_pcre
|
||||
camlzip
|
||||
gnutls
|
||||
nettle
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
which
|
||||
ocaml
|
||||
findlib
|
||||
strictDeps = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
dontAddPrefix = true;
|
||||
dontAddStaticConfigureFlags = true;
|
||||
configurePlatforms = [ ];
|
||||
|
||||
preConfigure = ''
|
||||
configureFlagsArray=(
|
||||
-bindir $out/bin
|
||||
-enable-gnutls
|
||||
-enable-zip
|
||||
-enable-pcre
|
||||
-disable-gtk2
|
||||
-with-nethttpd
|
||||
-datadir $out/lib/ocaml/${ocaml.version}/ocamlnet
|
||||
)
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
make all
|
||||
make opt
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "http://projects.camlcity.org/projects/ocamlnet.html";
|
||||
description = "Library implementing Internet protocols (http, cgi, email, etc.) for OCaml";
|
||||
license = "Most Ocamlnet modules are released under the zlib/png license. The HTTP server module Nethttpd is, however, under the GPL.";
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [
|
||||
lib.maintainers.maggesi
|
||||
];
|
||||
buildInputs = [
|
||||
ncurses
|
||||
ocaml_pcre
|
||||
camlzip
|
||||
gnutls
|
||||
nettle
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
dontAddPrefix = true;
|
||||
dontAddStaticConfigureFlags = true;
|
||||
configurePlatforms = [ ];
|
||||
|
||||
preConfigure = ''
|
||||
configureFlagsArray=(
|
||||
-bindir $out/bin
|
||||
-enable-gnutls
|
||||
-enable-zip
|
||||
-enable-pcre
|
||||
-disable-gtk2
|
||||
-with-nethttpd
|
||||
-datadir $out/lib/ocaml/${ocaml.version}/ocamlnet
|
||||
)
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
make all
|
||||
make opt
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "http://projects.camlcity.org/projects/ocamlnet.html";
|
||||
description = "Library implementing Internet protocols (http, cgi, email, etc.) for OCaml";
|
||||
license = "Most Ocamlnet modules are released under the zlib/png license. The HTTP server module Nethttpd is, however, under the GPL.";
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [
|
||||
lib.maintainers.maggesi
|
||||
];
|
||||
};
|
||||
}
|
||||
broken = lib.versionOlder ocaml.version "4.02" || lib.versionAtLeast ocaml.version "5.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,42 +8,39 @@
|
||||
pprint,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.02" then
|
||||
throw "ocp-ocamlres is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-ocp-ocamlres";
|
||||
version = "0.4";
|
||||
src = fetchFromGitHub {
|
||||
owner = "OCamlPro";
|
||||
repo = "ocp-ocamlres";
|
||||
rev = "v${version}";
|
||||
sha256 = "0smfwrj8qhzknhzawygxi0vgl2af4vyi652fkma59rzjpvscqrnn";
|
||||
};
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-ocp-ocamlres";
|
||||
version = "0.4";
|
||||
src = fetchFromGitHub {
|
||||
owner = "OCamlPro";
|
||||
repo = "ocp-ocamlres";
|
||||
rev = "v${version}";
|
||||
sha256 = "0smfwrj8qhzknhzawygxi0vgl2af4vyi652fkma59rzjpvscqrnn";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
buildInputs = [
|
||||
astring
|
||||
pprint
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
buildInputs = [
|
||||
astring
|
||||
pprint
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
installFlags = [ "BINDIR=$(out)/bin" ];
|
||||
preInstall = "mkdir -p $out/bin";
|
||||
|
||||
installFlags = [ "BINDIR=$(out)/bin" ];
|
||||
preInstall = "mkdir -p $out/bin";
|
||||
|
||||
meta = {
|
||||
description = "Simple tool and library to embed files and directories inside OCaml executables";
|
||||
homepage = "https://www.typerex.org/ocp-ocamlres.html";
|
||||
license = lib.licenses.lgpl3Plus;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
mainProgram = "ocp-ocamlres";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "Simple tool and library to embed files and directories inside OCaml executables";
|
||||
homepage = "https://www.typerex.org/ocp-ocamlres.html";
|
||||
license = lib.licenses.lgpl3Plus;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
mainProgram = "ocp-ocamlres";
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = lib.versionOlder ocaml.version "4.02";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,40 +9,39 @@
|
||||
lwt,
|
||||
lwt_ppx,
|
||||
}:
|
||||
if lib.versionOlder ocaml.version "4.04" then
|
||||
throw "ocurl is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocurl";
|
||||
version = "0.9.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ygrek/ocurl/releases/download/${version}/ocurl-${version}.tar.gz";
|
||||
sha256 = "sha256-4DWXGMh02s1VwLWW5d7h0jtMOUubWmBPGm1hghfWd2M=";
|
||||
};
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocurl";
|
||||
version = "0.9.2";
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
ocaml
|
||||
findlib
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ygrek/ocurl/releases/download/${version}/ocurl-${version}.tar.gz";
|
||||
sha256 = "sha256-4DWXGMh02s1VwLWW5d7h0jtMOUubWmBPGm1hghfWd2M=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
curl
|
||||
lwt
|
||||
lwt_ppx
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
meta = {
|
||||
description = "OCaml bindings to libcurl";
|
||||
license = lib.licenses.mit;
|
||||
homepage = "http://ygrek.org.ua/p/ocurl/";
|
||||
maintainers = with lib.maintainers; [
|
||||
dandellion
|
||||
bennofs
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
curl
|
||||
lwt
|
||||
lwt_ppx
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
meta = {
|
||||
description = "OCaml bindings to libcurl";
|
||||
license = lib.licenses.mit;
|
||||
homepage = "http://ygrek.org.ua/p/ocurl/";
|
||||
maintainers = with lib.maintainers; [
|
||||
dandellion
|
||||
bennofs
|
||||
];
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
};
|
||||
}
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
broken = lib.versionOlder ocaml.version "4.04";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -10,37 +10,34 @@
|
||||
autoconf,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"osdp is not available for OCaml ${ocaml.version}"
|
||||
buildDunePackage {
|
||||
pname = "osdp";
|
||||
version = "1.1.1";
|
||||
|
||||
buildDunePackage
|
||||
{
|
||||
pname = "osdp";
|
||||
version = "1.1.1";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/Embedded-SW-VnV/osdp/releases/download/v1.1.1/osdp-1.1.1.tgz";
|
||||
hash = "sha256-X7CS2g+MyQPDjhUCvFS/DoqcCXTEw8SCsSGED64TGKQ=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/Embedded-SW-VnV/osdp/releases/download/v1.1.1/osdp-1.1.1.tgz";
|
||||
hash = "sha256-X7CS2g+MyQPDjhUCvFS/DoqcCXTEw8SCsSGED64TGKQ=";
|
||||
};
|
||||
preConfigure = ''
|
||||
autoconf
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
autoconf
|
||||
'';
|
||||
nativeBuildInputs = [
|
||||
autoconf
|
||||
findlib
|
||||
csdp
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
zarith
|
||||
ocplib-simplex
|
||||
csdp
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoconf
|
||||
findlib
|
||||
csdp
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
zarith
|
||||
ocplib-simplex
|
||||
csdp
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "OCaml Interface to SDP solvers";
|
||||
homepage = "https://github.com/Embedded-SW-VnV/osdp";
|
||||
license = lib.licenses.lgpl3Plus;
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "OCaml Interface to SDP solvers";
|
||||
homepage = "https://github.com/Embedded-SW-VnV/osdp";
|
||||
license = lib.licenses.lgpl3Plus;
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -11,54 +11,51 @@
|
||||
base64,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"piqi is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.6.16";
|
||||
pname = "piqi";
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
version = "0.6.16";
|
||||
pname = "piqi";
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
src = fetchFromGitHub {
|
||||
owner = "alavrik";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-qE+yybTn+kzbY0h8udhZYO+GwQPI/J/6p3LMmF12cFU=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "alavrik";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-qE+yybTn+kzbY0h8udhZYO+GwQPI/J/6p3LMmF12cFU=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
which
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
sedlex
|
||||
xmlm
|
||||
easy-format
|
||||
base64
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
which
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
sedlex
|
||||
xmlm
|
||||
easy-format
|
||||
base64
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
patches = [
|
||||
./no-stream.patch
|
||||
./no-ocamlpath-override.patch
|
||||
];
|
||||
|
||||
patches = [
|
||||
./no-stream.patch
|
||||
./no-ocamlpath-override.patch
|
||||
];
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
postBuild = "make -C piqilib piqilib.cma";
|
||||
|
||||
postBuild = "make -C piqilib piqilib.cma";
|
||||
installTargets = [
|
||||
"install"
|
||||
"ocaml-install"
|
||||
];
|
||||
|
||||
installTargets = [
|
||||
"install"
|
||||
"ocaml-install"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://piqi.org";
|
||||
description = "Universal schema language and a collection of tools built around it";
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.maurer ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://piqi.org";
|
||||
description = "Universal schema language and a collection of tools built around it";
|
||||
license = licenses.asl20;
|
||||
maintainers = [ maintainers.maurer ];
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -14,46 +14,43 @@
|
||||
findlib,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.2")
|
||||
"ppx_cstubs is not available for OCaml ${ocaml.version}"
|
||||
buildDunePackage rec {
|
||||
pname = "ppx_cstubs";
|
||||
version = "0.7.0";
|
||||
|
||||
buildDunePackage
|
||||
rec {
|
||||
pname = "ppx_cstubs";
|
||||
version = "0.7.0";
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
src = fetchFromGitHub {
|
||||
owner = "fdopen";
|
||||
repo = "ppx_cstubs";
|
||||
rev = version;
|
||||
hash = "sha256-qMmwRWCIfNyhCQYPKLiufnb57sTR3P+WInOqtPDywFs=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fdopen";
|
||||
repo = "ppx_cstubs";
|
||||
rev = version;
|
||||
hash = "sha256-qMmwRWCIfNyhCQYPKLiufnb57sTR3P+WInOqtPDywFs=";
|
||||
};
|
||||
patches = [ ./ppxlib.patch ];
|
||||
|
||||
patches = [ ./ppxlib.patch ];
|
||||
nativeBuildInputs = [ cppo ];
|
||||
|
||||
nativeBuildInputs = [ cppo ];
|
||||
buildInputs = [
|
||||
bigarray-compat
|
||||
containers
|
||||
findlib
|
||||
integers
|
||||
num
|
||||
ppxlib
|
||||
re
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
bigarray-compat
|
||||
containers
|
||||
findlib
|
||||
integers
|
||||
num
|
||||
ppxlib
|
||||
re
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
ctypes
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
ctypes
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/fdopen/ppx_cstubs";
|
||||
changelog = "https://github.com/fdopen/ppx_cstubs/raw/${version}/CHANGES.md";
|
||||
description = "Preprocessor for easier stub generation with ocaml-ctypes";
|
||||
license = licenses.lgpl21Plus;
|
||||
maintainers = [ maintainers.osener ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/fdopen/ppx_cstubs";
|
||||
changelog = "https://github.com/fdopen/ppx_cstubs/raw/${version}/CHANGES.md";
|
||||
description = "Preprocessor for easier stub generation with ocaml-ctypes";
|
||||
license = licenses.lgpl21Plus;
|
||||
maintainers = [ maintainers.osener ];
|
||||
broken = lib.versionAtLeast ocaml.version "5.2";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,97 +8,85 @@
|
||||
cppo,
|
||||
}:
|
||||
|
||||
if lib.versionAtLeast ocaml.version "5.2" then
|
||||
throw "ppx_tools is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
|
||||
let
|
||||
param =
|
||||
let
|
||||
v6_6 = {
|
||||
version = "6.6";
|
||||
sha256 = "sha256-QhuaQ9346a3neoRM4GrOVzjR8fg9ysMZR1VzNgyIQtc=";
|
||||
nativeBuildInputs = [ cppo ];
|
||||
buildInputs = [ cppo ];
|
||||
};
|
||||
in
|
||||
{
|
||||
"4.02" = {
|
||||
version = "5.0+4.02.0";
|
||||
sha256 = "16drjk0qafjls8blng69qiv35a84wlafpk16grrg2i3x19p8dlj8";
|
||||
};
|
||||
"4.03" = {
|
||||
version = "5.0+4.03.0";
|
||||
sha256 = "061v1fl5z7z3ywi4ppryrlcywnvnqbsw83ppq72qmkc7ma4603jg";
|
||||
};
|
||||
"4.04" = {
|
||||
version = "unstable-20161114";
|
||||
rev = "49c08e2e4ea8fef88692cd1dcc1b38a9133f17ac";
|
||||
sha256 = "0ywzfkf5brj33nwh49k9if8x8v433ral25f3nbklfc9vqr06zrfl";
|
||||
};
|
||||
"4.05" = {
|
||||
version = "5.0+4.05.0";
|
||||
sha256 = "1jvvhk6wnkvm7b9zph309ihsc0hyxfpahmxxrq19vx8c674jsdm4";
|
||||
};
|
||||
"4.06" = {
|
||||
version = "5.1+4.06.0";
|
||||
sha256 = "1ww4cspdpgjjsgiv71s0im5yjkr3544x96wsq1vpdacq7dr7zwiw";
|
||||
};
|
||||
"4.07" = {
|
||||
version = "5.1+4.06.0";
|
||||
sha256 = "1ww4cspdpgjjsgiv71s0im5yjkr3544x96wsq1vpdacq7dr7zwiw";
|
||||
};
|
||||
"4.08" = v6_6;
|
||||
"4.09" = v6_6;
|
||||
"4.10" = v6_6;
|
||||
"4.11" = v6_6;
|
||||
"4.12" = v6_6;
|
||||
"4.13" = v6_6;
|
||||
"4.14" = v6_6;
|
||||
"5.0" = v6_6;
|
||||
"5.1" = v6_6;
|
||||
}
|
||||
.${ocaml.meta.branch};
|
||||
in
|
||||
|
||||
let
|
||||
src = fetchFromGitHub {
|
||||
owner = "alainfrisch";
|
||||
repo = pname;
|
||||
rev = param.rev or param.version;
|
||||
inherit (param) sha256;
|
||||
};
|
||||
pname = "ppx_tools";
|
||||
meta = with lib; {
|
||||
description = "Tools for authors of ppx rewriters";
|
||||
homepage = "https://www.lexifi.com/ppx_tools";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ vbgl ];
|
||||
};
|
||||
in
|
||||
if lib.versionAtLeast param.version "6.0" then
|
||||
buildDunePackage {
|
||||
inherit pname src meta;
|
||||
inherit (param) version buildInputs nativeBuildInputs;
|
||||
}
|
||||
else
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml${ocaml.version}-${pname}-${param.version}";
|
||||
|
||||
inherit src;
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
meta = meta // {
|
||||
inherit (ocaml.meta) platforms;
|
||||
let
|
||||
param =
|
||||
let
|
||||
v6_6 = {
|
||||
version = "6.6";
|
||||
sha256 = "sha256-QhuaQ9346a3neoRM4GrOVzjR8fg9ysMZR1VzNgyIQtc=";
|
||||
nativeBuildInputs = [ cppo ];
|
||||
buildInputs = [ cppo ];
|
||||
};
|
||||
in
|
||||
{
|
||||
"4.02" = {
|
||||
version = "5.0+4.02.0";
|
||||
sha256 = "16drjk0qafjls8blng69qiv35a84wlafpk16grrg2i3x19p8dlj8";
|
||||
};
|
||||
"4.03" = {
|
||||
version = "5.0+4.03.0";
|
||||
sha256 = "061v1fl5z7z3ywi4ppryrlcywnvnqbsw83ppq72qmkc7ma4603jg";
|
||||
};
|
||||
"4.04" = {
|
||||
version = "unstable-20161114";
|
||||
rev = "49c08e2e4ea8fef88692cd1dcc1b38a9133f17ac";
|
||||
sha256 = "0ywzfkf5brj33nwh49k9if8x8v433ral25f3nbklfc9vqr06zrfl";
|
||||
};
|
||||
"4.05" = {
|
||||
version = "5.0+4.05.0";
|
||||
sha256 = "1jvvhk6wnkvm7b9zph309ihsc0hyxfpahmxxrq19vx8c674jsdm4";
|
||||
};
|
||||
"4.06" = {
|
||||
version = "5.1+4.06.0";
|
||||
sha256 = "1ww4cspdpgjjsgiv71s0im5yjkr3544x96wsq1vpdacq7dr7zwiw";
|
||||
};
|
||||
"4.07" = {
|
||||
version = "5.1+4.06.0";
|
||||
sha256 = "1ww4cspdpgjjsgiv71s0im5yjkr3544x96wsq1vpdacq7dr7zwiw";
|
||||
};
|
||||
}
|
||||
.${ocaml.meta.branch} or v6_6;
|
||||
in
|
||||
|
||||
let
|
||||
src = fetchFromGitHub {
|
||||
owner = "alainfrisch";
|
||||
repo = pname;
|
||||
rev = param.rev or param.version;
|
||||
inherit (param) sha256;
|
||||
};
|
||||
pname = "ppx_tools";
|
||||
meta = with lib; {
|
||||
description = "Tools for authors of ppx rewriters";
|
||||
homepage = "https://www.lexifi.com/ppx_tools";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ vbgl ];
|
||||
broken = lib.versionAtLeast ocaml.version "5.2";
|
||||
};
|
||||
in
|
||||
if lib.versionAtLeast param.version "6.0" then
|
||||
buildDunePackage {
|
||||
inherit pname src meta;
|
||||
inherit (param) version buildInputs nativeBuildInputs;
|
||||
}
|
||||
else
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml${ocaml.version}-${pname}-${param.version}";
|
||||
|
||||
inherit src;
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
meta = meta // {
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -103,37 +103,32 @@ let
|
||||
."${version}";
|
||||
in
|
||||
|
||||
if
|
||||
param ? max_version && lib.versionAtLeast ocaml.version param.max_version
|
||||
|| param ? min_version && lib.versionOlder ocaml.version param.min_version
|
||||
then
|
||||
throw "ppxlib-${version} is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
buildDunePackage rec {
|
||||
pname = "ppxlib";
|
||||
inherit version;
|
||||
|
||||
buildDunePackage rec {
|
||||
pname = "ppxlib";
|
||||
inherit version;
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ocaml-ppx/ppxlib/releases/download/${version}/ppxlib-${version}.tbz";
|
||||
inherit (param) sha256;
|
||||
};
|
||||
|
||||
src =
|
||||
param.src or (fetchurl {
|
||||
url = "https://github.com/ocaml-ppx/ppxlib/releases/download/${version}/ppxlib-${version}.tbz";
|
||||
inherit (param) sha256;
|
||||
});
|
||||
propagatedBuildInputs = [
|
||||
ocaml-compiler-libs
|
||||
]
|
||||
++ (param.OMP or [ ])
|
||||
++ [
|
||||
ppx_derivers
|
||||
stdio
|
||||
stdlib-shims
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
ocaml-compiler-libs
|
||||
]
|
||||
++ (param.OMP or [ ])
|
||||
++ [
|
||||
ppx_derivers
|
||||
stdio
|
||||
stdlib-shims
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Comprehensive ppx tool set";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
homepage = "https://github.com/ocaml-ppx/ppxlib";
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "Comprehensive ppx tool set";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
homepage = "https://github.com/ocaml-ppx/ppxlib";
|
||||
broken =
|
||||
param ? max_version && lib.versionAtLeast ocaml.version param.max_version
|
||||
|| param ? min_version && lib.versionOlder ocaml.version param.min_version;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,50 +8,47 @@
|
||||
topkg,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||
"ptime is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
version = "1.2.0";
|
||||
pname = "ocaml${ocaml.version}-ptime";
|
||||
|
||||
stdenv.mkDerivation
|
||||
(finalAttrs: {
|
||||
version = "1.2.0";
|
||||
pname = "ocaml${ocaml.version}-ptime";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/ptime/releases/ptime-${finalAttrs.version}.tbz";
|
||||
hash = "sha256-lhZ0f99JDsNugCTKsn7gHjoK9XfYojImY4+kA03nOrA=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/ptime/releases/ptime-${finalAttrs.version}.tbz";
|
||||
hash = "sha256-lhZ0f99JDsNugCTKsn7gHjoK9XfYojImY4+kA03nOrA=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
findlib
|
||||
ocaml
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
findlib
|
||||
ocaml
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [
|
||||
topkg
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
topkg
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
meta = {
|
||||
description = "POSIX time for OCaml";
|
||||
homepage = "https://erratique.ch/software/ptime";
|
||||
license = lib.licenses.isc;
|
||||
longDescription = ''
|
||||
Ptime has platform independent POSIX time support in pure OCaml.
|
||||
It provides a type to represent a well-defined range of POSIX timestamps
|
||||
with picosecond precision, conversion with date-time values, conversion
|
||||
with RFC 3339 timestamps and pretty printing to a human-readable,
|
||||
locale-independent representation.
|
||||
|
||||
meta = {
|
||||
description = "POSIX time for OCaml";
|
||||
homepage = "https://erratique.ch/software/ptime";
|
||||
license = lib.licenses.isc;
|
||||
longDescription = ''
|
||||
Ptime has platform independent POSIX time support in pure OCaml.
|
||||
It provides a type to represent a well-defined range of POSIX timestamps
|
||||
with picosecond precision, conversion with date-time values, conversion
|
||||
with RFC 3339 timestamps and pretty printing to a human-readable,
|
||||
locale-independent representation.
|
||||
The additional Ptime_clock library provides access to a system POSIX clock
|
||||
and to the system's current time zone offset.
|
||||
|
||||
The additional Ptime_clock library provides access to a system POSIX clock
|
||||
and to the system's current time zone offset.
|
||||
|
||||
Ptime is not a calendar library.
|
||||
'';
|
||||
maintainers = with lib.maintainers; [ sternenseemann ];
|
||||
};
|
||||
})
|
||||
Ptime is not a calendar library.
|
||||
'';
|
||||
maintainers = with lib.maintainers; [ sternenseemann ];
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.08");
|
||||
};
|
||||
})
|
||||
|
||||
@@ -9,37 +9,34 @@
|
||||
result,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.07")
|
||||
"rresult is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-rresult";
|
||||
version = "0.7.0";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/rresult/releases/rresult-${version}.tbz";
|
||||
sha256 = "sha256-Eap/W4NGDmBDHjFU4+MsBx1G4VHqV2DPJDd4Bb+XVUA=";
|
||||
};
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-rresult";
|
||||
version = "0.7.0";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/rresult/releases/rresult-${version}.tbz";
|
||||
sha256 = "sha256-Eap/W4NGDmBDHjFU4+MsBx1G4VHqV2DPJDd4Bb+XVUA=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
propagatedBuildInputs = [ result ];
|
||||
|
||||
propagatedBuildInputs = [ result ];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = {
|
||||
license = lib.licenses.isc;
|
||||
homepage = "https://erratique.ch/software/rresult";
|
||||
description = "Result value combinators for OCaml";
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
license = lib.licenses.isc;
|
||||
homepage = "https://erratique.ch/software/rresult";
|
||||
description = "Result value combinators for OCaml";
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.07");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -12,51 +12,47 @@ let
|
||||
pname = "sawja";
|
||||
version = "1.5.12";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||
"${pname} is not available for OCaml ${ocaml.version}"
|
||||
pname = "ocaml${ocaml.version}-${pname}";
|
||||
|
||||
stdenv.mkDerivation
|
||||
{
|
||||
inherit version;
|
||||
|
||||
pname = "ocaml${ocaml.version}-${pname}";
|
||||
src = fetchFromGitHub {
|
||||
owner = "javalib-team";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-G1W8/G0TEcldnFnH/NAb9a6ZSGGP2fWTM47lI8bBHnw=";
|
||||
};
|
||||
|
||||
inherit version;
|
||||
nativeBuildInputs = [
|
||||
which
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "javalib-team";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-G1W8/G0TEcldnFnH/NAb9a6ZSGGP2fWTM47lI8bBHnw=";
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
which
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
patches = [
|
||||
./configure.sh.patch
|
||||
./Makefile.config.example.patch
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
createFindlibDestdir = true;
|
||||
|
||||
patches = [
|
||||
./configure.sh.patch
|
||||
./Makefile.config.example.patch
|
||||
];
|
||||
configureScript = "./configure.sh";
|
||||
dontAddPrefix = "true";
|
||||
dontAddStaticConfigureFlags = true;
|
||||
configurePlatforms = [ ];
|
||||
|
||||
createFindlibDestdir = true;
|
||||
propagatedBuildInputs = [ javalib ];
|
||||
|
||||
configureScript = "./configure.sh";
|
||||
dontAddPrefix = "true";
|
||||
dontAddStaticConfigureFlags = true;
|
||||
configurePlatforms = [ ];
|
||||
|
||||
propagatedBuildInputs = [ javalib ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Library written in OCaml, relying on Javalib to provide a high level representation of Java bytecode programs";
|
||||
homepage = "http://sawja.inria.fr/";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "Library written in OCaml, relying on Javalib to provide a high level representation of Java bytecode programs";
|
||||
homepage = "http://sawja.inria.fr/";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.08");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,46 +9,43 @@
|
||||
libsodium,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"sodium is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-sodium";
|
||||
version = "0.6.0";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-sodium";
|
||||
version = "0.6.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "dsheets";
|
||||
repo = "ocaml-sodium";
|
||||
rev = version;
|
||||
sha256 = "124gpi1jhac46x05gp5viykyrafnlp03v1cmkl13c6pgcs8w04pv";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "dsheets";
|
||||
repo = "ocaml-sodium";
|
||||
rev = version;
|
||||
sha256 = "124gpi1jhac46x05gp5viykyrafnlp03v1cmkl13c6pgcs8w04pv";
|
||||
};
|
||||
patches = [
|
||||
# ctypes.stubs no longer pulls in bigarray automatically
|
||||
./lib-gen-link-bigarray.patch
|
||||
];
|
||||
|
||||
patches = [
|
||||
# ctypes.stubs no longer pulls in bigarray automatically
|
||||
./lib-gen-link-bigarray.patch
|
||||
];
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
ctypes
|
||||
libsodium
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
propagatedBuildInputs = [
|
||||
ctypes
|
||||
libsodium
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
hardeningDisable = lib.optional stdenv.hostPlatform.isDarwin "strictoverflow";
|
||||
|
||||
hardeningDisable = lib.optional stdenv.hostPlatform.isDarwin "strictoverflow";
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/dsheets/ocaml-sodium";
|
||||
description = "Binding to libsodium 1.0.9+";
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [ maintainers.rixed ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/dsheets/ocaml-sodium";
|
||||
description = "Binding to libsodium 1.0.9+";
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [ maintainers.rixed ];
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,46 +7,43 @@
|
||||
ocamlbuild,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionOlder ocaml.version "4.02")
|
||||
"sosa is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-sosa";
|
||||
version = "0.3.0";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-sosa";
|
||||
version = "0.3.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "hammerlab";
|
||||
repo = "sosa";
|
||||
rev = "sosa.${version}";
|
||||
sha256 = "053hdv6ww0q4mivajj4iyp7krfvgq8zajq9d8x4mia4lid7j0dyk";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "hammerlab";
|
||||
repo = "sosa";
|
||||
rev = "sosa.${version}";
|
||||
sha256 = "053hdv6ww0q4mivajj4iyp7krfvgq8zajq9d8x4mia4lid7j0dyk";
|
||||
};
|
||||
postPatch = lib.optionalString (lib.versionAtLeast ocaml.version "4.07") ''
|
||||
for p in functors list_of of_mutable
|
||||
do
|
||||
substituteInPlace src/lib/$p.ml --replace Pervasives. Stdlib.
|
||||
done
|
||||
'';
|
||||
|
||||
postPatch = lib.optionalString (lib.versionAtLeast ocaml.version "4.07") ''
|
||||
for p in functors list_of of_mutable
|
||||
do
|
||||
substituteInPlace src/lib/$p.ml --replace Pervasives. Stdlib.
|
||||
done
|
||||
'';
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
ocamlbuild
|
||||
findlib
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
ocamlbuild
|
||||
findlib
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
buildPhase = "make build";
|
||||
|
||||
buildPhase = "make build";
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
doCheck = true;
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "http://www.hammerlab.org/docs/sosa/master/index.html";
|
||||
description = "Sane OCaml String API";
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.alexfmpe ];
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "http://www.hammerlab.org/docs/sosa/master/index.html";
|
||||
description = "Sane OCaml String API";
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.alexfmpe ];
|
||||
broken = !(lib.versionOlder ocaml.version "4.02");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,27 +5,24 @@
|
||||
fetchurl,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.2")
|
||||
"stdcompat is not available for OCaml ${ocaml.version}"
|
||||
buildDunePackage rec {
|
||||
pname = "stdcompat";
|
||||
version = "19";
|
||||
|
||||
buildDunePackage
|
||||
rec {
|
||||
pname = "stdcompat";
|
||||
version = "19";
|
||||
minimalOCamlVersion = "4.06";
|
||||
|
||||
minimalOCamlVersion = "4.06";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/thierry-martinez/stdcompat/releases/download/v${version}/stdcompat-${version}.tar.gz";
|
||||
sha256 = "sha256-DKQGd4nnIN6SPls6hcA/2Jvc7ivYNpeMU6rYsVc1ClU=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/thierry-martinez/stdcompat/releases/download/v${version}/stdcompat-${version}.tar.gz";
|
||||
sha256 = "sha256-DKQGd4nnIN6SPls6hcA/2Jvc7ivYNpeMU6rYsVc1ClU=";
|
||||
};
|
||||
# Otherwise ./configure script will run and create files conflicting with dune.
|
||||
dontConfigure = true;
|
||||
|
||||
# Otherwise ./configure script will run and create files conflicting with dune.
|
||||
dontConfigure = true;
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/thierry-martinez/stdcompat";
|
||||
license = lib.licenses.bsd2;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
homepage = "https://github.com/thierry-martinez/stdcompat";
|
||||
license = lib.licenses.bsd2;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
broken = lib.versionAtLeast ocaml.version "5.2";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -13,56 +13,53 @@
|
||||
pkg-config,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.03" then
|
||||
throw "tsdl is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
let
|
||||
pname = "tsdl";
|
||||
version = "1.1.0";
|
||||
webpage = "https://erratique.ch/software/${pname}";
|
||||
in
|
||||
|
||||
let
|
||||
pname = "tsdl";
|
||||
version = "1.1.0";
|
||||
webpage = "https://erratique.ch/software/${pname}";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "ocaml${ocaml.version}-${pname}";
|
||||
inherit version;
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "ocaml${ocaml.version}-${pname}";
|
||||
inherit version;
|
||||
src = fetchurl {
|
||||
url = "${webpage}/releases/${pname}-${version}.tbz";
|
||||
hash = "sha256-ZN4+trqesU1IREKcwm1Ro37jszKG8XcVigoE4BdGhzs=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "${webpage}/releases/${pname}-${version}.tbz";
|
||||
hash = "sha256-ZN4+trqesU1IREKcwm1Ro37jszKG8XcVigoE4BdGhzs=";
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
propagatedBuildInputs = [
|
||||
SDL2
|
||||
ctypes
|
||||
ctypes-foreign
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
propagatedBuildInputs = [
|
||||
SDL2
|
||||
ctypes
|
||||
ctypes-foreign
|
||||
];
|
||||
preConfigure = ''
|
||||
# The following is done to avoid an additional dependency (ncurses)
|
||||
# due to linking in the custom bytecode runtime. Instead, just
|
||||
# compile directly into a native binary, even if it's just a
|
||||
# temporary build product.
|
||||
substituteInPlace myocamlbuild.ml \
|
||||
--replace ".byte" ".native"
|
||||
'';
|
||||
|
||||
preConfigure = ''
|
||||
# The following is done to avoid an additional dependency (ncurses)
|
||||
# due to linking in the custom bytecode runtime. Instead, just
|
||||
# compile directly into a native binary, even if it's just a
|
||||
# temporary build product.
|
||||
substituteInPlace myocamlbuild.ml \
|
||||
--replace ".byte" ".native"
|
||||
'';
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = with lib; {
|
||||
homepage = webpage;
|
||||
description = "Thin bindings to the cross-platform SDL library";
|
||||
license = licenses.isc;
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = webpage;
|
||||
description = "Thin bindings to the cross-platform SDL library";
|
||||
license = licenses.isc;
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = lib.versionOlder ocaml.version "4.03";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -6,45 +6,42 @@
|
||||
findlib,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"twt is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-twt";
|
||||
version = "0.94.0";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-twt";
|
||||
version = "0.94.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "mlin";
|
||||
repo = "twt";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-xbjLPd7P1KyuC3i6WHLBcdLwd14atcBsd5ER+l97KAk=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mlin";
|
||||
repo = "twt";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-xbjLPd7P1KyuC3i6WHLBcdLwd14atcBsd5ER+l97KAk=";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
preInstall = ''
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $OCAMLFIND_DESTDIR
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $OCAMLFIND_DESTDIR
|
||||
'';
|
||||
dontBuild = true;
|
||||
|
||||
dontBuild = true;
|
||||
installFlags = [ "PREFIX=$(out)" ];
|
||||
|
||||
installFlags = [ "PREFIX=$(out)" ];
|
||||
dontStrip = true;
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "“The Whitespace Thing” for OCaml";
|
||||
homepage = "http://people.csail.mit.edu/mikelin/ocaml+twt/";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
mainProgram = "ocaml+twt";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "“The Whitespace Thing” for OCaml";
|
||||
homepage = "http://people.csail.mit.edu/mikelin/ocaml+twt/";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
mainProgram = "ocaml+twt";
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -22,44 +22,40 @@ let
|
||||
sha256 = "0cmscxcmcxhlshh4jd0lzw5ffzns12x3bj7h27smbc8waxkwffhl";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "ocaml${ocaml.version}-${pname}";
|
||||
inherit (param) version;
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"ulex is not available for OCaml ${ocaml.version}"
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocaml-community";
|
||||
repo = pname;
|
||||
rev = "v${param.version}";
|
||||
inherit (param) sha256;
|
||||
};
|
||||
|
||||
stdenv.mkDerivation
|
||||
{
|
||||
pname = "ocaml${ocaml.version}-${pname}";
|
||||
inherit (param) version;
|
||||
createFindlibDestdir = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocaml-community";
|
||||
repo = pname;
|
||||
rev = "v${param.version}";
|
||||
inherit (param) sha256;
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
camlp4
|
||||
];
|
||||
propagatedBuildInputs = [ camlp4 ];
|
||||
|
||||
createFindlibDestdir = true;
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
camlp4
|
||||
];
|
||||
propagatedBuildInputs = [ camlp4 ];
|
||||
buildFlags = [
|
||||
"all"
|
||||
"all.opt"
|
||||
];
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
buildFlags = [
|
||||
"all"
|
||||
"all.opt"
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "https://opam.ocaml.org/packages/ulex/";
|
||||
description = "Lexer generator for Unicode and OCaml";
|
||||
license = lib.licenses.mit;
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [ lib.maintainers.roconnor ];
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
homepage = "https://opam.ocaml.org/packages/ulex/";
|
||||
description = "Lexer generator for Unicode and OCaml";
|
||||
license = lib.licenses.mit;
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = [ lib.maintainers.roconnor ];
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -8,21 +8,21 @@
|
||||
sexplib0,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.04" then
|
||||
throw "uri-sexp is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
buildDunePackage {
|
||||
pname = "uri-sexp";
|
||||
inherit (uri) version src;
|
||||
|
||||
buildDunePackage {
|
||||
pname = "uri-sexp";
|
||||
inherit (uri) version src meta;
|
||||
duneVersion = "3";
|
||||
|
||||
duneVersion = "3";
|
||||
checkInputs = [ ounit ];
|
||||
propagatedBuildInputs = [
|
||||
ppx_sexp_conv
|
||||
sexplib0
|
||||
uri
|
||||
];
|
||||
doCheck = lib.versionAtLeast ocaml.version "4.08";
|
||||
|
||||
checkInputs = [ ounit ];
|
||||
propagatedBuildInputs = [
|
||||
ppx_sexp_conv
|
||||
sexplib0
|
||||
uri
|
||||
];
|
||||
doCheck = lib.versionAtLeast ocaml.version "4.08";
|
||||
}
|
||||
meta = uri.meta // {
|
||||
broken = uri.meta.broken or false || lib.versionOlder ocaml.version "4.04";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -10,45 +10,42 @@
|
||||
version ? if lib.versionAtLeast ocaml.version "4.14" then "0.9.10" else "0.9.8",
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||
"uuidm is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation {
|
||||
inherit version;
|
||||
pname = "uuidm";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/uuidm/releases/uuidm-${version}.tbz";
|
||||
hash =
|
||||
{
|
||||
"0.9.10" = "sha256-kWVZSofWMyky5nAuxoh1xNhwMKZ2qUahL3Dh27J36Vc=";
|
||||
"0.9.8" = "sha256-/GZbkJVDQu1UY8SliK282kUWAVMfOnpQadUlRT/tJrM=";
|
||||
}
|
||||
."${version}";
|
||||
};
|
||||
|
||||
stdenv.mkDerivation
|
||||
{
|
||||
inherit version;
|
||||
pname = "uuidm";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/uuidm/releases/uuidm-${version}.tbz";
|
||||
hash =
|
||||
{
|
||||
"0.9.10" = "sha256-kWVZSofWMyky5nAuxoh1xNhwMKZ2qUahL3Dh27J36Vc=";
|
||||
"0.9.8" = "sha256-/GZbkJVDQu1UY8SliK282kUWAVMfOnpQadUlRT/tJrM=";
|
||||
}
|
||||
."${version}";
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
configurePlatforms = [ ];
|
||||
buildInputs = [
|
||||
topkg
|
||||
cmdliner
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
configurePlatforms = [ ];
|
||||
buildInputs = [
|
||||
topkg
|
||||
cmdliner
|
||||
];
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = with lib; {
|
||||
description = "OCaml module implementing 128 bits universally unique identifiers version 3, 5 (name based with MD5, SHA-1 hashing) and 4 (random based) according to RFC 4122";
|
||||
homepage = "https://erratique.ch/software/uuidm";
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.maurer ];
|
||||
mainProgram = "uuidtrip";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "OCaml module implementing 128 bits universally unique identifiers version 3, 5 (name based with MD5, SHA-1 hashing) and 4 (random based) according to RFC 4122";
|
||||
homepage = "https://erratique.ch/software/uuidm";
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.maurer ];
|
||||
mainProgram = "uuidtrip";
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.08");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -22,52 +22,48 @@ let
|
||||
}
|
||||
."${version}";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
inherit version;
|
||||
|
||||
if lib.versionOlder ocaml.version "4.03" then
|
||||
throw "${pname} is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
src = fetchurl {
|
||||
url = "${webpage}/releases/${pname}-${version}.tbz";
|
||||
inherit hash;
|
||||
};
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
inherit version;
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [
|
||||
topkg
|
||||
uutf
|
||||
]
|
||||
++ lib.optional cmdlinerSupport cmdliner;
|
||||
|
||||
src = fetchurl {
|
||||
url = "${webpage}/releases/${pname}-${version}.tbz";
|
||||
inherit hash;
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [
|
||||
topkg
|
||||
uutf
|
||||
]
|
||||
++ lib.optional cmdlinerSupport cmdliner;
|
||||
prePatch = lib.optionalString stdenv.hostPlatform.isAarch64 "ulimit -s 16384";
|
||||
|
||||
strictDeps = true;
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
${topkg.run} build \
|
||||
--with-uutf true \
|
||||
--with-cmdliner ${lib.boolToString cmdlinerSupport}
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
prePatch = lib.optionalString stdenv.hostPlatform.isAarch64 "ulimit -s 16384";
|
||||
inherit (topkg) installPhase;
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
${topkg.run} build \
|
||||
--with-uutf true \
|
||||
--with-cmdliner ${lib.boolToString cmdlinerSupport}
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
inherit (topkg) installPhase;
|
||||
|
||||
meta = with lib; {
|
||||
description = "OCaml module for normalizing Unicode text";
|
||||
homepage = webpage;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
mainProgram = "unftrip";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "OCaml module for normalizing Unicode text";
|
||||
homepage = webpage;
|
||||
license = licenses.bsd3;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
mainProgram = "unftrip";
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = lib.versionOlder ocaml.version "4.03";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -22,64 +22,60 @@ let
|
||||
version = "0.9.5";
|
||||
webpage = "https://erratique.ch/software/${pname}";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
|
||||
if versionOlder ocaml.version "4.14" then
|
||||
throw "vg is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
|
||||
stdenv.mkDerivation {
|
||||
src = fetchurl {
|
||||
url = "${webpage}/releases/${pname}-${version}.tbz";
|
||||
hash = "sha256-qcTtvIfSUwzpUZDspL+54UTNvWY6u3BTvfGWF6c0Jvw=";
|
||||
};
|
||||
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "${webpage}/releases/${pname}-${version}.tbz";
|
||||
hash = "sha256-qcTtvIfSUwzpUZDspL+54UTNvWY6u3BTvfGWF6c0Jvw=";
|
||||
};
|
||||
propagatedBuildInputs = [
|
||||
uchar
|
||||
result
|
||||
gg
|
||||
]
|
||||
++ optionals pdfBackend [
|
||||
otfm
|
||||
]
|
||||
++ optionals htmlcBackend [
|
||||
brr
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
strictDeps = true;
|
||||
|
||||
propagatedBuildInputs = [
|
||||
uchar
|
||||
result
|
||||
gg
|
||||
]
|
||||
++ optionals pdfBackend [
|
||||
otfm
|
||||
]
|
||||
++ optionals htmlcBackend [
|
||||
brr
|
||||
];
|
||||
buildPhase =
|
||||
topkg.buildPhase
|
||||
+ " --with-otfm ${lib.boolToString pdfBackend}"
|
||||
+ " --with-brr ${lib.boolToString htmlcBackend}"
|
||||
+ " --with-cairo2 false";
|
||||
|
||||
strictDeps = true;
|
||||
inherit (topkg) installPhase;
|
||||
|
||||
buildPhase =
|
||||
topkg.buildPhase
|
||||
+ " --with-otfm ${lib.boolToString pdfBackend}"
|
||||
+ " --with-brr ${lib.boolToString htmlcBackend}"
|
||||
+ " --with-cairo2 false";
|
||||
meta = with lib; {
|
||||
description = "Declarative 2D vector graphics for OCaml";
|
||||
longDescription = ''
|
||||
Vg is an OCaml module for declarative 2D vector graphics. In Vg, images
|
||||
are values that denote functions mapping points of the cartesian plane
|
||||
to colors. The module provides combinators to define and compose these
|
||||
values.
|
||||
|
||||
inherit (topkg) installPhase;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Declarative 2D vector graphics for OCaml";
|
||||
longDescription = ''
|
||||
Vg is an OCaml module for declarative 2D vector graphics. In Vg, images
|
||||
are values that denote functions mapping points of the cartesian plane
|
||||
to colors. The module provides combinators to define and compose these
|
||||
values.
|
||||
|
||||
Renderers for PDF, SVG and the HTML canvas are distributed with the
|
||||
module. An API allows to implement new renderers.
|
||||
'';
|
||||
homepage = webpage;
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.jirkamarsik ];
|
||||
mainProgram = "vecho";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
Renderers for PDF, SVG and the HTML canvas are distributed with the
|
||||
module. An API allows to implement new renderers.
|
||||
'';
|
||||
homepage = webpage;
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.jirkamarsik ];
|
||||
mainProgram = "vecho";
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = versionOlder ocaml.version "4.14";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -6,26 +6,23 @@
|
||||
dune-configurator,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"vlq is not available for OCaml ${ocaml.version}"
|
||||
buildDunePackage rec {
|
||||
pname = "vlq";
|
||||
version = "0.2.1";
|
||||
|
||||
buildDunePackage
|
||||
rec {
|
||||
pname = "vlq";
|
||||
version = "0.2.1";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/flowtype/ocaml-vlq/releases/download/v${version}/vlq-v${version}.tbz";
|
||||
sha256 = "02wr9ph4q0nxmqgbc67ydf165hmrdv9b655krm2glc3ahb6larxi";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/flowtype/ocaml-vlq/releases/download/v${version}/vlq-v${version}.tbz";
|
||||
sha256 = "02wr9ph4q0nxmqgbc67ydf165hmrdv9b655krm2glc3ahb6larxi";
|
||||
};
|
||||
buildInputs = [ dune-configurator ];
|
||||
|
||||
buildInputs = [ dune-configurator ];
|
||||
meta = {
|
||||
description = "Encoding variable-length quantities, in particular base64";
|
||||
license = lib.licenses.mit;
|
||||
homepage = "https://github.com/flowtype/ocaml-vlq";
|
||||
maintainers = [ lib.maintainers.nomeata ];
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Encoding variable-length quantities, in particular base64";
|
||||
license = lib.licenses.mit;
|
||||
homepage = "https://github.com/flowtype/ocaml-vlq";
|
||||
maintainers = [ lib.maintainers.nomeata ];
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11,38 +11,34 @@ let
|
||||
pname = "xmlm";
|
||||
webpage = "https://erratique.ch/software/${pname}";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
version = "1.4.0";
|
||||
|
||||
if lib.versionOlder ocaml.version "4.05" then
|
||||
throw "xmlm is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
src = fetchurl {
|
||||
url = "${webpage}/releases/${pname}-${version}.tbz";
|
||||
sha256 = "sha256-CRJSJY490WMgw85N2yG81X79nIwuv7eZ7mpUPtSS2fo=";
|
||||
};
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ocaml${ocaml.version}-${pname}-${version}";
|
||||
version = "1.4.0";
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "${webpage}/releases/${pname}-${version}.tbz";
|
||||
sha256 = "sha256-CRJSJY490WMgw85N2yG81X79nIwuv7eZ7mpUPtSS2fo=";
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
topkg
|
||||
];
|
||||
buildInputs = [ topkg ];
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = with lib; {
|
||||
description = "OCaml streaming codec to decode and encode the XML data format";
|
||||
homepage = webpage;
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
mainProgram = "xmltrip";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "OCaml streaming codec to decode and encode the XML data format";
|
||||
homepage = webpage;
|
||||
license = licenses.isc;
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
mainProgram = "xmltrip";
|
||||
inherit (ocaml.meta) platforms;
|
||||
broken = lib.versionOlder ocaml.version "4.05";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,43 +7,40 @@
|
||||
z3,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.08" then
|
||||
throw "z3 is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
let
|
||||
z3-with-ocaml = (
|
||||
z3.override {
|
||||
ocamlBindings = true;
|
||||
inherit ocaml findlib zarith;
|
||||
}
|
||||
);
|
||||
in
|
||||
|
||||
let
|
||||
z3-with-ocaml = (
|
||||
z3.override {
|
||||
ocamlBindings = true;
|
||||
inherit ocaml findlib zarith;
|
||||
}
|
||||
);
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "ocaml${ocaml.version}-z3";
|
||||
inherit (z3-with-ocaml) version;
|
||||
|
||||
pname = "ocaml${ocaml.version}-z3";
|
||||
inherit (z3-with-ocaml) version;
|
||||
dontUnpack = true;
|
||||
|
||||
dontUnpack = true;
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $OCAMLFIND_DESTDIR
|
||||
cp -r ${z3-with-ocaml.ocaml}/lib/ocaml/${ocaml.version}/site-lib/stublibs $OCAMLFIND_DESTDIR
|
||||
cp -r ${z3-with-ocaml.ocaml}/lib/ocaml/${ocaml.version}/site-lib/Z3 $OCAMLFIND_DESTDIR/z3
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $OCAMLFIND_DESTDIR
|
||||
cp -r ${z3-with-ocaml.ocaml}/lib/ocaml/${ocaml.version}/site-lib/stublibs $OCAMLFIND_DESTDIR
|
||||
cp -r ${z3-with-ocaml.ocaml}/lib/ocaml/${ocaml.version}/site-lib/Z3 $OCAMLFIND_DESTDIR/z3
|
||||
runHook postInstall
|
||||
'';
|
||||
nativeBuildInputs = [ findlib ];
|
||||
propagatedBuildInputs = [
|
||||
z3-with-ocaml.lib
|
||||
zarith
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ findlib ];
|
||||
propagatedBuildInputs = [
|
||||
z3-with-ocaml.lib
|
||||
zarith
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
meta = z3.meta // {
|
||||
description = "Z3 Theorem Prover (OCaml API)";
|
||||
};
|
||||
}
|
||||
meta = z3.meta // {
|
||||
description = "Z3 Theorem Prover (OCaml API)";
|
||||
broken = lib.versionOlder ocaml.version "4.08";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,49 +9,46 @@
|
||||
version ? if lib.versionAtLeast ocaml.version "4.08" then "1.14" else "1.13",
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.04" then
|
||||
throw "zarith is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ocaml${ocaml.version}-zarith";
|
||||
inherit version;
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocaml";
|
||||
repo = "Zarith";
|
||||
rev = "release-${version}";
|
||||
hash =
|
||||
{
|
||||
"1.13" = "sha256-CNVKoJeO3fsmWaV/dwnUA8lgI4ZlxR/LKCXpCXUrpSg=";
|
||||
"1.14" = "sha256-xUrBDr+M8uW2KOy7DZieO/vDgsSOnyBnpOzQDlXJ0oE=";
|
||||
}
|
||||
."${finalAttrs.version}";
|
||||
};
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "ocaml${ocaml.version}-zarith";
|
||||
inherit version;
|
||||
src = fetchFromGitHub {
|
||||
owner = "ocaml";
|
||||
repo = "Zarith";
|
||||
rev = "release-${version}";
|
||||
hash =
|
||||
{
|
||||
"1.13" = "sha256-CNVKoJeO3fsmWaV/dwnUA8lgI4ZlxR/LKCXpCXUrpSg=";
|
||||
"1.14" = "sha256-xUrBDr+M8uW2KOy7DZieO/vDgsSOnyBnpOzQDlXJ0oE=";
|
||||
}
|
||||
."${finalAttrs.version}";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
propagatedBuildInputs = [ gmp ];
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
ocaml
|
||||
findlib
|
||||
dontAddPrefix = true;
|
||||
dontAddStaticConfigureFlags = true;
|
||||
configurePlatforms = [ ];
|
||||
configureFlags = [ "-installdir ${placeholder "out"}/lib/ocaml/${ocaml.version}/site-lib" ];
|
||||
|
||||
preInstall = "mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Fast, arbitrary precision OCaml integers";
|
||||
homepage = "https://github.com/ocaml/Zarith";
|
||||
changelog = "https://github.com/ocaml/Zarith/raw/${finalAttrs.src.rev}/Changes";
|
||||
license = licenses.lgpl2;
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = with maintainers; [
|
||||
thoughtpolice
|
||||
vbgl
|
||||
];
|
||||
propagatedBuildInputs = [ gmp ];
|
||||
strictDeps = true;
|
||||
|
||||
dontAddPrefix = true;
|
||||
dontAddStaticConfigureFlags = true;
|
||||
configurePlatforms = [ ];
|
||||
configureFlags = [ "-installdir ${placeholder "out"}/lib/ocaml/${ocaml.version}/site-lib" ];
|
||||
|
||||
preInstall = "mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Fast, arbitrary precision OCaml integers";
|
||||
homepage = "https://github.com/ocaml/Zarith";
|
||||
changelog = "https://github.com/ocaml/Zarith/raw/${finalAttrs.src.rev}/Changes";
|
||||
license = licenses.lgpl2;
|
||||
inherit (ocaml.meta) platforms;
|
||||
maintainers = with maintainers; [
|
||||
thoughtpolice
|
||||
vbgl
|
||||
];
|
||||
};
|
||||
})
|
||||
broken = lib.versionOlder ocaml.version "4.04";
|
||||
};
|
||||
})
|
||||
|
||||
@@ -9,38 +9,35 @@
|
||||
cmdliner,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.14")
|
||||
"zipc is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-zipc";
|
||||
version = "0.2.0";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-zipc";
|
||||
version = "0.2.0";
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/zipc/releases/zipc-${version}.tbz";
|
||||
hash = "sha256-YQqkCURwrJgFH0+zgfket25zJQ4w+Tcc1mTSrDuWRt0=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://erratique.ch/software/zipc/releases/zipc-${version}.tbz";
|
||||
hash = "sha256-YQqkCURwrJgFH0+zgfket25zJQ4w+Tcc1mTSrDuWRt0=";
|
||||
};
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
];
|
||||
buildInputs = [
|
||||
cmdliner
|
||||
topkg
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
cmdliner
|
||||
topkg
|
||||
];
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = {
|
||||
description = "ZIP archive and deflate codec for OCaml";
|
||||
homepage = "https://erratique.ch/software/zipc";
|
||||
license = lib.licenses.isc;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "ZIP archive and deflate codec for OCaml";
|
||||
homepage = "https://erratique.ch/software/zipc";
|
||||
license = lib.licenses.isc;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.14");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -6,58 +6,55 @@
|
||||
writeText,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.03")
|
||||
"camlidl is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-camlidl";
|
||||
version = "1.12";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-camlidl";
|
||||
version = "1.12";
|
||||
src = fetchFromGitHub {
|
||||
owner = "xavierleroy";
|
||||
repo = "camlidl";
|
||||
rev = "camlidl112";
|
||||
hash = "sha256-ONPQMDFaU2OzFa5jgMVKx+ZRKk8ZgBZyk42vDvbM7E0=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "xavierleroy";
|
||||
repo = "camlidl";
|
||||
rev = "camlidl112";
|
||||
hash = "sha256-ONPQMDFaU2OzFa5jgMVKx+ZRKk8ZgBZyk42vDvbM7E0=";
|
||||
};
|
||||
nativeBuildInputs = [ ocaml ];
|
||||
|
||||
nativeBuildInputs = [ ocaml ];
|
||||
# build fails otherwise
|
||||
enableParallelBuilding = false;
|
||||
|
||||
# build fails otherwise
|
||||
enableParallelBuilding = false;
|
||||
preBuild = ''
|
||||
mv config/Makefile.unix config/Makefile
|
||||
substituteInPlace config/Makefile --replace BINDIR=/usr/local/bin BINDIR=$out
|
||||
substituteInPlace config/Makefile --replace 'OCAMLLIB=$(shell $(OCAMLC) -where)' OCAMLLIB=$out/lib/ocaml/${ocaml.version}/site-lib/camlidl
|
||||
substituteInPlace config/Makefile --replace CPP=cpp CPP=${stdenv.cc}/bin/cpp
|
||||
substituteInPlace lib/Makefile --replace '$(OCAMLLIB)/Makefile.config' "${ocaml}/lib/ocaml/Makefile.config"
|
||||
mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/camlidl/caml
|
||||
mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/camlidl/stublibs
|
||||
'';
|
||||
|
||||
preBuild = ''
|
||||
mv config/Makefile.unix config/Makefile
|
||||
substituteInPlace config/Makefile --replace BINDIR=/usr/local/bin BINDIR=$out
|
||||
substituteInPlace config/Makefile --replace 'OCAMLLIB=$(shell $(OCAMLC) -where)' OCAMLLIB=$out/lib/ocaml/${ocaml.version}/site-lib/camlidl
|
||||
substituteInPlace config/Makefile --replace CPP=cpp CPP=${stdenv.cc}/bin/cpp
|
||||
substituteInPlace lib/Makefile --replace '$(OCAMLLIB)/Makefile.config' "${ocaml}/lib/ocaml/Makefile.config"
|
||||
mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/camlidl/caml
|
||||
mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/camlidl/stublibs
|
||||
'';
|
||||
postInstall = ''
|
||||
cat >$out/lib/ocaml/${ocaml.version}/site-lib/camlidl/META <<EOF
|
||||
# Courtesy of GODI
|
||||
description = "Stub generator"
|
||||
version = "${version}"
|
||||
archive(byte) = "com.cma"
|
||||
archive(native) = "com.cmxa"
|
||||
EOF
|
||||
mkdir -p $out/bin
|
||||
ln -s $out/camlidl $out/bin
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
cat >$out/lib/ocaml/${ocaml.version}/site-lib/camlidl/META <<EOF
|
||||
# Courtesy of GODI
|
||||
description = "Stub generator"
|
||||
version = "${version}"
|
||||
archive(byte) = "com.cma"
|
||||
archive(native) = "com.cmxa"
|
||||
EOF
|
||||
mkdir -p $out/bin
|
||||
ln -s $out/camlidl $out/bin
|
||||
'';
|
||||
setupHook = writeText "setupHook.sh" ''
|
||||
export NIX_CFLAGS_COMPILE+=" -isystem $1/lib/ocaml/${ocaml.version}/site-lib/camlidl"
|
||||
export NIX_LDFLAGS+=" -L $1/lib/ocaml/${ocaml.version}/site-lib/camlidl"
|
||||
'';
|
||||
|
||||
setupHook = writeText "setupHook.sh" ''
|
||||
export NIX_CFLAGS_COMPILE+=" -isystem $1/lib/ocaml/${ocaml.version}/site-lib/camlidl"
|
||||
export NIX_LDFLAGS+=" -L $1/lib/ocaml/${ocaml.version}/site-lib/camlidl"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Stub code generator and COM binding for Objective Caml";
|
||||
mainProgram = "camlidl";
|
||||
homepage = "https://xavierleroy.org/camlidl/";
|
||||
license = lib.licenses.lgpl21;
|
||||
maintainers = [ lib.maintainers.roconnor ];
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "Stub code generator and COM binding for Objective Caml";
|
||||
mainProgram = "camlidl";
|
||||
homepage = "https://xavierleroy.org/camlidl/";
|
||||
license = lib.licenses.lgpl21;
|
||||
maintainers = [ lib.maintainers.roconnor ];
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.03");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -14,93 +14,90 @@
|
||||
legacy ? false,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.02" then
|
||||
throw "camlp5 is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
let
|
||||
params =
|
||||
if lib.versionAtLeast ocaml.version "4.12" && !legacy then
|
||||
rec {
|
||||
version = "8.03.02";
|
||||
|
||||
let
|
||||
params =
|
||||
if lib.versionAtLeast ocaml.version "4.12" && !legacy then
|
||||
rec {
|
||||
version = "8.03.02";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "camlp5";
|
||||
repo = "camlp5";
|
||||
rev = version;
|
||||
hash = "sha256-nz+VfGR/6FdBvMzPPpVpviAXXBWNqM3Ora96Yzx964o=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
ocaml
|
||||
findlib
|
||||
perl
|
||||
];
|
||||
buildInputs = [
|
||||
bos
|
||||
pcre2
|
||||
re
|
||||
rresult
|
||||
];
|
||||
propagatedBuildInputs = [ camlp-streams ];
|
||||
postInstall = ''
|
||||
for prog in camlp5 camlp5o camlp5r camlp5sch mkcamlp5 ocpp5
|
||||
do
|
||||
wrapProgram $out/bin/$prog \
|
||||
--prefix CAML_LD_LIBRARY_PATH : "$CAML_LD_LIBRARY_PATH"
|
||||
done
|
||||
'';
|
||||
|
||||
}
|
||||
else
|
||||
rec {
|
||||
version = "7.14";
|
||||
src = fetchFromGitHub {
|
||||
owner = "camlp5";
|
||||
repo = "camlp5";
|
||||
rev = "rel${builtins.replaceStrings [ "." ] [ "" ] version}";
|
||||
sha256 = "1dd68bisbpqn5lq2pslm582hxglcxnbkgfkwhdz67z4w9d5nvr7w";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
perl
|
||||
];
|
||||
src = fetchFromGitHub {
|
||||
owner = "camlp5";
|
||||
repo = "camlp5";
|
||||
rev = version;
|
||||
hash = "sha256-nz+VfGR/6FdBvMzPPpVpviAXXBWNqM3Ora96Yzx964o=";
|
||||
};
|
||||
in
|
||||
|
||||
stdenv.mkDerivation (
|
||||
params
|
||||
// {
|
||||
|
||||
pname = "ocaml${ocaml.version}-camlp5";
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
prefixKey = "-prefix ";
|
||||
|
||||
preConfigure = ''
|
||||
configureFlagsArray=(--strict --libdir $out/lib/ocaml/${ocaml.version}/site-lib)
|
||||
patchShebangs ./config/find_stuffversion.pl etc/META.pl
|
||||
'';
|
||||
|
||||
buildFlags = [ "world.opt" ];
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Preprocessor-pretty-printer for OCaml";
|
||||
longDescription = ''
|
||||
Camlp5 is a preprocessor and pretty-printer for OCaml programs.
|
||||
It also provides parsing and printing tools.
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
ocaml
|
||||
findlib
|
||||
perl
|
||||
];
|
||||
buildInputs = [
|
||||
bos
|
||||
pcre2
|
||||
re
|
||||
rresult
|
||||
];
|
||||
propagatedBuildInputs = [ camlp-streams ];
|
||||
postInstall = ''
|
||||
for prog in camlp5 camlp5o camlp5r camlp5sch mkcamlp5 ocpp5
|
||||
do
|
||||
wrapProgram $out/bin/$prog \
|
||||
--prefix CAML_LD_LIBRARY_PATH : "$CAML_LD_LIBRARY_PATH"
|
||||
done
|
||||
'';
|
||||
homepage = "https://camlp5.github.io/";
|
||||
license = licenses.bsd3;
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
maintainers = with maintainers; [
|
||||
maggesi
|
||||
vbgl
|
||||
|
||||
}
|
||||
else
|
||||
rec {
|
||||
version = "7.14";
|
||||
src = fetchFromGitHub {
|
||||
owner = "camlp5";
|
||||
repo = "camlp5";
|
||||
rev = "rel${builtins.replaceStrings [ "." ] [ "" ] version}";
|
||||
sha256 = "1dd68bisbpqn5lq2pslm582hxglcxnbkgfkwhdz67z4w9d5nvr7w";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
perl
|
||||
];
|
||||
};
|
||||
}
|
||||
)
|
||||
in
|
||||
|
||||
stdenv.mkDerivation (
|
||||
params
|
||||
// {
|
||||
|
||||
pname = "ocaml${ocaml.version}-camlp5";
|
||||
|
||||
strictDeps = true;
|
||||
|
||||
prefixKey = "-prefix ";
|
||||
|
||||
preConfigure = ''
|
||||
configureFlagsArray=(--strict --libdir $out/lib/ocaml/${ocaml.version}/site-lib)
|
||||
patchShebangs ./config/find_stuffversion.pl etc/META.pl
|
||||
'';
|
||||
|
||||
buildFlags = [ "world.opt" ];
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Preprocessor-pretty-printer for OCaml";
|
||||
longDescription = ''
|
||||
Camlp5 is a preprocessor and pretty-printer for OCaml programs.
|
||||
It also provides parsing and printing tools.
|
||||
'';
|
||||
homepage = "https://camlp5.github.io/";
|
||||
license = licenses.bsd3;
|
||||
platforms = ocaml.meta.platforms or [ ];
|
||||
maintainers = with maintainers; [
|
||||
maggesi
|
||||
vbgl
|
||||
];
|
||||
broken = lib.versionOlder ocaml.version "4.02";
|
||||
};
|
||||
}
|
||||
)
|
||||
|
||||
@@ -7,40 +7,37 @@
|
||||
ncurses,
|
||||
}:
|
||||
|
||||
if lib.versionOlder ocaml.version "4.02" || lib.versionAtLeast ocaml.version "4.12" then
|
||||
throw "dune 1 is not available for OCaml ${ocaml.version}"
|
||||
else
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "dune";
|
||||
version = "1.11.4";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ocaml/dune/releases/download/${version}/dune-build-info-${version}.tbz";
|
||||
sha256 = "1rkc8lqw30ifjaz8d81la6i8j05ffd0whpxqsbg6dci16945zjvp";
|
||||
};
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "dune";
|
||||
version = "1.11.4";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/ocaml/dune/releases/download/${version}/dune-build-info-${version}.tbz";
|
||||
sha256 = "1rkc8lqw30ifjaz8d81la6i8j05ffd0whpxqsbg6dci16945zjvp";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
buildInputs = [ ncurses ];
|
||||
strictDeps = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
buildInputs = [ ncurses ];
|
||||
strictDeps = true;
|
||||
buildFlags = [ "release" ];
|
||||
makeFlags = [
|
||||
"PREFIX=${placeholder "out"}"
|
||||
"LIBDIR=$(OCAMLFIND_DESTDIR)"
|
||||
];
|
||||
|
||||
buildFlags = [ "release" ];
|
||||
makeFlags = [
|
||||
"PREFIX=${placeholder "out"}"
|
||||
"LIBDIR=$(OCAMLFIND_DESTDIR)"
|
||||
];
|
||||
dontAddPrefix = true;
|
||||
dontAddStaticConfigureFlags = true;
|
||||
configurePlatforms = [ ];
|
||||
|
||||
dontAddPrefix = true;
|
||||
dontAddStaticConfigureFlags = true;
|
||||
configurePlatforms = [ ];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://dune.build/";
|
||||
description = "Composable build system";
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
license = licenses.mit;
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
homepage = "https://dune.build/";
|
||||
description = "Composable build system";
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
license = licenses.mit;
|
||||
broken = lib.versionOlder ocaml.version "4.02" || lib.versionAtLeast ocaml.version "4.12";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,57 +9,55 @@
|
||||
ocamlify,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0") "oasis is not available for OCaml ≥ 5.0"
|
||||
stdenv.mkDerivation {
|
||||
version = "0.4.11";
|
||||
pname = "ocaml-oasis";
|
||||
|
||||
stdenv.mkDerivation
|
||||
{
|
||||
version = "0.4.11";
|
||||
pname = "ocaml-oasis";
|
||||
src = fetchurl {
|
||||
url = "https://download.ocamlcore.org/oasis/oasis/0.4.11/oasis-0.4.11.tar.gz";
|
||||
hash = "sha256-GLc97vTtbpqDM38ks7vi3tZSaLP/cwn8wA0l5X4dwS4=";
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://download.ocamlcore.org/oasis/oasis/0.4.11/oasis-0.4.11.tar.gz";
|
||||
hash = "sha256-GLc97vTtbpqDM38ks7vi3tZSaLP/cwn8wA0l5X4dwS4=";
|
||||
};
|
||||
createFindlibDestdir = true;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
ocamlmod
|
||||
ocamlify
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
ocamlbuild
|
||||
ocamlmod
|
||||
ocamlify
|
||||
buildInputs = [ ocamlbuild ];
|
||||
|
||||
configurePhase = ''
|
||||
runHook preConfigure
|
||||
ocaml setup.ml -configure --prefix $out
|
||||
runHook postConfigure
|
||||
'';
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
ocaml setup.ml -build
|
||||
runHook postBuild
|
||||
'';
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
ocaml setup.ml -install
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Configure, build and install system for OCaml projects";
|
||||
homepage = "https://github.com/ocaml/oasis";
|
||||
license = licenses.lgpl21;
|
||||
maintainers = with maintainers; [
|
||||
vbgl
|
||||
maggesi
|
||||
];
|
||||
|
||||
buildInputs = [ ocamlbuild ];
|
||||
|
||||
configurePhase = ''
|
||||
runHook preConfigure
|
||||
ocaml setup.ml -configure --prefix $out
|
||||
runHook postConfigure
|
||||
'';
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
ocaml setup.ml -build
|
||||
runHook postBuild
|
||||
'';
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
ocaml setup.ml -install
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Configure, build and install system for OCaml projects";
|
||||
homepage = "https://github.com/ocaml/oasis";
|
||||
license = licenses.lgpl21;
|
||||
maintainers = with maintainers; [
|
||||
vbgl
|
||||
maggesi
|
||||
];
|
||||
mainProgram = "oasis";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
mainProgram = "oasis";
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,41 +9,38 @@
|
||||
gitUpdater,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"ocaml-recovery-parser is not available for OCaml ${ocaml.version}"
|
||||
buildDunePackage rec {
|
||||
pname = "ocaml-recovery-parser";
|
||||
version = "0.2.4";
|
||||
|
||||
buildDunePackage
|
||||
rec {
|
||||
pname = "ocaml-recovery-parser";
|
||||
version = "0.2.4";
|
||||
minimalOCamlVersion = "4.08";
|
||||
duneVersion = "3";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
duneVersion = "3";
|
||||
src = fetchFromGitHub {
|
||||
owner = "serokell";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "gOKvjmlcHDOgsTllj2sPL/qNtW/rlNlEVIrosahNsAQ=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "serokell";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "gOKvjmlcHDOgsTllj2sPL/qNtW/rlNlEVIrosahNsAQ=";
|
||||
};
|
||||
propagatedBuildInputs = [
|
||||
fix
|
||||
menhirLib
|
||||
menhirSdk
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
fix
|
||||
menhirLib
|
||||
menhirSdk
|
||||
passthru.updateScript = gitUpdater { };
|
||||
|
||||
meta = with lib; {
|
||||
description = "Simple fork of OCaml parser with support for error recovery";
|
||||
homepage = "https://github.com/serokell/ocaml-recovery-parser";
|
||||
license = with licenses; [
|
||||
lgpl2Only
|
||||
mit
|
||||
mpl20
|
||||
];
|
||||
|
||||
passthru.updateScript = gitUpdater { };
|
||||
|
||||
meta = with lib; {
|
||||
description = "Simple fork of OCaml parser with support for error recovery";
|
||||
homepage = "https://github.com/serokell/ocaml-recovery-parser";
|
||||
license = with licenses; [
|
||||
lgpl2Only
|
||||
mit
|
||||
mpl20
|
||||
];
|
||||
maintainers = with maintainers; [ romildo ];
|
||||
mainProgram = "menhir-recover";
|
||||
};
|
||||
}
|
||||
maintainers = with maintainers; [ romildo ];
|
||||
mainProgram = "menhir-recover";
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -6,39 +6,36 @@
|
||||
findlib,
|
||||
}:
|
||||
|
||||
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
|
||||
"ocamlscript is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-ocamlscript";
|
||||
version = "3.0.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "mjambon";
|
||||
repo = "ocamlscript";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256:10xz8jknlmcgnf233nahd04q98ijnxpijhpvb8hl7sv94dgkvpql";
|
||||
};
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-ocamlscript";
|
||||
version = "3.0.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "mjambon";
|
||||
repo = "ocamlscript";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256:10xz8jknlmcgnf233nahd04q98ijnxpijhpvb8hl7sv94dgkvpql";
|
||||
};
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
patches = [ ./Makefile.patch ];
|
||||
|
||||
patches = [ ./Makefile.patch ];
|
||||
buildFlags = [ "PREFIX=$(out)" ];
|
||||
installFlags = [ "PREFIX=$(out)" ];
|
||||
|
||||
buildFlags = [ "PREFIX=$(out)" ];
|
||||
installFlags = [ "PREFIX=$(out)" ];
|
||||
preInstall = "mkdir -p $out/bin";
|
||||
createFindlibDestdir = true;
|
||||
|
||||
preInstall = "mkdir -p $out/bin";
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = with lib; {
|
||||
inherit (src.meta) homepage;
|
||||
license = licenses.boost;
|
||||
inherit (ocaml.meta) platforms;
|
||||
description = "Natively-compiled OCaml scripts";
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
mainProgram = "ocamlscript";
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
inherit (src.meta) homepage;
|
||||
license = licenses.boost;
|
||||
inherit (ocaml.meta) platforms;
|
||||
description = "Natively-compiled OCaml scripts";
|
||||
maintainers = [ maintainers.vbgl ];
|
||||
mainProgram = "ocamlscript";
|
||||
broken = !(lib.versionAtLeast ocaml.version "4.08");
|
||||
};
|
||||
}
|
||||
|
||||
@@ -10,55 +10,52 @@
|
||||
re,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.0")
|
||||
"ocp-build is not available for OCaml ${ocaml.version}"
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ocaml${ocaml.version}-ocp-build";
|
||||
version = "1.99.21";
|
||||
|
||||
stdenv.mkDerivation
|
||||
rec {
|
||||
pname = "ocaml${ocaml.version}-ocp-build";
|
||||
version = "1.99.21";
|
||||
src = fetchFromGitHub {
|
||||
owner = "OCamlPro";
|
||||
repo = "ocp-build";
|
||||
rev = "v${version}";
|
||||
sha256 = "1641xzik98c7xnjwxpacijd6d9jzx340fmdn6i372z8h554jjlg9";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "OCamlPro";
|
||||
repo = "ocp-build";
|
||||
rev = "v${version}";
|
||||
sha256 = "1641xzik98c7xnjwxpacijd6d9jzx340fmdn6i372z8h554jjlg9";
|
||||
};
|
||||
patches = [
|
||||
# Fix compilation with OCaml 4.12
|
||||
(fetchpatch {
|
||||
url = "https://github.com/OCamlPro/ocp-build/commit/104e4656ca6dba9edb03b62539c9f1e10abcaae8.patch";
|
||||
sha256 = "0sbyi4acig9q8x1ky4hckfg5pm2nad6zasi51ravaf1spgl148c2";
|
||||
})
|
||||
];
|
||||
|
||||
patches = [
|
||||
# Fix compilation with OCaml 4.12
|
||||
(fetchpatch {
|
||||
url = "https://github.com/OCamlPro/ocp-build/commit/104e4656ca6dba9edb03b62539c9f1e10abcaae8.patch";
|
||||
sha256 = "0sbyi4acig9q8x1ky4hckfg5pm2nad6zasi51ravaf1spgl148c2";
|
||||
})
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
strictDeps = true;
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
buildInputs = [
|
||||
cmdliner_1_0
|
||||
re
|
||||
];
|
||||
propagatedBuildInputs = [ ncurses ];
|
||||
preInstall = "mkdir -p $out/bin";
|
||||
|
||||
nativeBuildInputs = [
|
||||
ocaml
|
||||
findlib
|
||||
];
|
||||
buildInputs = [
|
||||
cmdliner_1_0
|
||||
re
|
||||
];
|
||||
propagatedBuildInputs = [ ncurses ];
|
||||
preInstall = "mkdir -p $out/bin";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Build tool for OCaml";
|
||||
longDescription = ''
|
||||
ocp-build is a build system for OCaml application, based on simple
|
||||
descriptions of packages. ocp-build combines the descriptions of
|
||||
packages, and optimize the parallel compilation of files depending on
|
||||
the number of cores and the automatically-inferred dependencies
|
||||
between source files.
|
||||
'';
|
||||
homepage = "https://www.typerex.org/ocp-build.html";
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.jirkamarsik ];
|
||||
mainProgram = "ocp-build";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
meta = with lib; {
|
||||
description = "Build tool for OCaml";
|
||||
longDescription = ''
|
||||
ocp-build is a build system for OCaml application, based on simple
|
||||
descriptions of packages. ocp-build combines the descriptions of
|
||||
packages, and optimize the parallel compilation of files depending on
|
||||
the number of cores and the automatically-inferred dependencies
|
||||
between source files.
|
||||
'';
|
||||
homepage = "https://www.typerex.org/ocp-build.html";
|
||||
license = licenses.gpl3;
|
||||
maintainers = [ maintainers.jirkamarsik ];
|
||||
mainProgram = "ocp-build";
|
||||
broken = lib.versionAtLeast ocaml.version "5.0";
|
||||
inherit (ocaml.meta) platforms;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -6,30 +6,27 @@
|
||||
cppo,
|
||||
}:
|
||||
|
||||
lib.throwIf (lib.versionAtLeast ocaml.version "5.3")
|
||||
"reanalyze is not available for OCaml ${ocaml.version}"
|
||||
buildDunePackage rec {
|
||||
pname = "reanalyze";
|
||||
version = "2.25.1";
|
||||
|
||||
buildDunePackage
|
||||
rec {
|
||||
pname = "reanalyze";
|
||||
version = "2.25.1";
|
||||
minimalOCamlVersion = "4.08";
|
||||
|
||||
minimalOCamlVersion = "4.08";
|
||||
src = fetchFromGitHub {
|
||||
owner = "rescript-lang";
|
||||
repo = "reanalyze";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-cM39Gk4Ko7o/DyhrzgEHilobaB3h91Knltkcv2sglFw=";
|
||||
};
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rescript-lang";
|
||||
repo = "reanalyze";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-cM39Gk4Ko7o/DyhrzgEHilobaB3h91Knltkcv2sglFw=";
|
||||
};
|
||||
nativeBuildInputs = [ cppo ];
|
||||
|
||||
nativeBuildInputs = [ cppo ];
|
||||
|
||||
meta = {
|
||||
description = "Program analysis for ReScript and OCaml projects";
|
||||
homepage = "https://github.com/rescript-lang/reanalyze/";
|
||||
changelog = "https://github.com/rescript-lang/reanalyze/blob/v${version}/Changes.md";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
};
|
||||
}
|
||||
meta = {
|
||||
description = "Program analysis for ReScript and OCaml projects";
|
||||
homepage = "https://github.com/rescript-lang/reanalyze/";
|
||||
changelog = "https://github.com/rescript-lang/reanalyze/blob/v${version}/Changes.md";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = [ lib.maintainers.vbgl ];
|
||||
broken = lib.versionAtLeast ocaml.version "5.3";
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user