nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at devShellTools-shell 57 lines 1.1 kB view raw
1{ 2 lib, 3 crystal, 4 fetchFromGitHub, 5 llvmPackages, 6 openssl, 7 makeWrapper, 8}: 9 10let 11 version = "0.15.0"; 12in 13crystal.buildCrystalPackage { 14 pname = "crystalline"; 15 inherit version; 16 17 src = fetchFromGitHub { 18 owner = "elbywan"; 19 repo = "crystalline"; 20 rev = "v${version}"; 21 hash = "sha256-6ZAogEuOJH1QQ6NSJ+8KZUSFSgQAcvd4U9vWNAGix/M="; 22 }; 23 24 format = "crystal"; 25 shardsFile = ./shards.nix; 26 27 nativeBuildInputs = [ 28 llvmPackages.llvm 29 openssl 30 makeWrapper 31 ]; 32 33 doCheck = false; 34 doInstallCheck = false; 35 36 crystalBinaries.crystalline = { 37 src = "src/crystalline.cr"; 38 options = [ 39 "--release" 40 "--no-debug" 41 "--progress" 42 "-Dpreview_mt" 43 ]; 44 }; 45 46 postInstall = '' 47 wrapProgram "$out/bin/crystalline" --prefix PATH : '${lib.makeBinPath [ llvmPackages.llvm.dev ]}' 48 ''; 49 50 meta = with lib; { 51 description = "Language Server Protocol implementation for Crystal"; 52 mainProgram = "crystalline"; 53 homepage = "https://github.com/elbywan/crystalline"; 54 license = licenses.mit; 55 maintainers = with maintainers; [ donovanglover ]; 56 }; 57}