tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
nimlsp: convert to buildNimPackage
Emery Hemingway
4 years ago
766671c7
724bde1a
+31
-26
4 changed files
expand all
collapse all
unified
split
pkgs
development
nim-packages
astpatternmatching
default.nix
jsonschema
default.nix
tools
misc
nimlsp
default.nix
top-level
nim-packages.nix
+8
pkgs/development/nim-packages/astpatternmatching/default.nix
···
1
1
+
{ fetchFromGitHub }:
2
2
+
3
3
+
fetchFromGitHub {
4
4
+
owner = "krux02";
5
5
+
repo = "ast-pattern-matching";
6
6
+
rev = "87f7d163421af5a4f5e5cb6da7b93278e6897e96";
7
7
+
sha256 = "19mb5bb6riia8380p5dpc3q0vwgrj958dd6p7vw8vkvwiqrzg6zq";
8
8
+
}
+8
pkgs/development/nim-packages/jsonschema/default.nix
···
1
1
+
{ fetchFromGitHub }:
2
2
+
3
3
+
fetchFromGitHub {
4
4
+
owner = "PMunch";
5
5
+
repo = "jsonschema";
6
6
+
rev = "7b41c03e3e1a487d5a8f6b940ca8e764dc2cbabf";
7
7
+
sha256 = "1js64jqd854yjladxvnylij4rsz7212k31ks541pqrdzm6hpblbz";
8
8
+
}
+10
-26
pkgs/development/tools/misc/nimlsp/default.nix
···
1
1
-
{ lib, stdenv, fetchFromGitHub, srcOnly, nim }:
2
2
-
let
3
3
-
astpatternmatching = fetchFromGitHub {
4
4
-
owner = "krux02";
5
5
-
repo = "ast-pattern-matching";
6
6
-
rev = "87f7d163421af5a4f5e5cb6da7b93278e6897e96";
7
7
-
sha256 = "19mb5bb6riia8380p5dpc3q0vwgrj958dd6p7vw8vkvwiqrzg6zq";
8
8
-
};
1
1
+
{ lib, nimPackages, fetchFromGitHub, srcOnly, nim }:
9
2
10
10
-
jsonschema = fetchFromGitHub {
11
11
-
owner = "PMunch";
12
12
-
repo = "jsonschema";
13
13
-
rev = "7b41c03e3e1a487d5a8f6b940ca8e764dc2cbabf";
14
14
-
sha256 = "1js64jqd854yjladxvnylij4rsz7212k31ks541pqrdzm6hpblbz";
15
15
-
};
16
16
-
in
17
17
-
stdenv.mkDerivation rec {
3
3
+
nimPackages.buildNimPackage rec {
18
4
pname = "nimlsp";
19
5
version = "0.3.2";
6
6
+
nimBinOnly = true;
20
7
21
8
src = fetchFromGitHub {
22
9
owner = "PMunch";
···
25
12
sha256 = "1lm823nvpp3bj9527jd8n1jxh6y8p8ngkfkj91p94m7ffai6jazq";
26
13
};
27
14
28
28
-
nativeBuildInputs = [ nim ];
15
15
+
buildInputs = with nimPackages; [ astpatternmatching jsonschema ];
29
16
30
30
-
buildPhase = ''
31
31
-
export HOME=$TMPDIR
32
32
-
nim -d:release -p:${astpatternmatching}/src -p:${jsonschema}/src \
33
33
-
c --threads:on -d:nimcore -d:nimsuggest -d:debugCommunication \
34
34
-
-d:debugLogging -d:explicitSourcePath=${srcOnly nim.passthru.nim} -d:tempDir=/tmp src/nimlsp
35
35
-
'';
17
17
+
nimFlags = [
18
18
+
"--threads:on"
19
19
+
"-d:explicitSourcePath=${srcOnly nimPackages.nim.passthru.nim}"
20
20
+
"-d:tempDir=/tmp"
21
21
+
];
36
22
37
37
-
installPhase = ''
38
38
-
install -Dt $out/bin src/nimlsp
39
39
-
'';
23
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
12
+
astpatternmatching =
13
13
+
callPackage ../development/nim-packages/astpatternmatching { };
14
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
24
+
25
25
+
jsonschema = callPackage ../development/nim-packages/jsonschema { };
21
26
22
27
karax = callPackage ../development/nim-packages/karax { };
23
28