|
2 | 2 | inputs = {
|
3 | 3 | flake-utils.url = "github:numtide/flake-utils";
|
4 | 4 | nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
5 |
| - opam-nix = { |
6 |
| - url = "github:tweag/opam-nix"; |
7 |
| - inputs.opam-repository.follows = "opam-repository"; |
8 |
| - }; |
9 |
| - opam-repository = { |
10 |
| - url = "github:ocaml/opam-repository"; |
11 |
| - flake = false; |
12 |
| - }; |
13 | 5 | };
|
14 | 6 |
|
15 |
| - outputs = { self, flake-utils, opam-nix, opam-repository, nixpkgs, ... }@inputs: |
| 7 | + outputs = { self, flake-utils, nixpkgs, ... }@inputs: |
16 | 8 | let
|
17 | 9 | package = "ocaml-lsp-server";
|
18 | 10 | overlay = final: prev: {
|
|
49 | 41 | inherit (pkgs.ocamlPackages) buildDunePackage;
|
50 | 42 | fast = rec {
|
51 | 43 |
|
52 |
| - # these packages do not use opam2nix |
53 | 44 | jsonrpc = buildDunePackage {
|
54 | 45 | pname = "jsonrpc";
|
55 | 46 | version = "n/a";
|
|
107 | 98 | doCheck = false;
|
108 | 99 | };
|
109 | 100 | };
|
110 |
| - on = opam-nix.lib.${system}; |
111 |
| - localPackages = { |
112 |
| - jsonrpc = "*"; |
113 |
| - lsp = "*"; |
114 |
| - ocaml-lsp-server = "*"; |
115 |
| - }; |
116 |
| - devPackages = { |
117 |
| - menhir = "*"; |
118 |
| - ppx_yojson_conv = "*"; |
119 |
| - cinaps = "*"; |
120 |
| - ppx_expect = "*"; |
121 |
| - ocamlfind = "1.9.2"; |
122 |
| - }; |
123 |
| - packagesFromNames = set: |
124 |
| - (builtins.map (s: builtins.getAttr s scope) |
125 |
| - (builtins.attrNames set)); |
126 |
| - allPackages = localPackages // devPackages; |
127 |
| - scope = |
128 |
| - ( |
129 |
| - let |
130 |
| - scope = |
131 |
| - on.buildOpamProject |
132 |
| - { |
133 |
| - repos = [ opam-repository ]; |
134 |
| - inherit pkgs; |
135 |
| - resolveArgs = { with-test = true; }; |
136 |
| - } |
137 |
| - package |
138 |
| - ./. |
139 |
| - (allPackages); |
140 |
| - in |
141 |
| - scope.overrideScope' overlay |
142 |
| - ); |
143 |
| - opam2nixPackages = nixpkgs.lib.filterAttrs (name: value: builtins.hasAttr name localPackages) scope; |
144 | 101 | in
|
145 | 102 | {
|
146 | 103 | packages =
|
147 |
| - opam2nixPackages // |
148 | 104 | rec {
|
149 | 105 | # we have a package without opam2nix for easy consumption for nix users
|
150 | 106 | default = pkgs.ocamlPackages.buildDunePackage {
|
|
190 | 146 | };
|
191 | 147 |
|
192 | 148 | devShells = {
|
193 |
| - opam2nix = pkgs.mkShell { |
194 |
| - buildInputs = (with pkgs; |
195 |
| - [ |
196 |
| - # dev tools |
197 |
| - ocamlformat_0_24_1 |
198 |
| - yarn |
199 |
| - dune-release |
200 |
| - ]) ++ packagesFromNames devPackages; |
201 |
| - inputsFrom = packagesFromNames opam2nixPackages; |
202 |
| - }; |
203 |
| - |
204 | 149 | default = pkgs.mkShell {
|
205 | 150 | buildInputs = (with pkgs;
|
206 | 151 | [
|
|
0 commit comments