diff --git a/pkgs/development/tools/icr/default.nix b/pkgs/development/tools/icr/default.nix new file mode 100644 index 00000000000..3c6eb6a98b0 --- /dev/null +++ b/pkgs/development/tools/icr/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchFromGitHub, crystal, shards, which +, openssl, readline }: + +stdenv.mkDerivation rec { + name = "icr"; + version = "0.5.0"; + + src = fetchFromGitHub { + owner = "crystal-community"; + repo = "icr"; + rev = "v${version}"; + sha256 = "1vavdzgm06ssnxm6mylki6xma0mfsj63n5kivhk1v4pg4xj966w5"; + }; + + postPatch = '' + substituteInPlace Makefile \ + --replace /usr/local $out + ''; + + buildInputs = [ openssl readline ]; + + nativeBuildInputs = [ crystal shards which ]; + + doCheck = true; + + checkTarget = "test"; + + meta = with stdenv.lib; { + description = "Interactive console for the Crystal programming language"; + homepage = https://github.com/crystal-community/icr; + license = licenses.mit; + maintainers = with maintainers; [ peterhoeg ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ea4739e34c1..3dc56a75741 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6416,6 +6416,8 @@ with pkgs; crystal_0_26 crystal; + icr = callPackage ../development/tools/icr {}; + devpi-client = callPackage ../development/tools/devpi-client {}; devpi-server = callPackage ../development/tools/devpi-server {};