1{ stdenv, fetchurl, libev, ocaml, findlib, ocaml_lwt, ocaml_react, zed, camlp4 }: 2 3stdenv.mkDerivation rec { 4 version = "1.6"; 5 name = "lambda-term-${version}"; 6 7 src = fetchurl { 8 url = https://github.com/diml/lambda-term/archive/1.6.tar.gz; 9 sha256 = "1rhfixdgpylxznf6sa9wr31wb4pjzpfn5mxhxqpbchmpl2afwa09"; 10 }; 11 12 buildInputs = [ libev ocaml findlib ocaml_lwt ocaml_react ]; 13 14 propagatedBuildInputs = [ camlp4 zed ]; 15 16 createFindlibDestdir = true; 17 18 meta = { description = "Terminal manipulation library for OCaml"; 19 longDescription = '' 20 Lambda-term is a cross-platform library for 21 manipulating the terminal. It provides an abstraction for keys, 22 mouse events, colors, as well as a set of widgets to write 23 curses-like applications. 24 25 The main objective of lambda-term is to provide a higher level 26 functional interface to terminal manipulation than, for example, 27 ncurses, by providing a native OCaml interface instead of bindings to 28 a C library. 29 30 Lambda-term integrates with zed to provide text edition facilities in 31 console applications. 32 ''; 33 34 homepage = https://github.com/diml/lambda-term; 35 license = stdenv.lib.licenses.bsd3; 36 platforms = ocaml.meta.platforms; 37 branch = "1.6"; 38 maintainers = [ 39 stdenv.lib.maintainers.gal_bolle 40 ]; 41 }; 42}