2018-01-01 01:44:02 -08:00
|
|
|
{ stdenv, fetchFromGitHub, lib, ocaml, libelf, cf-private, CoreServices,
|
2018-03-27 13:34:15 -07:00
|
|
|
findlib, camlp4, sedlex, ocamlbuild, lwt_ppx, wtf8, dtoa }:
|
2015-11-10 07:17:00 -08:00
|
|
|
|
|
|
|
with lib;
|
2014-11-18 19:55:36 -08:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2018-07-03 10:22:44 -07:00
|
|
|
version = "0.75.0";
|
2014-11-18 19:55:36 -08:00
|
|
|
name = "flow-${version}";
|
2016-03-28 08:16:29 -07:00
|
|
|
|
2014-11-18 19:55:36 -08:00
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "facebook";
|
|
|
|
repo = "flow";
|
|
|
|
rev = "v${version}";
|
2018-07-03 10:22:44 -07:00
|
|
|
sha256 = "0xrcjjk16w6anpy58qa4la1jyfjs0xg5xkp58slhai996wqif24k";
|
2014-11-18 19:55:36 -08:00
|
|
|
};
|
|
|
|
|
2018-07-03 10:22:44 -07:00
|
|
|
# lwt.log is being split out into a separate package, so this can be
|
|
|
|
# removed once nixpkgs is updated.
|
|
|
|
# See https://github.com/ocsigen/lwt/issues/453#issuecomment-352897664
|
|
|
|
postPatch = ''
|
|
|
|
substituteInPlace Makefile --replace lwt_log lwt.log
|
|
|
|
'';
|
|
|
|
|
2014-11-18 19:55:36 -08:00
|
|
|
installPhase = ''
|
|
|
|
mkdir -p $out/bin
|
|
|
|
cp bin/flow $out/bin/
|
|
|
|
'';
|
|
|
|
|
2018-01-01 01:44:02 -08:00
|
|
|
buildInputs = [
|
2018-03-27 13:34:15 -07:00
|
|
|
ocaml libelf findlib camlp4 sedlex ocamlbuild lwt_ppx wtf8 dtoa
|
2018-01-01 01:44:02 -08:00
|
|
|
] ++ optionals stdenv.isDarwin [ cf-private CoreServices ];
|
2014-11-18 19:55:36 -08:00
|
|
|
|
|
|
|
meta = with stdenv.lib; {
|
|
|
|
description = "A static type checker for JavaScript";
|
2015-11-10 07:17:00 -08:00
|
|
|
homepage = http://flowtype.org;
|
|
|
|
license = licenses.bsd3;
|
2016-09-02 08:50:09 -07:00
|
|
|
platforms = [ "x86_64-linux" "x86_64-darwin" ];
|
2015-10-18 03:21:18 -07:00
|
|
|
maintainers = with maintainers; [ puffnfresh globin ];
|
2014-11-18 19:55:36 -08:00
|
|
|
};
|
|
|
|
}
|