1 { lib, fetchFromGitHub, crystal, makeWrapper, openssl }:
3 crystal.buildCrystalPackage rec {
7 src = fetchFromGitHub {
8 owner = "luckyframework";
11 hash = "sha256-mDUx9cQoYpU9kSAls36kzNVYZ8a4aqHEMIWfzS41NBk=";
14 # the integration tests will try to clone a remote repos
16 rm -rf spec/integration
21 lockFile = ./shard.lock;
22 shardsFile = ./shards.nix;
24 crystalBinaries.lucky.src = "src/lucky.cr";
26 buildInputs = [ openssl ];
28 nativeBuildInputs = [ makeWrapper ];
31 wrapProgram $out/bin/lucky \
32 --prefix PATH : ${lib.makeBinPath [ crystal ]}
36 description = "A Crystal library for creating and running tasks. Also generates Lucky projects";
37 homepage = "https://luckyframework.org/";
38 license = licenses.mit;
39 maintainers = with maintainers; [ peterhoeg ];
40 mainProgram = "lucky";
41 platforms = platforms.unix;
42 broken = lib.versionOlder crystal.version "1.6.0";