forked from haskell/haskell-language-server
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathconfiguration-ghc-901.nix
126 lines (106 loc) · 3.86 KB
/
configuration-ghc-901.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# nix version of cabal-ghc901.project
{ pkgs }:
let
disabledPlugins = [
"hls-tactics-plugin"
"hls-brittany-plugin"
"hls-stylish-haskell-plugin"
"hls-fourmolu-plugin"
"hls-splice-plugin"
"hls-ormolu-plugin"
"hls-class-plugin"
"hls-refine-imports-plugin"
];
hpkgsOverride = hself: hsuper:
with pkgs.haskell.lib;
let
lsp-src = pkgs.fetchFromGitHub {
owner = "anka-213";
repo = "lsp";
rev = "tag-ghc-9.0.1-without-pr-326";
sha256 = "lW/EdBnvKPLE2+CGE/grIekOu+U/Wh6zMCN4xhJDtPY=";
};
dependent-sum-src = pkgs.fetchFromGitHub {
owner = "anka-213";
repo = "dependent-sum";
rev = "8cf4c7fbc3bfa2be475a17bb7c94a1e1e9a830b5";
sha256 = "WtxTB6ufTZC6SxOtGSfhlO4mY0y9eWejMSa0yUJ7dHQ=";
};
in {
blaze-textual = hself.callCabal2nix "blaze-textual"
(pkgs.fetchFromGitHub {
owner = "jwaldmann";
repo = "blaze-textual";
rev = "d8ee6cf80e27f9619d621c936bb4bda4b99a183f";
sha256 = "C0dIzf64fBaY8mlhMm1kCQC5Jc1wKBtNO2Y24k7YPUw=";
}) { };
czipwith = hself.callCabal2nix "czipwith" (pkgs.fetchFromGitHub {
owner = "mithrandi";
repo = "czipwith";
rev = "b6245884ae83e00dd2b5261762549b37390179f8";
sha256 = "2uSoGyrxT/OstRcpx55kwP4JwjPbWLxD72LajeyQV0E=";
}) { };
hie-bios = hself.callCabal2nix "hie-bios" (pkgs.fetchFromGitHub {
owner = "jneira";
repo = "hie-bios";
rev = "9b1445ab5efcabfad54043fc9b8e50e9d8c5bbf3";
sha256 = "8ct7t3xIxIAoC+f8VO5e5+QKrd5L5Zu1eButSaE+1Uk=";
}) { };
ghc-api-compat = hself.callCabal2nix "ghc-api-compat"
(pkgs.fetchFromGitHub {
owner = "hsyl20";
repo = "ghc-api-compat";
rev = "8fee87eac97a538dbe81ff1ab18cff10f2f9fa15";
sha256 = "byehvdxQxhNk5ZQUXeFHjAZpAze4Ct9261ro4c5acZk=";
}) { };
th-extras = hself.callCabal2nix "th-extras" (pkgs.fetchFromGitHub {
owner = "anka-213";
repo = "th-extras";
rev = "57a97b4df128eb7b360e8ab9c5759392de8d1659";
sha256 = "Qtha1ge/C0L+uFcV2dZ5xpG59DCxQT7LuK/OYfiM4Pk=";
}) { };
lsp = hself.callCabal2nix "lsp" "${lsp-src}/lsp" { };
lsp-types = hself.callCabal2nix "lsp-types" "${lsp-src}/lsp-types" { };
lsp-test = hself.callCabal2nix "lsp-test" "${lsp-src}/lsp-test" { };
dependent-sum =
hself.callCabal2nix "dependent-sum" "${dependent-sum-src}/dependent-sum"
{ };
dependent-sum-template = hself.callCabal2nix "dependent-sum-template"
"${dependent-sum-src}/dependent-sum-template" { };
hlint = hself.hlint_3_3_1;
ghc-lib-parser = hself.ghc-lib-parser_9_0_1_20210324;
ghc-lib-parser-ex = hself.ghc-lib-parser-ex_9_0_0_4;
operational = hself.callCabal2nix "operational" (pkgs.fetchFromGitHub {
owner = "HeinrichApfelmus";
repo = "operational";
rev = "16e19aaf34e286f3d27b3988c61040823ec66537";
sha256 = "P+aocEcqCN8klnW3IMrmIqq6ztBZJxk4sBp1ewN6YaA=";
}) { };
diagrams-core = hself.diagrams-core_1_5_0;
diagrams-lib = hself.diagrams-lib_1_4_4;
dual-tree = hself.dual-tree_0_2_3_0;
monoid-extras = hself.monoid-extras_0_6;
# Re-generate HLS drv excluding some plugins
haskell-language-server =
hself.callCabal2nixWithOptions "haskell-language-server" ./.
(pkgs.lib.concatStringsSep " " [
"-f-brittany"
"-f-class"
"-f-fourmolu"
"-f-ormolu"
"-f-splice"
"-f-stylishhaskell"
"-f-tactic"
"-f-refineImports"
]) { };
# YOLO
mkDerivation = args:
hsuper.mkDerivation (args // {
jailbreak = true;
doCheck = false;
});
};
in {
inherit disabledPlugins;
tweakHpkgs = hpkgs: hpkgs.extend hpkgsOverride;
}