From 074c9cbe1cd42301c142401e0604d520bf3dae9f Mon Sep 17 00:00:00 2001 From: wchresta <34962284+wchresta@users.noreply.github.com> Date: Fri, 22 May 2020 21:45:46 -0400 Subject: [PATCH] idris2: init at version 0.2.0-840e020 A purely functional programming language with first class types --- pkgs/development/compilers/idris2/default.nix | 45 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 47 insertions(+) create mode 100644 pkgs/development/compilers/idris2/default.nix diff --git a/pkgs/development/compilers/idris2/default.nix b/pkgs/development/compilers/idris2/default.nix new file mode 100644 index 00000000000..858da311011 --- /dev/null +++ b/pkgs/development/compilers/idris2/default.nix @@ -0,0 +1,45 @@ +{ stdenv, fetchFromGitHub, makeWrapper +, clang, chez +}: + +# Uses scheme to bootstrap the build of idris2 +stdenv.mkDerivation { + name = "idris2"; + version = "0.2.0-840e020"; + + src = fetchFromGitHub { + owner = "idris-lang"; + repo = "Idris2"; + rev = "840e020d8ccc332135e86f855ad78053ca15d603"; + sha256 = "1l6pdjiglwd13pf56xwzbjzyyxgz48ypfggjgsgqk2w57rmbfy90"; + }; + + strictDeps = true; + nativeBuildInputs = [ makeWrapper clang chez ]; + buildInputs = [ chez ]; + + prePatch = '' + patchShebangs --build tests + + # Do not run tests as part of the build process + substituteInPlace bootstrap.sh --replace "make test" "# make test" + ''; + + makeFlags = [ "PREFIX=$(out)" ]; + + # The name of the main executable of pkgs.chez is `scheme` + buildFlags = [ "bootstrap" "SCHEME=scheme" ]; + + # idris2 needs to find scheme at runtime to compile + postInstall = '' + wrapProgram "$out/bin/idris2" --prefix PATH : "${chez}/bin" + ''; + + meta = { + description = "A purely functional programming language with first class types"; + homepage = https://github.com/idris-lang/Idris2; + license = stdenv.lib.licenses.bsd3; + maintainers = with stdenv.lib.maintainers; [ wchresta ]; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index bbe30905f76..17e6e915d88 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8705,6 +8705,8 @@ in idris = idrisPackages.with-packages [ idrisPackages.base ] ; + idris2 = callPackage ../development/compilers/idris2 { }; + intel-graphics-compiler = callPackage ../development/compilers/intel-graphics-compiler { }; intercal = callPackage ../development/compilers/intercal { };