Merge pull request #238775 from donovanglover/crystalline

crystalline: init at 0.9.0
This commit is contained in:
Janik 2023-06-27 15:38:46 +02:00 committed by GitHub
commit c704b7868f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 87 additions and 0 deletions

@ -4222,6 +4222,14 @@
githubId = 39825;
name = "Dominik Honnef";
};
donovanglover = {
github = "donovanglover";
githubId = 2374245;
name = "Donovan Glover";
keys = [{
fingerprint = "EE7D 158E F9E7 660E 0C33 86B2 8FC5 F7D9 0A5D 8F4D";
}];
};
doriath = {
email = "tomasz.zurkowski@gmail.com";
github = "doriath";

@ -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";
};
}

@ -15048,6 +15048,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; };