pyre: init at 0.0.8 (#43212)

authored by teh and committed by xeji 17fe19f5 60629ce2

+75
+71
pkgs/development/tools/pyre/default.nix
··· 1 + { stdenv, fetchFromGitHub, ocamlPackages, makeWrapper, writeScript }: 2 + let 3 + # Manually set version - the setup script requires 4 + # hg and git + keeping the .git directory around. 5 + version = "0.0.8"; 6 + versionFile = writeScript "version.ml" '' 7 + cat > "./version.ml" <<EOF 8 + let build_info () = 9 + "pyre-nixpkgs ${version}" 10 + let version () = 11 + "${version}" 12 + EOF 13 + ''; 14 + in stdenv.mkDerivation { 15 + name = "pyre-${version}"; 16 + 17 + src = fetchFromGitHub { 18 + owner = "facebook"; 19 + repo = "pyre-check"; 20 + rev = "v${version}"; 21 + sha256 = "0c4km27xnzsqcqvjqxmqak37x473z6azlbldy7f05ghkms7mchrw"; 22 + }; 23 + 24 + nativeBuildInputs = [ makeWrapper ]; 25 + 26 + buildInputs = with ocamlPackages; [ 27 + ocaml 28 + findlib 29 + menhir 30 + yojson 31 + core 32 + sedlex 33 + ppx_deriving_yojson 34 + ocamlbuild 35 + ppxlib 36 + ]; 37 + 38 + buildPhase = '' 39 + # build requires HOME to be set 40 + export HOME=. 41 + 42 + # "external" because https://github.com/facebook/pyre-check/pull/8/files 43 + sed "s/%VERSION%/external ${version}/" Makefile.template > Makefile 44 + 45 + cp ${versionFile} ./scripts/generate-version-number.sh 46 + 47 + mkdir $(pwd)/build 48 + export OCAMLFIND_DESTDIR=$(pwd)/build 49 + export OCAMLPATH=$OCAMLPATH:$(pwd)/build 50 + make release 51 + ''; 52 + 53 + checkPhase = '' 54 + make test 55 + ''; 56 + 57 + # Note that we're not installing the typeshed yet. 58 + # Improvement for a future version. 59 + installPhase = '' 60 + mkdir -p $out/bin 61 + cp _build/all/main.native $out/bin/pyre 62 + ''; 63 + 64 + meta = with stdenv.lib; { 65 + description = "A performant type-checker for Python 3"; 66 + homepage = https://pyre-check.org; 67 + license = licenses.mit; 68 + platforms = with platforms; linux; 69 + maintainers = with maintainers; [ teh ]; 70 + }; 71 + }
+4
pkgs/top-level/all-packages.nix
··· 6579 6579 ocamlPackages = ocaml-ng.ocamlPackages_4_06; 6580 6580 }; 6581 6581 6582 + pyre = callPackage ../development/tools/pyre { 6583 + ocamlPackages = ocaml-ng.ocamlPackages_4_06; 6584 + }; 6585 + 6582 6586 dotnetPackages = recurseIntoAttrs (callPackage ./dotnet-packages.nix {}); 6583 6587 6584 6588 glslang = callPackage ../development/compilers/glslang { };