|
1 | 1 | {
|
2 | 2 | inputs = {
|
3 | 3 | flake-utils.url = "github:numtide/flake-utils";
|
4 |
| - nixpkgs.url = "github:nix-ocaml/nix-overlays"; |
5 |
| - merlin5_2 = { |
6 |
| - url = "github:ocaml/merlin/main"; |
7 |
| - flake = false; |
8 |
| - }; |
9 |
| - merlin5_1 = { |
10 |
| - url = "github:ocaml/merlin/501"; |
| 4 | + nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; |
| 5 | + merlin4_14 = { |
| 6 | + url = "github:ocaml/merlin/v4.18-414"; |
11 | 7 | flake = false;
|
12 | 8 | };
|
13 | 9 | };
|
|
30 | 26 | });
|
31 | 27 | dune-release =
|
32 | 28 | prev.dune-release.overrideAttrs (_: { doCheck = false; });
|
33 |
| - ocamlPackages = prev.ocamlPackages.overrideScope' (oself: osuper: |
| 29 | + ocamlPackages = prev.ocamlPackages.overrideScope (oself: osuper: |
34 | 30 | let
|
35 | 31 | fixPreBuild = o: {
|
36 | 32 | propagatedBuildInputs = o.propagatedBuildInputs ++ [ oself.pp ];
|
|
58 | 54 | in rec {
|
59 | 55 | jsonrpc = buildDunePackage (basePackage // {
|
60 | 56 | pname = "jsonrpc";
|
61 |
| - doCheck = false; |
62 | 57 | propagatedBuildInputs = with pkgs.ocamlPackages; [ ];
|
63 | 58 | });
|
64 | 59 |
|
65 | 60 | lsp = buildDunePackage (basePackage // {
|
66 | 61 | pname = "lsp";
|
67 |
| - doCheck = false; |
68 | 62 | propagatedBuildInputs = with pkgs.ocamlPackages; [
|
69 | 63 | jsonrpc
|
70 | 64 | yojson
|
71 | 65 | ppx_yojson_conv_lib
|
72 | 66 | uutf
|
73 | 67 | ];
|
74 | 68 | checkInputs = let p = pkgs.ocamlPackages;
|
75 |
| - in [ |
76 |
| - p.stdune |
77 |
| - p.cinaps |
78 |
| - p.ppx_expect |
79 |
| - p.ppx_yojson_conv |
80 |
| - (ocamlformat pkgs) |
81 |
| - ]; |
| 69 | + in [ p.cinaps p.ppx_expect p.ppx_yojson_conv (ocamlformat pkgs) ]; |
82 | 70 | });
|
83 | 71 |
|
84 | 72 | ocaml-lsp = with pkgs.ocamlPackages;
|
85 | 73 | buildDunePackage (basePackage // {
|
86 | 74 | pname = package;
|
87 |
| - doCheck = false; |
88 | 75 | checkInputs = let p = pkgs.ocamlPackages;
|
89 | 76 | in [
|
90 | 77 | p.ppx_expect
|
|
137 | 124 | overlays = [ (ocamlVersionOverlay ocaml) (overlay merlin) ];
|
138 | 125 | inherit system;
|
139 | 126 | };
|
140 |
| - pkgs_5_1 = |
141 |
| - makeNixpkgs (ocaml: ocaml.ocamlPackages_5_1) inputs.merlin5_1; |
142 |
| - pkgs_5_2 = |
143 |
| - makeNixpkgs (ocaml: ocaml.ocamlPackages_5_2) inputs.merlin5_2; |
144 |
| - localPackages_5_1 = makeLocalPackages pkgs_5_1; |
145 |
| - localPackages_5_2 = makeLocalPackages pkgs_5_2; |
| 127 | + pkgs_4_14 = |
| 128 | + makeNixpkgs (ocaml: ocaml.ocamlPackages_4_14) inputs.merlin4_14; |
| 129 | + localPackages_4_14 = makeLocalPackages pkgs_4_14; |
146 | 130 | devShell = localPackages: nixpkgs:
|
147 | 131 | nixpkgs.mkShell {
|
148 | 132 | buildInputs = [ nixpkgs.ocamlPackages.utop ];
|
149 |
| - inputsFrom = |
150 |
| - builtins.map (x: x.overrideAttrs (p: n: { doCheck = true; })) |
151 |
| - (builtins.attrValues localPackages); |
| 133 | + inputsFrom = builtins.attrValues localPackages; |
152 | 134 | };
|
153 | 135 | in {
|
154 |
| - packages = (localPackages_5_2 // { |
155 |
| - default = localPackages_5_2.ocaml-lsp; |
156 |
| - ocaml_5_1 = localPackages_5_1; |
157 |
| - }); |
| 136 | + packages = |
| 137 | + (localPackages_4_14 // { default = localPackages_4_14.ocaml-lsp; }); |
158 | 138 |
|
159 | 139 | devShells = {
|
160 |
| - default = devShell localPackages_5_2 pkgs_5_2; |
161 |
| - |
162 |
| - ocaml5_1 = devShell localPackages_5_1 pkgs_5_1; |
| 140 | + default = devShell localPackages_4_14 pkgs_4_14; |
163 | 141 |
|
164 | 142 | release = pkgsWithoutOverlays.mkShell {
|
165 | 143 | buildInputs = [ pkgsWithoutOverlays.dune-release ];
|
|
176 | 154 | ];
|
177 | 155 | };
|
178 | 156 |
|
179 |
| - check = pkgs_5_2.mkShell { |
180 |
| - inputsFrom = builtins.attrValues localPackages_5_2; |
| 157 | + check = pkgs_4_14.mkShell { |
| 158 | + inputsFrom = builtins.attrValues localPackages_4_14; |
181 | 159 | };
|
182 | 160 | };
|
183 | 161 | }));
|
|
0 commit comments