nimlsp: convert to buildNimPackage

+31 -26
+8
pkgs/development/nim-packages/astpatternmatching/default.nix
··· 1 + { fetchFromGitHub }: 2 + 3 + fetchFromGitHub { 4 + owner = "krux02"; 5 + repo = "ast-pattern-matching"; 6 + rev = "87f7d163421af5a4f5e5cb6da7b93278e6897e96"; 7 + sha256 = "19mb5bb6riia8380p5dpc3q0vwgrj958dd6p7vw8vkvwiqrzg6zq"; 8 + }
+8
pkgs/development/nim-packages/jsonschema/default.nix
··· 1 + { fetchFromGitHub }: 2 + 3 + fetchFromGitHub { 4 + owner = "PMunch"; 5 + repo = "jsonschema"; 6 + rev = "7b41c03e3e1a487d5a8f6b940ca8e764dc2cbabf"; 7 + sha256 = "1js64jqd854yjladxvnylij4rsz7212k31ks541pqrdzm6hpblbz"; 8 + }
+10 -26
pkgs/development/tools/misc/nimlsp/default.nix
··· 1 - { lib, stdenv, fetchFromGitHub, srcOnly, nim }: 2 - let 3 - astpatternmatching = fetchFromGitHub { 4 - owner = "krux02"; 5 - repo = "ast-pattern-matching"; 6 - rev = "87f7d163421af5a4f5e5cb6da7b93278e6897e96"; 7 - sha256 = "19mb5bb6riia8380p5dpc3q0vwgrj958dd6p7vw8vkvwiqrzg6zq"; 8 - }; 1 + { lib, nimPackages, fetchFromGitHub, srcOnly, nim }: 9 2 10 - jsonschema = fetchFromGitHub { 11 - owner = "PMunch"; 12 - repo = "jsonschema"; 13 - rev = "7b41c03e3e1a487d5a8f6b940ca8e764dc2cbabf"; 14 - sha256 = "1js64jqd854yjladxvnylij4rsz7212k31ks541pqrdzm6hpblbz"; 15 - }; 16 - in 17 - stdenv.mkDerivation rec { 3 + nimPackages.buildNimPackage rec { 18 4 pname = "nimlsp"; 19 5 version = "0.3.2"; 6 + nimBinOnly = true; 20 7 21 8 src = fetchFromGitHub { 22 9 owner = "PMunch"; ··· 25 12 sha256 = "1lm823nvpp3bj9527jd8n1jxh6y8p8ngkfkj91p94m7ffai6jazq"; 26 13 }; 27 14 28 - nativeBuildInputs = [ nim ]; 15 + buildInputs = with nimPackages; [ astpatternmatching jsonschema ]; 29 16 30 - buildPhase = '' 31 - export HOME=$TMPDIR 32 - nim -d:release -p:${astpatternmatching}/src -p:${jsonschema}/src \ 33 - c --threads:on -d:nimcore -d:nimsuggest -d:debugCommunication \ 34 - -d:debugLogging -d:explicitSourcePath=${srcOnly nim.passthru.nim} -d:tempDir=/tmp src/nimlsp 35 - ''; 17 + nimFlags = [ 18 + "--threads:on" 19 + "-d:explicitSourcePath=${srcOnly nimPackages.nim.passthru.nim}" 20 + "-d:tempDir=/tmp" 21 + ]; 36 22 37 - installPhase = '' 38 - install -Dt $out/bin src/nimlsp 39 - ''; 23 + nimDefines = [ "nimcore" "nimsuggest" "debugCommunication" "debugLogging" ]; 40 24 41 25 meta = with lib; { 42 26 description = "Language Server Protocol implementation for Nim";
+5
pkgs/top-level/nim-packages.nix
··· 9 9 callPackage ../development/nim-packages/build-nim-package { }; 10 10 fetchNimble = callPackage ../development/nim-packages/fetch-nimble { }; 11 11 12 + astpatternmatching = 13 + callPackage ../development/nim-packages/astpatternmatching { }; 14 + 12 15 bumpy = callPackage ../development/nim-packages/bumpy { }; 13 16 14 17 chroma = callPackage ../development/nim-packages/chroma { }; ··· 18 21 frosty = callPackage ../development/nim-packages/frosty { }; 19 22 20 23 jester = callPackage ../development/nim-packages/jester { }; 24 + 25 + jsonschema = callPackage ../development/nim-packages/jsonschema { }; 21 26 22 27 karax = callPackage ../development/nim-packages/karax { }; 23 28