Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib
2, fetchFromGitHub
3, crystal
4, shards
5, makeWrapper
6, pkg-config
7, which
8, openssl
9, readline
10, libyaml
11, zlib
12}:
13
14crystal.buildCrystalPackage rec {
15 pname = "icr";
16 version = "0.9.0";
17
18 src = fetchFromGitHub {
19 owner = "crystal-community";
20 repo = "icr";
21 rev = "v${version}";
22 hash = "sha256-29B/i8oEjwNOYjnc78QcYTl6fC/M9VfAVCCBjLBKp0Q=";
23 };
24
25 shardsFile = ./shards.nix;
26
27 buildInputs = [ libyaml openssl readline zlib ];
28
29 nativeBuildInputs = [ makeWrapper pkg-config which ];
30
31 # tests are failing due to our sandbox
32 doCheck = false;
33
34 postFixup = ''
35 wrapProgram $out/bin/icr \
36 --prefix PATH : ${lib.makeBinPath [ crystal shards which ]}
37 '';
38
39 meta = with lib; {
40 description = "Interactive console for the Crystal programming language";
41 homepage = "https://github.com/crystal-community/icr";
42 license = licenses.mit;
43 maintainers = with maintainers; [ peterhoeg ];
44 };
45}