on iko/ghcjs-patch-master help sign in
Add pins and materialization for ghc-boot-packages and ghc-extra-packages (#546)
d1102d3Hamish Mackenzie
@@ -30,16 +30,16 @@ in rec {
30 # TODO: Surely this shouldn't be necessary. I think normal 'filterAttrsRecursive' will effectively cause infinite loops
30 # TODO: Surely this shouldn't be necessary. I think normal 'filterAttrsRecursive' will effectively cause infinite loops
31 # if you keep derivations and your predicate forces the value of the attribute, as this then triggers a loop on the
31 # if you keep derivations and your predicate forces the value of the attribute, as this then triggers a loop on the
32 # 'out' attribute. Weird.
32 # 'out' attribute. Weird.
33+ # To make this function faster, unwanted attributes are mapped to {} instead of being
34+ # removed. This keeps the function lazy and avoids unwanted evaluation of sibling
35+ # derivations.
33 filterAttrsOnlyRecursive = pred: set:
36 filterAttrsOnlyRecursive = pred: set:
34− lib.listToAttrs (
37+ lib.mapAttrs (name: v:
35− lib.concatMap (name:
36− let v = set.${name}; in
37− if pred name v then [
38+ if pred name v
38− (lib.nameValuePair name (
39+ then
40+ if builtins.isAttrs v
41+ && !lib.isDerivation v
39− if builtins.isAttrs v && !lib.isDerivation v then filterAttrsOnlyRecursive pred v
42+ then filterAttrsOnlyRecursive pred v
40 else v
43 else v
41− ))
42− ] else []
44+ else {}) set;
43− ) (builtins.attrNames set)
44− );
45}
45}
ci.nix+1−1
@@ -59,7 +59,7 @@ dimension "Nixpkgs version" nixpkgsVersions (nixpkgsName: nixpkgs-pin:
59 }
59 }
60 //
60 //
61 # Tests are broken on aarch64 cross https://github.com/input-output-hk/haskell.nix/issues/513
61 # Tests are broken on aarch64 cross https://github.com/input-output-hk/haskell.nix/issues/513
62− pkgs.lib.optionalAttrs (crossSystemName != "aarch64-multiplatform") build.tests
62+ pkgs.lib.optionalAttrs (crossSystemName != "aarch64-multiplatform") { inherit (build) tests; }
63 )
63 )
64 )
64 )
65)
65)
docs/user-guide/materialization.md+91−115
@@ -39,11 +39,11 @@ Lets say we want to build `hlint`. We might start with an `hlint`
39file that looks like this:
39file that looks like this:
40
40
41```nix
41```nix
42−let inherit (import ./. {}) sources nixpkgsArgs;
42+let inherit (import ./. {}) sources nixpkgsArgs;
43 pkgs = import sources.nixpkgs-default nixpkgsArgs;
43 pkgs = import sources.nixpkgs-default nixpkgsArgs;
44 hlint = pkgs.haskell-nix.hackage-package {
44 hlint = pkgs.haskell-nix.hackage-package {
45 name = "hlint";
45 name = "hlint";
46− version = "2.2.4";
46+ version = "2.2.11";
47 };
47 };
48in hlint.components.exes.hlint
48in hlint.components.exes.hlint
49```
49```
@@ -52,10 +52,10 @@ Building this may result in a lot of output, but if you build
52it again it should give just:
52it again it should give just:
53
53
54```
54```
55−$ nix-build hlint.nix
55+$ nix-build hlint.nix
56trace: Using latest index state for hlint!
56trace: Using latest index state for hlint!
57−trace: Using index-state: 2019-12-09T00:00:00Z for hlint
57+trace: Using index-state: 2020-04-15T00:00:00Z for hlint
58−/nix/store/7wwqq5v42gm6iiz2d3ngbnkyw7i4py11-hlint-2.2.4-exe-hlint
58+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
59```
59```
60
60
61To materialize the nix files we need to take care to pin down the
61To materialize the nix files we need to take care to pin down the
@@ -63,12 +63,12 @@ inputs. For `cabalProject` and `hackage-package` this means
63we must specify the `index-state` of hackage we want to use:
63we must specify the `index-state` of hackage we want to use:
64
64
65```nix
65```nix
66−let inherit (import ./. {}) sources nixpkgsArgs;
66+let inherit (import ./. {}) sources nixpkgsArgs;
67− pkgs = import sources.nixpkgs-default nixpkgsArgs;
67+ pkgs = import sources.nixpkgs-default nixpkgsArgs;
68 hlint = pkgs.haskell-nix.hackage-package {
68 hlint = pkgs.haskell-nix.hackage-package {
69 name = "hlint";
69 name = "hlint";
70− version = "2.2.4";
70+ version = "2.2.11";
71− index-state = "2019-12-03T00:00:00Z";
71+ index-state = "2020-04-15T00:00:00Z";
72 };
72 };
73in hlint.components.exes.hlint
73in hlint.components.exes.hlint
74```
74```
@@ -78,26 +78,26 @@ calculate a suitable sha256 hash to turn the derivation
78containing the nix files into a fixed output derivation:
78containing the nix files into a fixed output derivation:
79
79
80```
80```
81−$ nix-build hlint.nix
81+$ nix-build hlint.nix
82−trace: Using index-state: 2019-12-03T00:00:00Z for hlint
82+trace: Using index-state: 2020-04-15T00:00:00Z for hlint
83−trace: Get `plan-sha256` with `nix-hash --base32 --type sha256 /nix/store/qk1fvza1alkvs51vzmpjp2xsg8xklyxk-hlint-plan-to-nix-pkgs/`
83+trace: Get `plan-sha256` with `nix-hash --base32 --type sha256 /nix/store/8z6p4237rin3c6c1lmjwshmj8rdqrhw2-hlint-plan-to-nix-pkgs/`
84−/nix/store/7wwqq5v42gm6iiz2d3ngbnkyw7i4py11-hlint-2.2.4-exe-hlint
84+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
85
85
86−$ nix-hash --base32 --type sha256 /nix/store/qk1fvza1alkvs51vzmpjp2xsg8xklyxk-hlint-plan-to-nix-pkgs/
86+$ nix-hash --base32 --type sha256 /nix/store/8z6p4237rin3c6c1lmjwshmj8rdqrhw2-hlint-plan-to-nix-pkgs/
87−1a4rhv3h2daz6dzwzfl3w7l1v556n7aqfiagw6m0rvqq230iabss
87+02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4
88```
88```
89
89
90We can add the hash as `plan-sha256` or (`stack-sha256` for
90We can add the hash as `plan-sha256` or (`stack-sha256` for
91`stackProject`)
91`stackProject`)
92
92
93```nix
93```nix
94−let inherit (import ./. {}) sources nixpkgsArgs;
94+let inherit (import ./. {}) sources nixpkgsArgs;
95− pkgs = import sources.nixpkgs-default nixpkgsArgs;
95+ pkgs = import sources.nixpkgs-default nixpkgsArgs;
96 hlint = pkgs.haskell-nix.hackage-package {
96 hlint = pkgs.haskell-nix.hackage-package {
97 name = "hlint";
97 name = "hlint";
98− version = "2.2.4";
98+ version = "2.2.11";
99− index-state = "2019-12-03T00:00:00Z";
99+ index-state = "2020-04-15T00:00:00Z";
100− plan-sha256 = "1a4rhv3h2daz6dzwzfl3w7l1v556n7aqfiagw6m0rvqq230iabss";
100+ plan-sha256 = "02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4";
101 };
101 };
102in hlint.components.exes.hlint
102in hlint.components.exes.hlint
103```
103```
@@ -111,22 +111,22 @@ to wait while they are built or downloaded.
111Running nix build again gives us a hint on what we can do next:
111Running nix build again gives us a hint on what we can do next:
112
112
113```
113```
114−$ nix-build hlint.nix
114+$ nix-build hlint.nix
115−trace: Using index-state: 2019-12-03T00:00:00Z for hlint
115+trace: Using index-state: 2020-04-15T00:00:00Z for hlint
116−trace: To materialize, point `materialized` to a copy of /nix/store/0xalcphb7ifvy5fc9dpwj40fij6nn5av-hlint-plan-to-nix-pkgs
116+trace: To materialize, point `materialized` to a copy of /nix/store/kk047cqsjvbj4w8psv4l05abdcnyrqdc-hlint-plan-to-nix-pkgs
117−/nix/store/7wwqq5v42gm6iiz2d3ngbnkyw7i4py11-hlint-2.2.4-exe-hlint
117+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
118```
118```
119
119
120To capture the nix we can do something like:
120To capture the nix we can do something like:
121
121
122```nix
122```nix
123−let inherit (import ./. {}) sources nixpkgsArgs;
123+let inherit (import ./. {}) sources nixpkgsArgs;
124− pkgs = import sources.nixpkgs-default nixpkgsArgs;
124+ pkgs = import sources.nixpkgs-default nixpkgsArgs;
125 hlint = pkgs.haskell-nix.hackage-package {
125 hlint = pkgs.haskell-nix.hackage-package {
126 name = "hlint";
126 name = "hlint";
127− version = "2.2.4";
127+ version = "2.2.11";
128− index-state = "2019-12-03T00:00:00Z";
128+ index-state = "2020-04-15T00:00:00Z";
129− plan-sha256 = "1a4rhv3h2daz6dzwzfl3w7l1v556n7aqfiagw6m0rvqq230iabss";
129+ plan-sha256 = "02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4";
130 materialized = ./hlint.materialized;
130 materialized = ./hlint.materialized;
131 };
131 };
132in hlint.components.exes.hlint
132in hlint.components.exes.hlint
@@ -135,9 +135,9 @@ in hlint.components.exes.hlint
135Now we can copy the nix files needed and build with:
135Now we can copy the nix files needed and build with:
136
136
137```
137```
138−$ cp -r /nix/store/0xalcphb7ifvy5fc9dpwj40fij6nn5av-hlint-plan-to-nix-pkgs hlint.materialized
138+$ cp -r /nix/store/8z6p4237rin3c6c1lmjwshmj8rdqrhw2-hlint-plan-to-nix-pkgs hlint.materialized
139−$ nix-build hlint.nix
139+$ nix-build hlint.nix
140−/nix/store/7wwqq5v42gm6iiz2d3ngbnkyw7i4py11-hlint-2.2.4-exe-hlint
140+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
141```
141```
142
142
143We may want to run `chmod -R +w hlint.materialized` as the files copied from the
143We may want to run `chmod -R +w hlint.materialized` as the files copied from the
@@ -145,74 +145,44 @@ store will be read only.
145
145
146## How can we check `sha256` and `materialized` are up to date?
146## How can we check `sha256` and `materialized` are up to date?
147
147
148−Let's pretend we had to go back to `hlint` version `2.2.3`.
148+Let's pretend we had to go back to `hlint` version `2.2.10`.
149−We can change `version` and temporarily add
149+We can tell haskell.nix to check the materialiazation either by:
150+
151+* Removing the materialization files with `rm -rf hlint.materialized`
150−`checkMaterialization = true;`:
152+* Temporarily adding `checkMaterialization = true;`
153+
154+If we choose to add the `checkMaterialization` flag you would have:
151
155
152```nix
156```nix
153−let inherit (import ./. {}) sources nixpkgsArgs;
157+let inherit (import ./. {}) sources nixpkgsArgs;
154− pkgs = import sources.nixpkgs-default nixpkgsArgs;
158+ pkgs = import sources.nixpkgs-default nixpkgsArgs;
155 hlint = pkgs.haskell-nix.hackage-package {
159 hlint = pkgs.haskell-nix.hackage-package {
156 name = "hlint";
160 name = "hlint";
157− version = "2.2.4";
161+ version = "2.2.10";
158− index-state = "2019-12-03T00:00:00Z";
162+ index-state = "2020-04-15T00:00:00Z";
159− plan-sha256 = "1a4rhv3h2daz6dzwzfl3w7l1v556n7aqfiagw6m0rvqq230iabss";
163+ plan-sha256 = "02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4";
160 materialized = ./hlint.materialized;
164 materialized = ./hlint.materialized;
161 checkMaterialization = true;
165 checkMaterialization = true;
162 };
166 };
163in hlint.components.exes.hlint
167in hlint.components.exes.hlint
164```
168```
165
169
166−This will fail and report the details of what is wrong:
170+This will fail and report the details of what is wrong and how to fix it:
167
171
168```
172```
169−$ nix-build hlint.nix
173+$ nix-build hlint.nix
170−trace: Using index-state: 2019-12-03T00:00:00Z for hlint
174+
171−building '/nix/store/zmif4gk52ynh57pf4dikzgsk30haqi2b-hlint-plan-to-nix-pkgs.drv'...
175+...
172−Changes to hlint-plan-to-nix-pkgs not reflected in plan-sha256
176+
173−diff -ru /nix/store/0xalcphb7ifvy5fc9dpwj40fij6nn5av-hlint-plan-to-nix-pkgs/.plan.nix/hlint.nix /nix/store/h5j8k3y5lansyfss25gd7knbninzr6z4-hlint-plan-to-nix-pkgs/.plan.nix/hlint.nix
177+Calculated hash for hlint-plan-to-nix-pkgs was not 02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4. New hash is :
174−--- /nix/store/0xalcphb7ifvy5fc9dpwj40fij6nn5av-hlint-plan-to-nix-pkgs/.plan.nix/hlint.nix 1970-01-01 00:00:01.000000000 +0000
178+ plan-sha256 = "0zsi3wv92qax33ic4n5dfsqd1r9qam1k75za3c5jqgdxl3hy8vph";
175−+++ /nix/store/h5j8k3y5lansyfss25gd7knbninzr6z4-hlint-plan-to-nix-pkgs/.plan.nix/hlint.nix 1970-01-01 00:00:01.000000000 +0000
179+Materialized nix used for hlint-plan-to-nix-pkgs incorrect. To fix run :
176−@@ -42,7 +42,7 @@
180+ rm -rf /Users/hamish/iohk/haskell.nix/hlint.materialized
177− flags = { threaded = true; gpl = true; ghc-lib = false; };
181+ cp -r /nix/store/ywdhbx9rzzkfc60c5vzk7cins2hnvkgx-hlint-plan-to-nix-pkgs /Users/hamish/iohk/haskell.nix/hlint.materialized
178− package = {
182+ chmod -R +w /Users/hamish/iohk/haskell.nix/hlint.materialized
179− specVersion = "1.18";
180−- identifier = { name = "hlint"; version = "2.2.4"; };
181−+ identifier = { name = "hlint"; version = "2.2.3"; };
182− license = "BSD-3-Clause";
183− copyright = "Neil Mitchell 2006-2019";
184− maintainer = "Neil Mitchell <ndmitchell@gmail.com>";
185−@@ -95,7 +95,6 @@
186− (hsPkgs."extra" or (buildDepError "extra"))
187− (hsPkgs."refact" or (buildDepError "refact"))
188− (hsPkgs."aeson" or (buildDepError "aeson"))
189−- (hsPkgs."filepattern" or (buildDepError "filepattern"))
190− (hsPkgs."syb" or (buildDepError "syb"))
191− (hsPkgs."mtl" or (buildDepError "mtl"))
192− ] ++ (if !flags.ghc-lib && (compiler.isGhc && (compiler.version).ge "8.8.0") && (compiler.isGhc && (compiler.version).lt "8.9.0")
193−diff -ru /nix/store/0xalcphb7ifvy5fc9dpwj40fij6nn5av-hlint-plan-to-nix-pkgs/default.nix /nix/store/h5j8k3y5lansyfss25gd7knbninzr6z4-hlint-plan-to-nix-pkgs/default.nix
194−--- /nix/store/0xalcphb7ifvy5fc9dpwj40fij6nn5av-hlint-plan-to-nix-pkgs/default.nix 1970-01-01 00:00:01.000000000 +0000
195−+++ /nix/store/h5j8k3y5lansyfss25gd7knbninzr6z4-hlint-plan-to-nix-pkgs/default.nix 1970-01-01 00:00:01.000000000 +0000
196−@@ -76,7 +76,7 @@
197− "tagged".revision = (((hackage."tagged")."0.8.6").revisions).default;
198− "tagged".flags.transformers = true;
199− "tagged".flags.deepseq = true;
200−- "haskell-src-exts".revision = (((hackage."haskell-src-exts")."1.22.0").revisions).default;
201−+ "haskell-src-exts".revision = (((hackage."haskell-src-exts")."1.21.1").revisions).default;
202− "unliftio-core".revision = (((hackage."unliftio-core")."0.1.2.0").revisions).default;
203− "ghc-lib-parser".revision = (((hackage."ghc-lib-parser")."8.8.1").revisions).default;
204− "containers".revision = (((hackage."containers")."0.6.0.1").revisions).default;
205−@@ -116,7 +116,6 @@
206− "hpc".revision = (((hackage."hpc")."0.6.0.3").revisions).default;
207− "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
208− "process".revision = (((hackage."process")."1.6.5.0").revisions).default;
209−- "filepattern".revision = (((hackage."filepattern")."0.1.1").revisions).default;
210− "libyaml".revision = (((hackage."libyaml")."0.1.1.1").revisions).default;
211− "libyaml".flags.system-libyaml = false;
212− "libyaml".flags.no-unicode = false;
213−Calculated hash is 1qjmhlb4rw6mggs7y57f6zr5zjmkhkx7sn9q8pb18308n5nxgxcs expected hash was 1a4rhv3h2daz6dzwzfl3w7l1v556n7aqfiagw6m0rvqq230iabss for hlint-plan-to-nix-pkgs
214−builder for '/nix/store/zmif4gk52ynh57pf4dikzgsk30haqi2b-hlint-plan-to-nix-pkgs.drv' failed with exit code 1
183+builder for '/nix/store/a5zmgfjfxahapw0q8hd2da5bg7knqvbx-hlint-plan-to-nix-pkgs.drv' failed with exit code 1
215−error: build of '/nix/store/zmif4gk52ynh57pf4dikzgsk30haqi2b-hlint-plan-to-nix-pkgs.drv' failed
184+error: build of '/nix/store/a5zmgfjfxahapw0q8hd2da5bg7knqvbx-hlint-plan-to-nix-pkgs.drv' failed
185+(use '--show-trace' to show detailed location information)
216```
186```
217
187
218Checking the materialization requires nix to do all the work that materialization
188Checking the materialization requires nix to do all the work that materialization
@@ -228,21 +198,21 @@ hash and materialized nix we can find out what nix files should be.
228For instance:
198For instance:
229
199
230```nix
200```nix
231−let inherit (import ./. {}) sources nixpkgsArgs;
201+let inherit (import ./. {}) sources nixpkgsArgs;
232− pkgs = import sources.nixpkgs-default nixpkgsArgs;
202+ pkgs = import sources.nixpkgs-default nixpkgsArgs;
233 hlint = pkgs.haskell-nix.hackage-project {
203 hlint = pkgs.haskell-nix.hackage-project {
234 name = "hlint";
204 name = "hlint";
235− version = "2.2.4";
205+ version = "2.2.10";
236− index-state = "2019-12-03T00:00:00Z";
206+ index-state = "2020-04-15T00:00:00Z";
237 };
207 };
238in hlint
208in hlint
239```
209```
240
210
241```
211```
242$ nix-build hlint.nix -A plan-nix
212$ nix-build hlint.nix -A plan-nix
243−trace: Using index-state: 2019-12-03T00:00:00Z for hlint
213+trace: Using index-state: 2020-04-15T00:00:00Z for hlint
244−trace: Get `plan-sha256` with `nix-hash --base32 --type sha256 /nix/store/qk1fvza1alkvs51vzmpjp2xsg8xklyxk-hlint-plan-to-nix-pkgs/`
214+trace: Get `plan-sha256` with `nix-hash --base32 --type sha256 /nix/store/ywdhbx9rzzkfc60c5vzk7cins2hnvkgx-hlint-plan-to-nix-pkgs/`
245−/nix/store/qk1fvza1alkvs51vzmpjp2xsg8xklyxk-hlint-plan-to-nix-pkgs
215+/nix/store/ywdhbx9rzzkfc60c5vzk7cins2hnvkgx-hlint-plan-to-nix-pkgs
246```
216```
247
217
248We can have the script copy `$(nix-build hlint.nix -A plan-nix --no-out-link)`
218We can have the script copy `$(nix-build hlint.nix -A plan-nix --no-out-link)`
@@ -257,17 +227,23 @@ Yes and it gives us the same speed improvement, however:
257* Users will still wind up building or downloading the dependencies
227* Users will still wind up building or downloading the dependencies
258 needed to build the nix fileds (if they do not have them).
228 needed to build the nix fileds (if they do not have them).
259
229
260−For instance:
230+For those reasons it might be best to make a copy instead
231+of using the `/nix/store/...` path directly.
232+
233+If you really want to use the `/nix/store/...` path directly
234+you should gaurd against the path not existing as passing in
235+a non-existing path is now an error:
261
236
262```nix
237```nix
263−let inherit (import ./. {}) sources nixpkgsArgs;
238+let inherit (import ./. {}) sources nixpkgsArgs;
264− pkgs = import sources.nixpkgs-default nixpkgsArgs;
239+ pkgs = import sources.nixpkgs-default nixpkgsArgs;
240+ hlintPlan = /nix/store/kk047cqsjvbj4w8psv4l05abdcnyrqdc-hlint-plan-to-nix-pkgs;
265 hlint = pkgs.haskell-nix.hackage-package {
241 hlint = pkgs.haskell-nix.hackage-package {
266 name = "hlint";
242 name = "hlint";
267− version = "2.2.4";
243+ version = "2.2.11";
268− index-state = "2019-12-03T00:00:00Z";
244+ index-state = "2020-04-15T00:00:00Z";
269− plan-sha256 = "1a4rhv3h2daz6dzwzfl3w7l1v556n7aqfiagw6m0rvqq230iabss";
245+ plan-sha256 = "02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4";
270− materialized = /nix/store/qk1fvza1alkvs51vzmpjp2xsg8xklyxk-hlint-plan-to-nix-pkgs;
246+ materialized = if __pathExists hlintPlan then hlintPlan else null;
271 };
247 };
272in hlint.components.exes.hlint
248in hlint.components.exes.hlint
273```
249```
@@ -275,17 +251,17 @@ in hlint.components.exes.hlint
275Running when no building is needed is still slow in restricted evaluation mode.
251Running when no building is needed is still slow in restricted evaluation mode.
276
252
277```
253```
278−$ time nix-build --option restrict-eval true -I . --option allowed-uris "https://github.com/NixOS https://github.com/input-output-hk" hlint.nix
254+$ time nix-build --option restrict-eval true -I . --option allowed-uris "https://github.com/NixOS https://github.com/input-output-hk" hlint.nix --show-trace
279−trace: Using index-state: 2019-12-03T00:00:00Z for hlint
255+trace: Using index-state: 2020-04-15T00:00:00Z for hlint
280−/nix/store/7wwqq5v42gm6iiz2d3ngbnkyw7i4py11-hlint-2.2.4-exe-hlint
256+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
281−
257+
282−real 0m10.066s
258+real 0m4.463s
283−user 0m8.563s
259+user 0m4.440s
284−sys 0m0.630s
260+sys 0m0.461s
285−$ time nix-build hlint.nix
261+$ time nix-build hlint.nix
286−/nix/store/7wwqq5v42gm6iiz2d3ngbnkyw7i4py11-hlint-2.2.4-exe-hlint
262+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
287−
263+
288−real 0m4.628s
264+real 0m2.206s
289−user 0m3.889s
265+user 0m1.665s
290−sys 0m0.389s
266+sys 0m0.332s
291```
267```
lib/call-cabal-project-to-nix.nix+2−2
@@ -1,5 +1,5 @@
1{ dotCabal, pkgs, runCommand, nix-tools, cabal-install, ghc, hpack, symlinkJoin, cacert, index-state-hashes, haskellLib, materialize }@defaults:
1{ dotCabal, pkgs, runCommand, nix-tools, cabal-install, ghc, hpack, symlinkJoin, cacert, index-state-hashes, haskellLib, materialize }@defaults:
2−{ name ? src.name or (baseNameOf src) # optional name for better error messages
2+{ name ? src.name or null # optional name for better error messages
3, src
3, src
4, index-state ? null # Hackage index-state, eg. "2019-10-10T00:00:00Z"
4, index-state ? null # Hackage index-state, eg. "2019-10-10T00:00:00Z"
5, index-sha256 ? null # The hash of the truncated hackage index-state
5, index-sha256 ? null # The hash of the truncated hackage index-state
@@ -241,7 +241,7 @@ let
241 chmod +w -R $out/.source-repository-packages
241 chmod +w -R $out/.source-repository-packages
242 rm -rf $out/.source-repository-packages
242 rm -rf $out/.source-repository-packages
243 fi
243 fi
244− find $out -type f ! -name '*.nix' -delete
244+ find $out \( -type f -or -type l \) ! -name '*.nix' -delete
245 # Remove empty dirs
245 # Remove empty dirs
246 find $out -type d -empty -delete
246 find $out -type d -empty -delete
247
247
lib/call-stack-to-nix.nix+6−2
@@ -6,7 +6,11 @@
6 * see also `call-cabal-project-to-nix`!
6 * see also `call-cabal-project-to-nix`!
7 */
7 */
8{ runCommand, nix-tools, pkgs, mkCacheFile, materialize }:
8{ runCommand, nix-tools, pkgs, mkCacheFile, materialize }:
9+{ name ? src.name or null # optional name for better error messages
10+, src
11+, stackYaml ? null
9−{ src, stackYaml ? null, ignorePackageYaml ? false, cache ? null
12+, ignorePackageYaml ? false
13+, cache ? null
10, stack-sha256 ? null
14, stack-sha256 ? null
11, materialized ? null # Location of a materialized copy of the nix files
15, materialized ? null # Location of a materialized copy of the nix files
12, checkMaterialization ? null # If true the nix files will be generated used to check plan-sha256 and material
16, checkMaterialization ? null # If true the nix files will be generated used to check plan-sha256 and material
@@ -25,7 +29,7 @@ let
25 reasonNotSafe = null;
29 reasonNotSafe = null;
26 } // pkgs.lib.optionalAttrs (checkMaterialization != null) {
30 } // pkgs.lib.optionalAttrs (checkMaterialization != null) {
27 inherit checkMaterialization;
31 inherit checkMaterialization;
28− }) (runCommand "stack-to-nix-pkgs" {
32+ }) (runCommand (if name == null then "stack-to-nix-pkgs" else name + "-stack-to-nix-pkgs") {
29 nativeBuildInputs = [ nix-tools pkgs.nix-prefetch-git pkgs.cacert ];
33 nativeBuildInputs = [ nix-tools pkgs.nix-prefetch-git pkgs.cacert ];
30 # Needed or stack-to-nix will die on unicode inputs
34 # Needed or stack-to-nix will die on unicode inputs
31 LOCALE_ARCHIVE = pkgs.lib.optionalString (pkgs.stdenv.hostPlatform.libc == "glibc") "${pkgs.glibcLocales}/lib/locale/locale-archive";
35 LOCALE_ARCHIVE = pkgs.lib.optionalString (pkgs.stdenv.hostPlatform.libc == "glibc") "${pkgs.glibcLocales}/lib/locale/locale-archive";
lib/clean-source-with.nix+1−1
@@ -94,7 +94,7 @@
94 # * A default name that gives a hint as to why there is no name.
94 # * A default name that gives a hint as to why there is no name.
95 __trace (
95 __trace (
96 "WARNING: `${caller}` called on ${toString src} without a `name`. "
96 "WARNING: `${caller}` called on ${toString src} without a `name`. "
97− + "Consider adding `name = \"${baseNameOf src};\"`") "source";
97+ + "Consider adding `name = \"${baseNameOf src}\";`") "source";
98 in {
98 in {
99 inherit origSrc origSubDir origSrcSubDir;
99 inherit origSrc origSubDir origSrcSubDir;
100 filter = filter';
100 filter = filter';
lib/materialize.nix+74−27
@@ -1,9 +1,21 @@
1{ pkgs, nix, runCommand, checkMaterialization }@defaults:
1{ pkgs, nix, runCommand, checkMaterialization }@defaults:
2{ sha256
2{ sha256
3−, sha256Arg
3+, sha256Arg # Name of the sha256 argument for more meaningful
4−, materialized
4+ # error messages when checking the materialization.
5+, materialized # null or path where to find materialized version of
6+ # the output. If this is set but does not exist
7+ # the derivation will fail but with a message
8+ # advising how to populate it.
5−, reasonNotSafe
9+, reasonNotSafe # Some times there a reasont the derivation will
10+ # not produce output that can be safely materialized.
11+ # Set this to a string explaining why and materialization
12+ # will not be used (if sha256 was set an error will be
13+ # displayed including the reasonNotSafe string).
6, checkMaterialization ? defaults.checkMaterialization
14, checkMaterialization ? defaults.checkMaterialization
15+ # When checkMaterialization is set the derivation
16+ # will be calculated the slow way (without using `sha256`
17+ # and `materialized`) the result will be used to check
18+ # `sha256` and `materialized` (if set).
7}: derivation:
19}: derivation:
8
20
9let
21let
@@ -45,31 +57,52 @@ let
45 # Build fully and check the hash and materialized versions
57 # Build fully and check the hash and materialized versions
46 checked = runCommand name {
58 checked = runCommand name {
47 buildInputs = [ nix ];
59 buildInputs = [ nix ];
48− } (
60+ } (''
61+ ERR=$(mktemp -d)/errors.txt
62+ ''
49− (pkgs.lib.optionalString (sha256 != null) ''
63+ + (pkgs.lib.optionalString (sha256 != null) ''
50 NEW_HASH=$(nix-hash --base32 --type sha256 ${calculateNoHash})
64 NEW_HASH=$(nix-hash --base32 --type sha256 ${calculateNoHash})
51 if [ "${sha256}" != "$NEW_HASH" ]; then
65 if [ "${sha256}" != "$NEW_HASH" ]; then
52 echo Changes to ${name} not reflected in ${sha256Arg}
66 echo Changes to ${name} not reflected in ${sha256Arg}
53 diff -ru ${calculateUseHash} ${calculateNoHash} || true
67 diff -ru ${calculateUseHash} ${calculateNoHash} || true
54− echo Calculated hash is $NEW_HASH expected hash was ${sha256} for ${name}
68+ echo "Calculated hash for ${name} was not ${sha256}. New hash is :" >> $ERR
55− false
69+ echo " ${sha256Arg} = \"$NEW_HASH\";" >> $ERR
56 else
70 else
57 echo ${sha256Arg} used for ${name} is correct
71 echo ${sha256Arg} used for ${name} is correct
58 fi
72 fi
59 '')
73 '')
60− + (pkgs.lib.optionalString (materialized != null) ''
74+ + (
61− if diff -qr ${materialized} ${calculateNoHash} &>/dev/null; then
75+ if materialized != null && !__pathExists materialized
76+ then ''
62− echo materialized nix used for ${name} is correct
77+ echo "Materialized nix used for ${name} is missing. To fix run :" >> $ERR
78+ echo " cp -r ${calculateNoHash} ${toString materialized}" >> $ERR
79+ echo " chmod -R +w ${toString materialized}" >> $ERR
80+ cat $ERR
81+ false
82+ ''
63 else
83 else
84+ (pkgs.lib.optionalString (materialized != null && __pathExists materialized) ''
85+ if diff -qr ${materialized} ${calculateNoHash} &>/dev/null; then
86+ echo materialized nix used for ${name} is correct
87+ else
64− echo Changes to plan not reflected in materialized nix for ${name}
88+ echo Changes to plan not reflected in materialized nix for ${name}
65− diff -ru ${materialized} ${calculateNoHash}
89+ diff -ru ${materialized} ${calculateNoHash} || true
90+ echo "Materialized nix used for ${name} incorrect. To fix run :" >> $ERR
91+ echo " rm -rf ${toString materialized}" >> $ERR
92+ echo " cp -r ${calculateNoHash} ${toString materialized}" >> $ERR
93+ echo " chmod -R +w ${toString materialized}" >> $ERR
66− fi
94+ fi
67− '')
95+ '')
68− + ''
96+ + ''
97+ if [ -e $ERR ]; then
98+ cat $ERR
99+ false
100+ else
69− cp -r ${unchecked} $out
101+ cp -r ${unchecked} $out
70− # Make sure output files can be removed from the sandbox
102+ # Make sure output files can be removed from the sandbox
71− chmod -R +w $out
103+ chmod -R +w $out
104+ fi
72− ''
105+ '')
73 );
106 );
74
107
75 hashArgs = {
108 hashArgs = {
@@ -78,18 +111,32 @@ let
78 outputHash = sha256;
111 outputHash = sha256;
79 };
112 };
80 calculateNoHash = derivation;
113 calculateNoHash = derivation;
81− calculateUseHash = derivation.overrideAttrs (_: hashArgs);
114+ calculateUseHash =
115+ # Use `cp -r` here to get rid of symlinks so we know the result
116+ # can be safely materialized (no symlinks to the store).
117+ runCommand name hashArgs ''
118+ cp -r ${derivation} $out
119+ # Make sure output files can be removed from the sandbox
120+ chmod -R +w $out
121+ '';
82 calculateUseAll =
122 calculateUseAll =
83 # Skip right to expectedPath if it already exists
123 # Skip right to expectedPath if it already exists
84− if materialized != null && builtins.pathExists materialized
124+ if materialized != null
125+ then
126+ assert __pathExists materialized;
85− then runCommand name hashArgs ''
127+ runCommand name hashArgs ''
86− cp -r ${materialized} $out
128+ cp -r ${materialized} $out
87− # Make sure output files can be removed from the sandbox
129+ # Make sure output files can be removed from the sandbox
88− chmod -R +w $out
130+ chmod -R +w $out
89− ''
131+ ''
90 else calculateUseHash;
132 else calculateUseHash;
91
133
134+ # Materialized location was specified, but the files are not there.
135+ missingMaterialized = materialized != null && !__pathExists materialized;
136+
92in
137in
138+ # Use the checked version if requested or if the `materialized` version
139+ # is missing (perhaps deleted or not created yet).
93− if checkMaterialization
140+ if checkMaterialization || missingMaterialized
94 then checked
141 then checked
95 else unchecked
142 else unchecked
materialized/ghc-boot-packages-nix/ghc865/base.nixnew file+73
@@ -0,0 +1,73 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; integer-gmp = false; };
43+ package = {
44+ specVersion = "2.1";
45+ identifier = { name = "base"; version = "4.12.0.0"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "libraries@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Basic libraries";
53+ description = "This package contains the Standard Haskell \"Prelude\" and its support libraries,\nand a large collection of useful libraries ranging from data\nstructures to parsing combinators and debugging utilities.";
54+ buildType = "Configure";
55+ };
56+ components = {
57+ "library" = {
58+ depends = (([
59+ (hsPkgs."rts" or (buildDepError "rts"))
60+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
61+ ] ++ (pkgs.lib).optional (!(flags.integer-gmp && !flags.integer-simple || !flags.integer-gmp && flags.integer-simple)) (hsPkgs."invalid-cabal-flag-settings" or (buildDepError "invalid-cabal-flag-settings"))) ++ (pkgs.lib).optional (flags.integer-simple) (hsPkgs."integer-simple" or (buildDepError "integer-simple"))) ++ (pkgs.lib).optional (flags.integer-gmp) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp"));
62+ libs = (pkgs.lib).optionals (system.isWindows) [
63+ (pkgs."wsock32" or (sysDepError "wsock32"))
64+ (pkgs."user32" or (sysDepError "user32"))
65+ (pkgs."shell32" or (sysDepError "shell32"))
66+ (pkgs."msvcrt" or (sysDepError "msvcrt"))
67+ (pkgs."mingw32" or (sysDepError "mingw32"))
68+ (pkgs."mingwex" or (sysDepError "mingwex"))
69+ ];
70+ buildable = true;
71+ };
72+ };
73+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc865/bytestring.nixnew file+111
@@ -0,0 +1,111 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = ([
59+ (hsPkgs."base" or (buildDepError "base"))
60+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
61+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
62+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
63+ buildable = true;
64+ };
65+ tests = {
66+ "prop-compiled" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
70+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
71+ (hsPkgs."random" or (buildDepError "random"))
72+ (hsPkgs."directory" or (buildDepError "directory"))
73+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
74+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
75+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
76+ ];
77+ buildable = true;
78+ };
79+ "regressions" = {
80+ depends = [
81+ (hsPkgs."base" or (buildDepError "base"))
82+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
83+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
84+ (hsPkgs."random" or (buildDepError "random"))
85+ (hsPkgs."directory" or (buildDepError "directory"))
86+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
87+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
88+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
89+ ];
90+ buildable = false;
91+ };
92+ "test-builder" = {
93+ depends = [
94+ (hsPkgs."base" or (buildDepError "base"))
95+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
96+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
97+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
98+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
99+ (hsPkgs."dlist" or (buildDepError "dlist"))
100+ (hsPkgs."directory" or (buildDepError "directory"))
101+ (hsPkgs."mtl" or (buildDepError "mtl"))
102+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
103+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
104+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
105+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
106+ ];
107+ buildable = true;
108+ };
109+ };
110+ };
111+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc865/ghc-boot.nixnew file+69
@@ -0,0 +1,69 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = [
59+ (hsPkgs."base" or (buildDepError "base"))
60+ (hsPkgs."binary" or (buildDepError "binary"))
61+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
62+ (hsPkgs."directory" or (buildDepError "directory"))
63+ (hsPkgs."filepath" or (buildDepError "filepath"))
64+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
65+ ];
66+ buildable = true;
67+ };
68+ };
69+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc865/ghc-heap.nixnew file+66
@@ -0,0 +1,66 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "2.1";
45+ identifier = { name = "ghc-heap"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "libraries@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Functions for walking GHC's heap";
53+ description = "This package provides functions for walking the GHC heap data structures\nand retrieving information about those data structures.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = [
59+ (hsPkgs."base" or (buildDepError "base"))
60+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
61+ (hsPkgs."rts" or (buildDepError "rts"))
62+ ];
63+ buildable = true;
64+ };
65+ };
66+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc865/ghc.nixnew file+94
@@ -0,0 +1,94 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ terminfo = true;
45+ stage1 = false;
46+ stage2 = true;
47+ stage3 = false;
48+ };
49+ package = {
50+ specVersion = "1.10";
51+ identifier = { name = "ghc"; version = "8.6.5"; };
52+ license = "BSD-3-Clause";
53+ copyright = "";
54+ maintainer = "glasgow-haskell-users@haskell.org";
55+ author = "The GHC Team";
56+ homepage = "http://www.haskell.org/ghc/";
57+ url = "";
58+ synopsis = "The GHC API";
59+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
60+ buildType = "Simple";
61+ };
62+ components = {
63+ "library" = {
64+ depends = [
65+ (hsPkgs."base" or (buildDepError "base"))
66+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
67+ (hsPkgs."directory" or (buildDepError "directory"))
68+ (hsPkgs."process" or (buildDepError "process"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."time" or (buildDepError "time"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."array" or (buildDepError "array"))
74+ (hsPkgs."filepath" or (buildDepError "filepath"))
75+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
76+ (hsPkgs."hpc" or (buildDepError "hpc"))
77+ (hsPkgs."transformers" or (buildDepError "transformers"))
78+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
79+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
80+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
81+ (hsPkgs."ghci" or (buildDepError "ghci"))
82+ ] ++ (if system.isWindows
83+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
84+ else [
85+ (hsPkgs."unix" or (buildDepError "unix"))
86+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")));
87+ build-tools = [
88+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
89+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
90+ ];
91+ buildable = true;
92+ };
93+ };
94+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc865/ghci.nixnew file+75
@@ -0,0 +1,75 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = [
59+ (hsPkgs."array" or (buildDepError "array"))
60+ (hsPkgs."base" or (buildDepError "base"))
61+ (hsPkgs."binary" or (buildDepError "binary"))
62+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
63+ (hsPkgs."containers" or (buildDepError "containers"))
64+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
65+ (hsPkgs."filepath" or (buildDepError "filepath"))
66+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
67+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
68+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
69+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
70+ (hsPkgs."transformers" or (buildDepError "transformers"))
71+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
72+ buildable = true;
73+ };
74+ };
75+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc865/iserv-proxy.nixnew file+76
@@ -0,0 +1,76 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ exes = {
58+ "iserv-proxy" = {
59+ depends = [
60+ (hsPkgs."array" or (buildDepError "array"))
61+ (hsPkgs."base" or (buildDepError "base"))
62+ (hsPkgs."binary" or (buildDepError "binary"))
63+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
64+ (hsPkgs."containers" or (buildDepError "containers"))
65+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
66+ (hsPkgs."directory" or (buildDepError "directory"))
67+ (hsPkgs."network" or (buildDepError "network"))
68+ (hsPkgs."filepath" or (buildDepError "filepath"))
69+ (hsPkgs."ghci" or (buildDepError "ghci"))
70+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
71+ ];
72+ buildable = true;
73+ };
74+ };
75+ };
76+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc865/iserv.nixnew file+73
@@ -0,0 +1,73 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ exes = {
58+ "iserv" = {
59+ depends = [
60+ (hsPkgs."array" or (buildDepError "array"))
61+ (hsPkgs."base" or (buildDepError "base"))
62+ (hsPkgs."binary" or (buildDepError "binary"))
63+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
64+ (hsPkgs."containers" or (buildDepError "containers"))
65+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
66+ (hsPkgs."ghci" or (buildDepError "ghci"))
67+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
68+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
69+ buildable = true;
70+ };
71+ };
72+ };
73+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc865/libiserv.nixnew file+73
@@ -0,0 +1,73 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = ([
59+ (hsPkgs."base" or (buildDepError "base"))
60+ (hsPkgs."binary" or (buildDepError "binary"))
61+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
62+ (hsPkgs."containers" or (buildDepError "containers"))
63+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
64+ (hsPkgs."ghci" or (buildDepError "ghci"))
65+ ] ++ (pkgs.lib).optionals (flags.network) [
66+ (hsPkgs."network" or (buildDepError "network"))
67+ (hsPkgs."directory" or (buildDepError "directory"))
68+ (hsPkgs."filepath" or (buildDepError "filepath"))
69+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
70+ buildable = true;
71+ };
72+ };
73+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc865/remote-iserv.nixnew file+67
@@ -0,0 +1,67 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ exes = {
58+ "remote-iserv" = {
59+ depends = [
60+ (hsPkgs."base" or (buildDepError "base"))
61+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
62+ ];
63+ buildable = true;
64+ };
65+ };
66+ };
67+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc882/bytestring.nixnew file+111
@@ -0,0 +1,111 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.10.0"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = ([
59+ (hsPkgs."base" or (buildDepError "base"))
60+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
61+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
62+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
63+ buildable = true;
64+ };
65+ tests = {
66+ "prop-compiled" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
70+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
71+ (hsPkgs."random" or (buildDepError "random"))
72+ (hsPkgs."directory" or (buildDepError "directory"))
73+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
74+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
75+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
76+ ];
77+ buildable = true;
78+ };
79+ "regressions" = {
80+ depends = [
81+ (hsPkgs."base" or (buildDepError "base"))
82+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
83+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
84+ (hsPkgs."random" or (buildDepError "random"))
85+ (hsPkgs."directory" or (buildDepError "directory"))
86+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
87+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
88+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
89+ ];
90+ buildable = false;
91+ };
92+ "test-builder" = {
93+ depends = [
94+ (hsPkgs."base" or (buildDepError "base"))
95+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
96+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
97+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
98+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
99+ (hsPkgs."dlist" or (buildDepError "dlist"))
100+ (hsPkgs."directory" or (buildDepError "directory"))
101+ (hsPkgs."mtl" or (buildDepError "mtl"))
102+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
103+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
104+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
105+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
106+ ];
107+ buildable = true;
108+ };
109+ };
110+ };
111+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc882/ghc-boot.nixnew file+69
@@ -0,0 +1,69 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = [
59+ (hsPkgs."base" or (buildDepError "base"))
60+ (hsPkgs."binary" or (buildDepError "binary"))
61+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
62+ (hsPkgs."directory" or (buildDepError "directory"))
63+ (hsPkgs."filepath" or (buildDepError "filepath"))
64+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
65+ ];
66+ buildable = true;
67+ };
68+ };
69+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc882/ghc.nixnew file+96
@@ -0,0 +1,96 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ stage1 = false;
45+ stage2 = true;
46+ stage3 = false;
47+ terminfo = true;
48+ integer-simple = false;
49+ integer-gmp = false;
50+ };
51+ package = {
52+ specVersion = "1.10";
53+ identifier = { name = "ghc"; version = "8.8.2"; };
54+ license = "BSD-3-Clause";
55+ copyright = "";
56+ maintainer = "glasgow-haskell-users@haskell.org";
57+ author = "The GHC Team";
58+ homepage = "http://www.haskell.org/ghc/";
59+ url = "";
60+ synopsis = "The GHC API";
61+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
62+ buildType = "Simple";
63+ };
64+ components = {
65+ "library" = {
66+ depends = ((([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
69+ (hsPkgs."directory" or (buildDepError "directory"))
70+ (hsPkgs."process" or (buildDepError "process"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."binary" or (buildDepError "binary"))
73+ (hsPkgs."time" or (buildDepError "time"))
74+ (hsPkgs."containers" or (buildDepError "containers"))
75+ (hsPkgs."array" or (buildDepError "array"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
78+ (hsPkgs."hpc" or (buildDepError "hpc"))
79+ (hsPkgs."transformers" or (buildDepError "transformers"))
80+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
81+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
82+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
83+ (hsPkgs."ghci" or (buildDepError "ghci"))
84+ ] ++ (if system.isWindows
85+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
86+ else [
87+ (hsPkgs."unix" or (buildDepError "unix"))
88+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")))) ++ (pkgs.lib).optional (flags.integer-gmp && flags.integer-simple) (hsPkgs."invalid-cabal-flag-settings" or (buildDepError "invalid-cabal-flag-settings"))) ++ (pkgs.lib).optional (flags.integer-gmp) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp"))) ++ (pkgs.lib).optional (flags.integer-simple) (hsPkgs."integer-simple" or (buildDepError "integer-simple"));
89+ build-tools = [
90+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
91+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
92+ ];
93+ buildable = true;
94+ };
95+ };
96+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc882/ghci.nixnew file+75
@@ -0,0 +1,75 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = [
59+ (hsPkgs."array" or (buildDepError "array"))
60+ (hsPkgs."base" or (buildDepError "base"))
61+ (hsPkgs."binary" or (buildDepError "binary"))
62+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
63+ (hsPkgs."containers" or (buildDepError "containers"))
64+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
65+ (hsPkgs."filepath" or (buildDepError "filepath"))
66+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
67+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
68+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
69+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
70+ (hsPkgs."transformers" or (buildDepError "transformers"))
71+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
72+ buildable = true;
73+ };
74+ };
75+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc882/iserv-proxy.nixnew file+76
@@ -0,0 +1,76 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ exes = {
58+ "iserv-proxy" = {
59+ depends = [
60+ (hsPkgs."array" or (buildDepError "array"))
61+ (hsPkgs."base" or (buildDepError "base"))
62+ (hsPkgs."binary" or (buildDepError "binary"))
63+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
64+ (hsPkgs."containers" or (buildDepError "containers"))
65+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
66+ (hsPkgs."directory" or (buildDepError "directory"))
67+ (hsPkgs."network" or (buildDepError "network"))
68+ (hsPkgs."filepath" or (buildDepError "filepath"))
69+ (hsPkgs."ghci" or (buildDepError "ghci"))
70+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
71+ ];
72+ buildable = true;
73+ };
74+ };
75+ };
76+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc882/iserv.nixnew file+73
@@ -0,0 +1,73 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Template Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ exes = {
58+ "iserv" = {
59+ depends = [
60+ (hsPkgs."array" or (buildDepError "array"))
61+ (hsPkgs."base" or (buildDepError "base"))
62+ (hsPkgs."binary" or (buildDepError "binary"))
63+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
64+ (hsPkgs."containers" or (buildDepError "containers"))
65+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
66+ (hsPkgs."ghci" or (buildDepError "ghci"))
67+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
68+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
69+ buildable = true;
70+ };
71+ };
72+ };
73+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc882/libiserv.nixnew file+73
@@ -0,0 +1,73 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = ([
59+ (hsPkgs."base" or (buildDepError "base"))
60+ (hsPkgs."binary" or (buildDepError "binary"))
61+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
62+ (hsPkgs."containers" or (buildDepError "containers"))
63+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
64+ (hsPkgs."ghci" or (buildDepError "ghci"))
65+ ] ++ (pkgs.lib).optionals (flags.network) [
66+ (hsPkgs."network" or (buildDepError "network"))
67+ (hsPkgs."directory" or (buildDepError "directory"))
68+ (hsPkgs."filepath" or (buildDepError "filepath"))
69+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
70+ buildable = true;
71+ };
72+ };
73+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc882/remote-iserv.nixnew file+67
@@ -0,0 +1,67 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ exes = {
58+ "remote-iserv" = {
59+ depends = [
60+ (hsPkgs."base" or (buildDepError "base"))
61+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
62+ ];
63+ buildable = true;
64+ };
65+ };
66+ };
67+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc883/bytestring.nixnew file+111
@@ -0,0 +1,111 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.10.0"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = ([
59+ (hsPkgs."base" or (buildDepError "base"))
60+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
61+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
62+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
63+ buildable = true;
64+ };
65+ tests = {
66+ "prop-compiled" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
70+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
71+ (hsPkgs."random" or (buildDepError "random"))
72+ (hsPkgs."directory" or (buildDepError "directory"))
73+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
74+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
75+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
76+ ];
77+ buildable = true;
78+ };
79+ "regressions" = {
80+ depends = [
81+ (hsPkgs."base" or (buildDepError "base"))
82+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
83+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
84+ (hsPkgs."random" or (buildDepError "random"))
85+ (hsPkgs."directory" or (buildDepError "directory"))
86+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
87+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
88+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
89+ ];
90+ buildable = false;
91+ };
92+ "test-builder" = {
93+ depends = [
94+ (hsPkgs."base" or (buildDepError "base"))
95+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
96+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
97+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
98+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
99+ (hsPkgs."dlist" or (buildDepError "dlist"))
100+ (hsPkgs."directory" or (buildDepError "directory"))
101+ (hsPkgs."mtl" or (buildDepError "mtl"))
102+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
103+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
104+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
105+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
106+ ];
107+ buildable = true;
108+ };
109+ };
110+ };
111+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc883/ghc-boot.nixnew file+69
@@ -0,0 +1,69 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = [
59+ (hsPkgs."base" or (buildDepError "base"))
60+ (hsPkgs."binary" or (buildDepError "binary"))
61+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
62+ (hsPkgs."directory" or (buildDepError "directory"))
63+ (hsPkgs."filepath" or (buildDepError "filepath"))
64+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
65+ ];
66+ buildable = true;
67+ };
68+ };
69+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc883/ghc.nixnew file+96
@@ -0,0 +1,96 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ stage1 = false;
45+ stage2 = true;
46+ stage3 = false;
47+ terminfo = true;
48+ integer-simple = false;
49+ integer-gmp = false;
50+ };
51+ package = {
52+ specVersion = "1.10";
53+ identifier = { name = "ghc"; version = "8.8.3"; };
54+ license = "BSD-3-Clause";
55+ copyright = "";
56+ maintainer = "glasgow-haskell-users@haskell.org";
57+ author = "The GHC Team";
58+ homepage = "http://www.haskell.org/ghc/";
59+ url = "";
60+ synopsis = "The GHC API";
61+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
62+ buildType = "Simple";
63+ };
64+ components = {
65+ "library" = {
66+ depends = ((([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
69+ (hsPkgs."directory" or (buildDepError "directory"))
70+ (hsPkgs."process" or (buildDepError "process"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."binary" or (buildDepError "binary"))
73+ (hsPkgs."time" or (buildDepError "time"))
74+ (hsPkgs."containers" or (buildDepError "containers"))
75+ (hsPkgs."array" or (buildDepError "array"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
78+ (hsPkgs."hpc" or (buildDepError "hpc"))
79+ (hsPkgs."transformers" or (buildDepError "transformers"))
80+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
81+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
82+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
83+ (hsPkgs."ghci" or (buildDepError "ghci"))
84+ ] ++ (if system.isWindows
85+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
86+ else [
87+ (hsPkgs."unix" or (buildDepError "unix"))
88+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")))) ++ (pkgs.lib).optional (flags.integer-gmp && flags.integer-simple) (hsPkgs."invalid-cabal-flag-settings" or (buildDepError "invalid-cabal-flag-settings"))) ++ (pkgs.lib).optional (flags.integer-gmp) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp"))) ++ (pkgs.lib).optional (flags.integer-simple) (hsPkgs."integer-simple" or (buildDepError "integer-simple"));
89+ build-tools = [
90+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
91+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
92+ ];
93+ buildable = true;
94+ };
95+ };
96+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc883/ghci.nixnew file+75
@@ -0,0 +1,75 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = [
59+ (hsPkgs."array" or (buildDepError "array"))
60+ (hsPkgs."base" or (buildDepError "base"))
61+ (hsPkgs."binary" or (buildDepError "binary"))
62+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
63+ (hsPkgs."containers" or (buildDepError "containers"))
64+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
65+ (hsPkgs."filepath" or (buildDepError "filepath"))
66+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
67+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
68+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
69+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
70+ (hsPkgs."transformers" or (buildDepError "transformers"))
71+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
72+ buildable = true;
73+ };
74+ };
75+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc883/iserv-proxy.nixnew file+76
@@ -0,0 +1,76 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ exes = {
58+ "iserv-proxy" = {
59+ depends = [
60+ (hsPkgs."array" or (buildDepError "array"))
61+ (hsPkgs."base" or (buildDepError "base"))
62+ (hsPkgs."binary" or (buildDepError "binary"))
63+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
64+ (hsPkgs."containers" or (buildDepError "containers"))
65+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
66+ (hsPkgs."directory" or (buildDepError "directory"))
67+ (hsPkgs."network" or (buildDepError "network"))
68+ (hsPkgs."filepath" or (buildDepError "filepath"))
69+ (hsPkgs."ghci" or (buildDepError "ghci"))
70+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
71+ ];
72+ buildable = true;
73+ };
74+ };
75+ };
76+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc883/iserv.nixnew file+73
@@ -0,0 +1,73 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Template Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ exes = {
58+ "iserv" = {
59+ depends = [
60+ (hsPkgs."array" or (buildDepError "array"))
61+ (hsPkgs."base" or (buildDepError "base"))
62+ (hsPkgs."binary" or (buildDepError "binary"))
63+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
64+ (hsPkgs."containers" or (buildDepError "containers"))
65+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
66+ (hsPkgs."ghci" or (buildDepError "ghci"))
67+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
68+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
69+ buildable = true;
70+ };
71+ };
72+ };
73+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc883/libiserv.nixnew file+73
@@ -0,0 +1,73 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ "library" = {
58+ depends = ([
59+ (hsPkgs."base" or (buildDepError "base"))
60+ (hsPkgs."binary" or (buildDepError "binary"))
61+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
62+ (hsPkgs."containers" or (buildDepError "containers"))
63+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
64+ (hsPkgs."ghci" or (buildDepError "ghci"))
65+ ] ++ (pkgs.lib).optionals (flags.network) [
66+ (hsPkgs."network" or (buildDepError "network"))
67+ (hsPkgs."directory" or (buildDepError "directory"))
68+ (hsPkgs."filepath" or (buildDepError "filepath"))
69+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
70+ buildable = true;
71+ };
72+ };
73+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-boot-packages-nix/ghc883/remote-iserv.nixnew file+67
@@ -0,0 +1,67 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ };
56+ components = {
57+ exes = {
58+ "remote-iserv" = {
59+ depends = [
60+ (hsPkgs."base" or (buildDepError "base"))
61+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
62+ ];
63+ buildable = true;
64+ };
65+ };
66+ };
67+ } // rec { src = (pkgs.lib).mkDefault ./.; }
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/bytestring.nixnew file+167
@@ -0,0 +1,167 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "README.md" "Changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
69+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
70+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
71+ buildable = true;
72+ modules = [
73+ "Data/ByteString/Builder/ASCII"
74+ "Data/ByteString/Builder/Prim/Binary"
75+ "Data/ByteString/Builder/Prim/ASCII"
76+ "Data/ByteString/Builder/Prim/Internal/Floating"
77+ "Data/ByteString/Builder/Prim/Internal/UncheckedShifts"
78+ "Data/ByteString/Builder/Prim/Internal/Base16"
79+ "Data/ByteString"
80+ "Data/ByteString/Char8"
81+ "Data/ByteString/Unsafe"
82+ "Data/ByteString/Internal"
83+ "Data/ByteString/Lazy"
84+ "Data/ByteString/Lazy/Char8"
85+ "Data/ByteString/Lazy/Internal"
86+ "Data/ByteString/Short"
87+ "Data/ByteString/Short/Internal"
88+ "Data/ByteString/Builder"
89+ "Data/ByteString/Builder/Extra"
90+ "Data/ByteString/Builder/Prim"
91+ "Data/ByteString/Builder/Internal"
92+ "Data/ByteString/Builder/Prim/Internal"
93+ "Data/ByteString/Lazy/Builder"
94+ "Data/ByteString/Lazy/Builder/Extras"
95+ "Data/ByteString/Lazy/Builder/ASCII"
96+ ];
97+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
98+ includeDirs = [ "include" ];
99+ includes = [ "fpstring.h" ];
100+ };
101+ tests = {
102+ "prop-compiled" = {
103+ depends = [
104+ (hsPkgs."base" or (buildDepError "base"))
105+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
106+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
107+ (hsPkgs."random" or (buildDepError "random"))
108+ (hsPkgs."directory" or (buildDepError "directory"))
109+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
110+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
111+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
112+ ];
113+ buildable = true;
114+ modules = [ "Rules" "QuickCheckUtils" "TestFramework" ];
115+ cSources = [ "cbits/fpstring.c" ];
116+ hsSourceDirs = [ "." "tests" ];
117+ includeDirs = [ "include" ];
118+ mainPath = [ "Properties.hs" ];
119+ };
120+ "regressions" = {
121+ depends = [
122+ (hsPkgs."base" or (buildDepError "base"))
123+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
124+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
125+ (hsPkgs."random" or (buildDepError "random"))
126+ (hsPkgs."directory" or (buildDepError "directory"))
127+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
128+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
129+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
130+ ];
131+ buildable = false;
132+ cSources = [ "cbits/fpstring.c" ];
133+ hsSourceDirs = [ "." "tests" ];
134+ includeDirs = [ "include" ];
135+ mainPath = [ "Regressions.hs" ];
136+ };
137+ "test-builder" = {
138+ depends = [
139+ (hsPkgs."base" or (buildDepError "base"))
140+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
141+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
142+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
143+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
144+ (hsPkgs."dlist" or (buildDepError "dlist"))
145+ (hsPkgs."directory" or (buildDepError "directory"))
146+ (hsPkgs."mtl" or (buildDepError "mtl"))
147+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
148+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
149+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
150+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
151+ ];
152+ buildable = true;
153+ modules = [
154+ "Data/ByteString/Builder/Tests"
155+ "Data/ByteString/Builder/Prim/Tests"
156+ "Data/ByteString/Builder/Prim/TestUtils"
157+ "TestFramework"
158+ ];
159+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
160+ hsSourceDirs = [ "." "tests" "tests/builder" ];
161+ includeDirs = [ "include" ];
162+ includes = [ "fpstring.h" ];
163+ mainPath = [ "TestSuite.hs" ];
164+ };
165+ };
166+ };
167+ } // rec { src = (pkgs.lib).mkDefault ../libraries/bytestring; }
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/ghc-boot.nixnew file+84
@@ -0,0 +1,84 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."directory" or (buildDepError "directory"))
71+ (hsPkgs."filepath" or (buildDepError "filepath"))
72+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
73+ ];
74+ buildable = true;
75+ modules = [
76+ "GHC/LanguageExtensions"
77+ "GHC/PackageDb"
78+ "GHC/Serialized"
79+ "GHC/ForeignSrcLang"
80+ "GHC/HandleEncoding"
81+ ];
82+ };
83+ };
84+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghc-boot; }
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/ghc.nixnew file+590
@@ -0,0 +1,590 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ terminfo = true;
45+ stage1 = false;
46+ stage2 = true;
47+ stage3 = false;
48+ };
49+ package = {
50+ specVersion = "1.10";
51+ identifier = { name = "ghc"; version = "8.6.5"; };
52+ license = "BSD-3-Clause";
53+ copyright = "";
54+ maintainer = "glasgow-haskell-users@haskell.org";
55+ author = "The GHC Team";
56+ homepage = "http://www.haskell.org/ghc/";
57+ url = "";
58+ synopsis = "The GHC API";
59+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
60+ buildType = "Simple";
61+ isLocal = true;
62+ detailLevel = "FullDetails";
63+ licenseFiles = [ "LICENSE" ];
64+ dataDir = "";
65+ dataFiles = [];
66+ extraSrcFiles = [
67+ "utils/md5.h"
68+ "Unique.h"
69+ "nativeGen/NCG.h"
70+ "parser/cutils.h"
71+ ];
72+ extraTmpFiles = [];
73+ extraDocFiles = [];
74+ };
75+ components = {
76+ "library" = {
77+ depends = [
78+ (hsPkgs."base" or (buildDepError "base"))
79+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
80+ (hsPkgs."directory" or (buildDepError "directory"))
81+ (hsPkgs."process" or (buildDepError "process"))
82+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
83+ (hsPkgs."binary" or (buildDepError "binary"))
84+ (hsPkgs."time" or (buildDepError "time"))
85+ (hsPkgs."containers" or (buildDepError "containers"))
86+ (hsPkgs."array" or (buildDepError "array"))
87+ (hsPkgs."filepath" or (buildDepError "filepath"))
88+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
89+ (hsPkgs."hpc" or (buildDepError "hpc"))
90+ (hsPkgs."transformers" or (buildDepError "transformers"))
91+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
92+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
93+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
94+ (hsPkgs."ghci" or (buildDepError "ghci"))
95+ ] ++ (if system.isWindows
96+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
97+ else [
98+ (hsPkgs."unix" or (buildDepError "unix"))
99+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")));
100+ build-tools = [
101+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
102+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
103+ ];
104+ buildable = true;
105+ modules = [
106+ "GhcPrelude"
107+ "Ar"
108+ "FileCleanup"
109+ "DriverBkp"
110+ "BkpSyn"
111+ "NameShape"
112+ "RnModIface"
113+ "Avail"
114+ "AsmUtils"
115+ "BasicTypes"
116+ "ConLike"
117+ "DataCon"
118+ "PatSyn"
119+ "Demand"
120+ "Debug"
121+ "Exception"
122+ "FieldLabel"
123+ "GhcMonad"
124+ "Hooks"
125+ "Id"
126+ "IdInfo"
127+ "Lexeme"
128+ "Literal"
129+ "Llvm"
130+ "Llvm/AbsSyn"
131+ "Llvm/MetaData"
132+ "Llvm/PpLlvm"
133+ "Llvm/Types"
134+ "LlvmCodeGen"
135+ "LlvmCodeGen/Base"
136+ "LlvmCodeGen/CodeGen"
137+ "LlvmCodeGen/Data"
138+ "LlvmCodeGen/Ppr"
139+ "LlvmCodeGen/Regs"
140+ "LlvmMangler"
141+ "MkId"
142+ "Module"
143+ "Name"
144+ "NameEnv"
145+ "NameSet"
146+ "OccName"
147+ "RdrName"
148+ "NameCache"
149+ "SrcLoc"
150+ "UniqSupply"
151+ "Unique"
152+ "Var"
153+ "VarEnv"
154+ "VarSet"
155+ "UnVarGraph"
156+ "BlockId"
157+ "CLabel"
158+ "Cmm"
159+ "CmmBuildInfoTables"
160+ "CmmPipeline"
161+ "CmmCallConv"
162+ "CmmCommonBlockElim"
163+ "CmmImplementSwitchPlans"
164+ "CmmContFlowOpt"
165+ "CmmExpr"
166+ "CmmInfo"
167+ "CmmLex"
168+ "CmmLint"
169+ "CmmLive"
170+ "CmmMachOp"
171+ "CmmMonad"
172+ "CmmSwitch"
173+ "CmmNode"
174+ "CmmOpt"
175+ "CmmParse"
176+ "CmmProcPoint"
177+ "CmmSink"
178+ "CmmType"
179+ "CmmUtils"
180+ "CmmLayoutStack"
181+ "EnumSet"
182+ "MkGraph"
183+ "PprBase"
184+ "PprC"
185+ "PprCmm"
186+ "PprCmmDecl"
187+ "PprCmmExpr"
188+ "Bitmap"
189+ "CodeGen/Platform"
190+ "CodeGen/Platform/ARM"
191+ "CodeGen/Platform/ARM64"
192+ "CodeGen/Platform/NoRegs"
193+ "CodeGen/Platform/PPC"
194+ "CodeGen/Platform/PPC_Darwin"
195+ "CodeGen/Platform/SPARC"
196+ "CodeGen/Platform/X86"
197+ "CodeGen/Platform/X86_64"
198+ "CgUtils"
199+ "StgCmm"
200+ "StgCmmBind"
201+ "StgCmmClosure"
202+ "StgCmmCon"
203+ "StgCmmEnv"
204+ "StgCmmExpr"
205+ "StgCmmForeign"
206+ "StgCmmHeap"
207+ "StgCmmHpc"
208+ "StgCmmArgRep"
209+ "StgCmmLayout"
210+ "StgCmmMonad"
211+ "StgCmmPrim"
212+ "StgCmmProf"
213+ "StgCmmTicky"
214+ "StgCmmUtils"
215+ "StgCmmExtCode"
216+ "SMRep"
217+ "CoreArity"
218+ "CoreFVs"
219+ "CoreLint"
220+ "CorePrep"
221+ "CoreSubst"
222+ "CoreOpt"
223+ "CoreSyn"
224+ "TrieMap"
225+ "CoreTidy"
226+ "CoreUnfold"
227+ "CoreUtils"
228+ "CoreMap"
229+ "CoreSeq"
230+ "CoreStats"
231+ "MkCore"
232+ "PprCore"
233+ "PmExpr"
234+ "TmOracle"
235+ "Check"
236+ "Coverage"
237+ "Desugar"
238+ "DsArrows"
239+ "DsBinds"
240+ "DsCCall"
241+ "DsExpr"
242+ "DsForeign"
243+ "DsGRHSs"
244+ "DsListComp"
245+ "DsMonad"
246+ "DsUsage"
247+ "DsUtils"
248+ "ExtractDocs"
249+ "Match"
250+ "MatchCon"
251+ "MatchLit"
252+ "HsBinds"
253+ "HsDecls"
254+ "HsDoc"
255+ "HsExpr"
256+ "HsImpExp"
257+ "HsLit"
258+ "PlaceHolder"
259+ "HsExtension"
260+ "HsInstances"
261+ "HsPat"
262+ "HsSyn"
263+ "HsTypes"
264+ "HsUtils"
265+ "HsDumpAst"
266+ "BinIface"
267+ "BinFingerprint"
268+ "BuildTyCl"
269+ "IfaceEnv"
270+ "IfaceSyn"
271+ "IfaceType"
272+ "ToIface"
273+ "LoadIface"
274+ "MkIface"
275+ "TcIface"
276+ "FlagChecker"
277+ "Annotations"
278+ "CmdLineParser"
279+ "CodeOutput"
280+ "Config"
281+ "Constants"
282+ "DriverMkDepend"
283+ "DriverPhases"
284+ "PipelineMonad"
285+ "DriverPipeline"
286+ "DynFlags"
287+ "ErrUtils"
288+ "Finder"
289+ "GHC"
290+ "GhcMake"
291+ "GhcPlugins"
292+ "DynamicLoading"
293+ "HeaderInfo"
294+ "HscMain"
295+ "HscStats"
296+ "HscTypes"
297+ "InteractiveEval"
298+ "InteractiveEvalTypes"
299+ "PackageConfig"
300+ "Packages"
301+ "PlatformConstants"
302+ "Plugins"
303+ "TcPluginM"
304+ "PprTyThing"
305+ "StaticPtrTable"
306+ "SysTools"
307+ "SysTools/BaseDir"
308+ "SysTools/Terminal"
309+ "SysTools/ExtraObj"
310+ "SysTools/Info"
311+ "SysTools/Process"
312+ "SysTools/Tasks"
313+ "Elf"
314+ "TidyPgm"
315+ "Ctype"
316+ "HaddockUtils"
317+ "Lexer"
318+ "OptCoercion"
319+ "Parser"
320+ "RdrHsSyn"
321+ "ApiAnnotation"
322+ "ForeignCall"
323+ "KnownUniques"
324+ "PrelInfo"
325+ "PrelNames"
326+ "PrelRules"
327+ "PrimOp"
328+ "TysPrim"
329+ "TysWiredIn"
330+ "CostCentre"
331+ "CostCentreState"
332+ "ProfInit"
333+ "RnBinds"
334+ "RnEnv"
335+ "RnExpr"
336+ "RnHsDoc"
337+ "RnNames"
338+ "RnPat"
339+ "RnSource"
340+ "RnSplice"
341+ "RnTypes"
342+ "RnFixity"
343+ "RnUtils"
344+ "RnUnbound"
345+ "CoreMonad"
346+ "CSE"
347+ "FloatIn"
348+ "FloatOut"
349+ "LiberateCase"
350+ "OccurAnal"
351+ "SAT"
352+ "SetLevels"
353+ "SimplCore"
354+ "SimplEnv"
355+ "SimplMonad"
356+ "SimplUtils"
357+ "Simplify"
358+ "SimplStg"
359+ "StgStats"
360+ "StgCse"
361+ "UnariseStg"
362+ "RepType"
363+ "Rules"
364+ "SpecConstr"
365+ "Specialise"
366+ "CoreToStg"
367+ "StgLint"
368+ "StgSyn"
369+ "CallArity"
370+ "DmdAnal"
371+ "Exitify"
372+ "WorkWrap"
373+ "WwLib"
374+ "FamInst"
375+ "Inst"
376+ "TcAnnotations"
377+ "TcArrows"
378+ "TcBinds"
379+ "TcSigs"
380+ "TcClassDcl"
381+ "TcDefaults"
382+ "TcDeriv"
383+ "TcDerivInfer"
384+ "TcDerivUtils"
385+ "TcEnv"
386+ "TcExpr"
387+ "TcForeign"
388+ "TcGenDeriv"
389+ "TcGenFunctor"
390+ "TcGenGenerics"
391+ "TcHsSyn"
392+ "TcHsType"
393+ "TcInstDcls"
394+ "TcMType"
395+ "TcValidity"
396+ "TcMatches"
397+ "TcPat"
398+ "TcPatSyn"
399+ "TcRnDriver"
400+ "TcBackpack"
401+ "TcRnExports"
402+ "TcRnMonad"
403+ "TcRnTypes"
404+ "TcRules"
405+ "TcSimplify"
406+ "TcHoleErrors"
407+ "TcErrors"
408+ "TcTyClsDecls"
409+ "TcTyDecls"
410+ "TcTypeable"
411+ "TcType"
412+ "TcEvidence"
413+ "TcEvTerm"
414+ "TcUnify"
415+ "TcInteract"
416+ "TcCanonical"
417+ "TcFlatten"
418+ "TcSMonad"
419+ "TcTypeNats"
420+ "TcSplice"
421+ "Class"
422+ "Coercion"
423+ "DsMeta"
424+ "THNames"
425+ "FamInstEnv"
426+ "FunDeps"
427+ "InstEnv"
428+ "TyCon"
429+ "CoAxiom"
430+ "Kind"
431+ "Type"
432+ "TyCoRep"
433+ "Unify"
434+ "Bag"
435+ "Binary"
436+ "BooleanFormula"
437+ "BufWrite"
438+ "Digraph"
439+ "Encoding"
440+ "FastFunctions"
441+ "FastMutInt"
442+ "FastString"
443+ "FastStringEnv"
444+ "Fingerprint"
445+ "FiniteMap"
446+ "FV"
447+ "GraphBase"
448+ "GraphColor"
449+ "GraphOps"
450+ "GraphPpr"
451+ "IOEnv"
452+ "Json"
453+ "ListSetOps"
454+ "ListT"
455+ "Maybes"
456+ "MonadUtils"
457+ "OrdList"
458+ "Outputable"
459+ "Pair"
460+ "Panic"
461+ "PprColour"
462+ "Pretty"
463+ "State"
464+ "Stream"
465+ "StringBuffer"
466+ "UniqDFM"
467+ "UniqDSet"
468+ "UniqFM"
469+ "UniqMap"
470+ "UniqSet"
471+ "Util"
472+ "Hoopl/Block"
473+ "Hoopl/Collections"
474+ "Hoopl/Dataflow"
475+ "Hoopl/Graph"
476+ "Hoopl/Label"
477+ "AsmCodeGen"
478+ "TargetReg"
479+ "NCGMonad"
480+ "Instruction"
481+ "Format"
482+ "Reg"
483+ "RegClass"
484+ "PIC"
485+ "Platform"
486+ "CPrim"
487+ "X86/Regs"
488+ "X86/RegInfo"
489+ "X86/Instr"
490+ "X86/Cond"
491+ "X86/Ppr"
492+ "X86/CodeGen"
493+ "PPC/Regs"
494+ "PPC/RegInfo"
495+ "PPC/Instr"
496+ "PPC/Cond"
497+ "PPC/Ppr"
498+ "PPC/CodeGen"
499+ "SPARC/Base"
500+ "SPARC/Regs"
501+ "SPARC/Imm"
502+ "SPARC/AddrMode"
503+ "SPARC/Cond"
504+ "SPARC/Instr"
505+ "SPARC/Stack"
506+ "SPARC/ShortcutJump"
507+ "SPARC/Ppr"
508+ "SPARC/CodeGen"
509+ "SPARC/CodeGen/Amode"
510+ "SPARC/CodeGen/Base"
511+ "SPARC/CodeGen/CondCode"
512+ "SPARC/CodeGen/Gen32"
513+ "SPARC/CodeGen/Gen64"
514+ "SPARC/CodeGen/Sanity"
515+ "SPARC/CodeGen/Expand"
516+ "RegAlloc/Liveness"
517+ "RegAlloc/Graph/Main"
518+ "RegAlloc/Graph/Stats"
519+ "RegAlloc/Graph/ArchBase"
520+ "RegAlloc/Graph/ArchX86"
521+ "RegAlloc/Graph/Coalesce"
522+ "RegAlloc/Graph/Spill"
523+ "RegAlloc/Graph/SpillClean"
524+ "RegAlloc/Graph/SpillCost"
525+ "RegAlloc/Graph/TrivColorable"
526+ "RegAlloc/Linear/Main"
527+ "RegAlloc/Linear/JoinToTargets"
528+ "RegAlloc/Linear/State"
529+ "RegAlloc/Linear/Stats"
530+ "RegAlloc/Linear/FreeRegs"
531+ "RegAlloc/Linear/StackMap"
532+ "RegAlloc/Linear/Base"
533+ "RegAlloc/Linear/X86/FreeRegs"
534+ "RegAlloc/Linear/X86_64/FreeRegs"
535+ "RegAlloc/Linear/PPC/FreeRegs"
536+ "RegAlloc/Linear/SPARC/FreeRegs"
537+ "Dwarf"
538+ "Dwarf/Types"
539+ "Dwarf/Constants"
540+ "Convert"
541+ "ByteCodeTypes"
542+ "ByteCodeAsm"
543+ "ByteCodeGen"
544+ "ByteCodeInstr"
545+ "ByteCodeItbls"
546+ "ByteCodeLink"
547+ "Debugger"
548+ "Linker"
549+ "RtClosureInspect"
550+ "GHCi"
551+ ];
552+ cSources = [
553+ "parser/cutils.c"
554+ "ghci/keepCAFsForGHCi.c"
555+ "cbits/genSym.c"
556+ ];
557+ hsSourceDirs = [
558+ "backpack"
559+ "basicTypes"
560+ "cmm"
561+ "codeGen"
562+ "coreSyn"
563+ "deSugar"
564+ "ghci"
565+ "hsSyn"
566+ "iface"
567+ "llvmGen"
568+ "main"
569+ "nativeGen"
570+ "parser"
571+ "prelude"
572+ "profiling"
573+ "rename"
574+ "simplCore"
575+ "simplStg"
576+ "specialise"
577+ "stgSyn"
578+ "stranal"
579+ "typecheck"
580+ "types"
581+ "utils"
582+ ];
583+ includeDirs = [
584+ "."
585+ "parser"
586+ "utils"
587+ ] ++ (pkgs.lib).optional (flags.ghci) "../rts/dist/build";
588+ };
589+ };
590+ } // rec { src = (pkgs.lib).mkDefault ../compiler; }
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/ghci.nixnew file+101
@@ -0,0 +1,101 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."array" or (buildDepError "array"))
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."binary" or (buildDepError "binary"))
70+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
71+ (hsPkgs."containers" or (buildDepError "containers"))
72+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
73+ (hsPkgs."filepath" or (buildDepError "filepath"))
74+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
75+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
76+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
77+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
78+ (hsPkgs."transformers" or (buildDepError "transformers"))
79+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
80+ buildable = true;
81+ modules = [
82+ "GHCi/BreakArray"
83+ "GHCi/BinaryArray"
84+ "GHCi/Message"
85+ "GHCi/ResolvedBCO"
86+ "GHCi/RemoteTypes"
87+ "GHCi/FFI"
88+ "GHCi/InfoTable"
89+ "GHCi/StaticPtrTable"
90+ "GHCi/TH/Binary"
91+ "SizedSeq"
92+ ] ++ (pkgs.lib).optionals (flags.ghci) [
93+ "GHCi/Run"
94+ "GHCi/CreateBCO"
95+ "GHCi/ObjLink"
96+ "GHCi/Signals"
97+ "GHCi/TH"
98+ ];
99+ };
100+ };
101+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghci; }
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/iserv-proxy.nixnew file+86
@@ -0,0 +1,86 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv-proxy" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."directory" or (buildDepError "directory"))
75+ (hsPkgs."network" or (buildDepError "network"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ (hsPkgs."ghci" or (buildDepError "ghci"))
78+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
79+ ];
80+ buildable = true;
81+ hsSourceDirs = [ "src" ];
82+ mainPath = [ "Main.hs" ];
83+ };
84+ };
85+ };
86+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv-proxy; }
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/iserv.nixnew file+85
@@ -0,0 +1,85 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."ghci" or (buildDepError "ghci"))
75+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
76+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
77+ buildable = true;
78+ cSources = [ "cbits/iservmain.c" ];
79+ hsSourceDirs = [ "src" ];
80+ includeDirs = [ "." ];
81+ mainPath = [ "Main.hs" ] ++ [ "" ];
82+ };
83+ };
84+ };
85+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv; }
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/libiserv.nixnew file+89
@@ -0,0 +1,89 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."containers" or (buildDepError "containers"))
71+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
72+ (hsPkgs."ghci" or (buildDepError "ghci"))
73+ ] ++ (pkgs.lib).optionals (flags.network) [
74+ (hsPkgs."network" or (buildDepError "network"))
75+ (hsPkgs."directory" or (buildDepError "directory"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
78+ buildable = true;
79+ modules = [
80+ "Lib"
81+ "GHCi/Utils"
82+ ] ++ (pkgs.lib).optionals (flags.network) [
83+ "Remote/Message"
84+ "Remote/Slave"
85+ ];
86+ hsSourceDirs = [ "src" ];
87+ };
88+ };
89+ } // rec { src = (pkgs.lib).mkDefault ../libraries/libiserv; }
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/remote-iserv.nixnew file+77
@@ -0,0 +1,77 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "remote-iserv" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
70+ ];
71+ buildable = true;
72+ hsSourceDirs = [ "src" ];
73+ mainPath = [ "Cli.hs" ];
74+ };
75+ };
76+ };
77+ } // rec { src = (pkgs.lib).mkDefault ../utils/remote-iserv; }
materialized/ghc-extra-projects/cross/ghc865/default.nixnew file+92
@@ -0,0 +1,92 @@
1+{
2+ pkgs = hackage:
3+ {
4+ packages = {
5+ "binary".revision = (((hackage."binary")."0.8.8.0").revisions).default;
6+ "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
7+ "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
8+ "ghc-heap".revision = (((hackage."ghc-heap")."8.6.5").revisions).default;
9+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
10+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
11+ "alex".revision = (((hackage."alex")."3.2.5").revisions).default;
12+ "alex".flags.small_base = true;
13+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
14+ "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
15+ "directory".revision = (((hackage."directory")."1.3.6.1").revisions).default;
16+ "template-haskell".revision = (((hackage."template-haskell")."2.14.0.0").revisions).default;
17+ "containers".revision = (((hackage."containers")."0.6.0.1").revisions).default;
18+ "base".revision = (((hackage."base")."4.12.0.0").revisions).default;
19+ "time".revision = (((hackage."time")."1.8.0.2").revisions).default;
20+ "terminfo".revision = (((hackage."terminfo")."0.4.1.4").revisions).default;
21+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
22+ "happy".revision = (((hackage."happy")."1.19.12").revisions).default;
23+ "happy".flags.small_base = true;
24+ "hpc".revision = (((hackage."hpc")."0.6.0.3").revisions).default;
25+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
26+ "process".revision = (((hackage."process")."1.6.8.2").revisions).default;
27+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
28+ "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.6.5").revisions).default;
29+ "array".revision = (((hackage."array")."0.5.3.0").revisions).default;
30+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
31+ };
32+ compiler = {
33+ version = "8.6.5";
34+ nix-name = "ghc865";
35+ packages = {
36+ "ghc-prim" = "0.5.3";
37+ "ghc-heap" = "8.6.5";
38+ "mtl" = "2.2.2";
39+ "rts" = "1.0";
40+ "deepseq" = "1.4.4.0";
41+ "template-haskell" = "2.14.0.0";
42+ "containers" = "0.6.0.1";
43+ "base" = "4.12.0.0";
44+ "time" = "1.8.0.2";
45+ "transformers" = "0.5.6.2";
46+ "filepath" = "1.4.2.1";
47+ "pretty" = "1.1.3.6";
48+ "ghc-boot-th" = "8.6.5";
49+ "array" = "0.5.3.0";
50+ "integer-gmp" = "1.0.2.0";
51+ };
52+ };
53+ };
54+ extras = hackage:
55+ {
56+ packages = {
57+ ghc = ./.plan.nix/ghc.nix;
58+ bytestring = ./.plan.nix/bytestring.nix;
59+ remote-iserv = ./.plan.nix/remote-iserv.nix;
60+ iserv-proxy = ./.plan.nix/iserv-proxy.nix;
61+ libiserv = ./.plan.nix/libiserv.nix;
62+ ghc-boot = ./.plan.nix/ghc-boot.nix;
63+ ghci = ./.plan.nix/ghci.nix;
64+ iserv = ./.plan.nix/iserv.nix;
65+ };
66+ };
67+ modules = [
68+ ({ lib, ... }:
69+ {
70+ packages = {
71+ "ghc" = {
72+ flags = {
73+ "stage1" = lib.mkOverride 900 false;
74+ "stage2" = lib.mkOverride 900 true;
75+ "stage3" = lib.mkOverride 900 false;
76+ "ghci" = lib.mkOverride 900 true;
77+ "terminfo" = lib.mkOverride 900 true;
78+ };
79+ };
80+ "bytestring" = {
81+ flags = { "integer-simple" = lib.mkOverride 900 false; };
82+ };
83+ "remote-iserv" = { flags = {}; };
84+ "iserv-proxy" = { flags = {}; };
85+ "libiserv" = { flags = { "network" = lib.mkOverride 900 true; }; };
86+ "ghc-boot" = { flags = {}; };
87+ "ghci" = { flags = { "ghci" = lib.mkOverride 900 true; }; };
88+ "iserv" = { flags = {}; };
89+ };
90+ })
91+ ];
92+ }
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/bytestring.nixnew file+167
@@ -0,0 +1,167 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.10.0"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "README.md" "Changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
69+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
70+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
71+ buildable = true;
72+ modules = [
73+ "Data/ByteString/Builder/ASCII"
74+ "Data/ByteString/Builder/Prim/Binary"
75+ "Data/ByteString/Builder/Prim/ASCII"
76+ "Data/ByteString/Builder/Prim/Internal/Floating"
77+ "Data/ByteString/Builder/Prim/Internal/UncheckedShifts"
78+ "Data/ByteString/Builder/Prim/Internal/Base16"
79+ "Data/ByteString"
80+ "Data/ByteString/Char8"
81+ "Data/ByteString/Unsafe"
82+ "Data/ByteString/Internal"
83+ "Data/ByteString/Lazy"
84+ "Data/ByteString/Lazy/Char8"
85+ "Data/ByteString/Lazy/Internal"
86+ "Data/ByteString/Short"
87+ "Data/ByteString/Short/Internal"
88+ "Data/ByteString/Builder"
89+ "Data/ByteString/Builder/Extra"
90+ "Data/ByteString/Builder/Prim"
91+ "Data/ByteString/Builder/Internal"
92+ "Data/ByteString/Builder/Prim/Internal"
93+ "Data/ByteString/Lazy/Builder"
94+ "Data/ByteString/Lazy/Builder/Extras"
95+ "Data/ByteString/Lazy/Builder/ASCII"
96+ ];
97+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
98+ includeDirs = [ "include" ];
99+ includes = [ "fpstring.h" ];
100+ };
101+ tests = {
102+ "prop-compiled" = {
103+ depends = [
104+ (hsPkgs."base" or (buildDepError "base"))
105+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
106+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
107+ (hsPkgs."random" or (buildDepError "random"))
108+ (hsPkgs."directory" or (buildDepError "directory"))
109+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
110+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
111+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
112+ ];
113+ buildable = true;
114+ modules = [ "Rules" "QuickCheckUtils" "TestFramework" ];
115+ cSources = [ "cbits/fpstring.c" ];
116+ hsSourceDirs = [ "." "tests" ];
117+ includeDirs = [ "include" ];
118+ mainPath = [ "Properties.hs" ];
119+ };
120+ "regressions" = {
121+ depends = [
122+ (hsPkgs."base" or (buildDepError "base"))
123+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
124+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
125+ (hsPkgs."random" or (buildDepError "random"))
126+ (hsPkgs."directory" or (buildDepError "directory"))
127+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
128+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
129+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
130+ ];
131+ buildable = false;
132+ cSources = [ "cbits/fpstring.c" ];
133+ hsSourceDirs = [ "." "tests" ];
134+ includeDirs = [ "include" ];
135+ mainPath = [ "Regressions.hs" ];
136+ };
137+ "test-builder" = {
138+ depends = [
139+ (hsPkgs."base" or (buildDepError "base"))
140+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
141+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
142+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
143+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
144+ (hsPkgs."dlist" or (buildDepError "dlist"))
145+ (hsPkgs."directory" or (buildDepError "directory"))
146+ (hsPkgs."mtl" or (buildDepError "mtl"))
147+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
148+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
149+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
150+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
151+ ];
152+ buildable = true;
153+ modules = [
154+ "Data/ByteString/Builder/Tests"
155+ "Data/ByteString/Builder/Prim/Tests"
156+ "Data/ByteString/Builder/Prim/TestUtils"
157+ "TestFramework"
158+ ];
159+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
160+ hsSourceDirs = [ "." "tests" "tests/builder" ];
161+ includeDirs = [ "include" ];
162+ includes = [ "fpstring.h" ];
163+ mainPath = [ "TestSuite.hs" ];
164+ };
165+ };
166+ };
167+ } // rec { src = (pkgs.lib).mkDefault ../libraries/bytestring; }
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghc-boot.nixnew file+84
@@ -0,0 +1,84 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."directory" or (buildDepError "directory"))
71+ (hsPkgs."filepath" or (buildDepError "filepath"))
72+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
73+ ];
74+ buildable = true;
75+ modules = [
76+ "GHC/LanguageExtensions"
77+ "GHC/PackageDb"
78+ "GHC/Serialized"
79+ "GHC/ForeignSrcLang"
80+ "GHC/HandleEncoding"
81+ ];
82+ };
83+ };
84+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghc-boot; }
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghc.nixnew file+608
@@ -0,0 +1,608 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ stage1 = false;
45+ stage2 = true;
46+ stage3 = false;
47+ terminfo = true;
48+ integer-simple = false;
49+ integer-gmp = false;
50+ };
51+ package = {
52+ specVersion = "1.10";
53+ identifier = { name = "ghc"; version = "8.8.2"; };
54+ license = "BSD-3-Clause";
55+ copyright = "";
56+ maintainer = "glasgow-haskell-users@haskell.org";
57+ author = "The GHC Team";
58+ homepage = "http://www.haskell.org/ghc/";
59+ url = "";
60+ synopsis = "The GHC API";
61+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
62+ buildType = "Simple";
63+ isLocal = true;
64+ detailLevel = "FullDetails";
65+ licenseFiles = [ "LICENSE" ];
66+ dataDir = "";
67+ dataFiles = [];
68+ extraSrcFiles = [
69+ "utils/md5.h"
70+ "Unique.h"
71+ "nativeGen/NCG.h"
72+ "parser/cutils.h"
73+ ];
74+ extraTmpFiles = [];
75+ extraDocFiles = [];
76+ };
77+ components = {
78+ "library" = {
79+ depends = ((([
80+ (hsPkgs."base" or (buildDepError "base"))
81+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
82+ (hsPkgs."directory" or (buildDepError "directory"))
83+ (hsPkgs."process" or (buildDepError "process"))
84+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
85+ (hsPkgs."binary" or (buildDepError "binary"))
86+ (hsPkgs."time" or (buildDepError "time"))
87+ (hsPkgs."containers" or (buildDepError "containers"))
88+ (hsPkgs."array" or (buildDepError "array"))
89+ (hsPkgs."filepath" or (buildDepError "filepath"))
90+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
91+ (hsPkgs."hpc" or (buildDepError "hpc"))
92+ (hsPkgs."transformers" or (buildDepError "transformers"))
93+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
94+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
95+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
96+ (hsPkgs."ghci" or (buildDepError "ghci"))
97+ ] ++ (if system.isWindows
98+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
99+ else [
100+ (hsPkgs."unix" or (buildDepError "unix"))
101+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")))) ++ (pkgs.lib).optional (flags.integer-gmp && flags.integer-simple) (hsPkgs."invalid-cabal-flag-settings" or (buildDepError "invalid-cabal-flag-settings"))) ++ (pkgs.lib).optional (flags.integer-gmp) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp"))) ++ (pkgs.lib).optional (flags.integer-simple) (hsPkgs."integer-simple" or (buildDepError "integer-simple"));
102+ build-tools = [
103+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
104+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
105+ ];
106+ buildable = true;
107+ modules = [
108+ "GhcPrelude"
109+ "HieTypes"
110+ "HieDebug"
111+ "HieBin"
112+ "HieUtils"
113+ "HieAst"
114+ "Ar"
115+ "FileCleanup"
116+ "DriverBkp"
117+ "BkpSyn"
118+ "NameShape"
119+ "RnModIface"
120+ "Avail"
121+ "AsmUtils"
122+ "BasicTypes"
123+ "ConLike"
124+ "DataCon"
125+ "PatSyn"
126+ "Demand"
127+ "Debug"
128+ "Exception"
129+ "FieldLabel"
130+ "GhcMonad"
131+ "Hooks"
132+ "Id"
133+ "IdInfo"
134+ "Lexeme"
135+ "Literal"
136+ "Llvm"
137+ "Llvm/AbsSyn"
138+ "Llvm/MetaData"
139+ "Llvm/PpLlvm"
140+ "Llvm/Types"
141+ "LlvmCodeGen"
142+ "LlvmCodeGen/Base"
143+ "LlvmCodeGen/CodeGen"
144+ "LlvmCodeGen/Data"
145+ "LlvmCodeGen/Ppr"
146+ "LlvmCodeGen/Regs"
147+ "LlvmMangler"
148+ "MkId"
149+ "Module"
150+ "Name"
151+ "NameEnv"
152+ "NameSet"
153+ "OccName"
154+ "RdrName"
155+ "NameCache"
156+ "SrcLoc"
157+ "UniqSupply"
158+ "Unique"
159+ "Var"
160+ "VarEnv"
161+ "VarSet"
162+ "UnVarGraph"
163+ "BlockId"
164+ "CLabel"
165+ "Cmm"
166+ "CmmBuildInfoTables"
167+ "CmmPipeline"
168+ "CmmCallConv"
169+ "CmmCommonBlockElim"
170+ "CmmImplementSwitchPlans"
171+ "CmmContFlowOpt"
172+ "CmmExpr"
173+ "CmmInfo"
174+ "CmmLex"
175+ "CmmLint"
176+ "CmmLive"
177+ "CmmMachOp"
178+ "CmmMonad"
179+ "CmmSwitch"
180+ "CmmNode"
181+ "CmmOpt"
182+ "CmmParse"
183+ "CmmProcPoint"
184+ "CmmSink"
185+ "CmmType"
186+ "CmmUtils"
187+ "CmmLayoutStack"
188+ "EnumSet"
189+ "MkGraph"
190+ "PprBase"
191+ "PprC"
192+ "PprCmm"
193+ "PprCmmDecl"
194+ "PprCmmExpr"
195+ "Bitmap"
196+ "CodeGen/Platform"
197+ "CodeGen/Platform/ARM"
198+ "CodeGen/Platform/ARM64"
199+ "CodeGen/Platform/NoRegs"
200+ "CodeGen/Platform/PPC"
201+ "CodeGen/Platform/SPARC"
202+ "CodeGen/Platform/X86"
203+ "CodeGen/Platform/X86_64"
204+ "CgUtils"
205+ "StgCmm"
206+ "StgCmmBind"
207+ "StgCmmClosure"
208+ "StgCmmCon"
209+ "StgCmmEnv"
210+ "StgCmmExpr"
211+ "StgCmmForeign"
212+ "StgCmmHeap"
213+ "StgCmmHpc"
214+ "StgCmmArgRep"
215+ "StgCmmLayout"
216+ "StgCmmMonad"
217+ "StgCmmPrim"
218+ "StgCmmProf"
219+ "StgCmmTicky"
220+ "StgCmmUtils"
221+ "StgCmmExtCode"
222+ "SMRep"
223+ "CoreArity"
224+ "CoreFVs"
225+ "CoreLint"
226+ "CorePrep"
227+ "CoreSubst"
228+ "CoreOpt"
229+ "CoreSyn"
230+ "TrieMap"
231+ "CoreTidy"
232+ "CoreUnfold"
233+ "CoreUtils"
234+ "CoreMap"
235+ "CoreSeq"
236+ "CoreStats"
237+ "MkCore"
238+ "PprCore"
239+ "PmExpr"
240+ "TmOracle"
241+ "Check"
242+ "Coverage"
243+ "Desugar"
244+ "DsArrows"
245+ "DsBinds"
246+ "DsCCall"
247+ "DsExpr"
248+ "DsForeign"
249+ "DsGRHSs"
250+ "DsListComp"
251+ "DsMonad"
252+ "DsUsage"
253+ "DsUtils"
254+ "ExtractDocs"
255+ "Match"
256+ "MatchCon"
257+ "MatchLit"
258+ "HsBinds"
259+ "HsDecls"
260+ "HsDoc"
261+ "HsExpr"
262+ "HsImpExp"
263+ "HsLit"
264+ "PlaceHolder"
265+ "HsExtension"
266+ "HsInstances"
267+ "HsPat"
268+ "HsSyn"
269+ "HsTypes"
270+ "HsUtils"
271+ "HsDumpAst"
272+ "BinIface"
273+ "BinFingerprint"
274+ "BuildTyCl"
275+ "IfaceEnv"
276+ "IfaceSyn"
277+ "IfaceType"
278+ "ToIface"
279+ "LoadIface"
280+ "MkIface"
281+ "TcIface"
282+ "FlagChecker"
283+ "Annotations"
284+ "CmdLineParser"
285+ "CodeOutput"
286+ "Config"
287+ "Constants"
288+ "DriverMkDepend"
289+ "DriverPhases"
290+ "PipelineMonad"
291+ "DriverPipeline"
292+ "DynFlags"
293+ "ErrUtils"
294+ "Finder"
295+ "GHC"
296+ "GhcMake"
297+ "GhcPlugins"
298+ "DynamicLoading"
299+ "HeaderInfo"
300+ "HscMain"
301+ "HscStats"
302+ "HscTypes"
303+ "InteractiveEval"
304+ "InteractiveEvalTypes"
305+ "PackageConfig"
306+ "Packages"
307+ "PlatformConstants"
308+ "Plugins"
309+ "TcPluginM"
310+ "PprTyThing"
311+ "StaticPtrTable"
312+ "SysTools"
313+ "SysTools/BaseDir"
314+ "SysTools/Terminal"
315+ "SysTools/ExtraObj"
316+ "SysTools/Info"
317+ "SysTools/Process"
318+ "SysTools/Tasks"
319+ "Elf"
320+ "TidyPgm"
321+ "Ctype"
322+ "HaddockUtils"
323+ "Lexer"
324+ "OptCoercion"
325+ "Parser"
326+ "RdrHsSyn"
327+ "ApiAnnotation"
328+ "ForeignCall"
329+ "KnownUniques"
330+ "PrelInfo"
331+ "PrelNames"
332+ "PrelRules"
333+ "PrimOp"
334+ "TysPrim"
335+ "TysWiredIn"
336+ "CostCentre"
337+ "CostCentreState"
338+ "ProfInit"
339+ "RnBinds"
340+ "RnEnv"
341+ "RnExpr"
342+ "RnHsDoc"
343+ "RnNames"
344+ "RnPat"
345+ "RnSource"
346+ "RnSplice"
347+ "RnTypes"
348+ "RnFixity"
349+ "RnUtils"
350+ "RnUnbound"
351+ "CoreMonad"
352+ "CSE"
353+ "FloatIn"
354+ "FloatOut"
355+ "LiberateCase"
356+ "OccurAnal"
357+ "SAT"
358+ "SetLevels"
359+ "SimplCore"
360+ "SimplEnv"
361+ "SimplMonad"
362+ "SimplUtils"
363+ "Simplify"
364+ "SimplStg"
365+ "StgStats"
366+ "StgCse"
367+ "StgLiftLams"
368+ "StgLiftLams/Analysis"
369+ "StgLiftLams/LiftM"
370+ "StgLiftLams/Transformation"
371+ "StgSubst"
372+ "UnariseStg"
373+ "RepType"
374+ "Rules"
375+ "SpecConstr"
376+ "Specialise"
377+ "CoreToStg"
378+ "StgLint"
379+ "StgSyn"
380+ "StgFVs"
381+ "CallArity"
382+ "DmdAnal"
383+ "Exitify"
384+ "WorkWrap"
385+ "WwLib"
386+ "FamInst"
387+ "ClsInst"
388+ "Inst"
389+ "TcAnnotations"
390+ "TcArrows"
391+ "TcBinds"
392+ "TcSigs"
393+ "TcClassDcl"
394+ "TcDefaults"
395+ "TcDeriv"
396+ "TcDerivInfer"
397+ "TcDerivUtils"
398+ "TcEnv"
399+ "TcExpr"
400+ "TcForeign"
401+ "TcGenDeriv"
402+ "TcGenFunctor"
403+ "TcGenGenerics"
404+ "TcHsSyn"
405+ "TcHsType"
406+ "TcInstDcls"
407+ "TcMType"
408+ "TcValidity"
409+ "TcMatches"
410+ "TcPat"
411+ "TcPatSyn"
412+ "TcRnDriver"
413+ "TcBackpack"
414+ "TcRnExports"
415+ "TcRnMonad"
416+ "TcRnTypes"
417+ "TcRules"
418+ "TcSimplify"
419+ "TcHoleErrors"
420+ "TcErrors"
421+ "TcTyClsDecls"
422+ "TcTyDecls"
423+ "TcTypeable"
424+ "TcTypeableValidity"
425+ "TcType"
426+ "TcEvidence"
427+ "TcEvTerm"
428+ "TcUnify"
429+ "TcInteract"
430+ "TcCanonical"
431+ "TcFlatten"
432+ "TcSMonad"
433+ "TcTypeNats"
434+ "TcSplice"
435+ "Class"
436+ "Coercion"
437+ "DsMeta"
438+ "THNames"
439+ "FamInstEnv"
440+ "FunDeps"
441+ "InstEnv"
442+ "TyCon"
443+ "CoAxiom"
444+ "Kind"
445+ "Type"
446+ "TyCoRep"
447+ "Unify"
448+ "Bag"
449+ "Binary"
450+ "BooleanFormula"
451+ "BufWrite"
452+ "Digraph"
453+ "Encoding"
454+ "FastFunctions"
455+ "FastMutInt"
456+ "FastString"
457+ "FastStringEnv"
458+ "Fingerprint"
459+ "FiniteMap"
460+ "FV"
461+ "GraphBase"
462+ "GraphColor"
463+ "GraphOps"
464+ "GraphPpr"
465+ "IOEnv"
466+ "Json"
467+ "ListSetOps"
468+ "ListT"
469+ "Maybes"
470+ "MonadUtils"
471+ "OrdList"
472+ "Outputable"
473+ "Pair"
474+ "Panic"
475+ "PlainPanic"
476+ "PprColour"
477+ "Pretty"
478+ "State"
479+ "Stream"
480+ "StringBuffer"
481+ "UniqDFM"
482+ "UniqDSet"
483+ "UniqFM"
484+ "UniqMap"
485+ "UniqSet"
486+ "Util"
487+ "Hoopl/Block"
488+ "Hoopl/Collections"
489+ "Hoopl/Dataflow"
490+ "Hoopl/Graph"
491+ "Hoopl/Label"
492+ "AsmCodeGen"
493+ "TargetReg"
494+ "NCGMonad"
495+ "Instruction"
496+ "BlockLayout"
497+ "CFG"
498+ "Format"
499+ "Reg"
500+ "RegClass"
501+ "PIC"
502+ "Platform"
503+ "CPrim"
504+ "X86/Regs"
505+ "X86/RegInfo"
506+ "X86/Instr"
507+ "X86/Cond"
508+ "X86/Ppr"
509+ "X86/CodeGen"
510+ "PPC/Regs"
511+ "PPC/RegInfo"
512+ "PPC/Instr"
513+ "PPC/Cond"
514+ "PPC/Ppr"
515+ "PPC/CodeGen"
516+ "SPARC/Base"
517+ "SPARC/Regs"
518+ "SPARC/Imm"
519+ "SPARC/AddrMode"
520+ "SPARC/Cond"
521+ "SPARC/Instr"
522+ "SPARC/Stack"
523+ "SPARC/ShortcutJump"
524+ "SPARC/Ppr"
525+ "SPARC/CodeGen"
526+ "SPARC/CodeGen/Amode"
527+ "SPARC/CodeGen/Base"
528+ "SPARC/CodeGen/CondCode"
529+ "SPARC/CodeGen/Gen32"
530+ "SPARC/CodeGen/Gen64"
531+ "SPARC/CodeGen/Sanity"
532+ "SPARC/CodeGen/Expand"
533+ "RegAlloc/Liveness"
534+ "RegAlloc/Graph/Main"
535+ "RegAlloc/Graph/Stats"
536+ "RegAlloc/Graph/ArchBase"
537+ "RegAlloc/Graph/ArchX86"
538+ "RegAlloc/Graph/Coalesce"
539+ "RegAlloc/Graph/Spill"
540+ "RegAlloc/Graph/SpillClean"
541+ "RegAlloc/Graph/SpillCost"
542+ "RegAlloc/Graph/TrivColorable"
543+ "RegAlloc/Linear/Main"
544+ "RegAlloc/Linear/JoinToTargets"
545+ "RegAlloc/Linear/State"
546+ "RegAlloc/Linear/Stats"
547+ "RegAlloc/Linear/FreeRegs"
548+ "RegAlloc/Linear/StackMap"
549+ "RegAlloc/Linear/Base"
550+ "RegAlloc/Linear/X86/FreeRegs"
551+ "RegAlloc/Linear/X86_64/FreeRegs"
552+ "RegAlloc/Linear/PPC/FreeRegs"
553+ "RegAlloc/Linear/SPARC/FreeRegs"
554+ "Dwarf"
555+ "Dwarf/Types"
556+ "Dwarf/Constants"
557+ "Convert"
558+ "ByteCodeTypes"
559+ "ByteCodeAsm"
560+ "ByteCodeGen"
561+ "ByteCodeInstr"
562+ "ByteCodeItbls"
563+ "ByteCodeLink"
564+ "Debugger"
565+ "Linker"
566+ "RtClosureInspect"
567+ "GHCi"
568+ ];
569+ cSources = [
570+ "parser/cutils.c"
571+ "ghci/keepCAFsForGHCi.c"
572+ "cbits/genSym.c"
573+ ];
574+ hsSourceDirs = [
575+ "backpack"
576+ "basicTypes"
577+ "cmm"
578+ "codeGen"
579+ "coreSyn"
580+ "deSugar"
581+ "ghci"
582+ "hsSyn"
583+ "iface"
584+ "llvmGen"
585+ "main"
586+ "nativeGen"
587+ "parser"
588+ "prelude"
589+ "profiling"
590+ "rename"
591+ "simplCore"
592+ "simplStg"
593+ "specialise"
594+ "stgSyn"
595+ "stranal"
596+ "typecheck"
597+ "types"
598+ "utils"
599+ "hieFile"
600+ ];
601+ includeDirs = [
602+ "."
603+ "parser"
604+ "utils"
605+ ] ++ (pkgs.lib).optional (flags.ghci) "../rts/dist/build";
606+ };
607+ };
608+ } // rec { src = (pkgs.lib).mkDefault ../compiler; }
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghci.nixnew file+101
@@ -0,0 +1,101 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."array" or (buildDepError "array"))
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."binary" or (buildDepError "binary"))
70+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
71+ (hsPkgs."containers" or (buildDepError "containers"))
72+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
73+ (hsPkgs."filepath" or (buildDepError "filepath"))
74+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
75+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
76+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
77+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
78+ (hsPkgs."transformers" or (buildDepError "transformers"))
79+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
80+ buildable = true;
81+ modules = [
82+ "GHCi/BreakArray"
83+ "GHCi/BinaryArray"
84+ "GHCi/Message"
85+ "GHCi/ResolvedBCO"
86+ "GHCi/RemoteTypes"
87+ "GHCi/FFI"
88+ "GHCi/InfoTable"
89+ "GHCi/StaticPtrTable"
90+ "GHCi/TH/Binary"
91+ "SizedSeq"
92+ ] ++ (pkgs.lib).optionals (flags.ghci) [
93+ "GHCi/Run"
94+ "GHCi/CreateBCO"
95+ "GHCi/ObjLink"
96+ "GHCi/Signals"
97+ "GHCi/TH"
98+ ];
99+ };
100+ };
101+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghci; }
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/iserv-proxy.nixnew file+86
@@ -0,0 +1,86 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv-proxy" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."directory" or (buildDepError "directory"))
75+ (hsPkgs."network" or (buildDepError "network"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ (hsPkgs."ghci" or (buildDepError "ghci"))
78+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
79+ ];
80+ buildable = true;
81+ hsSourceDirs = [ "src" ];
82+ mainPath = [ "Main.hs" ];
83+ };
84+ };
85+ };
86+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv-proxy; }
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/iserv.nixnew file+85
@@ -0,0 +1,85 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Template Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."ghci" or (buildDepError "ghci"))
75+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
76+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
77+ buildable = true;
78+ cSources = [ "cbits/iservmain.c" ];
79+ hsSourceDirs = [ "src" ];
80+ includeDirs = [ "." ];
81+ mainPath = [ "Main.hs" ] ++ [ "" ];
82+ };
83+ };
84+ };
85+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv; }
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/libiserv.nixnew file+89
@@ -0,0 +1,89 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."containers" or (buildDepError "containers"))
71+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
72+ (hsPkgs."ghci" or (buildDepError "ghci"))
73+ ] ++ (pkgs.lib).optionals (flags.network) [
74+ (hsPkgs."network" or (buildDepError "network"))
75+ (hsPkgs."directory" or (buildDepError "directory"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
78+ buildable = true;
79+ modules = [
80+ "Lib"
81+ "GHCi/Utils"
82+ ] ++ (pkgs.lib).optionals (flags.network) [
83+ "Remote/Message"
84+ "Remote/Slave"
85+ ];
86+ hsSourceDirs = [ "src" ];
87+ };
88+ };
89+ } // rec { src = (pkgs.lib).mkDefault ../libraries/libiserv; }
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/remote-iserv.nixnew file+77
@@ -0,0 +1,77 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "remote-iserv" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
70+ ];
71+ buildable = true;
72+ hsSourceDirs = [ "src" ];
73+ mainPath = [ "Cli.hs" ];
74+ };
75+ };
76+ };
77+ } // rec { src = (pkgs.lib).mkDefault ../utils/remote-iserv; }
materialized/ghc-extra-projects/cross/ghc882/default.nixnew file+94
@@ -0,0 +1,94 @@
1+{
2+ pkgs = hackage:
3+ {
4+ packages = {
5+ "binary".revision = (((hackage."binary")."0.8.8.0").revisions).default;
6+ "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
7+ "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
8+ "ghc-heap".revision = (((hackage."ghc-heap")."8.8.2").revisions).default;
9+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
10+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
11+ "alex".revision = (((hackage."alex")."3.2.5").revisions).default;
12+ "alex".flags.small_base = true;
13+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
14+ "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
15+ "directory".revision = (((hackage."directory")."1.3.6.1").revisions).default;
16+ "template-haskell".revision = (((hackage."template-haskell")."2.15.0.0").revisions).default;
17+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
18+ "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
19+ "time".revision = (((hackage."time")."1.9.3").revisions).default;
20+ "terminfo".revision = (((hackage."terminfo")."0.4.1.4").revisions).default;
21+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
22+ "happy".revision = (((hackage."happy")."1.19.12").revisions).default;
23+ "happy".flags.small_base = true;
24+ "hpc".revision = (((hackage."hpc")."0.6.0.3").revisions).default;
25+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
26+ "process".revision = (((hackage."process")."1.6.8.2").revisions).default;
27+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
28+ "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.8.2").revisions).default;
29+ "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
30+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
31+ };
32+ compiler = {
33+ version = "8.8.2";
34+ nix-name = "ghc882";
35+ packages = {
36+ "ghc-prim" = "0.5.3";
37+ "ghc-heap" = "8.8.2";
38+ "mtl" = "2.2.2";
39+ "rts" = "1.0";
40+ "deepseq" = "1.4.4.0";
41+ "template-haskell" = "2.15.0.0";
42+ "containers" = "0.6.2.1";
43+ "base" = "4.13.0.0";
44+ "time" = "1.9.3";
45+ "transformers" = "0.5.6.2";
46+ "filepath" = "1.4.2.1";
47+ "pretty" = "1.1.3.6";
48+ "ghc-boot-th" = "8.8.2";
49+ "array" = "0.5.4.0";
50+ "integer-gmp" = "1.0.2.0";
51+ };
52+ };
53+ };
54+ extras = hackage:
55+ {
56+ packages = {
57+ ghc = ./.plan.nix/ghc.nix;
58+ bytestring = ./.plan.nix/bytestring.nix;
59+ remote-iserv = ./.plan.nix/remote-iserv.nix;
60+ iserv-proxy = ./.plan.nix/iserv-proxy.nix;
61+ libiserv = ./.plan.nix/libiserv.nix;
62+ ghc-boot = ./.plan.nix/ghc-boot.nix;
63+ ghci = ./.plan.nix/ghci.nix;
64+ iserv = ./.plan.nix/iserv.nix;
65+ };
66+ };
67+ modules = [
68+ ({ lib, ... }:
69+ {
70+ packages = {
71+ "ghc" = {
72+ flags = {
73+ "stage1" = lib.mkOverride 900 false;
74+ "stage2" = lib.mkOverride 900 true;
75+ "integer-gmp" = lib.mkOverride 900 false;
76+ "stage3" = lib.mkOverride 900 false;
77+ "ghci" = lib.mkOverride 900 true;
78+ "integer-simple" = lib.mkOverride 900 false;
79+ "terminfo" = lib.mkOverride 900 true;
80+ };
81+ };
82+ "bytestring" = {
83+ flags = { "integer-simple" = lib.mkOverride 900 false; };
84+ };
85+ "remote-iserv" = { flags = {}; };
86+ "iserv-proxy" = { flags = {}; };
87+ "libiserv" = { flags = { "network" = lib.mkOverride 900 true; }; };
88+ "ghc-boot" = { flags = {}; };
89+ "ghci" = { flags = { "ghci" = lib.mkOverride 900 true; }; };
90+ "iserv" = { flags = {}; };
91+ };
92+ })
93+ ];
94+ }
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/bytestring.nixnew file+167
@@ -0,0 +1,167 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.10.0"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "README.md" "Changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
69+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
70+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
71+ buildable = true;
72+ modules = [
73+ "Data/ByteString/Builder/ASCII"
74+ "Data/ByteString/Builder/Prim/Binary"
75+ "Data/ByteString/Builder/Prim/ASCII"
76+ "Data/ByteString/Builder/Prim/Internal/Floating"
77+ "Data/ByteString/Builder/Prim/Internal/UncheckedShifts"
78+ "Data/ByteString/Builder/Prim/Internal/Base16"
79+ "Data/ByteString"
80+ "Data/ByteString/Char8"
81+ "Data/ByteString/Unsafe"
82+ "Data/ByteString/Internal"
83+ "Data/ByteString/Lazy"
84+ "Data/ByteString/Lazy/Char8"
85+ "Data/ByteString/Lazy/Internal"
86+ "Data/ByteString/Short"
87+ "Data/ByteString/Short/Internal"
88+ "Data/ByteString/Builder"
89+ "Data/ByteString/Builder/Extra"
90+ "Data/ByteString/Builder/Prim"
91+ "Data/ByteString/Builder/Internal"
92+ "Data/ByteString/Builder/Prim/Internal"
93+ "Data/ByteString/Lazy/Builder"
94+ "Data/ByteString/Lazy/Builder/Extras"
95+ "Data/ByteString/Lazy/Builder/ASCII"
96+ ];
97+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
98+ includeDirs = [ "include" ];
99+ includes = [ "fpstring.h" ];
100+ };
101+ tests = {
102+ "prop-compiled" = {
103+ depends = [
104+ (hsPkgs."base" or (buildDepError "base"))
105+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
106+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
107+ (hsPkgs."random" or (buildDepError "random"))
108+ (hsPkgs."directory" or (buildDepError "directory"))
109+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
110+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
111+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
112+ ];
113+ buildable = true;
114+ modules = [ "Rules" "QuickCheckUtils" "TestFramework" ];
115+ cSources = [ "cbits/fpstring.c" ];
116+ hsSourceDirs = [ "." "tests" ];
117+ includeDirs = [ "include" ];
118+ mainPath = [ "Properties.hs" ];
119+ };
120+ "regressions" = {
121+ depends = [
122+ (hsPkgs."base" or (buildDepError "base"))
123+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
124+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
125+ (hsPkgs."random" or (buildDepError "random"))
126+ (hsPkgs."directory" or (buildDepError "directory"))
127+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
128+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
129+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
130+ ];
131+ buildable = false;
132+ cSources = [ "cbits/fpstring.c" ];
133+ hsSourceDirs = [ "." "tests" ];
134+ includeDirs = [ "include" ];
135+ mainPath = [ "Regressions.hs" ];
136+ };
137+ "test-builder" = {
138+ depends = [
139+ (hsPkgs."base" or (buildDepError "base"))
140+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
141+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
142+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
143+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
144+ (hsPkgs."dlist" or (buildDepError "dlist"))
145+ (hsPkgs."directory" or (buildDepError "directory"))
146+ (hsPkgs."mtl" or (buildDepError "mtl"))
147+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
148+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
149+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
150+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
151+ ];
152+ buildable = true;
153+ modules = [
154+ "Data/ByteString/Builder/Tests"
155+ "Data/ByteString/Builder/Prim/Tests"
156+ "Data/ByteString/Builder/Prim/TestUtils"
157+ "TestFramework"
158+ ];
159+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
160+ hsSourceDirs = [ "." "tests" "tests/builder" ];
161+ includeDirs = [ "include" ];
162+ includes = [ "fpstring.h" ];
163+ mainPath = [ "TestSuite.hs" ];
164+ };
165+ };
166+ };
167+ } // rec { src = (pkgs.lib).mkDefault ../libraries/bytestring; }
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/ghc-boot.nixnew file+84
@@ -0,0 +1,84 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."directory" or (buildDepError "directory"))
71+ (hsPkgs."filepath" or (buildDepError "filepath"))
72+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
73+ ];
74+ buildable = true;
75+ modules = [
76+ "GHC/LanguageExtensions"
77+ "GHC/PackageDb"
78+ "GHC/Serialized"
79+ "GHC/ForeignSrcLang"
80+ "GHC/HandleEncoding"
81+ ];
82+ };
83+ };
84+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghc-boot; }
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/ghc.nixnew file+608
@@ -0,0 +1,608 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ stage1 = false;
45+ stage2 = true;
46+ stage3 = false;
47+ terminfo = true;
48+ integer-simple = false;
49+ integer-gmp = false;
50+ };
51+ package = {
52+ specVersion = "1.10";
53+ identifier = { name = "ghc"; version = "8.8.3"; };
54+ license = "BSD-3-Clause";
55+ copyright = "";
56+ maintainer = "glasgow-haskell-users@haskell.org";
57+ author = "The GHC Team";
58+ homepage = "http://www.haskell.org/ghc/";
59+ url = "";
60+ synopsis = "The GHC API";
61+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
62+ buildType = "Simple";
63+ isLocal = true;
64+ detailLevel = "FullDetails";
65+ licenseFiles = [ "LICENSE" ];
66+ dataDir = "";
67+ dataFiles = [];
68+ extraSrcFiles = [
69+ "utils/md5.h"
70+ "Unique.h"
71+ "nativeGen/NCG.h"
72+ "parser/cutils.h"
73+ ];
74+ extraTmpFiles = [];
75+ extraDocFiles = [];
76+ };
77+ components = {
78+ "library" = {
79+ depends = ((([
80+ (hsPkgs."base" or (buildDepError "base"))
81+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
82+ (hsPkgs."directory" or (buildDepError "directory"))
83+ (hsPkgs."process" or (buildDepError "process"))
84+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
85+ (hsPkgs."binary" or (buildDepError "binary"))
86+ (hsPkgs."time" or (buildDepError "time"))
87+ (hsPkgs."containers" or (buildDepError "containers"))
88+ (hsPkgs."array" or (buildDepError "array"))
89+ (hsPkgs."filepath" or (buildDepError "filepath"))
90+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
91+ (hsPkgs."hpc" or (buildDepError "hpc"))
92+ (hsPkgs."transformers" or (buildDepError "transformers"))
93+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
94+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
95+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
96+ (hsPkgs."ghci" or (buildDepError "ghci"))
97+ ] ++ (if system.isWindows
98+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
99+ else [
100+ (hsPkgs."unix" or (buildDepError "unix"))
101+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")))) ++ (pkgs.lib).optional (flags.integer-gmp && flags.integer-simple) (hsPkgs."invalid-cabal-flag-settings" or (buildDepError "invalid-cabal-flag-settings"))) ++ (pkgs.lib).optional (flags.integer-gmp) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp"))) ++ (pkgs.lib).optional (flags.integer-simple) (hsPkgs."integer-simple" or (buildDepError "integer-simple"));
102+ build-tools = [
103+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
104+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
105+ ];
106+ buildable = true;
107+ modules = [
108+ "GhcPrelude"
109+ "HieTypes"
110+ "HieDebug"
111+ "HieBin"
112+ "HieUtils"
113+ "HieAst"
114+ "Ar"
115+ "FileCleanup"
116+ "DriverBkp"
117+ "BkpSyn"
118+ "NameShape"
119+ "RnModIface"
120+ "Avail"
121+ "AsmUtils"
122+ "BasicTypes"
123+ "ConLike"
124+ "DataCon"
125+ "PatSyn"
126+ "Demand"
127+ "Debug"
128+ "Exception"
129+ "FieldLabel"
130+ "GhcMonad"
131+ "Hooks"
132+ "Id"
133+ "IdInfo"
134+ "Lexeme"
135+ "Literal"
136+ "Llvm"
137+ "Llvm/AbsSyn"
138+ "Llvm/MetaData"
139+ "Llvm/PpLlvm"
140+ "Llvm/Types"
141+ "LlvmCodeGen"
142+ "LlvmCodeGen/Base"
143+ "LlvmCodeGen/CodeGen"
144+ "LlvmCodeGen/Data"
145+ "LlvmCodeGen/Ppr"
146+ "LlvmCodeGen/Regs"
147+ "LlvmMangler"
148+ "MkId"
149+ "Module"
150+ "Name"
151+ "NameEnv"
152+ "NameSet"
153+ "OccName"
154+ "RdrName"
155+ "NameCache"
156+ "SrcLoc"
157+ "UniqSupply"
158+ "Unique"
159+ "Var"
160+ "VarEnv"
161+ "VarSet"
162+ "UnVarGraph"
163+ "BlockId"
164+ "CLabel"
165+ "Cmm"
166+ "CmmBuildInfoTables"
167+ "CmmPipeline"
168+ "CmmCallConv"
169+ "CmmCommonBlockElim"
170+ "CmmImplementSwitchPlans"
171+ "CmmContFlowOpt"
172+ "CmmExpr"
173+ "CmmInfo"
174+ "CmmLex"
175+ "CmmLint"
176+ "CmmLive"
177+ "CmmMachOp"
178+ "CmmMonad"
179+ "CmmSwitch"
180+ "CmmNode"
181+ "CmmOpt"
182+ "CmmParse"
183+ "CmmProcPoint"
184+ "CmmSink"
185+ "CmmType"
186+ "CmmUtils"
187+ "CmmLayoutStack"
188+ "EnumSet"
189+ "MkGraph"
190+ "PprBase"
191+ "PprC"
192+ "PprCmm"
193+ "PprCmmDecl"
194+ "PprCmmExpr"
195+ "Bitmap"
196+ "CodeGen/Platform"
197+ "CodeGen/Platform/ARM"
198+ "CodeGen/Platform/ARM64"
199+ "CodeGen/Platform/NoRegs"
200+ "CodeGen/Platform/PPC"
201+ "CodeGen/Platform/SPARC"
202+ "CodeGen/Platform/X86"
203+ "CodeGen/Platform/X86_64"
204+ "CgUtils"
205+ "StgCmm"
206+ "StgCmmBind"
207+ "StgCmmClosure"
208+ "StgCmmCon"
209+ "StgCmmEnv"
210+ "StgCmmExpr"
211+ "StgCmmForeign"
212+ "StgCmmHeap"
213+ "StgCmmHpc"
214+ "StgCmmArgRep"
215+ "StgCmmLayout"
216+ "StgCmmMonad"
217+ "StgCmmPrim"
218+ "StgCmmProf"
219+ "StgCmmTicky"
220+ "StgCmmUtils"
221+ "StgCmmExtCode"
222+ "SMRep"
223+ "CoreArity"
224+ "CoreFVs"
225+ "CoreLint"
226+ "CorePrep"
227+ "CoreSubst"
228+ "CoreOpt"
229+ "CoreSyn"
230+ "TrieMap"
231+ "CoreTidy"
232+ "CoreUnfold"
233+ "CoreUtils"
234+ "CoreMap"
235+ "CoreSeq"
236+ "CoreStats"
237+ "MkCore"
238+ "PprCore"
239+ "PmExpr"
240+ "TmOracle"
241+ "Check"
242+ "Coverage"
243+ "Desugar"
244+ "DsArrows"
245+ "DsBinds"
246+ "DsCCall"
247+ "DsExpr"
248+ "DsForeign"
249+ "DsGRHSs"
250+ "DsListComp"
251+ "DsMonad"
252+ "DsUsage"
253+ "DsUtils"
254+ "ExtractDocs"
255+ "Match"
256+ "MatchCon"
257+ "MatchLit"
258+ "HsBinds"
259+ "HsDecls"
260+ "HsDoc"
261+ "HsExpr"
262+ "HsImpExp"
263+ "HsLit"
264+ "PlaceHolder"
265+ "HsExtension"
266+ "HsInstances"
267+ "HsPat"
268+ "HsSyn"
269+ "HsTypes"
270+ "HsUtils"
271+ "HsDumpAst"
272+ "BinIface"
273+ "BinFingerprint"
274+ "BuildTyCl"
275+ "IfaceEnv"
276+ "IfaceSyn"
277+ "IfaceType"
278+ "ToIface"
279+ "LoadIface"
280+ "MkIface"
281+ "TcIface"
282+ "FlagChecker"
283+ "Annotations"
284+ "CmdLineParser"
285+ "CodeOutput"
286+ "Config"
287+ "Constants"
288+ "DriverMkDepend"
289+ "DriverPhases"
290+ "PipelineMonad"
291+ "DriverPipeline"
292+ "DynFlags"
293+ "ErrUtils"
294+ "Finder"
295+ "GHC"
296+ "GhcMake"
297+ "GhcPlugins"
298+ "DynamicLoading"
299+ "HeaderInfo"
300+ "HscMain"
301+ "HscStats"
302+ "HscTypes"
303+ "InteractiveEval"
304+ "InteractiveEvalTypes"
305+ "PackageConfig"
306+ "Packages"
307+ "PlatformConstants"
308+ "Plugins"
309+ "TcPluginM"
310+ "PprTyThing"
311+ "StaticPtrTable"
312+ "SysTools"
313+ "SysTools/BaseDir"
314+ "SysTools/Terminal"
315+ "SysTools/ExtraObj"
316+ "SysTools/Info"
317+ "SysTools/Process"
318+ "SysTools/Tasks"
319+ "Elf"
320+ "TidyPgm"
321+ "Ctype"
322+ "HaddockUtils"
323+ "Lexer"
324+ "OptCoercion"
325+ "Parser"
326+ "RdrHsSyn"
327+ "ApiAnnotation"
328+ "ForeignCall"
329+ "KnownUniques"
330+ "PrelInfo"
331+ "PrelNames"
332+ "PrelRules"
333+ "PrimOp"
334+ "TysPrim"
335+ "TysWiredIn"
336+ "CostCentre"
337+ "CostCentreState"
338+ "ProfInit"
339+ "RnBinds"
340+ "RnEnv"
341+ "RnExpr"
342+ "RnHsDoc"
343+ "RnNames"
344+ "RnPat"
345+ "RnSource"
346+ "RnSplice"
347+ "RnTypes"
348+ "RnFixity"
349+ "RnUtils"
350+ "RnUnbound"
351+ "CoreMonad"
352+ "CSE"
353+ "FloatIn"
354+ "FloatOut"
355+ "LiberateCase"
356+ "OccurAnal"
357+ "SAT"
358+ "SetLevels"
359+ "SimplCore"
360+ "SimplEnv"
361+ "SimplMonad"
362+ "SimplUtils"
363+ "Simplify"
364+ "SimplStg"
365+ "StgStats"
366+ "StgCse"
367+ "StgLiftLams"
368+ "StgLiftLams/Analysis"
369+ "StgLiftLams/LiftM"
370+ "StgLiftLams/Transformation"
371+ "StgSubst"
372+ "UnariseStg"
373+ "RepType"
374+ "Rules"
375+ "SpecConstr"
376+ "Specialise"
377+ "CoreToStg"
378+ "StgLint"
379+ "StgSyn"
380+ "StgFVs"
381+ "CallArity"
382+ "DmdAnal"
383+ "Exitify"
384+ "WorkWrap"
385+ "WwLib"
386+ "FamInst"
387+ "ClsInst"
388+ "Inst"
389+ "TcAnnotations"
390+ "TcArrows"
391+ "TcBinds"
392+ "TcSigs"
393+ "TcClassDcl"
394+ "TcDefaults"
395+ "TcDeriv"
396+ "TcDerivInfer"
397+ "TcDerivUtils"
398+ "TcEnv"
399+ "TcExpr"
400+ "TcForeign"
401+ "TcGenDeriv"
402+ "TcGenFunctor"
403+ "TcGenGenerics"
404+ "TcHsSyn"
405+ "TcHsType"
406+ "TcInstDcls"
407+ "TcMType"
408+ "TcValidity"
409+ "TcMatches"
410+ "TcPat"
411+ "TcPatSyn"
412+ "TcRnDriver"
413+ "TcBackpack"
414+ "TcRnExports"
415+ "TcRnMonad"
416+ "TcRnTypes"
417+ "TcRules"
418+ "TcSimplify"
419+ "TcHoleErrors"
420+ "TcErrors"
421+ "TcTyClsDecls"
422+ "TcTyDecls"
423+ "TcTypeable"
424+ "TcTypeableValidity"
425+ "TcType"
426+ "TcEvidence"
427+ "TcEvTerm"
428+ "TcUnify"
429+ "TcInteract"
430+ "TcCanonical"
431+ "TcFlatten"
432+ "TcSMonad"
433+ "TcTypeNats"
434+ "TcSplice"
435+ "Class"
436+ "Coercion"
437+ "DsMeta"
438+ "THNames"
439+ "FamInstEnv"
440+ "FunDeps"
441+ "InstEnv"
442+ "TyCon"
443+ "CoAxiom"
444+ "Kind"
445+ "Type"
446+ "TyCoRep"
447+ "Unify"
448+ "Bag"
449+ "Binary"
450+ "BooleanFormula"
451+ "BufWrite"
452+ "Digraph"
453+ "Encoding"
454+ "FastFunctions"
455+ "FastMutInt"
456+ "FastString"
457+ "FastStringEnv"
458+ "Fingerprint"
459+ "FiniteMap"
460+ "FV"
461+ "GraphBase"
462+ "GraphColor"
463+ "GraphOps"
464+ "GraphPpr"
465+ "IOEnv"
466+ "Json"
467+ "ListSetOps"
468+ "ListT"
469+ "Maybes"
470+ "MonadUtils"
471+ "OrdList"
472+ "Outputable"
473+ "Pair"
474+ "Panic"
475+ "PlainPanic"
476+ "PprColour"
477+ "Pretty"
478+ "State"
479+ "Stream"
480+ "StringBuffer"
481+ "UniqDFM"
482+ "UniqDSet"
483+ "UniqFM"
484+ "UniqMap"
485+ "UniqSet"
486+ "Util"
487+ "Hoopl/Block"
488+ "Hoopl/Collections"
489+ "Hoopl/Dataflow"
490+ "Hoopl/Graph"
491+ "Hoopl/Label"
492+ "AsmCodeGen"
493+ "TargetReg"
494+ "NCGMonad"
495+ "Instruction"
496+ "BlockLayout"
497+ "CFG"
498+ "Format"
499+ "Reg"
500+ "RegClass"
501+ "PIC"
502+ "Platform"
503+ "CPrim"
504+ "X86/Regs"
505+ "X86/RegInfo"
506+ "X86/Instr"
507+ "X86/Cond"
508+ "X86/Ppr"
509+ "X86/CodeGen"
510+ "PPC/Regs"
511+ "PPC/RegInfo"
512+ "PPC/Instr"
513+ "PPC/Cond"
514+ "PPC/Ppr"
515+ "PPC/CodeGen"
516+ "SPARC/Base"
517+ "SPARC/Regs"
518+ "SPARC/Imm"
519+ "SPARC/AddrMode"
520+ "SPARC/Cond"
521+ "SPARC/Instr"
522+ "SPARC/Stack"
523+ "SPARC/ShortcutJump"
524+ "SPARC/Ppr"
525+ "SPARC/CodeGen"
526+ "SPARC/CodeGen/Amode"
527+ "SPARC/CodeGen/Base"
528+ "SPARC/CodeGen/CondCode"
529+ "SPARC/CodeGen/Gen32"
530+ "SPARC/CodeGen/Gen64"
531+ "SPARC/CodeGen/Sanity"
532+ "SPARC/CodeGen/Expand"
533+ "RegAlloc/Liveness"
534+ "RegAlloc/Graph/Main"
535+ "RegAlloc/Graph/Stats"
536+ "RegAlloc/Graph/ArchBase"
537+ "RegAlloc/Graph/ArchX86"
538+ "RegAlloc/Graph/Coalesce"
539+ "RegAlloc/Graph/Spill"
540+ "RegAlloc/Graph/SpillClean"
541+ "RegAlloc/Graph/SpillCost"
542+ "RegAlloc/Graph/TrivColorable"
543+ "RegAlloc/Linear/Main"
544+ "RegAlloc/Linear/JoinToTargets"
545+ "RegAlloc/Linear/State"
546+ "RegAlloc/Linear/Stats"
547+ "RegAlloc/Linear/FreeRegs"
548+ "RegAlloc/Linear/StackMap"
549+ "RegAlloc/Linear/Base"
550+ "RegAlloc/Linear/X86/FreeRegs"
551+ "RegAlloc/Linear/X86_64/FreeRegs"
552+ "RegAlloc/Linear/PPC/FreeRegs"
553+ "RegAlloc/Linear/SPARC/FreeRegs"
554+ "Dwarf"
555+ "Dwarf/Types"
556+ "Dwarf/Constants"
557+ "Convert"
558+ "ByteCodeTypes"
559+ "ByteCodeAsm"
560+ "ByteCodeGen"
561+ "ByteCodeInstr"
562+ "ByteCodeItbls"
563+ "ByteCodeLink"
564+ "Debugger"
565+ "Linker"
566+ "RtClosureInspect"
567+ "GHCi"
568+ ];
569+ cSources = [
570+ "parser/cutils.c"
571+ "ghci/keepCAFsForGHCi.c"
572+ "cbits/genSym.c"
573+ ];
574+ hsSourceDirs = [
575+ "backpack"
576+ "basicTypes"
577+ "cmm"
578+ "codeGen"
579+ "coreSyn"
580+ "deSugar"
581+ "ghci"
582+ "hsSyn"
583+ "iface"
584+ "llvmGen"
585+ "main"
586+ "nativeGen"
587+ "parser"
588+ "prelude"
589+ "profiling"
590+ "rename"
591+ "simplCore"
592+ "simplStg"
593+ "specialise"
594+ "stgSyn"
595+ "stranal"
596+ "typecheck"
597+ "types"
598+ "utils"
599+ "hieFile"
600+ ];
601+ includeDirs = [
602+ "."
603+ "parser"
604+ "utils"
605+ ] ++ (pkgs.lib).optional (flags.ghci) "../rts/dist/build";
606+ };
607+ };
608+ } // rec { src = (pkgs.lib).mkDefault ../compiler; }
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/ghci.nixnew file+101
@@ -0,0 +1,101 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."array" or (buildDepError "array"))
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."binary" or (buildDepError "binary"))
70+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
71+ (hsPkgs."containers" or (buildDepError "containers"))
72+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
73+ (hsPkgs."filepath" or (buildDepError "filepath"))
74+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
75+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
76+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
77+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
78+ (hsPkgs."transformers" or (buildDepError "transformers"))
79+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
80+ buildable = true;
81+ modules = [
82+ "GHCi/BreakArray"
83+ "GHCi/BinaryArray"
84+ "GHCi/Message"
85+ "GHCi/ResolvedBCO"
86+ "GHCi/RemoteTypes"
87+ "GHCi/FFI"
88+ "GHCi/InfoTable"
89+ "GHCi/StaticPtrTable"
90+ "GHCi/TH/Binary"
91+ "SizedSeq"
92+ ] ++ (pkgs.lib).optionals (flags.ghci) [
93+ "GHCi/Run"
94+ "GHCi/CreateBCO"
95+ "GHCi/ObjLink"
96+ "GHCi/Signals"
97+ "GHCi/TH"
98+ ];
99+ };
100+ };
101+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghci; }
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/iserv-proxy.nixnew file+86
@@ -0,0 +1,86 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv-proxy" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."directory" or (buildDepError "directory"))
75+ (hsPkgs."network" or (buildDepError "network"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ (hsPkgs."ghci" or (buildDepError "ghci"))
78+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
79+ ];
80+ buildable = true;
81+ hsSourceDirs = [ "src" ];
82+ mainPath = [ "Main.hs" ];
83+ };
84+ };
85+ };
86+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv-proxy; }
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/iserv.nixnew file+85
@@ -0,0 +1,85 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Template Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."ghci" or (buildDepError "ghci"))
75+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
76+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
77+ buildable = true;
78+ cSources = [ "cbits/iservmain.c" ];
79+ hsSourceDirs = [ "src" ];
80+ includeDirs = [ "." ];
81+ mainPath = [ "Main.hs" ] ++ [ "" ];
82+ };
83+ };
84+ };
85+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv; }
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/libiserv.nixnew file+89
@@ -0,0 +1,89 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."containers" or (buildDepError "containers"))
71+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
72+ (hsPkgs."ghci" or (buildDepError "ghci"))
73+ ] ++ (pkgs.lib).optionals (flags.network) [
74+ (hsPkgs."network" or (buildDepError "network"))
75+ (hsPkgs."directory" or (buildDepError "directory"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
78+ buildable = true;
79+ modules = [
80+ "Lib"
81+ "GHCi/Utils"
82+ ] ++ (pkgs.lib).optionals (flags.network) [
83+ "Remote/Message"
84+ "Remote/Slave"
85+ ];
86+ hsSourceDirs = [ "src" ];
87+ };
88+ };
89+ } // rec { src = (pkgs.lib).mkDefault ../libraries/libiserv; }
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/remote-iserv.nixnew file+77
@@ -0,0 +1,77 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "remote-iserv" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
70+ ];
71+ buildable = true;
72+ hsSourceDirs = [ "src" ];
73+ mainPath = [ "Cli.hs" ];
74+ };
75+ };
76+ };
77+ } // rec { src = (pkgs.lib).mkDefault ../utils/remote-iserv; }
materialized/ghc-extra-projects/cross/ghc883/default.nixnew file+94
@@ -0,0 +1,94 @@
1+{
2+ pkgs = hackage:
3+ {
4+ packages = {
5+ "binary".revision = (((hackage."binary")."0.8.8.0").revisions).default;
6+ "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
7+ "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
8+ "ghc-heap".revision = (((hackage."ghc-heap")."8.8.3").revisions).default;
9+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
10+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
11+ "alex".revision = (((hackage."alex")."3.2.5").revisions).default;
12+ "alex".flags.small_base = true;
13+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
14+ "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
15+ "directory".revision = (((hackage."directory")."1.3.6.1").revisions).default;
16+ "template-haskell".revision = (((hackage."template-haskell")."2.15.0.0").revisions).default;
17+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
18+ "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
19+ "time".revision = (((hackage."time")."1.9.3").revisions).default;
20+ "terminfo".revision = (((hackage."terminfo")."0.4.1.4").revisions).default;
21+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
22+ "happy".revision = (((hackage."happy")."1.19.12").revisions).default;
23+ "happy".flags.small_base = true;
24+ "hpc".revision = (((hackage."hpc")."0.6.0.3").revisions).default;
25+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
26+ "process".revision = (((hackage."process")."1.6.8.2").revisions).default;
27+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
28+ "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.8.3").revisions).default;
29+ "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
30+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
31+ };
32+ compiler = {
33+ version = "8.8.3";
34+ nix-name = "ghc883";
35+ packages = {
36+ "ghc-prim" = "0.5.3";
37+ "ghc-heap" = "8.8.3";
38+ "mtl" = "2.2.2";
39+ "rts" = "1.0";
40+ "deepseq" = "1.4.4.0";
41+ "template-haskell" = "2.15.0.0";
42+ "containers" = "0.6.2.1";
43+ "base" = "4.13.0.0";
44+ "time" = "1.9.3";
45+ "transformers" = "0.5.6.2";
46+ "filepath" = "1.4.2.1";
47+ "pretty" = "1.1.3.6";
48+ "ghc-boot-th" = "8.8.3";
49+ "array" = "0.5.4.0";
50+ "integer-gmp" = "1.0.2.0";
51+ };
52+ };
53+ };
54+ extras = hackage:
55+ {
56+ packages = {
57+ ghc = ./.plan.nix/ghc.nix;
58+ bytestring = ./.plan.nix/bytestring.nix;
59+ remote-iserv = ./.plan.nix/remote-iserv.nix;
60+ iserv-proxy = ./.plan.nix/iserv-proxy.nix;
61+ libiserv = ./.plan.nix/libiserv.nix;
62+ ghc-boot = ./.plan.nix/ghc-boot.nix;
63+ ghci = ./.plan.nix/ghci.nix;
64+ iserv = ./.plan.nix/iserv.nix;
65+ };
66+ };
67+ modules = [
68+ ({ lib, ... }:
69+ {
70+ packages = {
71+ "ghc" = {
72+ flags = {
73+ "stage1" = lib.mkOverride 900 false;
74+ "stage2" = lib.mkOverride 900 true;
75+ "integer-gmp" = lib.mkOverride 900 false;
76+ "stage3" = lib.mkOverride 900 false;
77+ "ghci" = lib.mkOverride 900 true;
78+ "integer-simple" = lib.mkOverride 900 false;
79+ "terminfo" = lib.mkOverride 900 true;
80+ };
81+ };
82+ "bytestring" = {
83+ flags = { "integer-simple" = lib.mkOverride 900 false; };
84+ };
85+ "remote-iserv" = { flags = {}; };
86+ "iserv-proxy" = { flags = {}; };
87+ "libiserv" = { flags = { "network" = lib.mkOverride 900 true; }; };
88+ "ghc-boot" = { flags = {}; };
89+ "ghci" = { flags = { "ghci" = lib.mkOverride 900 true; }; };
90+ "iserv" = { flags = {}; };
91+ };
92+ })
93+ ];
94+ }
materialized/ghc-extra-projects/default/ghc865/.plan.nix/bytestring.nixnew file+167
@@ -0,0 +1,167 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "README.md" "Changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
69+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
70+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
71+ buildable = true;
72+ modules = [
73+ "Data/ByteString/Builder/ASCII"
74+ "Data/ByteString/Builder/Prim/Binary"
75+ "Data/ByteString/Builder/Prim/ASCII"
76+ "Data/ByteString/Builder/Prim/Internal/Floating"
77+ "Data/ByteString/Builder/Prim/Internal/UncheckedShifts"
78+ "Data/ByteString/Builder/Prim/Internal/Base16"
79+ "Data/ByteString"
80+ "Data/ByteString/Char8"
81+ "Data/ByteString/Unsafe"
82+ "Data/ByteString/Internal"
83+ "Data/ByteString/Lazy"
84+ "Data/ByteString/Lazy/Char8"
85+ "Data/ByteString/Lazy/Internal"
86+ "Data/ByteString/Short"
87+ "Data/ByteString/Short/Internal"
88+ "Data/ByteString/Builder"
89+ "Data/ByteString/Builder/Extra"
90+ "Data/ByteString/Builder/Prim"
91+ "Data/ByteString/Builder/Internal"
92+ "Data/ByteString/Builder/Prim/Internal"
93+ "Data/ByteString/Lazy/Builder"
94+ "Data/ByteString/Lazy/Builder/Extras"
95+ "Data/ByteString/Lazy/Builder/ASCII"
96+ ];
97+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
98+ includeDirs = [ "include" ];
99+ includes = [ "fpstring.h" ];
100+ };
101+ tests = {
102+ "prop-compiled" = {
103+ depends = [
104+ (hsPkgs."base" or (buildDepError "base"))
105+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
106+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
107+ (hsPkgs."random" or (buildDepError "random"))
108+ (hsPkgs."directory" or (buildDepError "directory"))
109+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
110+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
111+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
112+ ];
113+ buildable = true;
114+ modules = [ "Rules" "QuickCheckUtils" "TestFramework" ];
115+ cSources = [ "cbits/fpstring.c" ];
116+ hsSourceDirs = [ "." "tests" ];
117+ includeDirs = [ "include" ];
118+ mainPath = [ "Properties.hs" ];
119+ };
120+ "regressions" = {
121+ depends = [
122+ (hsPkgs."base" or (buildDepError "base"))
123+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
124+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
125+ (hsPkgs."random" or (buildDepError "random"))
126+ (hsPkgs."directory" or (buildDepError "directory"))
127+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
128+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
129+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
130+ ];
131+ buildable = false;
132+ cSources = [ "cbits/fpstring.c" ];
133+ hsSourceDirs = [ "." "tests" ];
134+ includeDirs = [ "include" ];
135+ mainPath = [ "Regressions.hs" ];
136+ };
137+ "test-builder" = {
138+ depends = [
139+ (hsPkgs."base" or (buildDepError "base"))
140+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
141+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
142+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
143+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
144+ (hsPkgs."dlist" or (buildDepError "dlist"))
145+ (hsPkgs."directory" or (buildDepError "directory"))
146+ (hsPkgs."mtl" or (buildDepError "mtl"))
147+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
148+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
149+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
150+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
151+ ];
152+ buildable = true;
153+ modules = [
154+ "Data/ByteString/Builder/Tests"
155+ "Data/ByteString/Builder/Prim/Tests"
156+ "Data/ByteString/Builder/Prim/TestUtils"
157+ "TestFramework"
158+ ];
159+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
160+ hsSourceDirs = [ "." "tests" "tests/builder" ];
161+ includeDirs = [ "include" ];
162+ includes = [ "fpstring.h" ];
163+ mainPath = [ "TestSuite.hs" ];
164+ };
165+ };
166+ };
167+ } // rec { src = (pkgs.lib).mkDefault ../libraries/bytestring; }
materialized/ghc-extra-projects/default/ghc865/.plan.nix/ghc-boot.nixnew file+84
@@ -0,0 +1,84 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."directory" or (buildDepError "directory"))
71+ (hsPkgs."filepath" or (buildDepError "filepath"))
72+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
73+ ];
74+ buildable = true;
75+ modules = [
76+ "GHC/LanguageExtensions"
77+ "GHC/PackageDb"
78+ "GHC/Serialized"
79+ "GHC/ForeignSrcLang"
80+ "GHC/HandleEncoding"
81+ ];
82+ };
83+ };
84+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghc-boot; }
materialized/ghc-extra-projects/default/ghc865/.plan.nix/ghc.nixnew file+590
@@ -0,0 +1,590 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ terminfo = true;
45+ stage1 = false;
46+ stage2 = true;
47+ stage3 = false;
48+ };
49+ package = {
50+ specVersion = "1.10";
51+ identifier = { name = "ghc"; version = "8.6.5"; };
52+ license = "BSD-3-Clause";
53+ copyright = "";
54+ maintainer = "glasgow-haskell-users@haskell.org";
55+ author = "The GHC Team";
56+ homepage = "http://www.haskell.org/ghc/";
57+ url = "";
58+ synopsis = "The GHC API";
59+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
60+ buildType = "Simple";
61+ isLocal = true;
62+ detailLevel = "FullDetails";
63+ licenseFiles = [ "LICENSE" ];
64+ dataDir = "";
65+ dataFiles = [];
66+ extraSrcFiles = [
67+ "utils/md5.h"
68+ "Unique.h"
69+ "nativeGen/NCG.h"
70+ "parser/cutils.h"
71+ ];
72+ extraTmpFiles = [];
73+ extraDocFiles = [];
74+ };
75+ components = {
76+ "library" = {
77+ depends = [
78+ (hsPkgs."base" or (buildDepError "base"))
79+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
80+ (hsPkgs."directory" or (buildDepError "directory"))
81+ (hsPkgs."process" or (buildDepError "process"))
82+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
83+ (hsPkgs."binary" or (buildDepError "binary"))
84+ (hsPkgs."time" or (buildDepError "time"))
85+ (hsPkgs."containers" or (buildDepError "containers"))
86+ (hsPkgs."array" or (buildDepError "array"))
87+ (hsPkgs."filepath" or (buildDepError "filepath"))
88+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
89+ (hsPkgs."hpc" or (buildDepError "hpc"))
90+ (hsPkgs."transformers" or (buildDepError "transformers"))
91+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
92+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
93+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
94+ (hsPkgs."ghci" or (buildDepError "ghci"))
95+ ] ++ (if system.isWindows
96+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
97+ else [
98+ (hsPkgs."unix" or (buildDepError "unix"))
99+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")));
100+ build-tools = [
101+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
102+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
103+ ];
104+ buildable = true;
105+ modules = [
106+ "GhcPrelude"
107+ "Ar"
108+ "FileCleanup"
109+ "DriverBkp"
110+ "BkpSyn"
111+ "NameShape"
112+ "RnModIface"
113+ "Avail"
114+ "AsmUtils"
115+ "BasicTypes"
116+ "ConLike"
117+ "DataCon"
118+ "PatSyn"
119+ "Demand"
120+ "Debug"
121+ "Exception"
122+ "FieldLabel"
123+ "GhcMonad"
124+ "Hooks"
125+ "Id"
126+ "IdInfo"
127+ "Lexeme"
128+ "Literal"
129+ "Llvm"
130+ "Llvm/AbsSyn"
131+ "Llvm/MetaData"
132+ "Llvm/PpLlvm"
133+ "Llvm/Types"
134+ "LlvmCodeGen"
135+ "LlvmCodeGen/Base"
136+ "LlvmCodeGen/CodeGen"
137+ "LlvmCodeGen/Data"
138+ "LlvmCodeGen/Ppr"
139+ "LlvmCodeGen/Regs"
140+ "LlvmMangler"
141+ "MkId"
142+ "Module"
143+ "Name"
144+ "NameEnv"
145+ "NameSet"
146+ "OccName"
147+ "RdrName"
148+ "NameCache"
149+ "SrcLoc"
150+ "UniqSupply"
151+ "Unique"
152+ "Var"
153+ "VarEnv"
154+ "VarSet"
155+ "UnVarGraph"
156+ "BlockId"
157+ "CLabel"
158+ "Cmm"
159+ "CmmBuildInfoTables"
160+ "CmmPipeline"
161+ "CmmCallConv"
162+ "CmmCommonBlockElim"
163+ "CmmImplementSwitchPlans"
164+ "CmmContFlowOpt"
165+ "CmmExpr"
166+ "CmmInfo"
167+ "CmmLex"
168+ "CmmLint"
169+ "CmmLive"
170+ "CmmMachOp"
171+ "CmmMonad"
172+ "CmmSwitch"
173+ "CmmNode"
174+ "CmmOpt"
175+ "CmmParse"
176+ "CmmProcPoint"
177+ "CmmSink"
178+ "CmmType"
179+ "CmmUtils"
180+ "CmmLayoutStack"
181+ "EnumSet"
182+ "MkGraph"
183+ "PprBase"
184+ "PprC"
185+ "PprCmm"
186+ "PprCmmDecl"
187+ "PprCmmExpr"
188+ "Bitmap"
189+ "CodeGen/Platform"
190+ "CodeGen/Platform/ARM"
191+ "CodeGen/Platform/ARM64"
192+ "CodeGen/Platform/NoRegs"
193+ "CodeGen/Platform/PPC"
194+ "CodeGen/Platform/PPC_Darwin"
195+ "CodeGen/Platform/SPARC"
196+ "CodeGen/Platform/X86"
197+ "CodeGen/Platform/X86_64"
198+ "CgUtils"
199+ "StgCmm"
200+ "StgCmmBind"
201+ "StgCmmClosure"
202+ "StgCmmCon"
203+ "StgCmmEnv"
204+ "StgCmmExpr"
205+ "StgCmmForeign"
206+ "StgCmmHeap"
207+ "StgCmmHpc"
208+ "StgCmmArgRep"
209+ "StgCmmLayout"
210+ "StgCmmMonad"
211+ "StgCmmPrim"
212+ "StgCmmProf"
213+ "StgCmmTicky"
214+ "StgCmmUtils"
215+ "StgCmmExtCode"
216+ "SMRep"
217+ "CoreArity"
218+ "CoreFVs"
219+ "CoreLint"
220+ "CorePrep"
221+ "CoreSubst"
222+ "CoreOpt"
223+ "CoreSyn"
224+ "TrieMap"
225+ "CoreTidy"
226+ "CoreUnfold"
227+ "CoreUtils"
228+ "CoreMap"
229+ "CoreSeq"
230+ "CoreStats"
231+ "MkCore"
232+ "PprCore"
233+ "PmExpr"
234+ "TmOracle"
235+ "Check"
236+ "Coverage"
237+ "Desugar"
238+ "DsArrows"
239+ "DsBinds"
240+ "DsCCall"
241+ "DsExpr"
242+ "DsForeign"
243+ "DsGRHSs"
244+ "DsListComp"
245+ "DsMonad"
246+ "DsUsage"
247+ "DsUtils"
248+ "ExtractDocs"
249+ "Match"
250+ "MatchCon"
251+ "MatchLit"
252+ "HsBinds"
253+ "HsDecls"
254+ "HsDoc"
255+ "HsExpr"
256+ "HsImpExp"
257+ "HsLit"
258+ "PlaceHolder"
259+ "HsExtension"
260+ "HsInstances"
261+ "HsPat"
262+ "HsSyn"
263+ "HsTypes"
264+ "HsUtils"
265+ "HsDumpAst"
266+ "BinIface"
267+ "BinFingerprint"
268+ "BuildTyCl"
269+ "IfaceEnv"
270+ "IfaceSyn"
271+ "IfaceType"
272+ "ToIface"
273+ "LoadIface"
274+ "MkIface"
275+ "TcIface"
276+ "FlagChecker"
277+ "Annotations"
278+ "CmdLineParser"
279+ "CodeOutput"
280+ "Config"
281+ "Constants"
282+ "DriverMkDepend"
283+ "DriverPhases"
284+ "PipelineMonad"
285+ "DriverPipeline"
286+ "DynFlags"
287+ "ErrUtils"
288+ "Finder"
289+ "GHC"
290+ "GhcMake"
291+ "GhcPlugins"
292+ "DynamicLoading"
293+ "HeaderInfo"
294+ "HscMain"
295+ "HscStats"
296+ "HscTypes"
297+ "InteractiveEval"
298+ "InteractiveEvalTypes"
299+ "PackageConfig"
300+ "Packages"
301+ "PlatformConstants"
302+ "Plugins"
303+ "TcPluginM"
304+ "PprTyThing"
305+ "StaticPtrTable"
306+ "SysTools"
307+ "SysTools/BaseDir"
308+ "SysTools/Terminal"
309+ "SysTools/ExtraObj"
310+ "SysTools/Info"
311+ "SysTools/Process"
312+ "SysTools/Tasks"
313+ "Elf"
314+ "TidyPgm"
315+ "Ctype"
316+ "HaddockUtils"
317+ "Lexer"
318+ "OptCoercion"
319+ "Parser"
320+ "RdrHsSyn"
321+ "ApiAnnotation"
322+ "ForeignCall"
323+ "KnownUniques"
324+ "PrelInfo"
325+ "PrelNames"
326+ "PrelRules"
327+ "PrimOp"
328+ "TysPrim"
329+ "TysWiredIn"
330+ "CostCentre"
331+ "CostCentreState"
332+ "ProfInit"
333+ "RnBinds"
334+ "RnEnv"
335+ "RnExpr"
336+ "RnHsDoc"
337+ "RnNames"
338+ "RnPat"
339+ "RnSource"
340+ "RnSplice"
341+ "RnTypes"
342+ "RnFixity"
343+ "RnUtils"
344+ "RnUnbound"
345+ "CoreMonad"
346+ "CSE"
347+ "FloatIn"
348+ "FloatOut"
349+ "LiberateCase"
350+ "OccurAnal"
351+ "SAT"
352+ "SetLevels"
353+ "SimplCore"
354+ "SimplEnv"
355+ "SimplMonad"
356+ "SimplUtils"
357+ "Simplify"
358+ "SimplStg"
359+ "StgStats"
360+ "StgCse"
361+ "UnariseStg"
362+ "RepType"
363+ "Rules"
364+ "SpecConstr"
365+ "Specialise"
366+ "CoreToStg"
367+ "StgLint"
368+ "StgSyn"
369+ "CallArity"
370+ "DmdAnal"
371+ "Exitify"
372+ "WorkWrap"
373+ "WwLib"
374+ "FamInst"
375+ "Inst"
376+ "TcAnnotations"
377+ "TcArrows"
378+ "TcBinds"
379+ "TcSigs"
380+ "TcClassDcl"
381+ "TcDefaults"
382+ "TcDeriv"
383+ "TcDerivInfer"
384+ "TcDerivUtils"
385+ "TcEnv"
386+ "TcExpr"
387+ "TcForeign"
388+ "TcGenDeriv"
389+ "TcGenFunctor"
390+ "TcGenGenerics"
391+ "TcHsSyn"
392+ "TcHsType"
393+ "TcInstDcls"
394+ "TcMType"
395+ "TcValidity"
396+ "TcMatches"
397+ "TcPat"
398+ "TcPatSyn"
399+ "TcRnDriver"
400+ "TcBackpack"
401+ "TcRnExports"
402+ "TcRnMonad"
403+ "TcRnTypes"
404+ "TcRules"
405+ "TcSimplify"
406+ "TcHoleErrors"
407+ "TcErrors"
408+ "TcTyClsDecls"
409+ "TcTyDecls"
410+ "TcTypeable"
411+ "TcType"
412+ "TcEvidence"
413+ "TcEvTerm"
414+ "TcUnify"
415+ "TcInteract"
416+ "TcCanonical"
417+ "TcFlatten"
418+ "TcSMonad"
419+ "TcTypeNats"
420+ "TcSplice"
421+ "Class"
422+ "Coercion"
423+ "DsMeta"
424+ "THNames"
425+ "FamInstEnv"
426+ "FunDeps"
427+ "InstEnv"
428+ "TyCon"
429+ "CoAxiom"
430+ "Kind"
431+ "Type"
432+ "TyCoRep"
433+ "Unify"
434+ "Bag"
435+ "Binary"
436+ "BooleanFormula"
437+ "BufWrite"
438+ "Digraph"
439+ "Encoding"
440+ "FastFunctions"
441+ "FastMutInt"
442+ "FastString"
443+ "FastStringEnv"
444+ "Fingerprint"
445+ "FiniteMap"
446+ "FV"
447+ "GraphBase"
448+ "GraphColor"
449+ "GraphOps"
450+ "GraphPpr"
451+ "IOEnv"
452+ "Json"
453+ "ListSetOps"
454+ "ListT"
455+ "Maybes"
456+ "MonadUtils"
457+ "OrdList"
458+ "Outputable"
459+ "Pair"
460+ "Panic"
461+ "PprColour"
462+ "Pretty"
463+ "State"
464+ "Stream"
465+ "StringBuffer"
466+ "UniqDFM"
467+ "UniqDSet"
468+ "UniqFM"
469+ "UniqMap"
470+ "UniqSet"
471+ "Util"
472+ "Hoopl/Block"
473+ "Hoopl/Collections"
474+ "Hoopl/Dataflow"
475+ "Hoopl/Graph"
476+ "Hoopl/Label"
477+ "AsmCodeGen"
478+ "TargetReg"
479+ "NCGMonad"
480+ "Instruction"
481+ "Format"
482+ "Reg"
483+ "RegClass"
484+ "PIC"
485+ "Platform"
486+ "CPrim"
487+ "X86/Regs"
488+ "X86/RegInfo"
489+ "X86/Instr"
490+ "X86/Cond"
491+ "X86/Ppr"
492+ "X86/CodeGen"
493+ "PPC/Regs"
494+ "PPC/RegInfo"
495+ "PPC/Instr"
496+ "PPC/Cond"
497+ "PPC/Ppr"
498+ "PPC/CodeGen"
499+ "SPARC/Base"
500+ "SPARC/Regs"
501+ "SPARC/Imm"
502+ "SPARC/AddrMode"
503+ "SPARC/Cond"
504+ "SPARC/Instr"
505+ "SPARC/Stack"
506+ "SPARC/ShortcutJump"
507+ "SPARC/Ppr"
508+ "SPARC/CodeGen"
509+ "SPARC/CodeGen/Amode"
510+ "SPARC/CodeGen/Base"
511+ "SPARC/CodeGen/CondCode"
512+ "SPARC/CodeGen/Gen32"
513+ "SPARC/CodeGen/Gen64"
514+ "SPARC/CodeGen/Sanity"
515+ "SPARC/CodeGen/Expand"
516+ "RegAlloc/Liveness"
517+ "RegAlloc/Graph/Main"
518+ "RegAlloc/Graph/Stats"
519+ "RegAlloc/Graph/ArchBase"
520+ "RegAlloc/Graph/ArchX86"
521+ "RegAlloc/Graph/Coalesce"
522+ "RegAlloc/Graph/Spill"
523+ "RegAlloc/Graph/SpillClean"
524+ "RegAlloc/Graph/SpillCost"
525+ "RegAlloc/Graph/TrivColorable"
526+ "RegAlloc/Linear/Main"
527+ "RegAlloc/Linear/JoinToTargets"
528+ "RegAlloc/Linear/State"
529+ "RegAlloc/Linear/Stats"
530+ "RegAlloc/Linear/FreeRegs"
531+ "RegAlloc/Linear/StackMap"
532+ "RegAlloc/Linear/Base"
533+ "RegAlloc/Linear/X86/FreeRegs"
534+ "RegAlloc/Linear/X86_64/FreeRegs"
535+ "RegAlloc/Linear/PPC/FreeRegs"
536+ "RegAlloc/Linear/SPARC/FreeRegs"
537+ "Dwarf"
538+ "Dwarf/Types"
539+ "Dwarf/Constants"
540+ "Convert"
541+ "ByteCodeTypes"
542+ "ByteCodeAsm"
543+ "ByteCodeGen"
544+ "ByteCodeInstr"
545+ "ByteCodeItbls"
546+ "ByteCodeLink"
547+ "Debugger"
548+ "Linker"
549+ "RtClosureInspect"
550+ "GHCi"
551+ ];
552+ cSources = [
553+ "parser/cutils.c"
554+ "ghci/keepCAFsForGHCi.c"
555+ "cbits/genSym.c"
556+ ];
557+ hsSourceDirs = [
558+ "backpack"
559+ "basicTypes"
560+ "cmm"
561+ "codeGen"
562+ "coreSyn"
563+ "deSugar"
564+ "ghci"
565+ "hsSyn"
566+ "iface"
567+ "llvmGen"
568+ "main"
569+ "nativeGen"
570+ "parser"
571+ "prelude"
572+ "profiling"
573+ "rename"
574+ "simplCore"
575+ "simplStg"
576+ "specialise"
577+ "stgSyn"
578+ "stranal"
579+ "typecheck"
580+ "types"
581+ "utils"
582+ ];
583+ includeDirs = [
584+ "."
585+ "parser"
586+ "utils"
587+ ] ++ (pkgs.lib).optional (flags.ghci) "../rts/dist/build";
588+ };
589+ };
590+ } // rec { src = (pkgs.lib).mkDefault ../compiler; }
materialized/ghc-extra-projects/default/ghc865/.plan.nix/ghci.nixnew file+101
@@ -0,0 +1,101 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."array" or (buildDepError "array"))
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."binary" or (buildDepError "binary"))
70+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
71+ (hsPkgs."containers" or (buildDepError "containers"))
72+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
73+ (hsPkgs."filepath" or (buildDepError "filepath"))
74+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
75+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
76+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
77+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
78+ (hsPkgs."transformers" or (buildDepError "transformers"))
79+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
80+ buildable = true;
81+ modules = [
82+ "GHCi/BreakArray"
83+ "GHCi/BinaryArray"
84+ "GHCi/Message"
85+ "GHCi/ResolvedBCO"
86+ "GHCi/RemoteTypes"
87+ "GHCi/FFI"
88+ "GHCi/InfoTable"
89+ "GHCi/StaticPtrTable"
90+ "GHCi/TH/Binary"
91+ "SizedSeq"
92+ ] ++ (pkgs.lib).optionals (flags.ghci) [
93+ "GHCi/Run"
94+ "GHCi/CreateBCO"
95+ "GHCi/ObjLink"
96+ "GHCi/Signals"
97+ "GHCi/TH"
98+ ];
99+ };
100+ };
101+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghci; }
materialized/ghc-extra-projects/default/ghc865/.plan.nix/iserv-proxy.nixnew file+86
@@ -0,0 +1,86 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv-proxy" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."directory" or (buildDepError "directory"))
75+ (hsPkgs."network" or (buildDepError "network"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ (hsPkgs."ghci" or (buildDepError "ghci"))
78+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
79+ ];
80+ buildable = true;
81+ hsSourceDirs = [ "src" ];
82+ mainPath = [ "Main.hs" ];
83+ };
84+ };
85+ };
86+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv-proxy; }
materialized/ghc-extra-projects/default/ghc865/.plan.nix/iserv.nixnew file+85
@@ -0,0 +1,85 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."ghci" or (buildDepError "ghci"))
75+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
76+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
77+ buildable = true;
78+ cSources = [ "cbits/iservmain.c" ];
79+ hsSourceDirs = [ "src" ];
80+ includeDirs = [ "." ];
81+ mainPath = [ "Main.hs" ] ++ [ "" ];
82+ };
83+ };
84+ };
85+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv; }
materialized/ghc-extra-projects/default/ghc865/.plan.nix/libiserv.nixnew file+89
@@ -0,0 +1,89 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."containers" or (buildDepError "containers"))
71+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
72+ (hsPkgs."ghci" or (buildDepError "ghci"))
73+ ] ++ (pkgs.lib).optionals (flags.network) [
74+ (hsPkgs."network" or (buildDepError "network"))
75+ (hsPkgs."directory" or (buildDepError "directory"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
78+ buildable = true;
79+ modules = [
80+ "Lib"
81+ "GHCi/Utils"
82+ ] ++ (pkgs.lib).optionals (flags.network) [
83+ "Remote/Message"
84+ "Remote/Slave"
85+ ];
86+ hsSourceDirs = [ "src" ];
87+ };
88+ };
89+ } // rec { src = (pkgs.lib).mkDefault ../libraries/libiserv; }
materialized/ghc-extra-projects/default/ghc865/.plan.nix/remote-iserv.nixnew file+77
@@ -0,0 +1,77 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "remote-iserv" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
70+ ];
71+ buildable = true;
72+ hsSourceDirs = [ "src" ];
73+ mainPath = [ "Cli.hs" ];
74+ };
75+ };
76+ };
77+ } // rec { src = (pkgs.lib).mkDefault ../utils/remote-iserv; }
materialized/ghc-extra-projects/default/ghc865/default.nixnew file+93
@@ -0,0 +1,93 @@
1+{
2+ pkgs = hackage:
3+ {
4+ packages = {
5+ "binary".revision = (((hackage."binary")."0.8.8.0").revisions).default;
6+ "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
7+ "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
8+ "ghc-heap".revision = (((hackage."ghc-heap")."8.6.5").revisions).default;
9+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
10+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
11+ "alex".revision = (((hackage."alex")."3.2.5").revisions).default;
12+ "alex".flags.small_base = true;
13+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
14+ "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
15+ "directory".revision = (((hackage."directory")."1.3.6.1").revisions).default;
16+ "template-haskell".revision = (((hackage."template-haskell")."2.14.0.0").revisions).default;
17+ "containers".revision = (((hackage."containers")."0.6.0.1").revisions).default;
18+ "base".revision = (((hackage."base")."4.12.0.0").revisions).default;
19+ "time".revision = (((hackage."time")."1.8.0.2").revisions).default;
20+ "terminfo".revision = (((hackage."terminfo")."0.4.1.2").revisions).default;
21+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
22+ "happy".revision = (((hackage."happy")."1.19.12").revisions).default;
23+ "happy".flags.small_base = true;
24+ "hpc".revision = (((hackage."hpc")."0.6.0.3").revisions).default;
25+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
26+ "process".revision = (((hackage."process")."1.6.8.2").revisions).default;
27+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
28+ "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.6.5").revisions).default;
29+ "array".revision = (((hackage."array")."0.5.3.0").revisions).default;
30+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
31+ };
32+ compiler = {
33+ version = "8.6.5";
34+ nix-name = "ghc865";
35+ packages = {
36+ "ghc-prim" = "0.5.3";
37+ "ghc-heap" = "8.6.5";
38+ "mtl" = "2.2.2";
39+ "rts" = "1.0";
40+ "deepseq" = "1.4.4.0";
41+ "template-haskell" = "2.14.0.0";
42+ "containers" = "0.6.0.1";
43+ "base" = "4.12.0.0";
44+ "time" = "1.8.0.2";
45+ "terminfo" = "0.4.1.2";
46+ "transformers" = "0.5.6.2";
47+ "filepath" = "1.4.2.1";
48+ "pretty" = "1.1.3.6";
49+ "ghc-boot-th" = "8.6.5";
50+ "array" = "0.5.3.0";
51+ "integer-gmp" = "1.0.2.0";
52+ };
53+ };
54+ };
55+ extras = hackage:
56+ {
57+ packages = {
58+ ghc = ./.plan.nix/ghc.nix;
59+ bytestring = ./.plan.nix/bytestring.nix;
60+ remote-iserv = ./.plan.nix/remote-iserv.nix;
61+ iserv-proxy = ./.plan.nix/iserv-proxy.nix;
62+ libiserv = ./.plan.nix/libiserv.nix;
63+ ghc-boot = ./.plan.nix/ghc-boot.nix;
64+ ghci = ./.plan.nix/ghci.nix;
65+ iserv = ./.plan.nix/iserv.nix;
66+ };
67+ };
68+ modules = [
69+ ({ lib, ... }:
70+ {
71+ packages = {
72+ "ghc" = {
73+ flags = {
74+ "stage1" = lib.mkOverride 900 false;
75+ "stage2" = lib.mkOverride 900 true;
76+ "stage3" = lib.mkOverride 900 false;
77+ "ghci" = lib.mkOverride 900 true;
78+ "terminfo" = lib.mkOverride 900 true;
79+ };
80+ };
81+ "bytestring" = {
82+ flags = { "integer-simple" = lib.mkOverride 900 false; };
83+ };
84+ "remote-iserv" = { flags = {}; };
85+ "iserv-proxy" = { flags = {}; };
86+ "libiserv" = { flags = { "network" = lib.mkOverride 900 true; }; };
87+ "ghc-boot" = { flags = {}; };
88+ "ghci" = { flags = { "ghci" = lib.mkOverride 900 true; }; };
89+ "iserv" = { flags = {}; };
90+ };
91+ })
92+ ];
93+ }
materialized/ghc-extra-projects/default/ghc882/.plan.nix/bytestring.nixnew file+167
@@ -0,0 +1,167 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.10.0"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "README.md" "Changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
69+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
70+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
71+ buildable = true;
72+ modules = [
73+ "Data/ByteString/Builder/ASCII"
74+ "Data/ByteString/Builder/Prim/Binary"
75+ "Data/ByteString/Builder/Prim/ASCII"
76+ "Data/ByteString/Builder/Prim/Internal/Floating"
77+ "Data/ByteString/Builder/Prim/Internal/UncheckedShifts"
78+ "Data/ByteString/Builder/Prim/Internal/Base16"
79+ "Data/ByteString"
80+ "Data/ByteString/Char8"
81+ "Data/ByteString/Unsafe"
82+ "Data/ByteString/Internal"
83+ "Data/ByteString/Lazy"
84+ "Data/ByteString/Lazy/Char8"
85+ "Data/ByteString/Lazy/Internal"
86+ "Data/ByteString/Short"
87+ "Data/ByteString/Short/Internal"
88+ "Data/ByteString/Builder"
89+ "Data/ByteString/Builder/Extra"
90+ "Data/ByteString/Builder/Prim"
91+ "Data/ByteString/Builder/Internal"
92+ "Data/ByteString/Builder/Prim/Internal"
93+ "Data/ByteString/Lazy/Builder"
94+ "Data/ByteString/Lazy/Builder/Extras"
95+ "Data/ByteString/Lazy/Builder/ASCII"
96+ ];
97+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
98+ includeDirs = [ "include" ];
99+ includes = [ "fpstring.h" ];
100+ };
101+ tests = {
102+ "prop-compiled" = {
103+ depends = [
104+ (hsPkgs."base" or (buildDepError "base"))
105+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
106+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
107+ (hsPkgs."random" or (buildDepError "random"))
108+ (hsPkgs."directory" or (buildDepError "directory"))
109+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
110+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
111+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
112+ ];
113+ buildable = true;
114+ modules = [ "Rules" "QuickCheckUtils" "TestFramework" ];
115+ cSources = [ "cbits/fpstring.c" ];
116+ hsSourceDirs = [ "." "tests" ];
117+ includeDirs = [ "include" ];
118+ mainPath = [ "Properties.hs" ];
119+ };
120+ "regressions" = {
121+ depends = [
122+ (hsPkgs."base" or (buildDepError "base"))
123+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
124+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
125+ (hsPkgs."random" or (buildDepError "random"))
126+ (hsPkgs."directory" or (buildDepError "directory"))
127+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
128+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
129+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
130+ ];
131+ buildable = false;
132+ cSources = [ "cbits/fpstring.c" ];
133+ hsSourceDirs = [ "." "tests" ];
134+ includeDirs = [ "include" ];
135+ mainPath = [ "Regressions.hs" ];
136+ };
137+ "test-builder" = {
138+ depends = [
139+ (hsPkgs."base" or (buildDepError "base"))
140+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
141+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
142+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
143+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
144+ (hsPkgs."dlist" or (buildDepError "dlist"))
145+ (hsPkgs."directory" or (buildDepError "directory"))
146+ (hsPkgs."mtl" or (buildDepError "mtl"))
147+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
148+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
149+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
150+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
151+ ];
152+ buildable = true;
153+ modules = [
154+ "Data/ByteString/Builder/Tests"
155+ "Data/ByteString/Builder/Prim/Tests"
156+ "Data/ByteString/Builder/Prim/TestUtils"
157+ "TestFramework"
158+ ];
159+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
160+ hsSourceDirs = [ "." "tests" "tests/builder" ];
161+ includeDirs = [ "include" ];
162+ includes = [ "fpstring.h" ];
163+ mainPath = [ "TestSuite.hs" ];
164+ };
165+ };
166+ };
167+ } // rec { src = (pkgs.lib).mkDefault ../libraries/bytestring; }
materialized/ghc-extra-projects/default/ghc882/.plan.nix/ghc-boot.nixnew file+84
@@ -0,0 +1,84 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."directory" or (buildDepError "directory"))
71+ (hsPkgs."filepath" or (buildDepError "filepath"))
72+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
73+ ];
74+ buildable = true;
75+ modules = [
76+ "GHC/LanguageExtensions"
77+ "GHC/PackageDb"
78+ "GHC/Serialized"
79+ "GHC/ForeignSrcLang"
80+ "GHC/HandleEncoding"
81+ ];
82+ };
83+ };
84+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghc-boot; }
materialized/ghc-extra-projects/default/ghc882/.plan.nix/ghc.nixnew file+608
@@ -0,0 +1,608 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ stage1 = false;
45+ stage2 = true;
46+ stage3 = false;
47+ terminfo = true;
48+ integer-simple = false;
49+ integer-gmp = false;
50+ };
51+ package = {
52+ specVersion = "1.10";
53+ identifier = { name = "ghc"; version = "8.8.2"; };
54+ license = "BSD-3-Clause";
55+ copyright = "";
56+ maintainer = "glasgow-haskell-users@haskell.org";
57+ author = "The GHC Team";
58+ homepage = "http://www.haskell.org/ghc/";
59+ url = "";
60+ synopsis = "The GHC API";
61+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
62+ buildType = "Simple";
63+ isLocal = true;
64+ detailLevel = "FullDetails";
65+ licenseFiles = [ "LICENSE" ];
66+ dataDir = "";
67+ dataFiles = [];
68+ extraSrcFiles = [
69+ "utils/md5.h"
70+ "Unique.h"
71+ "nativeGen/NCG.h"
72+ "parser/cutils.h"
73+ ];
74+ extraTmpFiles = [];
75+ extraDocFiles = [];
76+ };
77+ components = {
78+ "library" = {
79+ depends = ((([
80+ (hsPkgs."base" or (buildDepError "base"))
81+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
82+ (hsPkgs."directory" or (buildDepError "directory"))
83+ (hsPkgs."process" or (buildDepError "process"))
84+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
85+ (hsPkgs."binary" or (buildDepError "binary"))
86+ (hsPkgs."time" or (buildDepError "time"))
87+ (hsPkgs."containers" or (buildDepError "containers"))
88+ (hsPkgs."array" or (buildDepError "array"))
89+ (hsPkgs."filepath" or (buildDepError "filepath"))
90+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
91+ (hsPkgs."hpc" or (buildDepError "hpc"))
92+ (hsPkgs."transformers" or (buildDepError "transformers"))
93+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
94+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
95+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
96+ (hsPkgs."ghci" or (buildDepError "ghci"))
97+ ] ++ (if system.isWindows
98+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
99+ else [
100+ (hsPkgs."unix" or (buildDepError "unix"))
101+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")))) ++ (pkgs.lib).optional (flags.integer-gmp && flags.integer-simple) (hsPkgs."invalid-cabal-flag-settings" or (buildDepError "invalid-cabal-flag-settings"))) ++ (pkgs.lib).optional (flags.integer-gmp) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp"))) ++ (pkgs.lib).optional (flags.integer-simple) (hsPkgs."integer-simple" or (buildDepError "integer-simple"));
102+ build-tools = [
103+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
104+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
105+ ];
106+ buildable = true;
107+ modules = [
108+ "GhcPrelude"
109+ "HieTypes"
110+ "HieDebug"
111+ "HieBin"
112+ "HieUtils"
113+ "HieAst"
114+ "Ar"
115+ "FileCleanup"
116+ "DriverBkp"
117+ "BkpSyn"
118+ "NameShape"
119+ "RnModIface"
120+ "Avail"
121+ "AsmUtils"
122+ "BasicTypes"
123+ "ConLike"
124+ "DataCon"
125+ "PatSyn"
126+ "Demand"
127+ "Debug"
128+ "Exception"
129+ "FieldLabel"
130+ "GhcMonad"
131+ "Hooks"
132+ "Id"
133+ "IdInfo"
134+ "Lexeme"
135+ "Literal"
136+ "Llvm"
137+ "Llvm/AbsSyn"
138+ "Llvm/MetaData"
139+ "Llvm/PpLlvm"
140+ "Llvm/Types"
141+ "LlvmCodeGen"
142+ "LlvmCodeGen/Base"
143+ "LlvmCodeGen/CodeGen"
144+ "LlvmCodeGen/Data"
145+ "LlvmCodeGen/Ppr"
146+ "LlvmCodeGen/Regs"
147+ "LlvmMangler"
148+ "MkId"
149+ "Module"
150+ "Name"
151+ "NameEnv"
152+ "NameSet"
153+ "OccName"
154+ "RdrName"
155+ "NameCache"
156+ "SrcLoc"
157+ "UniqSupply"
158+ "Unique"
159+ "Var"
160+ "VarEnv"
161+ "VarSet"
162+ "UnVarGraph"
163+ "BlockId"
164+ "CLabel"
165+ "Cmm"
166+ "CmmBuildInfoTables"
167+ "CmmPipeline"
168+ "CmmCallConv"
169+ "CmmCommonBlockElim"
170+ "CmmImplementSwitchPlans"
171+ "CmmContFlowOpt"
172+ "CmmExpr"
173+ "CmmInfo"
174+ "CmmLex"
175+ "CmmLint"
176+ "CmmLive"
177+ "CmmMachOp"
178+ "CmmMonad"
179+ "CmmSwitch"
180+ "CmmNode"
181+ "CmmOpt"
182+ "CmmParse"
183+ "CmmProcPoint"
184+ "CmmSink"
185+ "CmmType"
186+ "CmmUtils"
187+ "CmmLayoutStack"
188+ "EnumSet"
189+ "MkGraph"
190+ "PprBase"
191+ "PprC"
192+ "PprCmm"
193+ "PprCmmDecl"
194+ "PprCmmExpr"
195+ "Bitmap"
196+ "CodeGen/Platform"
197+ "CodeGen/Platform/ARM"
198+ "CodeGen/Platform/ARM64"
199+ "CodeGen/Platform/NoRegs"
200+ "CodeGen/Platform/PPC"
201+ "CodeGen/Platform/SPARC"
202+ "CodeGen/Platform/X86"
203+ "CodeGen/Platform/X86_64"
204+ "CgUtils"
205+ "StgCmm"
206+ "StgCmmBind"
207+ "StgCmmClosure"
208+ "StgCmmCon"
209+ "StgCmmEnv"
210+ "StgCmmExpr"
211+ "StgCmmForeign"
212+ "StgCmmHeap"
213+ "StgCmmHpc"
214+ "StgCmmArgRep"
215+ "StgCmmLayout"
216+ "StgCmmMonad"
217+ "StgCmmPrim"
218+ "StgCmmProf"
219+ "StgCmmTicky"
220+ "StgCmmUtils"
221+ "StgCmmExtCode"
222+ "SMRep"
223+ "CoreArity"
224+ "CoreFVs"
225+ "CoreLint"
226+ "CorePrep"
227+ "CoreSubst"
228+ "CoreOpt"
229+ "CoreSyn"
230+ "TrieMap"
231+ "CoreTidy"
232+ "CoreUnfold"
233+ "CoreUtils"
234+ "CoreMap"
235+ "CoreSeq"
236+ "CoreStats"
237+ "MkCore"
238+ "PprCore"
239+ "PmExpr"
240+ "TmOracle"
241+ "Check"
242+ "Coverage"
243+ "Desugar"
244+ "DsArrows"
245+ "DsBinds"
246+ "DsCCall"
247+ "DsExpr"
248+ "DsForeign"
249+ "DsGRHSs"
250+ "DsListComp"
251+ "DsMonad"
252+ "DsUsage"
253+ "DsUtils"
254+ "ExtractDocs"
255+ "Match"
256+ "MatchCon"
257+ "MatchLit"
258+ "HsBinds"
259+ "HsDecls"
260+ "HsDoc"
261+ "HsExpr"
262+ "HsImpExp"
263+ "HsLit"
264+ "PlaceHolder"
265+ "HsExtension"
266+ "HsInstances"
267+ "HsPat"
268+ "HsSyn"
269+ "HsTypes"
270+ "HsUtils"
271+ "HsDumpAst"
272+ "BinIface"
273+ "BinFingerprint"
274+ "BuildTyCl"
275+ "IfaceEnv"
276+ "IfaceSyn"
277+ "IfaceType"
278+ "ToIface"
279+ "LoadIface"
280+ "MkIface"
281+ "TcIface"
282+ "FlagChecker"
283+ "Annotations"
284+ "CmdLineParser"
285+ "CodeOutput"
286+ "Config"
287+ "Constants"
288+ "DriverMkDepend"
289+ "DriverPhases"
290+ "PipelineMonad"
291+ "DriverPipeline"
292+ "DynFlags"
293+ "ErrUtils"
294+ "Finder"
295+ "GHC"
296+ "GhcMake"
297+ "GhcPlugins"
298+ "DynamicLoading"
299+ "HeaderInfo"
300+ "HscMain"
301+ "HscStats"
302+ "HscTypes"
303+ "InteractiveEval"
304+ "InteractiveEvalTypes"
305+ "PackageConfig"
306+ "Packages"
307+ "PlatformConstants"
308+ "Plugins"
309+ "TcPluginM"
310+ "PprTyThing"
311+ "StaticPtrTable"
312+ "SysTools"
313+ "SysTools/BaseDir"
314+ "SysTools/Terminal"
315+ "SysTools/ExtraObj"
316+ "SysTools/Info"
317+ "SysTools/Process"
318+ "SysTools/Tasks"
319+ "Elf"
320+ "TidyPgm"
321+ "Ctype"
322+ "HaddockUtils"
323+ "Lexer"
324+ "OptCoercion"
325+ "Parser"
326+ "RdrHsSyn"
327+ "ApiAnnotation"
328+ "ForeignCall"
329+ "KnownUniques"
330+ "PrelInfo"
331+ "PrelNames"
332+ "PrelRules"
333+ "PrimOp"
334+ "TysPrim"
335+ "TysWiredIn"
336+ "CostCentre"
337+ "CostCentreState"
338+ "ProfInit"
339+ "RnBinds"
340+ "RnEnv"
341+ "RnExpr"
342+ "RnHsDoc"
343+ "RnNames"
344+ "RnPat"
345+ "RnSource"
346+ "RnSplice"
347+ "RnTypes"
348+ "RnFixity"
349+ "RnUtils"
350+ "RnUnbound"
351+ "CoreMonad"
352+ "CSE"
353+ "FloatIn"
354+ "FloatOut"
355+ "LiberateCase"
356+ "OccurAnal"
357+ "SAT"
358+ "SetLevels"
359+ "SimplCore"
360+ "SimplEnv"
361+ "SimplMonad"
362+ "SimplUtils"
363+ "Simplify"
364+ "SimplStg"
365+ "StgStats"
366+ "StgCse"
367+ "StgLiftLams"
368+ "StgLiftLams/Analysis"
369+ "StgLiftLams/LiftM"
370+ "StgLiftLams/Transformation"
371+ "StgSubst"
372+ "UnariseStg"
373+ "RepType"
374+ "Rules"
375+ "SpecConstr"
376+ "Specialise"
377+ "CoreToStg"
378+ "StgLint"
379+ "StgSyn"
380+ "StgFVs"
381+ "CallArity"
382+ "DmdAnal"
383+ "Exitify"
384+ "WorkWrap"
385+ "WwLib"
386+ "FamInst"
387+ "ClsInst"
388+ "Inst"
389+ "TcAnnotations"
390+ "TcArrows"
391+ "TcBinds"
392+ "TcSigs"
393+ "TcClassDcl"
394+ "TcDefaults"
395+ "TcDeriv"
396+ "TcDerivInfer"
397+ "TcDerivUtils"
398+ "TcEnv"
399+ "TcExpr"
400+ "TcForeign"
401+ "TcGenDeriv"
402+ "TcGenFunctor"
403+ "TcGenGenerics"
404+ "TcHsSyn"
405+ "TcHsType"
406+ "TcInstDcls"
407+ "TcMType"
408+ "TcValidity"
409+ "TcMatches"
410+ "TcPat"
411+ "TcPatSyn"
412+ "TcRnDriver"
413+ "TcBackpack"
414+ "TcRnExports"
415+ "TcRnMonad"
416+ "TcRnTypes"
417+ "TcRules"
418+ "TcSimplify"
419+ "TcHoleErrors"
420+ "TcErrors"
421+ "TcTyClsDecls"
422+ "TcTyDecls"
423+ "TcTypeable"
424+ "TcTypeableValidity"
425+ "TcType"
426+ "TcEvidence"
427+ "TcEvTerm"
428+ "TcUnify"
429+ "TcInteract"
430+ "TcCanonical"
431+ "TcFlatten"
432+ "TcSMonad"
433+ "TcTypeNats"
434+ "TcSplice"
435+ "Class"
436+ "Coercion"
437+ "DsMeta"
438+ "THNames"
439+ "FamInstEnv"
440+ "FunDeps"
441+ "InstEnv"
442+ "TyCon"
443+ "CoAxiom"
444+ "Kind"
445+ "Type"
446+ "TyCoRep"
447+ "Unify"
448+ "Bag"
449+ "Binary"
450+ "BooleanFormula"
451+ "BufWrite"
452+ "Digraph"
453+ "Encoding"
454+ "FastFunctions"
455+ "FastMutInt"
456+ "FastString"
457+ "FastStringEnv"
458+ "Fingerprint"
459+ "FiniteMap"
460+ "FV"
461+ "GraphBase"
462+ "GraphColor"
463+ "GraphOps"
464+ "GraphPpr"
465+ "IOEnv"
466+ "Json"
467+ "ListSetOps"
468+ "ListT"
469+ "Maybes"
470+ "MonadUtils"
471+ "OrdList"
472+ "Outputable"
473+ "Pair"
474+ "Panic"
475+ "PlainPanic"
476+ "PprColour"
477+ "Pretty"
478+ "State"
479+ "Stream"
480+ "StringBuffer"
481+ "UniqDFM"
482+ "UniqDSet"
483+ "UniqFM"
484+ "UniqMap"
485+ "UniqSet"
486+ "Util"
487+ "Hoopl/Block"
488+ "Hoopl/Collections"
489+ "Hoopl/Dataflow"
490+ "Hoopl/Graph"
491+ "Hoopl/Label"
492+ "AsmCodeGen"
493+ "TargetReg"
494+ "NCGMonad"
495+ "Instruction"
496+ "BlockLayout"
497+ "CFG"
498+ "Format"
499+ "Reg"
500+ "RegClass"
501+ "PIC"
502+ "Platform"
503+ "CPrim"
504+ "X86/Regs"
505+ "X86/RegInfo"
506+ "X86/Instr"
507+ "X86/Cond"
508+ "X86/Ppr"
509+ "X86/CodeGen"
510+ "PPC/Regs"
511+ "PPC/RegInfo"
512+ "PPC/Instr"
513+ "PPC/Cond"
514+ "PPC/Ppr"
515+ "PPC/CodeGen"
516+ "SPARC/Base"
517+ "SPARC/Regs"
518+ "SPARC/Imm"
519+ "SPARC/AddrMode"
520+ "SPARC/Cond"
521+ "SPARC/Instr"
522+ "SPARC/Stack"
523+ "SPARC/ShortcutJump"
524+ "SPARC/Ppr"
525+ "SPARC/CodeGen"
526+ "SPARC/CodeGen/Amode"
527+ "SPARC/CodeGen/Base"
528+ "SPARC/CodeGen/CondCode"
529+ "SPARC/CodeGen/Gen32"
530+ "SPARC/CodeGen/Gen64"
531+ "SPARC/CodeGen/Sanity"
532+ "SPARC/CodeGen/Expand"
533+ "RegAlloc/Liveness"
534+ "RegAlloc/Graph/Main"
535+ "RegAlloc/Graph/Stats"
536+ "RegAlloc/Graph/ArchBase"
537+ "RegAlloc/Graph/ArchX86"
538+ "RegAlloc/Graph/Coalesce"
539+ "RegAlloc/Graph/Spill"
540+ "RegAlloc/Graph/SpillClean"
541+ "RegAlloc/Graph/SpillCost"
542+ "RegAlloc/Graph/TrivColorable"
543+ "RegAlloc/Linear/Main"
544+ "RegAlloc/Linear/JoinToTargets"
545+ "RegAlloc/Linear/State"
546+ "RegAlloc/Linear/Stats"
547+ "RegAlloc/Linear/FreeRegs"
548+ "RegAlloc/Linear/StackMap"
549+ "RegAlloc/Linear/Base"
550+ "RegAlloc/Linear/X86/FreeRegs"
551+ "RegAlloc/Linear/X86_64/FreeRegs"
552+ "RegAlloc/Linear/PPC/FreeRegs"
553+ "RegAlloc/Linear/SPARC/FreeRegs"
554+ "Dwarf"
555+ "Dwarf/Types"
556+ "Dwarf/Constants"
557+ "Convert"
558+ "ByteCodeTypes"
559+ "ByteCodeAsm"
560+ "ByteCodeGen"
561+ "ByteCodeInstr"
562+ "ByteCodeItbls"
563+ "ByteCodeLink"
564+ "Debugger"
565+ "Linker"
566+ "RtClosureInspect"
567+ "GHCi"
568+ ];
569+ cSources = [
570+ "parser/cutils.c"
571+ "ghci/keepCAFsForGHCi.c"
572+ "cbits/genSym.c"
573+ ];
574+ hsSourceDirs = [
575+ "backpack"
576+ "basicTypes"
577+ "cmm"
578+ "codeGen"
579+ "coreSyn"
580+ "deSugar"
581+ "ghci"
582+ "hsSyn"
583+ "iface"
584+ "llvmGen"
585+ "main"
586+ "nativeGen"
587+ "parser"
588+ "prelude"
589+ "profiling"
590+ "rename"
591+ "simplCore"
592+ "simplStg"
593+ "specialise"
594+ "stgSyn"
595+ "stranal"
596+ "typecheck"
597+ "types"
598+ "utils"
599+ "hieFile"
600+ ];
601+ includeDirs = [
602+ "."
603+ "parser"
604+ "utils"
605+ ] ++ (pkgs.lib).optional (flags.ghci) "../rts/dist/build";
606+ };
607+ };
608+ } // rec { src = (pkgs.lib).mkDefault ../compiler; }
materialized/ghc-extra-projects/default/ghc882/.plan.nix/ghci.nixnew file+101
@@ -0,0 +1,101 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."array" or (buildDepError "array"))
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."binary" or (buildDepError "binary"))
70+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
71+ (hsPkgs."containers" or (buildDepError "containers"))
72+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
73+ (hsPkgs."filepath" or (buildDepError "filepath"))
74+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
75+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
76+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
77+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
78+ (hsPkgs."transformers" or (buildDepError "transformers"))
79+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
80+ buildable = true;
81+ modules = [
82+ "GHCi/BreakArray"
83+ "GHCi/BinaryArray"
84+ "GHCi/Message"
85+ "GHCi/ResolvedBCO"
86+ "GHCi/RemoteTypes"
87+ "GHCi/FFI"
88+ "GHCi/InfoTable"
89+ "GHCi/StaticPtrTable"
90+ "GHCi/TH/Binary"
91+ "SizedSeq"
92+ ] ++ (pkgs.lib).optionals (flags.ghci) [
93+ "GHCi/Run"
94+ "GHCi/CreateBCO"
95+ "GHCi/ObjLink"
96+ "GHCi/Signals"
97+ "GHCi/TH"
98+ ];
99+ };
100+ };
101+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghci; }
materialized/ghc-extra-projects/default/ghc882/.plan.nix/iserv-proxy.nixnew file+86
@@ -0,0 +1,86 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv-proxy" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."directory" or (buildDepError "directory"))
75+ (hsPkgs."network" or (buildDepError "network"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ (hsPkgs."ghci" or (buildDepError "ghci"))
78+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
79+ ];
80+ buildable = true;
81+ hsSourceDirs = [ "src" ];
82+ mainPath = [ "Main.hs" ];
83+ };
84+ };
85+ };
86+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv-proxy; }
materialized/ghc-extra-projects/default/ghc882/.plan.nix/iserv.nixnew file+85
@@ -0,0 +1,85 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Template Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."ghci" or (buildDepError "ghci"))
75+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
76+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
77+ buildable = true;
78+ cSources = [ "cbits/iservmain.c" ];
79+ hsSourceDirs = [ "src" ];
80+ includeDirs = [ "." ];
81+ mainPath = [ "Main.hs" ] ++ [ "" ];
82+ };
83+ };
84+ };
85+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv; }
materialized/ghc-extra-projects/default/ghc882/.plan.nix/libiserv.nixnew file+89
@@ -0,0 +1,89 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."containers" or (buildDepError "containers"))
71+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
72+ (hsPkgs."ghci" or (buildDepError "ghci"))
73+ ] ++ (pkgs.lib).optionals (flags.network) [
74+ (hsPkgs."network" or (buildDepError "network"))
75+ (hsPkgs."directory" or (buildDepError "directory"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
78+ buildable = true;
79+ modules = [
80+ "Lib"
81+ "GHCi/Utils"
82+ ] ++ (pkgs.lib).optionals (flags.network) [
83+ "Remote/Message"
84+ "Remote/Slave"
85+ ];
86+ hsSourceDirs = [ "src" ];
87+ };
88+ };
89+ } // rec { src = (pkgs.lib).mkDefault ../libraries/libiserv; }
materialized/ghc-extra-projects/default/ghc882/.plan.nix/remote-iserv.nixnew file+77
@@ -0,0 +1,77 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "remote-iserv" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
70+ ];
71+ buildable = true;
72+ hsSourceDirs = [ "src" ];
73+ mainPath = [ "Cli.hs" ];
74+ };
75+ };
76+ };
77+ } // rec { src = (pkgs.lib).mkDefault ../utils/remote-iserv; }
materialized/ghc-extra-projects/default/ghc882/default.nixnew file+95
@@ -0,0 +1,95 @@
1+{
2+ pkgs = hackage:
3+ {
4+ packages = {
5+ "binary".revision = (((hackage."binary")."0.8.8.0").revisions).default;
6+ "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
7+ "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
8+ "ghc-heap".revision = (((hackage."ghc-heap")."8.8.2").revisions).default;
9+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
10+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
11+ "alex".revision = (((hackage."alex")."3.2.5").revisions).default;
12+ "alex".flags.small_base = true;
13+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
14+ "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
15+ "directory".revision = (((hackage."directory")."1.3.6.1").revisions).default;
16+ "template-haskell".revision = (((hackage."template-haskell")."2.15.0.0").revisions).default;
17+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
18+ "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
19+ "time".revision = (((hackage."time")."1.9.3").revisions).default;
20+ "terminfo".revision = (((hackage."terminfo")."0.4.1.4").revisions).default;
21+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
22+ "happy".revision = (((hackage."happy")."1.19.12").revisions).default;
23+ "happy".flags.small_base = true;
24+ "hpc".revision = (((hackage."hpc")."0.6.0.3").revisions).default;
25+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
26+ "process".revision = (((hackage."process")."1.6.8.2").revisions).default;
27+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
28+ "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.8.2").revisions).default;
29+ "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
30+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
31+ };
32+ compiler = {
33+ version = "8.8.2";
34+ nix-name = "ghc882";
35+ packages = {
36+ "ghc-prim" = "0.5.3";
37+ "ghc-heap" = "8.8.2";
38+ "mtl" = "2.2.2";
39+ "rts" = "1.0";
40+ "deepseq" = "1.4.4.0";
41+ "template-haskell" = "2.15.0.0";
42+ "containers" = "0.6.2.1";
43+ "base" = "4.13.0.0";
44+ "time" = "1.9.3";
45+ "terminfo" = "0.4.1.4";
46+ "transformers" = "0.5.6.2";
47+ "filepath" = "1.4.2.1";
48+ "pretty" = "1.1.3.6";
49+ "ghc-boot-th" = "8.8.2";
50+ "array" = "0.5.4.0";
51+ "integer-gmp" = "1.0.2.0";
52+ };
53+ };
54+ };
55+ extras = hackage:
56+ {
57+ packages = {
58+ ghc = ./.plan.nix/ghc.nix;
59+ bytestring = ./.plan.nix/bytestring.nix;
60+ remote-iserv = ./.plan.nix/remote-iserv.nix;
61+ iserv-proxy = ./.plan.nix/iserv-proxy.nix;
62+ libiserv = ./.plan.nix/libiserv.nix;
63+ ghc-boot = ./.plan.nix/ghc-boot.nix;
64+ ghci = ./.plan.nix/ghci.nix;
65+ iserv = ./.plan.nix/iserv.nix;
66+ };
67+ };
68+ modules = [
69+ ({ lib, ... }:
70+ {
71+ packages = {
72+ "ghc" = {
73+ flags = {
74+ "stage1" = lib.mkOverride 900 false;
75+ "stage2" = lib.mkOverride 900 true;
76+ "integer-gmp" = lib.mkOverride 900 false;
77+ "stage3" = lib.mkOverride 900 false;
78+ "ghci" = lib.mkOverride 900 true;
79+ "integer-simple" = lib.mkOverride 900 false;
80+ "terminfo" = lib.mkOverride 900 true;
81+ };
82+ };
83+ "bytestring" = {
84+ flags = { "integer-simple" = lib.mkOverride 900 false; };
85+ };
86+ "remote-iserv" = { flags = {}; };
87+ "iserv-proxy" = { flags = {}; };
88+ "libiserv" = { flags = { "network" = lib.mkOverride 900 true; }; };
89+ "ghc-boot" = { flags = {}; };
90+ "ghci" = { flags = { "ghci" = lib.mkOverride 900 true; }; };
91+ "iserv" = { flags = {}; };
92+ };
93+ })
94+ ];
95+ }
materialized/ghc-extra-projects/default/ghc883/.plan.nix/bytestring.nixnew file+167
@@ -0,0 +1,167 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.10.0"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "README.md" "Changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
69+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
70+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
71+ buildable = true;
72+ modules = [
73+ "Data/ByteString/Builder/ASCII"
74+ "Data/ByteString/Builder/Prim/Binary"
75+ "Data/ByteString/Builder/Prim/ASCII"
76+ "Data/ByteString/Builder/Prim/Internal/Floating"
77+ "Data/ByteString/Builder/Prim/Internal/UncheckedShifts"
78+ "Data/ByteString/Builder/Prim/Internal/Base16"
79+ "Data/ByteString"
80+ "Data/ByteString/Char8"
81+ "Data/ByteString/Unsafe"
82+ "Data/ByteString/Internal"
83+ "Data/ByteString/Lazy"
84+ "Data/ByteString/Lazy/Char8"
85+ "Data/ByteString/Lazy/Internal"
86+ "Data/ByteString/Short"
87+ "Data/ByteString/Short/Internal"
88+ "Data/ByteString/Builder"
89+ "Data/ByteString/Builder/Extra"
90+ "Data/ByteString/Builder/Prim"
91+ "Data/ByteString/Builder/Internal"
92+ "Data/ByteString/Builder/Prim/Internal"
93+ "Data/ByteString/Lazy/Builder"
94+ "Data/ByteString/Lazy/Builder/Extras"
95+ "Data/ByteString/Lazy/Builder/ASCII"
96+ ];
97+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
98+ includeDirs = [ "include" ];
99+ includes = [ "fpstring.h" ];
100+ };
101+ tests = {
102+ "prop-compiled" = {
103+ depends = [
104+ (hsPkgs."base" or (buildDepError "base"))
105+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
106+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
107+ (hsPkgs."random" or (buildDepError "random"))
108+ (hsPkgs."directory" or (buildDepError "directory"))
109+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
110+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
111+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
112+ ];
113+ buildable = true;
114+ modules = [ "Rules" "QuickCheckUtils" "TestFramework" ];
115+ cSources = [ "cbits/fpstring.c" ];
116+ hsSourceDirs = [ "." "tests" ];
117+ includeDirs = [ "include" ];
118+ mainPath = [ "Properties.hs" ];
119+ };
120+ "regressions" = {
121+ depends = [
122+ (hsPkgs."base" or (buildDepError "base"))
123+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
124+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
125+ (hsPkgs."random" or (buildDepError "random"))
126+ (hsPkgs."directory" or (buildDepError "directory"))
127+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
128+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
129+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
130+ ];
131+ buildable = false;
132+ cSources = [ "cbits/fpstring.c" ];
133+ hsSourceDirs = [ "." "tests" ];
134+ includeDirs = [ "include" ];
135+ mainPath = [ "Regressions.hs" ];
136+ };
137+ "test-builder" = {
138+ depends = [
139+ (hsPkgs."base" or (buildDepError "base"))
140+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
141+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
142+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
143+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
144+ (hsPkgs."dlist" or (buildDepError "dlist"))
145+ (hsPkgs."directory" or (buildDepError "directory"))
146+ (hsPkgs."mtl" or (buildDepError "mtl"))
147+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
148+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
149+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
150+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
151+ ];
152+ buildable = true;
153+ modules = [
154+ "Data/ByteString/Builder/Tests"
155+ "Data/ByteString/Builder/Prim/Tests"
156+ "Data/ByteString/Builder/Prim/TestUtils"
157+ "TestFramework"
158+ ];
159+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
160+ hsSourceDirs = [ "." "tests" "tests/builder" ];
161+ includeDirs = [ "include" ];
162+ includes = [ "fpstring.h" ];
163+ mainPath = [ "TestSuite.hs" ];
164+ };
165+ };
166+ };
167+ } // rec { src = (pkgs.lib).mkDefault ../libraries/bytestring; }
materialized/ghc-extra-projects/default/ghc883/.plan.nix/ghc-boot.nixnew file+84
@@ -0,0 +1,84 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."directory" or (buildDepError "directory"))
71+ (hsPkgs."filepath" or (buildDepError "filepath"))
72+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
73+ ];
74+ buildable = true;
75+ modules = [
76+ "GHC/LanguageExtensions"
77+ "GHC/PackageDb"
78+ "GHC/Serialized"
79+ "GHC/ForeignSrcLang"
80+ "GHC/HandleEncoding"
81+ ];
82+ };
83+ };
84+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghc-boot; }
materialized/ghc-extra-projects/default/ghc883/.plan.nix/ghc.nixnew file+608
@@ -0,0 +1,608 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ stage1 = false;
45+ stage2 = true;
46+ stage3 = false;
47+ terminfo = true;
48+ integer-simple = false;
49+ integer-gmp = false;
50+ };
51+ package = {
52+ specVersion = "1.10";
53+ identifier = { name = "ghc"; version = "8.8.3"; };
54+ license = "BSD-3-Clause";
55+ copyright = "";
56+ maintainer = "glasgow-haskell-users@haskell.org";
57+ author = "The GHC Team";
58+ homepage = "http://www.haskell.org/ghc/";
59+ url = "";
60+ synopsis = "The GHC API";
61+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
62+ buildType = "Simple";
63+ isLocal = true;
64+ detailLevel = "FullDetails";
65+ licenseFiles = [ "LICENSE" ];
66+ dataDir = "";
67+ dataFiles = [];
68+ extraSrcFiles = [
69+ "utils/md5.h"
70+ "Unique.h"
71+ "nativeGen/NCG.h"
72+ "parser/cutils.h"
73+ ];
74+ extraTmpFiles = [];
75+ extraDocFiles = [];
76+ };
77+ components = {
78+ "library" = {
79+ depends = ((([
80+ (hsPkgs."base" or (buildDepError "base"))
81+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
82+ (hsPkgs."directory" or (buildDepError "directory"))
83+ (hsPkgs."process" or (buildDepError "process"))
84+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
85+ (hsPkgs."binary" or (buildDepError "binary"))
86+ (hsPkgs."time" or (buildDepError "time"))
87+ (hsPkgs."containers" or (buildDepError "containers"))
88+ (hsPkgs."array" or (buildDepError "array"))
89+ (hsPkgs."filepath" or (buildDepError "filepath"))
90+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
91+ (hsPkgs."hpc" or (buildDepError "hpc"))
92+ (hsPkgs."transformers" or (buildDepError "transformers"))
93+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
94+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
95+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
96+ (hsPkgs."ghci" or (buildDepError "ghci"))
97+ ] ++ (if system.isWindows
98+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
99+ else [
100+ (hsPkgs."unix" or (buildDepError "unix"))
101+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")))) ++ (pkgs.lib).optional (flags.integer-gmp && flags.integer-simple) (hsPkgs."invalid-cabal-flag-settings" or (buildDepError "invalid-cabal-flag-settings"))) ++ (pkgs.lib).optional (flags.integer-gmp) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp"))) ++ (pkgs.lib).optional (flags.integer-simple) (hsPkgs."integer-simple" or (buildDepError "integer-simple"));
102+ build-tools = [
103+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
104+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
105+ ];
106+ buildable = true;
107+ modules = [
108+ "GhcPrelude"
109+ "HieTypes"
110+ "HieDebug"
111+ "HieBin"
112+ "HieUtils"
113+ "HieAst"
114+ "Ar"
115+ "FileCleanup"
116+ "DriverBkp"
117+ "BkpSyn"
118+ "NameShape"
119+ "RnModIface"
120+ "Avail"
121+ "AsmUtils"
122+ "BasicTypes"
123+ "ConLike"
124+ "DataCon"
125+ "PatSyn"
126+ "Demand"
127+ "Debug"
128+ "Exception"
129+ "FieldLabel"
130+ "GhcMonad"
131+ "Hooks"
132+ "Id"
133+ "IdInfo"
134+ "Lexeme"
135+ "Literal"
136+ "Llvm"
137+ "Llvm/AbsSyn"
138+ "Llvm/MetaData"
139+ "Llvm/PpLlvm"
140+ "Llvm/Types"
141+ "LlvmCodeGen"
142+ "LlvmCodeGen/Base"
143+ "LlvmCodeGen/CodeGen"
144+ "LlvmCodeGen/Data"
145+ "LlvmCodeGen/Ppr"
146+ "LlvmCodeGen/Regs"
147+ "LlvmMangler"
148+ "MkId"
149+ "Module"
150+ "Name"
151+ "NameEnv"
152+ "NameSet"
153+ "OccName"
154+ "RdrName"
155+ "NameCache"
156+ "SrcLoc"
157+ "UniqSupply"
158+ "Unique"
159+ "Var"
160+ "VarEnv"
161+ "VarSet"
162+ "UnVarGraph"
163+ "BlockId"
164+ "CLabel"
165+ "Cmm"
166+ "CmmBuildInfoTables"
167+ "CmmPipeline"
168+ "CmmCallConv"
169+ "CmmCommonBlockElim"
170+ "CmmImplementSwitchPlans"
171+ "CmmContFlowOpt"
172+ "CmmExpr"
173+ "CmmInfo"
174+ "CmmLex"
175+ "CmmLint"
176+ "CmmLive"
177+ "CmmMachOp"
178+ "CmmMonad"
179+ "CmmSwitch"
180+ "CmmNode"
181+ "CmmOpt"
182+ "CmmParse"
183+ "CmmProcPoint"
184+ "CmmSink"
185+ "CmmType"
186+ "CmmUtils"
187+ "CmmLayoutStack"
188+ "EnumSet"
189+ "MkGraph"
190+ "PprBase"
191+ "PprC"
192+ "PprCmm"
193+ "PprCmmDecl"
194+ "PprCmmExpr"
195+ "Bitmap"
196+ "CodeGen/Platform"
197+ "CodeGen/Platform/ARM"
198+ "CodeGen/Platform/ARM64"
199+ "CodeGen/Platform/NoRegs"
200+ "CodeGen/Platform/PPC"
201+ "CodeGen/Platform/SPARC"
202+ "CodeGen/Platform/X86"
203+ "CodeGen/Platform/X86_64"
204+ "CgUtils"
205+ "StgCmm"
206+ "StgCmmBind"
207+ "StgCmmClosure"
208+ "StgCmmCon"
209+ "StgCmmEnv"
210+ "StgCmmExpr"
211+ "StgCmmForeign"
212+ "StgCmmHeap"
213+ "StgCmmHpc"
214+ "StgCmmArgRep"
215+ "StgCmmLayout"
216+ "StgCmmMonad"
217+ "StgCmmPrim"
218+ "StgCmmProf"
219+ "StgCmmTicky"
220+ "StgCmmUtils"
221+ "StgCmmExtCode"
222+ "SMRep"
223+ "CoreArity"
224+ "CoreFVs"
225+ "CoreLint"
226+ "CorePrep"
227+ "CoreSubst"
228+ "CoreOpt"
229+ "CoreSyn"
230+ "TrieMap"
231+ "CoreTidy"
232+ "CoreUnfold"
233+ "CoreUtils"
234+ "CoreMap"
235+ "CoreSeq"
236+ "CoreStats"
237+ "MkCore"
238+ "PprCore"
239+ "PmExpr"
240+ "TmOracle"
241+ "Check"
242+ "Coverage"
243+ "Desugar"
244+ "DsArrows"
245+ "DsBinds"
246+ "DsCCall"
247+ "DsExpr"
248+ "DsForeign"
249+ "DsGRHSs"
250+ "DsListComp"
251+ "DsMonad"
252+ "DsUsage"
253+ "DsUtils"
254+ "ExtractDocs"
255+ "Match"
256+ "MatchCon"
257+ "MatchLit"
258+ "HsBinds"
259+ "HsDecls"
260+ "HsDoc"
261+ "HsExpr"
262+ "HsImpExp"
263+ "HsLit"
264+ "PlaceHolder"
265+ "HsExtension"
266+ "HsInstances"
267+ "HsPat"
268+ "HsSyn"
269+ "HsTypes"
270+ "HsUtils"
271+ "HsDumpAst"
272+ "BinIface"
273+ "BinFingerprint"
274+ "BuildTyCl"
275+ "IfaceEnv"
276+ "IfaceSyn"
277+ "IfaceType"
278+ "ToIface"
279+ "LoadIface"
280+ "MkIface"
281+ "TcIface"
282+ "FlagChecker"
283+ "Annotations"
284+ "CmdLineParser"
285+ "CodeOutput"
286+ "Config"
287+ "Constants"
288+ "DriverMkDepend"
289+ "DriverPhases"
290+ "PipelineMonad"
291+ "DriverPipeline"
292+ "DynFlags"
293+ "ErrUtils"
294+ "Finder"
295+ "GHC"
296+ "GhcMake"
297+ "GhcPlugins"
298+ "DynamicLoading"
299+ "HeaderInfo"
300+ "HscMain"
301+ "HscStats"
302+ "HscTypes"
303+ "InteractiveEval"
304+ "InteractiveEvalTypes"
305+ "PackageConfig"
306+ "Packages"
307+ "PlatformConstants"
308+ "Plugins"
309+ "TcPluginM"
310+ "PprTyThing"
311+ "StaticPtrTable"
312+ "SysTools"
313+ "SysTools/BaseDir"
314+ "SysTools/Terminal"
315+ "SysTools/ExtraObj"
316+ "SysTools/Info"
317+ "SysTools/Process"
318+ "SysTools/Tasks"
319+ "Elf"
320+ "TidyPgm"
321+ "Ctype"
322+ "HaddockUtils"
323+ "Lexer"
324+ "OptCoercion"
325+ "Parser"
326+ "RdrHsSyn"
327+ "ApiAnnotation"
328+ "ForeignCall"
329+ "KnownUniques"
330+ "PrelInfo"
331+ "PrelNames"
332+ "PrelRules"
333+ "PrimOp"
334+ "TysPrim"
335+ "TysWiredIn"
336+ "CostCentre"
337+ "CostCentreState"
338+ "ProfInit"
339+ "RnBinds"
340+ "RnEnv"
341+ "RnExpr"
342+ "RnHsDoc"
343+ "RnNames"
344+ "RnPat"
345+ "RnSource"
346+ "RnSplice"
347+ "RnTypes"
348+ "RnFixity"
349+ "RnUtils"
350+ "RnUnbound"
351+ "CoreMonad"
352+ "CSE"
353+ "FloatIn"
354+ "FloatOut"
355+ "LiberateCase"
356+ "OccurAnal"
357+ "SAT"
358+ "SetLevels"
359+ "SimplCore"
360+ "SimplEnv"
361+ "SimplMonad"
362+ "SimplUtils"
363+ "Simplify"
364+ "SimplStg"
365+ "StgStats"
366+ "StgCse"
367+ "StgLiftLams"
368+ "StgLiftLams/Analysis"
369+ "StgLiftLams/LiftM"
370+ "StgLiftLams/Transformation"
371+ "StgSubst"
372+ "UnariseStg"
373+ "RepType"
374+ "Rules"
375+ "SpecConstr"
376+ "Specialise"
377+ "CoreToStg"
378+ "StgLint"
379+ "StgSyn"
380+ "StgFVs"
381+ "CallArity"
382+ "DmdAnal"
383+ "Exitify"
384+ "WorkWrap"
385+ "WwLib"
386+ "FamInst"
387+ "ClsInst"
388+ "Inst"
389+ "TcAnnotations"
390+ "TcArrows"
391+ "TcBinds"
392+ "TcSigs"
393+ "TcClassDcl"
394+ "TcDefaults"
395+ "TcDeriv"
396+ "TcDerivInfer"
397+ "TcDerivUtils"
398+ "TcEnv"
399+ "TcExpr"
400+ "TcForeign"
401+ "TcGenDeriv"
402+ "TcGenFunctor"
403+ "TcGenGenerics"
404+ "TcHsSyn"
405+ "TcHsType"
406+ "TcInstDcls"
407+ "TcMType"
408+ "TcValidity"
409+ "TcMatches"
410+ "TcPat"
411+ "TcPatSyn"
412+ "TcRnDriver"
413+ "TcBackpack"
414+ "TcRnExports"
415+ "TcRnMonad"
416+ "TcRnTypes"
417+ "TcRules"
418+ "TcSimplify"
419+ "TcHoleErrors"
420+ "TcErrors"
421+ "TcTyClsDecls"
422+ "TcTyDecls"
423+ "TcTypeable"
424+ "TcTypeableValidity"
425+ "TcType"
426+ "TcEvidence"
427+ "TcEvTerm"
428+ "TcUnify"
429+ "TcInteract"
430+ "TcCanonical"
431+ "TcFlatten"
432+ "TcSMonad"
433+ "TcTypeNats"
434+ "TcSplice"
435+ "Class"
436+ "Coercion"
437+ "DsMeta"
438+ "THNames"
439+ "FamInstEnv"
440+ "FunDeps"
441+ "InstEnv"
442+ "TyCon"
443+ "CoAxiom"
444+ "Kind"
445+ "Type"
446+ "TyCoRep"
447+ "Unify"
448+ "Bag"
449+ "Binary"
450+ "BooleanFormula"
451+ "BufWrite"
452+ "Digraph"
453+ "Encoding"
454+ "FastFunctions"
455+ "FastMutInt"
456+ "FastString"
457+ "FastStringEnv"
458+ "Fingerprint"
459+ "FiniteMap"
460+ "FV"
461+ "GraphBase"
462+ "GraphColor"
463+ "GraphOps"
464+ "GraphPpr"
465+ "IOEnv"
466+ "Json"
467+ "ListSetOps"
468+ "ListT"
469+ "Maybes"
470+ "MonadUtils"
471+ "OrdList"
472+ "Outputable"
473+ "Pair"
474+ "Panic"
475+ "PlainPanic"
476+ "PprColour"
477+ "Pretty"
478+ "State"
479+ "Stream"
480+ "StringBuffer"
481+ "UniqDFM"
482+ "UniqDSet"
483+ "UniqFM"
484+ "UniqMap"
485+ "UniqSet"
486+ "Util"
487+ "Hoopl/Block"
488+ "Hoopl/Collections"
489+ "Hoopl/Dataflow"
490+ "Hoopl/Graph"
491+ "Hoopl/Label"
492+ "AsmCodeGen"
493+ "TargetReg"
494+ "NCGMonad"
495+ "Instruction"
496+ "BlockLayout"
497+ "CFG"
498+ "Format"
499+ "Reg"
500+ "RegClass"
501+ "PIC"
502+ "Platform"
503+ "CPrim"
504+ "X86/Regs"
505+ "X86/RegInfo"
506+ "X86/Instr"
507+ "X86/Cond"
508+ "X86/Ppr"
509+ "X86/CodeGen"
510+ "PPC/Regs"
511+ "PPC/RegInfo"
512+ "PPC/Instr"
513+ "PPC/Cond"
514+ "PPC/Ppr"
515+ "PPC/CodeGen"
516+ "SPARC/Base"
517+ "SPARC/Regs"
518+ "SPARC/Imm"
519+ "SPARC/AddrMode"
520+ "SPARC/Cond"
521+ "SPARC/Instr"
522+ "SPARC/Stack"
523+ "SPARC/ShortcutJump"
524+ "SPARC/Ppr"
525+ "SPARC/CodeGen"
526+ "SPARC/CodeGen/Amode"
527+ "SPARC/CodeGen/Base"
528+ "SPARC/CodeGen/CondCode"
529+ "SPARC/CodeGen/Gen32"
530+ "SPARC/CodeGen/Gen64"
531+ "SPARC/CodeGen/Sanity"
532+ "SPARC/CodeGen/Expand"
533+ "RegAlloc/Liveness"
534+ "RegAlloc/Graph/Main"
535+ "RegAlloc/Graph/Stats"
536+ "RegAlloc/Graph/ArchBase"
537+ "RegAlloc/Graph/ArchX86"
538+ "RegAlloc/Graph/Coalesce"
539+ "RegAlloc/Graph/Spill"
540+ "RegAlloc/Graph/SpillClean"
541+ "RegAlloc/Graph/SpillCost"
542+ "RegAlloc/Graph/TrivColorable"
543+ "RegAlloc/Linear/Main"
544+ "RegAlloc/Linear/JoinToTargets"
545+ "RegAlloc/Linear/State"
546+ "RegAlloc/Linear/Stats"
547+ "RegAlloc/Linear/FreeRegs"
548+ "RegAlloc/Linear/StackMap"
549+ "RegAlloc/Linear/Base"
550+ "RegAlloc/Linear/X86/FreeRegs"
551+ "RegAlloc/Linear/X86_64/FreeRegs"
552+ "RegAlloc/Linear/PPC/FreeRegs"
553+ "RegAlloc/Linear/SPARC/FreeRegs"
554+ "Dwarf"
555+ "Dwarf/Types"
556+ "Dwarf/Constants"
557+ "Convert"
558+ "ByteCodeTypes"
559+ "ByteCodeAsm"
560+ "ByteCodeGen"
561+ "ByteCodeInstr"
562+ "ByteCodeItbls"
563+ "ByteCodeLink"
564+ "Debugger"
565+ "Linker"
566+ "RtClosureInspect"
567+ "GHCi"
568+ ];
569+ cSources = [
570+ "parser/cutils.c"
571+ "ghci/keepCAFsForGHCi.c"
572+ "cbits/genSym.c"
573+ ];
574+ hsSourceDirs = [
575+ "backpack"
576+ "basicTypes"
577+ "cmm"
578+ "codeGen"
579+ "coreSyn"
580+ "deSugar"
581+ "ghci"
582+ "hsSyn"
583+ "iface"
584+ "llvmGen"
585+ "main"
586+ "nativeGen"
587+ "parser"
588+ "prelude"
589+ "profiling"
590+ "rename"
591+ "simplCore"
592+ "simplStg"
593+ "specialise"
594+ "stgSyn"
595+ "stranal"
596+ "typecheck"
597+ "types"
598+ "utils"
599+ "hieFile"
600+ ];
601+ includeDirs = [
602+ "."
603+ "parser"
604+ "utils"
605+ ] ++ (pkgs.lib).optional (flags.ghci) "../rts/dist/build";
606+ };
607+ };
608+ } // rec { src = (pkgs.lib).mkDefault ../compiler; }
materialized/ghc-extra-projects/default/ghc883/.plan.nix/ghci.nixnew file+101
@@ -0,0 +1,101 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."array" or (buildDepError "array"))
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."binary" or (buildDepError "binary"))
70+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
71+ (hsPkgs."containers" or (buildDepError "containers"))
72+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
73+ (hsPkgs."filepath" or (buildDepError "filepath"))
74+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
75+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
76+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
77+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
78+ (hsPkgs."transformers" or (buildDepError "transformers"))
79+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
80+ buildable = true;
81+ modules = [
82+ "GHCi/BreakArray"
83+ "GHCi/BinaryArray"
84+ "GHCi/Message"
85+ "GHCi/ResolvedBCO"
86+ "GHCi/RemoteTypes"
87+ "GHCi/FFI"
88+ "GHCi/InfoTable"
89+ "GHCi/StaticPtrTable"
90+ "GHCi/TH/Binary"
91+ "SizedSeq"
92+ ] ++ (pkgs.lib).optionals (flags.ghci) [
93+ "GHCi/Run"
94+ "GHCi/CreateBCO"
95+ "GHCi/ObjLink"
96+ "GHCi/Signals"
97+ "GHCi/TH"
98+ ];
99+ };
100+ };
101+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghci; }
materialized/ghc-extra-projects/default/ghc883/.plan.nix/iserv-proxy.nixnew file+86
@@ -0,0 +1,86 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv-proxy" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."directory" or (buildDepError "directory"))
75+ (hsPkgs."network" or (buildDepError "network"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ (hsPkgs."ghci" or (buildDepError "ghci"))
78+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
79+ ];
80+ buildable = true;
81+ hsSourceDirs = [ "src" ];
82+ mainPath = [ "Main.hs" ];
83+ };
84+ };
85+ };
86+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv-proxy; }
materialized/ghc-extra-projects/default/ghc883/.plan.nix/iserv.nixnew file+85
@@ -0,0 +1,85 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Template Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."ghci" or (buildDepError "ghci"))
75+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
76+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
77+ buildable = true;
78+ cSources = [ "cbits/iservmain.c" ];
79+ hsSourceDirs = [ "src" ];
80+ includeDirs = [ "." ];
81+ mainPath = [ "Main.hs" ] ++ [ "" ];
82+ };
83+ };
84+ };
85+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv; }
materialized/ghc-extra-projects/default/ghc883/.plan.nix/libiserv.nixnew file+89
@@ -0,0 +1,89 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."containers" or (buildDepError "containers"))
71+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
72+ (hsPkgs."ghci" or (buildDepError "ghci"))
73+ ] ++ (pkgs.lib).optionals (flags.network) [
74+ (hsPkgs."network" or (buildDepError "network"))
75+ (hsPkgs."directory" or (buildDepError "directory"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
78+ buildable = true;
79+ modules = [
80+ "Lib"
81+ "GHCi/Utils"
82+ ] ++ (pkgs.lib).optionals (flags.network) [
83+ "Remote/Message"
84+ "Remote/Slave"
85+ ];
86+ hsSourceDirs = [ "src" ];
87+ };
88+ };
89+ } // rec { src = (pkgs.lib).mkDefault ../libraries/libiserv; }
materialized/ghc-extra-projects/default/ghc883/.plan.nix/remote-iserv.nixnew file+77
@@ -0,0 +1,77 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "remote-iserv" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
70+ ];
71+ buildable = true;
72+ hsSourceDirs = [ "src" ];
73+ mainPath = [ "Cli.hs" ];
74+ };
75+ };
76+ };
77+ } // rec { src = (pkgs.lib).mkDefault ../utils/remote-iserv; }
materialized/ghc-extra-projects/default/ghc883/default.nixnew file+95
@@ -0,0 +1,95 @@
1+{
2+ pkgs = hackage:
3+ {
4+ packages = {
5+ "binary".revision = (((hackage."binary")."0.8.8.0").revisions).default;
6+ "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
7+ "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
8+ "ghc-heap".revision = (((hackage."ghc-heap")."8.8.3").revisions).default;
9+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
10+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
11+ "alex".revision = (((hackage."alex")."3.2.5").revisions).default;
12+ "alex".flags.small_base = true;
13+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
14+ "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
15+ "directory".revision = (((hackage."directory")."1.3.6.1").revisions).default;
16+ "template-haskell".revision = (((hackage."template-haskell")."2.15.0.0").revisions).default;
17+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
18+ "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
19+ "time".revision = (((hackage."time")."1.9.3").revisions).default;
20+ "terminfo".revision = (((hackage."terminfo")."0.4.1.4").revisions).default;
21+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
22+ "happy".revision = (((hackage."happy")."1.19.12").revisions).default;
23+ "happy".flags.small_base = true;
24+ "hpc".revision = (((hackage."hpc")."0.6.0.3").revisions).default;
25+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
26+ "process".revision = (((hackage."process")."1.6.8.2").revisions).default;
27+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
28+ "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.8.3").revisions).default;
29+ "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
30+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
31+ };
32+ compiler = {
33+ version = "8.8.3";
34+ nix-name = "ghc883";
35+ packages = {
36+ "ghc-prim" = "0.5.3";
37+ "ghc-heap" = "8.8.3";
38+ "mtl" = "2.2.2";
39+ "rts" = "1.0";
40+ "deepseq" = "1.4.4.0";
41+ "template-haskell" = "2.15.0.0";
42+ "containers" = "0.6.2.1";
43+ "base" = "4.13.0.0";
44+ "time" = "1.9.3";
45+ "terminfo" = "0.4.1.4";
46+ "transformers" = "0.5.6.2";
47+ "filepath" = "1.4.2.1";
48+ "pretty" = "1.1.3.6";
49+ "ghc-boot-th" = "8.8.3";
50+ "array" = "0.5.4.0";
51+ "integer-gmp" = "1.0.2.0";
52+ };
53+ };
54+ };
55+ extras = hackage:
56+ {
57+ packages = {
58+ ghc = ./.plan.nix/ghc.nix;
59+ bytestring = ./.plan.nix/bytestring.nix;
60+ remote-iserv = ./.plan.nix/remote-iserv.nix;
61+ iserv-proxy = ./.plan.nix/iserv-proxy.nix;
62+ libiserv = ./.plan.nix/libiserv.nix;
63+ ghc-boot = ./.plan.nix/ghc-boot.nix;
64+ ghci = ./.plan.nix/ghci.nix;
65+ iserv = ./.plan.nix/iserv.nix;
66+ };
67+ };
68+ modules = [
69+ ({ lib, ... }:
70+ {
71+ packages = {
72+ "ghc" = {
73+ flags = {
74+ "stage1" = lib.mkOverride 900 false;
75+ "stage2" = lib.mkOverride 900 true;
76+ "integer-gmp" = lib.mkOverride 900 false;
77+ "stage3" = lib.mkOverride 900 false;
78+ "ghci" = lib.mkOverride 900 true;
79+ "integer-simple" = lib.mkOverride 900 false;
80+ "terminfo" = lib.mkOverride 900 true;
81+ };
82+ };
83+ "bytestring" = {
84+ flags = { "integer-simple" = lib.mkOverride 900 false; };
85+ };
86+ "remote-iserv" = { flags = {}; };
87+ "iserv-proxy" = { flags = {}; };
88+ "libiserv" = { flags = { "network" = lib.mkOverride 900 true; }; };
89+ "ghc-boot" = { flags = {}; };
90+ "ghci" = { flags = { "ghci" = lib.mkOverride 900 true; }; };
91+ "iserv" = { flags = {}; };
92+ };
93+ })
94+ ];
95+ }
materialized/ghc-extra-projects/windows/ghc865/.plan.nix/bytestring.nixnew file+167
@@ -0,0 +1,167 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "README.md" "Changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
69+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
70+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
71+ buildable = true;
72+ modules = [
73+ "Data/ByteString/Builder/ASCII"
74+ "Data/ByteString/Builder/Prim/Binary"
75+ "Data/ByteString/Builder/Prim/ASCII"
76+ "Data/ByteString/Builder/Prim/Internal/Floating"
77+ "Data/ByteString/Builder/Prim/Internal/UncheckedShifts"
78+ "Data/ByteString/Builder/Prim/Internal/Base16"
79+ "Data/ByteString"
80+ "Data/ByteString/Char8"
81+ "Data/ByteString/Unsafe"
82+ "Data/ByteString/Internal"
83+ "Data/ByteString/Lazy"
84+ "Data/ByteString/Lazy/Char8"
85+ "Data/ByteString/Lazy/Internal"
86+ "Data/ByteString/Short"
87+ "Data/ByteString/Short/Internal"
88+ "Data/ByteString/Builder"
89+ "Data/ByteString/Builder/Extra"
90+ "Data/ByteString/Builder/Prim"
91+ "Data/ByteString/Builder/Internal"
92+ "Data/ByteString/Builder/Prim/Internal"
93+ "Data/ByteString/Lazy/Builder"
94+ "Data/ByteString/Lazy/Builder/Extras"
95+ "Data/ByteString/Lazy/Builder/ASCII"
96+ ];
97+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
98+ includeDirs = [ "include" ];
99+ includes = [ "fpstring.h" ];
100+ };
101+ tests = {
102+ "prop-compiled" = {
103+ depends = [
104+ (hsPkgs."base" or (buildDepError "base"))
105+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
106+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
107+ (hsPkgs."random" or (buildDepError "random"))
108+ (hsPkgs."directory" or (buildDepError "directory"))
109+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
110+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
111+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
112+ ];
113+ buildable = true;
114+ modules = [ "Rules" "QuickCheckUtils" "TestFramework" ];
115+ cSources = [ "cbits/fpstring.c" ];
116+ hsSourceDirs = [ "." "tests" ];
117+ includeDirs = [ "include" ];
118+ mainPath = [ "Properties.hs" ];
119+ };
120+ "regressions" = {
121+ depends = [
122+ (hsPkgs."base" or (buildDepError "base"))
123+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
124+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
125+ (hsPkgs."random" or (buildDepError "random"))
126+ (hsPkgs."directory" or (buildDepError "directory"))
127+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
128+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
129+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
130+ ];
131+ buildable = false;
132+ cSources = [ "cbits/fpstring.c" ];
133+ hsSourceDirs = [ "." "tests" ];
134+ includeDirs = [ "include" ];
135+ mainPath = [ "Regressions.hs" ];
136+ };
137+ "test-builder" = {
138+ depends = [
139+ (hsPkgs."base" or (buildDepError "base"))
140+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
141+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
142+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
143+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
144+ (hsPkgs."dlist" or (buildDepError "dlist"))
145+ (hsPkgs."directory" or (buildDepError "directory"))
146+ (hsPkgs."mtl" or (buildDepError "mtl"))
147+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
148+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
149+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
150+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
151+ ];
152+ buildable = true;
153+ modules = [
154+ "Data/ByteString/Builder/Tests"
155+ "Data/ByteString/Builder/Prim/Tests"
156+ "Data/ByteString/Builder/Prim/TestUtils"
157+ "TestFramework"
158+ ];
159+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
160+ hsSourceDirs = [ "." "tests" "tests/builder" ];
161+ includeDirs = [ "include" ];
162+ includes = [ "fpstring.h" ];
163+ mainPath = [ "TestSuite.hs" ];
164+ };
165+ };
166+ };
167+ } // rec { src = (pkgs.lib).mkDefault ../libraries/bytestring; }
materialized/ghc-extra-projects/windows/ghc865/.plan.nix/ghc-boot.nixnew file+84
@@ -0,0 +1,84 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."directory" or (buildDepError "directory"))
71+ (hsPkgs."filepath" or (buildDepError "filepath"))
72+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
73+ ];
74+ buildable = true;
75+ modules = [
76+ "GHC/LanguageExtensions"
77+ "GHC/PackageDb"
78+ "GHC/Serialized"
79+ "GHC/ForeignSrcLang"
80+ "GHC/HandleEncoding"
81+ ];
82+ };
83+ };
84+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghc-boot; }
materialized/ghc-extra-projects/windows/ghc865/.plan.nix/ghc.nixnew file+590
@@ -0,0 +1,590 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ terminfo = true;
45+ stage1 = false;
46+ stage2 = true;
47+ stage3 = false;
48+ };
49+ package = {
50+ specVersion = "1.10";
51+ identifier = { name = "ghc"; version = "8.6.5"; };
52+ license = "BSD-3-Clause";
53+ copyright = "";
54+ maintainer = "glasgow-haskell-users@haskell.org";
55+ author = "The GHC Team";
56+ homepage = "http://www.haskell.org/ghc/";
57+ url = "";
58+ synopsis = "The GHC API";
59+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
60+ buildType = "Simple";
61+ isLocal = true;
62+ detailLevel = "FullDetails";
63+ licenseFiles = [ "LICENSE" ];
64+ dataDir = "";
65+ dataFiles = [];
66+ extraSrcFiles = [
67+ "utils/md5.h"
68+ "Unique.h"
69+ "nativeGen/NCG.h"
70+ "parser/cutils.h"
71+ ];
72+ extraTmpFiles = [];
73+ extraDocFiles = [];
74+ };
75+ components = {
76+ "library" = {
77+ depends = [
78+ (hsPkgs."base" or (buildDepError "base"))
79+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
80+ (hsPkgs."directory" or (buildDepError "directory"))
81+ (hsPkgs."process" or (buildDepError "process"))
82+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
83+ (hsPkgs."binary" or (buildDepError "binary"))
84+ (hsPkgs."time" or (buildDepError "time"))
85+ (hsPkgs."containers" or (buildDepError "containers"))
86+ (hsPkgs."array" or (buildDepError "array"))
87+ (hsPkgs."filepath" or (buildDepError "filepath"))
88+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
89+ (hsPkgs."hpc" or (buildDepError "hpc"))
90+ (hsPkgs."transformers" or (buildDepError "transformers"))
91+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
92+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
93+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
94+ (hsPkgs."ghci" or (buildDepError "ghci"))
95+ ] ++ (if system.isWindows
96+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
97+ else [
98+ (hsPkgs."unix" or (buildDepError "unix"))
99+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")));
100+ build-tools = [
101+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
102+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
103+ ];
104+ buildable = true;
105+ modules = [
106+ "GhcPrelude"
107+ "Ar"
108+ "FileCleanup"
109+ "DriverBkp"
110+ "BkpSyn"
111+ "NameShape"
112+ "RnModIface"
113+ "Avail"
114+ "AsmUtils"
115+ "BasicTypes"
116+ "ConLike"
117+ "DataCon"
118+ "PatSyn"
119+ "Demand"
120+ "Debug"
121+ "Exception"
122+ "FieldLabel"
123+ "GhcMonad"
124+ "Hooks"
125+ "Id"
126+ "IdInfo"
127+ "Lexeme"
128+ "Literal"
129+ "Llvm"
130+ "Llvm/AbsSyn"
131+ "Llvm/MetaData"
132+ "Llvm/PpLlvm"
133+ "Llvm/Types"
134+ "LlvmCodeGen"
135+ "LlvmCodeGen/Base"
136+ "LlvmCodeGen/CodeGen"
137+ "LlvmCodeGen/Data"
138+ "LlvmCodeGen/Ppr"
139+ "LlvmCodeGen/Regs"
140+ "LlvmMangler"
141+ "MkId"
142+ "Module"
143+ "Name"
144+ "NameEnv"
145+ "NameSet"
146+ "OccName"
147+ "RdrName"
148+ "NameCache"
149+ "SrcLoc"
150+ "UniqSupply"
151+ "Unique"
152+ "Var"
153+ "VarEnv"
154+ "VarSet"
155+ "UnVarGraph"
156+ "BlockId"
157+ "CLabel"
158+ "Cmm"
159+ "CmmBuildInfoTables"
160+ "CmmPipeline"
161+ "CmmCallConv"
162+ "CmmCommonBlockElim"
163+ "CmmImplementSwitchPlans"
164+ "CmmContFlowOpt"
165+ "CmmExpr"
166+ "CmmInfo"
167+ "CmmLex"
168+ "CmmLint"
169+ "CmmLive"
170+ "CmmMachOp"
171+ "CmmMonad"
172+ "CmmSwitch"
173+ "CmmNode"
174+ "CmmOpt"
175+ "CmmParse"
176+ "CmmProcPoint"
177+ "CmmSink"
178+ "CmmType"
179+ "CmmUtils"
180+ "CmmLayoutStack"
181+ "EnumSet"
182+ "MkGraph"
183+ "PprBase"
184+ "PprC"
185+ "PprCmm"
186+ "PprCmmDecl"
187+ "PprCmmExpr"
188+ "Bitmap"
189+ "CodeGen/Platform"
190+ "CodeGen/Platform/ARM"
191+ "CodeGen/Platform/ARM64"
192+ "CodeGen/Platform/NoRegs"
193+ "CodeGen/Platform/PPC"
194+ "CodeGen/Platform/PPC_Darwin"
195+ "CodeGen/Platform/SPARC"
196+ "CodeGen/Platform/X86"
197+ "CodeGen/Platform/X86_64"
198+ "CgUtils"
199+ "StgCmm"
200+ "StgCmmBind"
201+ "StgCmmClosure"
202+ "StgCmmCon"
203+ "StgCmmEnv"
204+ "StgCmmExpr"
205+ "StgCmmForeign"
206+ "StgCmmHeap"
207+ "StgCmmHpc"
208+ "StgCmmArgRep"
209+ "StgCmmLayout"
210+ "StgCmmMonad"
211+ "StgCmmPrim"
212+ "StgCmmProf"
213+ "StgCmmTicky"
214+ "StgCmmUtils"
215+ "StgCmmExtCode"
216+ "SMRep"
217+ "CoreArity"
218+ "CoreFVs"
219+ "CoreLint"
220+ "CorePrep"
221+ "CoreSubst"
222+ "CoreOpt"
223+ "CoreSyn"
224+ "TrieMap"
225+ "CoreTidy"
226+ "CoreUnfold"
227+ "CoreUtils"
228+ "CoreMap"
229+ "CoreSeq"
230+ "CoreStats"
231+ "MkCore"
232+ "PprCore"
233+ "PmExpr"
234+ "TmOracle"
235+ "Check"
236+ "Coverage"
237+ "Desugar"
238+ "DsArrows"
239+ "DsBinds"
240+ "DsCCall"
241+ "DsExpr"
242+ "DsForeign"
243+ "DsGRHSs"
244+ "DsListComp"
245+ "DsMonad"
246+ "DsUsage"
247+ "DsUtils"
248+ "ExtractDocs"
249+ "Match"
250+ "MatchCon"
251+ "MatchLit"
252+ "HsBinds"
253+ "HsDecls"
254+ "HsDoc"
255+ "HsExpr"
256+ "HsImpExp"
257+ "HsLit"
258+ "PlaceHolder"
259+ "HsExtension"
260+ "HsInstances"
261+ "HsPat"
262+ "HsSyn"
263+ "HsTypes"
264+ "HsUtils"
265+ "HsDumpAst"
266+ "BinIface"
267+ "BinFingerprint"
268+ "BuildTyCl"
269+ "IfaceEnv"
270+ "IfaceSyn"
271+ "IfaceType"
272+ "ToIface"
273+ "LoadIface"
274+ "MkIface"
275+ "TcIface"
276+ "FlagChecker"
277+ "Annotations"
278+ "CmdLineParser"
279+ "CodeOutput"
280+ "Config"
281+ "Constants"
282+ "DriverMkDepend"
283+ "DriverPhases"
284+ "PipelineMonad"
285+ "DriverPipeline"
286+ "DynFlags"
287+ "ErrUtils"
288+ "Finder"
289+ "GHC"
290+ "GhcMake"
291+ "GhcPlugins"
292+ "DynamicLoading"
293+ "HeaderInfo"
294+ "HscMain"
295+ "HscStats"
296+ "HscTypes"
297+ "InteractiveEval"
298+ "InteractiveEvalTypes"
299+ "PackageConfig"
300+ "Packages"
301+ "PlatformConstants"
302+ "Plugins"
303+ "TcPluginM"
304+ "PprTyThing"
305+ "StaticPtrTable"
306+ "SysTools"
307+ "SysTools/BaseDir"
308+ "SysTools/Terminal"
309+ "SysTools/ExtraObj"
310+ "SysTools/Info"
311+ "SysTools/Process"
312+ "SysTools/Tasks"
313+ "Elf"
314+ "TidyPgm"
315+ "Ctype"
316+ "HaddockUtils"
317+ "Lexer"
318+ "OptCoercion"
319+ "Parser"
320+ "RdrHsSyn"
321+ "ApiAnnotation"
322+ "ForeignCall"
323+ "KnownUniques"
324+ "PrelInfo"
325+ "PrelNames"
326+ "PrelRules"
327+ "PrimOp"
328+ "TysPrim"
329+ "TysWiredIn"
330+ "CostCentre"
331+ "CostCentreState"
332+ "ProfInit"
333+ "RnBinds"
334+ "RnEnv"
335+ "RnExpr"
336+ "RnHsDoc"
337+ "RnNames"
338+ "RnPat"
339+ "RnSource"
340+ "RnSplice"
341+ "RnTypes"
342+ "RnFixity"
343+ "RnUtils"
344+ "RnUnbound"
345+ "CoreMonad"
346+ "CSE"
347+ "FloatIn"
348+ "FloatOut"
349+ "LiberateCase"
350+ "OccurAnal"
351+ "SAT"
352+ "SetLevels"
353+ "SimplCore"
354+ "SimplEnv"
355+ "SimplMonad"
356+ "SimplUtils"
357+ "Simplify"
358+ "SimplStg"
359+ "StgStats"
360+ "StgCse"
361+ "UnariseStg"
362+ "RepType"
363+ "Rules"
364+ "SpecConstr"
365+ "Specialise"
366+ "CoreToStg"
367+ "StgLint"
368+ "StgSyn"
369+ "CallArity"
370+ "DmdAnal"
371+ "Exitify"
372+ "WorkWrap"
373+ "WwLib"
374+ "FamInst"
375+ "Inst"
376+ "TcAnnotations"
377+ "TcArrows"
378+ "TcBinds"
379+ "TcSigs"
380+ "TcClassDcl"
381+ "TcDefaults"
382+ "TcDeriv"
383+ "TcDerivInfer"
384+ "TcDerivUtils"
385+ "TcEnv"
386+ "TcExpr"
387+ "TcForeign"
388+ "TcGenDeriv"
389+ "TcGenFunctor"
390+ "TcGenGenerics"
391+ "TcHsSyn"
392+ "TcHsType"
393+ "TcInstDcls"
394+ "TcMType"
395+ "TcValidity"
396+ "TcMatches"
397+ "TcPat"
398+ "TcPatSyn"
399+ "TcRnDriver"
400+ "TcBackpack"
401+ "TcRnExports"
402+ "TcRnMonad"
403+ "TcRnTypes"
404+ "TcRules"
405+ "TcSimplify"
406+ "TcHoleErrors"
407+ "TcErrors"
408+ "TcTyClsDecls"
409+ "TcTyDecls"
410+ "TcTypeable"
411+ "TcType"
412+ "TcEvidence"
413+ "TcEvTerm"
414+ "TcUnify"
415+ "TcInteract"
416+ "TcCanonical"
417+ "TcFlatten"
418+ "TcSMonad"
419+ "TcTypeNats"
420+ "TcSplice"
421+ "Class"
422+ "Coercion"
423+ "DsMeta"
424+ "THNames"
425+ "FamInstEnv"
426+ "FunDeps"
427+ "InstEnv"
428+ "TyCon"
429+ "CoAxiom"
430+ "Kind"
431+ "Type"
432+ "TyCoRep"
433+ "Unify"
434+ "Bag"
435+ "Binary"
436+ "BooleanFormula"
437+ "BufWrite"
438+ "Digraph"
439+ "Encoding"
440+ "FastFunctions"
441+ "FastMutInt"
442+ "FastString"
443+ "FastStringEnv"
444+ "Fingerprint"
445+ "FiniteMap"
446+ "FV"
447+ "GraphBase"
448+ "GraphColor"
449+ "GraphOps"
450+ "GraphPpr"
451+ "IOEnv"
452+ "Json"
453+ "ListSetOps"
454+ "ListT"
455+ "Maybes"
456+ "MonadUtils"
457+ "OrdList"
458+ "Outputable"
459+ "Pair"
460+ "Panic"
461+ "PprColour"
462+ "Pretty"
463+ "State"
464+ "Stream"
465+ "StringBuffer"
466+ "UniqDFM"
467+ "UniqDSet"
468+ "UniqFM"
469+ "UniqMap"
470+ "UniqSet"
471+ "Util"
472+ "Hoopl/Block"
473+ "Hoopl/Collections"
474+ "Hoopl/Dataflow"
475+ "Hoopl/Graph"
476+ "Hoopl/Label"
477+ "AsmCodeGen"
478+ "TargetReg"
479+ "NCGMonad"
480+ "Instruction"
481+ "Format"
482+ "Reg"
483+ "RegClass"
484+ "PIC"
485+ "Platform"
486+ "CPrim"
487+ "X86/Regs"
488+ "X86/RegInfo"
489+ "X86/Instr"
490+ "X86/Cond"
491+ "X86/Ppr"
492+ "X86/CodeGen"
493+ "PPC/Regs"
494+ "PPC/RegInfo"
495+ "PPC/Instr"
496+ "PPC/Cond"
497+ "PPC/Ppr"
498+ "PPC/CodeGen"
499+ "SPARC/Base"
500+ "SPARC/Regs"
501+ "SPARC/Imm"
502+ "SPARC/AddrMode"
503+ "SPARC/Cond"
504+ "SPARC/Instr"
505+ "SPARC/Stack"
506+ "SPARC/ShortcutJump"
507+ "SPARC/Ppr"
508+ "SPARC/CodeGen"
509+ "SPARC/CodeGen/Amode"
510+ "SPARC/CodeGen/Base"
511+ "SPARC/CodeGen/CondCode"
512+ "SPARC/CodeGen/Gen32"
513+ "SPARC/CodeGen/Gen64"
514+ "SPARC/CodeGen/Sanity"
515+ "SPARC/CodeGen/Expand"
516+ "RegAlloc/Liveness"
517+ "RegAlloc/Graph/Main"
518+ "RegAlloc/Graph/Stats"
519+ "RegAlloc/Graph/ArchBase"
520+ "RegAlloc/Graph/ArchX86"
521+ "RegAlloc/Graph/Coalesce"
522+ "RegAlloc/Graph/Spill"
523+ "RegAlloc/Graph/SpillClean"
524+ "RegAlloc/Graph/SpillCost"
525+ "RegAlloc/Graph/TrivColorable"
526+ "RegAlloc/Linear/Main"
527+ "RegAlloc/Linear/JoinToTargets"
528+ "RegAlloc/Linear/State"
529+ "RegAlloc/Linear/Stats"
530+ "RegAlloc/Linear/FreeRegs"
531+ "RegAlloc/Linear/StackMap"
532+ "RegAlloc/Linear/Base"
533+ "RegAlloc/Linear/X86/FreeRegs"
534+ "RegAlloc/Linear/X86_64/FreeRegs"
535+ "RegAlloc/Linear/PPC/FreeRegs"
536+ "RegAlloc/Linear/SPARC/FreeRegs"
537+ "Dwarf"
538+ "Dwarf/Types"
539+ "Dwarf/Constants"
540+ "Convert"
541+ "ByteCodeTypes"
542+ "ByteCodeAsm"
543+ "ByteCodeGen"
544+ "ByteCodeInstr"
545+ "ByteCodeItbls"
546+ "ByteCodeLink"
547+ "Debugger"
548+ "Linker"
549+ "RtClosureInspect"
550+ "GHCi"
551+ ];
552+ cSources = [
553+ "parser/cutils.c"
554+ "ghci/keepCAFsForGHCi.c"
555+ "cbits/genSym.c"
556+ ];
557+ hsSourceDirs = [
558+ "backpack"
559+ "basicTypes"
560+ "cmm"
561+ "codeGen"
562+ "coreSyn"
563+ "deSugar"
564+ "ghci"
565+ "hsSyn"
566+ "iface"
567+ "llvmGen"
568+ "main"
569+ "nativeGen"
570+ "parser"
571+ "prelude"
572+ "profiling"
573+ "rename"
574+ "simplCore"
575+ "simplStg"
576+ "specialise"
577+ "stgSyn"
578+ "stranal"
579+ "typecheck"
580+ "types"
581+ "utils"
582+ ];
583+ includeDirs = [
584+ "."
585+ "parser"
586+ "utils"
587+ ] ++ (pkgs.lib).optional (flags.ghci) "../rts/dist/build";
588+ };
589+ };
590+ } // rec { src = (pkgs.lib).mkDefault ../compiler; }
materialized/ghc-extra-projects/windows/ghc865/.plan.nix/ghci.nixnew file+101
@@ -0,0 +1,101 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."array" or (buildDepError "array"))
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."binary" or (buildDepError "binary"))
70+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
71+ (hsPkgs."containers" or (buildDepError "containers"))
72+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
73+ (hsPkgs."filepath" or (buildDepError "filepath"))
74+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
75+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
76+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
77+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
78+ (hsPkgs."transformers" or (buildDepError "transformers"))
79+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
80+ buildable = true;
81+ modules = [
82+ "GHCi/BreakArray"
83+ "GHCi/BinaryArray"
84+ "GHCi/Message"
85+ "GHCi/ResolvedBCO"
86+ "GHCi/RemoteTypes"
87+ "GHCi/FFI"
88+ "GHCi/InfoTable"
89+ "GHCi/StaticPtrTable"
90+ "GHCi/TH/Binary"
91+ "SizedSeq"
92+ ] ++ (pkgs.lib).optionals (flags.ghci) [
93+ "GHCi/Run"
94+ "GHCi/CreateBCO"
95+ "GHCi/ObjLink"
96+ "GHCi/Signals"
97+ "GHCi/TH"
98+ ];
99+ };
100+ };
101+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghci; }
materialized/ghc-extra-projects/windows/ghc865/.plan.nix/iserv-proxy.nixnew file+86
@@ -0,0 +1,86 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv-proxy" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."directory" or (buildDepError "directory"))
75+ (hsPkgs."network" or (buildDepError "network"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ (hsPkgs."ghci" or (buildDepError "ghci"))
78+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
79+ ];
80+ buildable = true;
81+ hsSourceDirs = [ "src" ];
82+ mainPath = [ "Main.hs" ];
83+ };
84+ };
85+ };
86+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv-proxy; }
materialized/ghc-extra-projects/windows/ghc865/.plan.nix/iserv.nixnew file+85
@@ -0,0 +1,85 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."ghci" or (buildDepError "ghci"))
75+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
76+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
77+ buildable = true;
78+ cSources = [ "cbits/iservmain.c" ];
79+ hsSourceDirs = [ "src" ];
80+ includeDirs = [ "." ];
81+ mainPath = [ "Main.hs" ] ++ [ "" ];
82+ };
83+ };
84+ };
85+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv; }
materialized/ghc-extra-projects/windows/ghc865/.plan.nix/libiserv.nixnew file+89
@@ -0,0 +1,89 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."containers" or (buildDepError "containers"))
71+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
72+ (hsPkgs."ghci" or (buildDepError "ghci"))
73+ ] ++ (pkgs.lib).optionals (flags.network) [
74+ (hsPkgs."network" or (buildDepError "network"))
75+ (hsPkgs."directory" or (buildDepError "directory"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
78+ buildable = true;
79+ modules = [
80+ "Lib"
81+ "GHCi/Utils"
82+ ] ++ (pkgs.lib).optionals (flags.network) [
83+ "Remote/Message"
84+ "Remote/Slave"
85+ ];
86+ hsSourceDirs = [ "src" ];
87+ };
88+ };
89+ } // rec { src = (pkgs.lib).mkDefault ../libraries/libiserv; }
materialized/ghc-extra-projects/windows/ghc865/.plan.nix/remote-iserv.nixnew file+77
@@ -0,0 +1,77 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.6.5"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "remote-iserv" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
70+ ];
71+ buildable = true;
72+ hsSourceDirs = [ "src" ];
73+ mainPath = [ "Cli.hs" ];
74+ };
75+ };
76+ };
77+ } // rec { src = (pkgs.lib).mkDefault ../utils/remote-iserv; }
materialized/ghc-extra-projects/windows/ghc865/default.nixnew file+90
@@ -0,0 +1,90 @@
1+{
2+ pkgs = hackage:
3+ {
4+ packages = {
5+ "binary".revision = (((hackage."binary")."0.8.8.0").revisions).default;
6+ "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
7+ "ghc-heap".revision = (((hackage."ghc-heap")."8.6.5").revisions).default;
8+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
9+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
10+ "alex".revision = (((hackage."alex")."3.2.5").revisions).default;
11+ "alex".flags.small_base = true;
12+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
13+ "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
14+ "directory".revision = (((hackage."directory")."1.3.6.1").revisions).default;
15+ "template-haskell".revision = (((hackage."template-haskell")."2.14.0.0").revisions).default;
16+ "containers".revision = (((hackage."containers")."0.6.0.1").revisions).default;
17+ "base".revision = (((hackage."base")."4.12.0.0").revisions).default;
18+ "time".revision = (((hackage."time")."1.8.0.4").revisions).default;
19+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
20+ "happy".revision = (((hackage."happy")."1.19.12").revisions).default;
21+ "happy".flags.small_base = true;
22+ "hpc".revision = (((hackage."hpc")."0.6.0.3").revisions).default;
23+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
24+ "process".revision = (((hackage."process")."1.6.8.2").revisions).default;
25+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
26+ "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.6.5").revisions).default;
27+ "array".revision = (((hackage."array")."0.5.3.0").revisions).default;
28+ "Win32".revision = (((hackage."Win32")."2.6.2.0").revisions).default;
29+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
30+ };
31+ compiler = {
32+ version = "8.6.5";
33+ nix-name = "ghc865";
34+ packages = {
35+ "ghc-prim" = "0.5.3";
36+ "ghc-heap" = "8.6.5";
37+ "mtl" = "2.2.2";
38+ "rts" = "1.0";
39+ "deepseq" = "1.4.4.0";
40+ "template-haskell" = "2.14.0.0";
41+ "containers" = "0.6.0.1";
42+ "base" = "4.12.0.0";
43+ "transformers" = "0.5.6.2";
44+ "filepath" = "1.4.2.1";
45+ "pretty" = "1.1.3.6";
46+ "ghc-boot-th" = "8.6.5";
47+ "array" = "0.5.3.0";
48+ "integer-gmp" = "1.0.2.0";
49+ };
50+ };
51+ };
52+ extras = hackage:
53+ {
54+ packages = {
55+ ghc = ./.plan.nix/ghc.nix;
56+ bytestring = ./.plan.nix/bytestring.nix;
57+ remote-iserv = ./.plan.nix/remote-iserv.nix;
58+ iserv-proxy = ./.plan.nix/iserv-proxy.nix;
59+ libiserv = ./.plan.nix/libiserv.nix;
60+ ghc-boot = ./.plan.nix/ghc-boot.nix;
61+ ghci = ./.plan.nix/ghci.nix;
62+ iserv = ./.plan.nix/iserv.nix;
63+ };
64+ };
65+ modules = [
66+ ({ lib, ... }:
67+ {
68+ packages = {
69+ "ghc" = {
70+ flags = {
71+ "stage1" = lib.mkOverride 900 false;
72+ "stage2" = lib.mkOverride 900 true;
73+ "stage3" = lib.mkOverride 900 false;
74+ "ghci" = lib.mkOverride 900 true;
75+ "terminfo" = lib.mkOverride 900 true;
76+ };
77+ };
78+ "bytestring" = {
79+ flags = { "integer-simple" = lib.mkOverride 900 false; };
80+ };
81+ "remote-iserv" = { flags = {}; };
82+ "iserv-proxy" = { flags = {}; };
83+ "libiserv" = { flags = { "network" = lib.mkOverride 900 true; }; };
84+ "ghc-boot" = { flags = {}; };
85+ "ghci" = { flags = { "ghci" = lib.mkOverride 900 true; }; };
86+ "iserv" = { flags = {}; };
87+ };
88+ })
89+ ];
90+ }
materialized/ghc-extra-projects/windows/ghc882/.plan.nix/bytestring.nixnew file+167
@@ -0,0 +1,167 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.10.0"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "README.md" "Changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
69+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
70+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
71+ buildable = true;
72+ modules = [
73+ "Data/ByteString/Builder/ASCII"
74+ "Data/ByteString/Builder/Prim/Binary"
75+ "Data/ByteString/Builder/Prim/ASCII"
76+ "Data/ByteString/Builder/Prim/Internal/Floating"
77+ "Data/ByteString/Builder/Prim/Internal/UncheckedShifts"
78+ "Data/ByteString/Builder/Prim/Internal/Base16"
79+ "Data/ByteString"
80+ "Data/ByteString/Char8"
81+ "Data/ByteString/Unsafe"
82+ "Data/ByteString/Internal"
83+ "Data/ByteString/Lazy"
84+ "Data/ByteString/Lazy/Char8"
85+ "Data/ByteString/Lazy/Internal"
86+ "Data/ByteString/Short"
87+ "Data/ByteString/Short/Internal"
88+ "Data/ByteString/Builder"
89+ "Data/ByteString/Builder/Extra"
90+ "Data/ByteString/Builder/Prim"
91+ "Data/ByteString/Builder/Internal"
92+ "Data/ByteString/Builder/Prim/Internal"
93+ "Data/ByteString/Lazy/Builder"
94+ "Data/ByteString/Lazy/Builder/Extras"
95+ "Data/ByteString/Lazy/Builder/ASCII"
96+ ];
97+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
98+ includeDirs = [ "include" ];
99+ includes = [ "fpstring.h" ];
100+ };
101+ tests = {
102+ "prop-compiled" = {
103+ depends = [
104+ (hsPkgs."base" or (buildDepError "base"))
105+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
106+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
107+ (hsPkgs."random" or (buildDepError "random"))
108+ (hsPkgs."directory" or (buildDepError "directory"))
109+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
110+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
111+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
112+ ];
113+ buildable = true;
114+ modules = [ "Rules" "QuickCheckUtils" "TestFramework" ];
115+ cSources = [ "cbits/fpstring.c" ];
116+ hsSourceDirs = [ "." "tests" ];
117+ includeDirs = [ "include" ];
118+ mainPath = [ "Properties.hs" ];
119+ };
120+ "regressions" = {
121+ depends = [
122+ (hsPkgs."base" or (buildDepError "base"))
123+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
124+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
125+ (hsPkgs."random" or (buildDepError "random"))
126+ (hsPkgs."directory" or (buildDepError "directory"))
127+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
128+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
129+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
130+ ];
131+ buildable = false;
132+ cSources = [ "cbits/fpstring.c" ];
133+ hsSourceDirs = [ "." "tests" ];
134+ includeDirs = [ "include" ];
135+ mainPath = [ "Regressions.hs" ];
136+ };
137+ "test-builder" = {
138+ depends = [
139+ (hsPkgs."base" or (buildDepError "base"))
140+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
141+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
142+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
143+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
144+ (hsPkgs."dlist" or (buildDepError "dlist"))
145+ (hsPkgs."directory" or (buildDepError "directory"))
146+ (hsPkgs."mtl" or (buildDepError "mtl"))
147+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
148+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
149+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
150+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
151+ ];
152+ buildable = true;
153+ modules = [
154+ "Data/ByteString/Builder/Tests"
155+ "Data/ByteString/Builder/Prim/Tests"
156+ "Data/ByteString/Builder/Prim/TestUtils"
157+ "TestFramework"
158+ ];
159+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
160+ hsSourceDirs = [ "." "tests" "tests/builder" ];
161+ includeDirs = [ "include" ];
162+ includes = [ "fpstring.h" ];
163+ mainPath = [ "TestSuite.hs" ];
164+ };
165+ };
166+ };
167+ } // rec { src = (pkgs.lib).mkDefault ../libraries/bytestring; }
materialized/ghc-extra-projects/windows/ghc882/.plan.nix/ghc-boot.nixnew file+84
@@ -0,0 +1,84 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."directory" or (buildDepError "directory"))
71+ (hsPkgs."filepath" or (buildDepError "filepath"))
72+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
73+ ];
74+ buildable = true;
75+ modules = [
76+ "GHC/LanguageExtensions"
77+ "GHC/PackageDb"
78+ "GHC/Serialized"
79+ "GHC/ForeignSrcLang"
80+ "GHC/HandleEncoding"
81+ ];
82+ };
83+ };
84+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghc-boot; }
materialized/ghc-extra-projects/windows/ghc882/.plan.nix/ghc.nixnew file+608
@@ -0,0 +1,608 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ stage1 = false;
45+ stage2 = true;
46+ stage3 = false;
47+ terminfo = true;
48+ integer-simple = false;
49+ integer-gmp = false;
50+ };
51+ package = {
52+ specVersion = "1.10";
53+ identifier = { name = "ghc"; version = "8.8.2"; };
54+ license = "BSD-3-Clause";
55+ copyright = "";
56+ maintainer = "glasgow-haskell-users@haskell.org";
57+ author = "The GHC Team";
58+ homepage = "http://www.haskell.org/ghc/";
59+ url = "";
60+ synopsis = "The GHC API";
61+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
62+ buildType = "Simple";
63+ isLocal = true;
64+ detailLevel = "FullDetails";
65+ licenseFiles = [ "LICENSE" ];
66+ dataDir = "";
67+ dataFiles = [];
68+ extraSrcFiles = [
69+ "utils/md5.h"
70+ "Unique.h"
71+ "nativeGen/NCG.h"
72+ "parser/cutils.h"
73+ ];
74+ extraTmpFiles = [];
75+ extraDocFiles = [];
76+ };
77+ components = {
78+ "library" = {
79+ depends = ((([
80+ (hsPkgs."base" or (buildDepError "base"))
81+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
82+ (hsPkgs."directory" or (buildDepError "directory"))
83+ (hsPkgs."process" or (buildDepError "process"))
84+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
85+ (hsPkgs."binary" or (buildDepError "binary"))
86+ (hsPkgs."time" or (buildDepError "time"))
87+ (hsPkgs."containers" or (buildDepError "containers"))
88+ (hsPkgs."array" or (buildDepError "array"))
89+ (hsPkgs."filepath" or (buildDepError "filepath"))
90+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
91+ (hsPkgs."hpc" or (buildDepError "hpc"))
92+ (hsPkgs."transformers" or (buildDepError "transformers"))
93+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
94+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
95+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
96+ (hsPkgs."ghci" or (buildDepError "ghci"))
97+ ] ++ (if system.isWindows
98+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
99+ else [
100+ (hsPkgs."unix" or (buildDepError "unix"))
101+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")))) ++ (pkgs.lib).optional (flags.integer-gmp && flags.integer-simple) (hsPkgs."invalid-cabal-flag-settings" or (buildDepError "invalid-cabal-flag-settings"))) ++ (pkgs.lib).optional (flags.integer-gmp) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp"))) ++ (pkgs.lib).optional (flags.integer-simple) (hsPkgs."integer-simple" or (buildDepError "integer-simple"));
102+ build-tools = [
103+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
104+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
105+ ];
106+ buildable = true;
107+ modules = [
108+ "GhcPrelude"
109+ "HieTypes"
110+ "HieDebug"
111+ "HieBin"
112+ "HieUtils"
113+ "HieAst"
114+ "Ar"
115+ "FileCleanup"
116+ "DriverBkp"
117+ "BkpSyn"
118+ "NameShape"
119+ "RnModIface"
120+ "Avail"
121+ "AsmUtils"
122+ "BasicTypes"
123+ "ConLike"
124+ "DataCon"
125+ "PatSyn"
126+ "Demand"
127+ "Debug"
128+ "Exception"
129+ "FieldLabel"
130+ "GhcMonad"
131+ "Hooks"
132+ "Id"
133+ "IdInfo"
134+ "Lexeme"
135+ "Literal"
136+ "Llvm"
137+ "Llvm/AbsSyn"
138+ "Llvm/MetaData"
139+ "Llvm/PpLlvm"
140+ "Llvm/Types"
141+ "LlvmCodeGen"
142+ "LlvmCodeGen/Base"
143+ "LlvmCodeGen/CodeGen"
144+ "LlvmCodeGen/Data"
145+ "LlvmCodeGen/Ppr"
146+ "LlvmCodeGen/Regs"
147+ "LlvmMangler"
148+ "MkId"
149+ "Module"
150+ "Name"
151+ "NameEnv"
152+ "NameSet"
153+ "OccName"
154+ "RdrName"
155+ "NameCache"
156+ "SrcLoc"
157+ "UniqSupply"
158+ "Unique"
159+ "Var"
160+ "VarEnv"
161+ "VarSet"
162+ "UnVarGraph"
163+ "BlockId"
164+ "CLabel"
165+ "Cmm"
166+ "CmmBuildInfoTables"
167+ "CmmPipeline"
168+ "CmmCallConv"
169+ "CmmCommonBlockElim"
170+ "CmmImplementSwitchPlans"
171+ "CmmContFlowOpt"
172+ "CmmExpr"
173+ "CmmInfo"
174+ "CmmLex"
175+ "CmmLint"
176+ "CmmLive"
177+ "CmmMachOp"
178+ "CmmMonad"
179+ "CmmSwitch"
180+ "CmmNode"
181+ "CmmOpt"
182+ "CmmParse"
183+ "CmmProcPoint"
184+ "CmmSink"
185+ "CmmType"
186+ "CmmUtils"
187+ "CmmLayoutStack"
188+ "EnumSet"
189+ "MkGraph"
190+ "PprBase"
191+ "PprC"
192+ "PprCmm"
193+ "PprCmmDecl"
194+ "PprCmmExpr"
195+ "Bitmap"
196+ "CodeGen/Platform"
197+ "CodeGen/Platform/ARM"
198+ "CodeGen/Platform/ARM64"
199+ "CodeGen/Platform/NoRegs"
200+ "CodeGen/Platform/PPC"
201+ "CodeGen/Platform/SPARC"
202+ "CodeGen/Platform/X86"
203+ "CodeGen/Platform/X86_64"
204+ "CgUtils"
205+ "StgCmm"
206+ "StgCmmBind"
207+ "StgCmmClosure"
208+ "StgCmmCon"
209+ "StgCmmEnv"
210+ "StgCmmExpr"
211+ "StgCmmForeign"
212+ "StgCmmHeap"
213+ "StgCmmHpc"
214+ "StgCmmArgRep"
215+ "StgCmmLayout"
216+ "StgCmmMonad"
217+ "StgCmmPrim"
218+ "StgCmmProf"
219+ "StgCmmTicky"
220+ "StgCmmUtils"
221+ "StgCmmExtCode"
222+ "SMRep"
223+ "CoreArity"
224+ "CoreFVs"
225+ "CoreLint"
226+ "CorePrep"
227+ "CoreSubst"
228+ "CoreOpt"
229+ "CoreSyn"
230+ "TrieMap"
231+ "CoreTidy"
232+ "CoreUnfold"
233+ "CoreUtils"
234+ "CoreMap"
235+ "CoreSeq"
236+ "CoreStats"
237+ "MkCore"
238+ "PprCore"
239+ "PmExpr"
240+ "TmOracle"
241+ "Check"
242+ "Coverage"
243+ "Desugar"
244+ "DsArrows"
245+ "DsBinds"
246+ "DsCCall"
247+ "DsExpr"
248+ "DsForeign"
249+ "DsGRHSs"
250+ "DsListComp"
251+ "DsMonad"
252+ "DsUsage"
253+ "DsUtils"
254+ "ExtractDocs"
255+ "Match"
256+ "MatchCon"
257+ "MatchLit"
258+ "HsBinds"
259+ "HsDecls"
260+ "HsDoc"
261+ "HsExpr"
262+ "HsImpExp"
263+ "HsLit"
264+ "PlaceHolder"
265+ "HsExtension"
266+ "HsInstances"
267+ "HsPat"
268+ "HsSyn"
269+ "HsTypes"
270+ "HsUtils"
271+ "HsDumpAst"
272+ "BinIface"
273+ "BinFingerprint"
274+ "BuildTyCl"
275+ "IfaceEnv"
276+ "IfaceSyn"
277+ "IfaceType"
278+ "ToIface"
279+ "LoadIface"
280+ "MkIface"
281+ "TcIface"
282+ "FlagChecker"
283+ "Annotations"
284+ "CmdLineParser"
285+ "CodeOutput"
286+ "Config"
287+ "Constants"
288+ "DriverMkDepend"
289+ "DriverPhases"
290+ "PipelineMonad"
291+ "DriverPipeline"
292+ "DynFlags"
293+ "ErrUtils"
294+ "Finder"
295+ "GHC"
296+ "GhcMake"
297+ "GhcPlugins"
298+ "DynamicLoading"
299+ "HeaderInfo"
300+ "HscMain"
301+ "HscStats"
302+ "HscTypes"
303+ "InteractiveEval"
304+ "InteractiveEvalTypes"
305+ "PackageConfig"
306+ "Packages"
307+ "PlatformConstants"
308+ "Plugins"
309+ "TcPluginM"
310+ "PprTyThing"
311+ "StaticPtrTable"
312+ "SysTools"
313+ "SysTools/BaseDir"
314+ "SysTools/Terminal"
315+ "SysTools/ExtraObj"
316+ "SysTools/Info"
317+ "SysTools/Process"
318+ "SysTools/Tasks"
319+ "Elf"
320+ "TidyPgm"
321+ "Ctype"
322+ "HaddockUtils"
323+ "Lexer"
324+ "OptCoercion"
325+ "Parser"
326+ "RdrHsSyn"
327+ "ApiAnnotation"
328+ "ForeignCall"
329+ "KnownUniques"
330+ "PrelInfo"
331+ "PrelNames"
332+ "PrelRules"
333+ "PrimOp"
334+ "TysPrim"
335+ "TysWiredIn"
336+ "CostCentre"
337+ "CostCentreState"
338+ "ProfInit"
339+ "RnBinds"
340+ "RnEnv"
341+ "RnExpr"
342+ "RnHsDoc"
343+ "RnNames"
344+ "RnPat"
345+ "RnSource"
346+ "RnSplice"
347+ "RnTypes"
348+ "RnFixity"
349+ "RnUtils"
350+ "RnUnbound"
351+ "CoreMonad"
352+ "CSE"
353+ "FloatIn"
354+ "FloatOut"
355+ "LiberateCase"
356+ "OccurAnal"
357+ "SAT"
358+ "SetLevels"
359+ "SimplCore"
360+ "SimplEnv"
361+ "SimplMonad"
362+ "SimplUtils"
363+ "Simplify"
364+ "SimplStg"
365+ "StgStats"
366+ "StgCse"
367+ "StgLiftLams"
368+ "StgLiftLams/Analysis"
369+ "StgLiftLams/LiftM"
370+ "StgLiftLams/Transformation"
371+ "StgSubst"
372+ "UnariseStg"
373+ "RepType"
374+ "Rules"
375+ "SpecConstr"
376+ "Specialise"
377+ "CoreToStg"
378+ "StgLint"
379+ "StgSyn"
380+ "StgFVs"
381+ "CallArity"
382+ "DmdAnal"
383+ "Exitify"
384+ "WorkWrap"
385+ "WwLib"
386+ "FamInst"
387+ "ClsInst"
388+ "Inst"
389+ "TcAnnotations"
390+ "TcArrows"
391+ "TcBinds"
392+ "TcSigs"
393+ "TcClassDcl"
394+ "TcDefaults"
395+ "TcDeriv"
396+ "TcDerivInfer"
397+ "TcDerivUtils"
398+ "TcEnv"
399+ "TcExpr"
400+ "TcForeign"
401+ "TcGenDeriv"
402+ "TcGenFunctor"
403+ "TcGenGenerics"
404+ "TcHsSyn"
405+ "TcHsType"
406+ "TcInstDcls"
407+ "TcMType"
408+ "TcValidity"
409+ "TcMatches"
410+ "TcPat"
411+ "TcPatSyn"
412+ "TcRnDriver"
413+ "TcBackpack"
414+ "TcRnExports"
415+ "TcRnMonad"
416+ "TcRnTypes"
417+ "TcRules"
418+ "TcSimplify"
419+ "TcHoleErrors"
420+ "TcErrors"
421+ "TcTyClsDecls"
422+ "TcTyDecls"
423+ "TcTypeable"
424+ "TcTypeableValidity"
425+ "TcType"
426+ "TcEvidence"
427+ "TcEvTerm"
428+ "TcUnify"
429+ "TcInteract"
430+ "TcCanonical"
431+ "TcFlatten"
432+ "TcSMonad"
433+ "TcTypeNats"
434+ "TcSplice"
435+ "Class"
436+ "Coercion"
437+ "DsMeta"
438+ "THNames"
439+ "FamInstEnv"
440+ "FunDeps"
441+ "InstEnv"
442+ "TyCon"
443+ "CoAxiom"
444+ "Kind"
445+ "Type"
446+ "TyCoRep"
447+ "Unify"
448+ "Bag"
449+ "Binary"
450+ "BooleanFormula"
451+ "BufWrite"
452+ "Digraph"
453+ "Encoding"
454+ "FastFunctions"
455+ "FastMutInt"
456+ "FastString"
457+ "FastStringEnv"
458+ "Fingerprint"
459+ "FiniteMap"
460+ "FV"
461+ "GraphBase"
462+ "GraphColor"
463+ "GraphOps"
464+ "GraphPpr"
465+ "IOEnv"
466+ "Json"
467+ "ListSetOps"
468+ "ListT"
469+ "Maybes"
470+ "MonadUtils"
471+ "OrdList"
472+ "Outputable"
473+ "Pair"
474+ "Panic"
475+ "PlainPanic"
476+ "PprColour"
477+ "Pretty"
478+ "State"
479+ "Stream"
480+ "StringBuffer"
481+ "UniqDFM"
482+ "UniqDSet"
483+ "UniqFM"
484+ "UniqMap"
485+ "UniqSet"
486+ "Util"
487+ "Hoopl/Block"
488+ "Hoopl/Collections"
489+ "Hoopl/Dataflow"
490+ "Hoopl/Graph"
491+ "Hoopl/Label"
492+ "AsmCodeGen"
493+ "TargetReg"
494+ "NCGMonad"
495+ "Instruction"
496+ "BlockLayout"
497+ "CFG"
498+ "Format"
499+ "Reg"
500+ "RegClass"
501+ "PIC"
502+ "Platform"
503+ "CPrim"
504+ "X86/Regs"
505+ "X86/RegInfo"
506+ "X86/Instr"
507+ "X86/Cond"
508+ "X86/Ppr"
509+ "X86/CodeGen"
510+ "PPC/Regs"
511+ "PPC/RegInfo"
512+ "PPC/Instr"
513+ "PPC/Cond"
514+ "PPC/Ppr"
515+ "PPC/CodeGen"
516+ "SPARC/Base"
517+ "SPARC/Regs"
518+ "SPARC/Imm"
519+ "SPARC/AddrMode"
520+ "SPARC/Cond"
521+ "SPARC/Instr"
522+ "SPARC/Stack"
523+ "SPARC/ShortcutJump"
524+ "SPARC/Ppr"
525+ "SPARC/CodeGen"
526+ "SPARC/CodeGen/Amode"
527+ "SPARC/CodeGen/Base"
528+ "SPARC/CodeGen/CondCode"
529+ "SPARC/CodeGen/Gen32"
530+ "SPARC/CodeGen/Gen64"
531+ "SPARC/CodeGen/Sanity"
532+ "SPARC/CodeGen/Expand"
533+ "RegAlloc/Liveness"
534+ "RegAlloc/Graph/Main"
535+ "RegAlloc/Graph/Stats"
536+ "RegAlloc/Graph/ArchBase"
537+ "RegAlloc/Graph/ArchX86"
538+ "RegAlloc/Graph/Coalesce"
539+ "RegAlloc/Graph/Spill"
540+ "RegAlloc/Graph/SpillClean"
541+ "RegAlloc/Graph/SpillCost"
542+ "RegAlloc/Graph/TrivColorable"
543+ "RegAlloc/Linear/Main"
544+ "RegAlloc/Linear/JoinToTargets"
545+ "RegAlloc/Linear/State"
546+ "RegAlloc/Linear/Stats"
547+ "RegAlloc/Linear/FreeRegs"
548+ "RegAlloc/Linear/StackMap"
549+ "RegAlloc/Linear/Base"
550+ "RegAlloc/Linear/X86/FreeRegs"
551+ "RegAlloc/Linear/X86_64/FreeRegs"
552+ "RegAlloc/Linear/PPC/FreeRegs"
553+ "RegAlloc/Linear/SPARC/FreeRegs"
554+ "Dwarf"
555+ "Dwarf/Types"
556+ "Dwarf/Constants"
557+ "Convert"
558+ "ByteCodeTypes"
559+ "ByteCodeAsm"
560+ "ByteCodeGen"
561+ "ByteCodeInstr"
562+ "ByteCodeItbls"
563+ "ByteCodeLink"
564+ "Debugger"
565+ "Linker"
566+ "RtClosureInspect"
567+ "GHCi"
568+ ];
569+ cSources = [
570+ "parser/cutils.c"
571+ "ghci/keepCAFsForGHCi.c"
572+ "cbits/genSym.c"
573+ ];
574+ hsSourceDirs = [
575+ "backpack"
576+ "basicTypes"
577+ "cmm"
578+ "codeGen"
579+ "coreSyn"
580+ "deSugar"
581+ "ghci"
582+ "hsSyn"
583+ "iface"
584+ "llvmGen"
585+ "main"
586+ "nativeGen"
587+ "parser"
588+ "prelude"
589+ "profiling"
590+ "rename"
591+ "simplCore"
592+ "simplStg"
593+ "specialise"
594+ "stgSyn"
595+ "stranal"
596+ "typecheck"
597+ "types"
598+ "utils"
599+ "hieFile"
600+ ];
601+ includeDirs = [
602+ "."
603+ "parser"
604+ "utils"
605+ ] ++ (pkgs.lib).optional (flags.ghci) "../rts/dist/build";
606+ };
607+ };
608+ } // rec { src = (pkgs.lib).mkDefault ../compiler; }
materialized/ghc-extra-projects/windows/ghc882/.plan.nix/ghci.nixnew file+101
@@ -0,0 +1,101 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."array" or (buildDepError "array"))
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."binary" or (buildDepError "binary"))
70+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
71+ (hsPkgs."containers" or (buildDepError "containers"))
72+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
73+ (hsPkgs."filepath" or (buildDepError "filepath"))
74+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
75+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
76+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
77+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
78+ (hsPkgs."transformers" or (buildDepError "transformers"))
79+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
80+ buildable = true;
81+ modules = [
82+ "GHCi/BreakArray"
83+ "GHCi/BinaryArray"
84+ "GHCi/Message"
85+ "GHCi/ResolvedBCO"
86+ "GHCi/RemoteTypes"
87+ "GHCi/FFI"
88+ "GHCi/InfoTable"
89+ "GHCi/StaticPtrTable"
90+ "GHCi/TH/Binary"
91+ "SizedSeq"
92+ ] ++ (pkgs.lib).optionals (flags.ghci) [
93+ "GHCi/Run"
94+ "GHCi/CreateBCO"
95+ "GHCi/ObjLink"
96+ "GHCi/Signals"
97+ "GHCi/TH"
98+ ];
99+ };
100+ };
101+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghci; }
materialized/ghc-extra-projects/windows/ghc882/.plan.nix/iserv-proxy.nixnew file+86
@@ -0,0 +1,86 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv-proxy" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."directory" or (buildDepError "directory"))
75+ (hsPkgs."network" or (buildDepError "network"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ (hsPkgs."ghci" or (buildDepError "ghci"))
78+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
79+ ];
80+ buildable = true;
81+ hsSourceDirs = [ "src" ];
82+ mainPath = [ "Main.hs" ];
83+ };
84+ };
85+ };
86+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv-proxy; }
materialized/ghc-extra-projects/windows/ghc882/.plan.nix/iserv.nixnew file+85
@@ -0,0 +1,85 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Template Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."ghci" or (buildDepError "ghci"))
75+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
76+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
77+ buildable = true;
78+ cSources = [ "cbits/iservmain.c" ];
79+ hsSourceDirs = [ "src" ];
80+ includeDirs = [ "." ];
81+ mainPath = [ "Main.hs" ] ++ [ "" ];
82+ };
83+ };
84+ };
85+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv; }
materialized/ghc-extra-projects/windows/ghc882/.plan.nix/libiserv.nixnew file+89
@@ -0,0 +1,89 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."containers" or (buildDepError "containers"))
71+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
72+ (hsPkgs."ghci" or (buildDepError "ghci"))
73+ ] ++ (pkgs.lib).optionals (flags.network) [
74+ (hsPkgs."network" or (buildDepError "network"))
75+ (hsPkgs."directory" or (buildDepError "directory"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
78+ buildable = true;
79+ modules = [
80+ "Lib"
81+ "GHCi/Utils"
82+ ] ++ (pkgs.lib).optionals (flags.network) [
83+ "Remote/Message"
84+ "Remote/Slave"
85+ ];
86+ hsSourceDirs = [ "src" ];
87+ };
88+ };
89+ } // rec { src = (pkgs.lib).mkDefault ../libraries/libiserv; }
materialized/ghc-extra-projects/windows/ghc882/.plan.nix/remote-iserv.nixnew file+77
@@ -0,0 +1,77 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.8.2"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "remote-iserv" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
70+ ];
71+ buildable = true;
72+ hsSourceDirs = [ "src" ];
73+ mainPath = [ "Cli.hs" ];
74+ };
75+ };
76+ };
77+ } // rec { src = (pkgs.lib).mkDefault ../utils/remote-iserv; }
materialized/ghc-extra-projects/windows/ghc882/default.nixnew file+92
@@ -0,0 +1,92 @@
1+{
2+ pkgs = hackage:
3+ {
4+ packages = {
5+ "binary".revision = (((hackage."binary")."0.8.8.0").revisions).default;
6+ "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
7+ "ghc-heap".revision = (((hackage."ghc-heap")."8.8.2").revisions).default;
8+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
9+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
10+ "alex".revision = (((hackage."alex")."3.2.5").revisions).default;
11+ "alex".flags.small_base = true;
12+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
13+ "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
14+ "directory".revision = (((hackage."directory")."1.3.6.1").revisions).default;
15+ "template-haskell".revision = (((hackage."template-haskell")."2.15.0.0").revisions).default;
16+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
17+ "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
18+ "time".revision = (((hackage."time")."1.9.3").revisions).default;
19+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
20+ "happy".revision = (((hackage."happy")."1.19.12").revisions).default;
21+ "happy".flags.small_base = true;
22+ "hpc".revision = (((hackage."hpc")."0.6.0.3").revisions).default;
23+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
24+ "process".revision = (((hackage."process")."1.6.8.2").revisions).default;
25+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
26+ "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.8.2").revisions).default;
27+ "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
28+ "Win32".revision = (((hackage."Win32")."2.6.2.0").revisions).default;
29+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
30+ };
31+ compiler = {
32+ version = "8.8.2";
33+ nix-name = "ghc882";
34+ packages = {
35+ "ghc-prim" = "0.5.3";
36+ "ghc-heap" = "8.8.2";
37+ "mtl" = "2.2.2";
38+ "rts" = "1.0";
39+ "deepseq" = "1.4.4.0";
40+ "template-haskell" = "2.15.0.0";
41+ "containers" = "0.6.2.1";
42+ "base" = "4.13.0.0";
43+ "transformers" = "0.5.6.2";
44+ "filepath" = "1.4.2.1";
45+ "pretty" = "1.1.3.6";
46+ "ghc-boot-th" = "8.8.2";
47+ "array" = "0.5.4.0";
48+ "integer-gmp" = "1.0.2.0";
49+ };
50+ };
51+ };
52+ extras = hackage:
53+ {
54+ packages = {
55+ ghc = ./.plan.nix/ghc.nix;
56+ bytestring = ./.plan.nix/bytestring.nix;
57+ remote-iserv = ./.plan.nix/remote-iserv.nix;
58+ iserv-proxy = ./.plan.nix/iserv-proxy.nix;
59+ libiserv = ./.plan.nix/libiserv.nix;
60+ ghc-boot = ./.plan.nix/ghc-boot.nix;
61+ ghci = ./.plan.nix/ghci.nix;
62+ iserv = ./.plan.nix/iserv.nix;
63+ };
64+ };
65+ modules = [
66+ ({ lib, ... }:
67+ {
68+ packages = {
69+ "ghc" = {
70+ flags = {
71+ "stage1" = lib.mkOverride 900 false;
72+ "stage2" = lib.mkOverride 900 true;
73+ "integer-gmp" = lib.mkOverride 900 false;
74+ "stage3" = lib.mkOverride 900 false;
75+ "ghci" = lib.mkOverride 900 true;
76+ "integer-simple" = lib.mkOverride 900 false;
77+ "terminfo" = lib.mkOverride 900 true;
78+ };
79+ };
80+ "bytestring" = {
81+ flags = { "integer-simple" = lib.mkOverride 900 false; };
82+ };
83+ "remote-iserv" = { flags = {}; };
84+ "iserv-proxy" = { flags = {}; };
85+ "libiserv" = { flags = { "network" = lib.mkOverride 900 true; }; };
86+ "ghc-boot" = { flags = {}; };
87+ "ghci" = { flags = { "ghci" = lib.mkOverride 900 true; }; };
88+ "iserv" = { flags = {}; };
89+ };
90+ })
91+ ];
92+ }
materialized/ghc-extra-projects/windows/ghc883/.plan.nix/bytestring.nixnew file+167
@@ -0,0 +1,167 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { integer-simple = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "bytestring"; version = "0.10.10.0"; };
46+ license = "BSD-3-Clause";
47+ copyright = "Copyright (c) Don Stewart 2005-2009,\n(c) Duncan Coutts 2006-2015,\n(c) David Roundy 2003-2005,\n(c) Jasper Van der Jeugt 2010,\n(c) Simon Meier 2010-2013.";
48+ maintainer = "Duncan Coutts <duncan@community.haskell.org>";
49+ author = "Don Stewart,\nDuncan Coutts";
50+ homepage = "https://github.com/haskell/bytestring";
51+ url = "";
52+ synopsis = "Fast, compact, strict and lazy byte strings with a list interface";
53+ description = "An efficient compact, immutable byte string type (both strict and lazy)\nsuitable for binary or 8-bit character data.\n\nThe 'ByteString' type represents sequences of bytes or 8-bit characters.\nIt is suitable for high performance use, both in terms of large data\nquantities, or high speed requirements. The 'ByteString' functions follow\nthe same style as Haskell\\'s ordinary lists, so it is easy to convert code\nfrom using 'String' to 'ByteString'.\n\nTwo 'ByteString' variants are provided:\n\n* Strict 'ByteString's keep the string as a single large array. This\nmakes them convenient for passing data between C and Haskell.\n\n* Lazy 'ByteString's use a lazy list of strict chunks which makes it\nsuitable for I\\/O streaming tasks.\n\nThe @Char8@ modules provide a character-based view of the same\nunderlying 'ByteString' types. This makes it convenient to handle mixed\nbinary and 8-bit character content (which is common in many file formats\nand network protocols).\n\nThe 'Builder' module provides an efficient way to build up 'ByteString's\nin an ad-hoc way by repeated concatenation. This is ideal for fast\nserialisation or pretty printing.\n\nThere is also a 'ShortByteString' type which has a lower memory overhead\nand can can be converted to or from a 'ByteString', but supports very few\nother operations. It is suitable for keeping many short strings in memory.\n\n'ByteString's are not designed for Unicode. For Unicode strings you should\nuse the 'Text' type from the @text@ package.\n\nThese modules are intended to be imported qualified, to avoid name clashes\nwith \"Prelude\" functions, e.g.\n\n> import qualified Data.ByteString as BS";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "README.md" "Changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
69+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
70+ ] ++ (pkgs.lib).optionals (compiler.isGhc && (compiler.version).ge "6.11") ((pkgs.lib).optional (!flags.integer-simple) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp")))) ++ (pkgs.lib).optional (compiler.isGhc && (compiler.version).ge "6.9" && (compiler.isGhc && (compiler.version).lt "6.11")) (hsPkgs."integer" or (buildDepError "integer"));
71+ buildable = true;
72+ modules = [
73+ "Data/ByteString/Builder/ASCII"
74+ "Data/ByteString/Builder/Prim/Binary"
75+ "Data/ByteString/Builder/Prim/ASCII"
76+ "Data/ByteString/Builder/Prim/Internal/Floating"
77+ "Data/ByteString/Builder/Prim/Internal/UncheckedShifts"
78+ "Data/ByteString/Builder/Prim/Internal/Base16"
79+ "Data/ByteString"
80+ "Data/ByteString/Char8"
81+ "Data/ByteString/Unsafe"
82+ "Data/ByteString/Internal"
83+ "Data/ByteString/Lazy"
84+ "Data/ByteString/Lazy/Char8"
85+ "Data/ByteString/Lazy/Internal"
86+ "Data/ByteString/Short"
87+ "Data/ByteString/Short/Internal"
88+ "Data/ByteString/Builder"
89+ "Data/ByteString/Builder/Extra"
90+ "Data/ByteString/Builder/Prim"
91+ "Data/ByteString/Builder/Internal"
92+ "Data/ByteString/Builder/Prim/Internal"
93+ "Data/ByteString/Lazy/Builder"
94+ "Data/ByteString/Lazy/Builder/Extras"
95+ "Data/ByteString/Lazy/Builder/ASCII"
96+ ];
97+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
98+ includeDirs = [ "include" ];
99+ includes = [ "fpstring.h" ];
100+ };
101+ tests = {
102+ "prop-compiled" = {
103+ depends = [
104+ (hsPkgs."base" or (buildDepError "base"))
105+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
106+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
107+ (hsPkgs."random" or (buildDepError "random"))
108+ (hsPkgs."directory" or (buildDepError "directory"))
109+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
110+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
111+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
112+ ];
113+ buildable = true;
114+ modules = [ "Rules" "QuickCheckUtils" "TestFramework" ];
115+ cSources = [ "cbits/fpstring.c" ];
116+ hsSourceDirs = [ "." "tests" ];
117+ includeDirs = [ "include" ];
118+ mainPath = [ "Properties.hs" ];
119+ };
120+ "regressions" = {
121+ depends = [
122+ (hsPkgs."base" or (buildDepError "base"))
123+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
124+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
125+ (hsPkgs."random" or (buildDepError "random"))
126+ (hsPkgs."directory" or (buildDepError "directory"))
127+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
128+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
129+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
130+ ];
131+ buildable = false;
132+ cSources = [ "cbits/fpstring.c" ];
133+ hsSourceDirs = [ "." "tests" ];
134+ includeDirs = [ "include" ];
135+ mainPath = [ "Regressions.hs" ];
136+ };
137+ "test-builder" = {
138+ depends = [
139+ (hsPkgs."base" or (buildDepError "base"))
140+ (hsPkgs."ghc-prim" or (buildDepError "ghc-prim"))
141+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
142+ (hsPkgs."QuickCheck" or (buildDepError "QuickCheck"))
143+ (hsPkgs."byteorder" or (buildDepError "byteorder"))
144+ (hsPkgs."dlist" or (buildDepError "dlist"))
145+ (hsPkgs."directory" or (buildDepError "directory"))
146+ (hsPkgs."mtl" or (buildDepError "mtl"))
147+ (hsPkgs."HUnit" or (buildDepError "HUnit"))
148+ (hsPkgs."test-framework" or (buildDepError "test-framework"))
149+ (hsPkgs."test-framework-hunit" or (buildDepError "test-framework-hunit"))
150+ (hsPkgs."test-framework-quickcheck2" or (buildDepError "test-framework-quickcheck2"))
151+ ];
152+ buildable = true;
153+ modules = [
154+ "Data/ByteString/Builder/Tests"
155+ "Data/ByteString/Builder/Prim/Tests"
156+ "Data/ByteString/Builder/Prim/TestUtils"
157+ "TestFramework"
158+ ];
159+ cSources = [ "cbits/fpstring.c" "cbits/itoa.c" ];
160+ hsSourceDirs = [ "." "tests" "tests/builder" ];
161+ includeDirs = [ "include" ];
162+ includes = [ "fpstring.h" ];
163+ mainPath = [ "TestSuite.hs" ];
164+ };
165+ };
166+ };
167+ } // rec { src = (pkgs.lib).mkDefault ../libraries/bytestring; }
materialized/ghc-extra-projects/windows/ghc883/.plan.nix/ghc-boot.nixnew file+84
@@ -0,0 +1,84 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.22";
45+ identifier = { name = "ghc-boot"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Shared functionality between GHC and its boot libraries";
53+ description = "This library is shared between GHC, ghc-pkg, and other boot\nlibraries.\n\nA note about \"GHC.PackageDb\": it only deals with the subset of\nthe package database that the compiler cares about: modules\npaths etc and not package metadata like description, authors\netc. It is thus not a library interface to ghc-pkg and is *not*\nsuitable for modifying GHC package databases.\n\nThe package database format and this library are constructed in\nsuch a way that while ghc-pkg depends on Cabal, the GHC library\nand program do not have to depend on Cabal.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."directory" or (buildDepError "directory"))
71+ (hsPkgs."filepath" or (buildDepError "filepath"))
72+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
73+ ];
74+ buildable = true;
75+ modules = [
76+ "GHC/LanguageExtensions"
77+ "GHC/PackageDb"
78+ "GHC/Serialized"
79+ "GHC/ForeignSrcLang"
80+ "GHC/HandleEncoding"
81+ ];
82+ };
83+ };
84+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghc-boot; }
materialized/ghc-extra-projects/windows/ghc883/.plan.nix/ghc.nixnew file+608
@@ -0,0 +1,608 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {
43+ ghci = false;
44+ stage1 = false;
45+ stage2 = true;
46+ stage3 = false;
47+ terminfo = true;
48+ integer-simple = false;
49+ integer-gmp = false;
50+ };
51+ package = {
52+ specVersion = "1.10";
53+ identifier = { name = "ghc"; version = "8.8.3"; };
54+ license = "BSD-3-Clause";
55+ copyright = "";
56+ maintainer = "glasgow-haskell-users@haskell.org";
57+ author = "The GHC Team";
58+ homepage = "http://www.haskell.org/ghc/";
59+ url = "";
60+ synopsis = "The GHC API";
61+ description = "GHC's functionality can be useful for more things than just\ncompiling Haskell programs. Important use cases are programs\nthat analyse (and perhaps transform) Haskell code. Others\ninclude loading Haskell code dynamically in a GHCi-like manner.\nFor this reason, a lot of GHC's functionality is made available\nthrough this package.";
62+ buildType = "Simple";
63+ isLocal = true;
64+ detailLevel = "FullDetails";
65+ licenseFiles = [ "LICENSE" ];
66+ dataDir = "";
67+ dataFiles = [];
68+ extraSrcFiles = [
69+ "utils/md5.h"
70+ "Unique.h"
71+ "nativeGen/NCG.h"
72+ "parser/cutils.h"
73+ ];
74+ extraTmpFiles = [];
75+ extraDocFiles = [];
76+ };
77+ components = {
78+ "library" = {
79+ depends = ((([
80+ (hsPkgs."base" or (buildDepError "base"))
81+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
82+ (hsPkgs."directory" or (buildDepError "directory"))
83+ (hsPkgs."process" or (buildDepError "process"))
84+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
85+ (hsPkgs."binary" or (buildDepError "binary"))
86+ (hsPkgs."time" or (buildDepError "time"))
87+ (hsPkgs."containers" or (buildDepError "containers"))
88+ (hsPkgs."array" or (buildDepError "array"))
89+ (hsPkgs."filepath" or (buildDepError "filepath"))
90+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
91+ (hsPkgs."hpc" or (buildDepError "hpc"))
92+ (hsPkgs."transformers" or (buildDepError "transformers"))
93+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
94+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
95+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
96+ (hsPkgs."ghci" or (buildDepError "ghci"))
97+ ] ++ (if system.isWindows
98+ then [ (hsPkgs."Win32" or (buildDepError "Win32")) ]
99+ else [
100+ (hsPkgs."unix" or (buildDepError "unix"))
101+ ] ++ (pkgs.lib).optional (flags.terminfo) (hsPkgs."terminfo" or (buildDepError "terminfo")))) ++ (pkgs.lib).optional (flags.integer-gmp && flags.integer-simple) (hsPkgs."invalid-cabal-flag-settings" or (buildDepError "invalid-cabal-flag-settings"))) ++ (pkgs.lib).optional (flags.integer-gmp) (hsPkgs."integer-gmp" or (buildDepError "integer-gmp"))) ++ (pkgs.lib).optional (flags.integer-simple) (hsPkgs."integer-simple" or (buildDepError "integer-simple"));
102+ build-tools = [
103+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (buildToolDepError "alex")))
104+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (buildToolDepError "happy")))
105+ ];
106+ buildable = true;
107+ modules = [
108+ "GhcPrelude"
109+ "HieTypes"
110+ "HieDebug"
111+ "HieBin"
112+ "HieUtils"
113+ "HieAst"
114+ "Ar"
115+ "FileCleanup"
116+ "DriverBkp"
117+ "BkpSyn"
118+ "NameShape"
119+ "RnModIface"
120+ "Avail"
121+ "AsmUtils"
122+ "BasicTypes"
123+ "ConLike"
124+ "DataCon"
125+ "PatSyn"
126+ "Demand"
127+ "Debug"
128+ "Exception"
129+ "FieldLabel"
130+ "GhcMonad"
131+ "Hooks"
132+ "Id"
133+ "IdInfo"
134+ "Lexeme"
135+ "Literal"
136+ "Llvm"
137+ "Llvm/AbsSyn"
138+ "Llvm/MetaData"
139+ "Llvm/PpLlvm"
140+ "Llvm/Types"
141+ "LlvmCodeGen"
142+ "LlvmCodeGen/Base"
143+ "LlvmCodeGen/CodeGen"
144+ "LlvmCodeGen/Data"
145+ "LlvmCodeGen/Ppr"
146+ "LlvmCodeGen/Regs"
147+ "LlvmMangler"
148+ "MkId"
149+ "Module"
150+ "Name"
151+ "NameEnv"
152+ "NameSet"
153+ "OccName"
154+ "RdrName"
155+ "NameCache"
156+ "SrcLoc"
157+ "UniqSupply"
158+ "Unique"
159+ "Var"
160+ "VarEnv"
161+ "VarSet"
162+ "UnVarGraph"
163+ "BlockId"
164+ "CLabel"
165+ "Cmm"
166+ "CmmBuildInfoTables"
167+ "CmmPipeline"
168+ "CmmCallConv"
169+ "CmmCommonBlockElim"
170+ "CmmImplementSwitchPlans"
171+ "CmmContFlowOpt"
172+ "CmmExpr"
173+ "CmmInfo"
174+ "CmmLex"
175+ "CmmLint"
176+ "CmmLive"
177+ "CmmMachOp"
178+ "CmmMonad"
179+ "CmmSwitch"
180+ "CmmNode"
181+ "CmmOpt"
182+ "CmmParse"
183+ "CmmProcPoint"
184+ "CmmSink"
185+ "CmmType"
186+ "CmmUtils"
187+ "CmmLayoutStack"
188+ "EnumSet"
189+ "MkGraph"
190+ "PprBase"
191+ "PprC"
192+ "PprCmm"
193+ "PprCmmDecl"
194+ "PprCmmExpr"
195+ "Bitmap"
196+ "CodeGen/Platform"
197+ "CodeGen/Platform/ARM"
198+ "CodeGen/Platform/ARM64"
199+ "CodeGen/Platform/NoRegs"
200+ "CodeGen/Platform/PPC"
201+ "CodeGen/Platform/SPARC"
202+ "CodeGen/Platform/X86"
203+ "CodeGen/Platform/X86_64"
204+ "CgUtils"
205+ "StgCmm"
206+ "StgCmmBind"
207+ "StgCmmClosure"
208+ "StgCmmCon"
209+ "StgCmmEnv"
210+ "StgCmmExpr"
211+ "StgCmmForeign"
212+ "StgCmmHeap"
213+ "StgCmmHpc"
214+ "StgCmmArgRep"
215+ "StgCmmLayout"
216+ "StgCmmMonad"
217+ "StgCmmPrim"
218+ "StgCmmProf"
219+ "StgCmmTicky"
220+ "StgCmmUtils"
221+ "StgCmmExtCode"
222+ "SMRep"
223+ "CoreArity"
224+ "CoreFVs"
225+ "CoreLint"
226+ "CorePrep"
227+ "CoreSubst"
228+ "CoreOpt"
229+ "CoreSyn"
230+ "TrieMap"
231+ "CoreTidy"
232+ "CoreUnfold"
233+ "CoreUtils"
234+ "CoreMap"
235+ "CoreSeq"
236+ "CoreStats"
237+ "MkCore"
238+ "PprCore"
239+ "PmExpr"
240+ "TmOracle"
241+ "Check"
242+ "Coverage"
243+ "Desugar"
244+ "DsArrows"
245+ "DsBinds"
246+ "DsCCall"
247+ "DsExpr"
248+ "DsForeign"
249+ "DsGRHSs"
250+ "DsListComp"
251+ "DsMonad"
252+ "DsUsage"
253+ "DsUtils"
254+ "ExtractDocs"
255+ "Match"
256+ "MatchCon"
257+ "MatchLit"
258+ "HsBinds"
259+ "HsDecls"
260+ "HsDoc"
261+ "HsExpr"
262+ "HsImpExp"
263+ "HsLit"
264+ "PlaceHolder"
265+ "HsExtension"
266+ "HsInstances"
267+ "HsPat"
268+ "HsSyn"
269+ "HsTypes"
270+ "HsUtils"
271+ "HsDumpAst"
272+ "BinIface"
273+ "BinFingerprint"
274+ "BuildTyCl"
275+ "IfaceEnv"
276+ "IfaceSyn"
277+ "IfaceType"
278+ "ToIface"
279+ "LoadIface"
280+ "MkIface"
281+ "TcIface"
282+ "FlagChecker"
283+ "Annotations"
284+ "CmdLineParser"
285+ "CodeOutput"
286+ "Config"
287+ "Constants"
288+ "DriverMkDepend"
289+ "DriverPhases"
290+ "PipelineMonad"
291+ "DriverPipeline"
292+ "DynFlags"
293+ "ErrUtils"
294+ "Finder"
295+ "GHC"
296+ "GhcMake"
297+ "GhcPlugins"
298+ "DynamicLoading"
299+ "HeaderInfo"
300+ "HscMain"
301+ "HscStats"
302+ "HscTypes"
303+ "InteractiveEval"
304+ "InteractiveEvalTypes"
305+ "PackageConfig"
306+ "Packages"
307+ "PlatformConstants"
308+ "Plugins"
309+ "TcPluginM"
310+ "PprTyThing"
311+ "StaticPtrTable"
312+ "SysTools"
313+ "SysTools/BaseDir"
314+ "SysTools/Terminal"
315+ "SysTools/ExtraObj"
316+ "SysTools/Info"
317+ "SysTools/Process"
318+ "SysTools/Tasks"
319+ "Elf"
320+ "TidyPgm"
321+ "Ctype"
322+ "HaddockUtils"
323+ "Lexer"
324+ "OptCoercion"
325+ "Parser"
326+ "RdrHsSyn"
327+ "ApiAnnotation"
328+ "ForeignCall"
329+ "KnownUniques"
330+ "PrelInfo"
331+ "PrelNames"
332+ "PrelRules"
333+ "PrimOp"
334+ "TysPrim"
335+ "TysWiredIn"
336+ "CostCentre"
337+ "CostCentreState"
338+ "ProfInit"
339+ "RnBinds"
340+ "RnEnv"
341+ "RnExpr"
342+ "RnHsDoc"
343+ "RnNames"
344+ "RnPat"
345+ "RnSource"
346+ "RnSplice"
347+ "RnTypes"
348+ "RnFixity"
349+ "RnUtils"
350+ "RnUnbound"
351+ "CoreMonad"
352+ "CSE"
353+ "FloatIn"
354+ "FloatOut"
355+ "LiberateCase"
356+ "OccurAnal"
357+ "SAT"
358+ "SetLevels"
359+ "SimplCore"
360+ "SimplEnv"
361+ "SimplMonad"
362+ "SimplUtils"
363+ "Simplify"
364+ "SimplStg"
365+ "StgStats"
366+ "StgCse"
367+ "StgLiftLams"
368+ "StgLiftLams/Analysis"
369+ "StgLiftLams/LiftM"
370+ "StgLiftLams/Transformation"
371+ "StgSubst"
372+ "UnariseStg"
373+ "RepType"
374+ "Rules"
375+ "SpecConstr"
376+ "Specialise"
377+ "CoreToStg"
378+ "StgLint"
379+ "StgSyn"
380+ "StgFVs"
381+ "CallArity"
382+ "DmdAnal"
383+ "Exitify"
384+ "WorkWrap"
385+ "WwLib"
386+ "FamInst"
387+ "ClsInst"
388+ "Inst"
389+ "TcAnnotations"
390+ "TcArrows"
391+ "TcBinds"
392+ "TcSigs"
393+ "TcClassDcl"
394+ "TcDefaults"
395+ "TcDeriv"
396+ "TcDerivInfer"
397+ "TcDerivUtils"
398+ "TcEnv"
399+ "TcExpr"
400+ "TcForeign"
401+ "TcGenDeriv"
402+ "TcGenFunctor"
403+ "TcGenGenerics"
404+ "TcHsSyn"
405+ "TcHsType"
406+ "TcInstDcls"
407+ "TcMType"
408+ "TcValidity"
409+ "TcMatches"
410+ "TcPat"
411+ "TcPatSyn"
412+ "TcRnDriver"
413+ "TcBackpack"
414+ "TcRnExports"
415+ "TcRnMonad"
416+ "TcRnTypes"
417+ "TcRules"
418+ "TcSimplify"
419+ "TcHoleErrors"
420+ "TcErrors"
421+ "TcTyClsDecls"
422+ "TcTyDecls"
423+ "TcTypeable"
424+ "TcTypeableValidity"
425+ "TcType"
426+ "TcEvidence"
427+ "TcEvTerm"
428+ "TcUnify"
429+ "TcInteract"
430+ "TcCanonical"
431+ "TcFlatten"
432+ "TcSMonad"
433+ "TcTypeNats"
434+ "TcSplice"
435+ "Class"
436+ "Coercion"
437+ "DsMeta"
438+ "THNames"
439+ "FamInstEnv"
440+ "FunDeps"
441+ "InstEnv"
442+ "TyCon"
443+ "CoAxiom"
444+ "Kind"
445+ "Type"
446+ "TyCoRep"
447+ "Unify"
448+ "Bag"
449+ "Binary"
450+ "BooleanFormula"
451+ "BufWrite"
452+ "Digraph"
453+ "Encoding"
454+ "FastFunctions"
455+ "FastMutInt"
456+ "FastString"
457+ "FastStringEnv"
458+ "Fingerprint"
459+ "FiniteMap"
460+ "FV"
461+ "GraphBase"
462+ "GraphColor"
463+ "GraphOps"
464+ "GraphPpr"
465+ "IOEnv"
466+ "Json"
467+ "ListSetOps"
468+ "ListT"
469+ "Maybes"
470+ "MonadUtils"
471+ "OrdList"
472+ "Outputable"
473+ "Pair"
474+ "Panic"
475+ "PlainPanic"
476+ "PprColour"
477+ "Pretty"
478+ "State"
479+ "Stream"
480+ "StringBuffer"
481+ "UniqDFM"
482+ "UniqDSet"
483+ "UniqFM"
484+ "UniqMap"
485+ "UniqSet"
486+ "Util"
487+ "Hoopl/Block"
488+ "Hoopl/Collections"
489+ "Hoopl/Dataflow"
490+ "Hoopl/Graph"
491+ "Hoopl/Label"
492+ "AsmCodeGen"
493+ "TargetReg"
494+ "NCGMonad"
495+ "Instruction"
496+ "BlockLayout"
497+ "CFG"
498+ "Format"
499+ "Reg"
500+ "RegClass"
501+ "PIC"
502+ "Platform"
503+ "CPrim"
504+ "X86/Regs"
505+ "X86/RegInfo"
506+ "X86/Instr"
507+ "X86/Cond"
508+ "X86/Ppr"
509+ "X86/CodeGen"
510+ "PPC/Regs"
511+ "PPC/RegInfo"
512+ "PPC/Instr"
513+ "PPC/Cond"
514+ "PPC/Ppr"
515+ "PPC/CodeGen"
516+ "SPARC/Base"
517+ "SPARC/Regs"
518+ "SPARC/Imm"
519+ "SPARC/AddrMode"
520+ "SPARC/Cond"
521+ "SPARC/Instr"
522+ "SPARC/Stack"
523+ "SPARC/ShortcutJump"
524+ "SPARC/Ppr"
525+ "SPARC/CodeGen"
526+ "SPARC/CodeGen/Amode"
527+ "SPARC/CodeGen/Base"
528+ "SPARC/CodeGen/CondCode"
529+ "SPARC/CodeGen/Gen32"
530+ "SPARC/CodeGen/Gen64"
531+ "SPARC/CodeGen/Sanity"
532+ "SPARC/CodeGen/Expand"
533+ "RegAlloc/Liveness"
534+ "RegAlloc/Graph/Main"
535+ "RegAlloc/Graph/Stats"
536+ "RegAlloc/Graph/ArchBase"
537+ "RegAlloc/Graph/ArchX86"
538+ "RegAlloc/Graph/Coalesce"
539+ "RegAlloc/Graph/Spill"
540+ "RegAlloc/Graph/SpillClean"
541+ "RegAlloc/Graph/SpillCost"
542+ "RegAlloc/Graph/TrivColorable"
543+ "RegAlloc/Linear/Main"
544+ "RegAlloc/Linear/JoinToTargets"
545+ "RegAlloc/Linear/State"
546+ "RegAlloc/Linear/Stats"
547+ "RegAlloc/Linear/FreeRegs"
548+ "RegAlloc/Linear/StackMap"
549+ "RegAlloc/Linear/Base"
550+ "RegAlloc/Linear/X86/FreeRegs"
551+ "RegAlloc/Linear/X86_64/FreeRegs"
552+ "RegAlloc/Linear/PPC/FreeRegs"
553+ "RegAlloc/Linear/SPARC/FreeRegs"
554+ "Dwarf"
555+ "Dwarf/Types"
556+ "Dwarf/Constants"
557+ "Convert"
558+ "ByteCodeTypes"
559+ "ByteCodeAsm"
560+ "ByteCodeGen"
561+ "ByteCodeInstr"
562+ "ByteCodeItbls"
563+ "ByteCodeLink"
564+ "Debugger"
565+ "Linker"
566+ "RtClosureInspect"
567+ "GHCi"
568+ ];
569+ cSources = [
570+ "parser/cutils.c"
571+ "ghci/keepCAFsForGHCi.c"
572+ "cbits/genSym.c"
573+ ];
574+ hsSourceDirs = [
575+ "backpack"
576+ "basicTypes"
577+ "cmm"
578+ "codeGen"
579+ "coreSyn"
580+ "deSugar"
581+ "ghci"
582+ "hsSyn"
583+ "iface"
584+ "llvmGen"
585+ "main"
586+ "nativeGen"
587+ "parser"
588+ "prelude"
589+ "profiling"
590+ "rename"
591+ "simplCore"
592+ "simplStg"
593+ "specialise"
594+ "stgSyn"
595+ "stranal"
596+ "typecheck"
597+ "types"
598+ "utils"
599+ "hieFile"
600+ ];
601+ includeDirs = [
602+ "."
603+ "parser"
604+ "utils"
605+ ] ++ (pkgs.lib).optional (flags.ghci) "../rts/dist/build";
606+ };
607+ };
608+ } // rec { src = (pkgs.lib).mkDefault ../compiler; }
materialized/ghc-extra-projects/windows/ghc883/.plan.nix/ghci.nixnew file+101
@@ -0,0 +1,101 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { ghci = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "ghci"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "";
48+ maintainer = "ghc-devs@haskell.org";
49+ author = "";
50+ homepage = "";
51+ url = "";
52+ synopsis = "The library supporting GHC's interactive interpreter";
53+ description = "This library offers interfaces which mediate interactions between the\n@ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter\nbackend.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [ "changelog.md" ];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = [
67+ (hsPkgs."array" or (buildDepError "array"))
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."binary" or (buildDepError "binary"))
70+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
71+ (hsPkgs."containers" or (buildDepError "containers"))
72+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
73+ (hsPkgs."filepath" or (buildDepError "filepath"))
74+ (hsPkgs."ghc-boot" or (buildDepError "ghc-boot"))
75+ (hsPkgs."ghc-boot-th" or (buildDepError "ghc-boot-th"))
76+ (hsPkgs."ghc-heap" or (buildDepError "ghc-heap"))
77+ (hsPkgs."template-haskell" or (buildDepError "template-haskell"))
78+ (hsPkgs."transformers" or (buildDepError "transformers"))
79+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
80+ buildable = true;
81+ modules = [
82+ "GHCi/BreakArray"
83+ "GHCi/BinaryArray"
84+ "GHCi/Message"
85+ "GHCi/ResolvedBCO"
86+ "GHCi/RemoteTypes"
87+ "GHCi/FFI"
88+ "GHCi/InfoTable"
89+ "GHCi/StaticPtrTable"
90+ "GHCi/TH/Binary"
91+ "SizedSeq"
92+ ] ++ (pkgs.lib).optionals (flags.ghci) [
93+ "GHCi/Run"
94+ "GHCi/CreateBCO"
95+ "GHCi/ObjLink"
96+ "GHCi/Signals"
97+ "GHCi/TH"
98+ ];
99+ };
100+ };
101+ } // rec { src = (pkgs.lib).mkDefault ../libraries/ghci; }
materialized/ghc-extra-projects/windows/ghc883/.plan.nix/iserv-proxy.nixnew file+86
@@ -0,0 +1,86 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv-proxy"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\niserv can also be used in combination with cross compilation. For\nthis, the @iserv-proxy@ needs to be built on the host, targeting the\nhost (as it is running on the host). @cabal install -flibrary\n-fproxy@ will yield the proxy.\n\nUsing the cabal for the target @arch-platform-target-cabal install\n-flibrary@ will build the required library that contains the ffi\n@startSlave@ function, which needs to be invoked on the target\n(e.g. in an iOS application) to start the remote iserv slave.\n\ncalling the GHC cross compiler with @-fexternal-interpreter\n-pgmi=\$HOME/.cabal/bin/iserv-proxy -opti\\<ip address\\> -opti\\<port\\>@\nwill cause it to compile Template Haskell via the remote at \\<ip address\\>.\n\nThus to get cross compilation with Template Haskell follow the\nfollowing receipt:\n\n* compile the iserv library for your target\n\n> iserv \$ arch-platform-target-cabal install -flibrary\n\n* setup an application for your target that calls the\n* startSlave function. This could be either haskell or your\n* targets ffi capable language, if needed.\n\n> void startSlave(false /* verbose */, 5000 /* port */,\n> \"/path/to/storagelocation/on/target\");\n\n* build the iserv-proxy\n\n> iserv \$ cabal install -flibrary -fproxy\n* Start your iserv-slave app on your target running on say @10.0.0.1:5000@\n* compiler your sources with -fexternal-interpreter and the proxy\n\n> project \$ arch-platform-target-ghc ModuleContainingTH.hs \\\n> -fexternal-interpreter \\\n> -pgmi=\$HOME/.cabal/bin/iserv-proxy \\\n> -opti10.0.0.1 -opti5000\n\nShould something not work as expected, provide @-opti-v@ for verbose\nlogging of the @iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv-proxy" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."directory" or (buildDepError "directory"))
75+ (hsPkgs."network" or (buildDepError "network"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ (hsPkgs."ghci" or (buildDepError "ghci"))
78+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
79+ ];
80+ buildable = true;
81+ hsSourceDirs = [ "src" ];
82+ mainPath = [ "Main.hs" ];
83+ };
84+ };
85+ };
86+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv-proxy; }
materialized/ghc-extra-projects/windows/ghc883/.plan.nix/iserv.nixnew file+85
@@ -0,0 +1,85 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "iserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Template Haskell computations";
53+ description = "GHC can be provided with a path to the iserv binary with\n@-pgmi=/path/to/iserv-bin@, and will in combination with\n@-fexternal-interpreter@, compile Template Haskell though the\n@iserv-bin@ delegate. This is very similar to how ghcjs has been\ncompiling Template Haskell, by spawning a separate delegate (so\ncalled runner on the javascript vm) and evaluating the splices\nthere.\n\nTo use iserv with cross compilers, please see @libraries/libiserv@\nand @utils/iserv-proxy@.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "iserv" = {
67+ depends = [
68+ (hsPkgs."array" or (buildDepError "array"))
69+ (hsPkgs."base" or (buildDepError "base"))
70+ (hsPkgs."binary" or (buildDepError "binary"))
71+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
72+ (hsPkgs."containers" or (buildDepError "containers"))
73+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
74+ (hsPkgs."ghci" or (buildDepError "ghci"))
75+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
76+ ] ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
77+ buildable = true;
78+ cSources = [ "cbits/iservmain.c" ];
79+ hsSourceDirs = [ "src" ];
80+ includeDirs = [ "." ];
81+ mainPath = [ "Main.hs" ] ++ [ "" ];
82+ };
83+ };
84+ };
85+ } // rec { src = (pkgs.lib).mkDefault ../utils/iserv; }
materialized/ghc-extra-projects/windows/ghc883/.plan.nix/libiserv.nixnew file+89
@@ -0,0 +1,89 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = { network = false; };
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "libiserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "XXX";
49+ author = "XXX";
50+ homepage = "";
51+ url = "";
52+ synopsis = "Provides shared functionality between iserv and iserv-proxy";
53+ description = "";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [ "LICENSE" ];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ "library" = {
66+ depends = ([
67+ (hsPkgs."base" or (buildDepError "base"))
68+ (hsPkgs."binary" or (buildDepError "binary"))
69+ (hsPkgs."bytestring" or (buildDepError "bytestring"))
70+ (hsPkgs."containers" or (buildDepError "containers"))
71+ (hsPkgs."deepseq" or (buildDepError "deepseq"))
72+ (hsPkgs."ghci" or (buildDepError "ghci"))
73+ ] ++ (pkgs.lib).optionals (flags.network) [
74+ (hsPkgs."network" or (buildDepError "network"))
75+ (hsPkgs."directory" or (buildDepError "directory"))
76+ (hsPkgs."filepath" or (buildDepError "filepath"))
77+ ]) ++ (pkgs.lib).optional (!system.isWindows) (hsPkgs."unix" or (buildDepError "unix"));
78+ buildable = true;
79+ modules = [
80+ "Lib"
81+ "GHCi/Utils"
82+ ] ++ (pkgs.lib).optionals (flags.network) [
83+ "Remote/Message"
84+ "Remote/Slave"
85+ ];
86+ hsSourceDirs = [ "src" ];
87+ };
88+ };
89+ } // rec { src = (pkgs.lib).mkDefault ../libraries/libiserv; }
materialized/ghc-extra-projects/windows/ghc883/.plan.nix/remote-iserv.nixnew file+77
@@ -0,0 +1,77 @@
1+let
2+ buildDepError = pkg:
3+ builtins.throw ''
4+ The Haskell package set does not contain the package: ${pkg} (build dependency).
5+
6+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
7+ '';
8+ sysDepError = pkg:
9+ builtins.throw ''
10+ The Nixpkgs package set does not contain the package: ${pkg} (system dependency).
11+
12+ You may need to augment the system package mapping in haskell.nix so that it can be found.
13+ '';
14+ pkgConfDepError = pkg:
15+ builtins.throw ''
16+ The pkg-conf packages does not contain the package: ${pkg} (pkg-conf dependency).
17+
18+ You may need to augment the pkg-conf package mapping in haskell.nix so that it can be found.
19+ '';
20+ exeDepError = pkg:
21+ builtins.throw ''
22+ The local executable components do not include the component: ${pkg} (executable dependency).
23+ '';
24+ legacyExeDepError = pkg:
25+ builtins.throw ''
26+ The Haskell package set does not contain the package: ${pkg} (executable dependency).
27+
28+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
29+ '';
30+ buildToolDepError = pkg:
31+ builtins.throw ''
32+ Neither the Haskell package set or the Nixpkgs package set contain the package: ${pkg} (build tool dependency).
33+
34+ If this is a system dependency:
35+ You may need to augment the system package mapping in haskell.nix so that it can be found.
36+
37+ If this is a Haskell dependency:
38+ If you are using Stackage, make sure that you are using a snapshot that contains the package. Otherwise you may need to update the Hackage snapshot you are using, usually by updating haskell.nix.
39+ '';
40+in { system, compiler, flags, pkgs, hsPkgs, pkgconfPkgs, ... }:
41+ {
42+ flags = {};
43+ package = {
44+ specVersion = "1.10";
45+ identifier = { name = "remote-iserv"; version = "8.8.3"; };
46+ license = "BSD-3-Clause";
47+ copyright = "XXX";
48+ maintainer = "Moritz Angermann <moritz.angermann@gmail.com>";
49+ author = "Moritz Angermann <moritz.angermann@gmail.com>";
50+ homepage = "";
51+ url = "";
52+ synopsis = "iserv allows GHC to delegate Tempalte Haskell computations";
53+ description = "This is a very simple remote runner for iserv, to be used together\nwith iserv-proxy. The foundamental idea is that this this wrapper\nstarts running libiserv on a given port to which iserv-proxy will\nthen connect.";
54+ buildType = "Simple";
55+ isLocal = true;
56+ detailLevel = "FullDetails";
57+ licenseFiles = [];
58+ dataDir = "";
59+ dataFiles = [];
60+ extraSrcFiles = [];
61+ extraTmpFiles = [];
62+ extraDocFiles = [];
63+ };
64+ components = {
65+ exes = {
66+ "remote-iserv" = {
67+ depends = [
68+ (hsPkgs."base" or (buildDepError "base"))
69+ (hsPkgs."libiserv" or (buildDepError "libiserv"))
70+ ];
71+ buildable = true;
72+ hsSourceDirs = [ "src" ];
73+ mainPath = [ "Cli.hs" ];
74+ };
75+ };
76+ };
77+ } // rec { src = (pkgs.lib).mkDefault ../utils/remote-iserv; }
materialized/ghc-extra-projects/windows/ghc883/default.nixnew file+92
@@ -0,0 +1,92 @@
1+{
2+ pkgs = hackage:
3+ {
4+ packages = {
5+ "binary".revision = (((hackage."binary")."0.8.8.0").revisions).default;
6+ "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
7+ "ghc-heap".revision = (((hackage."ghc-heap")."8.8.3").revisions).default;
8+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
9+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
10+ "alex".revision = (((hackage."alex")."3.2.5").revisions).default;
11+ "alex".flags.small_base = true;
12+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
13+ "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
14+ "directory".revision = (((hackage."directory")."1.3.6.1").revisions).default;
15+ "template-haskell".revision = (((hackage."template-haskell")."2.15.0.0").revisions).default;
16+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
17+ "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
18+ "time".revision = (((hackage."time")."1.9.3").revisions).default;
19+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
20+ "happy".revision = (((hackage."happy")."1.19.12").revisions).default;
21+ "happy".flags.small_base = true;
22+ "hpc".revision = (((hackage."hpc")."0.6.0.3").revisions).default;
23+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
24+ "process".revision = (((hackage."process")."1.6.8.2").revisions).default;
25+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
26+ "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.8.3").revisions).default;
27+ "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
28+ "Win32".revision = (((hackage."Win32")."2.6.2.0").revisions).default;
29+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
30+ };
31+ compiler = {
32+ version = "8.8.3";
33+ nix-name = "ghc883";
34+ packages = {
35+ "ghc-prim" = "0.5.3";
36+ "ghc-heap" = "8.8.3";
37+ "mtl" = "2.2.2";
38+ "rts" = "1.0";
39+ "deepseq" = "1.4.4.0";
40+ "template-haskell" = "2.15.0.0";
41+ "containers" = "0.6.2.1";
42+ "base" = "4.13.0.0";
43+ "transformers" = "0.5.6.2";
44+ "filepath" = "1.4.2.1";
45+ "pretty" = "1.1.3.6";
46+ "ghc-boot-th" = "8.8.3";
47+ "array" = "0.5.4.0";
48+ "integer-gmp" = "1.0.2.0";
49+ };
50+ };
51+ };
52+ extras = hackage:
53+ {
54+ packages = {
55+ ghc = ./.plan.nix/ghc.nix;
56+ bytestring = ./.plan.nix/bytestring.nix;
57+ remote-iserv = ./.plan.nix/remote-iserv.nix;
58+ iserv-proxy = ./.plan.nix/iserv-proxy.nix;
59+ libiserv = ./.plan.nix/libiserv.nix;
60+ ghc-boot = ./.plan.nix/ghc-boot.nix;
61+ ghci = ./.plan.nix/ghci.nix;
62+ iserv = ./.plan.nix/iserv.nix;
63+ };
64+ };
65+ modules = [
66+ ({ lib, ... }:
67+ {
68+ packages = {
69+ "ghc" = {
70+ flags = {
71+ "stage1" = lib.mkOverride 900 false;
72+ "stage2" = lib.mkOverride 900 true;
73+ "integer-gmp" = lib.mkOverride 900 false;
74+ "stage3" = lib.mkOverride 900 false;
75+ "ghci" = lib.mkOverride 900 true;
76+ "integer-simple" = lib.mkOverride 900 false;
77+ "terminfo" = lib.mkOverride 900 true;
78+ };
79+ };
80+ "bytestring" = {
81+ flags = { "integer-simple" = lib.mkOverride 900 false; };
82+ };
83+ "remote-iserv" = { flags = {}; };
84+ "iserv-proxy" = { flags = {}; };
85+ "libiserv" = { flags = { "network" = lib.mkOverride 900 true; }; };
86+ "ghc-boot" = { flags = {}; };
87+ "ghci" = { flags = { "ghci" = lib.mkOverride 900 true; }; };
88+ "iserv" = { flags = {}; };
89+ };
90+ })
91+ ];
92+ }
overlays/bootstrap.nix+3−3
@@ -385,7 +385,7 @@ in {
385 ghc = ghc // { isHaskellNixCompiler = ghc.isHaskellNixBootCompiler; };
385 ghc = ghc // { isHaskellNixCompiler = ghc.isHaskellNixBootCompiler; };
386 inherit (bootstrap.packages) cabal-install nix-tools hpack;
386 inherit (bootstrap.packages) cabal-install nix-tools hpack;
387 name = "alex"; version = "3.2.4";
387 name = "alex"; version = "3.2.4";
388− index-state = "2019-10-20T00:00:00Z";
388+ index-state = self.haskell-nix.internalHackageIndexState;
389 plan-sha256 = "1adn8s46msqm2rl6yf01z2r81maa2001qh441j491gpmc3ki36n0";
389 plan-sha256 = "1adn8s46msqm2rl6yf01z2r81maa2001qh441j491gpmc3ki36n0";
390 materialized = ../materialized/alex;
390 materialized = ../materialized/alex;
391 };
391 };
@@ -395,7 +395,7 @@ in {
395 ghc = ghc // { isHaskellNixCompiler = ghc.isHaskellNixBootCompiler; };
395 ghc = ghc // { isHaskellNixCompiler = ghc.isHaskellNixBootCompiler; };
396 inherit (bootstrap.packages) cabal-install nix-tools hpack;
396 inherit (bootstrap.packages) cabal-install nix-tools hpack;
397 name = "happy"; version = "1.19.11";
397 name = "happy"; version = "1.19.11";
398− index-state = "2019-10-20T00:00:00Z";
398+ index-state = self.haskell-nix.internalHackageIndexState;
399 plan-sha256 = "0swpwhlym4p3209qv90mfgq6zsaw99ipznm4pvd32mxzwq9s5q8i";
399 plan-sha256 = "0swpwhlym4p3209qv90mfgq6zsaw99ipznm4pvd32mxzwq9s5q8i";
400 materialized = ../materialized/happy;
400 materialized = ../materialized/happy;
401 };
401 };
@@ -405,7 +405,7 @@ in {
405 ghc = ghc // { isHaskellNixCompiler = ghc.isHaskellNixBootCompiler; };
405 ghc = ghc // { isHaskellNixCompiler = ghc.isHaskellNixBootCompiler; };
406 inherit (bootstrap.packages) cabal-install nix-tools hpack;
406 inherit (bootstrap.packages) cabal-install nix-tools hpack;
407 name = "hscolour"; version = "1.24.4";
407 name = "hscolour"; version = "1.24.4";
408− index-state = "2019-10-20T00:00:00Z";
408+ index-state = self.haskell-nix.internalHackageIndexState;
409 plan-sha256 = "0cnkczsh1xy7cc60q3blwa51qrjhf5mc89s34y9ab3x702a26b75";
409 plan-sha256 = "0cnkczsh1xy7cc60q3blwa51qrjhf5mc89s34y9ab3x702a26b75";
410 materialized = ../materialized/hscolour;
410 materialized = ../materialized/hscolour;
411 };
411 };
overlays/ghc-packages.nix+132−17
@@ -15,8 +15,8 @@ let
15 HOME=${emptyDotCabal} cabal new-sdist -o $tmp2
15 HOME=${emptyDotCabal} cabal new-sdist -o $tmp2
16 cp $tmp2/*.tar.gz $out
16 cp $tmp2/*.tar.gz $out
17 '';
17 '';
18− callCabal2Nix = src: self.stdenv.mkDerivation {
18+ callCabal2Nix = name: src: self.stdenv.mkDerivation {
19− name = "package-nix";
19+ name = "${name}-package.nix";
20 inherit src;
20 inherit src;
21 nativeBuildInputs = [ self.haskell-nix.nix-tools ];
21 nativeBuildInputs = [ self.haskell-nix.nix-tools ];
22 phases = [ "unpackPhase" "buildPhase" ];
22 phases = [ "unpackPhase" "buildPhase" ];
@@ -29,13 +29,53 @@ let
29 cabal-to-nix *.cabal > $out
29 cabal-to-nix *.cabal > $out
30 '';
30 '';
31 };
31 };
32− importCabal = name: src:
32+
33+ # Combines multiple derivations into one to make them
34+ # easier to materialize.
35+ combineFiles = name: ext: files: self.linkFarm name
36+ (self.lib.mapAttrsToList (name: path: {
37+ name = name + ext;
38+ inherit path;
39+ }) files);
40+
41+ # Calculate the `cabal sdist` of a single boot package as well as
42+ # the output of cabal-to-nix.
43+ cabalToSdistAndNix = ghcName: pkgName: src:
33 # build the source dist
44 # build the source dist
34− let sdist = callCabalSdist name src;
45+ let sdist = callCabalSdist "${ghcName}-${pkgName}" src;
35 # and generate the nix expression corresponding to the source dist
46 # and generate the nix expression corresponding to the source dist
47+ in {
48+ inherit sdist;
49+ nix = callCabal2Nix "${ghcName}-${pkgName}" sdist;
50+ };
51+
52+ # Combine the all the boot package nix files for a given ghc
53+ # into a single derivation and materialize it.
54+ combineAndMaterialize = ghcName: bootPackages:
55+ let
56+ # Not all the boot packages for ghc 8.8 and above can be
57+ # processed yet by `nix-tools`, so we are not materializing the
58+ # ones that currently fail.
59+ # (we need to upgrade `nix-tools` to Cabal 3 for them to work)
60+ skipBroken = self.lib.filterAttrs (pkgName: _:
61+ ghcName == "ghc865" || (pkgName != "base" && pkgName != "ghc-heap"));
62+ sha256 = ghc-boot-packages-nix-sha256."${ghcName}" or null;
63+ materializedPath = ../materialized/ghc-boot-packages-nix + "/${ghcName}";
64+ in (self.haskell-nix.materialize ({
65+ inherit sha256;
66+ materialized = if sha256 != null && __pathExists materializedPath
67+ then materializedPath
68+ else null;
69+ sha256Arg = "ghc-boot-packages-nix-sha256";
70+ reasonNotSafe = null;
71+ }) (combineFiles "${ghcName}-boot-packages-nix" ".nix" (builtins.mapAttrs
72+ (_: sdistAndNix: sdistAndNix.nix) (skipBroken bootPackages))));
73+
36− # but fixing the src to the sdist as well.
74+ # Import the nix and fix the src to the sdist as well.
75+ importSdistAndNix = sdistAndNix:
37− in args: (import (callCabal2Nix sdist) args) // { src = sdist; };
76+ args: (import sdistAndNix.nix args) // { src = sdistAndNix.sdist; };
38
77
78+ # The packages in GHC source and the locations of them
39 ghc-extra-pkgs = {
79 ghc-extra-pkgs = {
40 ghc = "compiler";
80 ghc = "compiler";
41 base = "libraries/base";
81 base = "libraries/base";
@@ -49,6 +89,43 @@ let
49 iserv-proxy = "utils/iserv-proxy";
89 iserv-proxy = "utils/iserv-proxy";
50 };
90 };
51
91
92+ # Hashes needed to make ghc-boot-packages use fixed output derivations
93+ # for the nix files.
94+ ghc-boot-packages-nix-sha256 = {
95+ ghc865 = "0n5bsi67mczbwch8a3dwf58hkignb8qswv7h707dqgc43himvq3b";
96+ ghc882 = "1wpvy0f2m7l3h8fz0iag3q8zj6j4i7732x1f0lkxnr2whnv88dfb";
97+ ghc883 = "147l5a7vm8dgyb2wz692p3n3fsvq8wbjn5wnjhabdgw4mxw0c2mm";
98+ };
99+
100+ # The nix produced by `cabalProject` differs slightly depending on
101+ # what the platforms are. There are currently 3 possible outputs.
102+ ghc-extra-projects-type =
103+ if self.stdenv.hostPlatform.isWindows
104+ then "windows"
105+ else if self.stdenv.buildPlatform != self.stdenv.hostPlatform
106+ then "cross"
107+ else "default";
108+
109+ # Hashes needed to make ghc-extra-projects use fixed output derivations
110+ # for the nix files.
111+ ghc-extra-projects-sha256 = {
112+ default = {
113+ ghc865 = "12mj0fmm0b0jys6pb2l7l9w2w5as5fiqkfav81mjlz9ic1rkqk92";
114+ ghc882 = "0q4v1iryvd5xvnkb1s02a3v6x0lj73r8bsfxrs9bxipk22bcksm9";
115+ ghc883 = "0dy6isqz41c0di5yf1mhyp0nbp6aw5m947b54l5074lkmc4f5alb";
116+ };
117+ windows = {
118+ ghc865 = "1jizwsnmdr2iglispm9wmhhbdh2gh6yfvk8x1jbj0sk9pq21xwap";
119+ ghc882 = "09ji5548bsqqa7iwphjxmc5i067ya6zh0v1hfls9acfrxax0sfgm";
120+ ghc883 = "0gliadn1nj1i5y5hjz280h1kgzql97yfh4gy63k2g7xsldmzb57b";
121+ };
122+ cross = {
123+ ghc865 = "10bckrm3qi1vymncjiv534b8nb8bgix8w8y91543xxwhzpmwml3f";
124+ ghc882 = "0hamwh6x0vfki2c4kj132x2c2hqvr1r735cfd4yrygzf86drmyf0";
125+ ghc883 = "0v8wq8i82c329kzi3yzv6ny63yaggbzdaaxbbklxwg16fawqn08p";
126+ };
127+ };
128+
52# Given the ghc-extra-pkgs, we'll create a cabal.project
129# Given the ghc-extra-pkgs, we'll create a cabal.project
53# that contains all of them. And then we call cabalProject
130# that contains all of them. And then we call cabalProject
54# on it to generate the necessary cabal project exposing all
131# on it to generate the necessary cabal project exposing all
@@ -65,38 +142,76 @@ let
65# as part of patches we applied to the GHC tree.
142# as part of patches we applied to the GHC tree.
66
143
67in rec {
144in rec {
68− ghc-boot-packages = builtins.mapAttrs
145+ ghc-boot-packages-sdist-and-nix = builtins.mapAttrs
69− (name: value: builtins.mapAttrs
146+ (ghcName: value: builtins.mapAttrs
70− (pkgName: dir: importCabal "${name}-${pkgName}" "${value.passthru.configured-src}/${dir}") ghc-extra-pkgs)
147+ (pkgName: dir: cabalToSdistAndNix ghcName pkgName "${value.passthru.configured-src}/${dir}") ghc-extra-pkgs)
71 self.buildPackages.haskell-nix.compiler;
148 self.buildPackages.haskell-nix.compiler;
72
149
150+ # All the ghc boot package nix files for each ghc.
151+ ghc-boot-packages-nix = builtins.mapAttrs
152+ combineAndMaterialize
153+ ghc-boot-packages-sdist-and-nix;
154+
155+ # The import nix results for each ghc boot package for each ghc (with src=sdist).
156+ ghc-boot-packages = builtins.mapAttrs
157+ (ghcName: value: builtins.mapAttrs
158+ (pkgName: sdistAndNix: importSdistAndNix {
159+ inherit (sdistAndNix) sdist;
160+ nix = ghc-boot-packages-nix."${ghcName}" + "/${pkgName}.nix";
161+ }) value)
162+ ghc-boot-packages-sdist-and-nix;
163+
164+ # Derivation with cabal.project for use with `cabalProject'` for each ghc.
73 ghc-extra-pkgs-cabal-projects = builtins.mapAttrs (name: value:
165 ghc-extra-pkgs-cabal-projects = builtins.mapAttrs (name: value:
74 let package-locs =
166 let package-locs =
75− builtins.mapAttrs (_: dir: "${value.passthru.configured-src}/${dir}")
76 # TODO ghc-heap.cabal requires cabal 3. We should update the cabalProject' call
167 # TODO ghc-heap.cabal requires cabal 3. We should update the cabalProject' call
77 # in `ghc-extra-projects` below to work with this.
168 # in `ghc-extra-projects` below to work with this.
78 (self.lib.filterAttrs (n: _: n != "base" && n != "ghc-heap") ghc-extra-pkgs);
169 (self.lib.filterAttrs (n: _: n != "base" && n != "ghc-heap") ghc-extra-pkgs);
79− in self.writeTextFile {
170+ in self.stdenv.mkDerivation {
80 name = "ghc-extra-pkgs-cabal-project-${name}";
171 name = "ghc-extra-pkgs-cabal-project-${name}";
81− destination = "/cabal.project";
172+ phases = [ "buildPhase" ];
82− text = ''
173+ # Copy each cabal file from the configured ghc source and
174+ # add a suitable cabal.project file.
175+ buildPhase = ''
176+ ${self.lib.concatStrings (self.lib.mapAttrsToList (_: dir: ''
177+ mkdir -p $out/${dir}
178+ cp ${value.passthru.configured-src}/${dir}/*.cabal $out/${dir}
179+ # Remove references to libffi as the are not cross platform
180+ # and will break memoization (we will need to add them back)
181+ sed -i 's|/nix/store/.*-libffi.*/include||' $out/${dir}/*.cabal
182+ '') package-locs)}
183+ cat >$out/cabal.project <<EOF
83 packages: ${self.lib.concatStringsSep " " (self.lib.attrValues package-locs)}
184 packages: ${self.lib.concatStringsSep " " (self.lib.attrValues package-locs)}
84 -- need this for libiserve as it doesn't build against 3.0 yet.
185 -- need this for libiserve as it doesn't build against 3.0 yet.
85 constraints: network < 3.0,
186 constraints: network < 3.0,
86 ghc +ghci,
187 ghc +ghci,
87 ghci +ghci,
188 ghci +ghci,
88 libiserv +network
189 libiserv +network
190+ EOF
89 '';
191 '';
90 }) self.buildPackages.haskell-nix.compiler;
192 }) self.buildPackages.haskell-nix.compiler;
91
193
194+ # A `cabalProject'` project for each ghc
92− ghc-extra-projects = builtins.mapAttrs (name: proj: self.haskell-nix.cabalProject' {
195+ ghc-extra-projects = builtins.mapAttrs (ghcName: proj:
93− name = "ghc-extra-packages";
196+ # Where to look for materialization files
197+ let materializedPath = ../materialized/ghc-extra-projects
198+ + "/${ghc-extra-projects-type}/${ghcName}";
199+ in self.haskell-nix.cabalProject' {
200+ name = "ghc-extra-projects-${ghc-extra-projects-type}-${ghcName}";
94 src = proj;
201 src = proj;
95− index-state = "2019-10-31T00:00:00Z";
202+ index-state = self.haskell-nix.internalHackageIndexState;
203+ plan-sha256 =
204+ ghc-extra-projects-sha256."${ghc-extra-projects-type}"."${ghcName}"
205+ or null;
206+ materialized =
207+ if ghc-extra-projects-sha256."${ghc-extra-projects-type}" ? "${ghcName}"
208+ then materializedPath
209+ else null;
96− ghc = self.buildPackages.haskell-nix.compiler.${name};
210+ ghc = self.buildPackages.haskell-nix.compiler.${ghcName};
97 configureArgs = "--disable-tests"; # avoid failures satisfying bytestring package tests dependencies
211 configureArgs = "--disable-tests"; # avoid failures satisfying bytestring package tests dependencies
98 })
212 })
99 ghc-extra-pkgs-cabal-projects;
213 ghc-extra-pkgs-cabal-projects;
100
214
215+ # The packages from the project for each ghc
101 ghc-extra-packages = builtins.mapAttrs (_: proj: proj.hsPkgs) ghc-extra-projects;
216 ghc-extra-packages = builtins.mapAttrs (_: proj: proj.hsPkgs) ghc-extra-projects;
102}
217}
overlays/haskell.nix+20−3
@@ -198,11 +198,19 @@ self: super: {
198 HOME=$out cabal new-update cached
198 HOME=$out cabal new-update cached
199 '';
199 '';
200
200
201+ # Some of features of haskell.nix rely on using a hackage index
202+ # to calculate a build plan. To maintain stabity for caching and
203+ # to allow the outputs to be materialized we pin this value here.
204+ # If you want to update this value it important to check the
205+ # materializations. Turn `checkMaterialization` on below and
206+ # check the CI results before turning it off again.
207+ internalHackageIndexState = "2020-04-12T00:00:00Z";
208+
201 checkMaterialization = false; # This is the default. Use an overlay to set it to true and test all the materialized files
209 checkMaterialization = false; # This is the default. Use an overlay to set it to true and test all the materialized files
202
210
203 # Helps materialize the output of derivations
211 # Helps materialize the output of derivations
204 materialize = import ../lib/materialize.nix {
212 materialize = import ../lib/materialize.nix {
205− inherit (self) nix;
213+ inherit (self.buildPackages) nix;
206 inherit (self.haskell-nix) checkMaterialization;
214 inherit (self.haskell-nix) checkMaterialization;
207 pkgs = self.buildPackages.pkgs;
215 pkgs = self.buildPackages.pkgs;
208 inherit (self.buildPackages.pkgs) runCommand;
216 inherit (self.buildPackages.pkgs) runCommand;
@@ -493,13 +501,22 @@ self: super: {
493 ghc865 = self.buildPackages.haskell-nix.compiler.ghc865;
501 ghc865 = self.buildPackages.haskell-nix.compiler.ghc865;
494 ghc882 = self.buildPackages.haskell-nix.compiler.ghc882;
502 ghc882 = self.buildPackages.haskell-nix.compiler.ghc882;
495 ghc883 = self.buildPackages.haskell-nix.compiler.ghc883;
503 ghc883 = self.buildPackages.haskell-nix.compiler.ghc883;
504+ ghc-boot-packages-nix = self.recurseIntoAttrs
505+ (builtins.mapAttrs (_: self.recurseIntoAttrs)
506+ (filterSupportedGhc self.ghc-boot-packages-nix));
496 ghc-extra-projects = self.recurseIntoAttrs (builtins.mapAttrs (_: proj: withInputs proj.plan-nix)
507 ghc-extra-projects = self.recurseIntoAttrs (builtins.mapAttrs (_: proj: withInputs proj.plan-nix)
497 (filterSupportedGhc self.ghc-extra-projects));
508 (filterSupportedGhc self.ghc-extra-projects));
498 } // self.lib.optionalAttrs (ifdLevel > 1) {
509 } // self.lib.optionalAttrs (ifdLevel > 1) {
499 # Things that require two levels of IFD to build (inputs should be in level 1)
510 # Things that require two levels of IFD to build (inputs should be in level 1)
500 inherit (self.haskell-nix) nix-tools;
511 inherit (self.haskell-nix) nix-tools;
512+ # These seem to be the only things we use from `ghc-extra-packages`
513+ # in haskell.nix itself.
514+ iserv-proxy = self.recurseIntoAttrs
515+ (builtins.mapAttrs (_: pkgs: pkgs.iserv-proxy.components.exes.iserv-proxy)
516+ (filterSupportedGhc self.ghc-extra-packages));
501− ghc-extra-packages = self.recurseIntoAttrs
517+ remote-iserv = self.recurseIntoAttrs
518+ (builtins.mapAttrs (_: pkgs: pkgs.remote-iserv.components.exes.remote-iserv)
502− (filterSupportedGhc self.ghc-extra-packages);
519+ (filterSupportedGhc self.ghc-extra-packages));
503 });
520 });
504 };
521 };
505}
522}
test/buildable/default.nix+2−2
@@ -1,11 +1,11 @@
1−{ stdenv, cabalProject', haskellLib, recurseIntoAttrs }:
1+{ stdenv, cabalProject', haskellLib, recurseIntoAttrs, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
5let
5let
6 project = cabalProject' {
6 project = cabalProject' {
7 index-state = "2019-04-30T00:00:00Z";
7 index-state = "2019-04-30T00:00:00Z";
8− src = haskellLib.cleanGit { src = ../..; name = "buildable"; subDir = "test/buildable"; };
8+ src = testSrc "buildable";
9 modules = [ { packages.buildable-test.flags.exclude-broken = true; } ];
9 modules = [ { packages.buildable-test.flags.exclude-broken = true; } ];
10 };
10 };
11 packages = project.hsPkgs;
11 packages = project.hsPkgs;
test/builder-haddock/default.nix+1−1
@@ -1,4 +1,4 @@
1−{ mkCabalProjectPkgSet, stdenv }:
1+{ mkCabalProjectPkgSet, stdenv, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
test/cabal-22/default.nix+2−2
@@ -1,10 +1,10 @@
1−{ stdenv, mkCabalProjectPkgSet, cabalProject', haskellLib, util, recurseIntoAttrs }:
1+{ stdenv, mkCabalProjectPkgSet, cabalProject', haskellLib, util, recurseIntoAttrs, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
5let
5let
6 project = cabalProject' {
6 project = cabalProject' {
7− src = haskellLib.cleanGit { src = ../..; name = "cabal22"; subDir = "test/cabal-22"; };
7+ src = testSrc "cabal-22";
8 };
8 };
9
9
10 packages = project.hsPkgs;
10 packages = project.hsPkgs;
test/cabal-simple-prof/default.nix+2−2
@@ -1,5 +1,5 @@
1# Test a package set
1# Test a package set
2−{ stdenv, util, cabalProject', haskellLib, recurseIntoAttrs }:
2+{ stdenv, util, cabalProject', haskellLib, recurseIntoAttrs, testSrc }:
3
3
4with stdenv.lib;
4with stdenv.lib;
5
5
@@ -16,7 +16,7 @@ let
16 ];
16 ];
17
17
18 project = cabalProject' {
18 project = cabalProject' {
19− src = haskellLib.cleanGit { src = ../..; name = "cabal-simple-prof"; subDir = "test/cabal-simple-prof"; };
19+ src = testSrc "cabal-simple-prof";
20 inherit modules;
20 inherit modules;
21 };
21 };
22
22
test/cabal-simple/default.nix+2−2
@@ -1,5 +1,5 @@
1# Test a package set
1# Test a package set
2−{ stdenv, util, mkCabalProjectPkgSet, cabalProject', haskellLib, recurseIntoAttrs }:
2+{ stdenv, util, mkCabalProjectPkgSet, cabalProject', haskellLib, recurseIntoAttrs, testSrc }:
3
3
4with stdenv.lib;
4with stdenv.lib;
5
5
@@ -13,7 +13,7 @@ let
13 ];
13 ];
14
14
15 project = cabalProject' {
15 project = cabalProject' {
16− src = haskellLib.cleanGit { src = ../..; name = "cabal-simple"; subDir = "test/cabal-simple"; };
16+ src = testSrc "cabal-simple";
17 inherit modules;
17 inherit modules;
18 };
18 };
19
19
test/cabal-source-repo/default.nix+2−2
@@ -1,11 +1,11 @@
1−{ stdenv, cabalProject', recurseIntoAttrs, haskellLib }:
1+{ stdenv, cabalProject', recurseIntoAttrs, haskellLib, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
5let
5let
6 project = cabalProject' {
6 project = cabalProject' {
7 index-state = "2019-04-30T00:00:00Z";
7 index-state = "2019-04-30T00:00:00Z";
8− src = ./.;
8+ src = testSrc "cabal-source-repo";
9 };
9 };
10 packages = project.hsPkgs;
10 packages = project.hsPkgs;
11in recurseIntoAttrs {
11in recurseIntoAttrs {
test/cabal-sublib/default.nix+2−2
@@ -1,5 +1,5 @@
1# Test a package set
1# Test a package set
2−{ stdenv, util, cabalProject', haskellLib, recurseIntoAttrs }:
2+{ stdenv, util, cabalProject', haskellLib, recurseIntoAttrs, testSrc }:
3
3
4with stdenv.lib;
4with stdenv.lib;
5
5
@@ -14,7 +14,7 @@ let
14
14
15 # The ./pkgs.nix works for linux & darwin, but not for windows
15 # The ./pkgs.nix works for linux & darwin, but not for windows
16 project = cabalProject' {
16 project = cabalProject' {
17− src = haskellLib.cleanGit { src = ../..; name = "cabal-sublib"; subDir = "test/cabal-sublib"; };
17+ src = testSrc "cabal-sublib";
18 inherit modules;
18 inherit modules;
19 };
19 };
20
20
test/call-cabal-project-to-nix/default.nix+2−2
@@ -1,4 +1,4 @@
1−{ stdenv, mkCabalProjectPkgSet, callCabalProjectToNix, importAndFilterProject, recurseIntoAttrs, haskellLib }:
1+{ stdenv, mkCabalProjectPkgSet, callCabalProjectToNix, importAndFilterProject, recurseIntoAttrs, haskellLib, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
@@ -8,7 +8,7 @@ let
8 plan = (importAndFilterProject (callCabalProjectToNix {
8 plan = (importAndFilterProject (callCabalProjectToNix {
9 index-state = "2019-04-30T00:00:00Z";
9 index-state = "2019-04-30T00:00:00Z";
10 # reuse the cabal-simple test project
10 # reuse the cabal-simple test project
11− src = ../cabal-simple;
11+ src = testSrc "cabal-simple";
12 }));
12 }));
13 pkgSet = mkCabalProjectPkgSet {
13 pkgSet = mkCabalProjectPkgSet {
14 plan-pkgs = plan.pkgs;
14 plan-pkgs = plan.pkgs;
test/call-stack-to-nix/default.nix+2−2
@@ -1,10 +1,10 @@
1−{ stdenv, mkStackPkgSet, callStackToNix, importAndFilterProject, recurseIntoAttrs, haskellLib }:
1+{ stdenv, mkStackPkgSet, callStackToNix, importAndFilterProject, recurseIntoAttrs, haskellLib, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
5let
5let
6 stack = importAndFilterProject (callStackToNix {
6 stack = importAndFilterProject (callStackToNix {
7− src = ../stack-simple;
7+ src = testSrc "stack-simple";
8 });
8 });
9 pkgSet = mkStackPkgSet {
9 pkgSet = mkStackPkgSet {
10 stack-pkgs = stack.pkgs;
10 stack-pkgs = stack.pkgs;
test/default.nix+26−22
@@ -134,6 +134,10 @@ let
134 then filterNonIfdInputsValues attrs
134 then filterNonIfdInputsValues attrs
135 else attrs;
135 else attrs;
136
136
137+ testSrcRoot = haskell-nix.haskellLib.cleanGit { src = ../.; subDir = "test"; };
138+ testSrc = subDir: haskell-nix.haskellLib.cleanSourceWith { src = testSrcRoot; inherit subDir; };
139+ callTest = x: args: haskell-nix.callPackage x (args // { inherit testSrc; });
140+
137 # Run unit tests with: nix-instantiate --eval --strict -A unit.tests
141 # Run unit tests with: nix-instantiate --eval --strict -A unit.tests
138 # An empty list means success.
142 # An empty list means success.
139 unitTests =
143 unitTests =
@@ -147,29 +151,29 @@ let
147
151
148 # All tests.
152 # All tests.
149 allTests = {
153 allTests = {
150− cabal-simple = haskell-nix.callPackage ./cabal-simple { inherit util; };
154+ cabal-simple = callTest ./cabal-simple { inherit util; };
151− cabal-simple-prof = haskell-nix.callPackage ./cabal-simple-prof { inherit util; };
155+ cabal-simple-prof = callTest ./cabal-simple-prof { inherit util; };
152− cabal-sublib = haskell-nix.callPackage ./cabal-sublib { inherit util; };
156+ cabal-sublib = callTest ./cabal-sublib { inherit util; };
153− cabal-22 = haskell-nix.callPackage ./cabal-22 { inherit util; };
157+ cabal-22 = callTest ./cabal-22 { inherit util; };
154− with-packages = haskell-nix.callPackage ./with-packages { inherit util; };
158+ with-packages = callTest ./with-packages { inherit util; };
155− builder-haddock = haskell-nix.callPackage ./builder-haddock {};
159+ builder-haddock = callTest ./builder-haddock {};
156− stack-simple = haskell-nix.callPackage ./stack-simple {};
160+ stack-simple = callTest ./stack-simple {};
157− stack-local-resolver = haskell-nix.callPackage ./stack-local-resolver {};
161+ stack-local-resolver = callTest ./stack-local-resolver {};
158− snapshots = haskell-nix.callPackage ./snapshots {};
162+ snapshots = callTest ./snapshots {};
159− shell-for = haskell-nix.callPackage ./shell-for {};
163+ shell-for = callTest ./shell-for {};
160− shell-for-setup-deps = haskell-nix.callPackage ./shell-for-setup-deps {};
164+ shell-for-setup-deps = callTest ./shell-for-setup-deps {};
161 setup-deps = import ./setup-deps { inherit pkgs; };
165 setup-deps = import ./setup-deps { inherit pkgs; };
162− callStackToNix = haskell-nix.callPackage ./call-stack-to-nix {};
166+ callStackToNix = callTest ./call-stack-to-nix {};
163− callCabalProjectToNix = haskell-nix.callPackage ./call-cabal-project-to-nix {};
167+ callCabalProjectToNix = callTest ./call-cabal-project-to-nix {};
164− cabal-source-repo = haskell-nix.callPackage ./cabal-source-repo {};
168+ cabal-source-repo = callTest ./cabal-source-repo {};
165− buildable = haskell-nix.callPackage ./buildable {};
169+ buildable = callTest ./buildable {};
166− project-flags-cabal = haskell-nix.callPackage ./project-flags/cabal.nix {};
170+ project-flags-cabal = callTest ./project-flags/cabal.nix {};
167− project-flags-stack = haskell-nix.callPackage ./project-flags/stack.nix {};
171+ project-flags-stack = callTest ./project-flags/stack.nix {};
168− fully-static = haskell-nix.callPackage ./fully-static { inherit (pkgs) buildPackages; };
172+ fully-static = callTest ./fully-static { inherit (pkgs) buildPackages; };
169− ghc-options-cabal = haskell-nix.callPackage ./ghc-options/cabal.nix {};
173+ ghc-options-cabal = callTest ./ghc-options/cabal.nix {};
170− ghc-options-stack = haskell-nix.callPackage ./ghc-options/stack.nix {};
174+ ghc-options-stack = callTest ./ghc-options/stack.nix {};
171− exe-only = haskell-nix.callPackage ./exe-only { inherit util; };
175+ exe-only = callTest ./exe-only { inherit util; };
172− stack-source-repo = haskell-nix.callPackage ./stack-source-repo {};
176+ stack-source-repo = callTest ./stack-source-repo {};
173
177
174 unit = unitTests;
178 unit = unitTests;
175 };
179 };
test/exe-only/default.nix+2−2
@@ -1,11 +1,11 @@
1# Test a package set
1# Test a package set
2−{ stdenv, util, haskell-nix, recurseIntoAttrs, haskellLib }:
2+{ stdenv, util, haskell-nix, recurseIntoAttrs, haskellLib, testSrc }:
3
3
4with stdenv.lib;
4with stdenv.lib;
5
5
6let
6let
7 project = haskell-nix.cabalProject' {
7 project = haskell-nix.cabalProject' {
8− src = ./.;
8+ src = testSrc "exe-only";
9 };
9 };
10
10
11 packages = project.hsPkgs;
11 packages = project.hsPkgs;
test/fully-static/default.nix+3−2
@@ -2,6 +2,7 @@
2, stdenv, gmp6, openssl, zlib, libffi
2, stdenv, gmp6, openssl, zlib, libffi
3, buildPackages
3, buildPackages
4, recurseIntoAttrs
4, recurseIntoAttrs
5+, testSrc
5}:
6}:
6
7
7with stdenv.lib;
8with stdenv.lib;
@@ -13,7 +14,7 @@ let
13
14
14 # IFD stack-to-nix
15 # IFD stack-to-nix
15 project = { gpl ? true }: stackProject' {
16 project = { gpl ? true }: stackProject' {
16− src = ./.;
17+ src = testSrc "fully-static";
17 pkg-def-extras = [];
18 pkg-def-extras = [];
18 modules = [
19 modules = [
19 # Musl libc fully static build
20 # Musl libc fully static build
@@ -83,4 +84,4 @@ in recurseIntoAttrs {
83 pandoc-integer-simple = packagesIntegerSimple.pandoc.components.exes.pandoc;
84 pandoc-integer-simple = packagesIntegerSimple.pandoc.components.exes.pandoc;
84 };
85 };
85 };
86 };
86−}
87+}
test/ghc-options/cabal.nix+2−2
@@ -1,11 +1,11 @@
1−{ stdenv, cabalProject', recurseIntoAttrs, haskellLib }:
1+{ stdenv, cabalProject', recurseIntoAttrs, haskellLib, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
5let
5let
6 project = cabalProject' {
6 project = cabalProject' {
7 index-state = "2019-04-30T00:00:00Z";
7 index-state = "2019-04-30T00:00:00Z";
8− src = ./.;
8+ src = testSrc "ghc-options";
9 # TODO find a way to get the ghc-options into plan.json so we can use it in plan-to-nix
9 # TODO find a way to get the ghc-options into plan.json so we can use it in plan-to-nix
10 modules = [ { packages.test-ghc-options.package.ghcOptions = "-DTEST_GHC_OPTION"; } ];
10 modules = [ { packages.test-ghc-options.package.ghcOptions = "-DTEST_GHC_OPTION"; } ];
11 };
11 };
test/ghc-options/stack.nix+2−2
@@ -1,10 +1,10 @@
1−{ stdenv, stackProject', recurseIntoAttrs, haskellLib }:
1+{ stdenv, stackProject', recurseIntoAttrs, haskellLib, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
5let
5let
6 project = stackProject' {
6 project = stackProject' {
7− src = ./.;
7+ src = testSrc "ghc-options";
8 };
8 };
9 packages = project.hsPkgs;
9 packages = project.hsPkgs;
10
10
test/project-flags/cabal.nix+2−2
@@ -1,11 +1,11 @@
1−{ stdenv, cabalProject', recurseIntoAttrs, haskellLib }:
1+{ stdenv, cabalProject', recurseIntoAttrs, haskellLib, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
5let
5let
6 project = cabalProject' {
6 project = cabalProject' {
7 index-state = "2019-04-30T00:00:00Z";
7 index-state = "2019-04-30T00:00:00Z";
8− src = ./.;
8+ src = testSrc "project-flags";
9 };
9 };
10 packages = project.hsPkgs;
10 packages = project.hsPkgs;
11
11
test/project-flags/stack.nix+2−2
@@ -1,10 +1,10 @@
1−{ stdenv, stackProject', recurseIntoAttrs, haskellLib }:
1+{ stdenv, stackProject', recurseIntoAttrs, haskellLib, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
5let
5let
6 project = stackProject' {
6 project = stackProject' {
7− src = ./.;
7+ src = testSrc "project-flags";
8 };
8 };
9 packages = project.hsPkgs;
9 packages = project.hsPkgs;
10
10
test/shell-for-setup-deps/default.nix+2−2
@@ -1,10 +1,10 @@
1−{ stdenv, cabal-install, cabalProject', recurseIntoAttrs, runCommand }:
1+{ stdenv, cabal-install, cabalProject', recurseIntoAttrs, runCommand, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
5let
5let
6 project = cabalProject' {
6 project = cabalProject' {
7− src = ./.;
7+ src = testSrc "shell-for-setup-deps";
8 modules = [{
8 modules = [{
9 # Package has no exposed modules which causes
9 # Package has no exposed modules which causes
10 # haddock: No input file(s)
10 # haddock: No input file(s)
test/shell-for/default.nix+1−1
@@ -1,4 +1,4 @@
1−{ stdenv, cabal-install, mkCabalProjectPkgSet, recurseIntoAttrs, runCommand }:
1+{ stdenv, cabal-install, mkCabalProjectPkgSet, recurseIntoAttrs, runCommand, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
test/snapshots/default.nix+1−1
@@ -1,4 +1,4 @@
1−{ stdenv, haskellPackages, snapshots, recurseIntoAttrs, runCommand }:
1+{ stdenv, haskellPackages, snapshots, recurseIntoAttrs, runCommand, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
test/stack-local-resolver/default.nix+10−5
@@ -1,9 +1,14 @@
1−{ stackProject }:
1+{ stackProject', recurseIntoAttrs, testSrc }:
2
2
3let
3let
4− project = stackProject {
4+ project = stackProject' {
5− src = ./.;
5+ src = testSrc "stack-local-resolver";
6 };
6 };
7−in
7+ packages = project.hsPkgs;
8
8
9+in recurseIntoAttrs {
10+ ifdInputs = {
11+ inherit (project) stack-nix;
12+ };
9−project.stack-local-resolver
13+ inherit (packages.stack-local-resolver.components) library;
14+}
test/stack-simple/default.nix+1−1
@@ -1,4 +1,4 @@
1−{ stdenv, pkgs, mkStackPkgSet, haskellLib }:
1+{ stdenv, pkgs, mkStackPkgSet, haskellLib, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4
4
test/stack-source-repo/default.nix+2−2
@@ -1,8 +1,8 @@
1−{ stackProject', recurseIntoAttrs }:
1+{ stackProject', recurseIntoAttrs, testSrc }:
2
2
3let
3let
4 project = stackProject' {
4 project = stackProject' {
5− src = ./.;
5+ src = testSrc "stack-source-repo";
6 };
6 };
7 packages = project.hsPkgs;
7 packages = project.hsPkgs;
8
8
test/with-packages/default.nix+1−1
@@ -1,4 +1,4 @@
1−{ stdenv, util, mkPkgSet, recurseIntoAttrs }:
1+{ stdenv, util, mkPkgSet, recurseIntoAttrs, testSrc }:
2
2
3with stdenv.lib;
3with stdenv.lib;
4with util;
4with util;