Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at netboot-syslinux-multiplatform 42 lines 1.2 kB view raw
1{ lib, stdenv, fetchFromGitHub, which, ocamlPackages }: 2 3stdenv.mkDerivation rec { 4 pname = "eff"; 5 version = "5.0"; 6 7 src = fetchFromGitHub { 8 owner = "matijapretnar"; 9 repo = "eff"; 10 rev = "v${version}"; 11 sha256 = "1fslfj5d7fhj3f7kh558b8mk5wllwyq4rnhfkyd96fpy144sdcka"; 12 }; 13 14 postPatch = '' 15 substituteInPlace setup.ml --replace js_of_ocaml.ocamlbuild js_of_ocaml-ocamlbuild 16 ''; 17 18 strictDeps = true; 19 20 nativeBuildInputs = [ which ] ++ (with ocamlPackages; [ 21 ocaml findlib ocamlbuild menhir 22 ]); 23 24 buildInputs = with ocamlPackages; [ js_of_ocaml js_of_ocaml-ocamlbuild ]; 25 26 doCheck = true; 27 checkTarget = "test"; 28 29 meta = with lib; { 30 homepage = "https://www.eff-lang.org"; 31 description = "A functional programming language based on algebraic effects and their handlers"; 32 longDescription = '' 33 Eff is a functional language with handlers of not only exceptions, 34 but also of other computational effects such as state or I/O. With 35 handlers, you can simply implement transactions, redirections, 36 backtracking, multi-threading, and much more... 37 ''; 38 license = licenses.bsd2; 39 inherit (ocamlPackages.ocaml.meta) platforms; 40 maintainers = [ maintainers.jirkamarsik ]; 41 }; 42}