crystalline: init at 0.9.0

Closes #129002
This commit is contained in:
Donovan Glover
2023-06-20 13:38:19 -04:00
parent 7409480d5c
commit 6514705ef6
3 changed files with 79 additions and 0 deletions
@@ -0,0 +1,48 @@
{ lib
, crystal
, fetchFromGitHub
, llvmPackages
, openssl
, makeWrapper
}:
let
version = "0.9.0";
in
crystal.buildCrystalPackage {
pname = "crystalline";
inherit version;
src = fetchFromGitHub {
owner = "elbywan";
repo = "crystalline";
rev = "v${version}";
sha256 = "sha256-kx3rdGqIbrOaHY7V3uXLqIFEYzzsMKzNwZ6Neq8zM3c=";
};
format = "crystal";
shardsFile = ./shards.nix;
nativeBuildInputs = [ llvmPackages.llvm openssl makeWrapper ];
doCheck = false;
doInstallCheck = false;
crystalBinaries.crystalline = {
src = "src/crystalline.cr";
options = [ "--release" "--no-debug" "--progress" "-Dpreview_mt" ];
};
postInstall = ''
wrapProgram "$out/bin/crystalline" --prefix PATH : '${
lib.makeBinPath [llvmPackages.llvm.dev]
}'
'';
meta = with lib; {
description = "A Language Server Protocol implementation for Crystal";
homepage = "https://github.com/elbywan/crystalline";
license = licenses.mit;
maintainers = with maintainers; [ donovanglover ];
};
}
@@ -0,0 +1,27 @@
{
bisect = {
url = "https://github.com/spider-gazelle/bisect.git";
rev = "v1.2.1";
sha256 = "1ddz7fag1l65m6g0vw6xa96yv00rdwjj2z69k26rvyz37qk9ccqg";
};
lsp = {
url = "https://github.com/elbywan/crystal-lsp.git";
rev = "v0.1.2";
sha256 = "0knw8xaq3ssyb34w77a390j79m4w6bks5hlwr8m8fci2gq9a0r6z";
};
priority-queue = {
url = "https://github.com/spider-gazelle/priority-queue.git";
rev = "v1.0.1";
sha256 = "1rkppd8win4yalxcvsxikqcq6sw0npdqjajqbj57m78bzlxpyjv6";
};
sentry = {
url = "https://github.com/samueleaton/sentry.git";
rev = "e448ce83486f99ef016c311e10ec0cac805cded3";
sha256 = "13yp7805xpd605jpfpb3srqb0psy25w7n6x9mpkcyvzhqmpnpfyq";
};
version_from_shard = {
url = "https://github.com/hugopl/version_from_shard.git";
rev = "v1.2.5";
sha256 = "0xizj0q4rd541rwjbx04cjifc2gfx4l5v6q2y7gmd0ndjmkgb8ik";
};
}
+4
View File
@@ -14887,6 +14887,10 @@ with pkgs;
crystal2nix = callPackage ../development/compilers/crystal2nix { };
crystalline = callPackage ../development/tools/language-servers/crystalline {
llvmPackages = llvmPackages_15;
};
icr = callPackage ../development/tools/icr { };
scry = callPackage ../development/tools/scry { crystal = crystal_1_2; };