1{ lib, fetchFromGitHub, buildDunePackage, zed, lwt_log, lwt_react, mew_vi }: 2 3buildDunePackage rec { 4 pname = "lambda-term"; 5 version = "3.1.0"; 6 7 useDune2 = true; 8 9 src = fetchFromGitHub { 10 owner = "ocaml-community"; 11 repo = pname; 12 rev = version; 13 sha256 = "1k0ykiz0vhpyyj9fkss29ajas4fh1xh449j702xkvayqipzj1mkg"; 14 }; 15 16 propagatedBuildInputs = [ zed lwt_log lwt_react mew_vi ]; 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 inherit (src.meta) homepage; 35 license = lib.licenses.bsd3; 36 maintainers = [ 37 lib.maintainers.gal_bolle 38 ]; 39 }; 40}