on 742932a help sign in
2302 files changed+8130−376822
since splitsnapshots
unifiedsplit
.buildkite/pipeline.yml+5−17 .buildkite/updates.yml+10−3 .github/workflows/rebase.yaml−28 .github/workflows/windows-secp256k1.yml−51 README.md+6−33 build.nix+13−30 builder/Setup.ghcjs.hs−272 builder/Setup.hs−2 builder/comp-builder.nix+91−303 builder/default.nix+17−25 builder/ghc-for-component-wrapper.nix+13−65 builder/haddock-builder.nix+2−4 builder/hspkg-builder.nix+14−44 builder/make-config-files.nix+17−50 builder/setup-builder.nix+18−33 builder/shell-for.nix+47−94 changelog.md−119 ci-lib.nix+4−4 ci.nix+36−64 compiler/bootstrap/cabal-install.nix+2−2 compiler/ghc/configured-src.nix+114 compiler/ghc/default.nix+95−278 compiler/ghc/source-dist.nix−40 compiler/ghcjs/ghcjs-src.json+2−2 compiler/ghcjs/ghcjs.nix+29−262 compiler/ghcjs/ghcjs810-patched-boot-packages/aeson.patch−13 compiler/ghcjs/ghcjs810-patched-boot-packages/default.nix−176 compiler/ghcjs/ghcjs810-patched-boot-packages/ghcjs-base.patch−471 compiler/ghcjs/ghcjs810-patched-boot-packages/hashable.patch−99 compiler/ghcjs/ghcjs810-src.json−6 compiler/ghcjs/ghcjs88-src.json−6 compiler/ghcjs/patches/810/boot-optimization-flags.patch−14 compiler/ghcjs/patches/810/fast-weak.patch−87 compiler/old-ghc-nix/default.nix+10 compiler/old-ghc-nix/old-ghc-nix.json+7 compiler/windows/include/synchapi.h−1 compiler/windows/include/windows.h−18 config.nix+4 default.nix+28−29 docs/dev/coverage.md−180 docs/dev/hix.md−27 docs/dev/nix-tools-pin.md−16 docs/dev/nixpkgs-pin.md+15−7 docs/index.md+1−1 docs/reference/commands.md+3−7 docs/reference/library.md+12−22 docs/reference/supported-ghc-versions.md+28−45 docs/troubleshooting.md+17−35 docs/tutorials/building-package-from-stackage-hackage.md+3−3 docs/tutorials/ca-derivations.md−65 docs/tutorials/coverage.md−123 docs/tutorials/cross-compilation.md+1−1 docs/tutorials/development.md+15−23 docs/tutorials/getting-started-flakes.md−142 docs/tutorials/getting-started-hix.md−227 docs/tutorials/getting-started.md+40−116 docs/tutorials/materialization.md+115−99 docs/tutorials/pkg-map.md+6−32 flake.lock−396 flake.nix+30−142 hackage-src.json+4−7 hix/default.nix−43 hix/project.nix−77 lib/cabal-licenses.nix+21−18 lib/cabal-os-arch-comp.nix+1−1 lib/cabal-project-parser.nix+31−125 lib/call-cabal-project-to-nix.nix+85−277 lib/call-stack-to-nix.nix+18−33 lib/check.nix+11−25 lib/clean-cabal-component.nix+56−105 lib/clean-git.nix+49−89 lib/clean-source-haskell.nix+15−1 lib/clean-source-with.nix+8−35 lib/cover-project.nix−150 lib/cover.nix−204 lib/default.nix+30−110 lib/failed-cabal-configure.nix−9 lib/fetch-resolver.nix+2−6 lib/ghcjs-project.nix+32−119 lib/import-and-filter-project.nix+25−39 lib/materialize.nix+11−23 lib/pkgconf-nixpkgs-map.nix+17−28 lib/project-overlays.nix−37 lib/spdx/cabal.nix−19 lib/spdx/licenses.nix−27 lib/spdx/parser.nix−115 lib/spdx/test.nix−32 lib/stack-cache-generator.nix+31−46 lib/system-nixpkgs-map.nix+82−119 lib/system-pkgs.nix−16 materialized/bootstrap/ghc8107/alex/.plan.nix/alex.nix−160 materialized/bootstrap/ghc8107/alex/default.nix−69 materialized/bootstrap/ghc8107/happy-1.19.12/.plan.nix/happy.nix−200 materialized/bootstrap/ghc8107/happy-1.19.12/default.nix−75 materialized/bootstrap/ghc8107/hscolour/.plan.nix/hscolour.nix−70 materialized/bootstrap/ghc8107/hscolour/default.nix−47 materialized/bootstrap/ghc844/alex/.plan.nix/alex.nix+1−1 materialized/bootstrap/ghc844/alex/default.nix+18−34 materialized/bootstrap/ghc844/happy-1.19.11/.plan.nix/happy.nix+5−5 materialized/bootstrap/ghc844/happy-1.19.11/default.nix+28−55 materialized/bootstrap/ghc844/happy-1.19.12/.plan.nix/happy.nix+1−1 materialized/bootstrap/ghc844/happy-1.19.12/default.nix+22−25 materialized/bootstrap/ghc844/hscolour/.plan.nix/hscolour.nix+1−1 materialized/bootstrap/ghc844/hscolour/default.nix+8−22 materialized/bootstrap/ghc882/alex/.plan.nix/alex.nix+1−1 materialized/bootstrap/ghc882/alex/default.nix+18−38 materialized/bootstrap/ghc882/happy-1.19.12/.plan.nix/happy.nix+1−1 materialized/bootstrap/ghc882/happy-1.19.12/default.nix+22−44 materialized/bootstrap/ghc882/hscolour/.plan.nix/hscolour.nix+1−1 materialized/bootstrap/ghc882/hscolour/default.nix+8−22 materialized/bootstrap/ghc883/alex/.plan.nix/alex.nix−160 materialized/bootstrap/ghc883/alex/default.nix−65 materialized/bootstrap/ghc883/happy-1.19.12/.plan.nix/happy.nix−200 materialized/bootstrap/ghc883/happy-1.19.12/default.nix−56 materialized/bootstrap/ghc883/hscolour/.plan.nix/hscolour.nix−70 materialized/bootstrap/ghc883/hscolour/default.nix−47 materialized/bootstrap/ghc884/alex/.plan.nix/alex.nix−160 materialized/bootstrap/ghc884/alex/default.nix−65 materialized/bootstrap/ghc884/happy-1.19.12/.plan.nix/happy.nix−200 materialized/bootstrap/ghc884/happy-1.19.12/default.nix−56 materialized/bootstrap/ghc884/hscolour/.plan.nix/hscolour.nix−70 materialized/bootstrap/ghc884/hscolour/default.nix−47 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.1-x86_64-linux/ghc/info+1−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.2-x86_64-linux/ghc/info+1−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc-pkg/dump-global−1443 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc/info−69 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc-pkg/dump-global−1443 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc/info−69 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/dump-global−1446 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc/info−69 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc-pkg/dump-global−1443 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc/info−69 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc-pkg/dump-global−1443 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc/info−67 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc-pkg/dump-global−1443 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc/info−67 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.8.4-x86_64-linux/ghc/info+3−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc-pkg/dump-global−1485 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc/info−70 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc/supported-languages−261 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc-pkg/dump-global−1512 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/info−66 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/supported-languages−268 materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-8.10.1-x86_64-darwin/ghc/info+1−1 materialized/dummy-ghc/ghc-8.10.1-x86_64-linux/ghc/info+1−1 materialized/dummy-ghc/ghc-8.10.2-x86_64-darwin/ghc/info+1−1 materialized/dummy-ghc/ghc-8.10.2-x86_64-linux/ghc/info+1−7 materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc-pkg/dump-global−1638 materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc/info−69 materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc-pkg/dump-global−1639 materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc/info−75 materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc-pkg/dump-global−1638 materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc/info−75 materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc-pkg/dump-global−1639 materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc/info−75 materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc-pkg/dump-global−1642 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc/info−69 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/dump-global−1643 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc/info−75 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc-pkg/dump-global−1638 materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc/info−75 materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc-pkg/dump-global−1639 materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc/info−75 materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc-pkg/dump-global−1638 materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/info−75 materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc-pkg/dump-global−1639 materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/info−75 materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc-pkg/dump-global−1639 materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/info−73 materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc-pkg/dump-global−1638 materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/info−73 materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/version−1 materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc-pkg/dump-global−1639 materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/info−75 materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc-pkg/dump-global−1638 materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/info−75 materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-8.6.5-x86_64-darwin/ghc/info−5 materialized/dummy-ghc/ghc-8.6.5-x86_64-linux/ghc/info−5 materialized/dummy-ghc/ghc-8.8.2-x86_64-darwin/ghc-pkg/dump-global+3−6 materialized/dummy-ghc/ghc-8.8.2-x86_64-darwin/ghc/info+1−1 materialized/dummy-ghc/ghc-8.8.2-x86_64-linux/ghc-pkg/dump-global+2−4 materialized/dummy-ghc/ghc-8.8.3-aarch64-linux/ghc/info+3−5 materialized/dummy-ghc/ghc-8.8.3-aarch64-linux/ghc/version−1 materialized/dummy-ghc/ghc-8.8.3-x86_64-darwin/ghc/info−5 materialized/dummy-ghc/ghc-8.8.3-x86_64-linux/ghc/info−5 materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc-pkg/dump-global−1592 materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/info−60 materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/supported-languages−247 materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/version−1 materialized/dummy-ghc/ghc-8.8.4-x86_64-darwin/ghc/info−5 materialized/dummy-ghc/ghc-8.8.4-x86_64-linux/ghc/info−5 materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc-pkg/dump-global−1759 materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/info−74 materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/supported-languages−261 materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc-pkg/dump-global−1760 materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/info−74 materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/supported-languages−261 materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/version−1 materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc-pkg/dump-global−1759 materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc/info−76 materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc/supported-languages−261 materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc-pkg/dump-global−1760 materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc/info−76 materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc/supported-languages−261 materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc-pkg/dump-global−1766 materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/info−74 materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/supported-languages−261 materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc-pkg/dump-global−1767 materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/info−74 materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/supported-languages−261 materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/version−1 materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc-pkg/dump-global−1766 materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/info−76 materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/supported-languages−261 materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc-pkg/dump-global−1767 materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/info−76 materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/supported-languages−261 materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc-pkg/dump-global−1826 materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/info−73 materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc-pkg/dump-global−1826 materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/info−73 materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/version−1 materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc-pkg/dump-global−1826 materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/info−73 materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc-pkg/dump-global−1826 materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/info−73 materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc-pkg/dump-global−1834 materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/info−72 materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc-pkg/dump-global−1834 materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/info−72 materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/version−1 materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc-pkg/dump-global−1834 materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/info−72 materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc-pkg/dump-global−1834 materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/info−72 materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc-pkg/dump-global−1834 materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/info−72 materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc-pkg/dump-global−1834 materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/info−72 materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/version−1 materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc-pkg/dump-global−1834 materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/info−72 materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc-pkg/dump-global−1834 materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/info−72 materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/supported-languages−266 materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/version−1 materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc-pkg/dump-global−1834 materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/info−72 materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/supported-languages−268 materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc-pkg/dump-global−1833 materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/info−72 materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/supported-languages−268 materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/version−1 materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc-pkg/dump-global−1834 materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/info−72 materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/supported-languages−268 materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc-pkg/dump-global−1833 materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/info−72 materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/supported-languages−268 materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc-pkg/dump-global−1328 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/info−71 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc-pkg/dump-global−1328 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/info−71 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc-pkg/dump-global−1330 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/info−71 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc-pkg/dump-global−1330 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/info−71 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc-pkg/dump-global−1330 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/info−71 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc-pkg/dump-global−1330 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/info−71 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc-pkg/dump-global−1330 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/info−71 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc-pkg/dump-global−1330 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/info−71 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc-pkg/dump-global−1183 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc/info−58 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc/supported-languages−247 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc-pkg/dump-global−1122 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/info−59 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/supported-languages−247 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/version+1−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc-pkg/dump-global−1321 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc/info−59 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc/supported-languages−247 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc-pkg/dump-global−1321 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/info−59 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/supported-languages−247 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/version+1−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc-pkg/dump-global−1321 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc-pkg/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/info−59 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/numeric-ghc-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/numeric-ghcjs-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/supported-languages−247 materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.1-x86_64-linux/ghc/info+1−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.2-x86_64-linux/ghc/info+1−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc-pkg/dump-global−1603 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc-pkg/dump-global−1638 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/dump-global−1607 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc-pkg/dump-global−1638 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc-pkg/dump-global−1638 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc-pkg/dump-global−1638 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.6.5-x86_64-linux/ghc-pkg/dump-global+2−31 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc-pkg/dump-global−1590 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc/info−57 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc/supported-languages−247 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.3-x86_64-linux/ghc-pkg/dump-global+3−37 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.4-x86_64-linux/ghc-pkg/dump-global+3−37 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc-pkg/dump-global−1722 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc/info−70 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc/supported-languages−261 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc-pkg/dump-global−1729 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc/info−70 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc/supported-languages−261 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc-pkg/dump-global−1788 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc/info−67 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc/supported-languages−266 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc-pkg/dump-global−1796 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc/info−66 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc/supported-languages−266 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc-pkg/dump-global−1796 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc/info−66 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc/supported-languages−266 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc-pkg/dump-global−1796 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc/info−66 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc/supported-languages−268 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc-pkg/dump-global−1437 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc/info−67 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc-pkg/dump-global−1449 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc-pkg/dump-global−1449 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc/info−69 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc-pkg/dump-global−1449 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/dump-global−1451 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc-pkg/dump-global−1449 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc/info−69 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc-pkg/dump-global−1449 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc-pkg/dump-global−1450 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc/info−69 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc-pkg/dump-global−1450 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc-pkg/dump-global−1450 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc/info−69 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc-pkg/dump-global−1450 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc/info−69 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc/supported-languages−255 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc-pkg/dump-global−1411 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc/info−57 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc/supported-languages−247 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc-pkg/dump-global−1411 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc/info−57 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc/supported-languages−247 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc-pkg/dump-global−1411 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc/info−57 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc/supported-languages−247 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc-pkg/dump-global−1411 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc/info−57 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc/supported-languages−247 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc-pkg/dump-global−1504 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc/info−70 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc/supported-languages−261 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc-pkg/dump-global−1504 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc/info−70 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc/supported-languages−261 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc-pkg/dump-global−1512 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc/info−70 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc/supported-languages−261 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc-pkg/dump-global−1512 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc/info−70 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc/supported-languages−261 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc-pkg/dump-global−1522 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc/info−67 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc/supported-languages−266 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc-pkg/dump-global−1522 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc/info−67 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc/supported-languages−266 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc-pkg/dump-global−1533 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc/info−66 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc/supported-languages−266 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc-pkg/dump-global−1533 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc/info−66 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc/supported-languages−266 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc-pkg/dump-global−1533 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc/info−66 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc/supported-languages−266 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc-pkg/dump-global−1533 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc/info−66 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc/supported-languages−266 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc-pkg/dump-global−1533 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc/info−66 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc/supported-languages−268 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc-pkg/dump-global−1533 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc-pkg/version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc/info−66 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc/numeric-version−1 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc/supported-languages−268 materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc/version−1 materialized/ghc-boot-packages-nix/ghc8101/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc8101/base.nix−43 materialized/ghc-boot-packages-nix/ghc8101/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc8101/ghc-prim.nix−40 materialized/ghc-boot-packages-nix/ghc8101/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc8101/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc8102/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc8102/base.nix−43 materialized/ghc-boot-packages-nix/ghc8102/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc8102/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc8102/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc8102/iserv-proxy.nix+1−1 materialized/ghc-boot-packages-nix/ghc8102/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc8103/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc8103/base.nix−43 materialized/ghc-boot-packages-nix/ghc8103/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc8103/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc8103/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc8103/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc8103/ghc.nix−62 materialized/ghc-boot-packages-nix/ghc8103/ghci.nix−44 materialized/ghc-boot-packages-nix/ghc8103/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc8103/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc8103/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc8103/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc8103/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc8103/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc8103/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc8104/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc8104/base.nix−43 materialized/ghc-boot-packages-nix/ghc8104/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc8104/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc8104/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc8104/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc8104/ghc.nix−62 materialized/ghc-boot-packages-nix/ghc8104/ghci.nix−44 materialized/ghc-boot-packages-nix/ghc8104/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc8104/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc8104/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc8104/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc8104/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc8104/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc8104/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc810420210212/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc810420210212/base.nix−43 materialized/ghc-boot-packages-nix/ghc810420210212/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc810420210212/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc810420210212/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc810420210212/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc810420210212/ghc.nix−62 materialized/ghc-boot-packages-nix/ghc810420210212/ghci.nix−44 materialized/ghc-boot-packages-nix/ghc810420210212/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc810420210212/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc810420210212/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc810420210212/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc810420210212/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc810420210212/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc810420210212/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc8105-aarch64/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc8105-aarch64/base.nix−43 materialized/ghc-boot-packages-nix/ghc8105-aarch64/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc-prim.nix−44 materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc.nix−62 materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc8105-aarch64/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc8105-aarch64/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc8105-aarch64/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc8105-aarch64/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc8105-aarch64/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc8105-aarch64/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc8105-aarch64/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc8105/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc8105/base.nix−43 materialized/ghc-boot-packages-nix/ghc8105/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc8105/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc8105/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc8105/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc8105/ghc.nix−62 materialized/ghc-boot-packages-nix/ghc8105/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc8105/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc8105/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc8105/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc8105/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc8105/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc8105/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc8105/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc8106-aarch64/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc8106-aarch64/base.nix−43 materialized/ghc-boot-packages-nix/ghc8106-aarch64/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc-prim.nix−44 materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc.nix−62 materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc8106-aarch64/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc8106-aarch64/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc8106-aarch64/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc8106-aarch64/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc8106-aarch64/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc8106-aarch64/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc8106-aarch64/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc8106/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc8106/base.nix−43 materialized/ghc-boot-packages-nix/ghc8106/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc8106/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc8106/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc8106/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc8106/ghc.nix−62 materialized/ghc-boot-packages-nix/ghc8106/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc8106/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc8106/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc8106/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc8106/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc8106/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc8106/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc8106/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc8107-aarch64/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc8107-aarch64/base.nix−43 materialized/ghc-boot-packages-nix/ghc8107-aarch64/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc-prim.nix−44 materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc.nix−62 materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc8107-aarch64/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc8107-aarch64/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc8107-aarch64/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc8107-aarch64/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc8107-aarch64/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc8107-aarch64/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc8107-aarch64/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc8107/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc8107/base.nix−43 materialized/ghc-boot-packages-nix/ghc8107/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc8107/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc8107/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc8107/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc8107/ghc.nix−62 materialized/ghc-boot-packages-nix/ghc8107/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc8107/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc8107/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc8107/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc8107/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc8107/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc8107/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc8107/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc844/ghc-boot.nix−38 materialized/ghc-boot-packages-nix/ghc844/ghc.nix−58 materialized/ghc-boot-packages-nix/ghc844/ghci.nix−43 materialized/ghc-boot-packages-nix/ghc844/hpc.nix−37 materialized/ghc-boot-packages-nix/ghc844/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc844/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc844/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc844/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc863/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc863/base.nix−42 materialized/ghc-boot-packages-nix/ghc863/ghc-boot.nix−38 materialized/ghc-boot-packages-nix/ghc863/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc863/ghc-prim.nix−40 materialized/ghc-boot-packages-nix/ghc863/ghc.nix−59 materialized/ghc-boot-packages-nix/ghc863/ghci.nix−44 materialized/ghc-boot-packages-nix/ghc863/hpc.nix−37 materialized/ghc-boot-packages-nix/ghc863/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc863/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc863/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc863/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc863/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc863/template-haskell.nix−35 materialized/ghc-boot-packages-nix/ghc864/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc864/base.nix−42 materialized/ghc-boot-packages-nix/ghc864/ghc-boot.nix−38 materialized/ghc-boot-packages-nix/ghc864/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc864/ghc-prim.nix−40 materialized/ghc-boot-packages-nix/ghc864/ghc.nix−60 materialized/ghc-boot-packages-nix/ghc864/ghci.nix−44 materialized/ghc-boot-packages-nix/ghc864/hpc.nix−37 materialized/ghc-boot-packages-nix/ghc864/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc864/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc864/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc864/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc864/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc864/template-haskell.nix−35 materialized/ghc-boot-packages-nix/ghc865/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc865/base.nix+1−1 materialized/ghc-boot-packages-nix/ghc865/ghc-heap.nix+1−1 materialized/ghc-boot-packages-nix/ghc865/ghc-prim.nix−40 materialized/ghc-boot-packages-nix/ghc865/ghc.nix+4 materialized/ghc-boot-packages-nix/ghc865/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc865/iserv-proxy.nix+1−1 materialized/ghc-boot-packages-nix/ghc865/template-haskell.nix−35 materialized/ghc-boot-packages-nix/ghc882/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc882/base.nix−42 materialized/ghc-boot-packages-nix/ghc882/ghc-boot.nix−38 materialized/ghc-boot-packages-nix/ghc882/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc882/ghc-prim.nix−40 materialized/ghc-boot-packages-nix/ghc882/ghc.nix−61 materialized/ghc-boot-packages-nix/ghc882/ghci.nix−44 materialized/ghc-boot-packages-nix/ghc882/hpc.nix−37 materialized/ghc-boot-packages-nix/ghc882/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc882/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc882/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc882/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc882/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc882/template-haskell.nix−35 materialized/ghc-boot-packages-nix/ghc883-aarch64/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc883-aarch64/base.nix−42 materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc-boot.nix−38 materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc-prim.nix−40 materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc.nix−61 materialized/ghc-boot-packages-nix/ghc883-aarch64/ghci.nix−44 materialized/ghc-boot-packages-nix/ghc883-aarch64/hpc.nix−37 materialized/ghc-boot-packages-nix/ghc883-aarch64/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc883-aarch64/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc883-aarch64/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc883-aarch64/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc883-aarch64/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc883-aarch64/template-haskell.nix−35 materialized/ghc-boot-packages-nix/ghc883/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc883/base.nix−42 materialized/ghc-boot-packages-nix/ghc883/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc883/ghc-prim.nix−40 materialized/ghc-boot-packages-nix/ghc883/ghc.nix+4 materialized/ghc-boot-packages-nix/ghc883/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc883/iserv-proxy.nix+1−1 materialized/ghc-boot-packages-nix/ghc883/template-haskell.nix−35 materialized/ghc-boot-packages-nix/ghc884-aarch64/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc884-aarch64/base.nix−42 materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc-boot.nix−38 materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc.nix−61 materialized/ghc-boot-packages-nix/ghc884-aarch64/ghci.nix−44 materialized/ghc-boot-packages-nix/ghc884-aarch64/hpc.nix−37 materialized/ghc-boot-packages-nix/ghc884-aarch64/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc884-aarch64/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc884-aarch64/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc884-aarch64/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc884-aarch64/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc884-aarch64/template-haskell.nix−35 materialized/ghc-boot-packages-nix/ghc884/Win32.nix−46 materialized/ghc-boot-packages-nix/ghc884/base.nix−42 materialized/ghc-boot-packages-nix/ghc884/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc884/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc884/ghc.nix+4 materialized/ghc-boot-packages-nix/ghc884/integer-gmp.nix−33 materialized/ghc-boot-packages-nix/ghc884/iserv-proxy.nix+1−1 materialized/ghc-boot-packages-nix/ghc884/template-haskell.nix−35 materialized/ghc-boot-packages-nix/ghc901-aarch64/Win32.nix−49 materialized/ghc-boot-packages-nix/ghc901-aarch64/base.nix−48 materialized/ghc-boot-packages-nix/ghc901-aarch64/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-prim.nix−44 materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc.nix−61 materialized/ghc-boot-packages-nix/ghc901-aarch64/ghci.nix−44 materialized/ghc-boot-packages-nix/ghc901-aarch64/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc901-aarch64/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc901-aarch64/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc901-aarch64/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc901-aarch64/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc901-aarch64/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc901-aarch64/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc901/Win32.nix−49 materialized/ghc-boot-packages-nix/ghc901/base.nix−48 materialized/ghc-boot-packages-nix/ghc901/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc901/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc901/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc901/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc901/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc901/ghc.nix−61 materialized/ghc-boot-packages-nix/ghc901/ghci.nix−44 materialized/ghc-boot-packages-nix/ghc901/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc901/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc901/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc901/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc901/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc901/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc901/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc902-aarch64/Win32.nix−48 materialized/ghc-boot-packages-nix/ghc902-aarch64/base.nix−48 materialized/ghc-boot-packages-nix/ghc902-aarch64/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-prim.nix−44 materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc.nix−61 materialized/ghc-boot-packages-nix/ghc902-aarch64/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc902-aarch64/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc902-aarch64/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc902-aarch64/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc902-aarch64/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc902-aarch64/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc902-aarch64/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc902-aarch64/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc902/Win32.nix−48 materialized/ghc-boot-packages-nix/ghc902/base.nix−48 materialized/ghc-boot-packages-nix/ghc902/bytestring.nix−35 materialized/ghc-boot-packages-nix/ghc902/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc902/ghc-boot.nix−39 materialized/ghc-boot-packages-nix/ghc902/ghc-heap.nix−35 materialized/ghc-boot-packages-nix/ghc902/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc902/ghc.nix−61 materialized/ghc-boot-packages-nix/ghc902/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc902/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc902/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc902/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc902/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc902/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc902/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc902/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc921-aarch64/Win32.nix−48 materialized/ghc-boot-packages-nix/ghc921-aarch64/base.nix−48 materialized/ghc-boot-packages-nix/ghc921-aarch64/bytestring.nix−86 materialized/ghc-boot-packages-nix/ghc921-aarch64/deepseq.nix−47 materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-boot.nix−40 materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-heap.nix−36 materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-prim.nix−44 materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc.nix−61 materialized/ghc-boot-packages-nix/ghc921-aarch64/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc921-aarch64/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc921-aarch64/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc921-aarch64/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc921-aarch64/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc921-aarch64/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc921-aarch64/pretty.nix−56 materialized/ghc-boot-packages-nix/ghc921-aarch64/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc921-aarch64/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc921/Win32.nix−48 materialized/ghc-boot-packages-nix/ghc921/base.nix−48 materialized/ghc-boot-packages-nix/ghc921/bytestring.nix−86 materialized/ghc-boot-packages-nix/ghc921/deepseq.nix−47 materialized/ghc-boot-packages-nix/ghc921/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc921/ghc-boot.nix−40 materialized/ghc-boot-packages-nix/ghc921/ghc-heap.nix−36 materialized/ghc-boot-packages-nix/ghc921/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc921/ghc.nix−61 materialized/ghc-boot-packages-nix/ghc921/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc921/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc921/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc921/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc921/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc921/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc921/pretty.nix−56 materialized/ghc-boot-packages-nix/ghc921/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc921/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc922-aarch64/Win32.nix−48 materialized/ghc-boot-packages-nix/ghc922-aarch64/base.nix−48 materialized/ghc-boot-packages-nix/ghc922-aarch64/bytestring.nix−68 materialized/ghc-boot-packages-nix/ghc922-aarch64/deepseq.nix−47 materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-boot.nix−40 materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-heap.nix−36 materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-prim.nix−44 materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc.nix−60 materialized/ghc-boot-packages-nix/ghc922-aarch64/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc922-aarch64/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc922-aarch64/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc922-aarch64/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc922-aarch64/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc922-aarch64/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc922-aarch64/pretty.nix−56 materialized/ghc-boot-packages-nix/ghc922-aarch64/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc922-aarch64/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc922/Win32.nix−48 materialized/ghc-boot-packages-nix/ghc922/base.nix−48 materialized/ghc-boot-packages-nix/ghc922/bytestring.nix−68 materialized/ghc-boot-packages-nix/ghc922/deepseq.nix−47 materialized/ghc-boot-packages-nix/ghc922/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc922/ghc-boot.nix−40 materialized/ghc-boot-packages-nix/ghc922/ghc-heap.nix−36 materialized/ghc-boot-packages-nix/ghc922/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc922/ghc.nix−60 materialized/ghc-boot-packages-nix/ghc922/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc922/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc922/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc922/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc922/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc922/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc922/pretty.nix−56 materialized/ghc-boot-packages-nix/ghc922/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc922/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc923-aarch64/Win32.nix−48 materialized/ghc-boot-packages-nix/ghc923-aarch64/base.nix−48 materialized/ghc-boot-packages-nix/ghc923-aarch64/bytestring.nix−65 materialized/ghc-boot-packages-nix/ghc923-aarch64/deepseq.nix−47 materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-boot.nix−40 materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-heap.nix−36 materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-prim.nix−44 materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc.nix−60 materialized/ghc-boot-packages-nix/ghc923-aarch64/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc923-aarch64/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc923-aarch64/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc923-aarch64/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc923-aarch64/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc923-aarch64/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc923-aarch64/pretty.nix−56 materialized/ghc-boot-packages-nix/ghc923-aarch64/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc923-aarch64/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc923/Win32.nix−48 materialized/ghc-boot-packages-nix/ghc923/base.nix−48 materialized/ghc-boot-packages-nix/ghc923/bytestring.nix−65 materialized/ghc-boot-packages-nix/ghc923/deepseq.nix−47 materialized/ghc-boot-packages-nix/ghc923/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc923/ghc-boot.nix−40 materialized/ghc-boot-packages-nix/ghc923/ghc-heap.nix−36 materialized/ghc-boot-packages-nix/ghc923/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc923/ghc.nix−60 materialized/ghc-boot-packages-nix/ghc923/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc923/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc923/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc923/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc923/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc923/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc923/pretty.nix−56 materialized/ghc-boot-packages-nix/ghc923/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc923/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc924-aarch64/Win32.nix−48 materialized/ghc-boot-packages-nix/ghc924-aarch64/base.nix−48 materialized/ghc-boot-packages-nix/ghc924-aarch64/bytestring.nix−65 materialized/ghc-boot-packages-nix/ghc924-aarch64/deepseq.nix−47 materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-boot.nix−40 materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-heap.nix−36 materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-prim.nix−44 materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc.nix−60 materialized/ghc-boot-packages-nix/ghc924-aarch64/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc924-aarch64/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc924-aarch64/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc924-aarch64/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc924-aarch64/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc924-aarch64/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc924-aarch64/pretty.nix−56 materialized/ghc-boot-packages-nix/ghc924-aarch64/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc924-aarch64/template-haskell.nix−36 materialized/ghc-boot-packages-nix/ghc924/Win32.nix−48 materialized/ghc-boot-packages-nix/ghc924/base.nix−48 materialized/ghc-boot-packages-nix/ghc924/bytestring.nix−65 materialized/ghc-boot-packages-nix/ghc924/deepseq.nix−47 materialized/ghc-boot-packages-nix/ghc924/ghc-bignum.nix−37 materialized/ghc-boot-packages-nix/ghc924/ghc-boot.nix−40 materialized/ghc-boot-packages-nix/ghc924/ghc-heap.nix−36 materialized/ghc-boot-packages-nix/ghc924/ghc-prim.nix−43 materialized/ghc-boot-packages-nix/ghc924/ghc.nix−60 materialized/ghc-boot-packages-nix/ghc924/ghci.nix−45 materialized/ghc-boot-packages-nix/ghc924/hpc.nix−38 materialized/ghc-boot-packages-nix/ghc924/integer-gmp.nix−35 materialized/ghc-boot-packages-nix/ghc924/iserv-proxy.nix−45 materialized/ghc-boot-packages-nix/ghc924/iserv.nix−42 materialized/ghc-boot-packages-nix/ghc924/libiserv.nix−42 materialized/ghc-boot-packages-nix/ghc924/pretty.nix−56 materialized/ghc-boot-packages-nix/ghc924/remote-iserv.nix−36 materialized/ghc-boot-packages-nix/ghc924/template-haskell.nix−36 materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/bytestring.nix+57−1 materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/ghc.nix+1−1 materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/iserv-proxy.nix+1−1 materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc8101/default.nix+39−77 materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/bytestring.nix+57−1 materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/ghc.nix+1−1 materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/iserv-proxy.nix+2−2 materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc8102/default.nix+41−79 materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc8103/default.nix−128 materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc8104/default.nix−128 materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc810420210212/default.nix−128 materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc8105/default.nix−128 materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc8106/default.nix−128 materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc8107/default.nix−128 materialized/ghc-extra-projects/cross/ghc865/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc865/.plan.nix/bytestring.nix materialized/ghc-extra-projects/cross/ghc865/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/cross/ghc865/.plan.nix/ghc.nix+5−1 materialized/ghc-extra-projects/cross/ghc865/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/cross/ghc865/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/cross/ghc865/.plan.nix/iserv-proxy.nix+2−2 materialized/ghc-extra-projects/cross/ghc865/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc865/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc865/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc865/default.nix+46−79 materialized/ghc-extra-projects/cross/ghc882/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghc-boot.nix−53 materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghc.nix−573 materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/cross/ghc882/.plan.nix/hpc.nix−51 materialized/ghc-extra-projects/cross/ghc882/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc882/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc882/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc882/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc882/default.nix−127 materialized/ghc-extra-projects/cross/ghc883/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc883/.plan.nix/bytestring.nix+58−2 materialized/ghc-extra-projects/cross/ghc883/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/cross/ghc883/.plan.nix/ghc.nix+5−1 materialized/ghc-extra-projects/cross/ghc883/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/cross/ghc883/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/cross/ghc883/.plan.nix/iserv-proxy.nix+2−2 materialized/ghc-extra-projects/cross/ghc883/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc883/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc883/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc883/default.nix+46−78 materialized/ghc-extra-projects/cross/ghc884/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/cross/ghc884/.plan.nix/bytestring.nix+88−1 materialized/ghc-extra-projects/cross/ghc884/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/cross/ghc884/.plan.nix/ghc.nix+5−1 materialized/ghc-extra-projects/cross/ghc884/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/cross/ghc884/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/cross/ghc884/.plan.nix/iserv-proxy.nix+2−2 materialized/ghc-extra-projects/cross/ghc884/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc884/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc884/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/cross/ghc884/default.nix+46−78 materialized/ghc-extra-projects/cross/ghc901/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/cross/ghc901/.plan.nix/ghc-boot.nix−61 materialized/ghc-extra-projects/cross/ghc901/.plan.nix/ghc.nix−572 materialized/ghc-extra-projects/cross/ghc901/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/cross/ghc901/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc901/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc901/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc901/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc901/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc901/default.nix−135 materialized/ghc-extra-projects/cross/ghc902/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/cross/ghc902/.plan.nix/ghc-boot.nix−61 materialized/ghc-extra-projects/cross/ghc902/.plan.nix/ghc.nix−572 materialized/ghc-extra-projects/cross/ghc902/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/cross/ghc902/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc902/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc902/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc902/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc902/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc902/default.nix−136 materialized/ghc-extra-projects/cross/ghc921/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/cross/ghc921/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/cross/ghc921/.plan.nix/ghc.nix−663 materialized/ghc-extra-projects/cross/ghc921/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/cross/ghc921/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc921/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc921/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc921/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc921/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc921/default.nix−143 materialized/ghc-extra-projects/cross/ghc922/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/cross/ghc922/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/cross/ghc922/.plan.nix/ghc.nix−661 materialized/ghc-extra-projects/cross/ghc922/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/cross/ghc922/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc922/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc922/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc922/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc922/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc922/default.nix−138 materialized/ghc-extra-projects/cross/ghc923/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/cross/ghc923/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/cross/ghc923/.plan.nix/ghc.nix−661 materialized/ghc-extra-projects/cross/ghc923/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/cross/ghc923/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc923/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc923/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc923/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc923/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc923/default.nix−138 materialized/ghc-extra-projects/cross/ghc924/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/cross/ghc924/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/cross/ghc924/.plan.nix/ghc.nix−661 materialized/ghc-extra-projects/cross/ghc924/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/cross/ghc924/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/cross/ghc924/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/cross/ghc924/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/cross/ghc924/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/cross/ghc924/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/cross/ghc924/default.nix−137 materialized/ghc-extra-projects/default/ghc8101/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc8101/.plan.nix/bytestring.nix+136 materialized/ghc-extra-projects/default/ghc8101/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/default/ghc8101/.plan.nix/ghc.nix+1−1 materialized/ghc-extra-projects/default/ghc8101/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/default/ghc8101/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/default/ghc8101/.plan.nix/iserv-proxy.nix+1−1 materialized/ghc-extra-projects/default/ghc8101/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/default/ghc8101/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/default/ghc8101/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/default/ghc8101/default.nix+40−78 materialized/ghc-extra-projects/default/ghc8102/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc8102/.plan.nix/bytestring.nix+136 materialized/ghc-extra-projects/default/ghc8102/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/default/ghc8102/.plan.nix/ghc.nix+1−1 materialized/ghc-extra-projects/default/ghc8102/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/default/ghc8102/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/default/ghc8102/.plan.nix/iserv-proxy.nix+2−2 materialized/ghc-extra-projects/default/ghc8102/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/default/ghc8102/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/default/ghc8102/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/default/ghc8102/default.nix+42−80 materialized/ghc-extra-projects/default/ghc8103/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc8103/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/default/ghc8103/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/default/ghc8103/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/default/ghc8103/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc8103/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc8103/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc8103/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc8103/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc8103/default.nix−129 materialized/ghc-extra-projects/default/ghc8104/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc8104/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/default/ghc8104/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/default/ghc8104/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/default/ghc8104/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc8104/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc8104/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc8104/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc8104/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc8104/default.nix−129 materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc810420210212/default.nix−129 materialized/ghc-extra-projects/default/ghc8105/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc8105/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/default/ghc8105/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/default/ghc8105/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/default/ghc8105/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc8105/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc8105/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc8105/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc8105/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc8105/default.nix−129 materialized/ghc-extra-projects/default/ghc8106/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc8106/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/default/ghc8106/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/default/ghc8106/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/default/ghc8106/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc8106/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc8106/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc8106/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc8106/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc8106/default.nix−129 materialized/ghc-extra-projects/default/ghc8107/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc8107/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/default/ghc8107/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/default/ghc8107/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/default/ghc8107/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc8107/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc8107/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc8107/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc8107/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc8107/default.nix−129 materialized/ghc-extra-projects/default/ghc844/.plan.nix/ghc-boot.nix−52 materialized/ghc-extra-projects/default/ghc844/.plan.nix/ghc.nix−584 materialized/ghc-extra-projects/default/ghc844/.plan.nix/ghci.nix−69 materialized/ghc-extra-projects/default/ghc844/.plan.nix/hpc.nix−51 materialized/ghc-extra-projects/default/ghc844/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc844/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc844/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc844/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc844/default.nix−92 materialized/ghc-extra-projects/default/ghc863/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc863/.plan.nix/ghc-boot.nix−53 materialized/ghc-extra-projects/default/ghc863/.plan.nix/ghc.nix−555 materialized/ghc-extra-projects/default/ghc863/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/default/ghc863/.plan.nix/hpc.nix−51 materialized/ghc-extra-projects/default/ghc863/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc863/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc863/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc863/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc863/default.nix−126 materialized/ghc-extra-projects/default/ghc864/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc864/.plan.nix/ghc-boot.nix−53 materialized/ghc-extra-projects/default/ghc864/.plan.nix/ghc.nix−556 materialized/ghc-extra-projects/default/ghc864/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/default/ghc864/.plan.nix/hpc.nix−51 materialized/ghc-extra-projects/default/ghc864/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc864/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc864/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc864/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc864/default.nix−127 materialized/ghc-extra-projects/default/ghc865/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc865/.plan.nix/bytestring.nix+57−1 materialized/ghc-extra-projects/default/ghc865/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/default/ghc865/.plan.nix/ghc.nix+5−1 materialized/ghc-extra-projects/default/ghc865/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/default/ghc865/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/default/ghc865/.plan.nix/iserv-proxy.nix+2−2 materialized/ghc-extra-projects/default/ghc865/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/default/ghc865/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/default/ghc865/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/default/ghc865/default.nix+47−79 materialized/ghc-extra-projects/default/ghc882/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc882/.plan.nix/ghc-boot.nix−53 materialized/ghc-extra-projects/default/ghc882/.plan.nix/ghc.nix−573 materialized/ghc-extra-projects/default/ghc882/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/default/ghc882/.plan.nix/hpc.nix−51 materialized/ghc-extra-projects/default/ghc882/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc882/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc882/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc882/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc882/default.nix−128 materialized/ghc-extra-projects/default/ghc883/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc883/.plan.nix/bytestring.nix+136 materialized/ghc-extra-projects/default/ghc883/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/default/ghc883/.plan.nix/ghc.nix+5−1 materialized/ghc-extra-projects/default/ghc883/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/default/ghc883/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/default/ghc883/.plan.nix/iserv-proxy.nix+2−2 materialized/ghc-extra-projects/default/ghc883/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/default/ghc883/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/default/ghc883/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/default/ghc883/default.nix+47−79 materialized/ghc-extra-projects/default/ghc884/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/default/ghc884/.plan.nix/bytestring.nix+167 materialized/ghc-extra-projects/default/ghc884/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/default/ghc884/.plan.nix/ghc.nix+5−1 materialized/ghc-extra-projects/default/ghc884/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/default/ghc884/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/default/ghc884/.plan.nix/iserv-proxy.nix+2−2 materialized/ghc-extra-projects/default/ghc884/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/default/ghc884/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/default/ghc884/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/default/ghc884/default.nix+47−79 materialized/ghc-extra-projects/default/ghc901/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/default/ghc901/.plan.nix/ghc-boot.nix−61 materialized/ghc-extra-projects/default/ghc901/.plan.nix/ghc.nix−572 materialized/ghc-extra-projects/default/ghc901/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/default/ghc901/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc901/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc901/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc901/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc901/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc901/default.nix−136 materialized/ghc-extra-projects/default/ghc902/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/default/ghc902/.plan.nix/ghc-boot.nix−61 materialized/ghc-extra-projects/default/ghc902/.plan.nix/ghc.nix−572 materialized/ghc-extra-projects/default/ghc902/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/default/ghc902/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc902/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc902/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc902/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc902/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc902/default.nix−136 materialized/ghc-extra-projects/default/ghc921/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/default/ghc921/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/default/ghc921/.plan.nix/ghc.nix−663 materialized/ghc-extra-projects/default/ghc921/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/default/ghc921/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc921/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc921/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc921/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc921/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc921/default.nix−144 materialized/ghc-extra-projects/default/ghc922/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/default/ghc922/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/default/ghc922/.plan.nix/ghc.nix−661 materialized/ghc-extra-projects/default/ghc922/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/default/ghc922/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc922/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc922/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc922/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc922/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc922/default.nix−138 materialized/ghc-extra-projects/default/ghc923/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/default/ghc923/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/default/ghc923/.plan.nix/ghc.nix−661 materialized/ghc-extra-projects/default/ghc923/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/default/ghc923/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc923/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc923/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc923/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc923/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc923/default.nix−138 materialized/ghc-extra-projects/default/ghc924/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/default/ghc924/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/default/ghc924/.plan.nix/ghc.nix−661 materialized/ghc-extra-projects/default/ghc924/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/default/ghc924/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/default/ghc924/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/default/ghc924/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/default/ghc924/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/default/ghc924/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/default/ghc924/default.nix−138 materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/ghcjs/ghc8105/default.nix−131 materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/ghcjs/ghc8106/default.nix−131 materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/ghcjs/ghc8107/default.nix−131 materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/ghc-boot.nix−53 materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/ghc.nix−554 materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/hpc.nix−51 materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/ghcjs/ghc865/default.nix−123 materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/ghc-boot.nix−53 materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/ghc.nix−572 materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/hpc.nix−51 materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/ghcjs/ghc884/default.nix−125 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghc.nix−585 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc8101/default.nix−120 materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc8102/default.nix−121 materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc8103/default.nix−121 materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc8104/default.nix−121 materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc810420210212/default.nix−121 materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc8105/default.nix−121 materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc8106/default.nix−121 materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/ghc-boot.nix−60 materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/ghc.nix−586 materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc8107/default.nix−121 materialized/ghc-extra-projects/windows/ghc863/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc863/.plan.nix/ghc-boot.nix−53 materialized/ghc-extra-projects/windows/ghc863/.plan.nix/ghc.nix−555 materialized/ghc-extra-projects/windows/ghc863/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc863/.plan.nix/hpc.nix−51 materialized/ghc-extra-projects/windows/ghc863/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc863/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc863/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc863/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc863/default.nix−118 materialized/ghc-extra-projects/windows/ghc864/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc864/.plan.nix/ghc-boot.nix−53 materialized/ghc-extra-projects/windows/ghc864/.plan.nix/ghc.nix−556 materialized/ghc-extra-projects/windows/ghc864/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc864/.plan.nix/hpc.nix−51 materialized/ghc-extra-projects/windows/ghc864/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc864/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc864/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc864/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc864/default.nix−119 materialized/ghc-extra-projects/windows/ghc865/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc865/.plan.nix/bytestring.nix+57−1 materialized/ghc-extra-projects/windows/ghc865/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/windows/ghc865/.plan.nix/ghc.nix+5−1 materialized/ghc-extra-projects/windows/ghc865/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/windows/ghc865/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/windows/ghc865/.plan.nix/iserv-proxy.nix+2−2 materialized/ghc-extra-projects/windows/ghc865/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/windows/ghc865/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/windows/ghc865/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/windows/ghc865/default.nix+45−72 materialized/ghc-extra-projects/windows/ghc882/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc882/.plan.nix/ghc-boot.nix−53 materialized/ghc-extra-projects/windows/ghc882/.plan.nix/ghc.nix−573 materialized/ghc-extra-projects/windows/ghc882/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc882/.plan.nix/hpc.nix−51 materialized/ghc-extra-projects/windows/ghc882/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc882/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc882/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc882/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc882/default.nix−120 materialized/ghc-extra-projects/windows/ghc883/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc883/.plan.nix/bytestring.nix+136 materialized/ghc-extra-projects/windows/ghc883/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/windows/ghc883/.plan.nix/ghc.nix+5−1 materialized/ghc-extra-projects/windows/ghc883/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/windows/ghc883/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/windows/ghc883/.plan.nix/iserv-proxy.nix+2−2 materialized/ghc-extra-projects/windows/ghc883/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/windows/ghc883/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/windows/ghc883/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/windows/ghc883/default.nix+45−72 materialized/ghc-extra-projects/windows/ghc884/.plan.nix/Win32.nix−155 materialized/ghc-extra-projects/windows/ghc884/.plan.nix/bytestring.nix+167 materialized/ghc-extra-projects/windows/ghc884/.plan.nix/ghc-boot.nix+1−1 materialized/ghc-extra-projects/windows/ghc884/.plan.nix/ghc.nix+5−1 materialized/ghc-extra-projects/windows/ghc884/.plan.nix/ghci.nix+1−1 materialized/ghc-extra-projects/windows/ghc884/.plan.nix/hpc.nix+1−1 materialized/ghc-extra-projects/windows/ghc884/.plan.nix/iserv-proxy.nix+2−2 materialized/ghc-extra-projects/windows/ghc884/.plan.nix/iserv.nix+1−1 materialized/ghc-extra-projects/windows/ghc884/.plan.nix/libiserv.nix+1−1 materialized/ghc-extra-projects/windows/ghc884/.plan.nix/remote-iserv.nix+1−1 materialized/ghc-extra-projects/windows/ghc884/default.nix+45−72 materialized/ghc-extra-projects/windows/ghc901/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/windows/ghc901/.plan.nix/ghc-boot.nix−61 materialized/ghc-extra-projects/windows/ghc901/.plan.nix/ghc.nix−572 materialized/ghc-extra-projects/windows/ghc901/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc901/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc901/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc901/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc901/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc901/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc901/default.nix−132 materialized/ghc-extra-projects/windows/ghc902/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/windows/ghc902/.plan.nix/ghc-boot.nix−61 materialized/ghc-extra-projects/windows/ghc902/.plan.nix/ghc.nix−572 materialized/ghc-extra-projects/windows/ghc902/.plan.nix/ghci.nix−71 materialized/ghc-extra-projects/windows/ghc902/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc902/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc902/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc902/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc902/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc902/default.nix−132 materialized/ghc-extra-projects/windows/ghc921/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/windows/ghc921/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/windows/ghc921/.plan.nix/ghc.nix−663 materialized/ghc-extra-projects/windows/ghc921/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc921/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc921/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc921/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc921/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc921/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc921/default.nix−140 materialized/ghc-extra-projects/windows/ghc922/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/windows/ghc922/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/windows/ghc922/.plan.nix/ghc.nix−661 materialized/ghc-extra-projects/windows/ghc922/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc922/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc922/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc922/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc922/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc922/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc922/default.nix−134 materialized/ghc-extra-projects/windows/ghc923/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/windows/ghc923/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/windows/ghc923/.plan.nix/ghc.nix−661 materialized/ghc-extra-projects/windows/ghc923/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc923/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc923/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc923/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc923/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc923/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc923/default.nix−134 materialized/ghc-extra-projects/windows/ghc924/.plan.nix/Win32.nix−158 materialized/ghc-extra-projects/windows/ghc924/.plan.nix/ghc-boot.nix−64 materialized/ghc-extra-projects/windows/ghc924/.plan.nix/ghc.nix−661 materialized/ghc-extra-projects/windows/ghc924/.plan.nix/ghci.nix−70 materialized/ghc-extra-projects/windows/ghc924/.plan.nix/hpc.nix−52 materialized/ghc-extra-projects/windows/ghc924/.plan.nix/iserv-proxy.nix−55 materialized/ghc-extra-projects/windows/ghc924/.plan.nix/iserv.nix−54 materialized/ghc-extra-projects/windows/ghc924/.plan.nix/libiserv.nix−58 materialized/ghc-extra-projects/windows/ghc924/.plan.nix/remote-iserv.nix−46 materialized/ghc-extra-projects/windows/ghc924/default.nix−134 materialized/ghc8101/cabal-install/.plan.nix/cabal-install.nix+99−51 materialized/ghc8101/cabal-install/default.nix+75−133 materialized/ghc8101/nix-tools/.plan.nix/hackage-db.nix+3−13 materialized/ghc8101/nix-tools/.plan.nix/nix-tools.nix+1−2 materialized/ghc8101/nix-tools/default.nix+152−176 materialized/ghc8102/cabal-install/.plan.nix/cabal-install.nix+99−51 materialized/ghc8102/cabal-install/default.nix+74−132 materialized/ghc8102/nix-tools/.plan.nix/hackage-db.nix+3−13 materialized/ghc8102/nix-tools/.plan.nix/nix-tools.nix+1−2 materialized/ghc8102/nix-tools/default.nix+295−458 materialized/ghc8103/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc8103/cabal-install/default.nix−180 materialized/ghc8103/nix-tools/default.nix−518 materialized/ghc8104/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc8104/cabal-install/default.nix−180 materialized/ghc8104/nix-tools/.plan.nix/hackage-db.nix−110 materialized/ghc8104/nix-tools/.plan.nix/nix-tools.nix−234 materialized/ghc8104/nix-tools/default.nix−518 materialized/ghc810420210212/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc810420210212/cabal-install/default.nix−180 materialized/ghc810420210212/nix-tools/.plan.nix/hackage-db.nix−110 materialized/ghc810420210212/nix-tools/.plan.nix/nix-tools.nix−234 materialized/ghc810420210212/nix-tools/default.nix−518 materialized/ghc8105/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc8105/cabal-install/default.nix−180 materialized/ghc8105/nix-tools/.plan.nix/hackage-db.nix−110 materialized/ghc8105/nix-tools/.plan.nix/nix-tools.nix−234 materialized/ghc8105/nix-tools/default.nix−518 materialized/ghc8106/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc8106/cabal-install/default.nix−180 materialized/ghc8106/nix-tools/.plan.nix/hackage-db.nix−110 materialized/ghc8106/nix-tools/.plan.nix/nix-tools.nix−234 materialized/ghc8106/nix-tools/default.nix−518 materialized/ghc8107/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc8107/cabal-install/default.nix−180 materialized/ghc8107/nix-tools/.plan.nix/hackage-db.nix−110 materialized/ghc8107/nix-tools/.plan.nix/nix-tools.nix−234 materialized/ghc8107/nix-tools/default.nix−518 materialized/ghc863/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc863/cabal-install/default.nix−180 materialized/ghc863/nix-tools/.plan.nix/hackage-db.nix−110 materialized/ghc863/nix-tools/.plan.nix/nix-tools.nix−234 materialized/ghc863/nix-tools/default.nix−509 materialized/ghc864/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc864/cabal-install/default.nix−180 materialized/ghc864/nix-tools/.plan.nix/hackage-db.nix−110 materialized/ghc864/nix-tools/.plan.nix/nix-tools.nix−234 materialized/ghc864/nix-tools/default.nix−509 materialized/ghc865/cabal-install/.plan.nix/cabal-install.nix+99−51 materialized/ghc865/cabal-install/default.nix+74−132 materialized/ghc865/nix-tools/.plan.nix/hackage-db.nix+3−13 materialized/ghc865/nix-tools/.plan.nix/nix-tools.nix+1−2 materialized/ghc865/nix-tools/default.nix+294−448 materialized/ghc882/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc882/cabal-install/default.nix−180 materialized/ghc882/nix-tools/.plan.nix/hackage-db.nix−110 materialized/ghc882/nix-tools/.plan.nix/nix-tools.nix−234 materialized/ghc882/nix-tools/default.nix−509 materialized/ghc883/cabal-install/.plan.nix/cabal-install.nix+99−51 materialized/ghc883/cabal-install/default.nix+74−132 materialized/ghc883/nix-tools/.plan.nix/hackage-db.nix+3−13 materialized/ghc883/nix-tools/.plan.nix/nix-tools.nix+1−2 materialized/ghc883/nix-tools/default.nix+294−448 materialized/ghc884/cabal-install/.plan.nix/cabal-install.nix+99−51 materialized/ghc884/cabal-install/default.nix+74−132 materialized/ghc884/nix-tools/.plan.nix/hackage-db.nix+3−13 materialized/ghc884/nix-tools/.plan.nix/nix-tools.nix+1−2 materialized/ghc884/nix-tools/default.nix+294−448 materialized/ghc901/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc901/cabal-install/default.nix−178 materialized/ghc902/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc902/cabal-install/default.nix−183 materialized/ghc921/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc921/cabal-install/default.nix−174 materialized/ghc922/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc922/cabal-install/default.nix−174 materialized/ghc923/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc923/cabal-install/default.nix−174 materialized/ghc924/cabal-install/.plan.nix/cabal-install.nix−292 materialized/ghc924/cabal-install/default.nix−174 materialized/ghcjs/alex/ghc8104/.plan.nix/alex.nix−160 materialized/ghcjs/alex/ghc8104/default.nix−47 materialized/ghcjs/alex/ghc8105/.plan.nix/alex.nix−160 materialized/ghcjs/alex/ghc8105/default.nix−65 materialized/ghcjs/alex/ghc8106/.plan.nix/alex.nix−160 materialized/ghcjs/alex/ghc8106/default.nix−65 materialized/ghcjs/alex/ghc8107/.plan.nix/alex.nix−160 materialized/ghcjs/alex/ghc8107/default.nix−65 materialized/ghcjs/alex/ghc865/.plan.nix/alex.nix−160 materialized/ghcjs/alex/ghc865/default.nix−65 materialized/ghcjs/alex/ghc884/.plan.nix/alex.nix−160 materialized/ghcjs/alex/ghc884/default.nix−65 materialized/ghcjs/cabal/ghc8104/.plan.nix/cabal-install.nix−361 materialized/ghcjs/cabal/ghc8104/default.nix−128 materialized/ghcjs/cabal/ghc8105/.plan.nix/cabal-install.nix−292 materialized/ghcjs/cabal/ghc8105/default.nix−180 materialized/ghcjs/cabal/ghc8106/.plan.nix/cabal-install.nix−292 materialized/ghcjs/cabal/ghc8106/default.nix−180 materialized/ghcjs/cabal/ghc8107/.plan.nix/cabal-install.nix−292 materialized/ghcjs/cabal/ghc8107/default.nix−180 materialized/ghcjs/cabal/ghc865/.plan.nix/cabal-install.nix−340 materialized/ghcjs/cabal/ghc865/default.nix−173 materialized/ghcjs/cabal/ghc884/.plan.nix/cabal-install.nix−340 materialized/ghcjs/cabal/ghc884/default.nix−173 materialized/ghcjs/ghc8104/.plan.nix/ghcjs-th.nix−48 materialized/ghcjs/ghc8104/.plan.nix/ghcjs.nix−985 materialized/ghcjs/ghc8105/.plan.nix/ghcjs-th.nix−48 materialized/ghcjs/ghc8105/.plan.nix/ghcjs.nix−985 materialized/ghcjs/ghc8105/default.nix−576 materialized/ghcjs/ghc8106/.plan.nix/ghcjs-th.nix−48 materialized/ghcjs/ghc8106/.plan.nix/ghcjs.nix−985 materialized/ghcjs/ghc8106/default.nix−576 materialized/ghcjs/ghc8107/.plan.nix/ghcjs-th.nix−48 materialized/ghcjs/ghc8107/.plan.nix/ghcjs.nix−985 materialized/ghcjs/ghc8107/default.nix−576 materialized/ghcjs/ghc865/.plan.nix/ghci-ghcjs.nix−70 materialized/ghcjs/ghc865/.plan.nix/ghcjs-th.nix−58 materialized/ghcjs/ghc865/.plan.nix/ghcjs.nix−987 materialized/ghcjs/ghc865/.plan.nix/haddock-library-ghcjs.nix−103 materialized/ghcjs/ghc865/.plan.nix/template-haskell-ghcjs.nix−54 materialized/ghcjs/ghc865/default.nix−636 materialized/ghcjs/ghc884/.plan.nix/ghcjs-th.nix−52 materialized/ghcjs/ghc884/.plan.nix/ghcjs.nix−981 materialized/ghcjs/ghc884/default.nix−581 materialized/ghcjs/happy/ghc8104/.plan.nix/happy.nix−200 materialized/ghcjs/happy/ghc8104/default.nix−41 materialized/ghcjs/happy/ghc8105/.plan.nix/happy.nix−200 materialized/ghcjs/happy/ghc8105/default.nix−56 materialized/ghcjs/happy/ghc8106/.plan.nix/happy.nix−200 materialized/ghcjs/happy/ghc8106/default.nix−56 materialized/ghcjs/happy/ghc8107/.plan.nix/happy.nix−200 materialized/ghcjs/happy/ghc8107/default.nix−56 materialized/ghcjs/happy/ghc865/.plan.nix/happy.nix−200 materialized/ghcjs/happy/ghc865/default.nix−56 materialized/ghcjs/happy/ghc884/.plan.nix/happy.nix−200 materialized/ghcjs/happy/ghc884/default.nix−56 materialized/spdx-3.12/licenses.json−5622 materialized/spdx-3.14/licenses.json−5937 materialized/spdx-3.16/licenses.json−6090 materialized/spdx-3.17/licenses.json−6155 mk-local-hackage-repo/default.nix+9−19 mkdocs.yml+1−5 modules/cabal-project.nix−134 modules/component-driver.nix+6−17 modules/configuration-nix.nix+2−114 modules/error-handler.nix+2−10 modules/hackage-project.nix−60 modules/hackage-quirks.nix−88 modules/hix-project.nix−47 modules/package.nix+83−144 modules/plan.nix+3−44 modules/project-common.nix−65 modules/project.nix−9 modules/stack-project.nix−94 nix-tools/README.md+3 nix-tools/regenerate.nix+100 nix/sources.json+80 nix/sources.nix+134 overlays/android.nix−28 overlays/armv6l-linux.nix+8−9 overlays/bootstrap.nix+102−638 overlays/darwin.nix+3−21 overlays/default.nix+10−13 overlays/emscripten.nix+19−6 overlays/emscripten/binaryen.nix+46 overlays/emscripten/default.nix+71 overlays/emscripten/fastcomp/default.nix+2−2 overlays/emscripten/fastcomp/emscripten-fastcomp.nix+55 overlays/emscripten/upstream/default.nix+2−2 overlays/emscripten/upstream/emscripten-upstream.nix+60 overlays/eval-on-build.nix+6 overlays/eval-on-current.nix+8 overlays/ghc-packages.nix+56−110 overlays/ghc.nix+9−13 overlays/ghcjs.nix−60 overlays/gobject-introspection.nix+3−5 overlays/hackage-quirks.nix+66 overlays/haskell.nix+167−428 overlays/hix.nix−51 overlays/hydra.nix−9 overlays/linux-cross.nix+1−1 overlays/mingw_w64.nix+22−22 overlays/musl.nix+10−13 overlays/nix-prefetch-git-minimal.nix−29 overlays/patches/Cabal/Cabal-3.0.0.0-drop-pkg-db-check.diff−20 overlays/patches/Cabal/Cabal-3.0.0.0-no-final-checks.diff−24 overlays/patches/Cabal/Cabal-3.4-defer-build-tool-depends-7532.patch−63 overlays/patches/Cabal/Cabal-3.4-speedup-solver-when-tests-enabled-7490.patch−147 overlays/patches/Cabal/Cabal-3.6.0.0-drop-pkg-db-check.diff−20 overlays/patches/Cabal/Cabal-3.6.0.0-no-final-checks.diff−24 overlays/patches/config.guess−1702 overlays/patches/config.sub−1865 overlays/patches/file-embed-lzma-0.patch+44 overlays/patches/ghc-lib-parser-8.10-global-unique-counters-in-rts.patch−20 overlays/patches/ghc-lib-parser-9.2-global-unique-counters-in-rts.patch−20 overlays/patches/ghc/AC_PROG_CC_99.patch−13 overlays/patches/ghc/Cabal-3886.patch−170 overlays/patches/ghc/Cabal-unbreak-GHCJS.patch−20 overlays/patches/ghc/MR6595-nonmoving-mutvar.patch−521 overlays/patches/ghc/MR6617-nonmoving-mvar.patch−174 overlays/patches/ghc/MR6654-nonmoving-maxmem.patch−31 overlays/patches/ghc/Sphinx_Unicode_Error.patch−20 overlays/patches/ghc/android-base-needs-iconv.patch−14 overlays/patches/ghc/core-field.patch−958 overlays/patches/ghc/external-static-8.10.4.patch−219 overlays/patches/ghc/ghc-8.10-3434.patch−68 overlays/patches/ghc/ghc-8.10-global-unique-counters-in-rts.patch−55 overlays/patches/ghc/ghc-8.10-ubxt.patch−1539 overlays/patches/ghc/ghc-8.10-windows-add-dependent-file.patch−22 overlays/patches/ghc/ghc-8.10-z-drive-fix.patch−14 overlays/patches/ghc/ghc-8.10.3-rts-make-markLiveObject-thread-safe.patch−63 overlays/patches/ghc/ghc-8.10.3-ubxt.patch−7884 overlays/patches/ghc/ghc-8.10.5-add-rts-exports.patch−26 overlays/patches/ghc/ghc-8.10.5-darwin-allocateExec.patch−13 overlays/patches/ghc/ghc-8.10.5-ubxt.patch−7884 overlays/patches/ghc/ghc-8.10.7-linker-weak-and-common.patch−189 overlays/patches/ghc/ghc-8.4.4-reinstallable-lib-ghc.patch+10 overlays/patches/ghc/ghc-8.6.3-reinstallable-lib-ghc.patch+10 overlays/patches/ghc/ghc-8.6.4-reinstallable-lib-ghc.patch+10 overlays/patches/ghc/ghc-8.6.5-reinstallable-lib-ghc.patch+10 overlays/patches/ghc/ghc-8.8-ubxt.patch−1127 overlays/patches/ghc/ghc-8.8.1-reinstallable-lib-ghc.patch+10 overlays/patches/ghc/ghc-8.8.2-reinstallable-lib-ghc.patch+10 overlays/patches/ghc/ghc-9.0-macOS-loadArchive-fix.patch−9 overlays/patches/ghc/ghc-9.2-3434.patch−68 overlays/patches/ghc/ghc-9.2-Cabal-3886.patch−170 overlays/patches/ghc/ghc-9.2-cabal-host.patch−13 overlays/patches/ghc/ghc-9.2-global-unique-counters-in-rts.patch−83 overlays/patches/ghc/ghc-9.2-macOS-loadArchive-fix.patch−9 overlays/patches/ghc/ghc-9.2.1-xattr-fix.patch−30 overlays/patches/ghc/ghc-acrt-iob-func.patch−12 overlays/patches/ghc/ghc-mprotect-nonzero-len.patch−14 overlays/patches/ghc/ghc-rts-linker-condbr.patch−73 overlays/patches/ghc/issue-18708.patch−39 overlays/patches/ghc/libc-memory-symbols.patch−43 overlays/patches/ghc/libraries-prim-os-android.patch−13 overlays/patches/ghc/mmap-next.patch−70 overlays/patches/ghc/noinline-set-bit-if.patch−12 overlays/patches/ghc/rts-android-jemalloc-qemu.patch−48 overlays/patches/ghc/stack-protector-symbols.patch−67 overlays/tools.nix+61−28 overlays/windows.nix+31−23 overlays/wine.nix+8−10 package-set.nix+1−1 patches/default.nix−1 patches/ghc862/default.nix+1−1 patches/ghc863/default.nix+1−1 patches/ghc864/default.nix+1−1 patches/ghc865/default.nix+1−1 patches/ghcide-1.7-plutus-ghc.patch−13 patches/ghcide-1.7-unboxed-tuple-fix-issue-1455.patch−76 patches/hnix.patch−13 patches/js-ghc8107/buffer-builder.patch−79 patches/js-ghc8107/conduit-extra.patch−48 patches/js-ghc8107/default.nix−7 patches/js-ghc8107/double-conversion.patch−64 patches/js-ghc8107/network.patch−16 patches/js-ghc8107/say.patch−22 patches/languge-c-int128.patch−146 patches/update-patches.sh+2−6 release-linux-only.nix−5 release.nix+10−54 scripts/check-closure-size.nix+2−2 scripts/check-compiler-materialization/default.nix+12−40 scripts/check-hydra.nix+4−5 scripts/check-materialization-concurrency/check.nix+2−2 scripts/check-path-support.nix+3−3 scripts/options-doc.nix+1−1 scripts/update-docs.nix+2−2 scripts/update-external.nix+5−5 scripts/update-hackage.nix+2−2 scripts/update-index-state-hashes.nix+2−2 scripts/update-pins.nix+3−3 scripts/update-stackage.nix+2−2 shell.nix+12−1 snapshots.nix+2−2 stackage-src.json+4−7 test/buildable/default.nix+5−4 test/builder-haddock/.plan.nix/test-haddock.nix+43−12 test/builder-haddock/default.nix+10−9 test/builder-haddock/pkgs.nix+6−18 test/c-ffi/c-ffi.cabal−24 test/c-ffi/cbits/test.c−7 test/c-ffi/default.nix−65 test/c-ffi/exe/Main.hs−15 test/c-ffi/jsbits/bindings.js−6 test/c-ffi/src/Lib.hs−6 test/ca-derivations-include/default.nix−57 test/ca-derivations/default.nix−59 test/cabal-22/default.nix+7−12 test/cabal-doctests/Setup.hs−6 test/cabal-doctests/cabal-doctests-test.cabal−31 test/cabal-doctests/default.nix−48 test/cabal-doctests/doctests/Doctests.hs−16 test/cabal-doctests/src/Lib.hs−18 test/cabal-hpack/default.nix+6−6 test/cabal-simple-debug/Main.hs−4 test/cabal-simple-debug/Setup.hs−2 test/cabal-simple-debug/cabal-simple.cabal−37 test/cabal-simple-debug/default.nix−52 test/cabal-simple-prof/default.nix+10−16 test/cabal-simple/default.nix+7−11 test/cabal-source-repo-comments/cabal.project−2 test/cabal-source-repo-comments/default.nix+7−6 test/cabal-source-repo/cabal.project+1−3 test/cabal-source-repo/default.nix+7−6 test/cabal-sublib/cabal-sublib.cabal+1−2 test/cabal-sublib/default.nix+6−10 test/call-cabal-project-to-nix/default.nix+6−10 test/call-stack-to-nix/default.nix+5−7 test/call-stack-to-nix/stack.yaml+1−1 test/compiler-nix-name/Main.hs+5 test/compiler-nix-name/compiler-nix-name.cabal+11 test/compiler-nix-name/default.nix+40 test/coverage-golden/default.nix−53 test/coverage-golden/golden.json−2069 test/coverage-no-libs/cabal.project−1 test/coverage-no-libs/default.nix−104 test/coverage-no-libs/pkga/MainA.hs−4 test/coverage-no-libs/pkga/Setup.hs−2 test/coverage-no-libs/pkga/pkga.cabal−19 test/coverage-no-libs/stack.yaml−4 test/coverage/cabal.project−2 test/coverage/conduit.hs−19 test/coverage/default.nix−133 test/coverage/pkga/MainA.hs−4 test/coverage/pkga/PkgA.hs−16 test/coverage/pkga/Setup.hs−2 test/coverage/pkga/pkga.cabal−26 test/coverage/pkgb/Setup.hs−2 test/coverage/pkgb/app/Main.hs−10 test/coverage/pkgb/app/tests.hs−7 test/coverage/pkgb/pkgb.cabal−43 test/coverage/pkgb/src/ConduitExample.hs−21 test/coverage/pkgb/src/PkgB.hs−7 test/coverage/pkgb/src/conduit-test.hs−5 test/coverage/stack.yaml−5 test/default.nix+37−65 test/exe-dlls/default.nix−25 test/exe-dlls/exe-dlls.cabal−18 test/exe-dlls/src/Main.hs−14 test/exe-lib-dlls/default.nix−25 test/exe-lib-dlls/exe-lib-dlls.cabal−24 test/exe-lib-dlls/exes/Main.hs−6 test/exe-lib-dlls/src/Lib.hs−14 test/exe-only/default.nix+6−6 test/external-static-plugin/cabal.project−1 test/external-static-plugin/default.nix−27 test/external-static-plugin/plugin/CHANGELOG.md−5 test/external-static-plugin/plugin/plugin.cabal−12 test/external-static-plugin/plugin/src/Plugin.hs−16 test/external-static-plugin/prog/CHANGELOG.md−5 test/external-static-plugin/prog/app/Main.hs−4 test/external-static-plugin/prog/prog.cabal−12 test/extra-hackage/default.nix+10−9 test/extra-hackage/external-package-user/cabal.project+2−6 test/fully-static/cross.nix+1−1 test/fully-static/default.nix+4−12 test/ghc-options/cabal.nix+7−14 test/ghc-options/stack.nix+4−12 test/ghcjs-overlay/CHANGELOG.md−5 test/ghcjs-overlay/Main.hs−8 test/ghcjs-overlay/MyLib.hs−4 test/ghcjs-overlay/Setup.hs−2 test/ghcjs-overlay/cabal.project−2 test/ghcjs-overlay/default.nix−60 test/ghcjs-overlay/ghcjs-overlay-test.cabal−21 test/githash/default.nix−71 test/githash/githash-test.cabal−16 test/githash/src/Main.hs−15 test/haskell-language-server/cabal.nix+21−6 test/haskell-language-server/stack.nix+8−11 test/index-state/default.nix+7−14 test/lookup-sha256/default.nix+13 test/project-flags/cabal.nix+7−6 test/project-flags/stack.nix+4−6 test/setup-deps/cabal.project+2 test/setup-deps/default.nix+24−18 test/setup-deps/pkg/Setup.hs−5 test/setup-deps/pkg/pkg.cabal−1 test/sha256map/default.nix−21 test/shell-for-setup-deps/cabal.project+2 test/shell-for-setup-deps/default.nix+23−17 test/shell-for-setup-deps/pkg/pkg.cabal−1 test/shell-for/.plan.nix/pkga.nix+45−14 test/shell-for/.plan.nix/pkgb.nix+55−24 test/shell-for/default.nix+18−18 test/shell-for/pkgb/pkgb.cabal+1−1 test/shell-for/pkgs.nix+164−250 test/snapshots/default.nix+21−8 test/stack-local-resolver-subdir/.gitignore−2 test/stack-local-resolver-subdir/default.nix−16 test/stack-local-resolver-subdir/package.yaml−7 test/stack-local-resolver-subdir/snapshot/snapshot.yaml−4 test/stack-local-resolver-subdir/src/Lib.hs−6 test/stack-local-resolver-subdir/stack.yaml−4 test/stack-local-resolver/default.nix+1−3 test/stack-remote-resolver/default.nix+1−3 test/stack-simple/default.nix+3−5 test/stack-simple/pkgs.nix+1−7 test/stack-simple/stack-simple.nix+47−16 test/stack-source-repo/default.nix+1−3 test/sublib-docs/default.nix+5−11 test/tests.sh+4−10 test/th-dlls/apps/Main.hs−9 test/th-dlls/default.nix−24 test/th-dlls/src/Lib.hs−14 test/th-dlls/th-dlls.cabal−24 test/unit.nix+17−130 test/with-packages/.plan.nix/test-with-packages.nix+43−12 test/with-packages/default.nix+15−31 test/with-packages/pkgs.nix+118−161
.buildkite/pipeline.yml+5−17
@@ -1,6 +1,6 @@
11steps:
2− - label: 'Run tests with ghc8107'
3− command: "./test/tests.sh ghc8107"
2+ - label: 'Run tests with ghc884'
3+ command: "./test/tests.sh ghc884"
44 agents:
55 system: x86_64-linux
66
@@ -14,9 +14,9 @@ steps:
1414 agents:
1515 system: x86_64-linux
1616
17− - label: 'Check closure size with ghc8107'
17+ - label: 'Check closure size with ghc884'
1818 command:
19− - nix-build build.nix -A maintainer-scripts.check-closure-size --argstr compiler-nix-name ghc8107 -o check-closure-size.sh
19+ - nix-build build.nix -A maintainer-scripts.check-closure-size --argstr compiler-nix-name ghc884 -o check-closure-size.sh
2020 - echo "+++ Closure size (MB)"
2121 - ./check-closure-size.sh
2222 agents:
@@ -36,17 +36,5 @@ steps:
3636
3737 - label: 'Make sure non store paths like can be used as src'
3838 command:
39− - nix-build build.nix -A maintainer-scripts.check-path-support --argstr compiler-nix-name ghc8107 -o check-path-support.sh
39+ - nix-build build.nix -A maintainer-scripts.check-path-support --argstr compiler-nix-name ghc884 -o check-path-support.sh
4040 - ./check-path-support.sh
41−
42− - label: 'Check that the haskell.nix roots do not require IFDs'
43− command:
44− - nix build .#roots.x86_64-linux --option allow-import-from-derivation false
45− agents:
46− system: x86_64-linux
47−
48− - label: 'Check that evaluation of hydra jobs works without using remote builders'
49− command:
50− - nix-instantiate release.nix -A required-unstable-ghc8107-x86_64-darwin-native --show-trace --builders ''
51− agents:
52− system: x86_64-linux
.buildkite/updates.yml+10−3
@@ -1,14 +1,21 @@
11steps:
2− - label: 'Update hackage.nix and stackage.nix'
2+ - label: 'Update hackage.nix'
33 command:
44 - nix-build build.nix -A maintainer-scripts.update-hackage -o update-hackage.sh
55 - echo "+++ Updating hackage.nix"
66 - ./update-hackage.sh
7+ artifact_paths:
8+ - "hackage-src.json"
9+ agents:
10+ system: x86_64-linux
11+
12+ - label: 'Update stackage.nix'
13+ command:
714 - nix-build build.nix -A maintainer-scripts.update-stackage -o update-stackage.sh
815 - echo "+++ Updating stackage.nix"
916 - ./update-stackage.sh
1017 artifact_paths:
11− - "flake.lock"
18+ - "stackage-src.json"
1219 agents:
1320 system: x86_64-linux
1421
@@ -17,7 +24,7 @@ steps:
1724
1825 - label: 'Update pins'
1926 command:
20− - 'buildkite-agent artifact download "flake.lock" .'
27+ - 'buildkite-agent artifact download "*.json" .'
2128 - nix-build build.nix -A maintainer-scripts.update-pins -o update-pins.sh
2229 - ./update-pins.sh
2330 agents:
.github/workflows/rebase.yamldeleted−28
@@ -1,28 +0,0 @@
1−name: Rebase on iohk/haskell.nix
2−
3−on:
4− schedule:
5− - cron: 0 0 * * *
6−
7−jobs:
8− Linux:
9− runs-on: ubuntu-latest
10− steps:
11− - uses: actions/checkout@v2.4.0
12− with:
13− fetch-depth: 0
14− - name: Rebase and push
15− run: |
16− git config --global user.name "GitHub Actions"
17−
18−
19− git remote add iohk https://github.com/input-output-hk/haskell.nix.git
20− git fetch iohk
21−
22− git checkout iko/ghcjs-patch-master
23− git rebase iohk/master
24− git push --force
25−
26− git checkout --track origin/master
27− git reset --hard iohk/master
28− git push --force
.github/workflows/windows-secp256k1.ymldeleted−51
@@ -1,51 +0,0 @@
1−name: "Test secp256k1 on windows"
2−on: workflow_dispatch
3−jobs:
4− tests:
5− runs-on: windows-latest
6−
7− defaults:
8− run:
9− shell: bash
10−
11− steps:
12−
13− - uses: haskell/actions/setup@v1
14− id: setup-haskell
15− with:
16− ghc-version: 8.10.7
17− cabal-version: 3.6.2.0
18−
19− - name: Install pkgconfiglite
20− run: choco install -y pkgconfiglite
21−
22− - name: Install libsecp256k1
23− run: |
24− curl -Ls \
25− --connect-timeout 5 \
26− --max-time 10 \
27− --retry 5 \
28− --retry-delay 0 \
29− --retry-max-time 40 \
30− https://hydra.iohk.io/job/Cardano/haskell-nix/windows-secp256k1/latest/download/1 -o secp256k1.zip
31− mkdir secp256k1
32− cd secp256k1
33− unzip ../secp256k1.zip
34− cd ..
35− export PKG_CONFIG_PATH="$PKG_CONFIG_PATH;$(readlink -f secp256k1/lib/pkgconfig | sed 's|^/d|D:|g' | tr / '\\')"
36− echo "PKG_CONFIG_PATH=$PKG_CONFIG_PATH"
37− echo "PKG_CONFIG_PATH=$PKG_CONFIG_PATH" >> $GITHUB_ENV
38− export SECP256K1_PATH="$(readlink -f secp256k1/bin | sed 's|^/d|D:|g' | tr / '\\')"
39− echo "SECP256K1_PATH=$SECP256K1_PATH"
40− echo "$SECP256K1_PATH" >> $GITHUB_PATH
41−
42− - name: Cabal update
43− run: cabal update
44−
45− - name: Build and run haskell-secp256k1 tests
46− run: |
47− cabal unpack secp256k1-haskell
48− cd secp256k1-haskell-*
49− cabal build --enable-tests
50− cabal test
51−
README.md+6−33
@@ -1,19 +1,3 @@
1−# What is this fork?
2−
3−This fork contains a patched version of GHCJS 8.10 which improves performance and memory usage.
4−
5−For more info see this PR: https://github.com/input-output-hk/haskell.nix/pull/1306
6−
7−## Package versions
8−
9−This branch is updated every day with commits from https://github.com/input-output-hk/haskell.nix/tree/master. This means that it receives all of the updates the initial project does.
10−
11−## Caching
12−
13−Building the patched compiler itself takes around 2-3 hours. The [Typeable](https://typeable.io) public nix cache probably has a cached version of the compiler. You can follow these instruction to set it up: [app.cachix.org/organization/typeable/cache/typeable](https://app.cachix.org/organization/typeable/cache/typeable).
14−
15−---
16−
171# `haskell.nix` is infrastructure for building Haskell packages with Nix
182
193[![](https://badge.buildkite.com/d453edcd29bd2f8f3f3b32c9b7d6777a33773d9671c37a6ccc.svg?branch=master)](https://buildkite.com/input-output-hk/haskell-dot-nix)
@@ -24,23 +8,8 @@ its dependencies into Nix code.
248
259## Documentation
2610
27−- [Introduction](https://input-output-hk.github.io/haskell.nix/index.html)
28−- [Getting Started](https://input-output-hk.github.io/haskell.nix/tutorials/getting-started.html)
29−- [Troubleshooting](https://input-output-hk.github.io/haskell.nix/troubleshooting.html)
30−- Explore the documentation from there to find further topics.
31−
32−## Help! Something isn't working
33−
34−The #1 problem that people have when using `haskell.nix` is that they find themselves building GHC.
35−This should not happen, but you *must* follow the `haskell.nix` setup instructions properly to avoid it.
36−If you find this happening to you, please check that you have followed the
37−[getting started instructions](https://input-output-hk.github.io/haskell.nix/tutorials/getting-started.html#setting-up-the-binary-cache) and
38−consult the corresponding [troubleshooting section](https://input-output-hk.github.io/haskell.nix/troubleshooting.html#why-am-i-building-ghc).
39−
40−The troubleshooting documentation also contains some help for other common issues.
41−Please give it a read before asking on IRC or opening an issue.
42−
43−If you're still stuck, join the [#haskell.nix](https://www.irccloud.com/invite?channel=%23haskell.nix&hostname=irc.libera.chat&port=6697&ssl=1) channel on [irc.libera.chat](https://libera.chat/), or open an issue.
11+- [Introduction](https://input-output-hk.github.io/haskell.nix/)
12+- [Getting Started](https://input-output-hk.github.io/haskell.nix/tutorials/getting-started/)
4413
4514## Related repos
4615
@@ -53,3 +22,7 @@ Haskell packages in Nix. It depends on other repos, which are:
5322
5423- [`stackage.nix`](https://github.com/input-output-hk/stackage.nix) — all of the [Stackage](https://www.stackage.org/) snapshots, converted to Nix expressions.
5524
25+## IRC Channel
26+
27+Join the [#haskell.nix](https://www.irccloud.com/invite?channel=%23haskell.nix&hostname=irc.freenode.net&port=6697&ssl=1) channel on [irc.freenode.net](https://freenode.net/) to get help or discuss
28+the development of `haskell.nix` and `nix-tools`.
build.nix+13−30
@@ -5,12 +5,9 @@
55let
66 haskellNix = (import ./default.nix {});
77in
8−{ nixpkgs ? haskellNix.sources.nixpkgs-2111
8+{ nixpkgs ? haskellNix.sources.nixpkgs
99, nixpkgsArgs ? haskellNix.nixpkgsArgs
1010, pkgs ? import nixpkgs nixpkgsArgs
11−, evalPackages ? import nixpkgs nixpkgsArgs
12−, nixpkgsForHydra ? haskellNix.sources.nixpkgs-2105
13−, pkgsForHydra ? import nixpkgsForHydra (nixpkgsArgs // { inherit (pkgs) system; })
1411, ifdLevel ? 1000
1512, compiler-nix-name ? throw "No `compiler-nix-name` passed to build.nix"
1613}:
@@ -20,23 +17,13 @@ let
2017 buildHaskell = pkgs.buildPackages.haskell-nix;
2118 tool = buildHaskell.tool;
2219in rec {
23− tests = import ./test/default.nix { inherit pkgs evalPackages ifdLevel compiler-nix-name; };
20+ tests = import ./test/default.nix { inherit pkgs ifdLevel compiler-nix-name; };
2421
2522 tools = pkgs.lib.optionalAttrs (ifdLevel >= 3) (
26− pkgs.recurseIntoAttrs ({
27− cabal-latest = tool compiler-nix-name "cabal" { inherit evalPackages; };
28− hlint-latest = tool compiler-nix-name "hlint" {
29− inherit evalPackages;
30− version = {
31− "ghc865" = "3.2.8";
32− "ghc882" = "3.3.6";
33− "ghc883" = "3.3.6";
34− "ghc884" = "3.3.6";
35− }.compiler-nix-name or "latest";
36− };
37− } // pkgs.lib.optionalAttrs (!__elem compiler-nix-name ["ghc921" "ghc922" "ghc923" "ghc924"]) {
38− hls-latest = tool compiler-nix-name "haskell-language-server" { inherit evalPackages; };
39− })
23+ pkgs.recurseIntoAttrs {
24+ ghcide-020 = tool compiler-nix-name "ghcide" "0.2.0";
25+ cabal-32 = tool compiler-nix-name "cabal" "3.2.0.0";
26+ }
4027 );
4128
4229 # Scripts for keeping Hackage and Stackage up to date, and CI tasks.
@@ -45,16 +32,16 @@ in rec {
4532 # are not pure).
4633 maintainer-scripts = pkgs.dontRecurseIntoAttrs {
4734 update-hackage = import ./scripts/update-hackage.nix {
48− inherit (pkgs) stdenv lib writeScript coreutils glibc git
49− openssh nixFlakes gawk bash curl findutils;
35+ inherit (pkgs) stdenv writeScript coreutils glibc git
36+ openssh nix-prefetch-git gawk bash curl findutils;
5037 # Update scripts use the internal nix-tools and cabal-install (compiled with a fixed GHC version)
5138 nix-tools = haskell.internal-nix-tools;
5239 cabal-install = haskell.internal-cabal-install;
5340 inherit (haskell) update-index-state-hashes;
5441 };
5542 update-stackage = haskell.callPackage ./scripts/update-stackage.nix {
56− inherit (pkgs) stdenv lib writeScript coreutils glibc git
57− openssh nixFlakes gawk bash curl findutils;
43+ inherit (pkgs) stdenv writeScript coreutils glibc git
44+ openssh nix-prefetch-git gawk bash curl findutils;
5845 # Update scripts use the internal nix-tools and cabal-install (compiled with a fixed GHC version)
5946 nix-tools = haskell.internal-nix-tools;
6047 cabal-install = haskell.internal-cabal-install;
@@ -68,7 +55,7 @@ in rec {
6855 # it uses `pkgs.buildPackages.callPackage` not `haskell.callPackage`
6956 # (We could pull in darcs from a known good haskell.nix for hydra to
7057 # use)
71− check-hydra = pkgsForHydra.buildPackages.callPackage ./scripts/check-hydra.nix {};
58+ check-hydra = pkgs.buildPackages.callPackage ./scripts/check-hydra.nix {};
7259 check-closure-size = pkgs.buildPackages.callPackage ./scripts/check-closure-size.nix {
7360 # Includes cabal-install since this is commonly used.
7461 nix-tools = pkgs.linkFarm "common-tools" [
@@ -77,17 +64,13 @@ in rec {
7764 ];
7865 };
7966 check-materialization-concurrency = pkgs.buildPackages.callPackage ./scripts/check-materialization-concurrency/check.nix {};
80− check-path-support = pkgs.buildPackages.callPackage ./scripts/check-path-support.nix {
81− # TODO remove this when nixpkgs-2205 is released and used for `pkgs`
82− # check-path-support fails unless we have nix 2.4 or newer.
83− inherit (import haskellNix.sources.nixpkgs-unstable {}) nix;
84− };
67+ check-path-support = pkgs.buildPackages.callPackage ./scripts/check-path-support.nix {};
8568 };
8669
8770 # These are pure parts of maintainer-script so they can be built by hydra
8871 # and added to the cache to speed up buildkite.
8972 maintainer-script-cache = pkgs.recurseIntoAttrs (
90− (pkgs.lib.optionalAttrs (pkgsForHydra.system == "x86_64-linux") {
73+ (pkgs.lib.optionalAttrs pkgs.stdenv.hostPlatform.isWindows {
9174 inherit (maintainer-scripts) check-hydra;
9275 })
9376 // (pkgs.lib.optionalAttrs (ifdLevel > 2) {
builder/Setup.ghcjs.hsdeleted−272
@@ -1,272 +0,0 @@
1−{-# language LambdaCase #-}
2−import Distribution.Simple
3−import Distribution.Simple.Setup
4−import Distribution.Types.PackageDescription
5−import Distribution.Types.LocalBuildInfo
6−import Distribution.Simple.PackageIndex
7−import Distribution.Types.InstalledPackageInfo hiding (includeDirs)
8−import qualified Distribution.Types.InstalledPackageInfo as IPI
9−import Distribution.Types.PackageName
10−import System.FilePath
11−import Control.Monad (filterM, forM_, forM, unless)
12−import System.Directory (doesFileExist)
13−import Distribution.Types.Library (libBuildInfo, Library(..))
14−import Distribution.Types.BuildInfo (cSources, jsSources, includeDirs, emptyBuildInfo, options, extraBundledLibs)
15−import Distribution.Simple.BuildTarget (readBuildTargets, BuildTarget(..), readUserBuildTargets)
16−import Distribution.Verbosity (silent, verbose)
17−import Distribution.Types.ComponentName
18−import Distribution.Simple.Program.Types (programPath)
19−import Distribution.Simple.Program.Db (lookupKnownProgram, lookupProgram, knownPrograms)
20−import Distribution.Simple.Program (Program, gccProgram, arProgram, runDbProgram, simpleProgram, ghcProgram)
21−import Distribution.Simple.Utils (createDirectoryIfMissingVerbose)
22−import Distribution.Types.HookedBuildInfo
23−import Data.List (isPrefixOf, isSuffixOf, intercalate)
24−import System.Environment (getArgs, getProgName)
25−import Distribution.Simple.LocalBuildInfo (Component (..), withAllComponentsInBuildOrder, componentBuildDir)
26−import Distribution.Types.TestSuite (TestSuite(..))
27−import Distribution.Types.TestSuiteInterface (TestSuiteInterface(..) )
28−import Distribution.Simple.Test.LibV09 (stubName)
29−import Distribution.Types.Executable (exeName, Executable(..))
30−import Distribution.Types.Benchmark (Benchmark(..))
31−import Distribution.Types.TestSuite (TestSuite(..))
32−import Distribution.Types.UnqualComponentName (unUnqualComponentName, mkUnqualComponentName)
33−
34−
35−emarProgram :: Program
36−emarProgram = simpleProgram "emar"
37−
38−buildEMCCLib :: PackageDescription -> LocalBuildInfo -> IO ()
39−buildEMCCLib desc lbi = do
40− let verbosity = verbose
41− -- get build dir
42− createDirectoryIfMissingVerbose verbosity True ((buildDir lbi) </> "emcc")
43− --
44− case library desc of
45− Just lib -> do
46− -- Let's see if we are going to export anything. If not there is likely no point in compiling anything
47− -- from the C code.
48− names <- forM (jsSources . libBuildInfo $ lib) $ \src -> do
49− unwords . concatMap (drop 2 . words) . filter (isPrefixOf "// EMCC:EXPORTED_FUNCTIONS") . lines <$> readFile src
50−
51− unless (null names) $ do
52− let depIncludeDirs = concatMap IPI.includeDirs (topologicalOrder $ installedPkgs lbi)
53− -- alright, let's compile all .c files into .o files with emcc, which is the `gcc` program.
54− forM_ (cSources . libBuildInfo $ lib) $ \src -> do
55− let dst = (buildDir lbi) </> "emcc" </> (src -<.> "o")
56− createDirectoryIfMissingVerbose verbosity True (takeDirectory dst)
57− runDbProgram verbosity gccProgram (withPrograms lbi) $
58− ["-c", src, "-o", dst] ++ ["-I" <> incDir | incDir <- (includeDirs . libBuildInfo $ lib) ++ depIncludeDirs]
59−
60− -- and now construct a canonical `.js_a` file, *if* we have any cSources we turned into objects.
61− unless (null . cSources . libBuildInfo $ lib) $ do
62− let dstLib = (buildDir lbi) </> "libEMCC" <> (unPackageName . pkgName . package $ desc) <> ".js_a"
63− runDbProgram verbosity emarProgram (withPrograms lbi) $
64− [ "-r", dstLib ] ++ [ (buildDir lbi) </> "emcc" </> (src -<.> "o") | src <- cSources . libBuildInfo $ lib ]
65−
66− let expLib = (buildDir lbi) </> "libEMCC" <> (unPackageName . pkgName . package $ desc) <> ".exported.js_a"
67− writeFile expLib (unwords names)
68−
69− -- if there's no lib, this is a fairly pointless exercise
70− Nothing -> return ()
71−
72−-- This is here so that we can link multiple libEMCC* libraries fromd ependencies together with emcc.
73−-- however we don't have figured out how to get the EXPORTED_FUNCTIONS from each dependency merged yet.
74−--
75−linkEMCCLib :: PackageDescription -> LocalBuildInfo -> IO ()
76−linkEMCCLib desc lbi = linkCLib ("emcc" </> "lib.js") desc lbi
77−
78−linkEMCCTHLib :: PackageDescription -> LocalBuildInfo -> IO ()
79−linkEMCCTHLib desc lbi = linkCLib ("th-support.js") desc lbi
80−
81−linkCLib :: String -> PackageDescription -> LocalBuildInfo -> IO ()
82−linkCLib libname desc lbi = do
83− withAllComponentsInBuildOrder desc lbi $ \comp clbi -> do
84− let extraLibs = [ "-l" <> l | l <- concatMap IPI.extraLibraries (topologicalOrder $ installedPkgs lbi)
85− , l /= "m"
86− , l /= "dl" ]
87− libDirs = [ "-L" <> path | path <- concatMap IPI.libraryDirs (topologicalOrder $ installedPkgs lbi) ]
88−
89− let verbosity = verbose
90− libs <- filterM doesFileExist $
91− concatMap (\x -> [ libDir </> "libEMCC" <> (unPackageName . pkgName . sourcePackageId $ x) <> ".js_a"
92− | libDir <- libraryDirs x ])
93− (topologicalOrder $ installedPkgs lbi)
94− exff <- filterM doesFileExist $
95− concatMap (\x -> [ libDir </> "libEMCC" <> (unPackageName . pkgName . sourcePackageId $ x) <> ".exported.js_a"
96− | libDir <- libraryDirs x ])
97− (topologicalOrder $ installedPkgs lbi)
98− print exff
99− exfns <- concat <$> forM exff (fmap words . readFile)
100− unless (null libs && null exfns) $ do
101− libs <- case libs of
102− [] -> do writeFile (buildDir lbi </> "emcc_linking_dummy.c") ""
103− runDbProgram verbosity gccProgram (withPrograms lbi) $
104− ["-c", buildDir lbi </> "emcc_linking_dummy.c", "-o", buildDir lbi </> "emcc_linking_dummy.o"]
105− return [(buildDir lbi </> "emcc_linking_dummy.o")]
106− _ -> return libs
107−
108− let dst = if libname == "emcc" </> "lib.js" then buildDir lbi
109− -- who designed this shit in cabal?
110− else case comp of
111− (CTest test@(TestSuite { testInterface = TestSuiteLibV09 _ _ })) -> buildDir lbi </> stubName test </> stubName test ++ "-tmp"
112− (CTest test@(TestSuite { testInterface = TestSuiteExeV10 _ _ })) -> buildDir lbi </> unUnqualComponentName (testName test) </> unUnqualComponentName (testName test) ++ "-tmp"
113− (CExe exe) -> buildDir lbi </> unUnqualComponentName (exeName exe) </> unUnqualComponentName (exeName exe) ++ "-tmp"
114− _ -> componentBuildDir lbi clbi
115− dst' = dst </> libname
116− createDirectoryIfMissingVerbose verbosity True (takeDirectory dst')
117− runDbProgram verbosity gccProgram (withPrograms lbi) $
118− [ "-o", dst'
119− , "-s", "WASM=0"
120− , "-s", "ALLOW_TABLE_GROWTH" -- we need this for addFunction/removeFunction
121− -- addFunction, removeFunction are for dynamic functions.
122− -- getTempRet0/setTempRet0 are for 64bit legalization.
123− , "-s", "EXPORTED_RUNTIME_METHODS=['printErr','addFunction','removeFunction','getTempRet0','setTempRet0']"
124− --
125− , "-s", "EXPORTED_FUNCTIONS=['" <> intercalate "', '" exfns <> "']"
126− ] ++ libs ++ libDirs ++ extraLibs
127−
128−postBuildHook :: Args -> BuildFlags -> PackageDescription -> LocalBuildInfo -> IO ()
129−postBuildHook args flags desc lbi = do
130− case (takeFileName . programPath <$> lookupProgram ghcProgram (withPrograms lbi)) of
131− Just "js-unknown-ghcjs-ghc" ->
132− readBuildTargets silent desc (buildArgs flags) >>= \case
133− [BuildTargetComponent (CLibName _)] -> print "OK. Lib (Build)" >> buildEMCCLib desc lbi
134− [BuildTargetComponent (CExeName _)] -> print "OK. Exe"
135− [BuildTargetComponent (CTestName _)] -> print "OK. Test"
136− [BuildTargetComponent (CBenchName _)] -> print "OK. Bench"
137− _ -> print "EEk!"
138− _ -> return ()
139−
140−postConfHook :: Args -> ConfigFlags -> PackageDescription -> LocalBuildInfo -> IO ()
141−postConfHook args flags desc lbi = do
142− case (takeFileName . programPath <$> lookupProgram ghcProgram (withPrograms lbi)) of
143− Just "js-unknown-ghcjs-ghc" -> do
144− -- always link the TH lib
145− -- this is technically only needed if the package uses TH somewhere.
146− linkEMCCTHLib desc lbi
147− -- only link the final lib if we want to produce an output.
148− readBuildTargets silent desc (configArgs flags) >>= \case
149− [BuildTargetComponent (CLibName _)] -> print "OK. Lib" >> postConf simpleUserHooks args flags desc lbi
150− [BuildTargetComponent (CExeName _)] -> print "OK. Exe (Link)" >> linkEMCCLib desc lbi
151− [BuildTargetComponent (CTestName _)] -> print "OK. Test (Link)" >> linkEMCCLib desc lbi
152− [BuildTargetComponent (CBenchName _)] -> print "OK. Bench (Link)" >> linkEMCCLib desc lbi
153− _ -> print "EEk!"
154− -- defer to default postConf. XXX we should do this for the above cases in linkEMCCLib as well!
155− _ -> postConf simpleUserHooks args flags desc lbi
156−
157−--
158−-- Injecting emcc/lib.js as needed.
159−--
160−-- We inject jsSources: dist/build/emcc/lib.js, the amalgamated emcc library,
161−-- into Executables, Tests and Benchmarks.
162−emccBuildHook :: PackageDescription -> LocalBuildInfo -> UserHooks -> BuildFlags -> IO ()
163−emccBuildHook desc lbi hooks flags = do
164− let lbi' = lbi { localPkgDescr = updatePackageDescription (localPkgDescr lbi) }
165− -- for some reason tests/benchmarks seem to rely on the description, whereas libraries and executables depend on the local build info...
166− desc' = updatePackageDescription desc
167− doesFileExist jsLib >>= \x -> print $ jsLib <> " " <> (if x then "exists" else "doesn't exist!")
168− doesFileExist jsLib >>= \case
169− True -> buildHook simpleUserHooks desc' lbi' hooks flags
170− False -> buildHook simpleUserHooks desc lbi hooks flags
171−
172− where
173− jsLib = "dist/build" </> "emcc" </> "lib.js"
174− extraOpts = PerCompilerFlavor [jsLib] []
175− -- don't inject it for libraries, only for exe, test, bench.
176− updateLibrary :: Library -> Library
177− updateLibrary = id -- lib@Library{ libBuildInfo = bi } = lib { libBuildInfo = bi { options = options bi <> extraOpts } }
178− updateExe :: Executable -> Executable
179− updateExe exe@Executable{ buildInfo = bi } = exe { buildInfo = bi { options = options bi <> extraOpts } }
180− updateTest :: TestSuite -> TestSuite
181− updateTest test@TestSuite{ testBuildInfo = bi } = test { testBuildInfo = bi { options = options bi <> extraOpts } }
182− updateBench :: Benchmark -> Benchmark
183− updateBench bench@Benchmark{ benchmarkBuildInfo = bi } = bench { benchmarkBuildInfo = bi { options = options bi <> extraOpts } }
184− updatePackageDescription :: PackageDescription -> PackageDescription
185− updatePackageDescription desc = desc
186− { library = updateLibrary <$> library desc
187− , executables = updateExe <$> executables desc
188− , testSuites = updateTest <$> testSuites desc
189− , benchmarks = updateBench <$> benchmarks desc
190− }
191−
192−--
193−-- Injecting EMCC<name> extra libraries as needed
194−-- this one we only need alongside library components; as it's shipped and installed
195−-- into the package databse. This is not necesary for executables/test/benchmarks, that
196−-- are not installed into the package database
197−--
198−emccCopyHook :: PackageDescription -> LocalBuildInfo -> UserHooks -> CopyFlags -> IO ()
199−emccCopyHook desc lbi hooks flags = do
200− emccLibs <- filterM (\l -> doesFileExist (buildDir lbi </> "lib" <> l <> ".js_a"))
201− [ "EMCC" <> (unPackageName . pkgName . package $ desc)
202− , "EMCC" <> (unPackageName . pkgName . package $ desc) <> ".exported" ]
203− print $ "EMCC extra lib files: " ++ intercalate ", " emccLibs
204− let lbi' = lbi { localPkgDescr = updatePackageDescription emccLibs (localPkgDescr lbi) }
205− desc' = updatePackageDescription emccLibs desc
206− copyHook simpleUserHooks desc' lbi' hooks flags
207− where
208− emccLib = (buildDir lbi) </> "libEMCC" <> (unPackageName . pkgName . package $ desc) <> ".js_a"
209− -- don't inject it for libraries, only for exe, test, bench.
210− updateLibrary :: [String] -> Library -> Library
211− updateLibrary extraLibs lib@Library{ libBuildInfo = bi } = lib { libBuildInfo = bi { extraBundledLibs = extraBundledLibs bi <> extraLibs } }
212− updatePackageDescription :: [String] -> PackageDescription -> PackageDescription
213− updatePackageDescription extraLibs desc = desc { library = updateLibrary extraLibs <$> library desc }
214−
215−emccRegHook :: PackageDescription -> LocalBuildInfo -> UserHooks -> RegisterFlags -> IO ()
216−emccRegHook desc lbi hooks flags = do
217− emccLibs <- filterM (\l -> doesFileExist (buildDir lbi </> "lib" <> l <> ".js_a"))
218− [ "EMCC" <> (unPackageName . pkgName . package $ desc)
219− , "EMCC" <> (unPackageName . pkgName . package $ desc) <> ".exported" ]
220− print $ "EMCC extra lib files: " ++ intercalate ", " emccLibs
221− let lbi' = lbi { localPkgDescr = updatePackageDescription emccLibs (localPkgDescr lbi) }
222− desc' = updatePackageDescription emccLibs desc
223− regHook simpleUserHooks desc' lbi' hooks flags
224− where
225− emccLib = (buildDir lbi) </> "libEMCC" <> (unPackageName . pkgName . package $ desc) <> ".js_a"
226− -- don't inject it for libraries, only for exe, test, bench.
227− updateLibrary :: [String] -> Library -> Library
228− updateLibrary extraLibs lib@Library{ libBuildInfo = bi } = lib { libBuildInfo = bi { extraBundledLibs = extraBundledLibs bi <> extraLibs } }
229− updatePackageDescription :: [String] -> PackageDescription -> PackageDescription
230− updatePackageDescription extraLibs desc = desc { library = updateLibrary extraLibs <$> library desc }
231−
232−emccUnregHook :: PackageDescription -> LocalBuildInfo -> UserHooks -> RegisterFlags -> IO ()
233−emccUnregHook desc lbi hooks flags = do
234− emccLibs <- filterM (\l -> doesFileExist (buildDir lbi </> "lib" <> l <> ".js_a"))
235− [ "EMCC" <> (unPackageName . pkgName . package $ desc)
236− , "EMCC" <> (unPackageName . pkgName . package $ desc) <> ".exported" ]
237− print $ "EMCC extra lib files: " ++ intercalate ", " emccLibs
238− let lbi' = lbi { localPkgDescr = updatePackageDescription emccLibs (localPkgDescr lbi) }
239− desc' = updatePackageDescription emccLibs desc
240− unregHook simpleUserHooks desc' lbi' hooks flags
241− where
242− emccLib = (buildDir lbi) </> "libEMCC" <> (unPackageName . pkgName . package $ desc) <> ".js_a"
243− -- don't inject it for libraries, only for exe, test, bench.
244− updateLibrary :: [String] -> Library -> Library
245− updateLibrary extraLibs lib@Library{ libBuildInfo = bi } = lib { libBuildInfo = bi { extraBundledLibs = extraBundledLibs bi <> extraLibs } }
246− updatePackageDescription :: [String] -> PackageDescription -> PackageDescription
247− updatePackageDescription extraLibs desc = desc { library = updateLibrary extraLibs <$> library desc }
248−--
249−-- Main
250−--
251−main :: IO ()
252−main = do
253− args <- getArgs
254− defaultMainWithHooksArgs emccHooks (injectEmar args)
255− where
256− injectEmar :: [String] -> [String]
257− injectEmar [] = []
258− injectEmar (x:xs) | "--with-gcc=" `isPrefixOf` x
259− , "emcc" `isSuffixOf` x
260− = x:("--with-emar="<> (takeDirectory $ drop 11 $ x) </> "emar"):injectEmar xs
261− injectEmar (x:xs) = x:injectEmar xs
262−
263− emccHooks :: UserHooks
264− emccHooks = simpleUserHooks
265− { postConf = postConfHook
266− , buildHook = emccBuildHook
267− , postBuild = postBuildHook
268− , copyHook = emccCopyHook
269− , regHook = emccRegHook
270− , unregHook = emccUnregHook
271− , hookedPrograms = [emarProgram]
272− }
builder/Setup.hsdeleted−2
@@ -1,2 +0,0 @@
1−import Distribution.Simple
2−main = defaultMain
builder/comp-builder.nix+91−303
@@ -1,4 +1,4 @@
1−{ pkgs, stdenv, buildPackages, ghc, lib, gobject-introspection ? null, haskellLib, makeConfigFiles, haddockBuilder, ghcForComponent, hsPkgs, compiler, runCommand, libffi, gmp, zlib, ncurses, nodejs }@defaults:
1+{ stdenv, buildPackages, ghc, lib, gobject-introspection ? null, haskellLib, makeConfigFiles, haddockBuilder, ghcForComponent, hsPkgs, compiler, runCommand, libffi, gmp, zlib, ncurses, numactl, nodejs }:
22lib.makeOverridable (
33let self =
44{ componentId
@@ -23,14 +23,6 @@ let self =
2323, preInstall ? component.preInstall , postInstall ? component.postInstall
2424, preHaddock ? component.preHaddock , postHaddock ? component.postHaddock
2525, shellHook ? ""
26−, configureAllComponents ? component.configureAllComponents ||
27− # When set, configure all the components in the package
28− # (not just the one we are building).
29− # Enable for tests in packages that use cabal-doctest.
30− ( haskellLib.isTest componentId &&
31− lib.any (x: x.identifier.name or "" == "cabal-doctest") package.setup-depends
32− )
33−, allComponent # Used when `configureAllComponents` is set to get a suitable configuration.
3426
3527, build-tools ? component.build-tools
3628, pkgconfig ? component.pkgconfig
@@ -47,98 +39,42 @@ let self =
4739 # ghc's internal linker seems to be broken on x86.
4840 && !(stdenv.hostPlatform.isMusl && !stdenv.hostPlatform.isx86)
4941, enableDeadCodeElimination ? component.enableDeadCodeElimination
50−, writeHieFiles ? component.writeHieFiles
51−
52−, ghcOptions ? component.ghcOptions
53−, contentAddressed ? component.contentAddressed
5442
5543# Options for Haddock generation
5644, doHaddock ? component.doHaddock # Enable haddock and hoogle generation
5745, doHoogle ? component.doHoogle # Also build a hoogle index
5846, hyperlinkSource ? component.doHyperlinkSource # Link documentation to the source code
5947, quickjump ? component.doQuickjump # Generate an index for interactive documentation navigation
60−, keepSource ? component.keepSource || configureAllComponents # Build from `source` output in the store then delete `dist`
48+, keepSource ? component.keepSource # Build from `source` output in the store then delete `dist`
6149, setupHaddockFlags ? component.setupHaddockFlags
6250
6351# Profiling
6452, enableLibraryProfiling ? component.enableLibraryProfiling
65−, enableProfiling ? component.enableProfiling
53+, enableExecutableProfiling ? component.enableExecutableProfiling
6654, profilingDetail ? component.profilingDetail
6755
68−# Coverage
69−, doCoverage ? component.doCoverage
70−
7156# Data
7257, enableSeparateDataOutput ? component.enableSeparateDataOutput
7358
74−# Prelinked ghci libraries; will make iserv faster; especially for static builds.
75−, enableLibraryForGhci ? true
76−
7759# Debug
7860, enableDebugRTS ? false
79−, enableDWARF ? false
80−
81−# This will only work with a custom TSan way enabled custom compiler
82−, enableTSanRTS ? false
83−
84−# LLVM
85−, useLLVM ? ghc.useLLVM
86−, smallAddressSpace ? false
87−
8861}@drvArgs:
8962
9063let
91− componentForSetup =
92− if configureAllComponents
93− then allComponent
94− else component;
95−
96− # Ignore attempts to include DWARF info when it is not possible
97− enableDWARF = drvArgs.enableDWARF or false
98− && stdenv.hostPlatform.isLinux
99− && !haskellLib.isCrossHost
100− && !stdenv.hostPlatform.isMusl
101− && builtins.compareVersions defaults.ghc.version "8.10.2" >= 0;
102−
103− ghc = (if enableDWARF then (x: x.dwarf) else (x: x)) (
104− (if smallAddressSpace then (x: x.smallAddressSpace) else (x: x)) defaults.ghc);
105− setup = (if enableDWARF then (x: x.dwarf) else (x: x)) (
106− (if smallAddressSpace then (x: x.smallAddressSpace) else (x: x)) drvArgs.setup);
107−
10864 # TODO fix cabal wildcard support so hpack wildcards can be mapped to cabal wildcards
109− canCleanSource = !(cabal-generator == "hpack" && !(package.cleanHpack or false));
110− # In order to support relative references to other packages we need to use
111− # the `origSrc` diretory as the root `src` for the derivation.
112− # We use `rootAndSubDir` here to split the cleaned source into a `cleanSrc.root`
113− # path (that respects the filtering) and a `cleanSrc.subDir` that
114− # is the sub directory in that root path that contains the package.
115− # `cleanSrc.subDir` is used in `prePatch` and `lib/cover.nix`.
116− cleanSrc = haskellLib.rootAndSubDir (if canCleanSource
117− then haskellLib.cleanCabalComponent package componentForSetup "${componentId.ctype}-${componentId.cname}" src
118− else
119− # We can clean out the siblings though to at least avoid changes to other packages
120− # from triggering a rebuild of this one.
121− # Passing `subDir` but not `includeSiblings = true;` will exclude anything not
122− # in the `subDir`.
123− if src ? origSrc && src ? filter && src.origSubDir or "" != ""
124− then haskellLib.cleanSourceWith {
125− name = src.name or "source";
126− src = src.origSrc;
127− subDir = lib.removePrefix "/" src.origSubDir;
128− inherit (src) filter;
129− }
130− else src);
65+ cleanSrc = if cabal-generator == "hpack" && !(package.cleanHpack or false)
66+ then builtins.trace ("Cleaning component source not supported for hpack package: " + name) src
67+ else haskellLib.cleanCabalComponent package component src;
13168
13269 nameOnly = "${package.identifier.name}-${componentId.ctype}-${componentId.cname}";
13370
13471 fullName = "${nameOnly}-${package.identifier.version}";
13572
136− needsProfiling = enableProfiling || enableLibraryProfiling;
73+ needsProfiling = enableExecutableProfiling || enableLibraryProfiling;
13774
13875 configFiles = makeConfigFiles {
139− component = componentForSetup;
14076 inherit (package) identifier;
141− inherit fullName flags needsProfiling enableDWARF;
77+ inherit component fullName flags needsProfiling;
14278 };
14379
14480 enableFeature = enable: feature:
@@ -148,39 +84,21 @@ let
14884
14985 finalConfigureFlags = lib.concatStringsSep " " (
15086 [ "--prefix=$out"
151− ] ++
152− # We don't specify this in 'commonConfigureFlags', as these are also
153− # used by haddock-builder.nix. If we do specify these options in
154− # commonConfigureFlags, then the haddock-builder will fail, because it
155− # sets its own outputs which *don't* include $hie
156− lib.optionals writeHieFiles [
157− "--ghc-option=-fwrite-ide-info" "--ghc-option=-hiedir$hie"
158− ] ++
159− (
160− # If configureAllComponents is set we should not specify the component
161− # and Setup will attempt to configure them all.
162− if configureAllComponents
163− then ["--enable-tests" "--enable-benchmarks"]
164− else ["${haskellLib.componentTarget componentId}"]
165− ) ++ [ "$(cat ${configFiles}/configure-flags)"
87+ "${haskellLib.componentTarget componentId}"
88+ "$(cat ${configFiles}/configure-flags)"
16689 ] ++ commonConfigureFlags);
16790
168− # From nixpkgs 20.09, the pkg-config exe has a prefix matching the ghc one
169− pkgConfigHasPrefix = builtins.compareVersions lib.version "20.09pre" >= 0;
170−
17191 commonConfigureFlags = ([
17292 # GHC
17393 "--with-ghc=${ghc.targetPrefix}ghc"
17494 "--with-ghc-pkg=${ghc.targetPrefix}ghc-pkg"
17595 "--with-hsc2hs=${ghc.targetPrefix}hsc2hs"
176− ] ++ lib.optional (pkgConfigHasPrefix && pkgconfig != [])
177− "--with-pkg-config=${ghc.targetPrefix}pkg-config"
178− ++ lib.optionals (stdenv.hasCC or (stdenv.cc != null))
96+ ] ++ lib.optionals (stdenv.hasCC or (stdenv.cc != null))
17997 ( # CC
18098 [ "--with-gcc=${stdenv.cc.targetPrefix}cc"
18199 ] ++
182100 # BINTOOLS
183− (if stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAndroid # might be better check to see if cc is clang/llvm?
101+ (if stdenv.hostPlatform.isLinux
184102 # use gold as the linker on linux to improve link times
185103 then [
186104 "--with-ld=${stdenv.cc.bintools.targetPrefix}ld.gold"
@@ -197,21 +115,19 @@ let
197115 (disableFeature dontStrip "executable-stripping")
198116 (disableFeature dontStrip "library-stripping")
199117 (enableFeature enableLibraryProfiling "library-profiling")
200− (enableFeature enableProfiling "profiling")
118+ (enableFeature enableExecutableProfiling "executable-profiling")
201119 (enableFeature enableStatic "static")
202120 (enableFeature enableShared "shared")
203− (enableFeature doCoverage "coverage")
204− (enableFeature enableLibraryForGhci "library-for-ghci")
205121 ] ++ lib.optionals (stdenv.hostPlatform.isMusl && (haskellLib.isExecutableType componentId)) [
206122 # These flags will make sure the resulting executable is statically linked.
207123 # If it uses other libraries it may be necessary for to add more
208− # `--ghc-option=-optl=-L` options to the `configureFlags` of the
124+ # `--ghc-option=-optl=-L` options to the `configurationFlags` of the
209125 # component.
210126 "--disable-executable-dynamic"
211127 "--ghc-option=-optl=-pthread"
212128 "--ghc-option=-optl=-static"
213129 ] ++ lib.optional enableSeparateDataOutput "--datadir=$data/share/${ghc.name}"
214− ++ lib.optional (enableLibraryProfiling || enableProfiling) "--profiling-detail=${profilingDetail}"
130+ ++ lib.optional (enableLibraryProfiling || enableExecutableProfiling) "--profiling-detail=${profilingDetail}"
215131 ++ lib.optional stdenv.hostPlatform.isLinux (enableFeature enableDeadCodeElimination "split-sections")
216132 ++ lib.optionals haskellLib.isCrossHost (
217133 map (arg: "--hsc2hs-option=" + arg) (["--cross-compile"] ++ lib.optionals (stdenv.hostPlatform.isWindows) ["--via-asm"])
@@ -219,22 +135,10 @@ let
219135 ++ configureFlags
220136 ++ (ghc.extraConfigureFlags or [])
221137 ++ lib.optional enableDebugRTS "--ghc-option=-debug"
222− ++ lib.optional enableTSanRTS "--ghc-option=-tsan"
223− ++ lib.optional enableDWARF "--ghc-option=-g3"
224− ++ lib.optionals useLLVM [
225− "--ghc-option=-fPIC" "--gcc-option=-fPIC"
226− ]
227− ++ map (o: ''--ghc${lib.optionalString (stdenv.hostPlatform.isGhcjs) "js"}-options="${o}"'') ghcOptions
228− ++ lib.optional (
229− # GHC 9.2 cross compiler built with older versions of GHC seem to have problems
230− # with unique conters. Perhaps because the name changed for the counters.
231− # TODO This work around to use `-j1` should be removed once we are able to build 9.2 with 9.2.
232− haskellLib.isCrossHost
233− && builtins.compareVersions defaults.ghc.version "9.2.1" >= 0
234− && builtins.compareVersions defaults.ghc.version "9.3" < 0)
235− "--ghc-options=-j1"
236138 );
237139
140+ setupGhcOptions = lib.optional (package.ghcOptions != null) '' --ghc-options="${package.ghcOptions}"'';
141+
238142 executableToolDepends =
239143 (lib.concatMap (c: if c.isHaskell or false
240144 then builtins.attrValues (c.components.exes or {})
@@ -245,8 +149,7 @@ let
245149 # work in the nix-shell. See ../doc/removing-with-package-wrapper.md.
246150 shellWrappers = ghcForComponent {
247151 componentName = fullName;
248− inherit configFiles enableDWARF;
249− inherit (component) plugins;
152+ inherit configFiles;
250153 };
251154
252155 # In order to let shell hooks make package-specific things like Hoogle databases
@@ -255,13 +158,13 @@ let
255158 else abort "shellHook should be a string or a function";
256159
257160 exeExt = if stdenv.hostPlatform.isGhcjs then ".jsexe/all.js" else
258− stdenv.hostPlatform.extensions.executable;
161+ if stdenv.hostPlatform.isWindows then ".exe" else "";
259162 exeName = componentId.cname + exeExt;
260163 testExecutable = "dist/build/${componentId.cname}/${exeName}";
261164
262165 # Attributes that are common to both the build and haddock derivations
263166 commonAttrs = {
264− src = cleanSrc.root;
167+ src = cleanSrc;
265168
266169 LANG = "en_US.UTF-8"; # GHC needs the locale configured during the Haddock phase.
267170 LC_ALL = "en_US.UTF-8";
@@ -270,27 +173,14 @@ let
270173
271174 SETUP_HS = setup + /bin/Setup;
272175
273− prePatch =
274− # If the package is in a sub directory `cd` there first.
275− # In some cases the `cleanSrc.subDir` will be empty and the `.cabal`
276− # file will be in the root of `src` (`cleanSrc.root`). This
277− # will happen when:
278− # * the .cabal file is in the projects `src.origSrc or src`
279− # * the package src was overridden with a value that does not
280− # include an `origSubDir`
281− (lib.optionalString (cleanSrc.subDir != "") ''
282− cd ${lib.removePrefix "/" cleanSrc.subDir}
283− ''
284− ) +
285− (if cabalFile != null
286− then ''cat ${cabalFile} > ${package.identifier.name}.cabal''
287− else
288− # When building hpack package we use the internal nix-tools
289− # (compiled with a fixed GHC version)
290− lib.optionalString (cabal-generator == "hpack") ''
291− ${buildPackages.haskell-nix.internal-nix-tools}/bin/hpack
292− ''
293− );
176+ prePatch = if (cabalFile != null)
177+ then ''cat ${cabalFile} > ${package.identifier.name}.cabal''
178+ else
179+ # When building hpack package we use the internal nix-tools
180+ # (compiled with a fixed GHC version)
181+ lib.optionalString (cabal-generator == "hpack") ''
182+ ${buildPackages.haskell-nix.internal-nix-tools}/bin/hpack
183+ '';
294184 }
295185 # patches can (if they like) depend on the version and revision of the package.
296186 // lib.optionalAttrs (patches != []) {
@@ -310,20 +200,14 @@ let
310200
311201 haddock = haddockBuilder {
312202 inherit componentId component package flags commonConfigureFlags
313− commonAttrs revision doHaddock
203+ commonAttrs revision setupGhcOptions doHaddock
314204 doHoogle hyperlinkSource quickjump setupHaddockFlags
315205 needsProfiling configFiles preHaddock postHaddock pkgconfig;
316206
317207 componentDrv = drv;
318208 };
319209
320− contentAddressedAttrs = lib.optionalAttrs contentAddressed {
321− __contentAddressed = true;
322− outputHashMode = "recursive";
323− outputHashAlgo = "sha256";
324− };
325−
326− drv = stdenv.mkDerivation (commonAttrs // contentAddressedAttrs // {
210+ drv = stdenv.mkDerivation (commonAttrs // {
327211 pname = nameOnly;
328212 inherit (package.identifier) version;
329213
@@ -335,13 +219,9 @@ let
335219 passthru = {
336220 inherit (package) identifier;
337221 config = component;
338− srcSubDir = cleanSrc.subDir;
339− srcSubDirPath = cleanSrc.root + cleanSrc.subDir;
340− inherit configFiles executableToolDepends exeName enableDWARF;
341− exePath = drv + "/bin/${exeName}";
222+ inherit configFiles executableToolDepends cleanSrc exeName;
342223 env = shellWrappers;
343224 profiled = self (drvArgs // { enableLibraryProfiling = true; });
344− dwarf = self (drvArgs // { enableDWARF = true; });
345225 } // lib.optionalAttrs (haskellLib.isLibrary componentId) ({
346226 inherit haddock;
347227 inherit (haddock) haddockDir; # This is null if `doHaddock = false`
@@ -354,30 +234,22 @@ let
354234 meta = {
355235 homepage = package.homepage or "";
356236 description = package.synopsis or "";
357− license = haskellLib.cabalToNixpkgsLicense package.license;
358− platforms = if platforms == null then lib.platforms.all else platforms;
359− } // lib.optionalAttrs (haskellLib.isExecutableType componentId) {
360− # Set main executable name for executable components, so that `nix run` in
361− # nix flakes will work correctly. When not set, `nix run` would (typically
362− # erroneously) deduce the executable name from the derivation name and
363− # attempt to run, for example,
364− # `/nix/store/...-project-exe-app-0.1.0.0/bin/project-exe-app` instead of
365− # `/nix/store/...-project-exe-app-0.1.0.0/bin/app`.
366− mainProgram = exeName;
237+ license =
238+ let
239+ license-map = import ../lib/cabal-licenses.nix lib;
240+ in license-map.${package.license} or
241+ (builtins.trace "WARNING: license \"${package.license}\" not found" license-map.LicenseRef-OtherLicense);
242+ platforms = if platforms == null then stdenv.lib.platforms.all else platforms;
367243 };
368244
369245 propagatedBuildInputs =
370246 frameworks # Frameworks will be needed at link time
371247 # Not sure why pkgconfig needs to be propagatedBuildInputs but
372248 # for gi-gtk-hs it seems to help.
373− ++ builtins.concatLists pkgconfig
374− ++ lib.optionals (stdenv.hostPlatform.isWindows)
375− (lib.flatten component.libs
376− ++ map haskellLib.dependToLib component.depends);
249+ ++ builtins.concatLists pkgconfig;
377250
378− buildInputs = lib.optionals (!stdenv.hostPlatform.isWindows)
379− (lib.flatten component.libs
380− ++ map haskellLib.dependToLib component.depends);
251+ buildInputs = component.libs
252+ ++ map (d: d.components.library or d) component.depends;
381253
382254 nativeBuildInputs =
383255 [shellWrappers buildPackages.removeReferencesTo]
@@ -385,24 +257,14 @@ let
385257
386258 outputs = ["out" ]
387259 ++ (lib.optional enableSeparateDataOutput "data")
388− ++ (lib.optional keepSource "source")
389− ++ (lib.optional writeHieFiles "hie");
390−
391− prePatch =
392− # emcc is very slow if it cannot cache stuff in $HOME
393− (lib.optionalString (stdenv.hostPlatform.isGhcjs) ''
394− export HOME=$(mktemp -d)
395− '') +
396− (lib.optionalString (!canCleanSource) ''
397− echo "Cleaning component source not supported, leaving it un-cleaned"
398− '') +
260+ ++ (lib.optional keepSource "source");
261+
262+ configurePhase =
399263 (lib.optionalString keepSource ''
400264 cp -r . $source
401265 cd $source
402266 chmod -R +w .
403− '') + commonAttrs.prePatch;
404−
405− configurePhase = ''
267+ '') + ''
406268 runHook preConfigure
407269 echo Configure flags:
408270 printf "%q " ${finalConfigureFlags}
@@ -411,36 +273,12 @@ let
411273 runHook postConfigure
412274 '';
413275
414− buildPhase =
415− # It seems that by the time the iserv wrapper specifiec by `--ghc-option=-pgmi` runs
416− # all the array environment variables are removed from the environment. To get a list
417− # of all the locations a DLLs might be present we need access to pkgsHostTarget.
418− # Adding a string version of the list array of nix store paths allows us to get that
419− # list when we need it.
420− (lib.optionalString stdenv.hostPlatform.isWindows ''
421− export pkgsHostTargetAsString="''${pkgsHostTarget[@]}"
422− '') +
423− # The following could be refactored but would lead to many rebuilds
424−
425− # In case of content addressed components we need avoid parallel building (passing -j1)
426− # in order to have a deterministic output and therefore avoid potential situations
427− # where the binary cache becomes useless
428− # See also https://gitlab.haskell.org/ghc/ghc/-/issues/12935
429− (if contentAddressed then ''
430− runHook preBuild
431− $SETUP_HS build ${haskellLib.componentTarget componentId} -j1 ${lib.concatStringsSep " " setupBuildFlags}
432− runHook postBuild
433− '' else if stdenv.hostPlatform.isGhcjs then ''
434− runHook preBuild
435− # https://gitlab.haskell.org/ghc/ghc/issues/9221
436− $SETUP_HS build ${haskellLib.componentTarget componentId} ${lib.concatStringsSep " " setupBuildFlags}
437− runHook postBuild
438− '' else ''
439− runHook preBuild
440− # https://gitlab.haskell.org/ghc/ghc/issues/9221
441− $SETUP_HS build ${haskellLib.componentTarget componentId} -j$(($NIX_BUILD_CORES > 4 ? 4 : $NIX_BUILD_CORES)) ${lib.concatStringsSep " " setupBuildFlags}
442− runHook postBuild
443− '');
276+ buildPhase = ''
277+ runHook preBuild
278+ # https://gitlab.haskell.org/ghc/ghc/issues/9221
279+ $SETUP_HS build ${haskellLib.componentTarget componentId} -j$(($NIX_BUILD_CORES > 4 ? 4 : $NIX_BUILD_CORES)) ${lib.concatStringsSep " " (setupBuildFlags ++ setupGhcOptions)}
280+ runHook postBuild
281+ '';
444282
445283 # Note: Cabal does *not* copy test executables during the `install` phase.
446284 #
@@ -454,65 +292,49 @@ let
454292 target-pkg-and-db = "${ghc.targetPrefix}ghc-pkg -v0 --package-db $out/package.conf.d";
455293 in ''
456294 runHook preInstall
457− $SETUP_HS copy ${lib.concatStringsSep " " (
458− setupInstallFlags
459− ++ lib.optional configureAllComponents
460− (haskellLib.componentTarget componentId)
461− )}
295+ $SETUP_HS copy ${lib.concatStringsSep " " setupInstallFlags}
462296 ${lib.optionalString (haskellLib.isLibrary componentId) ''
463297 $SETUP_HS register --gen-pkg-config=${name}.conf
464298 ${ghc.targetPrefix}ghc-pkg -v0 init $out/package.conf.d
465− ${ghc.targetPrefix}ghc-pkg -v0 --package-db ${configFiles}/${configFiles.packageCfgDir} -f $out/package.conf.d register ${name}.conf
299+ if [ -d "${name}.conf" ]; then
300+ for pkg in ${name}.conf/*; do
301+ ${ghc.targetPrefix}ghc-pkg -v0 --package-db ${configFiles}/${configFiles.packageCfgDir} -f $out/package.conf.d register "$pkg"
302+ done
303+ elif [ -e "${name}.conf" ]; then
304+ ${ghc.targetPrefix}ghc-pkg -v0 --package-db ${configFiles}/${configFiles.packageCfgDir} -f $out/package.conf.d register ${name}.conf
305+ fi
466306
467307 mkdir -p $out/exactDep
468308 touch $out/exactDep/configure-flags
469309 touch $out/exactDep/cabal.config
470310 touch $out/envDep
471311
472− ${ # The main library in a package has the same name as the package
473− if package.identifier.name == componentId.cname
474− then ''
475− if id=$(${target-pkg-and-db} field ${package.identifier.name} id --simple-output); then
476− echo "--dependency=${package.identifier.name}=$id" >> $out/exactDep/configure-flags
477− echo "package-id $id" >> $out/envDep
478− else
479− echo 'ERROR: ${package.identifier.name} id could not be found with ${target-pkg-and-db}'
480− exit 1
481− fi
482− if ver=$(${target-pkg-and-db} field ${package.identifier.name} version --simple-output); then
483− echo "constraint: ${package.identifier.name} == $ver" >> $out/exactDep/cabal.config
484− echo "constraint: ${package.identifier.name} installed" >> $out/exactDep/cabal.config
485− else
486− echo 'ERROR: ${package.identifier.name} version could not be found with ${target-pkg-and-db}'
487− exit 1
488− fi
489− ''
490− else
491− # If the component name is not the package name this must be a sublib.
492− # As we build sublibs separately, the following query should be safe.
493− (''
494− if id=$(${target-pkg-and-db} field "z-${package.identifier.name}-z-*" id --simple-output); then
495− name=$(${target-pkg-and-db} field "z-${package.identifier.name}-z-*" name --simple-output)
496− echo "--dependency=''${name#z-${package.identifier.name}-z-}=$id" >> $out/exactDep/configure-flags
497− ''
498− # Allow `package-name:sublib-name` to work in `build-depends`
499− # by adding the same `--dependency` again, but with the package
500− # name added.
501− + ''
502− echo "--dependency=${package.identifier.name}:''${name#z-${package.identifier.name}-z-}=$id" >> $out/exactDep/configure-flags
503− else
504− echo 'ERROR: ${package.identifier.name} id could not be found with ${target-pkg-and-db}'
505− exit 1
506− fi
507− '')
508− }
312+ if id=$(${target-pkg-and-db} field ${package.identifier.name} id --simple-output); then
313+ echo "--dependency=${package.identifier.name}=$id" >> $out/exactDep/configure-flags
314+ echo "package-id $id" >> $out/envDep
315+ elif id=$(${target-pkg-and-db} field "z-${package.identifier.name}-z-*" id --simple-output); then
316+ name=$(${target-pkg-and-db} field "z-${package.identifier.name}-z-*" name --simple-output)
317+ # so we are dealing with a sublib. As we build sublibs separately, the above
318+ # query should be safe.
319+ echo "--dependency=''${name#z-${package.identifier.name}-z-}=$id" >> $out/exactDep/configure-flags
320+ else
321+ echo 'ERROR: ${package.identifier.name} id could not be found with ${target-pkg-and-db}'
322+ exit 0
323+ fi
324+ if ver=$(${target-pkg-and-db} field ${package.identifier.name} version --simple-output); then
325+ echo "constraint: ${package.identifier.name} == $ver" >> $out/exactDep/cabal.config
326+ echo "constraint: ${package.identifier.name} installed" >> $out/exactDep/cabal.config
327+ else
328+ echo 'ERROR: ${package.identifier.name} version could not be found with ${target-pkg-and-db}'
329+ exit 0
330+ fi
509331 ''}
510332 ${(lib.optionalString (haskellLib.isTest componentId || haskellLib.isBenchmark componentId) ''
511333 mkdir -p $out/bin
512334 if [ -f ${testExecutable} ]; then
513335 mkdir -p $(dirname $out/bin/${exeName})
514336 ${if stdenv.hostPlatform.isGhcjs then ''
515− cat <(echo \#!${lib.getBin buildPackages.nodejs-12_x}/bin/node) ${testExecutable} >| $out/bin/${exeName}
337+ cat <(echo \#!${lib.getBin buildPackages.nodejs}/bin/node) ${testExecutable} >| $out/bin/${exeName}
516338 chmod +x $out/bin/${exeName}
517339 '' else ''
518340 cp -r ${testExecutable} $(dirname $out/bin/${exeName})
@@ -520,64 +342,30 @@ let
520342 fi
521343 '')
522344 # In case `setup copy` did not create this
523− + (lib.optionalString enableSeparateDataOutput ''
524− mkdir -p $data
525− '')
526− + (lib.optionalString (stdenv.hostPlatform.isWindows && (haskellLib.mayHaveExecutable componentId)) (''
345+ + (lib.optionalString enableSeparateDataOutput "mkdir -p $data")
346+ + (lib.optionalString (stdenv.hostPlatform.isWindows && (haskellLib.mayHaveExecutable componentId)) ''
527347 echo "Symlink libffi and gmp .dlls ..."
528348 for p in ${lib.concatStringsSep " " [ libffi gmp ]}; do
529349 find "$p" -iname '*.dll' -exec ln -s {} $out/bin \;
530350 done
531− ''
532351 # symlink all .dlls into the local directory.
533− + ''
534− for p in $pkgsHostTargetAsString; do
535− find "$p" -iname '*.dll' -exec ln -s {} $out/bin \;
536− find "$p" -iname '*.dll.a' -exec ln -s {} $out/bin \;
352+ # we ask ghc-pkg for *all* dynamic-library-dirs and then iterate over the unique set
353+ # to symlink over dlls as needed.
354+ echo "Symlink library dependencies..."
355+ for libdir in $(x86_64-pc-mingw32-ghc-pkg --package-db=$packageConfDir field "*" dynamic-library-dirs --simple-output|xargs|sed 's/ /\n/g'|sort -u); do
356+ if [ -d "$libdir" ]; then
357+ find "$libdir" -iname '*.dll' -exec ln -s {} $out/bin \;
358+ fi
537359 done
538− ''))
539− + (lib.optionalString doCoverage ''
540− mkdir -p $out/share
541− cp -r dist/hpc $out/share
542− cp dist/setup-config $out/
543360 '')
544361 }
545362 runHook postInstall
546− '' + (
547− # Keep just the autogen files and package.conf.inplace package
548− # DB (probably empty unless this is a library component).
549− # We also have to remove any refernces to $out to avoid
550− # circular references.
551− lib.optionalString (configureAllComponents || keepSource) ''
552− mv dist dist-tmp-dir
553− mkdir -p dist/build
554− if [ -d dist-tmp-dir/build/${componentId.cname}/autogen ]; then
555− mv dist-tmp-dir/build/${componentId.cname}/autogen dist/build/
556− elif [ -d dist-tmp-dir/build/autogen ]; then
557− mv dist-tmp-dir/build/autogen dist/build/
558− fi
559− mv dist-tmp-dir/package.conf.inplace dist/
560− if [ -d dist/build/autogen ]; then
561− remove-references-to -t $out dist/build/autogen/*
562− fi
563− rm -rf dist-tmp-dir
564− ''
565− ) + (lib.optionalString (keepSource && haskellLib.isLibrary componentId) ''
566− remove-references-to -t $out ${name}.conf
363+ '' + (lib.optionalString keepSource ''
364+ rm -rf dist
567365 '') + (lib.optionalString (haskellLib.isTest componentId) ''
568366 echo The test ${package.identifier.name}.components.tests.${componentId.cname} was built. To run the test build ${package.identifier.name}.checks.${componentId.cname}.
569367 '');
570368
571− doInstallCheck = true;
572− installCheckPhase = lib.optionalString (haskellLib.isLibrary componentId) ''
573− if test -n "$(shopt -s nullglob; echo $out/package.conf.d/${name}-*.conf)"; then
574− echo $out/package.conf.d/${name}-*.conf " is present"
575− else
576− echo "ERROR: $out/package.conf.d/${name}-*.conf was not created"
577− exit 1
578− fi
579− '';
580−
581369 shellHook = ''
582370 export PATH="${shellWrappers}/bin:$PATH"
583371 ${shellHookApplied}
@@ -590,7 +378,7 @@ let
590378 preBuild postBuild
591379 preInstall postInstall;
592380 }
593− // lib.optionalAttrs (hardeningDisable != [] || stdenv.hostPlatform.isMusl) {
594− hardeningDisable = hardeningDisable ++ lib.optional stdenv.hostPlatform.isMusl "pie";
381+ // lib.optionalAttrs (hardeningDisable != []) {
382+ inherit hardeningDisable;
595383 });
596384in drv; in self)
builder/default.nix+17−25
@@ -1,4 +1,4 @@
1−{ pkgs, buildPackages, evalPackages, stdenv, lib, haskellLib, ghc, compiler-nix-name, fetchurl, pkgconfig, nonReinstallablePkgs, hsPkgs, compiler }:
1+{ pkgs, buildPackages, stdenv, lib, haskellLib, ghc, fetchurl, pkgconfig, nonReinstallablePkgs, hsPkgs, compiler }:
22
33let
44 # Builds a single component of a package.
@@ -17,8 +17,8 @@ let
1717 # in the native case, it would be the same in the cross case however
1818 # we *really* want to build the Setup.hs on the build machine and not
1919 # have the stdenv confuse it with the target/host env.
20− inherit (buildPackages) stdenv pkgconfig;
21− inherit buildPackages;
20+ inherit (buildPackages) stdenv;
21+ inherit buildPackages pkgconfig;
2222 inherit haskellLib nonReinstallablePkgs makeSetupConfigFiles;
2323 };
2424
@@ -26,9 +26,8 @@ let
2626 # component builder and for nix-shells.
2727 ghcForComponent = import ./ghc-for-component-wrapper.nix {
2828 inherit lib ghc haskellLib;
29− inherit (buildPackages) stdenv;
30− inherit (buildPackages.buildPackages) runCommand makeWrapper;
31− inherit (buildPackages.buildPackages.xorg) lndir;
29+ inherit (buildPackages) stdenv runCommand makeWrapper;
30+ inherit (buildPackages.xorg) lndir;
3231 };
3332
3433 # Builds a derivation which contains a ghc package-db of
@@ -45,29 +44,22 @@ let
4544
4645 hoogleLocal = let
4746 nixpkgsHoogle = import (pkgs.path + /pkgs/development/haskell-modules/hoogle.nix);
48− in { packages ? [], hoogle ? pkgs.buildPackages.haskell-nix.tool "ghc8107" "hoogle" {
49− inherit evalPackages;
50− version = "5.0.18.3";
47+ in { packages ? [], hoogle ? pkgs.buildPackages.haskell-nix.tool compiler.nix-name "hoogle" {
48+ version = "5.0.17.15";
5149 index-state = pkgs.haskell-nix.internalHackageIndexState;
5250 }
5351 }:
54− let
55− haskellPackages = {
56− # For musl we can use haddock from the buildGHC
57− ghc = if stdenv.hostPlatform.isLinux && stdenv.targetPlatform.isMusl && !haskellLib.isNativeMusl
58− then ghc.buildGHC
59− else ghc;
60− inherit packages hoogle;
61− };
62− in if lib.versionAtLeast lib.trivial.release "22.05"
63− then haskellLib.weakCallPackage pkgs nixpkgsHoogle {
64− inherit haskellPackages;
65− } (p: p.packages)
66− else haskellLib.weakCallPackage pkgs nixpkgsHoogle haskellPackages;
52+ haskellLib.weakCallPackage pkgs nixpkgsHoogle {
53+ # For musl we can use haddock from the buildGHC
54+ ghc = if stdenv.hostPlatform.isLinux && stdenv.targetPlatform.isMusl && !haskellLib.isNativeMusl
55+ then ghc.buildGHC
56+ else ghc;
57+ inherit packages hoogle;
58+ };
6759
6860 # Same as haskellPackages.shellFor in nixpkgs.
6961 shellFor = haskellLib.weakCallPackage pkgs ./shell-for.nix {
70− inherit hsPkgs ghcForComponent makeConfigFiles hoogleLocal haskellLib buildPackages evalPackages compiler;
62+ inherit hsPkgs ghcForComponent makeConfigFiles hoogleLocal haskellLib buildPackages compiler;
7163 inherit (buildPackages) glibcLocales;
7264 };
7365
@@ -83,10 +75,10 @@ in {
8375 # Build a Haskell package from its config.
8476 # TODO: this pkgs is the adjusted pkgs, but pkgs.pkgs is unadjusted
8577 build-package = haskellLib.weakCallPackage pkgs ./hspkg-builder.nix {
86− inherit haskellLib ghc compiler-nix-name comp-builder setup-builder;
78+ inherit haskellLib ghc comp-builder setup-builder;
8779 };
8880
89− inherit shellFor makeConfigFiles;
81+ inherit shellFor;
9082
9183 ghcWithPackages = withPackages { withHoogle = false; };
9284 ghcWithHoogle = withPackages { withHoogle = true; };
builder/ghc-for-component-wrapper.nix+13−65
@@ -7,18 +7,14 @@
77# database.
88
99{ lib, stdenv, ghc, runCommand, lndir, makeWrapper, haskellLib
10−}@defaults:
10+}:
1111
1212{ componentName # Full derivation name of the component
1313, configFiles # The component's "config" derivation
1414, postInstall ? ""
15−, enableDWARF
16−, plugins
1715}:
1816
1917let
20− ghc = if enableDWARF then defaults.ghc.dwarf else defaults.ghc;
21−
2218 inherit (configFiles) targetPrefix ghcCommand ghcCommandCaps packageCfgDir;
2319 libDir = "$out/${configFiles.libDir}";
2420 docDir = "$out/share/doc/ghc/html";
@@ -38,70 +34,27 @@ in runCommand "${componentName}-${ghc.name}-env" {
3834 ''
3935 . ${makeWrapper}/nix-support/setup-hook
4036
41− ''
42− # Start with a ghc and remove all of the package directories
43− + ''
37+ # Start with a ghc...
4438 mkdir -p $out/bin
4539 ${lndir}/bin/lndir -silent ${ghc} $out
40+ # ... remove all of the package directories
4641 rm -rf ${libDir}/*/
47− ''
48− # ... but retain the lib/ghc/bin directory. This contains `unlit' and friends.
49− + ''
42+ # ... but retain the lib/ghc/bin directory. This contains `unlit' and friends.
5043 ln -s ${ghc}/lib/${ghcCommand}-${ghc.version}/bin ${libDir}
51− ''
52− # ... and the ghcjs shim's if they are available ...
53− + ''
44+ # ... and the ghcjs shim's if they are available ...
5445 if [ -d ${ghc}/lib/${ghcCommand}-${ghc.version}/shims ]; then
5546 ln -s ${ghc}/lib/${ghcCommand}-${ghc.version}/shims ${libDir}
5647 fi
57− ''
58− # ... and node modules ...
59− + ''
48+ # ... and node modules ...
6049 if [ -d ${ghc}/lib/${ghcCommand}-${ghc.version}/ghcjs-node ]; then
6150 ln -s ${ghc}/lib/${ghcCommand}-${ghc.version}/ghcjs-node ${libDir}
6251 fi
63− ''
64− # Replace the package database with the one from target package config.
65− + ''
52+ # Replace the package database with the one from target package config.
6653 ln -s ${configFiles}/${packageCfgDir} $out/${packageCfgDir}
6754
68− ''
69− # Set the GHC_PLUGINS environment variable according to the plugins for the component.
70− # GHC will automatically load the relevant symbols from the given libraries and
71− # initialize them with the given arguments.
72− #
73− # GHC_PLUGINS is a `read`able [(FilePath,String,String,[String])], where the
74− # first component is a path to the shared library, the second is the package ID,
75− # the third is the module name, and the fourth is the plugin arguments.
76− + ''
77− GHC_PLUGINS="["
78− LIST_PREFIX=""
79− ${builtins.concatStringsSep "\n" (map (plugin: ''
80− id=$(${ghc}/bin/ghc-pkg --package-db ${plugin.library}/package.conf.d field ${plugin.library.package.identifier.name} id --simple-output)
81− lib_dir=$(${ghc}/bin/ghc-pkg --package-db ${plugin.library}/package.conf.d field ${plugin.library.package.identifier.name} dynamic-library-dirs --simple-output)
82− lib_base=$(${ghc}/bin/ghc-pkg --package-db ${plugin.library}/package.conf.d field ${plugin.library.package.identifier.name} hs-libraries --simple-output)
83− lib="$(echo ''${lib_dir}/lib''${lib_base}*)"
84− GHC_PLUGINS="''${GHC_PLUGINS}''${LIST_PREFIX}(\"''${lib}\",\"''${id}\",\"${plugin.moduleName}\",["
85− LIST_PREFIX=""
86− ${builtins.concatStringsSep "\n" (map (arg: ''
87− GHC_PLUGINS="''${GHC_PLUGINS}''${LIST_PREFIX}\"${arg}\""
88− LIST_PREFIX=","
89− '') plugin.args)}
90− GHC_PLUGINS="''${GHC_PLUGINS}])"
91− LIST_PREFIX=","
92− '') plugins)}
93− GHC_PLUGINS="''${GHC_PLUGINS}]"
94−
95− ''
96− # now the tricky bit. For GHCJS (to make plugins work), we need a special
97− # file called ghc_libdir. That points to the build ghc's lib.
98− + ''
99− echo "${ghc.buildGHC or ghc}/lib/${(ghc.buildGHC or ghc).name}" > "${libDir}/ghc_libdir"
55+ # Wrap compiler executables with correct env variables.
56+ # The NIX_ variables are used by the patched Paths_ghc module.
10057
101− ''
102− # Wrap compiler executables with correct env variables.
103− # The NIX_ variables are used by the patched Paths_ghc module.
104− + ''
10558 for prg in ${ghcCommand} ${ghcCommand}i ${ghcCommand}-${ghc.version} ${ghcCommand}i-${ghc.version}; do
10659 if [[ -x "${ghc}/bin/$prg" ]]; then
10760 rm -f $out/bin/$prg
@@ -110,7 +63,6 @@ in runCommand "${componentName}-${ghc.name}-env" {
11063 --set "NIX_${ghcCommandCaps}" "$out/bin/${ghcCommand}" \
11164 --set "NIX_${ghcCommandCaps}PKG" "$out/bin/${ghcCommand}-pkg" \
11265 --set "NIX_${ghcCommandCaps}_DOCDIR" "${docDir}" \
113− --set "GHC_PLUGINS" "$GHC_PLUGINS" \
11466 --set "NIX_${ghcCommandCaps}_LIBDIR" "${libDir}"
11567 fi
11668 done
@@ -123,14 +75,11 @@ in runCommand "${componentName}-${ghc.name}-env" {
12375 --set "NIX_${ghcCommandCaps}" "$out/bin/${ghcCommand}" \
12476 --set "NIX_${ghcCommandCaps}PKG" "$out/bin/${ghcCommand}-pkg" \
12577 --set "NIX_${ghcCommandCaps}_DOCDIR" "${docDir}" \
126− --set "GHC_PLUGINS" "$GHC_PLUGINS" \
12778 --set "NIX_${ghcCommandCaps}_LIBDIR" "${libDir}"
12879 fi
12980 done
13081
131− ''
132− # Wrap haddock, if the base GHC provides it.
133− + ''
82+ # Wrap haddock, if the base GHC provides it.
13483 if [[ -x "${haddock}/bin/haddock" ]]; then
13584 rm -f $out/bin/haddock
13685 makeWrapper ${haddock}/bin/haddock $out/bin/haddock \
@@ -138,10 +87,9 @@ in runCommand "${componentName}-${ghc.name}-env" {
13887 --set "NIX_${ghcCommandCaps}_LIBDIR" "${libDir}"
13988 fi
14089
141− ''
142− # Point ghc-pkg to the package database of the component using the
143− # --global-package-db flag.
144− + ''
90+ # Point ghc-pkg to the package database of the component using the
91+ # --global-package-db flag.
92+
14593 for prg in ${ghcCommand}-pkg ${ghcCommand}-pkg-${ghc.version}; do
14694 if [[ -x "${ghc}/bin/$prg" ]]; then
14795 rm -f $out/bin/$prg
builder/haddock-builder.nix+2−4
@@ -16,6 +16,7 @@
1616, hyperlinkSource
1717, quickjump
1818, setupHaddockFlags
19+, setupGhcOptions
1920
2021, needsProfiling
2122, componentDrv
@@ -41,7 +42,6 @@ let
4142 inherit (package) identifier;
4243 inherit component fullName flags needsProfiling;
4344 chooseDrv = p: p.haddock;
44− inherit (componentDrv) enableDWARF;
4545 };
4646
4747 finalConfigureFlags = lib.concatStringsSep " " (
@@ -55,8 +55,6 @@ let
5555 shellWrappers = ghcForComponent {
5656 componentName = fullName;
5757 configFiles = docsConfigFiles;
58− inherit (componentDrv) enableDWARF;
59− inherit (component) plugins;
6058 };
6159
6260 drv = stdenv.mkDerivation (commonAttrs // {
@@ -110,7 +108,7 @@ let
110108 ${lib.optionalString doHoogle "--hoogle"} \
111109 ${lib.optionalString hyperlinkSource "--hyperlink-source"} \
112110 ${lib.optionalString quickjump "--quickjump"} \
113− ${lib.concatStringsSep " " setupHaddockFlags}
111+ ${lib.concatStringsSep " " (setupHaddockFlags ++ setupGhcOptions)}
114112 }
115113 runHook postHaddock
116114 '';
builder/hspkg-builder.nix+14−44
@@ -1,4 +1,4 @@
1−{ pkgs, buildPackages, stdenv, lib, haskellLib, ghc, compiler-nix-name, fetchurl, runCommand, comp-builder, setup-builder }:
1+{ pkgs, buildPackages, stdenv, lib, haskellLib, ghc, fetchurl, runCommand, comp-builder, setup-builder }:
22
33config:
44{ flags
@@ -23,44 +23,21 @@ assert (if ghc.isHaskellNixCompiler or false then true
2323 + pkgs.lib.optionalString (name != null) (" for " + name)));
2424
2525let
26− # Some packages bundled with GHC are not the same as they are in hackage.
27− bundledSrc = {
28− # These are problematic because the hackage versions will not install and are part of LTS.
29− "ghc902/stm-2.5.0.0" = "/libraries/stm";
30− "ghc902/filepath-1.4.2.1" = "/libraries/filepath";
31− }."${compiler-nix-name}/${name}" or null;
32− src = if bundledSrc == null then pkg.src else ghc.configured-src + bundledSrc;
33− cabalFile = if revision == null || revision == 0 || bundledSrc != null then null else
26+ cabalFile = if revision == null || revision == 0 then null else
3427 fetchurl {
3528 name = "${name}-${toString revision}.cabal";
3629 url = "https://hackage.haskell.org/package/${name}/revision/${toString revision}.cabal";
3730 sha256 = revisionSha256;
3831 };
3932
40− defaultSetupSrc = if stdenv.hostPlatform.isGhcjs then ./Setup.ghcjs.hs else ./Setup.hs;
41−
42− # This is the `Cabal` library that was built for `cabal-install` to use.
43− # It makes sense to use this version (when possible) because it will match the behavior of
44− # building with `cabal-install` (including fixes that may not be in the
45− # version of Cabal bundled with GHC).
46− cabalFromCabalInstall = buildPackages.haskell-nix.cabal-install-unchecked.${compiler-nix-name}.project.hsPkgs.Cabal.components.library;
47−
48− # Check there is no chance we are building `cabalFromCabalInstall`. Using `cabalFromCabalInstall`
49− # to build itseld would cause infinite recursion.
50− useCabalFromCabalInstall =
51− # `cabalFromCabalInstall` is not cross compiled
52− stdenv.buildPlatform != stdenv.hostPlatform
53− ||
54− # These are the dependencies of `Cabal`
55− !builtins.elem package.identifier.name
56− ["nix-tools" "alex" "happy" "hscolour" "Cabal" "bytestring" "aeson" "time"
57− "filepath" "base-compat-batteries" "base-compat" "unix" "directory" "transformers"
58− "containers" "binary" "mtl" "text" "process" "parsec"];
59−
60− defaultSetup = setup-builder ({
33+ defaultSetupSrc = builtins.toFile "Setup.hs" ''
34+ import Distribution.Simple
35+ main = defaultMain
36+ '';
37+ defaultSetup = setup-builder {
6138 name = "${ghc.targetPrefix}default-Setup";
6239 component = {
63− depends = config.setup-depends ++ lib.optional useCabalFromCabalInstall cabalFromCabalInstall;
40+ depends = config.setup-depends;
6441 libs = [];
6542 frameworks = [];
6643 doExactConfig = false;
@@ -88,19 +65,12 @@ let
8865 synopsis = null;
8966 license = "MIT";
9067 };
91− src = null;
92− cleanSrc = buildPackages.runCommand "default-Setup-src" {} ''
68+ src = null; cleanSrc = buildPackages.runCommand "default-Setup-src" {} ''
9369 mkdir $out
9470 cat ${defaultSetupSrc} > $out/Setup.hs
9571 '';
9672 inherit defaultSetupSrc;
97− } // lib.optionalAttrs useCabalFromCabalInstall {
98− # This is needed so that we don't get duplicate packages when we
99− # add a custom Cabal package to the dependencies. That way custom
100− # setups won't complain about e.g. binary from the Cabal dependencies
101− # and binary from the global package-db.
102− nonReinstallablePkgs = [];
103− });
73+ };
10474
10575 # buildPackages.runCommand "default-Setup" { nativeBuildInputs = [(ghc.passthru.buildGHC or ghc)]; } ''
10676 # cat ${defaultSetupSrc} > Setup.hs
@@ -120,18 +90,18 @@ let
12090 inherit (pkg) preUnpack postUnpack;
12191 };
12292
123− buildComp = allComponent: componentId: component: comp-builder {
124− inherit allComponent componentId component package name src flags setup cabalFile cabal-generator patches revision
93+ buildComp = componentId: component: comp-builder {
94+ inherit componentId component package name src flags setup cabalFile cabal-generator patches revision
12595 shellHook
12696 ;
12797 };
12898
12999in rec {
130− components = haskellLib.applyComponents (buildComp pkg.allComponent) pkg;
100+ components = haskellLib.applyComponents buildComp pkg;
131101 checks = pkgs.recurseIntoAttrs (builtins.mapAttrs
132102 (_: d: haskellLib.check d)
133103 (lib.filterAttrs (_: d: d.config.doCheck) components.tests));
134− inherit (package) identifier detailLevel isLocal isProject buildType;
104+ inherit (package) identifier detailLevel isLocal;
135105 inherit setup cabalFile;
136106 isHaskell = true;
137107 inherit src;
builder/make-config-files.nix+17−50
@@ -1,14 +1,8 @@
1−{ stdenv, lib, haskellLib, ghc, nonReinstallablePkgs, runCommand, writeText, writeScript }@defaults:
1+{ stdenv, lib, haskellLib, ghc, nonReinstallablePkgs, runCommand, writeText, writeScript }:
22
3−{ identifier, component, fullName, flags ? {}, needsProfiling ? false, enableDWARF ? false, chooseDrv ? drv: drv, nonReinstallablePkgs ? defaults.nonReinstallablePkgs }:
3+{ identifier, component, fullName, flags ? {}, needsProfiling ? false, chooseDrv ? drv: drv }:
44
55let
6− # Sort and remove duplicates from nonReinstallablePkgs.
7− # That way changes to the order of nonReinstallablePkgs does not require rebuilds.
8− nonReinstallablePkgs' = __attrNames (lib.genAttrs nonReinstallablePkgs (x: x));
9−
10− ghc = if enableDWARF then defaults.ghc.dwarf else defaults.ghc;
11−
126 flagsAndConfig = field: xs: lib.optionalString (xs != []) ''
137 echo ${lib.concatStringsSep " " (map (x: "--${field}=${x}") xs)} >> $out/configure-flags
148 echo "${field}: ${lib.concatStringsSep " " xs}" >> $out/cabal.config
@@ -53,31 +47,22 @@ let
5347 # TODO investigate why this is needed
5448 # TODO find out why p ? configFiles helps (for instance for `R1909.aarch64-unknown-linux-gnu.tests.cabal-22.run.x86_64-linux`)
5549 libDeps = map chooseDrv (
56− (if enableDWARF then (x: map (p: p.dwarf or p) x) else x: x)
57− ((if needsProfiling then (x: map (p: p.profiled or p) x) else x: x)
50+ (if needsProfiling then (x: map (p: p.profiled or p) x) else x: x)
5851 (lib.filter (p: (p ? configFiles) && p.configFiles.targetPrefix == ghc.targetPrefix)
59− (map getLibComponent component.depends)))
52+ (map getLibComponent component.depends))
6053 );
6154 cfgFiles =
6255 let xs = map
6356 (p: "${p.configFiles}")
6457 libDeps;
6558 in lib.concatStringsSep "\" \"" xs;
66− libs = lib.concatMapStringsSep "\" \"" (p: "${p}") libDeps;
67− drv = runCommand "${ghc.targetPrefix}${fullName}-config" {
59+ libs = lib.concatMapStringsSep "\" \"" (p: "${p}") libDeps;
60+in
61+ runCommand "${ghc.targetPrefix}${fullName}-config" {
6862 nativeBuildInputs = [ghc];
6963 passthru = {
7064 inherit (ghc) targetPrefix;
71− inherit ghcCommand ghcCommandCaps libDir packageCfgDir component;
72− # Use ''${pkgroot} relative paths so that we can relocate the package database
73− # along with referenced packages and still have it work on systems with
74− # or without nix installed.
75− relocatableConfigFiles = runCommand "${ghc.targetPrefix}${fullName}-relocatable-config" ''
76− cp -r ${drv} $out
77− chmod -R +w $out
78− sed -i 's|/nix/store/|''${pkgroot}/../../../|' $out/${packageCfgDir}/*.conf
79− ${target-pkg} -v0 --package-db $out/${packageCfgDir} recache
80− '';
65+ inherit ghcCommand ghcCommandCaps libDir packageCfgDir;
8166 };
8267 } (''
8368 mkdir -p $out
@@ -85,44 +70,27 @@ let
8570 ${target-pkg} init $out/${packageCfgDir}
8671
8772 ${lib.concatStringsSep "\n" (lib.mapAttrsToList flagsAndConfig {
88− "extra-lib-dirs" = map (p: "${lib.getLib p}/lib") (lib.flatten component.libs)
89− # On windows also include `bin` directories that may contain DLLs
90− ++ lib.optionals (stdenv.hostPlatform.isWindows)
91− (map (p: "${lib.getBin p}/bin")
92− (lib.flatten component.libs ++ lib.concatLists component.pkgconfig));
93− "extra-include-dirs" = map (p: "${lib.getDev p}/include") (lib.flatten component.libs);
94− "extra-framework-dirs" = lib.optionals (stdenv.hostPlatform.isDarwin)
95− (map (p: "${p}/Library/Frameworks") component.frameworks);
73+ "extra-lib-dirs" = map (p: "${lib.getLib p}/lib") component.libs;
74+ "extra-include-dirs" = map (p: "${lib.getDev p}/include") component.libs;
75+ "extra-framework-dirs" = map (p: "${p}/Library/Frameworks") component.frameworks;
9676 })}
9777
9878 ghc=${ghc}
9979 ${ # Copy over the nonReinstallablePkgs from the global package db.
10080 ''
101− for p in ${lib.concatStringsSep " " nonReinstallablePkgs'}; do
81+ for p in ${lib.concatStringsSep " " nonReinstallablePkgs}; do
10282 find $ghc/lib/${ghc.name}/package.conf.d -name $p'*.conf' -exec cp -f {} $out/${packageCfgDir} \;
10383 done
10484 ''}
10585
10686 for l in "${cfgFiles}"; do
10787 if [ -n "$l" ]; then
108− files=("$l/${packageCfgDir}/"*.conf)
109− if (( ''${#files[@]} )); then
110− cp -f "''${files[@]}" $out/${packageCfgDir}
111− else
112− echo "$l/${packageCfgDir} didn't contain any *.conf files!"
113− exit 1
114− fi
88+ cp -f "$l/${packageCfgDir}/"*.conf $out/${packageCfgDir}
11589 fi
11690 done
11791 for l in "${libs}"; do
11892 if [ -n "$l" ]; then
119− files=("$l/package.conf.d/"*.conf)
120− if (( ''${#files[@]} )); then
121− cp -f "''${files[@]}" $out/${packageCfgDir}
122− else
123− echo "$l/package.conf.d didn't contain any *.conf files!"
124− exit 1
125− fi
93+ cp -f "$l/package.conf.d/"*.conf $out/${packageCfgDir}
12694 fi
12795 done
12896
@@ -157,13 +125,13 @@ let
157125 cat $p/exactDep/cabal.config >> $out/cabal.config
158126 ''}
159127 done
160− for p in ${lib.concatStringsSep " " (lib.remove "ghc" nonReinstallablePkgs')}; do
128+ for p in ${lib.concatStringsSep " " (lib.remove "ghc" nonReinstallablePkgs)}; do
161129 if [ -e $ghc/envDeps/$p ]; then
162130 cat $ghc/envDeps/$p >> $out/ghc-environment
163131 fi
164132 done
165133 '' + lib.optionalString component.doExactConfig ''
166− for p in ${lib.concatStringsSep " " nonReinstallablePkgs'}; do
134+ for p in ${lib.concatStringsSep " " nonReinstallablePkgs}; do
167135 if [ -e $ghc/exactDeps/$p ]; then
168136 cat $ghc/exactDeps/$p/configure-flags >> $out/configure-flags
169137 cat $ghc/exactDeps/$p/cabal.config >> $out/cabal.config
@@ -218,5 +186,4 @@ let
218186 done
219187 '' + ''
220188 ${target-pkg} -v0 --package-db $out/${packageCfgDir} recache
221− '');
222−in drv
189+ '')
builder/setup-builder.nix+18−33
@@ -1,29 +1,21 @@
1−{ pkgs, stdenv, lib, buildPackages, haskellLib, ghc, nonReinstallablePkgs, hsPkgs, makeSetupConfigFiles, pkgconfig }@defaults:
1+{ stdenv, lib, buildPackages, haskellLib, ghc, nonReinstallablePkgs, hsPkgs, makeSetupConfigFiles, pkgconfig }:
22
3−let self =
4−{ component, package, name, src, enableDWARF ? false, flags ? {}, revision ? null, patches ? [], defaultSetupSrc
3+{ component, package, name, src, flags ? {}, revision ? null, patches ? [], defaultSetupSrc
54, preUnpack ? component.preUnpack, postUnpack ? component.postUnpack
65, prePatch ? null, postPatch ? null
76, preBuild ? component.preBuild , postBuild ? component.postBuild
87, preInstall ? component.preInstall , postInstall ? component.postInstall
9−, cleanSrc ? haskellLib.cleanCabalComponent package component "setup" src
10−, nonReinstallablePkgs ? defaults.nonReinstallablePkgs
11−, smallAddressSpace ? false
12−}@drvArgs:
8+, cleanSrc ? haskellLib.cleanCabalComponent package component src
9+}:
1310
1411let
15− ghc = (if enableDWARF then (x: x.dwarf) else (x: x)) (
16− (if smallAddressSpace then (x: x.smallAddressSpace) else (x: x)) defaults.ghc);
17−
18− cleanSrc' = haskellLib.rootAndSubDir cleanSrc;
19−
2012 fullName = "${name}-setup";
2113
2214 includeGhcPackage = lib.any (p: p.identifier.name == "ghc") component.depends;
2315
2416 configFiles = makeSetupConfigFiles {
2517 inherit (package) identifier;
26− inherit fullName flags component enableDWARF nonReinstallablePkgs;
18+ inherit fullName flags component;
2719 };
2820 hooks = haskellLib.optionalHooks {
2921 inherit
@@ -43,7 +35,7 @@ let
4335 drv =
4436 stdenv.mkDerivation ({
4537 name = "${ghc.targetPrefix}${fullName}";
46− src = cleanSrc'.root;
38+ src = cleanSrc;
4739 buildInputs = component.libs
4840 ++ component.frameworks
4941 ++ builtins.concatLists component.pkgconfig;
@@ -52,19 +44,18 @@ let
5244 passthru = {
5345 inherit (package) identifier;
5446 config = component;
55− srcSubDir = cleanSrc'.subDir;
56− srcSubDirPath = cleanSrc'.root + cleanSrc'.subDir;
57− cleanSrc = cleanSrc';
58− inherit configFiles;
59− dwarf = self (drvArgs // { enableDWARF = true; });
60− smallAddressSpace = self (drvArgs // { smallAddressSpace = true; });
47+ inherit configFiles cleanSrc;
6148 };
6249
6350 meta = {
6451 homepage = package.homepage or "";
6552 description = package.synopsis or "";
66− license = haskellLib.cabalToNixpkgsLicense package.license;
67− platforms = if component.platforms == null then lib.platforms.all else component.platforms;
53+ license =
54+ let
55+ license-map = import ../lib/cabal-licenses.nix lib;
56+ in license-map.${package.license} or
57+ (builtins.trace "WARNING: license \"${package.license}\" not found" license-map.LicenseRef-OtherLicense);
58+ platforms = if component.platforms == null then stdenv.lib.platforms.all else component.platforms;
6859 };
6960
7061 phases = ["unpackPhase" "patchPhase" "buildPhase" "installPhase"];
@@ -76,12 +67,13 @@ let
7667 for f in Setup.hs Setup.lhs; do
7768 if [ -f $f ]; then
7869 echo Compiling package $f
79− ghc $f -threaded ${if includeGhcPackage then "-package ghc " else ""
80− }-package-db ${configFiles}/${configFiles.packageCfgDir} --make -o ./Setup
70+ ghc $f -threaded '' + (if includeGhcPackage then "-package ghc " else "")
71+ + ''-package-db ${configFiles}/${configFiles.packageCfgDir} --make -o ./Setup
72+ setup=$(pwd)/Setup
8173 fi
8274 done
8375 [ -f ./Setup ] || (echo Failed to build Setup && exit 1)
84− runHook postBuild
76+ runHook preBuild
8577 '';
8678
8779 installPhase = ''
@@ -91,14 +83,7 @@ let
9183 runHook postInstall
9284 '';
9385 }
94− // (lib.optionalAttrs (cleanSrc'.subDir != "") {
95− prePatch =
96− # If the package is in a sub directory `cd` there first
97− ''
98− cd ${lib.removePrefix "/" cleanSrc'.subDir}
99− '';
100− })
10186 // (lib.optionalAttrs (patches != []) { patches = map (p: if builtins.isFunction p then p { inherit (package.identifier) version; inherit revision; } else p) patches; })
10287 // hooks
10388 );
104−in drv; in self
89+in drv
builder/shell-for.nix+47−94
@@ -1,23 +1,25 @@
1−{ lib, stdenv, mkShell, glibcLocales, pkgconfig, ghcForComponent, makeConfigFiles, hsPkgs, hoogleLocal, haskellLib, buildPackages, evalPackages, compiler }:
1+{ lib, stdenv, glibcLocales, pkgconfig, ghcForComponent, makeConfigFiles, hsPkgs, hoogleLocal, haskellLib, buildPackages, compiler }:
22
33{ # `packages` function selects packages that will be worked on in the shell itself.
44 # These packages will not be built by `shellFor`, but their
55 # dependencies will be included in the shell's `ghc-pkg list`.
6− packages ? ps: builtins.attrValues (haskellLib.selectLocalPackages ps)
6+ packages ? ps:
7+ let
8+ selected = haskellLib.selectLocalPackages ps;
9+ in
10+ builtins.trace ("Shell for " + toString (builtins.attrNames selected))
11+ (builtins.attrValues selected)
712 # `components` function selects components that will be worked on in the shell itself.
813 # By default `shellFor` will include the dependencies of all of the components
914 # in the selected packages. If only as subset of the components will be
1015 # worked on in the shell then we can pass a different `components` function
1116 # to select those.
12−, components ? ps: lib.concatMap haskellLib.getAllComponents (packages ps)
17+, components ? ps: lib.concatMap haskellLib.getAllComponents (packages hsPkgs)
1318 # Additional packages to be added unconditionally
1419, additional ? _: []
1520, withHoogle ? true
16−, withHaddock ? withHoogle
1721, exactDeps ? false
1822, tools ? {}
19−, packageSetupDeps ? true
20−, enableDWARF ? false
2123, ... } @ args:
2224
2325let
@@ -26,69 +28,50 @@ let
2628
2729 selectedPackages = packages hsPkgs;
2830 additionalPackages = additional hsPkgs;
29− directlySelectedComponents = components hsPkgs;
31+ selectedComponents = components hsPkgs;
3032
31− # Given `directlySelectedComponents = [ a b ]`, we construct a shell that includes all of their dependencies
33+ # The configs of all the selected components
34+ selectedConfigs = map (c: c.config) selectedComponents ++ map (p: p.setup.config) selectedPackages;
35+
36+ name = if lib.length selectedPackages == 1
37+ then "ghc-shell-for-${(lib.head selectedPackages).identifier.name}"
38+ else "ghc-shell-for-packages";
39+
40+ # Given a `packages = [ a b ]` we construct a shell with the dependencies of `a` and `b`.
3241 #
33− # But we want to exclude `a` if it is a transitive dependecy of `b`
34− # because:
42+ # But if `a` depends on `b`, we don't want to include `b`, because
3543 # - cabal will end up ignoring that built version;
3644 # - The user has indicated that's what they're working on, so they probably don't want to have to build
3745 # it first (and it will change often).
38− # Generally we never want to include any of `directlySelectedComponents` as dependencies.
39− #
40− # We do this by defining a set of `selectedComponents`, where `x` is in `selectedComponents` if and only if:
41− # - `x` is in `directlySelectedComponents`
42− # - `x` is a transitive dependency of something in `directlySelectedComponents`
43− # and `x` transitively depends on something in `directlySelectedComponents`
44− # We use the dependencies of `selectedComponents` filtering out members of `selectedComponents`
46+ # Generally we never want to include any of (the components of) the selected packages as dependencies.
4547 #
4648 # Furthermore, if `a` depends on `b`, `a` will include the library component of `b` in its `buildInputs`
4749 # (to make `propagatedBuildInputs` of `pkgconfig-depends` work). So we also need to filter those
4850 # (the pkgconfig depends of `b` will still be included in the
4951 # system shell's `buildInputs` via `b`'s own `buildInputs`).
52+ # We have to do this slightly differently because we will be looking at the actual components rather
53+ # than the packages.
5054
55+ # Given a list of packages, removes those which were selected as part of the shell.
56+ # We do this on the basis of their identifiers being the same, not direct equality (why?).
57+ removeSelectedPackages =
58+ # All the identifiers of the selected packages
59+ let selectedPackageIds = map (p: p.identifier) selectedPackages;
60+ in lib.filter (input: !(builtins.elem (input.identifier or null) selectedPackageIds));
5161
52− # all packages that are indirectly depended on by `directlySelectedComponents`
53− # including `directlySelectedComponents`
54− transitiveDependenciesComponents =
55− builtins.listToAttrs
56− (builtins.map (x: lib.nameValuePair (x.name) x)
57− (haskellLib.flatLibDepends {depends = directlySelectedComponents;}));
58−
59− isSelectedComponent =
60− comp: selectedComponentsBitmap."${((haskellLib.dependToLib comp).name or null)}" or false;
61− selectedComponentsBitmap =
62− lib.mapAttrs
63− (_: x: (builtins.any isSelectedComponent x.config.depends))
64− transitiveDependenciesComponents
65− // builtins.listToAttrs (map (x: lib.nameValuePair x.name true) directlySelectedComponents); # base case
66−
67− selectedComponents =
68− lib.filter isSelectedComponent (lib.attrValues transitiveDependenciesComponents);
69−
70− # Given a list of `depends`, removes those which are selected components
62+ # Given a list of derivations, removes those which are components of packages which were selected as part of the shell.
7163 removeSelectedInputs =
72− lib.filter (input: !(isSelectedComponent input));
64+ # All the components of the selected packages: we shouldn't add any of these as dependencies
65+ let selectedPackageComponents = lib.concatMap haskellLib.getAllComponents selectedPackages;
66+ in lib.filter (input: !(builtins.elem input selectedPackageComponents));
7367
74− # The configs of all the selected components.
75− # This excludes the `setup` dependencies of `Simple` packages, because
76− # `cabal-install` does not build a `Setup` executable for `Simple` packages.
77− selectedConfigs = map (c: c.config) selectedComponents
78− ++ lib.optionals packageSetupDeps (map (p: p.setup.config)
79− (lib.filter (p: p.buildType != "Simple") selectedPackages));
80−
81− name = if lib.length selectedPackages == 1
82− then "ghc-shell-for-${(lib.head selectedPackages).identifier.name}"
83− else "ghc-shell-for-packages";
84−
85− # We need to remove any dependencies which would bring in selected components (see above).
86− packageInputs = removeSelectedInputs (lib.concatMap (cfg: cfg.depends) selectedConfigs)
87− ++ additionalPackages;
68+ # We need to remove any dependencies which are selected packages (see above).
69+ # `depends` contains packages so we use 'removeSelectedPackages`.
70+ packageInputs = removeSelectedPackages (lib.concatMap (cfg: cfg.depends) selectedConfigs) ++ additionalPackages;
8871
8972 # Add the system libraries and build tools of the selected haskell packages to the shell.
9073 # We need to remove any inputs which are selected components (see above).
91− # `buildInputs`, `propagatedBuildInputs`, and `executableToolDepends` contain component
74+ # `buildInputs`, `propagatedBuildInputs`, and `executableToolDepends` contain component
9275 # derivations, not packages, so we use `removeSelectedInputs`).
9376 systemInputs = removeSelectedInputs (lib.concatMap
9477 (c: c.buildInputs ++ c.propagatedBuildInputs) selectedComponents);
@@ -99,15 +82,13 @@ let
9982 component = {
10083 depends = packageInputs;
10184 libs = [];
102− pkgconfig = [];
10385 frameworks = [];
10486 doExactConfig = false;
10587 };
10688 configFiles = makeConfigFiles {
10789 fullName = args.name or name;
10890 identifier.name = name;
109− inherit component enableDWARF;
110− chooseDrv = p: if withHaddock && p ? haddock then p.haddock else p;
91+ inherit component;
11192 };
11293 ghcEnv = ghcForComponent {
11394 inherit configFiles;
@@ -115,8 +96,6 @@ let
11596 postInstall = lib.optionalString withHoogle' ''
11697 ln -s ${hoogleIndex}/bin/hoogle $out/bin
11798 '';
118− inherit enableDWARF;
119− plugins = [];
12099 };
121100
122101 hoogleIndex = let
@@ -126,55 +105,29 @@ let
126105 pname = p.identifier.name;
127106 haddockDir = lib.const p.haddockDir;
128107 };
129− in hoogleLocal ({
108+ in hoogleLocal {
130109 packages = map docPackage (haskellLib.flatLibDepends component);
131110
132111 # Need to add hoogle to hsPkgs.
133112 # inherit (hsPkgs) hoogle;
134− } // (
135− lib.optionalAttrs (args ? tools && args.tools ? hoogle) {
136− hoogle = buildPackages.haskell-nix.hackage-tool (
137− haskellLib.versionOrModToMods args.tools.hoogle ++ [{
138− name = "hoogle";
139− compiler-nix-name = compiler.nix-name;
140− inherit evalPackages;
141− }]);
142− }
143− ));
144−
145− mkDrvArgs = builtins.removeAttrs args ["packages" "components" "additional" "withHoogle" "tools"];
113+ };
114+
115+ mkDrvArgs = builtins.removeAttrs args ["packages" "additional" "withHoogle" "tools"];
146116in
147− mkShell (mkDrvArgs // {
117+ stdenv.mkDerivation (mkDrvArgs // {
148118 name = mkDrvArgs.name or name;
149119
150120 buildInputs = systemInputs
151− ++ mkDrvArgs.buildInputs or [];
121+ ++ mkDrvArgs.buildInputs or []
122+ ++ lib.optional withHoogle' hoogleIndex;
152123 nativeBuildInputs = [ ghcEnv ]
153124 ++ nativeBuildInputs
154125 ++ mkDrvArgs.nativeBuildInputs or []
155− ++ lib.attrValues (buildPackages.haskell-nix.tools' evalPackages compiler.nix-name tools)
156− # If this shell is a cross compilation shell include
157− # wrapper script for running cabal build with appropriate args.
158− # Includes `--with-compiler` in case the `cabal.project` file has `with-compiler:` in it.
159− ++ lib.optional (ghcEnv.targetPrefix != "") (
160− buildPackages.writeShellScriptBin "${ghcEnv.targetPrefix}cabal" ''
161− exec cabal \
162− --with-ghc=${ghcEnv.targetPrefix}ghc \
163− --with-compiler=${ghcEnv.targetPrefix}ghc \
164− --with-ghc-pkg=${ghcEnv.targetPrefix}ghc-pkg \
165− --with-hsc2hs=${ghcEnv.targetPrefix}hsc2hs \
166− ${lib.optionalString (ghcEnv.targetPrefix == "js-unknown-ghcjs-") ''
167− --with-ghcjs=${ghcEnv.targetPrefix}ghc \
168− --with-ghcjs-pkg=${ghcEnv.targetPrefix}ghc-pkg \
169− --ghcjs \
170− ''} $(builtin type -P "${ghcEnv.targetPrefix}pkg-config" &> /dev/null && echo "--with-pkg-config=${ghcEnv.targetPrefix}pkg-config") \
171− "$@"
172− '');
126+ ++ lib.attrValues (buildPackages.haskell-nix.tools compiler.nix-name tools);
173127 phases = ["installPhase"];
174− installPhase = ''
175− echo "${"Shell for " + toString (builtins.map (p : p.identifier.name) selectedPackages)}"
176− echo $nativeBuildInputs $buildInputs > $out
177− '';
128+ installPhase = "echo $nativeBuildInputs $buildInputs > $out";
129+ LANG = "en_US.UTF-8";
130+ LOCALE_ARCHIVE = lib.optionalString (stdenv.hostPlatform.libc == "glibc") "${glibcLocales}/lib/locale/locale-archive";
178131
179132 # This helps tools like `ghcide` (that use the ghc api) to find
180133 # the correct global package DB.
changelog.md−119
@@ -1,125 +1,6 @@
11This file contains a summary of changes to Haskell.nix and `nix-tools`
22that will impact users.
33
4−## Jul 27, 2022
5−* Removed reliance on `builtins.currentSystem`. It was used it to provide
6− `pkgs.evalPackages` via an overlay that it used to run derivations
7− used in imports from derivation (IFDs).
8−
9− These derivations are now run on `buildPackages` by default.
10−
11− Passsing `evalPackages` to a project function will change where all the
12− derivations used in IFDs are run for that project (including shell tools):
13− evalPackages = import nixpkgs haskellNix.nixpkgsArgs;
14−
15− Passing `evalSystem` instead will use create a suitable `nixpkgs` using `pkgs.path`
16− and `pkgs.overlay`:
17− evalSystem = "x86_64-linux";
18− or
19− evalSystem = builtins.currentSystem;
20−
21− The `haskellLib.cleanGit` function is also affected by this change. If you are cross
22− compiling and using `cleanGit` you should probably do something like:
23− pkgs = import nixpkgs haskellNix.nixpkgsArgs;
24− evalPackages = import nixpkgs (haskellNix.nixpkgsArgs // { system = evalSystem; });
25− p = pkgs.pkgsCross.mingwW64.haskell-nix.cabalProject {
26− inherit evalPackages;
27− src = evalPackages.haskell-nix.haskellLib.cleanGit { src = ./.; };
28− };
29−
30−## Feb 16, 2022
31−* Removed lookupSha256 argument from project functions.
32− Pass a `sha256map` instead.
33−* Added better support for `repository` in `cabal.project`. These
34− blocks should now work without the need for passing `extra-hackages` and
35− `extra-hackage-tarballs`.
36−
37−## Aug 6, 2021
38−* Included dependencies of haskell.nix that were tracked in `nix/sources.json`
39− as flake inputs (`flake.lock` replaces `nix/sources.json`).
40−* Uses `flake-compat` to continue to provide a compatible interface for non
41− flake projects.
42−
43−## Jul 23, 2021
44−* `source-repository-package` references in `cabal.project` files are now
45− left as a `source-repository-package` when calculating the the `plan-nix` for
46− `cabalProject` based functions.
47− This makes haskell.nix match the behaviour of `cabal` better.
48− Materialized files for projects that use `source-repository-package`
49− references will need to be updated.
50−* Only planned components are included in a haskell.nix cabal project.
51− If cabal solver does not include the component in the `plan.json` file it
52− will not be present in `hsPkgs.pkg.components`.
53−* When the same package occurs more than once in a plan.json file
54− the latest version is picked by haskell.nix.
55−
56−## Apr 8, 2021
57−* Project arguments are now validated with the Nix module system.
58− If unexpected argments are passed to a project function this may now
59− result in an error.
60−
61−## Feb 22, 2021
62−* Add `.dwarf` to build any component with DWARF dubug info on linux
63− (ghc >=8.10.2).
64−* Pass `enableDWARF` to `shellFor` for to get a shell where all the
65− components are the `.dwarf` ones.
66−
67−## Feb 18, 2021
68−* `ghcOptions` has been moved from package and is now a list of strings.
69− old: packages.x.package.ghcOptions = "someGHCoption";
70− new: packages.x.ghcOptions = ["someGHCoption"];
71− To specify ghcOptions for all packages:
72− ghcOptions = ["someGHCoption"];
73− For a single component:
74− packages.x.compoents.library.ghcOptions = ["someGHCoption"];
75−
76−## Feb 8, 2021
77−* Removed older versions of haskell-language-server from custom-tools
78− (0.8.0 is in hackage so we can still get that version).
79−
80−## Jan 14, 2021
81−* Added support for cross package refs (with a project). Relative
82− directory references between packages within a project should now
83− work.
84−* Added `includeSiblings` to `cleanSourceWith`. When `true` it
85− prevents the `subDir` arg from causing filtering of other directories.
86−* Added `keepGitDir` to `cleanGit` to allow `.git` directory to be kept
87− (useful for components that use the `githash` package).
88−
89−## Nov 26, 2020
90−* Renamed `otherShells` arg for `shellFor` to `inputsFrom
91−
92−## Nov 25, 2020
93−* The `shellFor` `makeConfigFiles` `ghcWithHoogle` and `ghcWithPackages`
94− functions have been removed from `project.hsPkgs`. Instead access
95− them from `project` itself (e.g. change `p.hsPkgs.shellFor` to `p.shellFor`).
96−* The reflex-platform like `project.shells.ghc` has been removed.
97− If needed, add something like `p // { shells.ghc = p.shellFor {} }`
98− to `shell.nix`.
99−
100−## Nov 24, 2020
101−* Added `${targetPrefix}cabal` wrapper script for running cross
102− compilers in `shellFor`.
103−* `otherShells` arg added to `shellFor`.
104−
105−## Oct 31, 2020
106−* Passing `tools.hoogle` to `shellFor` with a value suitable for `haskel-nix.tool` will
107− use the specified `hoogle` inside `shellFor`. This allows for materialization
108− of `hoogle`.
109−
110−## Oct 28, 2020
111−* Passing `compiler-nix-name` to project functions for `stack.yaml`
112− based projects now overrides the compiler used (was ignored before).
113−
114−## Sep 8, 2020
115−* Added the ability to generate coverage reports for packages and
116− projects.
117−* Added the `doCoverage` module option that allows users to choose
118− packages to enable coverage for.
119−* Added a `doCoverage` flag to the component builder that outputs HPC
120− information when coverage is enabled.
121−* Added test for coverage.
122−
1234## July 21, 2020
1245* Removed `components.all`, use `symlinkJoin` on components.exes or
1256 `shellFor` if you need a shell.
ci-lib.nix+4−4
@@ -1,8 +1,8 @@
1−{
1+let
22 # Generic nixpkgs, use *only* for lib functions that are stable across versions
3− pkgs ? (import ./. {}).pkgs,
4− lib ? pkgs.lib
5−}: rec {
3+ pkgs = import (import ./nix/sources.nix).nixpkgs {};
4+ lib = pkgs.lib;
5+in rec {
66 inherit (import ./dimension.nix) dimension;
77
88 # A filter for removing packages that aren't supported on the current platform
ci.nix+36−64
@@ -4,24 +4,16 @@
44, ifdLevel ? 3
55# Whether or not we are evaluating in restricted mode. This is true in Hydra, but not in Hercules.
66, restrictEval ? false
7−, checkMaterialization ? false
8−, pkgs ? (import ./. {}).pkgs }:
7+, checkMaterialization ? false }:
98 let
10− inherit (import ./ci-lib.nix { inherit pkgs; }) dimension platformFilterGeneric filterAttrsOnlyRecursive;
11− inherit (pkgs.haskell-nix) sources;
9+ inherit (import ./ci-lib.nix) dimension platformFilterGeneric filterAttrsOnlyRecursive;
10+ sources = import ./nix/sources.nix {};
1211 nixpkgsVersions = {
13− "R2111" = "nixpkgs-2111";
14− "R2205" = "nixpkgs-2205";
15− "unstable" = "nixpkgs-unstable";
16− };
17− haskellNix = import ./default.nix { inherit checkMaterialization; };
18− nixpkgsArgs = haskellNix.nixpkgsArgs // {
19− # Needed for dwarf tests
20− config = haskellNix.nixpkgsArgs.config // {
21− permittedInsecurePackages = ["libdwarf-20210528" "libdwarf-20181024" "dwarfdump-20181024"];
22− };
12+ "R1909" = "nixpkgs-1909";
13+ "R2003" = "nixpkgs-2003";
2314 };
2415 compilerNixNames = nixpkgsName: nixpkgs: builtins.mapAttrs (compiler-nix-name: runTests: {
16+ inherit (import ./default.nix { inherit checkMaterialization; }) nixpkgsArgs;
2517 inherit runTests;
2618 }) (
2719 # GHC version to cache and whether to run the tests against them.
@@ -30,61 +22,42 @@
3022 # cabal-install and nix-tools plans. When removing a ghc version
3123 # from here (so that is no longer cached) also remove ./materialized/ghcXXX.
3224 # Update supported-ghc-versions.md to reflect any changes made here.
33− nixpkgs.lib.optionalAttrs (nixpkgsName == "R2111") {
34− ghc865 = false;
35− ghc8107 = true;
36− } // nixpkgs.lib.optionalAttrs (nixpkgsName == "R2205") {
37− ghc865 = false;
38− ghc8107 = true;
39− } // nixpkgs.lib.optionalAttrs (nixpkgsName == "unstable") {
40− ghc865 = false;
41− ghc884 = false; # Native version is used to boot 9.0.1
42− ghc8107 = true;
43− ghc902 = true;
44− ghc924 = true;
25+ {
26+ ghc865 = true;
27+ } // nixpkgs.lib.optionalAttrs (nixpkgsName == "R2003") {
28+ ghc883 = false;
29+ ghc884 = true;
30+ ghc8101 = false;
31+ ghc8102 = true;
4532 });
46− systems = nixpkgsName: nixpkgs: compiler-nix-name: nixpkgs.lib.genAttrs (
47− nixpkgs.lib.filter (v:
48− # We have less x86_64-darwin build capacity so build fewer GhC versions
49− (v != "x86_64-darwin" || (
50− !__elem compiler-nix-name ["ghc8104" "ghc810420210212" "ghc8105" "ghc8106" "ghc901" "ghc921" "ghc922"]))
51− &&
52− # aarch64-darwin requires ghc 8.10.7
53− (v != "aarch64-darwin" || (
54− !__elem compiler-nix-name ["ghc865" "ghc884" "ghc8104" "ghc810420210212" "ghc8105" "ghc8106" "ghc901" "ghc921" "ghc922"]))
55− &&
56− # aarch64-linux requires ghc 8.8.4
57− (v != "aarch64-linux" || (
58− !__elem compiler-nix-name ["ghc865" "ghc8104" "ghc810420210212" "ghc8105" "ghc8106" "ghc901" "ghc921" "ghc922"]
59− ))) supportedSystems) (v: v);
33+ systems = nixpkgs: nixpkgs.lib.filterAttrs (_: v: builtins.elem v supportedSystems) {
34+ # I wanted to take these from 'lib.systems.examples', but apparently there isn't one for linux!
35+ linux = "x86_64-linux";
36+ darwin = "x86_64-darwin";
37+ };
6038 crossSystems = nixpkgsName: nixpkgs: compiler-nix-name: system:
6139 # We need to use the actual nixpkgs version we're working with here, since the values
6240 # of 'lib.systems.examples' are not understood between all versions
6341 let lib = nixpkgs.lib;
64− in lib.optionalAttrs (nixpkgsName == "unstable"
65− && ((system == "x86_64-linux" && __elem compiler-nix-name ["ghc865" "ghc884" "ghc8107"])
66− || (system == "x86_64-darwin" && __elem compiler-nix-name ["ghc8107"]))) {
67− inherit (lib.systems.examples) ghcjs;
68− } // lib.optionalAttrs (nixpkgsName == "unstable"
69− && ((system == "x86_64-linux" && __elem compiler-nix-name ["ghc8107" "ghc902" "ghc924"])
70− || (system == "x86_64-darwin" && __elem compiler-nix-name []))) { # TODO add ghc versions when we have more darwin build capacity
42+ in lib.optionalAttrs (system == "x86_64-linux" && compiler-nix-name != "ghc8101" && compiler-nix-name != "ghc8102") {
43+ # Windows cross compilation is currently broken on macOS
7144 inherit (lib.systems.examples) mingwW64;
72− } // lib.optionalAttrs (system == "x86_64-linux" && nixpkgsName == "unstable" && __elem compiler-nix-name ["ghc8107" "ghc902" "ghc922" "ghc923" "ghc924"]) {
45+ } // lib.optionalAttrs (system == "x86_64-linux") {
7346 # Musl cross only works on linux
7447 # aarch64 cross only works on linux
7548 inherit (lib.systems.examples) musl64 aarch64-multiplatform;
7649 };
77− isDisabled = d: d.meta.disabled or false;
7850in
7951dimension "Nixpkgs version" nixpkgsVersions (nixpkgsName: nixpkgs-pin:
8052 let pinnedNixpkgsSrc = sources.${nixpkgs-pin};
81− evalPackages = import pinnedNixpkgsSrc nixpkgsArgs;
82− in dimension "GHC version" (compilerNixNames nixpkgsName evalPackages) (compiler-nix-name: {runTests}:
83− dimension "System" (systems nixpkgsName evalPackages compiler-nix-name) (systemName: system:
53+ # We need this for generic nixpkgs stuff at the right version
54+ genericPkgs = import pinnedNixpkgsSrc {};
55+ in dimension "GHC version" (compilerNixNames nixpkgsName genericPkgs) (compiler-nix-name: {nixpkgsArgs, runTests}:
56+ dimension "System" (systems genericPkgs) (systemName: system:
8457 let pkgs = import pinnedNixpkgsSrc (nixpkgsArgs // { inherit system; });
85− build = import ./build.nix { inherit pkgs evalPackages ifdLevel compiler-nix-name; };
58+ build = import ./build.nix { inherit pkgs ifdLevel compiler-nix-name; };
8659 platformFilter = platformFilterGeneric pkgs system;
87− in filterAttrsOnlyRecursive (_: v: platformFilter v && !(isDisabled v)) ({
60+ in filterAttrsOnlyRecursive (_: v: platformFilter v) {
8861 # Native builds
8962 # TODO: can we merge this into the general case by picking an appropriate "cross system" to mean native?
9063 native = pkgs.recurseIntoAttrs ({
@@ -93,16 +66,16 @@ dimension "Nixpkgs version" nixpkgsVersions (nixpkgsName: nixpkgs-pin:
9366 } // pkgs.lib.optionalAttrs runTests {
9467 inherit (build) tests tools maintainer-scripts maintainer-script-cache;
9568 } // pkgs.lib.optionalAttrs (ifdLevel >= 1) {
96− iserv-proxy = pkgs.ghc-extra-projects."${compiler-nix-name}".getComponent "iserv-proxy:exe:iserv-proxy";
69+ iserv-proxy = pkgs.ghc-extra-packages."${compiler-nix-name}".iserv-proxy.components.exes.iserv-proxy;
9770 } // pkgs.lib.optionalAttrs (ifdLevel >= 3) {
98− hello = (pkgs.haskell-nix.hackage-package { name = "hello"; version = "1.0.0.2"; inherit evalPackages compiler-nix-name; }).getComponent "exe:hello";
71+ hello = (pkgs.haskell-nix.hackage-package { name = "hello"; version = "1.0.0.2"; inherit compiler-nix-name; }).components.exes.hello;
9972 });
10073 }
10174 //
102− dimension "Cross system" (crossSystems nixpkgsName evalPackages compiler-nix-name system) (crossSystemName: crossSystem:
75+ dimension "Cross system" (crossSystems nixpkgsName genericPkgs compiler-nix-name system) (crossSystemName: crossSystem:
10376 # Cross builds
10477 let pkgs = import pinnedNixpkgsSrc (nixpkgsArgs // { inherit system crossSystem; });
105− build = import ./build.nix { inherit pkgs evalPackages ifdLevel compiler-nix-name; };
78+ build = import ./build.nix { inherit pkgs ifdLevel compiler-nix-name; };
10679 in pkgs.recurseIntoAttrs (pkgs.lib.optionalAttrs (ifdLevel >= 1) ({
10780 roots = pkgs.haskell-nix.roots' compiler-nix-name ifdLevel;
10881 ghc = pkgs.buildPackages.haskell-nix.compiler."${compiler-nix-name}";
@@ -113,14 +86,13 @@ dimension "Nixpkgs version" nixpkgsVersions (nixpkgsName: nixpkgs-pin:
11386 } // pkgs.lib.optionalAttrs (runTests && crossSystemName != "aarch64-multiplatform") {
11487 # Tests are broken on aarch64 cross https://github.com/input-output-hk/haskell.nix/issues/513
11588 inherit (build) tests;
116− }) // pkgs.lib.optionalAttrs (ifdLevel >= 2 && crossSystemName != "ghcjs") {
117− # GHCJS builds its own template haskell runner.
118− remote-iserv = pkgs.ghc-extra-projects."${compiler-nix-name}".getComponent "remote-iserv:exe:remote-iserv";
119− iserv-proxy = pkgs.ghc-extra-projects."${compiler-nix-name}".getComponent "iserv-proxy:exe:iserv-proxy";
89+ }) // pkgs.lib.optionalAttrs (ifdLevel >= 2) {
90+ remote-iserv = pkgs.ghc-extra-packages."${compiler-nix-name}".remote-iserv.components.exes.remote-iserv;
91+ iserv-proxy = pkgs.ghc-extra-packages."${compiler-nix-name}".iserv-proxy.components.exes.iserv-proxy;
12092 } // pkgs.lib.optionalAttrs (ifdLevel >= 3) {
121− hello = (pkgs.haskell-nix.hackage-package { name = "hello"; version = "1.0.0.2"; inherit compiler-nix-name; }).getComponent "exe:hello";
93+ hello = (pkgs.haskell-nix.hackage-package { name = "hello"; version = "1.0.0.2"; inherit compiler-nix-name; }).components.exes.hello;
12294 })
123− ))
95+ )
12496 )
12597 )
12698)
compiler/bootstrap/cabal-install.nix+2−2
@@ -1,4 +1,4 @@
1−{ fetchurl, hackage, stdenv, lib, ghc, zlib, src, version }:
1+{ fetchurl, hackage, stdenv, ghc, zlib, src, version }:
22let dependencies =
33 [ { name = "deepseq"; version = "1.4.3.0"; }
44 { name = "binary"; version = "0.8.5.1"; }
@@ -42,7 +42,7 @@ in stdenv.mkDerivation ({
4242 };
4343
4444 meta = {
45− platforms = lib.platforms.all;
45+ platforms = stdenv.lib.platforms.all;
4646 };
4747
4848 nativeBuildInputs = [ ghc zlib ];
compiler/ghc/configured-src.nixnew file+114
@@ -0,0 +1,114 @@
1+{ stdenv, fetchurl
2+, ghc-version, ghc-patches, src-spec
3+, targetPrefix
4+, targetPlatform, hostPlatform
5+, targetPackages
6+, perl, autoconf, automake, m4, python3, sphinx, ghc, bootPkgs
7+, autoreconfHook, toolsForTarget, bash
8+, libDeps
9+, useLLVM, llvmPackages
10+, targetCC
11+, enableIntegerSimple, targetGmp
12+, ncurses, targetLibffi, libiconv
13+, disableLargeAddressSpace
14+, buildMK
15+}:
16+stdenv.mkDerivation (rec {
17+
18+ version = ghc-version;
19+ patches = ghc-patches;
20+ name = "${targetPrefix}ghc-${ghc-version}-configured-src";
21+
22+ # Make sure we never relax`$PATH` and hooks support for compatibility.
23+ strictDeps = true;
24+
25+ nativeBuildInputs = [
26+ perl autoconf automake m4 python3 sphinx
27+ ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
28+ ] ++ stdenv.lib.optional (patches != []) autoreconfHook;
29+
30+ # For building runtime libs
31+ depsBuildTarget = toolsForTarget;
32+
33+ buildInputs = [ perl bash ] ++ (libDeps hostPlatform);
34+
35+ propagatedBuildInputs = [ targetPackages.stdenv.cc ]
36+ ++ stdenv.lib.optional useLLVM llvmPackages.llvm;
37+
38+ depsTargetTarget = map stdenv.lib.getDev (libDeps targetPlatform);
39+ depsTargetTargetPropagated = map (stdenv.lib.getOutput "out") (libDeps targetPlatform);
40+
41+ postPatch = "patchShebangs .";
42+
43+ src = fetchurl { inherit (src-spec) url sha256; };
44+
45+ # GHC is a bit confused on its cross terminology.
46+ preConfigure = ''
47+ for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
48+ export "''${env#TARGET_}=''${!env}"
49+ done
50+ # GHC is a bit confused on its cross terminology, as these would normally be
51+ # the *host* tools.
52+ export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
53+ export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx"
54+ # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
55+ export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${stdenv.lib.optionalString targetPlatform.isAarch32 ".gold"}"
56+ export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
57+ export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
58+ export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
59+ export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
60+ export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
61+ export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip"
62+
63+ echo -n "${buildMK}" > mk/build.mk
64+ sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
65+ '' + stdenv.lib.optionalString (!stdenv.isDarwin) ''
66+ export NIX_LDFLAGS+=" -rpath $out/lib/${targetPrefix}ghc-${version}"
67+ '' + stdenv.lib.optionalString stdenv.isDarwin ''
68+ export NIX_LDFLAGS+=" -no_dtrace_dof"
69+ '' + stdenv.lib.optionalString targetPlatform.useAndroidPrebuilt ''
70+ sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
71+ '' + stdenv.lib.optionalString targetPlatform.isMusl ''
72+ echo "patching llvm-targets for musl targets..."
73+ echo "Cloning these existing '*-linux-gnu*' targets:"
74+ grep linux-gnu llvm-targets | sed 's/^/ /'
75+ echo "(go go gadget sed)"
76+ sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets
77+ echo "llvm-targets now contains these '*-linux-musl*' targets:"
78+ grep linux-musl llvm-targets | sed 's/^/ /'
79+
80+ echo "And now patching to preserve '-musleabi' as done with '-gnueabi'"
81+ # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen)
82+ for x in configure aclocal.m4; do
83+ substituteInPlace $x \
84+ --replace '*-android*|*-gnueabi*)' \
85+ '*-android*|*-gnueabi*|*-musleabi*)'
86+ done
87+ '';
88+
89+ configurePlatforms = [ "build" "host" "target" ];
90+ # `--with` flags for libraries needed for RTS linker
91+ configureFlags = [
92+ "--datadir=$doc/share/doc/ghc"
93+ "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
94+ ] ++ stdenv.lib.optionals (targetLibffi != null) ["--with-system-libffi" "--with-ffi-includes=${targetLibffi.dev}/include" "--with-ffi-libraries=${targetLibffi.out}/lib"
95+ ] ++ stdenv.lib.optional (!enableIntegerSimple) [
96+ "--with-gmp-includes=${targetGmp.dev}/include" "--with-gmp-libraries=${targetGmp.out}/lib"
97+ ] ++ stdenv.lib.optional (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
98+ "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
99+ ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [
100+ "--enable-bootstrap-with-devel-snapshot"
101+ ] ++ stdenv.lib.optionals (disableLargeAddressSpace) [
102+ "--disable-large-address-space"
103+ ] ++ stdenv.lib.optionals (targetPlatform.isAarch32) [
104+ "CFLAGS=-fuse-ld=gold"
105+ "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
106+ "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
107+ ] ;
108+
109+ outputs = [ "out" ];
110+ phases = [ "unpackPhase" "patchPhase" ]
111+ ++ stdenv.lib.optional (ghc-patches != []) "autoreconfPhase"
112+ ++ [ "configurePhase" "installPhase" ];
113+ installPhase = "cp -r . $out";
114+})
compiler/ghc/default.nix+95−278
@@ -3,19 +3,15 @@
33# haskell.nix ships its own version of the ghc expression as it needs more
44# control over the expression to isolate it against varying <nixpkgs> and
55# allow us to customize it to the way haskell.nix works.
6−let self =
7−{ stdenv, lib, haskell-nix, targetPackages
6+{ stdenv, haskell-nix, targetPackages
87
98# build-tools
109, bootPkgs
11−, buildPackages
12−, autoconf, automake, coreutils, fetchurl, fetchpatch, perl, python3, m4, sphinx, numactl, elfutils
10+, autoconf, automake, coreutils, fetchurl, fetchpatch, perl, python3, m4, sphinx, numactl
1311, autoreconfHook
1412, bash
1513
16−, libiconv ? null
17−
18−, ncurses # TODO remove this once the cross compilers all work without
14+, libiconv ? null, ncurses
1915
2016, installDeps
2117
@@ -30,10 +26,7 @@ let self =
3026
3127, # If enabled, GHC will be built with the GPL-free but slower integer-simple
3228 # library instead of the faster but GPLed integer-gmp library.
33− enableIntegerSimple ? !(lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp
34−, # If enabled, GHC will be built with the GPL-free native backend of the
35− # bignum library that is nearly as fast as GMP
36− enableNativeBignum ? !((lib.any (lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms) || enableIntegerSimple)
29+ enableIntegerSimple ? !(stdenv.lib.any (stdenv.lib.meta.platformMatch stdenv.hostPlatform) gmp.meta.platforms), gmp
3730
3831, # If enabled, use -fPIC when compiling static libs.
3932 enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform && !stdenv.targetPlatform.isAarch32
@@ -44,18 +37,12 @@ let self =
4437
4538, enableLibraryProfiling ? true
4639
47−, enableDWARF ? false
48−
49−, enableTerminfo ?
50− # Terminfo does not work on older ghc cross arm and windows compilers
51− (!haskell-nix.haskellLib.isCrossTarget || !(stdenv.targetPlatform.isAarch64 || stdenv.targetPlatform.isWindows) || builtins.compareVersions ghc-version "8.10" >= 0)
52−
53−, # Wheter to build in NUMA support
54− enableNUMA ? true
40+, # Whether to build terminfo. Musl fails to build terminfo as ncurses seems to be linked to glibc
41+ enableTerminfo ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.isMusl
5542
5643, # What flavour to build. An empty string indicates no
5744 # specific flavour and falls back to ghc default values.
58− ghcFlavour ? lib.optionalString haskell-nix.haskellLib.isCrossTarget (
45+ ghcFlavour ? stdenv.lib.optionalString haskell-nix.haskellLib.isCrossTarget (
5946 if useLLVM
6047 then "perf-cross"
6148 else "perf-cross-ncg"
@@ -66,19 +53,14 @@ let self =
6653 disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
6754
6855, ghc-version ? src-spec.version
69−, ghc-version-date ? null
7056, src-spec
7157, ghc-patches ? []
7258
7359# extra values we want to have available as passthru values.
7460, extra-passthru ? {}
75−}@args:
76−
77−assert !(enableIntegerSimple || enableNativeBignum) -> gmp != null;
61+}:
7862
79−# Early check to make sure only one of these is enabled
80−assert enableNativeBignum -> !enableIntegerSimple;
81−assert enableIntegerSimple -> !enableNativeBignum;
63+assert !enableIntegerSimple -> gmp != null;
8264
8365let
8466 inherit (stdenv) buildPlatform hostPlatform targetPlatform;
@@ -86,17 +68,6 @@ let
8668
8769 inherit (bootPkgs) ghc;
8870
89− ghcHasNativeBignum = builtins.compareVersions ghc-version "9.0" >= 0;
90−
91− bignumSpec =
92− assert ghcHasNativeBignum -> !enableIntegerSimple;
93− assert !ghcHasNativeBignum -> !enableNativeBignum;
94− if ghcHasNativeBignum then ''
95− BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
96− '' else ''
97− INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
98− '';
99−
10071 # TODO check if this possible fix for segfaults works or not.
10172 targetLibffi =
10273 # on native platforms targetPlatform.{libffi, gmp} do not exist; thus fall back
@@ -109,12 +80,8 @@ let
10980
11081 targetGmp = targetPackages.gmp or gmp;
11182
112− targetIconv = targetPackages.libiconv or libiconv;
113−
114− targetNumactl = targetPackages.numactl or numactl;
115−
11683 # TODO(@Ericson2314) Make unconditional
117− targetPrefix = lib.optionalString
84+ targetPrefix = stdenv.lib.optionalString
11885 (targetPlatform != hostPlatform)
11986 "${targetPlatform.config}-";
12087
@@ -124,67 +91,68 @@ let
12491 include mk/flavours/\$(BuildFlavour).mk
12592 endif
12693 DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
127− '' + bignumSpec + ''
128− EXTRA_HADDOCK_OPTS += --quickjump --hyperlinked-source
129− '' + lib.optionalString (targetPlatform != hostPlatform) ''
94+ INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
95+ '' + stdenv.lib.optionalString (targetPlatform != hostPlatform) ''
13096 CrossCompilePrefix = ${targetPrefix}
131− '' + lib.optionalString isCrossTarget ''
97+ '' + stdenv.lib.optionalString isCrossTarget ''
13298 Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
133− ''
134− # GHC 9.0.1 fails to compile for musl unless HADDOC_DOCS = NO
135− + lib.optionalString (isCrossTarget || (targetPlatform.isMusl && builtins.compareVersions ghc-version "9.0.1" >= 0)) ''
13699 HADDOCK_DOCS = NO
137100 BUILD_SPHINX_HTML = NO
138101 BUILD_SPHINX_PDF = NO
139− '' + lib.optionalString enableRelocatedStaticLibs ''
102+ '' + stdenv.lib.optionalString enableRelocatedStaticLibs ''
140103 GhcLibHcOpts += -fPIC
141104 GhcRtsHcOpts += -fPIC
142− GhcRtsCcOpts += -fPIC
143− '' + lib.optionalString (enableRelocatedStaticLibs && targetPlatform.isx86_64 && !targetPlatform.isWindows) ''
144− GhcLibHcOpts += -fexternal-dynamic-refs
145− GhcRtsHcOpts += -fexternal-dynamic-refs
146− '' + lib.optionalString enableDWARF ''
147− GhcLibHcOpts += -g3
148− GhcRtsHcOpts += -g3
149− '' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
105+ '' + stdenv.lib.optionalString targetPlatform.useAndroidPrebuilt ''
150106 EXTRA_CC_OPTS += -std=gnu99
151− '' + lib.optionalString (!enableTerminfo) ''
107+ '' + stdenv.lib.optionalString (!enableTerminfo) ''
152108 WITH_TERMINFO=NO
153109 ''
154110 # musl doesn't have a system-linker. Only on x86, and on x86 we need it, as
155111 # our elf linker for x86_64 is broken.
156− + lib.optionalString (targetPlatform.isAndroid || (targetPlatform.isMusl && !targetPlatform.isx86)) ''
112+ + stdenv.lib.optionalString (targetPlatform.isMusl && !targetPlatform.isx86) ''
157113 compiler_CONFIGURE_OPTS += --flags=-dynamic-system-linker
158114 ''
159115 # While split sections are now enabled by default in ghc 8.8 for windows,
160116 # the seem to lead to `too many sections` errors when building base for
161117 # profiling.
162− #
163− # It appears that loading split sections through iserv on qemu-aarch64, is
164− # particularly slow. Let's disable them for now.
165− + lib.optionalString (targetPlatform.isWindows || targetPlatform.isAndroid) ''
118+ + stdenv.lib.optionalString targetPlatform.isWindows ''
166119 SplitSections = NO
167− '' + lib.optionalString (!enableLibraryProfiling) ''
120+ '' + stdenv.lib.optionalString (!enableLibraryProfiling) ''
168121 BUILD_PROF_LIBS = NO
169122 '';
170123
171124 # Splicer will pull out correct variations
172− libDeps = platform: lib.optional enableTerminfo [ targetPackages.ncurses targetPackages.ncurses.dev ]
125+ libDeps = platform: stdenv.lib.optional enableTerminfo [ ncurses ]
173126 ++ [targetLibffi]
174− ++ lib.optional (!enableIntegerSimple) gmp
175− ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv
176− ++ lib.optional (enableNUMA && platform.isLinux && !platform.isAarch32 && !platform.isAndroid) numactl
177− # Even with terminfo disabled some older ghc cross arm and windows compilers do not build unless `ncurses` is found and they seem to want the buildPlatform version
178− ++ lib.optional (!enableTerminfo && haskell-nix.haskellLib.isCrossTarget && (stdenv.targetPlatform.isAarch64 || stdenv.targetPlatform.isWindows) && builtins.compareVersions ghc-version "8.10" < 0) ncurses.dev;
127+ ++ stdenv.lib.optional (!enableIntegerSimple) gmp
128+ ++ stdenv.lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv
129+ ++ stdenv.lib.optional (platform.isLinux && !platform.isAarch32) numactl;
179130
180131 toolsForTarget =
181132 if hostPlatform == buildPlatform then
182− [ targetPackages.stdenv.cc ] ++ lib.optional useLLVM llvmPackages.llvm
133+ [ targetPackages.stdenv.cc ] ++ stdenv.lib.optional useLLVM llvmPackages.llvm
183134 else assert targetPlatform == hostPlatform; # build != host == target
184− [ stdenv.cc ] ++ lib.optional useLLVM buildLlvmPackages.llvm;
135+ [ stdenv.cc ] ++ stdenv.lib.optional useLLVM buildLlvmPackages.llvm;
185136
186137 targetCC = builtins.head toolsForTarget;
187138
139+ configured-src = import ./configured-src.nix {
140+ inherit stdenv fetchurl
141+ ghc-version ghc-patches src-spec
142+ targetPrefix
143+ targetPlatform hostPlatform
144+ targetPackages
145+ perl autoconf automake m4 python3 sphinx ghc bootPkgs
146+ autoreconfHook toolsForTarget bash
147+ libDeps
148+ useLLVM llvmPackages
149+ targetCC
150+ enableIntegerSimple targetGmp
151+ ncurses targetLibffi libiconv
152+ disableLargeAddressSpace
153+ buildMK
154+ ;
155+ };
188156in
189157stdenv.mkDerivation (rec {
190158 version = ghc-version;
@@ -192,102 +160,42 @@ stdenv.mkDerivation (rec {
192160
193161 patches = ghc-patches;
194162
195− src = if src-spec ? file
196− then src-spec.file
197− else fetchurl { inherit (src-spec) url sha256; };
163+ # for this to properly work (with inheritance of patches, postPatch, ...)
164+ # this needs to be a function over the values we want to inherit and then called
165+ # accordingly. Most trivial might be to just have args, and mash them into the
166+ # attrset.
167+ src = configured-src;
198168
199169 # configure was run by configured-src already.
200− phases = [ "unpackPhase" "patchPhase" ]
201− ++ lib.optional (ghc-patches != []) "autoreconfPhase"
202− ++ [ "configurePhase" "buildPhase"
170+ phases = [ "unpackPhase" "buildPhase"
203171 "checkPhase" "installPhase"
204172 "fixupPhase"
205173 "installCheckPhase"
206174 "distPhase"
207175 ];
208176
209− # GHC is a bit confused on its cross terminology.
210− preConfigure =
211− # This code is only included when cross compiling as it breaks aarch64-darwin native compilation
212− lib.optionalString (targetPlatform != hostPlatform) ''
213− for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
214− export "''${env#TARGET_}=''${!env}"
215− done
216− # GHC is a bit confused on its cross terminology, as these would normally be
217− # the *host* tools.
218− export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
219− export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx"
220− # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
221− export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString targetPlatform.isAarch32 ".gold"}"
222− export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
223− export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
224− export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
225− export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
226− export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
227− export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip"
228− '' + ''
229− echo -n "${buildMK}" > mk/build.mk
230− sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
231− '' + lib.optionalString useLLVM ''
232− export LLC="${llvmPackages.llvm}/bin/llc"
233− export OPT="${llvmPackages.llvm}/bin/opt"
234− '' + lib.optionalString (!stdenv.isDarwin) ''
235− export NIX_LDFLAGS+=" -rpath $out/lib/${targetPrefix}ghc-${ghc-version}"
236− '' + lib.optionalString stdenv.isDarwin ''
237− export NIX_LDFLAGS+=" -no_dtrace_dof"
238− '' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
239− sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
240− '' + lib.optionalString targetPlatform.isMusl ''
241− echo "patching llvm-targets for musl targets..."
242− echo "Cloning these existing '*-linux-gnu*' targets:"
243− grep linux-gnu llvm-targets | sed 's/^/ /'
244− echo "(go go gadget sed)"
245− sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets
246− echo "llvm-targets now contains these '*-linux-musl*' targets:"
247− grep linux-musl llvm-targets | sed 's/^/ /'
248−
249− echo "And now patching to preserve '-musleabi' as done with '-gnueabi'"
250− # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen)
251− for x in configure aclocal.m4; do
252− substituteInPlace $x \
253− --replace '*-android*|*-gnueabi*)' \
254− '*-android*|*-gnueabi*|*-musleabi*)'
255− done
256− '' + lib.optionalString (src-spec.version != ghc-version) ''
257− substituteInPlace configure --replace 'RELEASE=YES' 'RELEASE=NO'
258− echo '${ghc-version}' > VERSION
259− '' + lib.optionalString (ghc-version-date != null) ''
260− substituteInPlace configure --replace 'RELEASE=YES' 'RELEASE=NO'
261− echo '${ghc-version-date}' > VERSION_DATE
262− '' + lib.optionalString (builtins.compareVersions ghc-version "9.2.3" >= 0) ''
263− ./boot
264− '';
265−
266− configurePlatforms = [ "build" "host" "target" ];
267− # `--with` flags for libraries needed for RTS linker
268− configureFlags = [
269− "--datadir=$doc/share/doc/ghc"
270− "--with-curses-includes=${targetPackages.ncurses.dev}/include" "--with-curses-libraries=${targetPackages.ncurses.out}/lib"
271− ] ++ lib.optionals (targetLibffi != null) ["--with-system-libffi" "--with-ffi-includes=${targetLibffi.dev}/include" "--with-ffi-libraries=${targetLibffi.out}/lib"
272− ] ++ lib.optional (!enableIntegerSimple) [
273− "--with-gmp-includes=${targetGmp.dev}/include" "--with-gmp-libraries=${targetGmp.out}/lib"
274− ] ++ lib.optional (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
275− "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
276− ] ++ lib.optional (targetPlatform != hostPlatform) [
277− "--with-iconv-includes=${targetIconv}/include" "--with-iconv-libraries=${targetIconv}/lib"
278− ] ++ lib.optionals (targetPlatform != hostPlatform) [
279− "--enable-bootstrap-with-devel-snapshot"
280− ] ++ lib.optionals (disableLargeAddressSpace) [
281− "--disable-large-address-space"
282− ] ++ lib.optionals (targetPlatform.isAarch32) [
283− "CFLAGS=-fuse-ld=gold"
284− "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
285− "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
286− ] ++ lib.optionals enableDWARF [
287− "--enable-dwarf-unwind"
288− "--with-libdw-includes=${lib.getDev elfutils}/include"
289− "--with-libdw-libraries=${lib.getLib elfutils}/lib"
290− ];
177+ # ghc hardcodes the TOP dir during config, this breaks when
178+ # splitting the configured src from the build process.
179+ postUnpack = ''
180+ (cd $sourceRoot
181+ TOP=$(cat mk/config.mk|grep ^TOP|awk -F\ '{ print $3 }')
182+ PREFIX=$(cat mk/install.mk|grep ^prefix|awk -F\ '{ print $3 }')
183+
184+ # these two are required
185+ substituteInPlace mk/config.mk --replace "$TOP" "$PWD" \
186+ --replace "$PREFIX" "$out"
187+
188+ substituteInPlace mk/install.mk --replace "$TOP" "$PWD" \
189+ --replace "$PREFIX" "$out"
190+
191+ # these two only for convencience.
192+ substituteInPlace config.log --replace "$TOP" "$PWD"\
193+ --replace "$PREFIX" "$out"
194+ substituteInPlace config.status --replace "$TOP" "$PWD"\
195+ --replace "$PREFIX" "$out")
196+
197+
198+ '';
291199
292200 enableParallelBuilding = true;
293201 postPatch = "patchShebangs .";
@@ -303,19 +211,22 @@ stdenv.mkDerivation (rec {
303211 nativeBuildInputs = [
304212 perl autoconf automake m4 python3 sphinx
305213 ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
306− ] ++ lib.optional (patches != []) autoreconfHook;
214+ ] ++ stdenv.lib.optional (patches != []) autoreconfHook;
307215
308216 # For building runtime libs
309217 depsBuildTarget = toolsForTarget;
310218
311219 buildInputs = [ perl bash ] ++ (libDeps hostPlatform);
312220
313− depsTargetTarget = map lib.getDev (libDeps targetPlatform);
314− depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform);
221+ propagatedBuildInputs = [ targetPackages.stdenv.cc ]
222+ ++ stdenv.lib.optional useLLVM llvmPackages.llvm;
223+
224+ depsTargetTarget = map stdenv.lib.getDev (libDeps targetPlatform);
225+ depsTargetTargetPropagated = map (stdenv.lib.getOutput "out") (libDeps targetPlatform);
315226
316227 # required, because otherwise all symbols from HSffi.o are stripped, and
317228 # that in turn causes GHCi to abort
318− stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
229+ stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
319230
320231 # See #63511 - the only unstripped file is the debug rts which isn't meant to
321232 # be stripped.
@@ -324,21 +235,10 @@ stdenv.mkDerivation (rec {
324235 checkTarget = "test";
325236
326237 hardeningDisable = [ "format" ]
327− ++ lib.optional stdenv.targetPlatform.isAarch32 "pic"
328− ++ lib.optional stdenv.targetPlatform.isMusl "pie";
329−
330− postInstall = lib.optionalString (enableNUMA && targetPlatform.isLinux) ''
331− # Patch rts.conf to ensure libnuma can be found
332−
333− for file in $(find "$out/lib" -name "rts*.conf"); do
334− if grep -q numa $file; then
335− substituteInPlace $file \
336− --replace "library-dirs:" "library-dirs: ${targetNumactl}/lib" \
337− --replace "include-dirs:" "include-dirs: ${targetNumactl}/include"
338− "$out/bin/${targetPrefix}ghc-pkg" recache
339− fi
340− done
341− '' + ''
238+ ++ stdenv.lib.optional stdenv.targetPlatform.isAarch32 "pic"
239+ ++ stdenv.lib.optional stdenv.targetPlatform.isMusl "pie";
240+
241+ postInstall = ''
342242 # Install the bash completion file.
343243 install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
344244
@@ -349,14 +249,16 @@ stdenv.mkDerivation (rec {
349249 # The ghcprog fixup is for musl (where runhaskell script just needs to point to the correct
350250 # ghc program to work).
351251 sed -i \
352− -e '2i export PATH="$PATH:${lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' \
252+ -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' \
353253 -e 's/ghcprog="ghc-/ghcprog="${targetPrefix}ghc-/' \
354254 $i
355255 done
356256
357− # Save generated files for needed when building ghc and ghcjs
257+ # Save generated files for needed when building ghcjs
358258 mkdir -p $generated/includes/dist-derivedconstants/header
359− cp includes/dist-derivedconstants/header/GHCConstantsHaskell*.hs \
259+ cp includes/dist-derivedconstants/header/GHCConstantsHaskellExports.hs \
260+ includes/dist-derivedconstants/header/GHCConstantsHaskellType.hs \
261+ includes/dist-derivedconstants/header/GHCConstantsHaskellWrappers.hs \
360262 $generated/includes/dist-derivedconstants/header
361263 if [[ -f includes/ghcplatform.h ]]; then
362264 cp includes/ghcplatform.h $generated/includes
@@ -365,15 +267,6 @@ stdenv.mkDerivation (rec {
365267 fi
366268 mkdir -p $generated/compiler/stage2/build
367269 cp compiler/stage2/build/Config.hs $generated/compiler/stage2/build || true
368− if [[ -f compiler/stage2/build/GHC/Platform/Constants.hs ]]; then
369− mkdir -p $generated/compiler/stage2/build/GHC/Platform
370− cp compiler/stage2/build/GHC/Platform/Constants.hs $generated/compiler/stage2/build/GHC/Platform
371− fi
372− if [[ -f compiler/stage2/build/GHC/Settings/Config.hs ]]; then
373− mkdir -p $generated/compiler/stage2/build/GHC/Settings
374− cp compiler/stage2/build/GHC/Settings/Config.hs $generated/compiler/stage2/build/GHC/Settings
375− fi
376− cp compiler/stage2/build/*.hs-incl $generated/compiler/stage2/build || true
377270 mkdir -p $generated/rts/build
378271 cp rts/build/config.hs-incl $generated/rts/build || true
379272
@@ -389,21 +282,21 @@ stdenv.mkDerivation (rec {
389282 ${installDeps targetPrefix}
390283
391284 # Sanity checks for https://github.com/input-output-hk/haskell.nix/issues/660
392− if ! "$out/bin/${targetPrefix}ghc" --version; then
285+ if [[ ! -f "$out/bin/${targetPrefix}ghc" ]]; then
393286 echo "ERROR: Missing file $out/bin/${targetPrefix}ghc"
394− exit 1
287+ exit 0
395288 fi
396− if ! "$out/bin/${targetPrefix}ghc-pkg" --version; then
289+ if [[ ! -f "$out/bin/${targetPrefix}ghc-pkg" ]]; then
397290 echo "ERROR: Missing file $out/bin/${targetPrefix}ghc-pkg"
398− exit 1
291+ exit 0
399292 fi
400293 if [[ ! -d "$out/lib/${targetPrefix}ghc-${version}" ]]; then
401294 echo "ERROR: Missing directory $out/lib/${targetPrefix}ghc-${version}"
402− exit 1
295+ exit 0
403296 fi
404297 if (( $(ls -1 "$out/lib/${targetPrefix}ghc-${version}" | wc -l) < 30 )); then
405298 echo "ERROR: Expected more files in $out/lib/${targetPrefix}ghc-${version}"
406− exit 1
299+ exit 0
407300 fi
408301 '';
409302
@@ -412,59 +305,14 @@ stdenv.mkDerivation (rec {
412305
413306 inherit llvmPackages;
414307 inherit enableShared;
415− inherit useLLVM;
416308
417309 # Our Cabal compiler name
418310 haskellCompilerName = "ghc-${version}";
419311
420− # This uses a similar trick to `pkgs.srcOnly` to get the configured src
421− # We could add `configured-src` as an output of the ghc derivation, but
422− # having it as its own derivation means it can be accessed quickly without
423− # building GHC.
424− configured-src = stdenv.mkDerivation ({
425− name = name + "-configured-src";
426− inherit
427− buildInputs
428− version
429− nativeBuildInputs
430− patches
431− src
432− strictDeps
433− depsBuildTarget
434− depsTargetTarget
435− depsTargetTargetPropagated
436− postPatch
437− preConfigure
438− configurePlatforms
439− configureFlags
440− outputs
441− ;
442−
443− # Including all the outputs (not just $out) causes `mkDerivation` to use the nixpkgs multiple-outputs.sh hook.
444− # This hook changes the arguments passed to `configure`.
445− installPhase = ''
446− cp -r . $out
447− mkdir $doc
448− mkdir $generated
449− '';
450− phases = [ "unpackPhase" "patchPhase" ]
451− ++ lib.optional (ghc-patches != []) "autoreconfPhase"
452− ++ [ "configurePhase" "installPhase"];
453− });
312+ configured-src = configured-src;
454313
455314 # Used to detect non haskell-nix compilers (accidental use of nixpkgs compilers can lead to unexpected errors)
456315 isHaskellNixCompiler = true;
457−
458− # The same GHC, but with debug enabled (if it can be)
459− dwarf = lib.makeOverridable self (args // {
460− enableDWARF = stdenv.targetPlatform.isLinux
461− && builtins.compareVersions ghc-version "8.10.2" >= 0;
462− });
463−
464− # The same GHC, but without the large (1TB) address space reservation
465− smallAddressSpace = lib.makeOverridable self (args // {
466− disableLargeAddressSpace = true;
467− });
468316 } // extra-passthru;
469317
470318 meta = {
@@ -474,39 +322,8 @@ stdenv.mkDerivation (rec {
474322 inherit (ghc.meta) license platforms;
475323 };
476324
477− # Needed for `haddock` to work on source that includes non ASCII chars
478− LANG = "en_US.UTF-8";
479− LC_ALL = "en_US.UTF-8";
480−} // lib.optionalAttrs (stdenv.buildPlatform.libc == "glibc") {
481− LOCALE_ARCHIVE = "${buildPackages.glibcLocales}/lib/locale/locale-archive";
482−} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt {
325+} // stdenv.lib.optionalAttrs targetPlatform.useAndroidPrebuilt {
483326 dontStrip = true;
484327 dontPatchELF = true;
485328 noAuditTmpdir = true;
486−} // lib.optionalAttrs (stdenv.buildPlatform.isDarwin || stdenv.targetPlatform.isWindows) {
487− # ghc install on macOS wants to run `xattr -r -c`
488− # The macOS version fails because it wants python 2.
489− # The nix version of xattr does not support those args.
490− # Luckily setting the path to something that does not exist will skip the step.
491− preBuild = lib.optionalString stdenv.buildPlatform.isDarwin ''
492− export XATTR=$(mktemp -d)/nothing
493− ''
494− # We need to point at a stand in `windows.h` header file so that the RTS headers can
495− # work on the hostPlatform. We also need to work around case sensitve file system issues.
496− + lib.optionalString stdenv.targetPlatform.isWindows ''
497− export NIX_CFLAGS_COMPILE_${
498− # We want this only to apply to the non windows hostPlatform (the
499− # windows gcc cross compiler has a full `windows.h`).
500− # This matches the way `suffixSalt` is calculated in nixpkgs.
501− # See https://github.com/NixOS/nixpkgs/blob/8411006d6bcd7f6e6a8a1a80ce8fcdccdd16c6ab/pkgs/build-support/cc-wrapper/default.nix#L58
502− lib.replaceStrings ["-" "."] ["_" "_"] stdenv.hostPlatform.config
503− }+=" -I${../windows/include}"
504− if [[ -f libraries/base/include/winio_structs.h ]]; then
505− substituteInPlace libraries/base/include/winio_structs.h --replace Windows.h windows.h
506− fi
507− if [[ -f rts/win32/ThrIOManager.c ]]; then
508− substituteInPlace rts/win32/ThrIOManager.c --replace rts\\OSThreads.h rts/OSThreads.h
509− fi
510− '';
511−});
512−in self
329+})
compiler/ghc/source-dist.nixdeleted−40
@@ -1,40 +0,0 @@
1−{ src, stdenv, pkgs, version, ghc, alex, happy, hscolour }:
2−stdenv.mkDerivation {
3−
4− inherit version;
5−
6− name = "ghc-source-dist";
7−
8− buildInputs = [ ghc alex happy hscolour ] ++ (with pkgs; [ automake bash git cacert python3 autoconf xorg.lndir ]);
9−
10− inherit src;
11−
12− phases = [ "unpackPhase" "buildPhase" "installPhase" ];
13−
14− buildPhase = ''
15− # Happy and Alex are confused about their data dirs. See
16− # https://github.com/haskell/cabal/issues/5862 for details.
17− #
18− # This is fixed in more recent builds. We can't rely on
19− # custom built tools as computing the source-dist is pretty
20− # much in the bootstrap lane.
21−
22− export alex_datadir=$(find ${alex}/share -name "alex-*" -type d -and -not -path "*doc*")
23− export happy_datadir=$(find ${happy}/share -name "happy-*" -type d -and -not -path "*doc*")
24−
25− # We need to --skip-url-rewrites, ghc is a bit too strict here.
26− python3 ./boot --skip-url-rewrites
27− # let's not flood the screen with garbage.
28− ./configure --silent
29−
30− # this folder ends up being needed for the windows dists; just mock it.
31− mkdir ghc-tarballs
32− make sdist --silent
33− '';
34−
35− installPhase = ''
36− mkdir -p $out
37− install -Dm644 sdistprep/ghc-$(cat VERSION)-src.tar.xz $out/src.tar.xz
38− install -Dm644 sdistprep/ghc-$(cat VERSION)-testsuite.tar.xz $out/testsuite.tar.xz
39− '';
40−}
compiler/ghcjs/ghcjs-src.json+2−2
@@ -1,6 +1,6 @@
11{
22 "url": "https://github.com/ghcjs/ghcjs",
3− "rev": "58ed01e77028108c2b1da10d52cb331788b6a466",
4− "sha256": "1lr3grk5jjm8bvvkndilm06ry1dj7i66k4g27fr009bggdy9q6ws",
3+ "rev": "e87195eaa2bc7e320e18cf10386802bc90b7c874",
4+ "sha256": "02mwkf7aagxqi142gcmq048244apslrr72p568akcab9s0fn2gvy",
55 "fetchSubmodules": true
66}
compiler/ghcjs/ghcjs.nix+29−262
@@ -1,28 +1,18 @@
11{ pkgs
22, ghcjsSrcJson ? ./ghcjs-src.json
33, ghcjsSrc ? pkgs.buildPackages.fetchgit (builtins.fromJSON (builtins.readFile ghcjsSrcJson))
4−, ghcjsVersion ? "8.6.0.0.10"
4+, ghcjsVersion ? "8.6.0.1"
55, ghcVersion ? "8.6.5"
6−, compiler-nix-name ? if builtins.compareVersions ghcjsVersion "8.8.0.0" > 0
7− then "ghc884"
8− else "ghc865"
96, ghc ? pkgs.buildPackages.ghc
10−, overrideBootPackages ? [] # adds if not present, overrides if present.
7+, happy ? pkgs.buildPackages.haskellPackages.happy
8+, alex ? pkgs.buildPackages.haskellPackages.alex
9+, cabal-install ? pkgs.buildPackages.cabal-install
1110}:
1211let
13− isGhcjs88 = builtins.compareVersions ghcjsVersion "8.8.0.0" >= 0;
14− isGhcjs810 = builtins.compareVersions ghcjsVersion "8.10.0.0" >= 0;
15−
1612 project = pkgs.buildPackages.haskell-nix.ghcjsProject {
1713 src = ghcjsSrc;
18− inherit ghcjsVersion compiler-nix-name overrideBootPackages;
19− index-state = "2020-04-25T00:00:00Z";
20− patches = if isGhcjs810
21− then [
22− ./patches/810/fast-weak.patch
23− ./patches/810/boot-optimization-flags.patch
24− ]
25− else [];
14+ inherit ghc ghcjsVersion ghcVersion happy alex cabal-install;
15+ index-state = "2019-12-10T00:00:00Z";
2616# plan-sha256 = "1wy2lr08maxyi7r8jiwf2gj6pdayk5vxxwh42bj4s2gg4035z0yc";
2717# materialized = ../../materialized/ghcjs;
2818 };
@@ -32,270 +22,47 @@ let
3222 all-ghcjs = pkgs.buildPackages.symlinkJoin {
3323 name = "ghcjs-${ghcjsVersion}-symlinked";
3424 paths = [
35− (ghcjs.getComponent "exe:ghcjs-boot")
36− ] ++ (if isGhcjs88
37− then [
38− (ghcjs.getComponent "exe:ghcjs")
39− (ghcjs.getComponent "exe:ghcjs-pkg")
40− (ghcjs.getComponent "exe:private-ghcjs-hsc2hs")
41− (ghcjs.getComponent "exe:haddock")
42− (ghcjs.getComponent "exe:ghcjs-dumparchive")
43− (ghcjs.getComponent "exe:private-ghcjs-run")
44− (ghcjs.getComponent "exe:private-ghcjs-unlit")
45− ]
46− else [
47− (ghcjs.getComponent "exe:private-ghcjs-ghcjs")
48− (ghcjs.getComponent "exe:private-ghcjs-ghcjs-pkg")
49− (ghcjs.getComponent "exe:private-ghcjs-run")
50− (ghcjs.getComponent "exe:private-ghcjs-unlit")
51− (ghcjs.getComponent "exe:private-ghcjs-hsc2hs")
52− (ghcjs.getComponent "exe:private-ghcjs-haddock")
53− (ghcjs.getComponent "exe:private-ghcjs-ghcjs-dumparchive")
54− ]);
25+ ghcjs.components.exes.ghcjs
26+ ghcjs.components.exes.ghcjs-pkg
27+ ghcjs.components.exes.haddock-ghcjs
28+ ghcjs.components.exes.hsc2hs-ghcjs
29+ ghcjs.components.exes.ghcjs-boot
30+ ghcjs.components.exes.ghcjs-run
31+ ghcjs.components.exes.ghcjs-dumparchive
32+ ];
5533 };
5634 libexec = "libexec/${builtins.replaceStrings ["darwin" "i686"] ["osx" "i386"] pkgs.stdenv.buildPlatform.system}-${ghc.name}/ghcjs-${ghcVersion}";
5735 booted-ghcjs = pkgs.stdenv.mkDerivation {
5836 name = "ghcjs-${ghcVersion}";
5937 src = project.configured-src;
6038
61− nativeBuildInputs = project.bootInputs
62− ++ pkgs.lib.optional isGhcjs88 pkgs.buildPackages.procps;
39+ nativeBuildInputs = project.bootInputs;
6340 passthru = {
64− inherit all-ghcjs bundled-ghcjs project;
65− configured-src = project.configured-src + "/ghc";
41+ inherit all-ghcjs;
42+ inherit (project) configured-src;
6643 # Used to detect non haskell-nix compilers (accidental use of nixpkgs compilers can lead to unexpected errors)
6744 isHaskellNixCompiler = true;
6845 } // ghcjs.components.exes;
69− dontUpdateAutotoolsGnuConfigScripts = true;
7046 dontConfigure = true;
7147 dontInstall = true;
7248 buildPhase = ''
73− export HOME=$TMP
74− mkdir $HOME/.cabal
75− touch $HOME/.cabal/config
76− cd lib/boot
77− ${if isGhcjs88
78− then ''
79− mkdir -p $out/bin
80− mkdir -p $out/lib
81− lndir ${all-ghcjs}/bin $out/bin
82− chmod -R +w $out/bin
83− rm $out/bin/ghcjs-boot
84− cp ${ghcjs.getComponent "exe:ghcjs-boot"}/bin/ghcjs-boot $out/bin
85− rm $out/bin/haddock
86− cp ${ghcjs.getComponent "exe:haddock"}/bin/haddock $out/bin
49+ export HOME=$TMP
50+ mkdir $HOME/.cabal
51+ touch $HOME/.cabal/config
52+ cd lib/boot
53+
54+ mkdir -p $out/bin
55+ mkdir -p $out/lib/ghcjs-${ghcVersion}
56+ lndir ${all-ghcjs}/${libexec} $out/bin
8757
88− wrapProgram $out/bin/ghcjs --add-flags "-B$out/lib"
89− wrapProgram $out/bin/haddock --add-flags "-B$out/lib"
90− wrapProgram $out/bin/ghcjs-pkg --add-flags "--global-package-db=$out/lib/package.conf.d"
91− ''
92− else ''
93− mkdir -p $out
94− lndir ${all-ghcjs} $out
95− mkdir -p $out/lib/ghcjs-${ghcVersion}
96− rm $out/bin/ghcjs-boot
97− cp ${ghcjs.getComponent "exe:ghcjs-boot"}/bin/ghcjs-boot $out/bin
98− wrapProgram $out/bin/ghcjs-boot --set ghcjs_libexecdir $out/bin
99− mv $out/${libexec}/* $out/bin
58+ wrapProgram $out/bin/ghcjs --add-flags "-B$out/lib/ghcjs-${ghcVersion}"
59+ wrapProgram $out/bin/haddock-ghcjs --add-flags "-B$out/lib/ghcjs-${ghcVersion}"
60+ wrapProgram $out/bin/ghcjs-pkg --add-flags "--global-package-db=$out/lib/ghcjs-${ghcVersion}/package.conf.d"
10061
101− wrapProgram $out/bin/private-ghcjs-ghcjs --add-flags "-B$out/lib"
102− wrapProgram $out/bin/private-ghcjs-haddock --add-flags "-B$out/lib"
103− wrapProgram $out/bin/private-ghcjs-ghcjs-pkg --add-flags "--global-package-db=$out/lib/package.conf.d"
104− ''
105− }
106− # Avoid timeouts while unix package runs hsc2hs (it does not print anything
107− # for more than 900 seconds).
108− {
109− for n in {1..50}; do
110− if [ ! -f $TMP/done ]; then
111− sleep 300
112− echo Keep alive $n
113− fi
114− done
115− } &
116− ${
117− # Unsets NIX_CFLAGS_COMPILE so the osx version of iconv.h is not used by mistake
118− if isGhcjs810 then ''
119− env -u NIX_CFLAGS_COMPILE PATH=$out/bin:$PATH \
120− $out/bin/ghcjs-boot --with-emsdk=${project.emsdk} --no-haddock \
121− || (echo failed > $TMP/done; false)
122− ''
123− else if isGhcjs88 then ''
124− env -u NIX_CFLAGS_COMPILE PATH=$out/bin:$PATH \
125− $out/bin/ghcjs-boot -j1 --with-emsdk=${project.emsdk} --no-prof --no-haddock \
126− || (echo failed > $TMP/done; false)
127− ''
128− else ''
129− env -u NIX_CFLAGS_COMPILE PATH=$out/bin:$PATH \
130− $out/bin/ghcjs-boot -j1 --with-ghcjs-libdir=$out --with-emsdk=${project.emsdk} \
131− || (echo failed > $TMP/done; false)
132− ''
133− }
134− echo ok > $TMP/done
62+ env PATH=$out/bin:$PATH $out/bin/ghcjs-boot -j1 --with-ghcjs-bin $out/bin
13563 '';
13664 # We hard code -j1 as a temporary workaround for
13765 # https://github.com/ghcjs/ghcjs/issues/654
13866 # enableParallelBuilding = true;
13967 };
140− ghcjs-relocatable-bin = pkgs.stdenv.mkDerivation {
141− name = "ghcjs-relocatable-bin-${ghcVersion}";
142− src = all-ghcjs;
143− dontConfigure = true;
144− dontInstall = true;
145− dontPatchShebangs = true;
146− dontPatchELF = true;
147− buildPhase = ''
148− # Copy the ghcjs exectuables
149− mkdir -p $out/bin
150− cp $src/${libexec}/* $out/bin
151−
152− # Add readlink (needed by bundleRootDir)
153− cp ${pkgs.coreutils}/bin/readlink $out/bin
154−
155− '' + (pkgs.lib.optionalString pkgs.stdenv.isDarwin ''
156− # Make the executables location independent using install_name_tool and @executable_path
157−
158− # Copy the libraries needed into place
159− cp ${pkgs.gmp}/lib/libgmp.10.dylib $out/bin
160− cp ${pkgs.ncurses}/lib/libncursesw.6.dylib $out/bin
161− cp ${pkgs.libffi}/lib/libffi.6.dylib $out/bin
162−
163− # Set the ID of the libraries
164− chmod -R +w $out/bin
165− install_name_tool -id "@executable_path/libgmp.10.dylib" "$out/bin/libgmp.10.dylib"
166− install_name_tool -id "@executable_path/libncursesw.6.dylib" "$out/bin/libncursesw.6.dylib"
167− install_name_tool -id "@executable_path/libffi.6.dylib" "$out/bin/libffi.6.dylib"
168−
169− # Modify all the references so we look for the libraries in the system location or
170− # @executable_path (the directory containin the exetubable itself).
171− for fn in $out/bin/*; do
172− install_name_tool -change "${pkgs.libiconv}/lib/libiconv.dylib" /usr/lib/libiconv.dylib "$fn"
173− install_name_tool -change "${pkgs.stdenv.libc}/lib/libSystem.B.dylib" /usr/lib/libSystem.B.dylib "$fn"
174− install_name_tool -change "${pkgs.gmp}/lib/libgmp.10.dylib" "@executable_path/libgmp.10.dylib" "$fn"
175− install_name_tool -change "${pkgs.ncurses}/lib/libncursesw.6.dylib" "@executable_path/libncursesw.6.dylib" "$fn"
176− install_name_tool -change "${pkgs.libffi}/lib/libffi.6.dylib" "@executable_path/libffi.6.dylib" "$fn"
177− done
178− '')
179−
180− + (pkgs.lib.optionalString pkgs.stdenv.isLinux ''
181− # Make the executables location independent using patchelf and $ORIGIN.
182− chmod -R +w $out/bin
183− # This interpreter setting will not work on nixOS, but this bundle is
184− # not really needed on nixOS systems.
185− patchelf --set-interpreter /lib64/ld-linux-x86-64.so.2 $out/bin/*
186− patchelf --set-rpath '$ORIGIN' $out/bin/*
187− # Link the libraries needed into place
188− ln -s ${pkgs.gmp}/lib/libgmp.so.* $out/bin
189− ln -s ${pkgs.ncurses}/lib/libncursesw.so.* $out/bin
190− ln -s ${pkgs.libffi}/lib/libffi.so.* $out/bin
191− '');
192− };
193− # This is a way to find the location of the root directory of this bundle
194− # when one of the wrapper scripts runs. By using readlink (to avoid
195− # issues with symlinks that might be made to the script) and dirname
196− # we can find the directory even when it may have been moved.
197− bundleRootDir = ''"$(dirname "$(dirname "$(readlink -f "$0")")")"'';
198− bundled-ghcjs = {
199− compilerName ? "ghcjs", # Name for the compiler wrapper
200− db ? null, # A ghcjs package database this argument should can
201− # be `project.(shellFor { ... }).configFiles` or
202− # the result of a `makeConfigFiles` call.
203− hostDb ? null # Like db, but this will be passed as the `-host-package-db`.
204− }:
205− let
206− libDeps = pkgs.lib.concatMapStrings (lib: "${lib} ") (pkgs.lib.unique (
207− [booted-ghcjs ghc db hostDb pkgs.ncurses pkgs.gmp pkgs.libffi]
208− ++ (pkgs.haskell-nix.haskellLib.flatLibDepends db.component)
209− ++ (pkgs.haskell-nix.haskellLib.flatLibDepends hostDb.component)
210− ));
211− in pkgs.stdenv.mkDerivation {
212− name = "${compilerName}-${ghcVersion}-bundle";
213− src = booted-ghcjs;
214− nativeBuildInputs = [ pkgs.makeWrapper pkgs.xorg.lndir ];
215− dontConfigure = true;
216− dontInstall = true;
217− dontPatchShebangs = true;
218− dontPatchELF = true;
219− buildPhase = ''
220− # Copy the ghcjs exectuables
221− mkdir -p $out/bin
222− lndir ${ghcjs-relocatable-bin}/bin $out/bin
223−
224− # Make the executables writeable for patchelf and install_name_tool
225− chmod -R +w $out/bin
226−
227− # And links for the /lib directory of all the dependencies
228− # including the booted ghcjs
229− for lib in ${ libDeps }; do
230− if [ -d $lib/lib ]; then
231− mkdir -p $out/$(basename $lib)
232− lndir -silent $lib $out/$(basename $lib)
233− fi
234− done
235−
236− '' + (pkgs.lib.optionalString pkgs.stdenv.isDarwin ''
237− rm -rf $out/$(basename ${hostDb})/lib/links
238− cp -rL ${hostDb}/lib/links $out/$(basename ${hostDb})/lib
239− chmod -R +w $out/$(basename ${hostDb})/lib/links
240−
241− # Modify all the references so we look for the libraries in the system location or
242− # @executable_path (the directory containin the exetubable itself).
243− for fn in $out/$(basename ${hostDb})/lib/links/*; do
244− install_name_tool -change "${pkgs.libiconv}/lib/libiconv.dylib" /usr/lib/libiconv.dylib "$fn"
245− install_name_tool -change "${pkgs.stdenv.libc}/lib/libSystem.B.dylib" /usr/lib/libSystem.B.dylib "$fn"
246− install_name_tool -change "${pkgs.gmp}/lib/libgmp.10.dylib" "@executable_path/libgmp.10.dylib" "$fn"
247− install_name_tool -change "${pkgs.ncurses}/lib/libncursesw.6.dylib" "@executable_path/libncursesw.6.dylib" "$fn"
248− install_name_tool -change "${pkgs.libffi}/lib/libffi.6.dylib" "@executable_path/libffi.6.dylib" "$fn"
249− done
250− '') + ''
251−
252− # Wrap the programs to add the ghcjs library dir and package DB directories
253− wrapProgram $out/bin/ghcjs \
254− --add-flags '"-B${bundleRootDir}/$(basename ${booted-ghcjs})/lib/ghcjs-${ghcVersion}"' \
255− --add-flags '"-package-db ${db}/${db.packageCfgDir}"' ${
256− pkgs.lib.optionalString (hostDb != null)
257− " --add-flags '-host-package-db=${hostDb}/${hostDb.packageCfgDir}'"
258− }
259− wrapProgram $out/bin/ghcjs-pkg --add-flags '"--global-package-db=${db}/${db.packageCfgDir}"'
260− wrapProgram $out/bin/haddock-ghcjs --add-flags '"-B${bundleRootDir}/$(basename ${booted-ghcjs})/lib/ghcjs-${ghcVersion}"'
261−
262− # Fix the bang pattern to use the systems bash.
263− # Replace the absolute output path ($out) with bundleRootDir
264− # (this will fix the references to the unwarpped executables).
265− # Replace the `/nix/store` refs (in the package DB paths) with
266− # bundleRootDir.
267− sed -i \
268− -e 's|${pkgs.stdenv.shell}|/usr/bin/env -S bash|' \
269− -e "s|$out/|"'${bundleRootDir}/|g' \
270− -e 's|/nix/store/|${bundleRootDir}/|g' \
271− $out/bin/ghcjs $out/bin/haddock-ghcjs $out/bin/ghcjs-pkg
272−
273− # Update the ghcjs and ghc settings files so that `cc` looked up in the PATH.
274− rm $out/$(basename ${booted-ghcjs})/lib/ghcjs-${ghcVersion}/settings
275− sed -e 's|/nix/store/.*/bin/cc|cc|' \
276− < ${booted-ghcjs}/lib/ghcjs-${ghcVersion}/settings \
277− > $out/$(basename ${booted-ghcjs})/lib/ghcjs-${ghcVersion}/settings
278− rm $out/$(basename ${ghc})/lib/ghc-${ghcVersion}/settings
279− sed -e 's|/nix/store/.*/bin/cc|cc|' \
280− < ${ghc}/lib/ghc-${ghcVersion}/settings \
281− > $out/$(basename ${ghc})/lib/ghc-${ghcVersion}/settings
282−
283− # Update the ghcjs settings files so that `node` looked up in the PATH.
284− rm $out/$(basename ${booted-ghcjs})/lib/ghcjs-${ghcVersion}/nodeSettings.json
285− sed -e 's|/nix/store/.*/bin/node|node|' \
286− < ${booted-ghcjs}/lib/ghcjs-${ghcVersion}/nodeSettings.json \
287− > $out/$(basename ${booted-ghcjs})/lib/ghcjs-${ghcVersion}/nodeSettings.json
288−
289− # Update the ghcjs settings files so that `node` looked up in the PATH.
290− rm $out/$(basename ${booted-ghcjs})/lib/ghcjs-${ghcVersion}/ghc_libdir
291− sed -e 's|/nix/store/|../../../|' \
292− < ${booted-ghcjs}/lib/ghcjs-${ghcVersion}/ghc_libdir \
293− > $out/$(basename ${booted-ghcjs})/lib/ghcjs-${ghcVersion}/ghc_libdir
294− '' + (pkgs.lib.optionalString (compilerName != "ghcjs") ''
295− # Rename the wrappers based on the `compilerName` arg
296− mv $out/bin/ghcjs $out/bin/${compilerName}
297− mv $out/bin/ghcjs-pkg $out/bin/${compilerName}-pkg
298− mv $out/bin/haddock-ghcjs $out/bin/haddock-${compilerName}
299− '');
300− };
30168in booted-ghcjs
compiler/ghcjs/ghcjs810-patched-boot-packages/aeson.patchdeleted−13
@@ -1,13 +0,0 @@
1−diff --git a/aeson.cabal b/aeson.cabal
2−index a0ebd59..552f160 100755
3−--- a/aeson.cabal
4−+++ b/aeson.cabal
5−@@ -150,7 +150,7 @@ library
6− dlist >= 0.8.0.4 && < 0.9,
7− hashable >= 1.2.7.0 && < 1.4,
8− scientific >= 0.3.6.2 && < 0.4,
9−- th-abstraction >= 0.2.8.0 && < 0.4,
10−+ th-abstraction >= 0.2.8.0 && < 0.5,
11− uuid-types >= 1.0.3 && < 1.1,
12− vector >= 0.12.0.1 && < 0.13
13−
compiler/ghcjs/ghcjs810-patched-boot-packages/default.nixdeleted−176
@@ -1,176 +0,0 @@
1−{ pkgs
2−, ...
3−}:
4−let
5− patch = p: path: pkgs.runCommand "patched" { buildInputs = [ pkgs.gnupatch ]; } ''
6− cp -r ${path} $out
7− chmod -R +w $out
8− cd $out
9− patch -p1 <${p}
10− '';
11− getSubdir = d: path: pkgs.runCommand "subdir" { } ''
12− cp -r ${path}/${d} $out
13− '';
14−in
15−[
16− {
17− name = "primitive";
18− src = pkgs.fetchgit {
19− url = "https://github.com/haskell/primitive.git";
20− rev = "11ff865fd2157a1dfd7dfd525b1cf27e1a300633";
21− sha256 = "1skim1vlmf0v4ixm8h8ja3m1pz0h10xrfdh1rfzawsy8rvrp2cc0";
22− };
23− }
24− {
25− name = "dlist";
26− src = pkgs.fetchgit {
27− url = "https://github.com/spl/dlist.git";
28− rev = "567cfeb2f5da30f2e5faf167895b3ee04c698ca0";
29− sha256 = "0b8ij3ls7bccbp9rlm8dnflnf1wim9xsg42wmirvwxwmh2c0r0hg";
30− };
31− }
32− {
33− name = "vector";
34− src = pkgs.fetchgit {
35− url = "https://github.com/haskell/vector.git";
36− rev = "de10fd281fa5d8beee3623e809a71385a5ef6864";
37− sha256 = "09vhbvrkw90xgqfrybmhy120rwcy4snw2f97004alr3n96lwpg1q";
38− };
39− }
40− {
41− name = "ghcjs-base";
42− src = patch ./ghcjs-base.patch (pkgs.fetchgit {
43− url = "https://github.com/ghcjs/ghcjs-base.git";
44− rev = "85e31beab9beffc3ea91b954b61a5d04e708b8f2";
45− sha256 = "15fdkjv0l7hpbbsn5238xxgzfdg61g666nzbv2sgxkwryn5rycv0";
46− });
47− }
48− {
49− name = "text";
50− src = pkgs.fetchgit {
51− url = "https://github.com/dfordivam/text.git";
52− rev = "126174753ea8e5f45df8fcbba609e3f1c453bf27";
53− sha256 = "0l7nbln2w77s12fm4ybhi0jsfnxkyiwskfx3b682pfisa6n32rgm";
54− };
55− }
56− {
57− name = "hashable";
58− src = patch ./hashable.patch (pkgs.fetchgit {
59− url = "https://github.com/haskell-unordered-containers/hashable.git";
60− rev = "819fdbeaeeb62ed1344fb057de17fa29b10fa3e1";
61− sha256 = "0xnwfwnnh0bxq16wx0qmdakvgvj8i22km3bhvvki15rd9jil04cc";
62− });
63− }
64− {
65− name = "integer-logarithms";
66− src = pkgs.fetchgit {
67− url = "https://github.com/haskellari/integer-logarithms.git";
68− rev = "df09cef2c8eb0d5899e2bcccee2a4fad413bdc11";
69− sha256 = "1k17hjnjmy44dfywx9nr804qiqmjjhkpfpll5bsfvzvpnl5r75nj";
70− };
71− }
72− {
73− name = "scientific";
74− src = pkgs.fetchgit {
75− url = "https://github.com/basvandijk/scientific.git";
76− rev = "1d049cdf04e2d92ab187754044b0df933c5e6b0d";
77− sha256 = "1v4fmfq8hyhdb5ck5r2b45s1izr7hx97v4g7s597ajbv72ldvilq";
78− };
79− }
80− {
81− name = "attoparsec";
82− src = pkgs.fetchgit {
83− url = "https://github.com/dfordivam/attoparsec.git";
84− rev = "cbfb944aeff61144059a28ada93c579e93ccf7d2";
85− sha256 = "0bbr4943439sy3grwpwbna4mk7iv87ijaiv3jjfhxhp7y67z51h8";
86− };
87− }
88− {
89− name = "splitmix";
90− src = pkgs.fetchgit {
91− url = "https://github.com/haskellari/splitmix.git";
92− rev = "d8c1b57bb75178675423f87b1ff58429f37bc9fe";
93− sha256 = "1m8v439vlwqpqw28dbr04n6m0j2cfb169ly285lp0bjmzcwlr289";
94− };
95− }
96− {
97− name = "random";
98− src = pkgs.fetchgit {
99− url = "https://github.com/haskell/random.git";
100− rev = "8c59bd0fda84fa581d53069b45100d810f5a778f";
101− sha256 = "1drdipfbmpg2g2cdrnq1k8yysh86i7ljwm6zkrrs3g8l47n4ha4d";
102− };
103− }
104− {
105− name = "uuid-types";
106− src = getSubdir "uuid-types" (pkgs.fetchgit {
107− url = "https://github.com/haskell-hvr/uuid.git";
108− rev = "e8dc7126582ba4d3abc5e0f26dc1d8477caab01e";
109− sha256 = "037cnfz7rhkw383rn117b994jzs93i3bwdv47x5qiza5h5syd76f";
110− });
111− }
112− {
113− name = "unordered-containers";
114− src = pkgs.fetchgit {
115− url = "https://github.com/haskell-unordered-containers/unordered-containers.git";
116− rev = "db9ddde2b243366976a1bdfbb12a5e257ca762c3";
117− sha256 = "1wd5hxppj1gg9fa1ihcn3s2y0i70ykv2sf8sym6dlf3r4snda9zi";
118− };
119− }
120− {
121− name = "base-orphans";
122− src = pkgs.fetchgit {
123− url = "https://github.com/haskell-compat/base-orphans.git";
124− rev = "1af3a3512efbcc12e0c34637a0e433ab6e195932";
125− sha256 = "14b6qwc3dbnmrhqk66a2cn4pvv3nf6kb3h7ym1hjn5xs7n62zhw1";
126− };
127− }
128− {
129− name = "time-compat";
130− src = pkgs.fetchgit {
131− url = "https://github.com/haskellari/time-compat.git";
132− rev = "67b8b063295601fb1db185baad363a3f33ed63a9";
133− sha256 = "0nbjsn7yrygv4i1fd8x90mnf4janq536ffvkjd5zsnyzm8qk8k3j";
134− };
135− }
136− {
137− name = "th-abstraction";
138− src = pkgs.fetchgit {
139− url = "https://github.com/glguy/th-abstraction.git";
140− rev = "d75761bc5a0f912aeeb508e2c227b9fd830153fd";
141− sha256 = "070ihxncymzsbrgvwmrm717n0qq5bf9nvc2k210nkil1cwrsnhvc";
142− };
143− }
144− {
145− name = "tagged";
146− src = pkgs.fetchgit {
147− url = "https://github.com/ekmett/tagged.git";
148− rev = "15fcfe90c779efea951ecf4d451d709aed5f7d32";
149− sha256 = "1x1wr4zf7k1kvd6rj06h9shw7p5di1jra9fysyw0jx7riiq0v3ch";
150− };
151− }
152− {
153− name = "base-compat";
154− src = getSubdir "base-compat" (pkgs.fetchgit {
155− url = "https://github.com/haskell-compat/base-compat.git";
156− rev = "e8dbac72251e898fc4b1c1abb34d6578da12f476";
157− sha256 = "1gs15g8h7p8gab9j5fjvjlhrfv112w91plraf9chq80c5slvk016";
158− });
159− }
160− {
161− name = "base-compat-batteries";
162− src = getSubdir "base-compat-batteries" (pkgs.fetchgit {
163− url = "https://github.com/haskell-compat/base-compat.git";
164− rev = "e8dbac72251e898fc4b1c1abb34d6578da12f476";
165− sha256 = "1gs15g8h7p8gab9j5fjvjlhrfv112w91plraf9chq80c5slvk016";
166− });
167− }
168− {
169− name = "aeson";
170− src = patch ./aeson.patch (pkgs.fetchgit {
171− url = "https://github.com/dfordivam/aeson.git";
172− rev = "9a8f57a52eb748a030bc2bcf5c3159a5e2e696b2";
173− sha256 = "1y8j3ddxxddpnb7c0vi73ijb08sr09z1gdzfg1rfyzn82d6i38zv";
174− });
175− }
176−]
compiler/ghcjs/ghcjs810-patched-boot-packages/ghcjs-base.patchdeleted−471
@@ -1,471 +0,0 @@
1−diff --git a/Data/JSString.hs b/Data/JSString.hs
2−index 176aad4..9ca6693 100644
3−--- a/Data/JSString.hs
4−+++ b/Data/JSString.hs
5−@@ -99,6 +99,7 @@ module Data.JSString ( JSString
6− , breakOnEnd
7− , break
8− , span
9−+ , span_
10− , group
11− , group'
12− , groupBy
13−@@ -1231,19 +1232,23 @@ splitAt (I# n) x = case js_splitAt n x of (# y, z #) -> (y, z)
14− -- of @t@ of elements that satisfy @p@, and whose second is the
15− -- remainder of the list.
16− span :: (Char -> Bool) -> JSString -> (JSString, JSString)
17−-span p x = case js_length x of
18−- 0# -> (empty, empty)
19−- l -> let c0 = js_uncheckedIndex 0# x
20−- in if p (C# (chr# c0)) then loop 0# l else (empty, x)
21−+span p x = let (# a, b #) = span_ p x in (a, b)
22−+{-# INLINE span #-}
23−+
24−+span_ :: (Char -> Bool) -> JSString -> (# JSString, JSString #)
25−+span_ p x = case js_length x of
26−+ 0# -> (# empty, empty #)
27−+ l -> let c0 = js_uncheckedIndex 0# x
28−+ in if p (C# (chr# c0)) then loop 0# l else (# empty, x #)
29− where
30− loop i l
31−- | isTrue# (i >=# l) = (x, empty)
32−+ | isTrue# (i >=# l) = (# x, empty #)
33− | otherwise =
34− let c = js_uncheckedIndex i x
35− in if p (C# (chr# c))
36− then loop (i +# charWidth c) l
37−- else (js_substr 0# i x, js_substr1 i x)
38−-{-# INLINE span #-}
39−+ else (# js_substr 0# i x, js_substr1 i x #)
40−+{-# INLINE span_ #-}
41−
42− -- | /O(n)/ 'break' is like 'span', but the prefix returned is
43− -- over elements that fail the predicate @p@.
44−diff --git a/GHCJS/Foreign.hs b/GHCJS/Foreign.hs
45−index 5bbc5c5..b128f24 100644
46−--- a/GHCJS/Foreign.hs
47−+++ b/GHCJS/Foreign.hs
48−@@ -82,7 +82,7 @@ import GHCJS.Marshal
49− import GHCJS.Marshal.Pure
50− -}
51− import Data.String (IsString(..))
52−-import qualified Data.Text as T
53−+-- import qualified Data.Text as T
54−
55−
56− class ToJSString a where
57−diff --git a/GHCJS/Foreign/Internal.hs b/GHCJS/Foreign/Internal.hs
58−index 5ac81f0..449bfe4 100644
59−--- a/GHCJS/Foreign/Internal.hs
60−+++ b/GHCJS/Foreign/Internal.hs
61−@@ -100,10 +100,10 @@ import Data.Typeable (Typeable)
62− import Data.ByteString (ByteString)
63− import Data.ByteString.Unsafe (unsafePackAddressLen)
64−
65−-import qualified Data.Text.Array as A
66−-import qualified Data.Text as T
67−-import qualified Data.Text.Internal as T
68−-import qualified Data.Text.Lazy as TL (Text, toStrict, fromStrict)
69−+-- import qualified Data.Text.Array as A
70−+-- import qualified Data.Text as T
71−+-- import qualified Data.Text.Internal as T
72−+-- import qualified Data.Text.Lazy as TL (Text, toStrict, fromStrict)
73−
74− import Unsafe.Coerce
75−
76−diff --git a/GHCJS/Marshal.hs b/GHCJS/Marshal.hs
77−index a36aca2..6256a73 100644
78−--- a/GHCJS/Marshal.hs
79−+++ b/GHCJS/Marshal.hs
80−@@ -16,7 +16,7 @@
81−
82− module GHCJS.Marshal ( FromJSVal(..)
83− , ToJSVal(..)
84−- , toJSVal_aeson
85−+ -- , toJSVal_aeson
86− , toJSVal_pure
87− ) where
88−
89−@@ -24,17 +24,17 @@ import Control.Applicative
90− import Control.Monad
91− import Control.Monad.Trans.Maybe (MaybeT(..), runMaybeT)
92−
93−-import qualified Data.Aeson as AE
94−-import Data.Attoparsec.Number (Number(..))
95−+-- import qualified Data.Aeson as AE
96−+-- import Data.Attoparsec.Number (Number(..))
97− import Data.Bits ((.&.))
98− import Data.Char (chr, ord)
99−-import qualified Data.HashMap.Strict as H
100−+-- import qualified Data.HashMap.Strict as H
101− import Data.Int (Int8, Int16, Int32)
102− import qualified Data.JSString as JSS
103−-import qualified Data.JSString.Text as JSS
104−+-- import qualified Data.JSString.Text as JSS
105− import Data.Maybe
106−-import Data.Scientific (Scientific, scientific, fromFloatDigits)
107−-import Data.Text (Text)
108−+-- import Data.Scientific (Scientific, scientific, fromFloatDigits)
109−+-- import Data.Text (Text)
110− import qualified Data.Vector as V
111− import Data.Word (Word8, Word16, Word32, Word)
112− import Data.Primitive.ByteArray
113−@@ -85,11 +85,11 @@ instance FromJSVal JSString where
114− {-# INLINE fromJSValUnchecked #-}
115− fromJSVal = fromJSVal_pure
116− {-# INLINE fromJSVal #-}
117−-instance FromJSVal Text where
118−- fromJSValUnchecked = fromJSValUnchecked_pure
119−- {-# INLINE fromJSValUnchecked #-}
120−- fromJSVal = fromJSVal_pure
121−- {-# INLINE fromJSVal #-}
122−+-- instance FromJSVal Text where
123−+-- fromJSValUnchecked = fromJSValUnchecked_pure
124−+-- {-# INLINE fromJSValUnchecked #-}
125−+-- fromJSVal = fromJSVal_pure
126−+-- {-# INLINE fromJSVal #-}
127− instance FromJSVal Char where
128− fromJSValUnchecked = fromJSValUnchecked_pure
129− {-# INLINE fromJSValUnchecked #-}
130−@@ -154,24 +154,24 @@ instance FromJSVal Double where
131− {-# INLINE fromJSValUnchecked #-}
132− fromJSVal = fromJSVal_pure
133− {-# INLINE fromJSVal #-}
134−-instance FromJSVal AE.Value where
135−- fromJSVal r = case jsonTypeOf r of
136−- JSONNull -> return (Just AE.Null)
137−- JSONInteger -> liftM (AE.Number . flip scientific 0 . (toInteger :: Int -> Integer))
138−- <$> fromJSVal r
139−- JSONFloat -> liftM (AE.Number . (fromFloatDigits :: Double -> Scientific))
140−- <$> fromJSVal r
141−- JSONBool -> liftM AE.Bool <$> fromJSVal r
142−- JSONString -> liftM AE.String <$> fromJSVal r
143−- JSONArray -> liftM (AE.Array . V.fromList) <$> fromJSVal r
144−- JSONObject -> do
145−- props <- OI.listProps (OI.Object r)
146−- runMaybeT $ do
147−- propVals <- forM props $ \p -> do
148−- v <- MaybeT (fromJSVal =<< OI.getProp p (OI.Object r))
149−- return (JSS.textFromJSString p, v)
150−- return (AE.Object (H.fromList propVals))
151−- {-# INLINE fromJSVal #-}
152−+-- instance FromJSVal AE.Value where
153−+-- fromJSVal r = case jsonTypeOf r of
154−+-- JSONNull -> return (Just AE.Null)
155−+-- JSONInteger -> liftM (AE.Number . flip scientific 0 . (toInteger :: Int -> Integer))
156−+-- <$> fromJSVal r
157−+-- JSONFloat -> liftM (AE.Number . (fromFloatDigits :: Double -> Scientific))
158−+-- <$> fromJSVal r
159−+-- JSONBool -> liftM AE.Bool <$> fromJSVal r
160−+-- JSONString -> liftM AE.String <$> fromJSVal r
161−+-- JSONArray -> liftM (AE.Array . V.fromList) <$> fromJSVal r
162−+-- JSONObject -> do
163−+-- props <- OI.listProps (OI.Object r)
164−+-- runMaybeT $ do
165−+-- propVals <- forM props $ \p -> do
166−+-- v <- MaybeT (fromJSVal =<< OI.getProp p (OI.Object r))
167−+-- return (JSS.textFromJSString p, v)
168−+-- return (AE.Object (H.fromList propVals))
169−+-- {-# INLINE fromJSVal #-}
170− instance (FromJSVal a, FromJSVal b) => FromJSVal (a,b) where
171− fromJSVal r = runMaybeT $ (,) <$> jf r 0 <*> jf r 1
172− {-# INLINE fromJSVal #-}
173−@@ -204,15 +204,15 @@ jf r n = MaybeT $ do
174− instance ToJSVal JSVal where
175− toJSVal = toJSVal_pure
176− {-# INLINE toJSVal #-}
177−-instance ToJSVal AE.Value where
178−- toJSVal = toJSVal_aeson
179−- {-# INLINE toJSVal #-}
180−+-- instance ToJSVal AE.Value where
181−+-- toJSVal = toJSVal_aeson
182−+-- {-# INLINE toJSVal #-}
183− instance ToJSVal JSString where
184− toJSVal = toJSVal_pure
185− {-# INLINE toJSVal #-}
186−-instance ToJSVal Text where
187−- toJSVal = toJSVal_pure
188−- {-# INLINE toJSVal #-}
189−+-- instance ToJSVal Text where
190−+-- toJSVal = toJSVal_pure
191−+-- {-# INLINE toJSVal #-}
192− instance ToJSVal Char where
193− toJSVal = return . pToJSVal
194− {-# INLINE toJSVal #-}
195−@@ -285,21 +285,21 @@ foreign import javascript unsafe "[$1,$2,$3,$4,$5]" arr5 :: JSVal -> J
196− foreign import javascript unsafe "[$1,$2,$3,$4,$5,$6]" arr6 :: JSVal -> JSVal -> JSVal -> JSVal -> JSVal -> JSVal -> IO JSVal
197− foreign import javascript unsafe "[$1,$2,$3,$4,$5,$6,$7]" arr7 :: JSVal -> JSVal -> JSVal -> JSVal -> JSVal -> JSVal -> JSVal -> IO JSVal
198−
199−-toJSVal_aeson :: AE.ToJSON a => a -> IO JSVal
200−-toJSVal_aeson x = cv (AE.toJSON x)
201−- where
202−- cv = convertValue
203−+-- toJSVal_aeson :: AE.ToJSON a => a -> IO JSVal
204−+-- toJSVal_aeson x = cv (AE.toJSON x)
205−+-- where
206−+-- cv = convertValue
207−
208−- convertValue :: AE.Value -> IO JSVal
209−- convertValue AE.Null = return jsNull
210−- convertValue (AE.String t) = return (pToJSVal t)
211−- convertValue (AE.Array a) = (\(AI.SomeJSArray x) -> x) <$>
212−- (AI.fromListIO =<< mapM convertValue (V.toList a))
213−- convertValue (AE.Number n) = toJSVal (realToFrac n :: Double)
214−- convertValue (AE.Bool b) = return (toJSBool b)
215−- convertValue (AE.Object o) = do
216−- obj@(OI.Object obj') <- OI.create
217−- mapM_ (\(k,v) -> convertValue v >>= \v' -> OI.setProp (JSS.textToJSString k) v' obj) (H.toList o)
218−- return obj'
219−+-- convertValue :: AE.Value -> IO JSVal
220−+-- convertValue AE.Null = return jsNull
221−+-- convertValue (AE.String t) = return (pToJSVal t)
222−+-- convertValue (AE.Array a) = (\(AI.SomeJSArray x) -> x) <$>
223−+-- (AI.fromListIO =<< mapM convertValue (V.toList a))
224−+-- convertValue (AE.Number n) = toJSVal (realToFrac n :: Double)
225−+-- convertValue (AE.Bool b) = return (toJSBool b)
226−+-- convertValue (AE.Object o) = do
227−+-- obj@(OI.Object obj') <- OI.create
228−+-- mapM_ (\(k,v) -> convertValue v >>= \v' -> OI.setProp (JSS.textToJSString k) v' obj) (H.toList o)
229−+-- return obj'
230−
231−
232−diff --git a/GHCJS/Marshal/Pure.hs b/GHCJS/Marshal/Pure.hs
233−index 902fa20..268489d 100644
234−--- a/GHCJS/Marshal/Pure.hs
235−+++ b/GHCJS/Marshal/Pure.hs
236−@@ -28,11 +28,11 @@ import Data.Data
237− import Data.Int (Int8, Int16, Int32)
238− import Data.JSString.Internal.Type
239− import Data.Maybe
240−-import Data.Text (Text)
241−+-- import Data.Text (Text)
242− import Data.Typeable
243− import Data.Word (Word8, Word16, Word32, Word)
244− import Data.JSString
245−-import Data.JSString.Text
246−+-- import Data.JSString.Text
247− import Data.Bits ((.&.))
248− import Unsafe.Coerce (unsafeCoerce)
249− import GHC.Int
250−@@ -65,8 +65,8 @@ instance PFromJSVal JSString where pFromJSVal = JSString
251− {-# INLINE pFromJSVal #-}
252− instance PFromJSVal [Char] where pFromJSVal = Prim.fromJSString
253− {-# INLINE pFromJSVal #-}
254−-instance PFromJSVal Text where pFromJSVal = textFromJSVal
255−- {-# INLINE pFromJSVal #-}
256−+-- instance PFromJSVal Text where pFromJSVal = textFromJSVal
257−+-- {-# INLINE pFromJSVal #-}
258− instance PFromJSVal Char where pFromJSVal x = C# (jsvalToChar x)
259− {-# INLINE pFromJSVal #-}
260− instance PFromJSVal Bool where pFromJSVal = isTruthy
261−@@ -103,8 +103,8 @@ instance PToJSVal JSString where pToJSVal = jsval
262− {-# INLINE pToJSVal #-}
263− instance PToJSVal [Char] where pToJSVal = Prim.toJSString
264− {-# INLINE pToJSVal #-}
265−-instance PToJSVal Text where pToJSVal = jsval . textToJSString
266−- {-# INLINE pToJSVal #-}
267−+-- instance PToJSVal Text where pToJSVal = jsval . textToJSString
268−+-- {-# INLINE pToJSVal #-}
269− instance PToJSVal Char where pToJSVal (C# c) = charToJSVal c
270− {-# INLINE pToJSVal #-}
271− instance PToJSVal Bool where pToJSVal True = jsTrue
272−diff --git a/JavaScript/JSON/Types/Instances.hs b/JavaScript/JSON/Types/Instances.hs
273−index 2b288ec..6d7074c 100644
274−--- a/JavaScript/JSON/Types/Instances.hs
275−+++ b/JavaScript/JSON/Types/Instances.hs
276−@@ -57,7 +57,7 @@ import Control.Applicative ((<$>), (<*>), (<|>), pure, empty)
277−
278− import Data.JSString (JSString)
279− import qualified Data.JSString as JSS
280−-import qualified Data.JSString.Text as JSS
281−+-- import qualified Data.JSString.Text as JSS
282−
283− import JavaScript.Array (JSArray)
284− import qualified JavaScript.Array as JSA
285−@@ -335,21 +335,21 @@ instance FromJSON JSString where
286− parseJSON = withJSString "JSString" pure
287− {-# INLINE parseJSON #-}
288−
289−-instance ToJSON Text where
290−- toJSON = stringValue . JSS.textToJSString
291−- {-# INLINE toJSON #-}
292−+-- instance ToJSON Text where
293−+-- toJSON = stringValue . JSS.textToJSString
294−+-- {-# INLINE toJSON #-}
295−
296−-instance FromJSON Text where
297−- parseJSON = withJSString "Text" ( pure . JSS.textFromJSString )
298−- {-# INLINE parseJSON #-}
299−+-- instance FromJSON Text where
300−+-- parseJSON = withJSString "Text" ( pure . JSS.textFromJSString )
301−+-- {-# INLINE parseJSON #-}
302−
303−-instance ToJSON LT.Text where
304−- toJSON = stringValue . JSS.textToJSString . LT.toStrict
305−- {-# INLINE toJSON #-}
306−+-- instance ToJSON LT.Text where
307−+-- toJSON = stringValue . JSS.textToJSString . LT.toStrict
308−+-- {-# INLINE toJSON #-}
309−
310−-instance FromJSON LT.Text where
311−- parseJSON = withJSString "Lazy Text" $ pure . LT.fromStrict . JSS.textFromJSString
312−- {-# INLINE parseJSON #-}
313−+-- instance FromJSON LT.Text where
314−+-- parseJSON = withJSString "Lazy Text" $ pure . LT.fromStrict . JSS.textFromJSString
315−+-- {-# INLINE parseJSON #-}
316−
317− instance (ToJSON a) => ToJSON [a] where
318− toJSON = arrayValue . arrayValueList . map toJSON
319−diff --git a/JavaScript/Web/Canvas.hs b/JavaScript/Web/Canvas.hs
320−index 0a7684c..74490c2 100644
321−--- a/JavaScript/Web/Canvas.hs
322−+++ b/JavaScript/Web/Canvas.hs
323−@@ -69,7 +69,7 @@ import Control.Monad
324−
325− import Data.Data
326− import Data.Maybe (fromJust)
327−-import Data.Text (Text)
328−+-- import Data.Text (Text)
329− import Data.Typeable
330−
331− import GHCJS.Foreign
332−diff --git a/ghcjs-base.cabal b/ghcjs-base.cabal
333−index 4a64694..acf8806 100644
334−--- a/ghcjs-base.cabal
335−+++ b/ghcjs-base.cabal
336−@@ -55,7 +55,7 @@ library
337− Data.JSString.RealFloat
338− Data.JSString.RegExp
339− Data.JSString.Internal
340−- Data.JSString.Text
341−+ -- Data.JSString.Text
342− Data.JSString.Internal.Fusion
343− Data.JSString.Internal.Fusion.Types
344− Data.JSString.Internal.Fusion.Common
345−@@ -78,12 +78,12 @@ library
346− JavaScript.Array.Internal
347− JavaScript.Array.ST
348− JavaScript.Cast
349−- JavaScript.JSON
350−- JavaScript.JSON.Types
351−- JavaScript.JSON.Types.Class
352−- JavaScript.JSON.Types.Generic
353−- JavaScript.JSON.Types.Instances
354−- JavaScript.JSON.Types.Internal
355−+ -- JavaScript.JSON
356−+ -- JavaScript.JSON.Types
357−+ -- JavaScript.JSON.Types.Class
358−+ -- JavaScript.JSON.Types.Generic
359−+ -- JavaScript.JSON.Types.Instances
360−+ -- JavaScript.JSON.Types.Internal
361− JavaScript.Number
362− JavaScript.Object
363− JavaScript.Object.Internal
364−@@ -115,11 +115,11 @@ library
365− JavaScript.Web.Storage
366− JavaScript.Web.Storage.Internal
367− JavaScript.Web.StorageEvent
368−- JavaScript.Web.XMLHttpRequest
369−+ -- JavaScript.Web.XMLHttpRequest
370− JavaScript.Web.WebSocket
371− JavaScript.Web.Worker
372−- other-modules: GHCJS.Internal.Types
373− Data.JSString.Internal.Type
374−+ other-modules: GHCJS.Internal.Types
375− JavaScript.TypedArray.Internal.Types
376− JavaScript.TypedArray.ArrayBuffer.Internal
377− JavaScript.TypedArray.DataView.Internal
378−@@ -144,15 +144,15 @@ library
379− integer-gmp,
380− binary >= 0.8 && < 0.11,
381− bytestring >= 0.10 && < 0.11,
382−- text >= 1.1 && < 1.3,
383−- aeson >= 0.8 && < 1.6,
384−- scientific >= 0.3 && < 0.4,
385−+ -- text >= 1.1 && < 1.3,
386−+ -- aeson >= 0.8 && < 1.6,
387−+ -- scientific >= 0.3 && < 0.4,
388− vector >= 0.10 && < 0.13,
389− containers >= 0.5 && < 0.7,
390− time >= 1.5 && < 1.10,
391−- hashable >= 1.2 && < 1.4,
392−- unordered-containers >= 0.2 && < 0.3,
393−- attoparsec >= 0.11 && < 0.15,
394−+ -- hashable >= 1.2 && < 1.4,
395−+ -- unordered-containers >= 0.2 && < 0.3,
396−+ -- attoparsec >= 0.11 && < 0.15,
397− transformers >= 0.3 && < 0.6,
398− primitive >= 0.5 && < 0.8,
399− deepseq >= 1.3 && < 1.5,
400−@@ -161,37 +161,37 @@ library
401− if !impl(ghcjs) && !os(ghcjs)
402− buildable: False
403−
404−-test-suite tests
405−- type: exitcode-stdio-1.0
406−- hs-source-dirs: test
407−- main-is: Tests.hs
408−- other-modules: Tests.Marshal
409−- Tests.Properties
410−- Tests.Properties.Numeric
411−- Tests.SlowFunctions
412−- Tests.QuickCheckUtils
413−- Tests.Regressions
414−- Tests.Utils
415−- ghc-options:
416−- -Wall -rtsopts
417−- build-depends:
418−- HUnit >= 1.2,
419−- QuickCheck >= 2.7,
420−- array,
421−- text,
422−- base,
423−- bytestring,
424−- deepseq,
425−- directory,
426−- ghc-prim,
427−- ghcjs-prim,
428−- ghcjs-base,
429−- primitive,
430−- quickcheck-unicode,
431−- random,
432−- test-framework >= 0.4,
433−- test-framework-hunit >= 0.2,
434−- test-framework-quickcheck2 >= 0.2
435−- default-language: Haskell2010
436−- if !impl(ghcjs) && !os(ghcjs)
437−- buildable: False
438−+-- test-suite tests
439−+-- type: exitcode-stdio-1.0
440−+-- hs-source-dirs: test
441−+-- main-is: Tests.hs
442−+-- other-modules: Tests.Marshal
443−+-- Tests.Properties
444−+-- Tests.Properties.Numeric
445−+-- Tests.SlowFunctions
446−+-- Tests.QuickCheckUtils
447−+-- Tests.Regressions
448−+-- Tests.Utils
449−+-- ghc-options:
450−+-- -Wall -rtsopts
451−+-- build-depends:
452−+-- HUnit >= 1.2,
453−+-- QuickCheck >= 2.7,
454−+-- array,
455−+-- text,
456−+-- base,
457−+-- bytestring,
458−+-- deepseq,
459−+-- directory,
460−+-- ghc-prim,
461−+-- ghcjs-prim,
462−+-- ghcjs-base,
463−+-- primitive,
464−+-- quickcheck-unicode,
465−+-- random,
466−+-- test-framework >= 0.4,
467−+-- test-framework-hunit >= 0.2,
468−+-- test-framework-quickcheck2 >= 0.2
469−+-- default-language: Haskell2010
470−+-- if !impl(ghcjs) && !os(ghcjs)
471−+-- buildable: False
compiler/ghcjs/ghcjs810-patched-boot-packages/hashable.patchdeleted−99
@@ -1,99 +0,0 @@
1−diff --git a/hashable.cabal b/hashable.cabal
2−index 4197060..8c339b1 100755
3−--- a/hashable.cabal
4−+++ b/hashable.cabal
5−@@ -88,6 +88,8 @@ library
6− build-depends: ghc-bignum ==1.0.* || ==1.2.*
7−
8− else
9−+ if impl(ghcjs)
10−+ build-depends: ghcjs-base
11− if flag(integer-gmp)
12− build-depends: integer-gmp >=0.4 && <1.1
13−
14−diff --git a/src/Data/Hashable/Class.hs b/src/Data/Hashable/Class.hs
15−index c7dd8c5..0e3bbe7 100755
16−--- a/src/Data/Hashable/Class.hs
17−+++ b/src/Data/Hashable/Class.hs
18−@@ -5,6 +5,10 @@
19−
20− {-# LANGUAGE Trustworthy #-}
21−
22−+#ifdef __GHCJS__
23−+{-# LANGUAGE JavaScriptFFI, UnboxedTuples, GHCForeignImportPrim #-}
24−+#endif
25−+
26− #if __GLASGOW_HASKELL__ >= 801
27− {-# LANGUAGE PolyKinds #-} -- For TypeRep instances
28− #endif
29−@@ -72,7 +76,9 @@ import Data.Int (Int8, Int16, Int32, Int64)
30− import Data.List (foldl')
31− import Data.Ratio (Ratio, denominator, numerator)
32− import qualified Data.Text as T
33−+#ifndef __GHCJS__
34− import qualified Data.Text.Array as TA
35−+#endif
36− import qualified Data.Text.Internal as T
37− import qualified Data.Text.Lazy as TL
38− import Data.Version (Version(..))
39−@@ -152,7 +158,11 @@ import GHC.Exts (Int (..), sizeofByteArray#)
40− # define MIN_VERSION_integer_gmp_1_0_0
41− # endif
42−
43−+#ifndef __GHCJS__
44− import GHC.Exts (Int(..))
45−+#else
46−+import GHC.Exts (Int(..), Int#)
47−+#endif
48− import GHC.Integer.GMP.Internals (Integer(..))
49− # if defined(MIN_VERSION_integer_gmp_1_0_0)
50− import GHC.Exts (sizeofByteArray#)
51−@@ -195,6 +205,10 @@ import Data.Kind (Type)
52− import Data.Hashable.Imports
53− import Data.Hashable.LowLevel
54−
55−+#ifdef __GHCJS__
56−+import Data.JSString (JSString)
57−+#endif
58−+
59− #include "MachDeps.h"
60−
61− infixl 0 `hashWithSalt`
62−@@ -676,17 +690,18 @@ instance Hashable BSI.ShortByteString where
63− #endif
64−
65− instance Hashable T.Text where
66−+#ifndef __GHCJS__
67− hashWithSalt salt (T.Text arr off len) =
68− hashByteArrayWithSalt (TA.aBA arr) (off `shiftL` 1) (len `shiftL` 1)
69− (hashWithSalt salt len)
70−+#else
71−+ hashWithSalt salt (T.Text txt) =
72−+ let (# ba, len #) = js_textFromJSString txt
73−+ in hashByteArrayWithSalt ba (0 `shiftL` 1) (I# len `shiftL` 1) salt
74−+#endif
75−
76− instance Hashable TL.Text where
77−- hashWithSalt salt = finalise . TL.foldlChunks step (SP salt 0)
78−- where
79−- finalise (SP s l) = hashWithSalt s l
80−- step (SP s l) (T.Text arr off len) = SP
81−- (hashByteArrayWithSalt (TA.aBA arr) (off `shiftL` 1) (len `shiftL` 1) s)
82−- (l + len)
83−+ hashWithSalt = TL.foldlChunks hashWithSalt
84−
85− -- | Compute the hash of a ThreadId.
86− hashThreadId :: ThreadId -> Int
87−@@ -880,6 +895,12 @@ instance Hashable1 Option where liftHashWithSalt h salt (Option a) = liftHashWit
88− #endif
89− #endif
90−
91−+#ifdef __GHCJS__
92−+foreign import javascript unsafe
93−+ "h$textFromString"
94−+ js_textFromJSString :: JSString -> (# ByteArray#, Int# #)
95−+#endif
96−+
97− -- instances for @Data.Functor.{Product,Sum,Compose}@, present
98− -- in base-4.9 and onward.
99− #if MIN_VERSION_base(4,9,0)
compiler/ghcjs/ghcjs810-src.jsondeleted−6
@@ -1,6 +0,0 @@
1−{
2− "url": "https://github.com/ghcjs/ghcjs",
3− "rev": "bb403ec3a1506831aae2d608b7b21c1937e4fb20",
4− "sha256": "0bs3hijwn0p4wvphwg78mwbz8qyi10wqgfh8yfaszaj1766892ba",
5− "fetchSubmodules": true
6−}
compiler/ghcjs/ghcjs88-src.jsondeleted−6
@@ -1,6 +0,0 @@
1−{
2− "url": "https://github.com/ghcjs/ghcjs",
3− "rev": "1af48a877fdf1f647a3b81e828a1e61adb0baceb",
4− "sha256": "sha256-B4LFpd1nl96SO6/gsTjkizMGSglMkrujmwgXVjahC68=",
5− "fetchSubmodules": true
6−}
compiler/ghcjs/patches/810/boot-optimization-flags.patchdeleted−14
@@ -1,14 +0,0 @@
1−diff --git a/src-bin/Boot.hs b/src-bin/Boot.hs
2−index 2e35a26..5db2f9b 100755
3−--- a/src-bin/Boot.hs
4−+++ b/src-bin/Boot.hs
5−@@ -721,6 +721,9 @@ cabalConfigureFlags = do
6− , "--prefix", T.pack (locs ^. blGhcjsTopDir)
7− , "--configure-option", "--host=js-unknown-ghcjs"
8− , "--ghcjs-options=-fwrite-ide-info"
9−+ , "--ghcjs-options=-O2"
10−+ , "--ghcjs-options=-fexpose-all-unfoldings"
11−+ , "--ghcjs-options=-fspecialise-aggressively"
12− , "--enable-debug-info"
13− , "--disable-library-stripping"
14− , "--disable-executable-stripping"
compiler/ghcjs/patches/810/fast-weak.patchdeleted−87
@@ -1,87 +0,0 @@
1−diff --git a/lib/boot/shims/src/gc.js.pp b/lib/boot/shims/src/gc.js.pp
2−index 76321b2..a2cf416 100644
3−--- a/lib/boot/shims/src/gc.js.pp
4−+++ b/lib/boot/shims/src/gc.js.pp
5−@@ -444,6 +444,50 @@ function h$follow(obj, sp) {
6− } else if(typeof c.len === 'number' && c.buf instanceof ArrayBuffer) {
7− TRACE_GC("marking ByteArray");
8− MARK_OBJ(c);
9−+ } else if(c instanceof h$FastWeak) {
10−+ MARK_OBJ(c);
11−+ if(c.ticket !== null && !IS_MARKED(c.ticket)) {
12−+ c.ticket = null; // If the ticket isn't reachable, this will let it get cleaned up by the JS gc; if it is reachable, it'll fill this back in
13−+ }
14−+ } else if(c instanceof h$FastWeakTicket) {
15−+ MARK_OBJ(c);
16−+ if(!IS_MARKED(c.val)) {
17−+ ADDW(c.val);
18−+ }
19−+ if(IS_MARKED(c.weak)) {
20−+ // In this case, the weak side has been marked first, which means it's been cleared; restore it
21−+ c.weak.ticket = c;
22−+ }
23−+ } else if(c instanceof h$FastWeakBag) {
24−+ MARK_OBJ(c);
25−+ var j = 0; // j should always be equal to the number of not-yet-necessarily-dead tickets that have been traversed; this should always be less than or equal to i
26−+ for(i = 0; i < c.tickets.length; i++) {
27−+ // Any nulls left in the array prior to checking on the tickets must be tickets that died in the last GC, so we ignore them
28−+ if(c.tickets[i] !== null) {
29−+ if(j !== i) {
30−+ c.tickets[i].pos = j;
31−+ }
32−+ if(!IS_MARKED(c.tickets[i])) {
33−+ // If the ticket isn't reachable, this will let it get cleaned up by the JS gc; if it is reachable, it'll fill this back in
34−+ c.tickets[j] = null;
35−+ } else if(j !== i) {
36−+ // We need to move the item
37−+ c.tickets[j] = c.tickets[i];
38−+ } // If it's marked and not moving, don't do anything
39−+ j++;
40−+ }
41−+ }
42−+ c.tickets.length = j; // Shrink the array if any nulls have been dropped
43−+ } else if(c instanceof h$FastWeakBagTicket) {
44−+ MARK_OBJ(c);
45−+ if(!IS_MARKED(c.val)) {
46−+ ADDW(c.val);
47−+ }
48−+ if(IS_MARKED(c.bag)) {
49−+ // In this case, the weak side has been marked first, which means it's been cleared; restore it
50−+ c.bag.tickets[c.pos] = c;
51−+ }
52−+
53− } else if(c instanceof h$Weak) {
54− MARK_OBJ(c);
55− } else if(c instanceof h$MVar) {
56−diff --git a/lib/boot/shims/src/weak.js.pp b/lib/boot/shims/src/weak.js.pp
57−index 8df313b..d537027 100644
58−--- a/lib/boot/shims/src/weak.js.pp
59−+++ b/lib/boot/shims/src/weak.js.pp
60−@@ -87,3 +87,27 @@ function h$finalizeWeak(w) {
61− RETURN_UBX_TUP2(r, 1);
62− }
63− }
64−+
65−+function h$FastWeak(ticket) {
66−+ this.ticket = ticket;
67−+ this.m = 0;
68−+}
69−+
70−+function h$FastWeakTicket(val) {
71−+ this.val = val;
72−+ this.weak = new h$FastWeak(this);
73−+ this.m = 0;
74−+}
75−+
76−+function h$FastWeakBag() {
77−+ this.tickets = [];
78−+ this.m = 0;
79−+}
80−+
81−+function h$FastWeakBagTicket(bag, val) {
82−+ this.val = val;
83−+ this.bag = bag;
84−+ this.pos = bag.tickets.length;
85−+ bag.tickets.push(this);
86−+ this.m = 0;
87−+};
compiler/old-ghc-nix/default.nixnew file+10
@@ -0,0 +1,10 @@
1+{ pkgs ? import <nixpkgs> {} }:
2+let
3+ fetch = jsonFile:
4+ with builtins;
5+ let spec = fromJSON (readFile jsonFile);
6+ in pkgs.fetchgit {
7+ name = "old-ghc-nix";
8+ inherit (spec) sha256 url rev;
9+ };
10+in import (fetch ./old-ghc-nix.json) { inherit pkgs; }
compiler/old-ghc-nix/old-ghc-nix.jsonnew file+7
@@ -0,0 +1,7 @@
1+{
2+ "url": "https://github.com/angerman/old-ghc-nix",
3+ "rev": "2a41a09127f6dc7a6384823d1acd51ba257f95bd",
4+ "date": "2020-06-03T12:50:09+08:00",
5+ "sha256": "1cp6aksb6ldgjb5zyqikyjrjij79n9z7wd86migph0wp19vmszkf",
6+ "fetchSubmodules": false
7+}
compiler/windows/include/synchapi.hdeleted−1
@@ -1 +0,0 @@
1−#include <windows.h>
compiler/windows/include/windows.hdeleted−18
@@ -1,18 +0,0 @@
1−// Just enoough windows.h stuff to make rts headers usable when building GHC cross compiler.
2−// See compiler/ghc/default.nix for where this is used.
3−#ifndef _WINDOWS_
4−#define _WINDOWS_
5−
6−#define __stdcall
7−
8−typedef unsigned long DWORD;
9−typedef void * PVOID;
10−
11−typedef struct _RTL_CONDITION_VARIABLE { PVOID Ptr; } RTL_CONDITION_VARIABLE;
12−typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE;
13−
14−typedef struct _RTL_SRWLOCK { PVOID Ptr; } RTL_SRWLOCK;
15−typedef RTL_SRWLOCK SRWLOCK;
16−
17−#endif
18−
config.nix+4
@@ -2,7 +2,11 @@
22 # allow building for windows
33 allowUnsupportedSystem = true;
44 # we want the 64bit wine version
5+ # See overlays/wine.nix as well!
56 wine.build = "wine64";
67 wine.release = "stable";
8+
9+ # This is marked insecure on 20.03, but many packages still depend on it
10+ permittedInsecurePackages = [ "openssl-1.0.2u" ];
711}
812
default.nix+28−29
@@ -1,29 +1,28 @@
1−{...}@args:
2−
3−let
4− nixpkgsSrc =
5− builtins.fetchTarball {
6− url = "https://github.com/NixOS/nixpkgs/archive/110a2c9ebbf5d4a94486854f18a37a938cfacbbb.tar.gz";
7− sha256 = "sha256-leWXLchbAbqOlLT6tju631G40SzQWPqaAXQG3zH1Imw=";
8− };
9− pkgs = args.pkgs or (import nixpkgsSrc {});
10− flake-compat =
11− pkgs.fetchzip {
12− url = "https://github.com/edolstra/flake-compat/archive/5523c47f13259b981c49b26e28499724a5125fd8.tar.gz";
13− sha256 = "sha256-7IySNHriQjzOZ88DDk6VDPf1GoUaOrOeUdukY62o52o=";
14− };
15− self = import flake-compat {
16− # We bypass flake-compat's rootSrc cleaning by evading its detection of this as a git
17− # repo.
18− # This is done for 3 reasons:
19− # * To workaround https://github.com/edolstra/flake-compat/issues/25
20− # * Make `updateMaterilized` scripts work (if filtering is done by `flake-compat`
21− # the `updateMaterilized` scripts will try to update the copy in the store).
22− # * Allow more granular filtering done by the tests (the use of `cleanGit` and `cleanSourceWith`
23− # in `test/default.nix`). If `flake-compat` copies the whole git repo, any change to the
24− # repo causes a change of input for all tests.
25− src = { outPath = ./.; };
26− inherit pkgs;
27− };
28−in self.defaultNix // (self.defaultNix.internal.compat
29−({ system = args.pkgs.system or builtins.currentSystem; } // args))
1+{ checkMaterialization ? false # Allows us to easily switch on materialization checking
2+, system ? builtins.currentSystem
3+, sourcesOverride ? {}
4+, ... }@args: rec {
5+ sources = (import ./nix/sources.nix) // sourcesOverride;
6+ config = import ./config.nix;
7+ overlays = [ allOverlays.combined ] ++ (
8+ if checkMaterialization == true
9+ then [(
10+ final: prev: {
11+ haskell-nix = prev.haskell-nix // {
12+ checkMaterialization = true;
13+ };
14+ }
15+ )]
16+ else []
17+ ) ++ [(
18+ final: prev: {
19+ haskell-nix = prev.haskell-nix // {
20+ inherit overlays;
21+ sources = prev.haskell-nix.sources // sourcesOverride;
22+ };
23+ }
24+ )];
25+ allOverlays = import ./overlays args;
26+ nixpkgsArgs = { inherit config overlays system; };
27+ pkgs = import sources.nixpkgs nixpkgsArgs;
28+}
docs/dev/coverage.mddeleted−180
@@ -1,180 +0,0 @@
1−# Developer Coverage Overview
2−
3−## Building
4−
5−The implementation of coverage starts with the "doCoverage" flag on
6−the builder in `comp-builder.nix`. The doCoverage flag enables and
7−disables the Cabal coverage flag and copies any generated coverage
8−data to "$out/share/hpc".
9−
10−### Mix and tix files
11−
12−The coverage information for any derivation consists of "mix" and
13−"tix" files.
14−
15−Mix files record static information about a source file and are
16−generated at build time. They primarily contain a path to the source
17−file and information about expressions and regions of the source file,
18−which are later referenced by tix files.
19−
20−Tix files contain dynamic information about a test run, recording when
21−a portion of a source file is touched by a test. These are generated
22−when the test is run.
23−
24−### Multiple local packages
25−
26−In the context of multiple local packages, there are a few types of
27−coverage we might be interested in:
28− - How well does the tests for this package cover the package library?
29− - How well does the tests for this package cover the libraries of
30− other packages in this project?
31− - Both of the above.
32−
33−To facilitate expressing any of these classifications of coverage, the
34−`lib/cover.nix` function provides the `mixLibraries` argument. If
35−you're just interested in how the tests cover the package library, you
36−provide that library as an argument to `mixLibraries`. If you're
37−interested in how the tests also cover other local packages in the
38−project, you can also provide those libraries as arguments to
39−mixLibraries.
40−
41−The `projectCoverageReport` and `coverageReport` attributes that are
42−provided by default on projects and packages respectively provide
43−coverage information for *all* local packages in the project. This is
44−to mimic the behaviour of Stack, which seems to be the expectation of
45−most people. Of course, you can use the `projectCoverageReport` and
46−`coverageReport` functions to construct your own custom coverage
47−reports (as detailed in the [coverage tutorial](../tutorials/coverage.md#custom)).
48−
49−## Coverage reports
50−
51−### Package reports
52−
53−The coverage information generated will look something like this:
54−
55−```bash
56−/nix/store/...-my-project-0.1.0.0-coverage-report/
57−└── share
58− └── hpc
59− └── vanilla
60− ├── html
61− │   └── my-library-0.1.0.0
62− │   ├── my-library-0.1.0.0-48EVZBwW9Kj29VTaRMhBDf
63− │ │ ├── My.Lib.Config.hs.html
64− │ │ ├── My.Lib.Types.hs.html
65− │ │ └── My.Lib.Util.hs.html
66− │   ├── hpc_index_alt.html
67− │   ├── hpc_index_exp.html
68− │   ├── hpc_index_fun.html
69− │   └── hpc_index.html
70− ├── mix
71− │   └── my-library-0.1.0.0
72− │   └── my-library-0.1.0.0-48EVZBwW9Kj29VTaRMhBDf
73− │      ├── My.Lib.Config.mix
74− │      ├── My.Lib.Types.mix
75− │      └── My.Lib.Util.mix
76− └── tix
77− └── my-library-0.1.0.0
78− ├── my-library-0.1.0.0.tix
79− ├── my-test-1
80− │   └── my-test-1.tix
81− └── unit-test
82− └── unit-test.tix
83−```
84−
85−- The mix files are copied verbatim from the library built with
86− coverage.
87−- The tix files for each test are copied from the check run verbatim
88− and are output to ".../tix/<libraryname>/<testname>/<testname>.tix".
89−- The tix files for each library are generated by summing the tix
90− files for each test, but excluding any test modules. This tix file
91− is output to ".../tix/<libraryname>/<libraryname>.tix".
92− - Test modules are determined by inspecting the plan for the project
93− (i.e. for the project "my-project" and test-suite "my-test-1", the
94− test modules are read from:
95− `my-project.checks.my-test-1.config.modules`)
96−- The hpc HTML reports for each library are generated from their
97− respective tix files (i.e. the
98− `share/hpc/vanilla/html/my-library-0.1.0.0` report is generated from
99− the
100− `share/hpc/vanilla/tix/my-library-0.1.0.0/my-library-0.1.0.0.tix`
101− file)
102−
103−### Project-wide reports
104−
105−The coverage information for an entire project will look something
106−like this:
107−
108−```bash
109−/nix/store/...-coverage-report
110−└── share
111− └── hpc
112− └── vanilla
113− ├── html
114− │   ├── index.html
115− │   ├── all
116− │   │   ├── my-library-0.1.0.0-ERSaOroBZhe9awsoBkhmcV
117− │ │   │ ├── My.Lib.Config.hs.html
118− │ │   │ ├── My.Lib.Types.hs.html
119− │ │   │ └── My.Lib.Util.hs.html
120− │ │ ├── other-library-0.1.0.0-48EVZBwW9Kj29VTaRMhBDf
121− │ │ │   ├── Other.Lib.A.hs.html
122− │ │ │   └── Other.Lib.B.hs.html
123− │   │   ├── hpc_index_alt.html
124− │   │   ├── hpc_index_exp.html
125− │   │   ├── hpc_index_fun.html
126− │   │   └── hpc_index.html
127− │   ├── my-library-0.1.0.0
128− │   │   ├── my-library-0.1.0.0-ERSaOroBZhe9awsoBkhmcV
129− │ │   │ ├── My.Lib.Config.hs.html
130− │ │   │ ├── My.Lib.Types.hs.html
131− │ │   │ └── My.Lib.Util.hs.html
132− │   │   ├── hpc_index_alt.html
133− │   │   ├── hpc_index_exp.html
134− │   │   ├── hpc_index_fun.html
135− │   │   └── hpc_index.html
136− │ └── other-libray-0.1.0.0
137− │ ├── other-library-0.1.0.0-48EVZBwW9Kj29VTaRMhBDf
138− │ │   ├── Other.Lib.A.hs.html
139− │ │   └── Other.Lib.B.hs.html
140− │ ├── hpc_index_alt.html
141− │ ├── hpc_index_exp.html
142− │ ├── hpc_index_fun.html
143− │ └── hpc_index.html
144− ├── mix
145− │   ├── my-library-0.1.0.0-ERSaOroBZhe9awsoBkhmcV
146− │   │   ├── My.Lib.Config.mix
147− │   │   ├── My.Lib.Types.mix
148− │   │   └── My.Lib.Util.mix
149− │   └── other-library-0.1.0.0-48EVZBwW9Kj29VTaRMhBDf
150− │   ├── Other.Lib.A.mix
151− │   └── Other.Lib.B.mix
152− └── tix
153− ├── all
154− │   └── all.tix
155− ├── my-library-0.1.0.0
156− │ ├── my-library-0.1.0.0.tix
157− │ ├── my-test-1
158− │ │   └── my-test-1.tix
159− │ └── unit-test
160− │ └── unit-test.tix
161− └── another-library-0.1.0.0
162− ├── another-library-0.1.0.0.tix
163− ├── my-test-2
164− │   └── my-test-2.tix
165− └── unit-test
166− └── unit-test.tix
167−```
168−
169−All of the coverage information is copied verbatim from the coverage
170−reports for each of the constituent packages. A few additions are
171−made:
172− - `tix/all/all.tix` is generated from the union of all the library
173− tix files.
174− - We use this file when generating coverage reports for
175− "coveralls.io".
176− - An index page (`html/index.html`) is generated which links to the
177− HTML coverage reports of the constituent packages.
178− - A synthetic HTML report is generated from the `tix/all/all.tix`
179− file. This shows the union of all the coverage information
180− generated by each constituent coverage report.
docs/dev/hix.mddeleted−27
@@ -1,27 +0,0 @@
1−# Making changes to Hix
2−
3−When making changes to the way Hix works it is often useful to be able to
4−test the changes locally before uploading them to github.
5−
6−## Hix Command Wrappers
7−
8−Install the hix command wrappers after making changes to a local clone of haskell.nix:
9−
10−```
11−nix-env -iA hix -f /path/to/local/haskell.nix
12−hix-shell
13−```
14−
15−Or override the version of haskell.nix used by the commands with the `HIX_ROOT` environment variable:
16−
17−```
18−HIX_ROOT=/path/to/local/haskell.nix hix-shell
19−```
20−
21−## Flakes
22−
23−For flakes use `--override-input` to point to the modified haskell.nix:
24−
25−```
26−nix develop --override-input haskellNix /path/to/local/haskell.nix
27−```
docs/dev/nix-tools-pin.mddeleted−16
@@ -1,16 +0,0 @@
1−## How to update [`nix-tools`](https://github.com/input-output-hk/nix-tools)
2−
3−1. Use niv to update the sources.json:
4−
5− ```
6− niv update nix-tools
7− ```
8−
9−
10−2. If `nix-tools.cabal` or `plan-to-nix` have changed, check the
11− materialized files for each of the compiler nix name in
12− `ls -d materialized/ghc*/nix-tools` with:
13−
14− ```
15− nix-build scripts/check-compiler-materialization --argstr compiler-nix-name ghc884
16− ```
docs/dev/nixpkgs-pin.md+15−7
@@ -1,17 +1,25 @@
11# Haskell.nix Nixpkgs Pin
22
3−Haskell.nix contains several Nixpkgs pins imanaged by `niv` in
4−`nix/sources.json`.
5−
6−These are used in testing various versions of nixpkgs.
3+Haskell.nix contains a Nixpkgs pin in
4+[`nixpkgs/github.json`](https://github.com/input-output-hk/haskell.nix/blob/master/nixpkgs/github.json).
5+This is the version of Nixpkgs used for builds of `nix-tools` and
6+running the tests.
77
88To use haskell.nix the `config` and `overlays` need to be applied to
99Nixpkgs. Users should probably pin a suitable version of nixpkgs, although things might not work for them if their Nixpkgs version is
1010too different.
1111
1212We aim to keep this pin somewhere on a channel of the **Nixpkgs latest
13−stable release**. That is currently 20.09.
13+stable release**. That is currently 19.09.
1414
1515We also execute tests on MacOS (darwin). The darwin channel is usually
16−behind the NixOS channel. So we follow the `nixpkgs-20.09-darwin`
17−channel.
16+behind the NixOS channel. So we choose the `nixpkgs-19.09-darwin`
17+channel:
18+
19+```
20+nix-prefetch-git https://github.com/NixOS/nixpkgs-channels refs/heads/nixpkgs-19.09-darwin
21+```
22+
23+Keep the URL in `github.json` pointing at
24+<https://github.com/NixOS/nixpkgs>. Case matters because the Hydra
25+trusted URL whitelist is case-sensitive.
docs/index.md+1−1
@@ -10,6 +10,6 @@
1010- Overridable configuration
1111- Cross compile Haskell packages
1212
13−[^1]: See [Nixpkgs current Users' Guide to Haskell Infrastructure](https://haskell4nix.readthedocs.io/) for comparison.
13+[^1]: See [Nixpkgs current Users' Guide to Haskell Infrastructure](https://nixos.org/nixpkgs/manual/#users-guide-to-the-haskell-infrastructure) for comparison.
1414
1515
docs/reference/commands.md+3−7
@@ -1,8 +1,4 @@
1−# Command line tools
2−
3−To install the command line tools refer to the [Installing nix-tools](https://input-output-hk.github.io/haskell.nix/dev/manually-generating-nix-expressions/) section.
4−
5−## stack-to-nix
1+# stack-to-nix
62
73```
84stack-to-nix - a stack to nix converter
@@ -32,7 +28,7 @@ output directory, it will create a basic one with a
3228
3329[cache-issue]: https://github.com/input-output-hk/haskell.nix/issues/57
3430
35−## plan-to-nix
31+# plan-to-nix
3632
3733```
3834plan-to-nix - a stack to nix converter
@@ -69,7 +65,7 @@ these files.
6965 generated, remove `.nix-tools.cache`
7066 (The open issue is [#57][cache-issue]).
7167
72−## cabal-to-nix
68+# cabal-to-nix
7369
7470```
7571Usage: cabal-to-nix FILE.cabal
docs/reference/library.md+12−22
@@ -112,16 +112,16 @@ will be passed to it:
112112
113113# Top-level attributes
114114
115−## project'
115+## project
116116
117117Function that accepts attribute set with a `src` attribute and looks for `stack.yaml` file relative to it.
118118
119−If file exists, it calls [stackProject](#stackproject') function. Otherwise it will call [cabalProject](#cabalproject') function.
119+If file exists, it calls [stackProject](#stackproject) function. Otherwise it will call [cabalProject](#cabalproject) function.
120120
121121**Example**:
122122
123123```nix
124−pkgs.haskell-nix.project' {
124+pkgs.haskell-nix.project {
125125 # 'cleanGit' cleans a source directory based on the files known by git
126126 src = pkgs.haskell-nix.haskellLib.cleanGit {
127127 name = "haskell-nix-project";
@@ -130,7 +130,7 @@ pkgs.haskell-nix.project' {
130130}
131131```
132132
133−## stackProject'
133+## stackProject
134134
135135A function calling [callStackToNix](#callstacktonix) with all arguments.
136136
@@ -142,13 +142,14 @@ Then feeding its result into [mkStackPkgSet](#mkstackpkgset) passing also
142142| Attribute | Type | Description |
143143|-------------------|--------------------------------------------------|----------------------------------------------------------------------------|
144144| `hsPkgs` | Attrset of [Haskell Packages](#haskell-package) | Buildable packages, created from `packages` |
145+| `pkg-set` | Attrset | [`pkgSet`](#package-set) |
145146| `stack-nix` | | `projectNix` attribute of [`callStackToNix`](#callstacktonix) return value |
146147| `shellFor` | Function | [`shellFor`](#shellfor) |
147−| `ghcWithHoogle` | Function | [`ghcWithHoogle`](#ghcwithhoogle) |
148+| `ghcWithHoogle` | Function | [`ghcWithHoogle`](#ghcwithhoogle) |
148149| `ghcWithPackages` | Function | [`ghcWithPackages`](#ghcwithpackages) |
149150
150151
151−## cabalProject'
152+## cabalProject
152153
153154A function calling [callCabalProjectToNix](#callcabalprojecttonix) with all arguments.
154155
@@ -160,21 +161,14 @@ Then feeding its result into [mkCabalProjectPkgSet](#mkcabalprojectpkgset) passi
160161| Attribute | Type | Description |
161162|-------------------|--------------------------------------------------|-----------------------------------------------------------------------------|
162163| `hsPkgs` | Attrset of [Haskell Packages](#haskell-package) | Buildable packages, created from `packages` |
164+| `pkg-set` | Attrset | [`pkgSet`](#package-set) |
163165| `plan-nix` | | `projectNix` attribute of [`callCabalProjectToNix`](#callcabalprojecttonix) return value |
164166| `index-state` | | `index-state` attribute of [`callCabalProjectToNix`](#callcabalprojecttonix) return value |
165167| `shellFor` | Function | [`shellFor`](#shellfor) |
166−| `ghcWithHoogle` | Function | [`ghcWithHoogle`](#ghcwithhoogle) |
168+| `ghcWithHoogle` | Function | [`ghcWithHoogle`](#ghcwithhoogle) |
167169| `ghcWithPackages` | Function | [`ghcWithPackages`](#ghcwithpackages) |
168−| `projectCross` | Attrset | Like `pkgs.pkgsCross.<system>` from nixpkgs `p.projectCross.<system>` returns the project results for cross compilation (where system is a member of nixpkgs lib.systems.examples). So `p.projectCross.ghcjs.hsPkgs` is the same as `hsPkgs` but compiled with ghcjs |
169−| `appendModule` | Function | Re-eval the project with an extra module (or module list). |
170−| `extend` and `appendOverlays` | Function | Modify a project, or add attributes, through overlays: `p.extend(final: prev: { })`. The overlays are carried-over `projectCross` and `appendModule` invocations. |
171170
172−## project, cabalProject and stackProject
173171
174−These versions of the function are the same as project', cabalProject'
175−and stackProject', but `hsPkgs` attributes are also included in the
176−return value directly. That way a package can be referenced as
177−`(project {...}).foo` instead of `(project' {...}).hsPkgs.foo`.
178172
179173## mkStackPkgSet
180174
@@ -410,11 +404,9 @@ Sub-component types identify [components](#component) and are one of:
410404 - `tests`
411405 - `benchmarks`
412406
413−# Project functions
407+# Package-set functions
414408
415−These functions are included in the `project` return values.
416−In the past they also existed within `project.hsPkgs`,
417−but have now been removed from there.
409+These functions exist within the `hsPkgs` package set.
418410
419411## shellFor
420412
@@ -435,9 +427,7 @@ shellFor =
435427| `additional` | Function | Similar to `packages`, but the selected packages are built and included in `ghc-pkg list` (not just their dependencies). |
436428| `withHoogle` | Boolean | Whether to build a Hoogle documentation index and provide the `hoogle` command. |
437429| `exactDeps` | Boolean | Prevents the Cabal solver from choosing any package dependency other than what are in the package set. |
438−| `tools` | Function | AttrSet of tools to make available e.g. `{ cabal = "3.2.0.0"; }` or `{ cabal = { version = "3.2.0.0"; }; }`. If an AttrSet is provided for a tool, the additional arguments will be passed to the function creating the derivation for that tool. So you can provide an `index-state` or a `materialized` argument like that `{ cabal = { version = "3.2.0.0"; index-state = "2020-10-30T00:00:00Z"; materialized = ./cabal.materialized; }; }` for example. You can specify and materialize the version of hoogle used to construct the hoogle index by including something like `{ hoogle = { version = "5.0.17.15"; index-state = "2020-05-31T00:00:00Z"; materialized = ./hoogle.materialized; }`. Uses a default version of hoogle if omitted. |
439−| `inputsFrom` | List | List of other shells to include in this one. The `buildInputs` and `nativeBuildInputs` of each will be included using [mkShell](https://nixos.org/manual/nixpkgs/stable/#sec-pkgs-mkShell).
440−| `crossPlatforms` | Function | Platform selection function for cross compilation targets to support eg. `ps: with ps; [ghcjs mingwW64]` (see nixpkgs lib.systems.examples for list of platform names). |
430+| `tools` | Function | AttrSet of tools to make available e.g. `{ cabal = "3.2.0.0"; }` or `{ cabal = { version = "3.2.0.0"; }; }` |
441431| `{ ... }` | Attrset | All the other arguments are passed to [`mkDerivation`](https://nixos.org/nixpkgs/manual/#sec-using-stdenv). |
442432
443433**Return value**: a derivation
docs/reference/supported-ghc-versions.md+28−45
@@ -1,49 +1,32 @@
11# Supported GHC Versions
22
3−The following GHC versions are defined in `haskell.nix` (there is a derivation
4−for each, though not all are cached or tested by CI):
5−- 8.4.4
6−- 8.6.{1,2,3,4,5}
7−- 8.8.{1,2,3,4}
8−- 8.10.{1,2,3,4,5}
9−- 9.0.1
10−- 9.2.1
11−- 9.2.2
12−
13−The following table shows the Nixpkgs/GHC versions which are built/cached, and
14−which of those are further tested. If you use a combination of Nixpkgs version
15−and GHC version which is in this table, you should hit our cache, saving
16−considering time by not building GHC and a few additional tools.
17−
18−Note that if you try to use `haskell.nix` as an overlay over Nixpkgs from a
19−standard Nixpkgs channel you will likely get a cache miss. To hit our cache you
20−really should use an instance of Nixpkgs provided by `haskell.nix` itself.
21−
22−| Nixpkgs version | Nixpkgs pinning | GHC version | `compiler-nix-name` | Tested in CI? |
23−|------------------|--------------------|-------------|-----------------------|---------------|
24−| 21.11 | `nixpkgs-2111` | 8.6.5 | `ghc865` | No |
25−| 21.11 | `nixpkgs-2111` | 8.10.7 | `ghc8107` | Yes |
26−| unstable | `nixpkgs-unstable` | 8.6.5 | `ghc865` | No |
27−| unstable | `nixpkgs-unstable` | 8.8.4 | `ghc884` | No |
28−| unstable | `nixpkgs-unstable` | 8.10.7 | `ghc8107` | Yes |
29−| unstable | `nixpkgs-unstable` | 9.0.2 | `ghc902` | Yes |
30−| unstable | `nixpkgs-unstable` | 9.2.4 | `ghc924` | Yes |
3+The following versions of GHC built on the CI servers and should be included
4+in the cache (for the default haskell.nix `nixpkgs`).
5+
6+* 8.6.5 `compiler-nix-name = "ghc865";`
7+* 8.8.3 `compiler-nix-name = "ghc883";`
8+* 8.8.4 `compiler-nix-name = "ghc884";`
9+* 8.10.1 `compiler-nix-name = "ghc8101";`
10+* 8.10.2 `compiler-nix-name = "ghc8102";`
11+
12+Full test suite is run against 8.6.5, 8.8.4 and 8.10.2.
3113
3214See [ci.nix](https://github.com/input-output-hk/haskell.nix/blob/master/ci.nix)
33−for the source of truth about what is built and tested (in the off chance this
34−document is out-of-sync with your checkout).
35−
36−See the [getting started guide](../tutorials/getting-started.md) for
37−instructions on how to set up Nix to take advantage of our cache when building.
38−This guide also covers where to use the Nixpkgs pinning and `compiler-nix-name`
39−settings from the table above. For further information, see the [instructions
40−for how to pin Nixpkgs](../dev/nixpkgs-pin.md).
41−
42−See
43−[overlays/bootstrap.nix](https://github.com/input-output-hk/haskell.nix/blob/master/overlays/bootstrap.nix)
44−for a full list of all the valid `compiler-nix-name`s beyond what's
45−cached/tested in CI. You're free to use these, but be ready for longer build
46−times.
47−
48−Lastly, see [instructions on adding new GHC versions](../dev/adding-new-ghc.md)
49−in the event that what's in `haskell.nix` doesn't suit your needs.
15+for the list of tested GHC versions.
16+
17+The following GHC versions are not included in CI and will not be cached:
18+
19+* 8.4.4 `compiler-nix-name = "ghc844";`
20+* 8.6.1 `compiler-nix-name = "ghc861";`
21+* 8.6.2 `compiler-nix-name = "ghc862";`
22+* 8.6.3 `compiler-nix-name = "ghc863";`
23+* 8.6.4 `compiler-nix-name = "ghc864";`
24+* 8.8.1 `compiler-nix-name = "ghc881";`
25+* 8.8.2 `compiler-nix-name = "ghc882";`
26+
27+See [overlays/bootstrap.nix](https://github.com/input-output-hk/haskell.nix/blob/master/overlays/bootstrap.nix)
28+for a list of all the valid `compiler-nix-names`.
29+
30+See also:
31+
32+* [Instructions on adding new ghc versions](adding-new-ghc.md).
docs/troubleshooting.md+17−35
@@ -1,29 +1,5 @@
11# Troubleshooting
22
3−## Issues with building and garbage-collection
4−
5−### Why am I building GHC?
6−
7−It's easier to list the reverse: when will you *not* build GHC?
8−
9−- You have configured the [binary cache](tutorials/getting-started.md) correctly.
10−- You are using one of the GHC versions which [we support](reference/supported-ghc-versions.md).
11−- You are using one of the nixpkgs versions used by our CI (you can access the sources for these [through haskell.nix](tutorials/getting-started.md).
12−
13−If you think you are doing all of these and you still find you're building GHC, drop us a line.
14−
15−### Why am I building lots of Haskell packages?
16−
17−We don't generally cache much of Hackage (there's a lot of it!), except for the parts which are used by our tests.
18−So this is expected, unfortunately.
19−
20−### How do I prevent the evaluation-time dependencies of my project from being garbage-collected?
21−
22−The `haskell-nix.roots "ghc884"` should include all the evaluation-time dependencies
23−and the main build time dependencies of a project using ghc 8.8.4.
24−So you can add that to the relevant GC root.
25−In practice, if you're using a CI system like Hydra/Hercules, this means adding it to a job in `release.nix`/`ci.nix`.
26−
273## General troubleshooting when using `cabalProject`/`stackProject`/`project`
284
295### Does the cabal/stack build work?
@@ -71,20 +47,26 @@ This will ensure that the two builds agree.
7147
7248If you want or need to set some of them in Nix, try bringing the two into sync temporarily for troubleshooting.
7349
74−## Other specific issues
50+## Specific issues
7551
76−### Why does the build complain about some files being missing?
52+### Why am I building GHC?
7753
78−Sometimes your build works fine outside `haskell.nix`, but inside the `haskell.nix` build, cabal complains that some file is missing.
79−What is going on?
54+It's easier to list the reverse: when will you *not* build GHC?
8055
81−The answer is that `haskell.nix` *thoroughly* cleans the source *by following what is mentioned as required in the cabal file*.
82−So we only include Haskell sources if they appear in a `hs-source-dirs` somewhere; and we only include non-Haskell files if they are included in `extra-source-files` or similar.
56+- You have configured the [binary caches](tutorials/getting-started.md) correctly.
57+- You are using one of the GHC versions built by our CI (have a look in [ci.nix](../ci.nix) to see what gets built).
58+- You are using one of the nixpkgs versions used by our CI (you can access the sources for these [through haskell.nix](tutorials/getting-started.md).
8359
84−This is good practice anyway: if you do not include such files in `extra-source-files` then they will not be included in `cabal sdist`, which will cause problems if you ever upload your package to Hackage.
85−But `haskell.nix` is very picky about it.
60+If you think you are doing all of these and you still find you're building GHC, drop us a line.
8661
87−### Why does my executable depend on GHC/GCC?
62+### Why am I building lots of Haskell packages?
8863
89−You may want to set the `dontStrip` option to `false` (see https://github.com/input-output-hk/haskell.nix/issues/829).
90−This is not set by default because it can occasionally cause breakage.
64+We don't generally cache much of Hackage (there's a lot of it!), except for the parts which are used by our tests.
65+So this is expected, unfortunately.
66+
67+### How do I prevent the evaluation-time dependencies of my project from being garbage-collected?
68+
69+The `haskell-nix.roots "ghc884"` should include all the evaluation-time dependencies
70+and the main build time dependencies of a project using ghc 8.8.4.
71+So you can add that to the relevant GC root.
72+In practice, if you're using a CI system like Hydra/Hercules, this means adding it to a job in `release.nix`/`ci.nix`.
docs/tutorials/building-package-from-stackage-hackage.md+3−3
@@ -6,7 +6,7 @@
66To build a package, say [lens][], from a Stackage snapshot, say
77[lts-13.28][], you could run:
88```bash
9−nix build '(with import <nixpkgs> (import (builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/master.tar.gz") {}).nixpkgsArgs; haskell-nix.snapshots."lts-13.28").lens.components.library'
9+nix build '(with import <nixpkgs> (import (builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/master.tar.gz")).nixpkgsArgs; haskell-nix.snapshots."lts-13.28").lens.components.library'
1010```
1111This would build the (public) library component of the [lens][] package as
1212fixed by the [lts-13.28][] stackage snapshot. Nightly snapshots like
@@ -17,7 +17,7 @@ fixed by the [lts-13.28][] stackage snapshot. Nightly snapshots like
1717To build any package from hackage, say [lens][], at any version, say 4.17.1,
1818you could run:
1919```bash
20−nix build '(with import <nixpkgs> (import (builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/master.tar.gz") {}).nixpkgsArgs; (haskell-nix.hackage-package { name = "lens"; version = "4.17.1"; compiler-nix-name = "ghc8102"; })).components.library'
20+nix build '(with import <nixpkgs> (import (builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/master.tar.gz")).nixpkgsArgs; (haskell-nix.hackage-package { name = "lens"; version = "4.17.1"; })).components.library'
2121```
2222This would build the (public) library component of the [lens-4.17.1][] package
2323from hackage.
@@ -28,7 +28,7 @@ The dependencies would be resolved against the most recent
2828[hackage-index-state][] which comes with your [haskell.nix][] checkout via the
2929[hackage.nix][] pin. A specific one can be specified as well:
3030```bash
31−nix build '(with import <nixpkgs> (import (builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/master.tar.gz") {}).nixpkgsArgs; (haskell-nix.hackage-package { name = "lens"; version = "4.17.1"; compiler-nix-name = "ghc8102"; index-state = "2019-07-14T00:00:00Z"; })).components.library'
31+nix build '(with import <nixpkgs> (import (builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/master.tar.gz")).nixpkgsArgs; (haskell-nix.hackage-package { name = "lens"; version = "4.17.1"; index-state = "2019-07-14T00:00:00Z"; })).components.library'
3232```
3333This would use the hackage index as of `2019-07-14T00:00:00Z` to produce a
3434build plan for the [lens-4.17.1][] package.
docs/tutorials/ca-derivations.mddeleted−65
@@ -1,65 +0,0 @@
1−# Content addressed derivations
2−## Introduction
3−
4−Floating content addressed derivations (from now *CA derivations*) is an experimental feature which substantially change how the hashes in the store paths are calculated.
5−Indeed, normally derivations are input addressed i.e. the outputs store paths depends only on the derivation inputs, instead with CA derivations they depend on the content of the outputs.
6−
7−This has two main advantages:
8−
9−- The so-called "early cutoff", namely the ability of Nix to stop a build if the build outputs would be something already built.
10−For example suppose you add a comment in an Haskell source, at this point Nix will rebuild the component depending on this source but since the output will be the same (adding a comment is an "output-invariant" change for `ghc`) every other component that depends on that will not be rebuilt.
11−- Users of the same Nix store does not need to trust each other when using substituters.
12−
13−You can find more information in the [ca-derivations page on the wiki](https://nixos.wiki/wiki/Ca-derivations) (and in the other resources linked there).
14−
15−## Usage
16−### Enable CA derivations in your system
17−First of all your Nix installation must support the `ca-derivations` experimental feature, this can done by adding the following in your `nix.conf`:
18−
19−```
20−experimental-features = ca-derivations
21−```
22−
23−Or if you use NixOS:
24−```
25−nix.extraOptions = ''
26− experimental-features = ca-derivations
27−'';
28−```
29−
30−## Enable CA derivations in your project
31−At this point you can pass a new module to `project'` that tells `haskell.nix` to build every component in the project as CA derivation.
32−
33−```
34−haskell-nix.project' {
35− # ...
36−
37− modules = [{
38− contentAddressed = true;
39− # packages.project-name.components.exes.executable.contentAddressed = true;
40− }];
41−};
42−```
43−
44−Optionally you can also specify which components you don't want to be content addressed.
45−
46−## Known problems
47−### Limitation of the current CA derivations implementation
48−
49−As explained in the [RFC 62](https://github.com/tweag/rfcs/blob/cas-rfc/rfcs/0062-content-addressed-paths.md)
50−
51−> The current implementation has a naive approach that just forbids fetching a path if the local system has a different realisation for the same drv output. This approach is simple and correct, but it's possible that it might not be good-enough in practice as it can result in a totally useless binary cache in some pathological cases.
52−
53−For example, suppose that your machine builds a derivation `A` producing an output `A.out` in your store and that after that a CI machine builds the same derivation `A` but producing a different output `A.out'` and populating a cache with this output.
54−At this point, if you need to build a derivation `B` that depends on `A`, since you already have the realisation `A.out` in your local store and you can't get `B.out` from the cache and you will end up building `B` even if one of its realisation is in the cache.
55−
56−This means that, in some cases, enabling CA derivations would lead to more rebuilds than not having it.
57−
58−### Hydra
59−Hydra currently doesn't support CA derivations, efforts are being made in this direction.
60−
61−
62−### GHC is not deterministic
63−Currently `ghc` is determinstic only disabling the parallel building i.e. passing `-j1`. [Here](https://gitlab.haskell.org/ghc/ghc/-/issues/12935) the upstream issue.
64−
65−Having a deterministic `ghc` would be a dream since it will automatically fix all the pathological cases about substituters discussed above and would allow `haskell.nix` to parallel build even when using CA derivations.
docs/tutorials/coverage.mddeleted−123
@@ -1,123 +0,0 @@
1−# Coverage
2−
3−haskell.nix can generate coverage information for your package or
4−project using Cabal's inbuilt hpc support.
5−
6−## Prerequisites
7−
8−To get a sensible coverage report, you need to enable coverage on each
9−of the packages of your project:
10−
11−```nix
12−pkgs.haskell-nix.project {
13− src = pkgs.haskell-nix.haskellLib.cleanGit {
14− name = "haskell-nix-project";
15− src = ./.;
16− };
17− compiler-nix-name = "ghc884";
18−
19− modules = [{
20− packages.$pkg.components.library.doCoverage = true;
21− }];
22−}
23−```
24−
25−If you would like to make coverage optional, add an argument to your nix expression:
26−
27−```nix
28−{ withCoverage ? false }:
29−
30−pkgs.haskell-nix.project {
31− src = pkgs.haskell-nix.haskellLib.cleanGit {
32− name = "haskell-nix-project";
33− src = ./.;
34− };
35− compiler-nix-name = "ghc884";
36−
37− modules = pkgs.lib.optional withCoverage [{
38− packages.$pkg.components.library.doCoverage = true;
39− }];
40−}
41−```
42−
43−## Per-package
44−
45−```bash
46−nix-build default.nix -A "projectWithCoverage.$pkg.coverageReport"
47−```
48−
49−This will generate a coverage report for the package you requested.
50−All tests that are enabled (configured with `doCheck == true`) are
51−included in the coverage report.
52−
53−See the [developer coverage docs](../dev/coverage.md#package-reports) for more information.
54−
55−## Project-wide
56−
57−```bash
58−nix-build default.nix -A "projectWithCoverage.projectCoverageReport"
59−```
60−
61−This will generate a coverage report for all the local packages in
62−your project.
63−
64−See the [developer coverage docs](../dev/coverage.md#project-wide-reports) for more information.
65−
66−## Custom
67−
68−By default, the behaviour of the `coverageReport` attribute is to
69−generate a coverage report that describes how that package affects the
70−coverage of all local packages (including itself) in the project.
71−
72−The default behaviour of `projectCoverageReport` is to sum the
73−default coverage reports (produced by the above process) of all local
74−packages in the project.
75−
76−You can modify this behaviour by using the `coverageReport` and
77−`projectCoverageReport` functions found in the haskell.nix library:
78−
79−```nix
80−let
81− inherit (pkgs.haskell-nix) haskellLib;
82−
83− project = haskellLib.project {
84− src = pkgs.haskell-nix.haskellLib.cleanGit {
85− name = "haskell-nix-project";
86− src = ./.;
87− };
88− compiler-nix-name = "ghc884";
89−
90− modules = [{
91− packages.$pkgA.components.library.doCoverage = true;
92− packages.$pkgB.components.library.doCoverage = true;
93− }];
94− };
95−
96− # Generate a coverage report for $pkgA that only includes the
97− # unit-test check and only shows coverage information for $pkgA, not
98− # $pkgB.
99− custom$pkgACoverageReport = haskellLib.coverageReport rec {
100− name = "$pkgA-unit-tests-only"
101− inherit (project.$pkgA.components) library;
102− checks = [project.$pkgA.components.checks.unit-test];
103− # Note that this is the default value of the "mixLibraries"
104− # argument and so this line isn't really necessary.
105− mixLibraries = [project.$pkgA.components.library];
106− };
107−
108− custom$pkgBCoverageReport = haskellLib.coverageReport rec {
109− name = "$pkgB-unit-tests-only"
110− inherit (project.$pkgB.components) library;
111− checks = [project.$pkgB.components.checks.unit-test];
112− mixLibraries = [project.$pkgB.components.library];
113− };
114−
115− # Generate a project coverage report that only includes the unit
116− # tests of the project, and only shows how each unit test effects
117− # the coverage of it's package, and not other packages in the
118− # project.
119− allUnitTestsProjectReport = haskellLib.projectCoverageReport [custom$pkgACoverageReport custom$pkgBCoverageReport];
120−in {
121− inherit project custom$pkgACoverageReport custom$pkgBCoverageReport allUnitTestsProjectCoverageReport;
122−}
123−```
docs/tutorials/cross-compilation.md+1−1
@@ -90,7 +90,7 @@ executables you must add package overrides to:
9090```nix
9191{
9292 packages.bench.components.exes.bench.configureFlags =
93− lib.optionals stdenv.hostPlatform.isMusl [
93+ stdenv.lib.optionals stdenv.hostPlatform.isMusl [
9494 "--disable-executable-dynamic"
9595 "--disable-shared"
9696 "--ghc-option=-optl=-pthread"
docs/tutorials/development.md+15−23
@@ -34,14 +34,13 @@ themselves. This is what the [`shellFor`][shellFor] function does.
3434
3535```nix
3636# shell.nix
37+{ pkgs ? import <nixpkgs> {} }:
38+
3739let
38− project = import ./default.nix;
40+ hsPkgs = import ./default.nix { inherit pkgs; };
3941in
40− project.shellFor {
41− # ALL of these arguments are optional.
42−
43− # List of packages from the project you want to work on in
44− # the shell (default is all the projects local packages).
42+ hsPkgs.shellFor {
43+ # Include only the *local* packages of your project.
4544 packages = ps: with ps; [
4645 pkga
4746 pkgb
@@ -51,22 +50,15 @@ in
5150 # and provides a "hoogle" command to search the index.
5251 withHoogle = true;
5352
53+ # You might want some extra tools in the shell (optional).
54+
5455 # Some common tools can be added with the `tools` argument
55− tools = {
56− cabal = "3.2.0.0";
57− hlint = "latest"; # Selects the latest version in the hackage.nix snapshot
58− haskell-language-server = "latest";
59− };
56+ tools = { cabal = "3.2.0.0"; hlint = "2.2.11"; };
6057 # See overlays/tools.nix for more details
6158
6259 # Some you may need to get some other way.
63− buildInputs = [ (import <nixpkgs> {}).git ];
64−
65− # Sellect cross compilers to include.
66− crossPlatforms = ps: with ps; [
67− ghcjs # Adds support for `js-unknown-ghcjs-cabal build` in the shell
68− # mingwW64 # Adds support for `x86_64-W64-mingw32-cabal build` in the shell
69− ];
60+ buildInputs = with pkgs.haskellPackages;
61+ [ ghcid ];
7062
7163 # Prevents cabal from choosing alternate plans, so that
7264 # *all* dependencies are provided by Nix.
@@ -85,15 +77,15 @@ If you need a local Hoogle for all the dependencies of your project create this
8577```nix
8678# shell-hoogle.nix
8779let
88− project = import ./default.nix {};
80+ hsPkgs = import ./default.nix {};
8981in
90− project.shellFor {
82+ hsPkgs.shellFor {
9183 packages = ps: [ps.my-package];
9284 withHoogle = true;
9385 }
9486```
9587
96−and run `nix-shell shell-hoogle.nix --run "hoogle server --local"`.
88+and run `nix-shell shell-hoogle.nix --run "hoogle server --local"`.
9789This will open a local Hoogle server at `http://127.0.0.1:8080`.
9890
9991
@@ -108,7 +100,7 @@ selects packages from the larger package set.
108100# shell.nix
109101let
110102 haskellNix = import (builtins.fetchTarball https://github.com/input-output-hk/haskell.nix/archive/master.tar.gz) {};
111− nixpkgs = import haskellNix.sources.nixpkgs haskellNix.nixpkgsArgs;
103+ nixpkgs = import haskellNix.sources.nixpkgs-1909 haskellNix.nixpkgsArgs;
112104 haskell = nixpkgs.haskell-nix;
113105in
114106 haskell.haskellPackages.ghcWithPackages (ps: with ps;
@@ -127,7 +119,7 @@ project.
127119```nix
128120let
129121 haskellNix = import (builtins.fetchTarball https://github.com/input-output-hk/haskell.nix/archive/master.tar.gz) {};
130− nixpkgs = import haskellNix.sources.nixpkgs haskellNix.nixpkgsArgs;
122+ nixpkgs = import haskellNix.sources.nixpkgs-1909 haskellNix.nixpkgsArgs;
131123 haskell = nixpkgs.haskell-nix;
132124in
133125 haskell.snapshots."lts-13.18".alex.components.exes.alex
docs/tutorials/getting-started-flakes.mddeleted−142
@@ -1,142 +0,0 @@
1−# Getting started with flakes
2−
3−This version of the getting started guide is for users who
4−are using [Nix Flakes](https://nixos.wiki/wiki/Flakes).
5−The non flakes version of the guide is [here](getting-started.md).
6−
7−`haskell.nix` can automatically translate your
8−[Cabal](https://cabal.readthedocs.io/en/latest/cabal-project.html)
9−or [Stack](https://docs.haskellstack.org/en/stable/README/#quick-start-guide)
10−project and its dependencies into Nix code.
11−
12−Assuming you have [Nix](https://nixos.org/download.html) installed, you can
13−start setting up your project.
14−
15−## Setting up the binary cache
16−
17−IMPORTANT: you *must* do this or you *will* build several copies of GHC!
18−
19−You can configure Nix to use our binary cache, which is pushed to by CI, so should contain the artifacts that you need.
20−
21−You need to add the following sections to `/etc/nix/nix.conf` or, if you are a trusted user, `~/.config/nix/nix.conf` (if you don't know what a "trusted user" is, you probably want to do the former).
22−
23−```
24−trusted-public-keys = [...] hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= [...]
25−substituters = [...] https://cache.iog.io [...]
26−```
27−
28−If you're running NixOS, you need to add/update the following in your `/etc/nixos/configuration.nix` files instead.
29−
30−```
31−# Binary Cache for Haskell.nix
32−nix.settings.trusted-public-keys = [
33− "hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
34−];
35−nix.settings.substituters = [
36− "https://cache.iog.io"
37−];
38−```
39−
40−NixOS-21.11 and older use slightly different settings.
41−
42−```
43−# Binary Cache for Haskell.nix
44−nix.binaryCachePublicKeys = [
45− "hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
46−];
47−nix.binaryCaches = [
48− "https://cache.iog.io"
49−];
50−```
51−
52−This can be tricky to get setup properly. If you're still having trouble getting cache hits, consult the corresponding [troubleshooting section](../troubleshooting.md#why-am-i-building-ghc).
53−
54−## Scaffolding
55−
56−The following work with `stack.yaml` and `cabal.project` based
57−projects.
58−
59−Add `flake.nix`:
60−
61−```nix
62−{
63− description = "A very basic flake";
64− inputs.haskellNix.url = "github:input-output-hk/haskell.nix";
65− inputs.nixpkgs.follows = "haskellNix/nixpkgs-unstable";
66− inputs.flake-utils.url = "github:numtide/flake-utils";
67− outputs = { self, nixpkgs, flake-utils, haskellNix }:
68− flake-utils.lib.eachSystem [ "x86_64-linux" "x86_64-darwin" ] (system:
69− let
70− overlays = [ haskellNix.overlay
71− (final: prev: {
72− # This overlay adds our project to pkgs
73− helloProject =
74− final.haskell-nix.project' {
75− src = ./.;
76− compiler-nix-name = "ghc8104";
77− # This is used by `nix develop .` to open a shell for use with
78− # `cabal`, `hlint` and `haskell-language-server`
79− shell.tools = {
80− cabal = {};
81− hlint = {};
82− haskell-language-server = {};
83− };
84− # Non-Haskell shell tools go here
85− shell.buildInputs = with pkgs; [
86− nixpkgs-fmt
87− ];
88− # This adds `js-unknown-ghcjs-cabal` to the shell.
89− # shell.crossPlatforms = p: [p.ghcjs];
90− };
91− })
92− ];
93− pkgs = import nixpkgs { inherit system overlays; inherit (haskellNix) config; };
94− flake = pkgs.helloProject.flake {
95− # This adds support for `nix build .#js-unknown-ghcjs-cabal:hello:exe:hello`
96− # crossPlatforms = p: [p.ghcjs];
97− };
98− in flake // {
99− # Built by `nix build .`
100− defaultPackage = flake.packages."hello:exe:hello";
101− });
102−}
103−```
104−
105−!!! note "git dependencies"
106− If you have git dependencies in your project, you'll need
107− to [calculate sha256 hashes for them](./source-repository-hashes.md).
108−
109−### Working with a project
110−
111−Top-level attributes are Haskell packages (incl. dependencies) part of your project.
112−
113−To build the library component of a package in the project run:
114−
115−```shell
116−nix build .#your-package-name:lib:your-package-name
117−```
118−
119−There are also other components such as `exe`, `test` and `benchmark`.
120−To build an executable:
121−
122−```shell
123−nix build .#your-package-name:exe:your-exe-name
124−```
125−
126−To use the `devShell` provided by the flake run:
127−
128−```shell
129−nix develop .
130−cabal repl your-package-name:lib:your-package-name
131−cabal build your-package-name
132−```
133−
134−To open a shell for use with `stack` see [the following issue](https://github.com/input-output-hk/haskell.nix/issues/689#issuecomment-643832619).
135−
136−## Going forward
137−
138−Read through [project](../reference/library.md#project) function reference to see how the API works.
139−
140−There are a number of things to explore further in the tutorials section.
141−
142−[haskell.nix]: https://github.com/input-output-hk/haskell.nix
docs/tutorials/getting-started-hix.mddeleted−227
@@ -1,227 +0,0 @@
1−# Getting started with Hix
2−
3−The `hix` tools are wrappers for the various `nix` tools that
4−use `haskell.nix` without the need to add any `.nix` files.
5−
6−This is useful for:
7−
8−* A quick way to try out haskell.nix for new users.
9−
10−* Using haskell.nix to work on projects that do not have
11− `.nix` files.
12−
13−* Testing to see if `haskell.nix` can build a project.
14−
15−* Making `flake` and `non flake` configurations to check `haskell.nix`
16− treats them the same.
17−
18−## Installing Nix
19−
20−To use Hix you will need to install [Nix](https://nixos.org/download.html).
21−
22−## Setting up the binary cache
23−
24−IMPORTANT: you *must* do this or you *will* build several copies of GHC!
25−
26−You can configure Nix to use our binary cache, which is pushed to by CI, so should contain the artifacts that you need.
27−
28−You need to add the following sections to `/etc/nix/nix.conf` or, if you are a trusted user, `~/.config/nix/nix.conf` (if you don't know what a "trusted user" is, you probably want to do the former).
29−
30−```
31−trusted-public-keys = [...] hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= [...]
32−substituters = [...] https://cache.iog.io [...]
33−```
34−
35−If you're running NixOS, you need to add/update the following in your `/etc/nixos/configuration.nix` files instead.
36−
37−```
38−# Binary Cache for Haskell.nix
39−nix.settings.trusted-public-keys = [
40− "hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
41−];
42−nix.settings.substituters = [
43− "https://cache.iog.io"
44−];
45−```
46−
47−NixOS-21.11 and older use slightly different settings.
48−
49−```
50−# Binary Cache for Haskell.nix
51−nix.binaryCachePublicKeys = [
52− "hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
53−];
54−nix.binaryCaches = [
55− "https://cache.iog.io"
56−];
57−```
58−
59−This can be tricky to get setup properly. If you're still having trouble getting cache hits, consult the corresponding [troubleshooting section](../troubleshooting.md#why-am-i-building-ghc).
60−
61−## Installing Hix
62−
63−```
64−nix-env -iA hix -f https://github.com/input-output-hk/haskell.nix/tarball/master
65−```
66−
67−## Updating Hix (also updates hackage)
68−
69−```
70−hix update
71−```
72−
73−This is also necessary to make the latest nightly snapshot of hackage
74−avaiable to nix.
75−
76−## Building with Hix
77−
78−To run `cabal build` in a nix-shell with all the dependencies required:
79−
80−```
81−cabal unpack hello
82−cd hello-1.0.0.2
83−hix-shell --run 'cabal build'
84−```
85−
86−Build with nix:
87−
88−```
89−hix-build -A hsPkgs.hello.components.exes.hello
90−```
91−
92−Cross compile to JavaScript:
93−
94−```
95−hix-build -A projectCross.ghcjs.hsPkgs.hello.components.exes.hello
96−```
97−
98−## Configuring Hix
99−
100−The configuration arguments for `Hix` can be (from highest precedence to lowest):
101−
102−* Passed on the command line with `--arg` (or `--argstr` for string args).
103−
104−* Placed in `nix/hix.nix` file in the project dir.
105−
106−* Placed in `~/.config/hix/hix.conf`
107−
108−For example to build with GHC 8.10.7:
109−
110−```
111−hix-shell --argstr compiler-nix-name ghc8107 --run 'cabal build'
112−```
113−
114−or add a `nix/hix.nix` or `~/.config/hix/hix.conf` file:
115−
116−```nix
117−{ compiler-nix-name = "ghc8107"; }
118−```
119−
120−Here are just a few of the other configuration arguments you could use
121−in the files or on the command line (they are all optional):
122−
123−```nix
124−{ name = "hello"; # for better error messages and derivation names
125− nixpkgsPin = "nixpkgs-unstable"; # or nixpkgs-2111 or nixpkgs-2105
126− nixpkgs = <nixpkgs>; # use this instead of nixpkgsPin
127− subDir = "some/sub/dir"; # sub dir containing the haskell project
128− projectFileName = "stack.yaml"; # use this project file
129− tools.haskell-language-server = "latest";
130− tools.hlint = "latest"; # Include the latest hls and hlint in the shell
131− index-state = "2021-02-22T00:00:00Z"; # It is normally best to put this in `cabal.project` (not here)
132−
133−# PLUS MANY MORE! Almost any argument you can pass to the project functions
134−# or to `shellFor` can be used in as a Hix configuration argument.
135−
136−}
137−```
138−
139−## Adding Nix Support with Niv
140−
141−If you have a `nix/hix.nix` file with suitable configuration that
142−you want to make available to users with Nix (without having to
143−install Hix).
144−
145−[Niv](https://github.com/nmattia/niv) is a command line tool for keeping track of Nix project dependencies.
146−
147−After installing niv you can initialize niv and pin the latest haskell.nix
148−commit by running the following in the root directory of the project:
149−
150−```
151−niv init
152−niv add input-output-hk/haskell.nix -n haskellNix
153−```
154−
155−Add `default.nix`:
156−
157−```nix
158−(import (import nix/sources.nix).haskellNix {}).hix.project { src = ./.; }
159−```
160−
161−If you want to also pin `nixpkgs` with Niv use:
162−
163−```nix
164−let
165− sources = import nix/sources.nix;
166−in
167− (import sources.haskellNix {}).hix.project {
168− inherit (sources) nixpkgs;
169− src = ./.;
170− }
171−```
172−
173−Add `shell.nix`:
174−
175−```nix
176−(import ./.).shell
177−```
178−
179−When you want to update to the latest version of haskell.nix use:
180−
181−```
182−niv update haskellNix
183−```
184−
185−## Adding Nix Flake Support
186−
187−To add flake support that uses the `nix/hix.nix` configuration in your
188−follow the [Getting started with flakes](getting-started.md) guide, but
189−use `haskell-nix.hix.project` instead of `haskell-nix.project'`
190−
191−The `nixpkgs` used will need to be selected as a flake input (any selection
192−made in `nix/hix.nix` will be ignored).
193−
194−Example `flake.nix` file:
195−
196−```nix
197−{
198− description = "A very basic flake";
199− inputs.haskellNix.url = "github:input-output-hk/haskell.nix";
200− inputs.nixpkgs.follows = "haskellNix/nixpkgs-unstable";
201− inputs.flake-utils.url = "github:numtide/flake-utils";
202− outputs = { self, nixpkgs, flake-utils, haskellNix }:
203− flake-utils.lib.eachSystem [ "x86_64-linux" "x86_64-darwin" ] (system:
204− let
205− overlays = [ haskellNix.overlay
206− (final: prev: {
207− # This overlay adds our project to pkgs
208− helloProject =
209− final.haskell-nix.hix.project {
210− src = ./.;
211− # Other project options can be put in `nix/hix.nix`
212− };
213− })
214− ];
215− pkgs = import nixpkgs { inherit system overlays; inherit (haskellNix) config; };
216− flake = pkgs.helloProject.flake {
217− # This adds support for `nix build .#js-unknown-ghcjs:hello:exe:hello`
218− crossPlatforms = p: [p.ghcjs];
219− };
220− in flake // {
221− # Built by `nix build .`
222− defaultPackage = flake.packages."hello:exe:hello";
223− });
224−}
225−```
226−
227−
docs/tutorials/getting-started.md+40−116
@@ -8,70 +8,27 @@ project and its dependencies into Nix code.
88Assuming you have [Nix](https://nixos.org/download.html) installed, you can
99start setting up your project.
1010
11−## Setting up the binary cache
11+## Setting up the Cachix binary cache
1212
13−IMPORTANT: you *must* do this or you *will* build several copies of GHC!
13+You can **avoid compiling GHC and nix-tools** by configuring
14+[Cachix](https://cachix.org) so you can benefit from the binary cache built by
15+CI:
1416
15−You can configure Nix to use our binary cache, which is pushed to by CI, so should contain the artifacts that you need.
17+```bash
18+$ nix-env -iA cachix -f https://cachix.org/api/v1/install
19+installing 'cachix-0.3.8'
20+building '/nix/store/bh176xhpk4wrjm56iahm86wf85jaz23v-user-environment.drv'...
21+created 42 symlinks in user environment
1622
17−You need to add the following sections to `/etc/nix/nix.conf` or, if you are a trusted user, `~/.config/nix/nix.conf` (if you don't know what a "trusted user" is, you probably want to do the former).
18−
19−```
20−trusted-public-keys = [...] hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= [...]
21−substituters = [...] https://cache.iog.io [...]
23+$ cachix use iohk
24+Configured https://iohk.cachix.org binary cache in ~/.config/nix/nix.conf
2225```
2326
24−If you're running NixOS, you need to add/update the following in your `/etc/nixos/configuration.nix` files instead.
27+Note: `haskell.nix` currently uses multiple CI providers to build derivations and store outputs. To improve your chances of getting a cache hit, you might want to add the following additional substituter to `~/.config/nix/nix.conf`:
2528
2629```
27−# Binary Cache for Haskell.nix
28−nix.settings.trusted-public-keys = [
29− "hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
30−];
31−nix.settings.substituters = [
32− "https://cache.iog.io"
33−];
34−```
35−
36−NixOS-21.11 and older use slightly different settings.
37−
38−```
39−# Binary Cache for Haskell.nix
40−nix.binaryCachePublicKeys = [
41− "hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
42−];
43−nix.binaryCaches = [
44− "https://cache.iog.io"
45−];
46−```
47−
48−This can be tricky to get setup properly. If you're still having trouble getting cache hits, consult the corresponding [troubleshooting section](../troubleshooting.md#why-am-i-building-ghc).
49−
50−## Niv
51−
52−[Niv](https://github.com/nmattia/niv) is a command line tool for keeping track of Nix project dependencies.
53−
54−This guide assumes that the `sources.haskellNix` will be set to point
55−a pinned copy of the haskell.nix github repo. One easy way to do this
56−is to use Niv. If you prefer not to use Niv another option is described
57−in the in the "Using haskell.nix without niv" section of this document.
58−
59−If you want to use Nix Flakes to pin your dependencies then you should
60−consider following the [Getting started with flakes](./getting-started-flakes.md)
61−document instead of this one.
62−
63−After installing niv you can initialize niv and pin the latest haskell.nix
64−commit by running the following in the root directory of the project:
65−
66−```
67−niv init
68−niv add input-output-hk/haskell.nix -n haskellNix
69−```
70−
71−Then when you want to update to the latest version of haskellNix use:
72−
73−```
74−niv update haskellNix
30+trusted-public-keys = [...] hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= [...]
31+substituters = [...] https://hydra.iohk.io [...]
7532```
7633
7734## Scaffolding
@@ -82,35 +39,28 @@ projects.
8239Add `default.nix`:
8340
8441```nix
85−let
86− # Read in the Niv sources
87− sources = import ./nix/sources.nix {};
88− # If ./nix/sources.nix file is not found run:
89− # niv init
90− # niv add input-output-hk/haskell.nix -n haskellNix
91−
92− # Fetch the haskell.nix commit we have pinned with Niv
93− haskellNix = import sources.haskellNix {};
94− # If haskellNix is not found run:
95− # niv add input-output-hk/haskell.nix -n haskellNix
96−
97− # Import nixpkgs and pass the haskell.nix provided nixpkgsArgs
98− pkgs = import
99− # haskell.nix provides access to the nixpkgs pins which are used by our CI,
100− # hence you will be more likely to get cache hits when using these.
101− # But you can also just use your own, e.g. '<nixpkgs>'.
102− haskellNix.sources.nixpkgs-unstable
103− # These arguments passed to nixpkgs, include some patches and also
104− # the haskell.nix functionality itself as an overlay.
105− haskellNix.nixpkgsArgs;
106−in pkgs.haskell-nix.project {
42+{ # Fetch the latest haskell.nix and import its default.nix
43+ haskellNix ? import (builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/master.tar.gz") {}
44+
45+# haskell.nix provides access to the nixpkgs pins which are used by our CI,
46+# hence you will be more likely to get cache hits when using these.
47+# But you can also just use your own, e.g. '<nixpkgs>'.
48+, nixpkgsSrc ? haskellNix.sources.nixpkgs-2003
49+
50+# haskell.nix provides some arguments to be passed to nixpkgs, including some
51+# patches and also the haskell.nix functionality itself as an overlay.
52+, nixpkgsArgs ? haskellNix.nixpkgsArgs
53+
54+# import nixpkgs with overlays
55+, pkgs ? import nixpkgsSrc nixpkgsArgs
56+}: pkgs.haskell-nix.project {
10757 # 'cleanGit' cleans a source directory based on the files known by git
10858 src = pkgs.haskell-nix.haskellLib.cleanGit {
10959 name = "haskell-nix-project";
11060 src = ./.;
11161 };
112− # Specify the GHC version to use.
113− compiler-nix-name = "ghc8102"; # Not required for `stack.yaml` based projects.
62+ # For `cabal.project` based projects specify the GHC version to use.
63+ compiler-nix-name = "ghc884"; # Not used for `stack.yaml` based projects.
11464}
11565```
11666
@@ -135,47 +85,20 @@ To build an executable:
13585nix-build -A your-package-name.components.exes.your-exe-name
13686```
13787
138−To cross compile use the `projectCross` attribute:
139−
140−```
141−nix-build -A projectCross.ghcjs.hsPkgs.your-package-name.components.exes.your-exe-name
142−nix-build -A projectCross.mingwW64.hsPkgs.your-package-name.components.exes.your-exe-name
143−```
144−
145−To open a shell for use with `cabal`, `hlint` and `haskell-language-server` add `shell.nix`:
146−
147−```nix
148−(import ./default.nix).shellFor {
149− tools = {
150− cabal = "3.2.0.0";
151− hlint = "latest";
152− haskell-language-server = "latest";
153− };
154−}
155−```
156−
157−Then run:
88+To open a shell for use with `cabal` run:
15889
15990```shell
160−nix-shell
91+nix-shell -A shellFor
16192cabal new-repl your-package-name:library:your-package-name
16293cabal new-build your-package-name
16394```
16495
16596To open a shell for use with `stack` see [the following issue](https://github.com/input-output-hk/haskell.nix/issues/689#issuecomment-643832619).
16697
167−## Using haskell.nix without Niv
168−
169−If you would prefer not to use niv you can replace
170−`sources = import ./nix/sources.nix {};` in the examples with:
171−
172−```nix
173−let sources = {
174− haskellNix = builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/master.tar.gz";
175− };
176−```
98+### Pinning the [haskell.nix][] version
17799
178−The `fetchTarball` call above will always get the latest version, and is
100+For simplicity's sake we will use `fetchTarball` for the examples in
101+this documentation. This will always get the latest version, and is
179102similar to an auto-updating Nix channel.
180103
181104However, in your own project, you may wish to pin [haskell.nix][] (as
@@ -185,9 +108,10 @@ predictable, and faster (because the fixed version is cached).
185108Straightforward way of doing this is to change the branch name to a revision.
186109
187110```nix
188−let sources = {
189− haskellNix = builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/f1a94a4c82a2ab999a67c3b84269da78d89f0075.tar.gz";
190− };
111+{ # Fetch a specific haskell.nix and import its default.nix
112+ haskellNix ? import (builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/f1a94a4c82a2ab999a67c3b84269da78d89f0075.tar.gz") {}
113+
114+...
191115```
192116
193117There are other possible schemes for pinning. See
docs/tutorials/materialization.md+115−99
@@ -2,7 +2,7 @@
22
33## What is materialization?
44
5−Capturing and storing the Nix files for a project so that they do
5+Capturing and storing the nix files for a project so that they do
66not need to be built (or checked). This allows us to cache the input
77of an IFD (import from derivation).
88
@@ -16,146 +16,143 @@ dependencies of nix-tools for instance).
1616 is not unusual for it to take 5 seconds per project).
1717
1818* They can be slow to build (or download) on machines that do not
19− yet have them in the Nix store.
19+ yet have them in the nix store.
2020
21−* Hydra does not show progress because it does not provide feedback until it
22− has a list of jobs and the list of jobs cannot depend on the Nix expressions
23− being present (although this is often blamed on IFD it would be the same if
24− it wrote out JSON files and read them in)
21+* Hydra does not show progress because it does not provide feedback
22+ until it has a list of jobs and the list of jobs cannot depends
23+ on the nix being present (although this is often blamed on IFD
24+ it would be the same if it wrote out JSON files and read them in)
2525
26−## When is it OK to materialize?
26+## When is it ok to materialize?
2727
28−* The Nix expressions are unlikely to change frequently (and when it does you
28+* The nix is unlikely to change frequently (and when it does you
2929 are happy to manually update it).
3030
31−* You are happy to script something to update the materialized Nix files
32− automatically.
31+* You are happy to script something to update the materialized
32+ nix files automatically.
33+* You are certain that the IFD you materialize is not `system`-dependent. If it was you'd
34+ obtain different nix expressions depending on which `system` the IFD was evaluated.
3335
34−* You are certain that the IFD you materialize is not `system`-dependent. If it
35− was you'd obtain different Nix expressions depending on which `system` the
36− IFD was evaluated.
36+## How can we materialize the nix files?
3737
38−## How can we materialize the Nix files?
39−
40−Lets say we want to build `hlint`. We might start with an `hlint.nix`
38+Lets say we want to build `hlint`. We might start with an `hlint`
4139file that looks like this:
4240
4341```nix
4442let inherit (import ./. {}) sources nixpkgsArgs;
4543 pkgs = import sources.nixpkgs nixpkgsArgs;
4644 hlint = pkgs.haskell-nix.hackage-package {
47− compiler-nix-name = "ghc8102";
45+ compiler-nix-name = "ghc884";
4846 name = "hlint";
4947 version = "2.2.11";
5048 };
51−in hlint
49+in hlint.components.exes.hlint
5250```
5351
5452Building this may result in a lot of output, but if you build
5553it again it should give just:
5654
5755```
58−$ nix-build hlint.nix -A components.exes.hlint
59−trace: No index state specified for hlint, using the latest index state that we know about (2021-01-04T00:00:00Z)!
60−/nix/store/2ybrfmcp79gg75ad4pr1cbxjak70yg8b-hlint-exe-hlint-2.2.11
56+$ nix-build hlint.nix
57+trace: Using latest index state for hlint!
58+trace: Using index-state: 2020-04-15T00:00:00Z for hlint
59+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
6160```
6261
63−To materialize the Nix files we need to take care to pin down the inputs. Stack
64−projects have their inputs pinned through specifying the snapshot. For cabal
65−projects this means we must specify the `index-state` of hackage we want to
66−use:
62+To materialize the nix files we need to take care to pin down the
63+inputs. For cabal projects this means we must specify the
64+`index-state` of hackage we want to use:
6765
6866```nix
6967let inherit (import ./. {}) sources nixpkgsArgs;
7068 pkgs = import sources.nixpkgs nixpkgsArgs;
7169 hlint = pkgs.haskell-nix.hackage-package {
72− compiler-nix-name = "ghc8102";
70+ compiler-nix-name = "ghc884";
7371 name = "hlint";
7472 version = "2.2.11";
75− index-state = "2021-01-04T00:00:00Z";
73+ index-state = "2020-04-15T00:00:00Z";
7674 };
77−in hlint
75+in hlint.components.exes.hlint
7876```
7977
80−Now if we build again we get a hint telling use how to calculate a suitable
81−sha256 hash to turn the derivation containing the Nix files into a fixed-output
82−derivation:
78+Now if we build again we get a hint telling use how to
79+calculate a suitable sha256 hash to turn the derivation
80+containing the nix files into a fixed output derivation:
8381
8482```
85−$ nix-build hlint.nix -A components.exes.hlint
86−trace: To make project.plan-nix for hlint a fixed-output derivation but not materialized, set `plan-sha256` to the output of the 'calculateMaterializedSha' script in 'passthru'.
87−trace: To materialize project.plan-nix for hlint entirely, pass a writable path as the `materialized` argument and run the 'updateMaterialized' script in 'passthru'.
88−/nix/store/2ybrfmcp79gg75ad4pr1cbxjak70yg8b-hlint-exe-hlint-2.2.11
89−
90−$ nix-build hlint.nix -A project.plan-nix.passthru.calculateMaterializedSha | bash
91−trace: To make project.plan-nix for hlint a fixed-output derivation but not materialized, set `plan-sha256` to the output of the 'calculateMaterializedSha' script in 'passthru'.
92−trace: To materialize project.plan-nix for hlint entirely, pass a writable path as the `materialized` argument and run the 'updateMaterialized' script in 'passthru'.
93−04hdgqwpaswmyb0ili7fwi6czzihd6x0jlvivw52d1i7wv4gaqy7
83+$ nix-build hlint.nix
84+trace: Using index-state: 2020-04-15T00:00:00Z for hlint
85+trace: Get `plan-sha256` with `nix-hash --base32 --type sha256 /nix/store/8z6p4237rin3c6c1lmjwshmj8rdqrhw2-hlint-plan-to-nix-pkgs/`
86+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
87+
88+$ nix-hash --base32 --type sha256 /nix/store/8z6p4237rin3c6c1lmjwshmj8rdqrhw2-hlint-plan-to-nix-pkgs/
89+02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4
9490```
9591
96−For a Stack project all occurences of `plan-nix` and `plan-sha256` are replaced
97−by `stack-nix` and `stack-sha256`, respectively. We can add the hash as
98−`plan-sha256`:
92+We can add the hash as `plan-sha256` or (`stack-sha256` for
93+stack projects)
9994
10095```nix
10196let inherit (import ./. {}) sources nixpkgsArgs;
10297 pkgs = import sources.nixpkgs nixpkgsArgs;
10398 hlint = pkgs.haskell-nix.hackage-package {
104− compiler-nix-name = "ghc8102";
99+ compiler-nix-name = "ghc884";
105100 name = "hlint";
106101 version = "2.2.11";
107− index-state = "2021-01-04T00:00:00Z";
108− plan-sha256 = "04hdgqwpaswmyb0ili7fwi6czzihd6x0jlvivw52d1i7wv4gaqy7";
102+ index-state = "2020-04-15T00:00:00Z";
103+ plan-sha256 = "02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4";
109104 };
110−in hlint
105+in hlint.components.exes.hlint
111106```
112107
113−Just adding the hash might help reuse of the cached Nix expressions, but Nix
114−will still calculate all the dependencies (which can add seconds to `nix-build`
115−and `nix-shell` commands when no other work is needed) and users who do not yet
116−have the dependencies in their store will have to wait while they are built or
117−downloaded.
108+Just adding the hash might help reuse of the cached nix, but nix will
109+still calculate all the dependencies (which can add seconds to
110+`nix-build` and `nix-shell` commands when no other work is needed)
111+and users who do not yet have the dependencies in their store will have
112+to wait while they are built or downloaded.
118113
119−Running `nix-build` again gives us a hint on what we can do next:
114+Running nix build again gives us a hint on what we can do next:
120115
121116```
122−$ nix-build hlint.nix -A components.exes.hlint
123−trace: To materialize project.plan-nix for hlint entirely, pass a writable path as the `materialized` argument and run the 'updateMaterialized' script in 'passthru'.
124−/nix/store/2ybrfmcp79gg75ad4pr1cbxjak70yg8b-hlint-exe-hlint-2.2.11
117+$ nix-build hlint.nix
118+trace: Using index-state: 2020-04-15T00:00:00Z for hlint
119+trace: To materialize, point `materialized` to a copy of /nix/store/kk047cqsjvbj4w8psv4l05abdcnyrqdc-hlint-plan-to-nix-pkgs
120+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
125121```
126122
127−To capture the Nix expressions we can do something like:
123+To capture the nix we can do something like:
128124
129125```nix
130126let inherit (import ./. {}) sources nixpkgsArgs;
131127 pkgs = import sources.nixpkgs nixpkgsArgs;
132128 hlint = pkgs.haskell-nix.hackage-package {
133− compiler-nix-name = "ghc8102";
129+ compiler-nix-name = "ghc884";
134130 name = "hlint";
135131 version = "2.2.11";
136− index-state = "2021-01-04T00:00:00Z";
137− plan-sha256 = "04hdgqwpaswmyb0ili7fwi6czzihd6x0jlvivw52d1i7wv4gaqy7";
132+ index-state = "2020-04-15T00:00:00Z";
133+ plan-sha256 = "02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4";
138134 materialized = ./hlint.materialized;
139135 };
140−in hlint
136+in hlint.components.exes.hlint
141137```
142138
143−Now we can copy the Nix files needed and build with:
139+Now we can copy the nix files needed and build with:
144140
145141```
146−$ nix-build hlint.nix 2>&1 | grep -om1 '/nix/store/.*-updateMaterialized' | bash
147−$ nix-build hlint.nix -A components.exes.hlint
148−building '/nix/store/wpxsgzl1z4jnhfqzmzg3xxv3ljpmzr5h-hlint-plan-to-nix-pkgs.drv'...
149−/nix/store/2ybrfmcp79gg75ad4pr1cbxjak70yg8b-hlint-exe-hlint-2.2.11
142+$ cp -r /nix/store/8z6p4237rin3c6c1lmjwshmj8rdqrhw2-hlint-plan-to-nix-pkgs hlint.materialized
143+$ nix-build hlint.nix
144+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
150145```
151146
147+We may want to run `chmod -R +w hlint.materialized` as the files copied from the
148+store will be read only.
149+
152150## How can we check `sha256` and `materialized` are up to date?
153151
154152Let's pretend we had to go back to `hlint` version `2.2.10`.
155153We can tell haskell.nix to check the materialization either by:
156154
157155* Removing the materialization files with `rm -rf hlint.materialized`
158−
159156* Temporarily adding `checkMaterialization = true;`
160157
161158If we choose to add the `checkMaterialization` flag you would have:
@@ -164,51 +161,69 @@ If we choose to add the `checkMaterialization` flag you would have:
164161let inherit (import ./. {}) sources nixpkgsArgs;
165162 pkgs = import sources.nixpkgs nixpkgsArgs;
166163 hlint = pkgs.haskell-nix.hackage-package {
167− compiler-nix-name = "ghc8102";
164+ compiler-nix-name = "ghc884";
168165 name = "hlint";
169166 version = "2.2.10";
170− index-state = "2021-01-04T00:00:00Z";
171− plan-sha256 = "04hdgqwpaswmyb0ili7fwi6czzihd6x0jlvivw52d1i7wv4gaqy7";
167+ index-state = "2020-04-15T00:00:00Z";
168+ plan-sha256 = "02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4";
172169 materialized = ./hlint.materialized;
173170 checkMaterialization = true;
174171 };
175−in hlint
172+in hlint.components.exes.hlint
176173```
177174
178175This will fail and report the details of what is wrong and how to fix it:
179176
180177```
181−$ nix-build hlint.nix -A components.exes.hlint
178+$ nix-build hlint.nix
182179
183180...
184181
185−Calculated hash for hlint-plan-to-nix-pkgs was not 04hdgqwpaswmyb0ili7fwi6czzihd6x0jlvivw52d1i7wv4gaqy7. New hash is :
186− plan-sha256 = "0jsgdmii0a6b35sd42cpbc83s4sp4fbx8slphzvamq8n9x49i5b6";
187−Materialized nix used for hlint-plan-to-nix-pkgs incorrect. To fix run: /nix/store/6wp0zzal40ls874f5ddpaac7qmii9y4z-updateMaterialized
188−builder for '/nix/store/61a0vginv76w4p9ycyd628pjanav06pl-hlint-plan-to-nix-pkgs.drv' failed with exit code 1
189−error: build of '/nix/store/61a0vginv76w4p9ycyd628pjanav06pl-hlint-plan-to-nix-pkgs.drv' failed
182+Calculated hash for hlint-plan-to-nix-pkgs was not 02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4. New hash is :
183+ plan-sha256 = "0zsi3wv92qax33ic4n5dfsqd1r9qam1k75za3c5jqgdxl3hy8vph";
184+Materialized nix used for hlint-plan-to-nix-pkgs incorrect. To fix run :
185+ rm -rf /Users/hamish/iohk/haskell.nix/hlint.materialized
186+ cp -r /nix/store/ywdhbx9rzzkfc60c5vzk7cins2hnvkgx-hlint-plan-to-nix-pkgs /Users/hamish/iohk/haskell.nix/hlint.materialized
187+ chmod -R +w /Users/hamish/iohk/haskell.nix/hlint.materialized
188+builder for '/nix/store/a5zmgfjfxahapw0q8hd2da5bg7knqvbx-hlint-plan-to-nix-pkgs.drv' failed with exit code 1
189+error: build of '/nix/store/a5zmgfjfxahapw0q8hd2da5bg7knqvbx-hlint-plan-to-nix-pkgs.drv' failed
190190(use '--show-trace' to show detailed location information)
191191```
192192
193−Checking the materialization requires Nix to do all the work that
194−materialization avoids. So while it might be tempting to leave
195−`checkMaterialization = true` all the time, we would be better off just
196−removing `materialized` and `plan-sha256`.
193+Checking the materialization requires nix to do all the work that materialization
194+avoids. So while it might be tempting to leave `checkMaterialization = true` all
195+the time, we would be better off just removing `materialized` and `plan-sha256`.
197196
198−## How can we update the Nix files with a script?
197+## How can we update the nix files with a script?
199198
200−We can simply put the commands we used earlier in a script:
199+There are versions of the functions (`project'`, `cabalProject'`,
200+`stackProject'` and `hackage-project`) that also return the nix as
201+`plan-nix` or `stack-nix`. By calling one of these functions without
202+the hash and materialized nix we can find out what nix files should be.
203+For instance:
201204
202205```nix
203−#!/bin/sh
204−
205−# Output new plan-sha256
206−nix-build hlint.nix -A project.plan-nix.passthru.calculateMaterializedSha | bash
206+let inherit (import ./. {}) sources nixpkgsArgs;
207+ pkgs = import sources.nixpkgs nixpkgsArgs;
208+ hlint = pkgs.haskell-nix.hackage-project {
209+ compiler-nix-name = "ghc884";
210+ name = "hlint";
211+ version = "2.2.10";
212+ index-state = "2020-04-15T00:00:00Z";
213+ };
214+in hlint
215+```
207216
208−# Update materialized Nix expressions
209−nix-build hlint.nix 2>&1 | grep -om1 '/nix/store/.*-updateMaterialized' | bash
217+```
218+$ nix-build hlint.nix -A plan-nix
219+trace: Using index-state: 2020-04-15T00:00:00Z for hlint
220+trace: Get `plan-sha256` with `nix-hash --base32 --type sha256 /nix/store/ywdhbx9rzzkfc60c5vzk7cins2hnvkgx-hlint-plan-to-nix-pkgs/`
221+/nix/store/ywdhbx9rzzkfc60c5vzk7cins2hnvkgx-hlint-plan-to-nix-pkgs
210222```
211223
224+We can have the script copy `$(nix-build hlint.nix -A plan-nix --no-out-link)`
225+and use `nix-hash` to calculate the new value for `plan-sha256`.
226+
212227## Can we skip making a copy and use `materialized = /nix/store/...`?
213228
214229Yes and it gives us the same speed improvement, however:
@@ -216,7 +231,7 @@ Yes and it gives us the same speed improvement, however:
216231* It does not help at all in `restricted-eval` mode (Hydra).
217232
218233* Users will still wind up building or downloading the dependencies
219− needed to build the Nix files (if they do not have them).
234+ needed to build the nix files (if they do not have them).
220235
221236For those reasons it might be best to make a copy instead
222237of using the `/nix/store/...` path directly.
@@ -228,29 +243,30 @@ a non-existing path is now an error:
228243```nix
229244let inherit (import ./. {}) sources nixpkgsArgs;
230245 pkgs = import sources.nixpkgs nixpkgsArgs;
231− hlintPlan = /nix/store/63k3f8bvsnag7v36vb3149208jyx61rk-hlint-plan-to-nix-pkgs;
246+ hlintPlan = /nix/store/kk047cqsjvbj4w8psv4l05abdcnyrqdc-hlint-plan-to-nix-pkgs;
232247 hlint = pkgs.haskell-nix.hackage-package {
233− compiler-nix-name = "ghc8102";
248+ compiler-nix-name = "ghc884";
234249 name = "hlint";
235250 version = "2.2.11";
236− index-state = "2021-01-04T00:00:00Z";
237− plan-sha256 = "04hdgqwpaswmyb0ili7fwi6czzihd6x0jlvivw52d1i7wv4gaqy7";
251+ index-state = "2020-04-15T00:00:00Z";
252+ plan-sha256 = "02hasr27a994sml1fzf8swb716lm6lgixxr53y0gxkhw437xkck4";
238253 materialized = if __pathExists hlintPlan then hlintPlan else null;
239254 };
240−in hlint
255+in hlint.components.exes.hlint
241256```
242257
243258Running when no building is needed is still slow in restricted evaluation mode.
244259
245260```
246−$ time nix-build --option restrict-eval true -I . --option allowed-uris "https://github.com/NixOS https://github.com/input-output-hk" hlint.nix -A components.exes.hlint --show-trace
247−/nix/store/2ybrfmcp79gg75ad4pr1cbxjak70yg8b-hlint-exe-hlint-2.2.11
261+$ 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
262+trace: Using index-state: 2020-04-15T00:00:00Z for hlint
263+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
248264
249265real 0m4.463s
250266user 0m4.440s
251267sys 0m0.461s
252−$ time nix-build hlint.nix -A components.exes.hlint
253−/nix/store/2ybrfmcp79gg75ad4pr1cbxjak70yg8b-hlint-exe-hlint-2.2.11
268+$ time nix-build hlint.nix
269+/nix/store/rnfz66v7k8i38c8rsmchzsyqjrmrbdpk-hlint-2.2.11-exe-hlint
254270
255271real 0m2.206s
256272user 0m1.665s
docs/tutorials/pkg-map.md+6−32
@@ -3,10 +3,10 @@
33Cabal files may contain dependencies to external non-Haskell
44dependencies via:
55
6−* [`build-tool-depends`](https://cabal.readthedocs.io/en/latest/cabal-package.html#pkg-field-build-tool-depends)
7−* [`pkgconfig-depends`](https://cabal.readthedocs.io/en/latest/cabal-package.html#pkg-field-pkgconfig-depends)
8−* [`frameworks`](https://cabal.readthedocs.io/en/latest/cabal-package.html#pkg-field-frameworks)
9−* [`extra-libraries`](https://cabal.readthedocs.io/en/latest/cabal-package.html#pkg-field-extra-libraries)
6+* [`build-tool-depends`](https://cabal.readthedocs.io/en/latest/developing-packages.html#pkg-field-build-tool-depends)
7+* [`pkgconfig-depends`](https://cabal.readthedocs.io/en/latest/developing-packages.html#pkg-field-pkgconfig-depends)
8+* [`frameworks`](https://cabal.readthedocs.io/en/latest/developing-packages.html#pkg-field-frameworks)
9+* [`extra-libraries`](https://cabal.readthedocs.io/en/latest/developing-packages.html#pkg-field-extra-libraries)
1010
1111If there is a `pkgs` attribute in Nixpkgs that matches the name given
1212in the Cabal file, then it will be added as a dependency (see the
@@ -29,39 +29,13 @@ nixpkgs.overlays = [
2929];
3030```
3131
32−### Replace libraries of components
33−
34−If a component is missing a dependency it can be added via modules. For example:
35−
36−``` nix
37−project = pkgs.haskell-nix.project' {
38− src = self;
39− compiler-nix-name = "ghc8102";
40− modules = [{
41− # Replace `extra-libraries` dependencies
42− packages.X11.components.library.libs = pkgs.lib.mkForce (with pkgs.xorg;
43− [ libX11 libXrandr libXext libXScrnSaver libXinerama ]);
44− }];
45−};
46−```
47−
4832### Mapping in Haskell.nix
4933
5034Alternatively, if the name is commonly used, an alias can be added to
5135the Haskell.nix sources, so that it's solved for all users.
5236
53−* [`lib/pkgconf-nixpkgs-map.nix`](https://github.com/input-output-hk/haskell.nix/blob/master/lib/pkgconf-nixpkgs-map.nix)
54− — for `pkgconfig-depends`.
55−
56− Each mapping entry is a list of packages.
57−
58−* [`lib/system-nixpkgs-map.nix`](https://github.com/input-output-hk/haskell.nix/blob/master/lib/system-nixpkgs-map.nix)
59− — for `build-tool-depends`, `frameworks`, `extra-libraries`, etc.
60−
61− Each name can be mapped to:
62− 1. A single package from nixkpgs.
63− 2. `null` — eliminates the dependency
64− 3. A list of packages — sometimes needed for dependencies such as `X11`.
37+* [`lib/pkgconf-nixpkgs-map.nix`](https://github.com/input-output-hk/haskell.nix/blob/master/lib/pkgconf-nixpkgs-map.nix) - for `pkgconfig-depends`
38+* [`lib/system-nixpkgs-map.nix`](https://github.com/input-output-hk/haskell.nix/blob/master/lib/system-nixpkgs-map.nix) - for `build-tool-depends`, `frameworks`, `extra-libraries`, etc.
6539
6640!!! tip "Open a PR"
6741 Please go ahead and open a [pull request](https://github.com/input-output-hk/haskell.nix/pulls)
flake.lockdeleted−396
@@ -1,396 +0,0 @@
1−{
2− "nodes": {
3− "HTTP": {
4− "flake": false,
5− "locked": {
6− "lastModified": 1451647621,
7− "narHash": "sha256-oHIyw3x0iKBexEo49YeUDV1k74ZtyYKGR2gNJXXRxts=",
8− "owner": "phadej",
9− "repo": "HTTP",
10− "rev": "9bc0996d412fef1787449d841277ef663ad9a915",
11− "type": "github"
12− },
13− "original": {
14− "owner": "phadej",
15− "repo": "HTTP",
16− "type": "github"
17− }
18− },
19− "cabal-32": {
20− "flake": false,
21− "locked": {
22− "lastModified": 1603716527,
23− "narHash": "sha256-X0TFfdD4KZpwl0Zr6x+PLxUt/VyKQfX7ylXHdmZIL+w=",
24− "owner": "haskell",
25− "repo": "cabal",
26− "rev": "48bf10787e27364730dd37a42b603cee8d6af7ee",
27− "type": "github"
28− },
29− "original": {
30− "owner": "haskell",
31− "ref": "3.2",
32− "repo": "cabal",
33− "type": "github"
34− }
35− },
36− "cabal-34": {
37− "flake": false,
38− "locked": {
39− "lastModified": 1640353650,
40− "narHash": "sha256-N1t6M3/wqj90AEdRkeC8i923gQYUpzSr8b40qVOZ1Rk=",
41− "owner": "haskell",
42− "repo": "cabal",
43− "rev": "942639c18c0cd8ec53e0a6f8d120091af35312cd",
44− "type": "github"
45− },
46− "original": {
47− "owner": "haskell",
48− "ref": "3.4",
49− "repo": "cabal",
50− "type": "github"
51− }
52− },
53− "cabal-36": {
54− "flake": false,
55− "locked": {
56− "lastModified": 1641652457,
57− "narHash": "sha256-BlFPKP4C4HRUJeAbdembX1Rms1LD380q9s0qVDeoAak=",
58− "owner": "haskell",
59− "repo": "cabal",
60− "rev": "f27667f8ec360c475027dcaee0138c937477b070",
61− "type": "github"
62− },
63− "original": {
64− "owner": "haskell",
65− "ref": "3.6",
66− "repo": "cabal",
67− "type": "github"
68− }
69− },
70− "cardano-shell": {
71− "flake": false,
72− "locked": {
73− "lastModified": 1608537748,
74− "narHash": "sha256-PulY1GfiMgKVnBci3ex4ptk2UNYMXqGjJOxcPy2KYT4=",
75− "owner": "input-output-hk",
76− "repo": "cardano-shell",
77− "rev": "9392c75087cb9a3d453998f4230930dea3a95725",
78− "type": "github"
79− },
80− "original": {
81− "owner": "input-output-hk",
82− "repo": "cardano-shell",
83− "type": "github"
84− }
85− },
86− "flake-utils": {
87− "locked": {
88− "lastModified": 1644229661,
89− "narHash": "sha256-1YdnJAsNy69bpcjuoKdOYQX0YxZBiCYZo4Twxerqv7k=",
90− "owner": "numtide",
91− "repo": "flake-utils",
92− "rev": "3cecb5b042f7f209c56ffd8371b2711a290ec797",
93− "type": "github"
94− },
95− "original": {
96− "owner": "numtide",
97− "repo": "flake-utils",
98− "type": "github"
99− }
100− },
101− "ghc-8.6.5-iohk": {
102− "flake": false,
103− "locked": {
104− "lastModified": 1600920045,
105− "narHash": "sha256-DO6kxJz248djebZLpSzTGD6s8WRpNI9BTwUeOf5RwY8=",
106− "owner": "input-output-hk",
107− "repo": "ghc",
108− "rev": "95713a6ecce4551240da7c96b6176f980af75cae",
109− "type": "github"
110− },
111− "original": {
112− "owner": "input-output-hk",
113− "ref": "release/8.6.5-iohk",
114− "repo": "ghc",
115− "type": "github"
116− }
117− },
118− "hackage": {
119− "flake": false,
120− "locked": {
121− "lastModified": 1659402819,
122− "narHash": "sha256-1ghmulyIk+obGnyFeouVHBQXxUHMBmgCIRazLfEoT34=",
123− "owner": "input-output-hk",
124− "repo": "hackage.nix",
125− "rev": "2f6f97ca3db96f91eea674ef46f4a0785d1e9d9c",
126− "type": "github"
127− },
128− "original": {
129− "owner": "input-output-hk",
130− "repo": "hackage.nix",
131− "type": "github"
132− }
133− },
134− "hpc-coveralls": {
135− "flake": false,
136− "locked": {
137− "lastModified": 1607498076,
138− "narHash": "sha256-8uqsEtivphgZWYeUo5RDUhp6bO9j2vaaProQxHBltQk=",
139− "owner": "sevanspowell",
140− "repo": "hpc-coveralls",
141− "rev": "14df0f7d229f4cd2e79f8eabb1a740097fdfa430",
142− "type": "github"
143− },
144− "original": {
145− "owner": "sevanspowell",
146− "repo": "hpc-coveralls",
147− "type": "github"
148− }
149− },
150− "hydra": {
151− "inputs": {
152− "nix": "nix",
153− "nixpkgs": [
154− "hydra",
155− "nix",
156− "nixpkgs"
157− ]
158− },
159− "locked": {
160− "lastModified": 1646878427,
161− "narHash": "sha256-KtbrofMtN8GlM7D+n90kixr7QpSlVmdN+vK5CA/aRzc=",
162− "owner": "NixOS",
163− "repo": "hydra",
164− "rev": "28b682b85b7efc5cf7974065792a1f22203a5927",
165− "type": "github"
166− },
167− "original": {
168− "id": "hydra",
169− "type": "indirect"
170− }
171− },
172− "lowdown-src": {
173− "flake": false,
174− "locked": {
175− "lastModified": 1633514407,
176− "narHash": "sha256-Dw32tiMjdK9t3ETl5fzGrutQTzh2rufgZV4A/BbxuD4=",
177− "owner": "kristapsdz",
178− "repo": "lowdown",
179− "rev": "d2c2b44ff6c27b936ec27358a2653caaef8f73b8",
180− "type": "github"
181− },
182− "original": {
183− "owner": "kristapsdz",
184− "repo": "lowdown",
185− "type": "github"
186− }
187− },
188− "nix": {
189− "inputs": {
190− "lowdown-src": "lowdown-src",
191− "nixpkgs": "nixpkgs",
192− "nixpkgs-regression": "nixpkgs-regression"
193− },
194− "locked": {
195− "lastModified": 1643066034,
196− "narHash": "sha256-xEPeMcNJVOeZtoN+d+aRwolpW8mFSEQx76HTRdlhPhg=",
197− "owner": "NixOS",
198− "repo": "nix",
199− "rev": "a1cd7e58606a41fcf62bf8637804cf8306f17f62",
200− "type": "github"
201− },
202− "original": {
203− "owner": "NixOS",
204− "ref": "2.6.0",
205− "repo": "nix",
206− "type": "github"
207− }
208− },
209− "nix-tools": {
210− "flake": false,
211− "locked": {
212− "lastModified": 1658968505,
213− "narHash": "sha256-UnbQ/Ig/23e9hUdDOBwYHwHgHmQawZ2uazpJ8DLIJgE=",
214− "owner": "input-output-hk",
215− "repo": "nix-tools",
216− "rev": "8a754bdcf20b20e116409c2341cf69065d083053",
217− "type": "github"
218− },
219− "original": {
220− "owner": "input-output-hk",
221− "repo": "nix-tools",
222− "type": "github"
223− }
224− },
225− "nixpkgs": {
226− "locked": {
227− "lastModified": 1632864508,
228− "narHash": "sha256-d127FIvGR41XbVRDPVvozUPQ/uRHbHwvfyKHwEt5xFM=",
229− "owner": "NixOS",
230− "repo": "nixpkgs",
231− "rev": "82891b5e2c2359d7e58d08849e4c89511ab94234",
232− "type": "github"
233− },
234− "original": {
235− "id": "nixpkgs",
236− "ref": "nixos-21.05-small",
237− "type": "indirect"
238− }
239− },
240− "nixpkgs-2003": {
241− "locked": {
242− "lastModified": 1620055814,
243− "narHash": "sha256-8LEHoYSJiL901bTMVatq+rf8y7QtWuZhwwpKE2fyaRY=",
244− "owner": "NixOS",
245− "repo": "nixpkgs",
246− "rev": "1db42b7fe3878f3f5f7a4f2dc210772fd080e205",
247− "type": "github"
248− },
249− "original": {
250− "owner": "NixOS",
251− "ref": "nixpkgs-20.03-darwin",
252− "repo": "nixpkgs",
253− "type": "github"
254− }
255− },
256− "nixpkgs-2105": {
257− "locked": {
258− "lastModified": 1655034179,
259− "narHash": "sha256-rf1/7AbzuYDw6+8Xvvf3PtEOygymLBrFsFxvext5ZjI=",
260− "owner": "NixOS",
261− "repo": "nixpkgs",
262− "rev": "046ee4af7a9f016a364f8f78eeaa356ba524ac31",
263− "type": "github"
264− },
265− "original": {
266− "owner": "NixOS",
267− "ref": "nixpkgs-21.05-darwin",
268− "repo": "nixpkgs",
269− "type": "github"
270− }
271− },
272− "nixpkgs-2111": {
273− "locked": {
274− "lastModified": 1656782578,
275− "narHash": "sha256-1eMCBEqJplPotTo/SZ/t5HU6Sf2I8qKlZi9MX7jv9fw=",
276− "owner": "NixOS",
277− "repo": "nixpkgs",
278− "rev": "573603b7fdb9feb0eb8efc16ee18a015c667ab1b",
279− "type": "github"
280− },
281− "original": {
282− "owner": "NixOS",
283− "ref": "nixpkgs-21.11-darwin",
284− "repo": "nixpkgs",
285− "type": "github"
286− }
287− },
288− "nixpkgs-2205": {
289− "locked": {
290− "lastModified": 1657876628,
291− "narHash": "sha256-URmf0O2cQ/3heg2DJOeLyU/JmfVMqG4X5t9crQXMaeY=",
292− "owner": "NixOS",
293− "repo": "nixpkgs",
294− "rev": "549d82bdd40f760a438c3c3497c1c61160f3de55",
295− "type": "github"
296− },
297− "original": {
298− "owner": "NixOS",
299− "ref": "nixpkgs-22.05-darwin",
300− "repo": "nixpkgs",
301− "type": "github"
302− }
303− },
304− "nixpkgs-regression": {
305− "locked": {
306− "lastModified": 1643052045,
307− "narHash": "sha256-uGJ0VXIhWKGXxkeNnq4TvV3CIOkUJ3PAoLZ3HMzNVMw=",
308− "owner": "NixOS",
309− "repo": "nixpkgs",
310− "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
311− "type": "github"
312− },
313− "original": {
314− "id": "nixpkgs",
315− "rev": "215d4d0fd80ca5163643b03a33fde804a29cc1e2",
316− "type": "indirect"
317− }
318− },
319− "nixpkgs-unstable": {
320− "locked": {
321− "lastModified": 1657888067,
322− "narHash": "sha256-GnwJoFBTPfW3+mz7QEeJEEQ9OMHZOiIJ/qDhZxrlKh8=",
323− "owner": "NixOS",
324− "repo": "nixpkgs",
325− "rev": "65fae659e31098ca4ac825a6fef26d890aaf3f4e",
326− "type": "github"
327− },
328− "original": {
329− "owner": "NixOS",
330− "ref": "nixpkgs-unstable",
331− "repo": "nixpkgs",
332− "type": "github"
333− }
334− },
335− "old-ghc-nix": {
336− "flake": false,
337− "locked": {
338− "lastModified": 1631092763,
339− "narHash": "sha256-sIKgO+z7tj4lw3u6oBZxqIhDrzSkvpHtv0Kki+lh9Fg=",
340− "owner": "angerman",
341− "repo": "old-ghc-nix",
342− "rev": "af48a7a7353e418119b6dfe3cd1463a657f342b8",
343− "type": "github"
344− },
345− "original": {
346− "owner": "angerman",
347− "ref": "master",
348− "repo": "old-ghc-nix",
349− "type": "github"
350− }
351− },
352− "root": {
353− "inputs": {
354− "HTTP": "HTTP",
355− "cabal-32": "cabal-32",
356− "cabal-34": "cabal-34",
357− "cabal-36": "cabal-36",
358− "cardano-shell": "cardano-shell",
359− "flake-utils": "flake-utils",
360− "ghc-8.6.5-iohk": "ghc-8.6.5-iohk",
361− "hackage": "hackage",
362− "hpc-coveralls": "hpc-coveralls",
363− "hydra": "hydra",
364− "nix-tools": "nix-tools",
365− "nixpkgs": [
366− "nixpkgs-unstable"
367− ],
368− "nixpkgs-2003": "nixpkgs-2003",
369− "nixpkgs-2105": "nixpkgs-2105",
370− "nixpkgs-2111": "nixpkgs-2111",
371− "nixpkgs-2205": "nixpkgs-2205",
372− "nixpkgs-unstable": "nixpkgs-unstable",
373− "old-ghc-nix": "old-ghc-nix",
374− "stackage": "stackage"
375− }
376− },
377− "stackage": {
378− "flake": false,
379− "locked": {
380− "lastModified": 1659402917,
381− "narHash": "sha256-zRDOtN4A2KmfzmZiqqxOAIw1YVPhnoIaszKKd+qCEcQ=",
382− "owner": "input-output-hk",
383− "repo": "stackage.nix",
384− "rev": "778df3c4b35eac853d57fac7bafc7c9f2dde917f",
385− "type": "github"
386− },
387− "original": {
388− "owner": "input-output-hk",
389− "repo": "stackage.nix",
390− "type": "github"
391− }
392− }
393− },
394− "root": "root",
395− "version": 7
396−}
flake.nix+30−142
@@ -1,148 +1,36 @@
11{
22 description = "Alternative Haskell Infrastructure for Nixpkgs";
33
4− inputs = {
5− nixpkgs.follows = "nixpkgs-unstable";
6− nixpkgs-2003 = { url = "github:NixOS/nixpkgs/nixpkgs-20.03-darwin"; };
7− nixpkgs-2105 = { url = "github:NixOS/nixpkgs/nixpkgs-21.05-darwin"; };
8− nixpkgs-2111 = { url = "github:NixOS/nixpkgs/nixpkgs-21.11-darwin"; };
9− nixpkgs-2205 = { url = "github:NixOS/nixpkgs/nixpkgs-22.05-darwin"; };
10− nixpkgs-unstable = { url = "github:NixOS/nixpkgs/nixpkgs-unstable"; };
11− flake-utils = { url = "github:numtide/flake-utils"; };
12− hydra.url = "hydra";
13− hackage = {
14− url = "github:input-output-hk/hackage.nix";
15− flake = false;
16− };
17− stackage = {
18− url = "github:input-output-hk/stackage.nix";
19− flake = false;
20− };
21− cabal-32 = {
22− url = "github:haskell/cabal/3.2";
23− flake = false;
24− };
25− cabal-34 = {
26− url = "github:haskell/cabal/3.4";
27− flake = false;
28− };
29− cabal-36 = {
30− url = "github:haskell/cabal/3.6";
31− flake = false;
32− };
33− cardano-shell = {
34− url = "github:input-output-hk/cardano-shell";
35− flake = false;
36− };
37− "ghc-8.6.5-iohk" = {
38− type = "github";
39− owner = "input-output-hk";
40− repo = "ghc";
41− ref = "release/8.6.5-iohk";
42− flake = false;
43− };
44− hpc-coveralls = {
45− url = "github:sevanspowell/hpc-coveralls";
46− flake = false;
47− };
48− nix-tools = {
49− url = "github:input-output-hk/nix-tools";
50− flake = false;
51− };
52− old-ghc-nix = {
53− url = "github:angerman/old-ghc-nix/master";
54− flake = false;
55− };
56− HTTP = {
57− url = "github:phadej/HTTP";
58− flake = false;
59− };
60− };
61−
62− outputs = { self, nixpkgs, nixpkgs-unstable, nixpkgs-2105, nixpkgs-2111, nixpkgs-2205, flake-utils, ... }@inputs:
63− let compiler = "ghc924";
64− config = import ./config.nix;
65− in {
66− inherit config;
67− overlay = self.overlays.combined;
68− overlays = import ./overlays { sources = inputs; };
69− internal = rec {
70− nixpkgsArgs = {
71− inherit config;
72− overlays = [ self.overlay ];
73− };
4+ edition = 201909;
745
75− sources = inputs;
6+ outputs = { self }: {
7+ # Using the eval-on-build version here as the plan is that
8+ # `builtins.currentSystem` will not be supported in flakes.
9+ # https://github.com/NixOS/rfcs/pull/49/files#diff-a5a138ca225433534de8d260f225fe31R429
10+ overlay = (self.overlays {sourcesOverride = self.sources;}).combined-eval-on-build;
11+ overlays = import ./overlays;
12+ config = import ./config.nix;
13+ # We can't import ./nix/sources.nix directly, because that uses nixpkgs to fetch by default,
14+ # and importing nixpkgs without specifying localSystem doesn't work on flakes.
15+ sources = let
16+ sourcesInfo =
17+ builtins.fromJSON (builtins.readFile ./nix/sources.json);
18+ fetch = sourceInfo:
19+ builtins.fetchTarball { inherit (sourceInfo) url sha256; };
20+ in builtins.mapAttrs (_: fetch) sourcesInfo;
7621
77− overlaysOverrideable = import ./overlays;
78− # Compatibility with old default.nix
79− compat = { checkMaterialization ?
80− false # Allows us to easily switch on materialization checking
81− , system, sourcesOverride ? { }, ... }@args: rec {
82− sources = inputs // sourcesOverride;
83− allOverlays = import ./overlays (args // { inherit sources; });
84− inherit config;
85− # We are overriding 'overlays' and 'nixpkgsArgs' from the
86− # flake outputs so that we can incorporate the args passed
87− # to the compat layer (e.g. sourcesOverride).
88− overlays = [ allOverlays.combined ]
89− ++ (if checkMaterialization == true then
90− [
91− (final: prev: {
92− haskell-nix = prev.haskell-nix // {
93− checkMaterialization = true;
94− };
95− })
96− ]
97− else
98− [ ]);
99− nixpkgsArgs = {
100− inherit config overlays;
101− };
102− pkgs = import nixpkgs
103− (nixpkgsArgs // { localSystem = { inherit system; }; });
104− pkgs-2105 = import nixpkgs-2105
105− (nixpkgsArgs // { localSystem = { inherit system; }; });
106− pkgs-2111 = import nixpkgs-2111
107− (nixpkgsArgs // { localSystem = { inherit system; }; });
108− pkgs-2205 = import nixpkgs-2205
109− (nixpkgsArgs // { localSystem = { inherit system; }; });
110− pkgs-unstable = import nixpkgs-unstable
111− (nixpkgsArgs // { localSystem = { inherit system; }; });
112− hix = import ./hix/default.nix { inherit pkgs; };
113− };
114− };
115−
116− # Note: `nix flake check` evaluates outputs for all platforms, and haskell.nix
117− # uses IFD heavily, you have to have the ability to build for all platforms
118− # supported by haskell.nix, e.g. with remote builders, in order to check this flake.
119− # If you want to run the tests for just your platform, run `./test/tests.sh` or
120− # `nix-build -A checks.$PLATFORM`
121− } // flake-utils.lib.eachSystem [ "x86_64-linux" "x86_64-darwin" "aarch64-linux" "aarch64-darwin" ] (system: rec {
122− legacyPackages = (self.internal.compat { inherit system; }).pkgs;
123− legacyPackagesUnstable = (self.internal.compat { inherit system; }).pkgs-unstable;
124−
125− # FIXME: Currently `nix flake check` requires `--impure` because coverage-golden
126− # (and maybe other tests) import projects that use builtins.currentSystem
127− checks = builtins.listToAttrs (map (pkg: {
128− name = pkg.name;
129− value = pkg;
130− }) (nixpkgs.lib.collect nixpkgs.lib.isDerivation (import ./test rec {
131− haskellNix = self.internal.compat { inherit system; };
132− compiler-nix-name = compiler;
133− pkgs = haskellNix.pkgs;
134− })));
135− # Exposed so that buildkite can check that `allow-import-from-derivation=false` works for core of haskell.nix
136− roots = legacyPackagesUnstable.haskell-nix.roots compiler;
137−
138− devShell = with self.legacyPackages.${system};
139− mkShell {
140− buildInputs = [
141− nixUnstable
142− cabal-install
143− haskell-nix.compiler.${compiler}
144− haskell-nix.nix-tools.${compiler}
145− ];
146− };
147− });
22+ nixpkgsArgs = {
23+ inherit (self) config;
24+ overlays = [ self.overlay ];
25+ };
26+ legacyPackages = let
27+ genAttrs = lst: f:
28+ builtins.listToAttrs (map (name: {
29+ inherit name;
30+ value = f name;
31+ }) lst);
32+ in genAttrs [ "x86_64-linux" "x86_64-darwin" ] (system:
33+ import self.sources.nixpkgs
34+ (self.nixpkgsArgs // { localSystem = { inherit system; }; }));
35+ };
14836}
hackage-src.json+4−7
@@ -1,10 +1,7 @@
11{
22 "url": "https://github.com/input-output-hk/hackage.nix",
3− "rev": "9bdefa51c864bbef48a2758b05b4b568f0ded62b",
4− "date": "2021-08-06T01:11:48+00:00",
5− "path": "/nix/store/isypgnv4qa5398z6vjc3fi620l4y87c4-hackage.nix-9bdefa5",
6− "sha256": "0pm3m864wwgf76isjwb8244xh8xykc94b5az6zb1h38q30s9xjji",
7− "fetchSubmodules": false,
8− "deepClone": false,
9− "leaveDotGit": false
3+ "rev": "d730e57c003b910b6d79f48b8967a80eebb66d33",
4+ "date": "2020-09-29T01:13:34+00:00",
5+ "sha256": "1ddf2c5znd5nr99a9zn6y4jdh7x9x0i99idpqkpycc513djx9jhz",
6+ "fetchSubmodules": false
107}
hix/default.nixdeleted−43
@@ -1,43 +0,0 @@
1−{ pkgs }:
2−let
3− args = '' --arg userDefaults "$HOME/.config/hix/hix.conf" --arg src ./.'';
4− # Use HIX_ROOT to override the version of hix used when developing new hix features.
5− # See docs/dev/hix.md for details.
6− hixProject = "\${HIX_ROOT:-${./..}}/hix/project.nix";
7−in pkgs.symlinkJoin {
8− name = "hix";
9− paths = [
10− (pkgs.writeScriptBin "hix-shell" ''
11− nix-shell ${hixProject} ${args} -A shell "$@"
12− '')
13− (pkgs.writeScriptBin "hix-build" ''
14− nix-build ${hixProject} ${args} "$@"
15− '')
16− (pkgs.writeScriptBin "hix-instantiate" ''
17− nix-instantiate ${hixProject} ${args} "$@"
18− '')
19− (pkgs.writeScriptBin "hix-env" ''
20− nix-env -f ${hixProject} ${args} "$@"
21− '')
22− (pkgs.writeScriptBin "hix" ''
23− cmd=$1
24− shift
25− case $cmd in
26− update)
27− nix-env -iA hix -f https://github.com/input-output-hk/haskell.nix/tarball/master
28− ;;
29− build|dump-path|eval|log|path-info|run|search|show-derivation|sign-paths|verify|why-depends)
30− nix $cmd -f ${hixProject} ${args} "$@"
31− ;;
32− repl)
33− nix $cmd ${hixProject} ${args} "$@"
34− ;;
35− *)
36− nix $cmd "$@"
37− ;;
38− esac
39− '')
40− ];
41−} // {
42− project = import ./project.nix;
43−}
hix/project.nixdeleted−77
@@ -1,77 +0,0 @@
1−{ src
2−, userDefaults ? {}
3−, nixpkgs ? null
4−, nixpkgsPin ? null
5−, pkgs ? null
6−, checkMaterialization ? null
7−, compiler-nix-name ? null
8−, shell ? null
9−, ...}@commandArgs:
10−let
11− inherit ((lib.evalModules {
12− modules = [
13− (import ../modules/project-common.nix)
14− (import ../modules/stack-project.nix)
15− (import ../modules/cabal-project.nix)
16− (import ../modules/project.nix)
17− (import ../modules/hix-project.nix)
18− projectDefaults
19− commandArgs'
20− { _module.args.pkgs = {}; }
21− ];
22− }).config) name;
23− inherit (import ./.. {}) sources;
24− lib = import (sources.nixpkgs-unstable + "/lib");
25− commandArgs' =
26− builtins.listToAttrs (
27− builtins.concatMap (
28− name:
29− if commandArgs.${name} == null || name == "src" || name == "userDefaults" || name == "inNixShell"
30− then []
31− else [{ inherit name; value = commandArgs.${name}; }]
32− ) (builtins.attrNames commandArgs));
33− defaultArgs = {
34− nixpkgsPin = "nixpkgs-unstable";
35− };
36− importDefaults = src:
37− if src == null || !(__pathExists src)
38− then {}
39− else import src;
40− userDefaults = importDefaults (commandArgs.userDefaults or null);
41− projectDefaults = importDefaults (toString (src.origSrcSubDir or src) + "/nix/hix.nix");
42− inherit ((lib.evalModules {
43− modules = [
44− (import ../modules/project-common.nix)
45− (import ../modules/stack-project.nix)
46− (import ../modules/cabal-project.nix)
47− (import ../modules/project.nix)
48− (import ../modules/hix-project.nix)
49− userDefaults
50− projectDefaults
51− commandArgs'
52− ({config, pkgs, ...}: {
53− haskellNix = import ./.. { inherit checkMaterialization; };
54− nixpkgsPin = "nixpkgs-unstable";
55− nixpkgs = config.haskellNix.sources.${config.nixpkgsPin};
56− nixpkgsArgs = config.haskellNix.nixpkgsArgs // {
57− overlays = config.haskellNix.nixpkgsArgs.overlays ++ config.overlays;
58− };
59− _module.args.pkgs = import config.nixpkgs config.nixpkgsArgs;
60− project = pkgs.haskell-nix.project [
61− (import ../modules/hix-project.nix)
62− userDefaults
63− projectDefaults
64− commandArgs'
65− ({config, ...}: {
66− src =
67− if __pathExists (toString (src.origSrcSubDir or src) + "/.git")
68− then config.evalPackages.haskell-nix.haskellLib.cleanGit {
69− inherit src name;
70− }
71− else src;
72− })
73− ];
74− })
75− ];
76− }).config) project shell;
77−in project
lib/cabal-licenses.nix+21−18
@@ -1,21 +1,24 @@
1−pkgs:
2−let licenses = import spdx/licenses.nix pkgs;
3−in licenses // {
1+lib: with lib.licenses;
2+{ BSD-3-Clause = bsd3;
3+ BSD-2-Clause = bsd2;
4+ MIT = mit;
5+ "MPL-2.0" = mpl20;
6+ ISC = isc;
7+ "LGPL-2.1-only" = lgpl21;
8+ "LGPL-3.0-only" = lgpl3;
9+ "GPL-2.0-only" = gpl2;
10+ "GPL-2.0-or-later" = gpl2Plus;
11+ "GPL-3.0-only" = gpl3;
12+ "AGPL-3.0-only" = agpl3;
13+ "AGPL-3.0-or-later" = agpl3Plus;
14+ "Apache-2.0" = asl20;
15+ "GPL-2.0-or-later AND BSD-3-Clause" = [gpl2Plus bsd3];
416 # Generic
5− LicenseRef-PublicDomain = {
6− spdxId = "LicenseRef-PublicDomain";
7− shortName = "Public Domain";
8− fullName = "This work is dedicated to the Public Domain";
9− url = "https://wikipedia.org/wiki/Public_domain";
10− free = true;
11− };
12− LicenseRef-OtherLicense = {
13− spdxId = "LicenseRef-OtherLicense";
14− shortName = "Other License";
15− fullName = "Unidentified Other License";
16− url = "https://spdx.github.io/spdx-spec/appendix-IV-SPDX-license-expressions/";
17− # Not setting `free` here. The license may or may not be `free`.
18− # See https://github.com/input-output-hk/haskell.nix/pull/1006
19− };
17+ LicenseRef-Apache = "Apache";
18+ LicenseRef-GPL = "GPL";
19+ LicenseRef-LGPL = "LGPL";
20+ LicenseRef-NCSA = ncsa;
21+ LicenseRef-PublicDomain = publicDomain;
22+ LicenseRef-OtherLicense = null;
2023 NONE = null;
2124}
lib/cabal-os-arch-comp.nix+1−1
@@ -43,7 +43,7 @@
4343 isPPC64 = false;
4444 isSparc = false;
4545 isArm = false;
46− isAarch64= false;
46+ isAArch64= false;
4747 isMips = false;
4848 isSH = false;
4949 isIA64 = false;
lib/cabal-project-parser.nix+31−125
@@ -69,26 +69,37 @@ let
6969 else __trace "Expected attribute but found `${s}`" { inherit name attrs; }
7070 ) { name = null; attrs = {}; } (stripComments (unindent blockLines))).attrs;
7171
72− # Gets data for all the repositories to fetch
73− # A comment like
72+ hashPath = path:
73+ builtins.readFile (pkgs.runCommand "hash-path" { preferLocalBuild = true; }
74+ "echo -n $(${pkgs.nix}/bin/nix-hash --type sha256 --base32 ${path}) > $out");
75+
76+ # Use pkgs.fetchgit if we have a sha256. Add comment like this
7477 # --shar256: 003lm3pm0000hbfmii7xcdd9v20000flxf7gdl2pyxia7p014i8z
75− # will be trated like a field and returned here
76− # (used in call-cabal-project-to-nix.nix to create a fixed-output derivation)
77− extractSourceRepoPackageData = cabalProjectFileName: sha256map: repo: {
78− url = repo.location;
79− ref = repo.tag;
80− sha256 = repo."--sha256" or (
81− if sha256map != null
82− then sha256map."${repo.location}"."${repo.tag}"
83− else null);
84− subdirs = if repo ? subdir
85− then pkgs.lib.filter (x: x != "") (pkgs.lib.splitString " " repo.subdir)
86− else ["."];
87− };
78+ # otherwise use __fetchGit.
79+ fetchRepo = cabalProjectFileName: lookupSha256: repo:
80+ builtins.map (subdir:
81+ let sha256 = repo."--sha256" or (lookupSha256 repo);
82+ in (if sha256 != null
83+ then pkgs.evalPackages.fetchgit {
84+ url = repo.location;
85+ rev = repo.tag;
86+ inherit sha256;
87+ }
88+ else
89+ let drv = builtins.fetchGit {
90+ url = repo.location;
91+ ref = repo.tag;
92+ };
93+ in __trace "WARNING: No sha256 found for source-repository-package ${repo.location} ${repo.tag} download may fail in restricted mode (hydra)"
94+ (__trace "Consider adding `--sha256: ${hashPath drv}` to the ${cabalProjectFileName} file or passing in a lookupSha256 argument"
95+ drv)
96+ ) + (if subdir == "." then "" else "/" + subdir))
97+ (if repo ? subdir
98+ then pkgs.lib.filter (x: x != "") (pkgs.lib.splitString " " repo.subdir)
99+ else ["."]);
88100
89− # Parse a source-repository-package and return data of `type: git` repositories
90− # See tests/unit.nix for examples of input and output.
91− parseSourceRepositoryPackageBlock = cabalProjectFileName: sha256map: block:
101+ # Parse a source-repository-package and fetch it if has `type: git`
102+ parseBlock = cabalProjectFileName: lookupSha256: block:
92103 let
93104 x = span (pkgs.lib.strings.hasPrefix " ") (pkgs.lib.splitString "\n" block);
94105 attrs = parseBlockLines x.fst;
@@ -99,115 +110,10 @@ let
99110 otherText = "\nsource-repository-package\n" + block;
100111 }
101112 else {
102− sourceRepo = extractSourceRepoPackageData cabalProjectFileName sha256map attrs;
113+ sourceRepo = fetchRepo cabalProjectFileName lookupSha256 attrs;
103114 otherText = pkgs.lib.strings.concatStringsSep "\n" x.snd;
104115 };
105116
106− parseSourceRepositoryPackages = cabalProjectFileName: sha256map: source-repo-override: projectFile:
107− let
108− blocks = pkgs.lib.splitString "\nsource-repository-package\n" ("\n" + projectFile);
109− initialText = pkgs.lib.lists.take 1 blocks;
110− repoBlocks = builtins.map (parseSourceRepositoryPackageBlock cabalProjectFileName sha256map) (pkgs.lib.lists.drop 1 blocks);
111− overrideSourceRepo = sourceRepo: (source-repo-override.${sourceRepo.url} or (pkgs.lib.id)) sourceRepo;
112− in {
113− sourceRepos = pkgs.lib.lists.map (block: overrideSourceRepo block.sourceRepo) repoBlocks;
114− otherText = pkgs.lib.strings.concatStringsSep "\n" (
115− initialText
116− ++ (builtins.map (x: x.otherText) repoBlocks));
117− };
118−
119− # Parse and replace repository
120− # This works in a similar way to the `source-repository-package` but we are
121− # able to simply replace the `repository` blocks with local `file:/nix/store` ones.
122− # This works because `cabal configure` does not include any of the `/nix/sore/`
123− # paths in the `plan.json` (so materialized plan-nix will still work as expeced).
124− # See tests/unit.nix for examples of input and output.
125− parseRepositoryBlock = evalPackages: cabalProjectFileName: sha256map: inputMap: cabal-install: nix-tools: block:
126− let
127− lines = pkgs.lib.splitString "\n" block;
128− # The first line will contain the repository name.
129− x = span (pkgs.lib.strings.hasPrefix " ") (__tail lines);
130− attrs = parseBlockLines x.fst;
131− sha256 = attrs."--sha256" or (
132− if sha256map != null
133− then sha256map."${attrs.url}"
134− else null);
135− in rec {
136− # This is `some-name` from the `repository some-name` line in the `cabal.project` file.
137− name = __head lines;
138− # The $HOME/.cabal/packages/${name} after running `cabal v2-update` to download the repository
139− repoContents = if inputMap ? ${attrs.url}
140− # If there is an input use it to make `file:` url and create a suitable `.cabal/packages/${name}` directory
141− then evalPackages.runCommand name ({
142− nativeBuildInputs = [ cabal-install ];
143− preferLocalBuild = true;
144− }) ''
145− HOME=$(mktemp -d)
146− mkdir -p $HOME/.cabal/packages/${name}
147− cat <<EOF > $HOME/.cabal/config
148− repository ${name}
149− url: file:${inputMap.${attrs.url}}
150− ${pkgs.lib.optionalString (attrs ? secure) "secure: ${attrs.secure}"}
151− ${pkgs.lib.optionalString (attrs ? root-keys) "root-keys: ${attrs.root-keys}"}
152− ${pkgs.lib.optionalString (attrs ? key-threshold) "key-threshold: ${attrs.key-threshold}"}
153− EOF
154−
155− cabal v2-update ${name}
156− cp -r $HOME/.cabal/packages/${name} $out
157− ''
158− else evalPackages.runCommand name ({
159− nativeBuildInputs = [ cabal-install evalPackages.curl nix-tools ];
160− LOCALE_ARCHIVE = pkgs.lib.optionalString (evalPackages.stdenv.buildPlatform.libc == "glibc") "${evalPackages.glibcLocales}/lib/locale/locale-archive";
161− LANG = "en_US.UTF-8";
162− preferLocalBuild = true;
163− } // pkgs.lib.optionalAttrs (sha256 != null) {
164− outputHashMode = "recursive";
165− outputHashAlgo = "sha256";
166− outputHash = sha256;
167− }) ''
168− HOME=$(mktemp -d)
169− mkdir -p $HOME/.cabal/packages/${name}
170− cat <<EOF > $HOME/.cabal/config
171− repository ${name}
172− url: ${attrs.url}
173− ${pkgs.lib.optionalString (attrs ? secure) "secure: ${attrs.secure}"}
174− ${pkgs.lib.optionalString (attrs ? root-keys) "root-keys: ${attrs.root-keys}"}
175− ${pkgs.lib.optionalString (attrs ? key-threshold) "key-threshold: ${attrs.key-threshold}"}
176− EOF
177−
178− export SSL_CERT_FILE=${evalPackages.cacert}/etc/ssl/certs/ca-bundle.crt
179− cabal v2-update ${name}
180− cp -r $HOME/.cabal/packages/${name} $out
181− '';
182− # Output of hackage-to-nix
183− hackage = import (
184− evalPackages.runCommand ("hackage-to-nix-" + name) {
185− nativeBuildInputs = [ cabal-install evalPackages.curl nix-tools ];
186− LOCALE_ARCHIVE = pkgs.lib.optionalString (evalPackages.stdenv.buildPlatform.libc == "glibc") "${evalPackages.glibcLocales}/lib/locale/locale-archive";
187− LANG = "en_US.UTF-8";
188− preferLocalBuild = true;
189− } ''
190− mkdir -p $out
191− hackage-to-nix $out ${repoContents}/01-index.tar ${attrs.url}
192− '');
193− # Directory to `lndir` when constructing a suitable $HOME/.cabal dir
194− repo = {
195− ${name} = repoContents;
196− };
197− };
198−
199− parseRepositories = evalPackages: cabalProjectFileName: sha256map: inputMap: cabal-install: nix-tools: projectFile:
200− let
201− # This will leave the name of repository in the first line of each block
202− blocks = pkgs.lib.splitString "\nrepository " ("\n" + projectFile);
203− repoBlocks = builtins.map (parseRepositoryBlock evalPackages cabalProjectFileName sha256map inputMap cabal-install nix-tools) (pkgs.lib.lists.drop 1 blocks);
204− in {
205− extra-hackages = pkgs.lib.lists.map (block: block.hackage) repoBlocks;
206− repos = pkgs.lib.lists.foldl' (x: block: x // block.repo) {} repoBlocks;
207− };
208−
209117in {
210− inherit parseIndexState parseSourceRepositoryPackages parseRepositories
211− # These are only exposed for tests
212− parseSourceRepositoryPackageBlock parseRepositoryBlock;
118+ inherit parseIndexState parseBlockLines parseBlock;
213119}
lib/call-cabal-project-to-nix.nix+85−277
@@ -1,4 +1,4 @@
1−{ pkgs, runCommand, cacert, index-state-hashes, haskellLib }@defaults:
1+{ dotCabal, pkgs, runCommand, evalPackages, symlinkJoin, cacert, index-state-hashes, haskellLib, materialize }@defaults:
22let readIfExists = src: fileName:
33 let origSrcDir = src.origSrcSubDir or src;
44 in
@@ -21,6 +21,8 @@ in
2121, caller ? "callCabalProjectToNix" # Name of the calling function for better warning messages
2222, ghc ? null # Deprecated in favour of `compiler-nix-name`
2323, ghcOverride ? null # Used when we need to set ghc explicitly during bootstrapping
24+, nix-tools ? evalPackages.haskell-nix.nix-tools-unchecked.${compiler-nix-name} # When building cabal projects we use the nix-tools
25+, cabal-install ? evalPackages.haskell-nix.cabal-install-unchecked.${compiler-nix-name} # and cabal-install compiled with matching ghc version
2426, configureArgs ? "" # Extra arguments to pass to `cabal v2-configure`.
2527 # `--enable-tests --enable-benchmarks` are included by default.
2628 # If the tests and benchmarks are not needed and they
@@ -30,59 +32,18 @@ in
3032 # An alternative to adding `--sha256` comments into the
3133 # cabal.project file:
3234 # sha256map =
33− # { # For a `source-repository-package` use the `location` and `tag` as the key
34− # "https://github.com/jgm/pandoc-citeproc"."0.17"
35− # = "0dxx8cp2xndpw3jwiawch2dkrkp15mil7pyx7dvd810pwc22pm2q";
36− # # For a `repository` use the `url` as the key
37− # "https://raw.githubusercontent.com/input-output-hk/hackage-overlay-ghcjs/bfc363b9f879c360e0a0460ec0c18ec87222ec32"
38− # = "sha256-g9xGgJqYmiczjxjQ5JOiK5KUUps+9+nlNGI/0SpSOpg=";
39− # };
40−, inputMap ? {}
41− # An alternative to providing a `sha256` handy for flakes
42− # cabal.project file:
43− # inputs.pandoc-citeproc.url = "github:jgm/pandoc-citeproc/0.17";
44− # inputs.pandoc-citeproc.flake = false;
45− # outputs = inputs:
46− # ...
47− # inputMap."https://github.com/jgm/pandoc-citeproc" = inputs.inputs.pandoc-citeproc;
48−, extra-hackage-tarballs ? {}
49−, source-repo-override ? {} # Cabal seems to behave incoherently when
50− # two source-repository-package entries
51− # provide the same packages, making it
52− # impossible to override cabal.project
53− # with e.g. a cabal.project.local. In CI,
54− # we want to be able to test against the
55− # latest versions of various dependencies.
56− #
57− # This argument is a map from url to
58− # a function taking the existing repoData
59− # and returning the new repoData in its
60− # place. E.g.
61− #
62− # { "https://github.com/input-output-hk/plutus-apps" = orig: orig // { subdirs = (orig.subdirs or [ "." ]) ++ [ "foo" ]; }; }
63− #
64− # would result in the "foo" subdirectory of
65− # any plutus-apps input being used for a
66− # package.
67−, evalPackages
35+ # { "https://github.com/jgm/pandoc-citeproc"."0.17"
36+ # = "0dxx8cp2xndpw3jwiawch2dkrkp15mil7pyx7dvd810pwc22pm2q"; };
37+, lookupSha256 ?
38+ if sha256map != null
39+ then { location, tag, ...}: sha256map."${location}"."${tag}"
40+ else _: null
41+, extra-hackage-tarballs ? []
6842, ...
6943}@args:
7044
7145let
72− inherit (evalPackages.haskell-nix) materialize dotCabal;
73−
74− # These defaults are hear rather than in modules/cabal-project.nix to make them
75− # lazy enough to avoid infinite recursion issues.
76− # Using null as the default also improves performance as they are not forced by the
77− # nix module system for `nix-tools-unchecked` and `cabal-install-unchecked`.
78− nix-tools = if args.nix-tools or null != null
79− then args.nix-tools
80− else evalPackages.haskell-nix.nix-tools-unchecked.${compiler-nix-name};
81− cabal-install = if args.cabal-install or null != null
82− then args.cabal-install
83− else evalPackages.haskell-nix.cabal-install-unchecked.${compiler-nix-name};
8446 forName = pkgs.lib.optionalString (name != null) (" for " + name);
85− nameAndSuffix = suffix: if name == null then suffix else name + "-" + suffix;
8647
8748 ghc' =
8849 if ghcOverride != null
@@ -114,13 +75,15 @@ let
11475 ghc = ghc';
11576 subDir' = src.origSubDir or "";
11677 subDir = pkgs.lib.strings.removePrefix "/" subDir';
117−
118− cleanedSource = haskellLib.cleanSourceWith {
119− name = if name != null then "${name}-root-cabal-files" else "source-root-cabal-files";
120− src = src.origSrc or src;
121− filter = path: type: (!(src ? filter) || src.filter path type) && (
122− type == "directory" ||
123− pkgs.lib.any (i: (pkgs.lib.hasSuffix i path)) [ ".cabal" "package.yaml" ]); };
78+ maybeCleanedSource =
79+ if haskellLib.canCleanSource src
80+ then (haskellLib.cleanSourceWith {
81+ name = if name != null then "${name}-root-cabal-files" else "source-root-cabal-files";
82+ src = src.origSrc or src;
83+ filter = path: type: (!(src ? filter) || src.filter path type) && (
84+ type == "directory" ||
85+ pkgs.lib.any (i: (pkgs.lib.hasSuffix i path)) [ ".cabal" "package.yaml" ]); })
86+ else src.origSrc or src;
12487
12588 # Using origSrcSubDir bypasses any cleanSourceWith so that it will work when
12689 # access to the store is restricted. If origSrc was already in the store
@@ -138,21 +101,17 @@ let
138101 )
139102 else null;
140103
141− cabalProjectIndexState =
142− if rawCabalProject != null
143− then pkgs.haskell-nix.haskellLib.parseIndexState rawCabalProject
144− else null;
145−
146− index-state-found =
147− if index-state != null
104+ index-state-found = if index-state != null
148105 then index-state
149− else if cabalProjectIndexState != null
150− then cabalProjectIndexState
151106 else
152− let latest-index-state = pkgs.lib.last (builtins.attrNames index-state-hashes);
153− in builtins.trace ("No index state specified" + (if name == null then "" else " for " + name) + ", using the latest index state that we know about (${latest-index-state})!") latest-index-state;
154−
155− index-state-pinned = index-state != null || cabalProjectIndexState != null;
107+ let cabalProjectIndexState = if rawCabalProject != null
108+ then pkgs.haskell-nix.haskellLib.parseIndexState rawCabalProject
109+ else null;
110+ in
111+ if cabalProjectIndexState != null
112+ then cabalProjectIndexState
113+ else builtins.trace ("Using latest index state" + (if name == null then "" else " for " + name) + "!")
114+ (pkgs.lib.last (builtins.attrNames index-state-hashes));
156115
157116in
158117 assert (if index-state-found == null
@@ -195,109 +154,45 @@ let
195154 # restricted-eval mode (as long as a sha256 is included).
196155 # Replace source-repository-package blocks that have a sha256 with
197156 # packages: block containing nix store paths of the fetched repos.
198−
199− hashPath = path:
200− builtins.readFile (pkgs.runCommand "hash-path" { preferLocalBuild = true; }
201− "echo -n $(${pkgs.nix}/bin/nix-hash --type sha256 --base32 ${path}) > $out");
202−
203− replaceSourceRepos = projectFile:
157+ replaceSoureRepos = projectFile:
204158 let
205− fetchPackageRepo = fetchgit: repoData:
206− let
207− fetched =
208− if inputMap ? "${repoData.url}/${repoData.ref}"
209− then inputMap."${repoData.url}/${repoData.ref}"
210− else if inputMap ? ${repoData.url}
211− then
212− (if inputMap.${repoData.url}.rev != repoData.ref
213− then throw "${inputMap.${repoData.url}.rev} may not match ${repoData.ref} for ${repoData.url} use \"${repoData.url}/${repoData.ref}\" as the inputMap key if ${repoData.ref} is a branch or tag that points to ${inputMap.${repoData.url}.rev}."
214− else inputMap.${repoData.url})
215− else if repoData.sha256 != null
216− then fetchgit { inherit (repoData) url sha256; rev = repoData.ref; }
217− else
218− let drv = builtins.fetchGit { inherit (repoData) url ref; };
219− in __trace "WARNING: No sha256 found for source-repository-package ${repoData.url} ${repoData.ref} download may fail in restricted mode (hydra)"
220− (__trace "Consider adding `--sha256: ${hashPath drv}` to the ${cabalProjectFileName} file or passing in a sha256map argument"
221− drv);
222− in {
223− # Download the source-repository-package commit and add it to a minimal git
224− # repository that `cabal` will be able to access from a non fixed output derivation.
225− location = evalPackages.runCommand "source-repository-package" {
226− nativeBuildInputs = [ evalPackages.rsync evalPackages.gitMinimal ];
227− } ''
228− mkdir $out
229− rsync -a --prune-empty-dirs "${fetched}/" "$out/"
230− cd $out
231− chmod -R +w .
232− git init -b minimal
233− git add --force .
234− GIT_COMMITTER_NAME='No One' GIT_COMMITTER_EMAIL= git commit -m "Minimal Repo For Haskell.Nix" --author 'No One <>'
235− '';
236− inherit (repoData) subdirs;
237− inherit fetched;
238− tag = "minimal";
239− };
240−
241− # Parse the `source-repository-package` blocks
242− sourceRepoPackageResult = pkgs.haskell-nix.haskellLib.parseSourceRepositoryPackages
243− cabalProjectFileName sha256map source-repo-override projectFile;
244−
245− # Parse the `repository` blocks
246− repoResult = pkgs.haskell-nix.haskellLib.parseRepositories
247− evalPackages cabalProjectFileName sha256map inputMap cabal-install nix-tools sourceRepoPackageResult.otherText;
248−
249− # we need the repository content twice:
250− # * at eval time (below to build the fixed project file)
251− # Here we want to use evalPackages.fetchgit, so one can calculate
252− # the build plan for any target without a remote builder
253− # * at built time (passed out)
254− # Here we want to use plain pkgs.fetchgit, which is what a builder
255− # on the target system would use, so that the derivation is unaffected
256− # and, say, a linux release build job can identify the derivation
257− # as built by a darwin builder, and fetch it from a cache
258− sourceReposEval = builtins.map (fetchPackageRepo evalPackages.fetchgit) sourceRepoPackageResult.sourceRepos;
259− sourceReposBuild = builtins.map (x: (fetchPackageRepo pkgs.fetchgit x).fetched) sourceRepoPackageResult.sourceRepos;
159+ blocks = pkgs.lib.splitString "\nsource-repository-package\n" ("\n" + projectFile);
160+ initialText = pkgs.lib.lists.take 1 blocks;
161+ repoBlocks = builtins.map (pkgs.haskell-nix.haskellLib.parseBlock cabalProjectFileName lookupSha256) (pkgs.lib.lists.drop 1 blocks);
162+ sourceRepos = pkgs.lib.lists.concatMap (x: x.sourceRepo) repoBlocks;
163+ otherText = pkgs.evalPackages.writeText "cabal.project" (pkgs.lib.strings.concatStringsSep "\n" (
164+ initialText
165+ ++ (builtins.map (x: x.otherText) repoBlocks)));
260166 in {
261− sourceRepos = sourceReposBuild;
262− inherit (repoResult) repos extra-hackages;
167+ inherit sourceRepos;
263168 makeFixedProjectFile = ''
264− cp -f ${evalPackages.writeText "cabal.project" sourceRepoPackageResult.otherText} ./cabal.project
265− '' +
266− pkgs.lib.optionalString (builtins.length sourceReposEval != 0) (''
169+ cp -f ${otherText} ./cabal.project
267170 chmod +w -R ./cabal.project
268− # The newline here is important in case cabal.project does not have one at the end
269− echo >> ./cabal.project
171+ echo "packages:" >> ./cabal.project
172+ mkdir -p ./.source-repository-packages
270173 '' +
271− # Add replacement `source-repository-package` blocks pointing to the minimal git repos
272− ( pkgs.lib.strings.concatMapStrings (f: ''
273− echo "source-repository-package" >> ./cabal.project
274− echo " type: git" >> ./cabal.project
275− echo " location: file://${f.location}" >> ./cabal.project
276− echo " subdir: ${builtins.concatStringsSep " " f.subdirs}" >> ./cabal.project
277− echo " tag: ${f.tag}" >> ./cabal.project
278− '') sourceReposEval
279− ));
280− # This will be used to replace refernces to the minimal git repos with just the index
281− # of the repo. The index will be used in lib/import-and-filter-project.nix to
282− # lookup the correct repository in `sourceReposBuild`. This avoids having
283− # `/nix/store` paths in the `plan-nix` output so that it can be materialized safely.
284− replaceLocations = pkgs.lib.strings.concatStrings (
174+ ( pkgs.lib.strings.concatStrings (
285175 pkgs.lib.lists.zipListsWith (n: f: ''
286− (cd $out${subDir'}
287− substituteInPlace $tmp${subDir'}/dist-newstyle/cache/plan.json --replace file://${f.location} ${builtins.toString n}
288− for a in $(grep -rl file://${f.location} .plan.nix/*.nix); do
289− substituteInPlace $a --replace file://${f.location} ${builtins.toString n}
290− done)
176+ mkdir -p ./.source-repository-packages/${builtins.toString n}
177+ rsync -a --prune-empty-dirs \
178+ --include '*/' --include '*.cabal' --include 'package.yaml' \
179+ --exclude '*' \
180+ "${f}/" "./.source-repository-packages/${builtins.toString n}/"
181+ echo " ./.source-repository-packages/${builtins.toString n}" >> ./cabal.project
291182 '')
292− (pkgs.lib.lists.range 0 ((builtins.length sourceReposEval) - 1))
293− sourceReposEval
294− );
183+ (pkgs.lib.lists.range 0 ((builtins.length fixedProject.sourceRepos) - 1))
184+ sourceRepos
185+ )
186+ );
295187 };
296188
297189 fixedProject =
298190 if rawCabalProject == null
299− then { sourceRepos = []; repos = {}; extra-hackages = []; makeFixedProjectFile = ""; replaceLocations = ""; }
300− else replaceSourceRepos rawCabalProject;
191+ then {
192+ sourceRepos = [];
193+ makeFixedProjectFile = "";
194+ }
195+ else replaceSoureRepos rawCabalProject;
301196
302197 # The use of the actual GHC can cause significant problems:
303198 # * For hydra to assemble a list of jobs from `components.tests` it must
@@ -342,11 +237,6 @@ let
342237 ${ghc.targetPrefix}ghc --info | grep -v /nix/store > $out/ghc/info
343238 ${ghc.targetPrefix}ghc --supported-languages > $out/ghc/supported-languages
344239 ${ghc.targetPrefix}ghc-pkg --version > $out/ghc-pkg/version
345− ${pkgs.lib.optionalString (ghc.targetPrefix == "js-unknown-ghcjs-") ''
346− ${ghc.targetPrefix}ghc --numeric-ghc-version > $out/ghc/numeric-ghc-version
347− ${ghc.targetPrefix}ghc --numeric-ghcjs-version > $out/ghc/numeric-ghcjs-version
348− ${ghc.targetPrefix}ghc-pkg --numeric-ghcjs-version > $out/ghc-pkg/numeric-ghcjs-version
349− ''}
350240 # The order of the `ghc-pkg dump` output seems to be non
351241 # deterministic so we need to sort it so that it is always
352242 # the same.
@@ -368,12 +258,12 @@ let
368258 '');
369259
370260 # Dummy `ghc` that uses the captured output
371− dummy-ghc = evalPackages.writeTextFile {
261+ dummy-ghc = pkgs.evalPackages.writeTextFile {
372262 name = "dummy-" + ghc.name;
373263 executable = true;
374264 destination = "/bin/${ghc.targetPrefix}ghc";
375265 text = ''
376− #!${evalPackages.runtimeShell}
266+ #!${pkgs.evalPackages.runtimeShell}
377267 case "$*" in
378268 --version*)
379269 cat ${dummy-ghc-data}/ghc/version
@@ -381,14 +271,6 @@ let
381271 --numeric-version*)
382272 cat ${dummy-ghc-data}/ghc/numeric-version
383273 ;;
384− ${pkgs.lib.optionalString (ghc.targetPrefix == "js-unknown-ghcjs-") ''
385− --numeric-ghc-version*)
386− cat ${dummy-ghc-data}/ghc/numeric-ghc-version
387− ;;
388− --numeric-ghcjs-version*)
389− cat ${dummy-ghc-data}/ghc/numeric-ghcjs-version
390− ;;
391− ''}
392274 --supported-languages*)
393275 cat ${dummy-ghc-data}/ghc/supported-languages
394276 ;;
@@ -411,21 +293,16 @@ let
411293 };
412294
413295 # Dummy `ghc-pkg` that uses the captured output
414− dummy-ghc-pkg = evalPackages.writeTextFile {
296+ dummy-ghc-pkg = pkgs.evalPackages.writeTextFile {
415297 name = "dummy-pkg-" + ghc.name;
416298 executable = true;
417299 destination = "/bin/${ghc.targetPrefix}ghc-pkg";
418300 text = ''
419− #!${evalPackages.runtimeShell}
301+ #!${pkgs.evalPackages.runtimeShell}
420302 case "$*" in
421303 --version)
422304 cat ${dummy-ghc-data}/ghc-pkg/version
423305 ;;
424− ${pkgs.lib.optionalString (ghc.targetPrefix == "js-unknown-ghcjs-") ''
425− --numeric-ghcjs-version)
426− cat ${dummy-ghc-data}/ghc-pkg/numeric-ghcjs-version
427− ;;
428− ''}
429306 'dump --global -v0')
430307 cat ${dummy-ghc-data}/ghc-pkg/dump-global
431308 ;;
@@ -444,63 +321,31 @@ let
444321 inherit materialized;
445322 sha256 = plan-sha256;
446323 sha256Arg = "plan-sha256";
447− this = "project.plan-nix" + (if name != null then " for ${name}" else "");
448324 # Before pinning stuff down we need an index state to use
449325 reasonNotSafe =
450− if !index-state-pinned
451− then "index-state is not pinned by an argument or the cabal project file"
326+ if index-state == null
327+ then "index-state is not set"
452328 else null;
453329 } // pkgs.lib.optionalAttrs (checkMaterialization != null) {
454330 inherit checkMaterialization;
455− }) (evalPackages.runCommand (nameAndSuffix "plan-to-nix-pkgs") {
456− nativeBuildInputs = [ nix-tools dummy-ghc dummy-ghc-pkg cabal-install evalPackages.rsync evalPackages.gitMinimal ];
331+ }) (pkgs.evalPackages.runCommand (if name == null then "plan-to-nix-pkgs" else name + "-plan-to-nix-pkgs") {
332+ nativeBuildInputs = [ nix-tools dummy-ghc dummy-ghc-pkg cabal-install pkgs.evalPackages.rsync ];
457333 # Needed or stack-to-nix will die on unicode inputs
458− LOCALE_ARCHIVE = pkgs.lib.optionalString (evalPackages.stdenv.buildPlatform.libc == "glibc") "${evalPackages.glibcLocales}/lib/locale/locale-archive";
334+ LOCALE_ARCHIVE = pkgs.lib.optionalString (pkgs.evalPackages.stdenv.buildPlatform.libc == "glibc") "${pkgs.evalPackages.glibcLocales}/lib/locale/locale-archive";
459335 LANG = "en_US.UTF-8";
460336 meta.platforms = pkgs.lib.platforms.all;
461337 preferLocalBuild = false;
462− outputs = [
463− "out" # The results of plan-to-nix
464− # These two output will be present if in cabal configure failed.
465− # They are used to provide passthru.json and passthru.freeze that
466− # check first for cabal configure failure.
467− "maybeJson" # The `plan.json` file generated by cabal and used for `plan-to-nix` input
468− "maybeFreeze" # The `cabal.project.freeze` file created by `cabal v2-freeze`
469− ];
470− passthru =
471− let
472− checkCabalConfigure = ''
473− if [[ -f ${plan-nix}/cabal-configure.out ]]; then
474− cat ${plan-nix}/cabal-configure.out
475− exit 1
476− fi
477− '';
478− in {
479− # These check for cabal configure failure
480− json = evalPackages.runCommand (nameAndSuffix "plan-json") {} ''
481− ${checkCabalConfigure}
482− cp ${plan-nix.maybeJson} $out
483− '';
484− freeze = evalPackages.runCommand (nameAndSuffix "plan-freeze") {} ''
485− ${checkCabalConfigure}
486− cp ${plan-nix.maybeFreeze} $out
487− '';
488− };
489338 } ''
490339 tmp=$(mktemp -d)
491340 cd $tmp
492− # if cleanedSource is empty, this means it's a new
341+ # if maybeCleanedSource is empty, this means it's a new
493342 # project where the files haven't been added to the git
494343 # repo yet. We fail early and provide a useful error
495344 # message to prevent headaches (#290).
496− if [ -z "$(ls -A ${cleanedSource})" ]; then
497− echo "cleaned source is empty. Did you forget to 'git add -A'?"
498− ${pkgs.lib.optionalString (__length fixedProject.sourceRepos == 0) ''
499− exit 1
500− ''}
501− else
502− cp -r ${cleanedSource}/* .
345+ if [ -z "$(ls -A ${maybeCleanedSource})" ]; then
346+ echo "cleaned source is empty. Did you forget to 'git add -A'?"; exit 1;
503347 fi
348+ cp -r ${maybeCleanedSource}/* .
504349 chmod +w -R .
505350 # Decide what to do for each `package.yaml` file.
506351 for hpackFile in $(find . -name package.yaml); do (
@@ -523,52 +368,36 @@ let
523368 ${pkgs.lib.optionalString (subDir != "") "cd ${subDir}"}
524369 ${fixedProject.makeFixedProjectFile}
525370 ${pkgs.lib.optionalString (cabalProjectFreeze != null) ''
526− cp ${evalPackages.writeText "cabal.project.freeze" cabalProjectFreeze} \
371+ cp ${pkgs.evalPackages.writeText "cabal.project.freeze" cabalProjectFreeze} \
527372 cabal.project.freeze
528− chmod +w cabal.project.freeze
529373 ''}
530374 export SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
531375 export GIT_SSL_CAINFO=${cacert}/etc/ssl/certs/ca-bundle.crt
532−
533− # Using `cabal v2-freeze` will configure the project (since
534− # it is not configured yet), taking the existing `cabal.project.freeze`
535− # file into account. Then it "writes out a freeze file which
536− # records all of the versions and flags that are picked" (from cabal docs).
537− echo "Using index-state ${index-state-found}"
538− if(HOME=${
376+ HOME=${
539377 # This creates `.cabal` directory that is as it would have
540378 # been at the time `cached-index-state`. We may include
541379 # some packages that will be excluded by `index-state-found`
542380 # which is used by cabal (cached-index-state >= index-state-found).
543381 dotCabal {
544382 inherit cabal-install nix-tools extra-hackage-tarballs;
545− extra-hackage-repos = fixedProject.repos;
546383 index-state = cached-index-state;
547384 sha256 = index-sha256-found;
548385 }
549− } cabal v2-freeze ${
550− # Setting the desired `index-state` here in case it is not
551− # in the cabal.project file. This will further restrict the
552− # packages used by the solver (cached-index-state >= index-state-found).
553− pkgs.lib.optionalString (index-state != null) "--index-state=${index-state}"
554− } \
555− -w ${
556− # We are using `-w` rather than `--with-ghc` here to override
557− # the `with-compiler:` in the `cabal.project` file.
558− ghc.targetPrefix}ghc \
386+ } cabal v2-configure \
387+ --index-state=${
388+ # Setting the desired `index-state` here in case it was not
389+ # from the cabal.project file. This will further restrict the
390+ # packages used by the solver (cached-index-state >= index-state-found).
391+ builtins.trace ("Using index-state: ${index-state-found}" + (if name == null then "" else " for " + name))
392+ index-state-found} \
393+ --with-ghc=${ghc.targetPrefix}ghc \
559394 --with-ghc-pkg=${ghc.targetPrefix}ghc-pkg \
560395 --enable-tests \
561396 --enable-benchmarks \
562− ${pkgs.lib.optionalString (ghc.targetPrefix == "js-unknown-ghcjs-")
563− "--ghcjs --with-ghcjs=js-unknown-ghcjs-ghc --with-ghcjs-pkg=js-unknown-ghcjs-ghc-pkg"} \
564− ${configureArgs} 2>&1 | tee -a cabal-configure.out); then
397+ ${configureArgs}
565398
566399 mkdir -p $out
567400
568− cp cabal.project.freeze $maybeFreeze
569− # Not needed any more (we don't want it to wind up in the $out hash)
570− rm cabal.project.freeze
571−
572401 # ensure we have all our .cabal files (also those generated from package.yaml) files.
573402 # otherwise we'd need to be careful about putting the `cabal-generator = hpack` into
574403 # the nix expression. As we already called `hpack` on all `package.yaml` files we can
@@ -589,44 +418,23 @@ let
589418 # proper relative paths.
590419 (cd $out${subDir'} && plan-to-nix --full --plan-json $tmp${subDir'}/dist-newstyle/cache/plan.json -o .)
591420
592− # Replace the /nix/store paths to minimal git repos with indexes (that will work with materialization).
593− ${fixedProject.replaceLocations}
594−
595− # Make the plan.json file available in case we need to debug plan-to-nix
596− cp $tmp${subDir'}/dist-newstyle/cache/plan.json $maybeJson
597−
598421 # Remove the non nix files ".project" ".cabal" "package.yaml" files
599422 # as they should not be in the output hash (they may change slightly
600423 # without affecting the nix).
424+ if [ -d $out${subDir'}/.source-repository-packages ]; then
425+ chmod +w -R $out${subDir'}/.source-repository-packages
426+ rm -rf $out${subDir'}/.source-repository-packages
427+ fi
601428 find $out \( -type f -or -type l \) ! -name '*.nix' -delete
602429 # Remove empty dirs
603430 find $out -type d -empty -delete
604431
605432 # move pkgs.nix to default.nix ensure we can just nix `import` the result.
606433 mv $out${subDir'}/pkgs.nix $out${subDir'}/default.nix
607− else
608− # Check that this was a solver failure that (not some other
609− # possibly non deterministic failure).
610− # TODO replace grep once https://github.com/haskell/cabal/issues/5191
611− # is fixed.
612− grep "cabal: Could not resolve dependencies" cabal-configure.out
613−
614− # When cabal configure fails copy the output that we captured above and
615− # use `failed-cabal-configure.nix` to make a suitable derviation with.
616− mkdir -p $out${subDir'}
617− cp cabal-configure.out $out${subDir'}
618− cp ${./failed-cabal-configure.nix} $out${subDir'}/default.nix
619−
620− # These should only be used indirectly by `passthru.json` and `passthru.freeze`.
621− # Those derivations will check for `cabal-configure.out` out first to see if
622− # it is ok to use these files.
623− echo "Cabal configure failed see $out${subDir'}/cabal-configure.out for details" > $maybeJson
624− echo "Cabal configure failed see $out${subDir'}/cabal-configure.out for details" > $maybeFreeze
625− fi
626434 '');
627435in {
628436 projectNix = plan-nix;
629437 index-state = index-state-found;
630438 inherit src;
631− inherit (fixedProject) sourceRepos extra-hackages;
439+ inherit (fixedProject) sourceRepos;
632440}
lib/call-stack-to-nix.nix+18−33
@@ -5,6 +5,7 @@
55 *
66 * see also `call-cabal-project-to-nix`!
77 */
8+{ runCommand, pkgs, mkCacheFile, materialize, haskellLib }:
89{ name ? src.name or null # optional name for better error messages
910, src
1011, stackYaml ? "stack.yaml"
@@ -14,28 +15,17 @@
1415, resolverSha256 ? null
1516, materialized ? null # Location of a materialized copy of the nix files
1617, checkMaterialization ? null # If true the nix files will be generated used to check plan-sha256 and material
17−, nix-tools
18−, evalPackages
19−, ... }@args:
18+, nix-tools ? pkgs.haskell-nix.internal-nix-tools # When building stack projects we use the internal nix-tools (compiled with a fixed GHC version)
19+, ... }:
2020let
21− inherit (evalPackages) runCommand;
22− inherit (evalPackages.haskell-nix) mkCacheFile materialize haskellLib;
2321 inherit (haskellLib.fetchResolver {
2422 inherit src stackYaml resolverSha256;
2523 }) resolver fetchedResolver;
2624
2725 subDir' = src.origSubDir or "";
28− subDir = evalPackages.lib.strings.removePrefix "/" subDir';
29− cleanedSource = (haskellLib.cleanSourceWith {
30− name = if name != null then "${name}-root-cabal-files" else "source-root-cabal-files";
31− src = src.origSrc or src;
32− filter = path: type: (!(src ? filter) || src.filter path type) && (
33− type == "directory" ||
34− evalPackages.lib.any (i: (evalPackages.lib.hasSuffix i path)) [ stackYaml ".cabal" "package.yaml" ]); });
35−
3626 stackToNixArgs = builtins.concatStringsSep " " [
3727 "--full"
38− "--stack-yaml=$SRC${subDir'}/${stackYaml}"
28+ "--stack-yaml=$SRC/${stackYaml}"
3929 (if ignorePackageYaml then "--ignore-package-yaml" else "")
4030 "-o ."
4131 ];
@@ -44,40 +34,35 @@ let
4434 sha256 = stack-sha256;
4535 sha256Arg = "stack-sha256";
4636 reasonNotSafe = null;
47− this = "project.stack-nix" + (if name != null then " for ${name}" else "");
48− } // evalPackages.lib.optionalAttrs (checkMaterialization != null) {
37+ } // pkgs.lib.optionalAttrs (checkMaterialization != null) {
4938 inherit checkMaterialization;
5039 }) (runCommand (if name == null then "stack-to-nix-pkgs" else name + "-stack-to-nix-pkgs") {
51− nativeBuildInputs = [ nix-tools evalPackages.nix-prefetch-git evalPackages.cacert evalPackages.xorg.lndir ];
40+ nativeBuildInputs = [ nix-tools pkgs.nix-prefetch-git pkgs.cacert pkgs.xorg.lndir ];
5241 # Needed or stack-to-nix will die on unicode inputs
53− LOCALE_ARCHIVE = evalPackages.lib.optionalString (evalPackages.stdenv.hostPlatform.libc == "glibc") "${evalPackages.glibcLocales}/lib/locale/locale-archive";
42+ LOCALE_ARCHIVE = pkgs.lib.optionalString (pkgs.stdenv.hostPlatform.libc == "glibc") "${pkgs.glibcLocales}/lib/locale/locale-archive";
5443 LANG = "en_US.UTF-8";
5544 LC_ALL = "en_US.UTF-8";
5645 preferLocalBuild = false;
5746 } (''
5847 mkdir -p $out${subDir'}
59− SRC=$(mktemp -d)
60− cd $SRC
61− # if cleanedSource is empty, this means it's a new
62− # project where the files haven't been added to the git
63− # repo yet. We fail early and provide a useful error
64− # message to prevent headaches (#290).
65− if [ -z "$(ls -A ${cleanedSource})" ]; then
66− echo "cleaned source is empty. Did you forget to 'git add -A'?"; exit 1;
67− fi
68− lndir -silent "${cleanedSource}/." $SRC
69− ${evalPackages.lib.optionalString (subDir != "") "cd ${subDir}"}
7048 ${
71− # If a resolver was fetched use the it instead of the original stack.yaml
72− evalPackages.lib.optionalString (fetchedResolver != null)
49+ # If no resolver was fetched use the original stack.yaml
50+ if fetchedResolver == null
51+ then ''
52+ SRC=${src}
53+ ''
54+ else
7355 # Replace the resolver path in the stack.yaml with the fetched version
7456 ''
57+ SRC=$(mktemp -d)
58+ cd $SRC
59+ lndir -silent "${src}/." $SRC
7560 rm ${stackYaml}
7661 cp ${src}/${stackYaml} .
7762 chmod +w ${stackYaml}
7863 substituteInPlace ${stackYaml} --replace "${resolver}" "${fetchedResolver}"
7964 ''}
80− ${evalPackages.lib.optionalString (cache != null) ''
65+ ${pkgs.lib.optionalString (cache != null) ''
8166 cp ${mkCacheFile cache}/.stack-to-nix.cache* $out${subDir'}
8267 ''}
8368 (cd $out${subDir'} && stack-to-nix ${stackToNixArgs})
@@ -85,7 +70,7 @@ let
8570 # We need to strip out any references to $src, as those won't
8671 # be accessable in restricted mode.
8772 for nixf in $(find $out -name "*.nix" -type f); do
88− substituteInPlace $nixf --replace "$SRC${subDir'}" "."
73+ substituteInPlace $nixf --replace "$SRC" "."
8974 done
9075
9176 # move pkgs.nix to default.nix ensure we can just nix `import` the result.
lib/check.nix+11−25
@@ -1,4 +1,4 @@
1−{ stdenv, lib, haskellLib }:
1+{ stdenv, lib, haskellLib, srcOnly }:
22drv:
33
44let
@@ -7,45 +7,31 @@ let
77# This derivation can be used to execute test component.
88# The $out of the derivation is a file containing the resulting
99# stdout output.
10−in stdenv.mkDerivation ((
11− if drv ? source
12− then {
13− src = drv.source;
14− patchPhase =
15− # This `cd` is normally done in the `prePatch` of the drv
16− lib.optionalString (drv.srcSubDir != "") ''
17− cd ${lib.removePrefix "/" drv.srcSubDir}
18− '';
19− }
20− else
21− # This makes the derivation work a bit like `srcOnly`,
22− # using the original derivation, but replacing the `buildPhase`.
23− (drv.drvAttrs or drv) // {
24− outputs = [ "out" ];
25− separateDebugInfo = false;
26− }) // {
10+in stdenv.mkDerivation ({
2711 name = (drv.name + "-check");
2812
13+ # Useing `srcOnly` (rather than getting the `src` via a `drv.passthru`)
14+ # should correctly apply the patches from `drv` (if any).
15+ src = drv.source or (srcOnly drv);
16+
2917 passthru = {
30− inherit (drv) identifier config configFiles executableToolDepends cleanSrc env exeName;
18+ inherit (drv) identifier config configFiles executableToolDepends cleanSrc env;
3119 };
3220
3321 inherit (drv) meta LANG LC_ALL buildInputs nativeBuildInputs;
3422
3523 inherit (component) doCheck doCrossCheck;
3624
37− phases = ["unpackPhase" "patchPhase" "buildPhase"];
25+ phases = ["unpackPhase" "buildPhase"];
3826
3927 # If doCheck or doCrossCheck are false we may still build this
4028 # component and we want it to quietly succeed.
4129 buildPhase = ''
42− mkdir $out
43− runHook preCheck
30+ touch $out
4431
45− ${toString component.testWrapper} ${drv}/bin/${drv.exeName} ${lib.concatStringsSep " " component.testFlags} | tee $out/test-stdout
32+ runHook preCheck
4633
47− # Copy over tix files, if they exist
48− find . -iname '${drv.exeName}.tix' -exec mkdir -p $out/share/hpc/vanilla/tix/${drv.exeName} \; -exec cp {} $out/share/hpc/vanilla/tix/${drv.exeName}/ \;
34+ ${toString component.testWrapper} ${drv}/bin/${drv.exeName} ${lib.concatStringsSep " " component.testFlags} | tee $out
4935
5036 runHook postCheck
5137 '';
lib/clean-cabal-component.nix+56−105
@@ -1,55 +1,19 @@
11# Use cleanSourceWith to filter just the files needed for a particular
22# component of the package
3−{ lib, cleanSourceWith }: package: component: componentName: src:
3+{ lib, cleanSourceWith }: package: component: src:
44let
5− srcStr' = src.origSrc or null;
6− subDir = if src.origSubDir or "" == ""
7− then ""
8− else lib.removePrefix "/" src.origSubDir + "/";
9− # Remove a directory for each .. part of a path.
10− removeDotDots = parts: lib.reverseList (
11− builtins.foldl' (a: b:
12− if b == ".."
13− then builtins.tail a
14− else builtins.concatLists [ [b] a ]) [] parts);
5+ srcStr' = src.origSrcSubDir or src.origSrc or null;
156 # Transform
16− # "." -> ""
17− # "./." -> ""
18− # "./xyz" -> "xyz"
19− # "../abc" -> ERROR
20− # "abc/.." -> ""
21− # "abc/../xyz" -> "xyz"
22− # "abc/./xyz" -> "abc/xyz"
23− # "abc/./../xyz" -> "xyz"
24− # "abc/.././xyz" -> "xyz"
25− # "abc/" -> "abc/"
26− normalizeRelativePath = path:
27− let
28− # Split the path into component parts and remove the empty ones and single dots.
29− nonEmptyParts = lib.filter (x: x != "" && x != ".") (lib.splitString "/" path);
30− in lib.concatStringsSep "/" (removeDotDots nonEmptyParts)
31− # Keep the trailing slash if there was one.
32− + (if lib.hasSuffix "/" path then "/" else "");
33− isAbsolutePath = path: lib.hasPrefix "/" path;
34− isRelativePath = path: !(isAbsolutePath path);
35− normalizePath = path:
36− (if isAbsolutePath path
37− then "/"
38− else ""
39− ) + normalizeRelativePath path;
40− combinePaths = a: b:
41− if isAbsolutePath b
42− then b
43− else normalizePath (
44− if a == ""
45− then b
46− else if b == ""
47− then a
48− else a + "/" + b
49− );
50− # Like normalizePath but with a trailing / when needed
51− normalizeDir = dir:
52− let p = normalizePath dir;
7+ # "." -> ""
8+ # "./." -> ""
9+ # "./xyz" -> "xyz"
10+ normalizeRelativePath = rel:
11+ if rel == "." || rel == "./."
12+ then ""
13+ else lib.strings.removePrefix "./" rel;
14+ # Like normalizeRelativePath but with a trailing / when needed
15+ normalizeRelativeDir = dir:
16+ let p = normalizeRelativePath dir;
5317 in if p == "" || p == "/"
5418 then ""
5519 else if lib.hasSuffix "/" p
@@ -61,78 +25,65 @@ in
6125 else
6226 let
6327 srcStr = toString srcStr';
64− dataDir = combinePaths subDir package.dataDir;
65− hsSourceDirs = builtins.map (d: combinePaths subDir d) component.hsSourceDirs
66− ++ (if component.hsSourceDirs == [] then [subDir] else []);
67− includeDirs = builtins.map (d: combinePaths subDir d) component.includeDirs;
68− # paths that will be needed (used to check if a parent dir should be included)
69− dirsNeeded =
70− # These already include subDir
71− [dataDir]
28+ dataDir = normalizeRelativeDir package.dataDir;
29+ hsSourceDirs = builtins.map normalizeRelativeDir component.hsSourceDirs
30+ ++ (if component.hsSourceDirs == [] then [""] else []);
31+ includeDirs = builtins.map normalizeRelativeDir component.includeDirs;
32+ dirsNeeded = [dataDir]
7233 ++ hsSourceDirs
73− ++ includeDirs
74− ++ builtins.map (f: combinePaths dataDir f) package.dataFiles
75− ++ otherSourceFiles
76− ++ builtins.map (d: combinePaths subDir d) (
77− # These need the subDir added
78− package.licenseFiles
79− ++ package.extraSrcFiles
80− ++ component.extraSrcFiles
81− ++ package.extraDocFiles);
34+ ++ includeDirs;
8235 fileMatch = dir: list:
8336 let
84− prefixes = builtins.map (f: combinePaths dir f) (
37+ prefixes = builtins.map (f: dir + f) (
8538 lib.lists.remove null (lib.lists.flatten (
8639 builtins.map (f: builtins.match "([^*]*)[*].*" f) list)));
87− exactMatches = builtins.map (f: combinePaths dir f) (
40+ exactMatches = builtins.map (f: dataDir + f) (
8841 lib.lists.remove null (lib.lists.flatten (
8942 builtins.map (f: builtins.match "([^*]*)" f) list)));
9043 in rPath: lib.any (d: lib.strings.hasPrefix d rPath) prefixes
9144 || lib.any (d: d == rPath) exactMatches;
9245 dataFileMatch = fileMatch dataDir package.dataFiles;
93− licenseMatch = fileMatch subDir package.licenseFiles;
94− extraSrcMatch = fileMatch subDir (
46+ licenseMatch = fileMatch "" package.licenseFiles;
47+ extraSrcMatch = fileMatch "" (
9548 package.extraSrcFiles
9649 ++ component.extraSrcFiles);
97− extraDocMatch = fileMatch subDir package.extraDocFiles;
98− otherSourceFiles = builtins.map (f: combinePaths subDir f) (
50+ extraDocMatch = fileMatch "" package.extraDocFiles;
51+ otherSourceFiles =
9952 component.asmSources
10053 ++ component.cmmSources
10154 ++ component.cSources
10255 ++ component.cxxSources
103− ++ component.jsSources);
56+ ++ component.jsSources;
10457 in cleanSourceWith {
105− name = src.name or "source" + "-${componentName}";
106− subDir = lib.removePrefix "/" (src.origSubDir or "");
107− includeSiblings = true;
108− src = cleanSourceWith {
109− src = src.origSrc or src;
110− filter = path: type:
111− (!(src ? filter) || src.filter path type) && (
112− assert (if !lib.strings.hasPrefix (srcStr + "/") (path + "/")
113− then throw ("Unexpected path " + path + " (expected something in " + srcStr + "/)")
114− else true);
115− let
116− srcStrLen = lib.strings.stringLength srcStr;
117− rPath = lib.strings.substring (srcStrLen + 1) (lib.strings.stringLength path - srcStrLen - 1) path;
118− # This is a handy way to find out why different files are included
119− # traceReason = reason: v: if v then builtins.trace (rPath + " : " + reason) true else false;
120− traceReason = reason: v: v;
121− in
122− traceReason "directory is needed" (
123− lib.any (d: lib.strings.hasPrefix (rPath + "/") d) dirsNeeded)
124− || traceReason "cabal package definition" (lib.strings.hasPrefix subDir rPath
125− && lib.strings.hasSuffix ".cabal" rPath)
126− || traceReason "hpack package defintion" (lib.strings.hasPrefix subDir rPath
127− && rPath == "package.yaml")
128− || traceReason "data file" (lib.strings.hasPrefix dataDir rPath
129− && dataFileMatch rPath)
130− || traceReason "haskell source dir" (lib.any (d: lib.strings.hasPrefix d rPath) hsSourceDirs)
131− || traceReason "include dir" (lib.any (d: lib.strings.hasPrefix d rPath) includeDirs)
132− || traceReason "license file" (licenseMatch rPath)
133− || traceReason "extra source file" (extraSrcMatch rPath)
134− || traceReason "extra doc file" (extraDocMatch rPath)
135− || traceReason "other source file" (lib.any (f: f == rPath) otherSourceFiles)
136− );
137− };
58+ inherit src;
59+ filter = path: type:
60+ assert (if !lib.strings.hasPrefix (srcStr + "/") (path + "/")
61+ then throw ("Unexpected path " + path + " (expected something in " + srcStr + "/)")
62+ else true);
63+ let
64+ srcStrLen = lib.strings.stringLength srcStr;
65+ rPath = lib.strings.substring (srcStrLen + 1) (lib.strings.stringLength path - srcStrLen - 1) path;
66+ # This is a handy way to find out why different files are included
67+ # traceReason = reason: v: if v then builtins.trace (rPath + " : " + reason) true else false;
68+ traceReason = reason: v: v;
69+ in
70+ traceReason "directory is needed" (
71+ lib.any (d: lib.strings.hasPrefix (rPath + "/") d) (
72+ dirsNeeded
73+ ++ package.licenseFiles
74+ ++ package.extraSrcFiles
75+ ++ component.extraSrcFiles
76+ ++ package.extraDocFiles
77+ ++ builtins.map (f: dataDir + f) package.dataFiles
78+ ++ otherSourceFiles))
79+ || traceReason "cabal package definition" (lib.strings.hasSuffix ".cabal" rPath)
80+ || traceReason "hpack package defintion" (rPath == "package.yaml")
81+ || traceReason "data file" (lib.strings.hasPrefix dataDir rPath
82+ && dataFileMatch rPath)
83+ || traceReason "haskell source dir" (lib.any (d: lib.strings.hasPrefix d rPath) hsSourceDirs)
84+ || traceReason "include dir" (lib.any (d: lib.strings.hasPrefix d rPath) includeDirs)
85+ || traceReason "license file" (licenseMatch rPath)
86+ || traceReason "extra source file" (extraSrcMatch rPath)
87+ || traceReason "extra doc file" (extraDocMatch rPath)
88+ || traceReason "other source file" (lib.any (f: f == rPath) otherSourceFiles);
13889 }
lib/clean-git.nix+49−89
@@ -1,6 +1,6 @@
11# From https://github.com/NixOS/nix/issues/2944
22{ lib, runCommand, git, cleanSourceWith }:
3−{ name ? null, src, subDir ? "", includeSiblings ? false, keepGitDir ? false }:
3+{ name ? null, src, subDir ? "" }:
44
55# The function call
66#
@@ -24,6 +24,26 @@ with builtins;
2424# is shared among multiple invocations of gitSource:
2525
2626let
27+ filter_from_list = root: files:
28+ let
29+ all_paren_dirs = p:
30+ if p == "." || p == "/"
31+ then []
32+ else [ p ] ++ all_paren_dirs (dirOf p);
33+
34+ whitelist_set = listToAttrs (
35+ concatMap (p:
36+ # Using `origSrcSubDir` (if present) makes it possible to cleanGit src that
37+ # has already been cleaned with cleanSrcWith.
38+ let full_path = root.origSrcSubDir or (toString root) + "/${p}"; in
39+ map (p': { name = p'; value = true; }) (all_paren_dirs full_path)
40+ ) files
41+ );
42+ in
43+ p: t: hasAttr (toString p) whitelist_set;
44+
45+ has_prefix = prefix: s:
46+ prefix == builtins.substring 0 (builtins.stringLength prefix) s;
2747 remove_prefix = prefix: s:
2848 builtins.substring
2949 (builtins.stringLength prefix)
@@ -33,9 +53,10 @@ let
3353 lines = s: filter (x : x != [] && x != "") (split "\n" s);
3454
3555 origSrcSubDir = toString (src.origSrcSubDir or src);
56+ directoryExists = path: builtins.pathExists (builtins.toPath path + "/.");
3657in
3758
38−if builtins.pathExists (origSrcSubDir + "/.git")
59+if directoryExists (origSrcSubDir + "/.git")
3960then
4061 let
4162 hasIndex = builtins.pathExists (origSrcSubDir + "/.git/index");
@@ -64,14 +85,10 @@ then
6485 git_content = lines (readFile (origSrcSubDir + "/.git"));
6586 first_line = head git_content;
6687 prefix = "gitdir: ";
67− ok = length git_content == 1 && lib.hasPrefix prefix first_line;
68− raw_path = remove_prefix prefix first_line;
88+ ok = length git_content == 1 && has_prefix prefix first_line;
6989 in
7090 if ok
71− then
72− if lib.hasPrefix "/" raw_path
73− then /. + raw_path
74− else /. + builtins.toPath (origSrcSubDir + "/" + raw_path)
91+ then /. + remove_prefix prefix first_line
7592 else abort "gitSource.nix: Cannot parse ${origSrcSubDir + "/.git"}";
7693 }));
7794
@@ -91,37 +108,32 @@ then
91108 gitModulesStr = origSrcSubDir + "/.gitmodules";
92109 gitModules = builtins.path { name = "gitmodules"; path = gitModulesStr; };
93110
94− # Files from the git repository related knownSubmoduleDirs.
95− gitSubmoduleFiles = knownSubmoduleDirs:
96− let pathsNeeded = map (p: toString (src.origSrcSubDir or src) + "/${p}") (
97− lib.concatMap (x: all_paren_dirs (x + "/.git")) knownSubmoduleDirs);
98− in cleanSourceWith {
99− caller = "cleanGit";
100− name = (if name == null then "" else name + "-") + "gitSubmoduleFiles";
101− inherit src;
102− filter = path: type:
103− elem path pathsNeeded
104− ||
111+ gitSubmoduleFiles = cleanSourceWith {
112+ caller = "cleanGit";
113+ name = (if name == null then "" else name + "-") + "gitSubmoduleFiles";
114+ inherit src;
115+ filter = path: type:
116+ type == "directory" # TODO get sudmodule directories from `.gitmodules`
117+ # and use that to filter directory tree here
118+ ||
119+ lib.any (i: (lib.hasSuffix i path)) [
120+ "/.git" ".gitmodules" ".git/config" ".git/index" ".git/HEAD" ".git/objects" ".git/refs" ] ||
121+ (lib.strings.hasInfix ".git/modules/" path &&
105122 lib.any (i: (lib.hasSuffix i path)) [
106− ".gitmodules" ".git/config" ".git/index" ".git/HEAD" ".git/objects" ".git/refs" ]
107− ||
108− (lib.strings.hasInfix ".git/modules/" path &&
109− lib.any (i: (lib.hasSuffix i path)) [
110− "config" "index" "HEAD" "objects" "refs" ]);
111− };
112−
113− hasSubmodules = !isWorktree && builtins.pathExists gitModulesStr;
123+ "config" "index" "HEAD" "objects" "refs" ]);
124+ };
114125
115126 # Make a temporary dir that looks enough like the real thing for
116127 # `git ls-files --recurse-submodules` to give us an accurate list
117128 # of all the files in the index.
118− whitelist_files = knownSubmoduleDirs:
119− runCommand "git-ls-files" { preferLocalBuild = true; } ''
129+ whitelist_file =
130+ runCommand "git-ls-files" {envVariable = true;} ''
120131 tmp=$(mktemp -d)
121132 cd $tmp
122− ${ lib.optionalString hasSubmodules ''
123− cp -ra ${gitSubmoduleFiles knownSubmoduleDirs}/. $tmp
133+ ${ lib.optionalString (!isWorktree && builtins.pathExists gitModulesStr) ''
134+ cp -ra ${gitSubmoduleFiles}/. $tmp
124135 chmod +w -R $tmp
136+ rm -rf .git
125137 ''}
126138 cp -r ${gitDir} .git
127139 chmod +w -R .git
@@ -132,74 +144,22 @@ then
132144 ${ lib.optionalString (isWorktree && builtins.pathExists gitModulesStr) ''
133145 cp ${gitModules} ./.gitmodules
134146 ''}
135− mkdir $out
136− ${ lib.optionalString hasSubmodules ''
137− ${git}/bin/git submodule status --recursive | awk '{ print $2 }' > $out/submoduleDirs
138− ''}
139− ${git}/bin/git ls-files --recurse-submodules > $out/files
147+ ${git}/bin/git ls-files --recurse-submodules > $out
140148 '';
141149
142− # Find the submodules
143− whitelist_recursive = knownSubmoduleDirs:
144− let
145− # Get the new list of submoduleDirs and files
146− # (useing the submoduleDirs we already know about)
147− files = whitelist_files knownSubmoduleDirs;
148− new = {
149− submoduleDirs = lines (readFile (files + "/submoduleDirs"));
150− files = lines (readFile (files + "/files"));
151− };
152− in
153− # If we are not expecting submodules or if the new list does not
154− # contain any additional submodules we are done.
155− if !hasSubmodules || lib.all (x: elem x knownSubmoduleDirs) new.submoduleDirs
156− then new
157− else
158− # Look again using what we know now about the submodules
159− whitelist_recursive new.submoduleDirs;
160−
161− # Use empty as a starting point for looking for submodules.
162− # We could allow a list to be passed into cleanGit, but when testing
163− # on the `ghcjs` repo (one with a lot of submodules) it did not
164− # make much of a difference to the speed of `cleanGit`.
165− whitelist = whitelist_recursive [];
166−
167− all_paren_dirs = p:
168− if p == "." || p == "/"
169− then []
170− else [ p ] ++ all_paren_dirs (dirOf p);
171−
172− # All the paths that we need to keep as a set (including parent dirs)
173− whitelist_set = listToAttrs (
174− concatMap (p:
175− # Using `origSrcSubDir` (if present) makes it possible to cleanGit src that
176− # has already been cleaned with cleanSrcWith.
177− let full_path = toString (src.origSrcSubDir or src) + "/${p}"; in
178− map (p': { name = p'; value = true; }) (all_paren_dirs full_path)
179− ) whitelist.files
180− );
181−
182− # Identify files in the `.git` dir
183− isGitDirPath = path:
184− path == origSrcSubDir + "/.git"
185− || lib.hasPrefix (origSrcSubDir + "/.git/") path;
150+ whitelist = lines (readFile (whitelist_file.out));
186151
187− filter = path: type:
188− hasAttr (toString path) whitelist_set
189− || (keepGitDir && isGitDirPath path);
152+ filter = filter_from_list src whitelist;
190153 in
191154 cleanSourceWith {
192155 caller = "cleanGit";
193− inherit name src subDir includeSiblings filter;
194− } // {
195− # For testing
196− # inherit whitelist whitelist_set;
156+ inherit name src subDir filter;
197157 }
198158
199159else
200− trace "haskell-nix.haskellLib.cleanGit: ${origSrcSubDir} does not seem to be a git repository,\nassuming it is a clean checkout." (
160+ trace "gitSource.nix: ${origSrcSubDir} does not seem to be a git repository,\nassuming it is a clean checkout." (
201161 cleanSourceWith {
202162 caller = "cleanGit";
203− inherit name src subDir includeSiblings;
163+ inherit name src subDir;
204164 }
205165 )
lib/clean-source-haskell.nix+15−1
@@ -35,7 +35,21 @@ rec {
3535 src = lib.cleanSource src;
3636 inherit name;
3737 };
38+ # Copy function from 19.09 for compatibility with 19.03.
39+ # Does require at least Nix 2.0.
40+ compat = let
41+ isFiltered = src ? _isLibCleanSourceWith;
42+ origSrc = if isFiltered then src.origSrc else src;
43+ filter' = name: type: haskellSourceFilter name type && lib.cleanSourceFilter name type;
44+ name' = if name != null then name else if isFiltered then src.name else baseNameOf src;
45+ in {
46+ inherit origSrc;
47+ filter = filter';
48+ outPath = builtins.path { filter = filter'; path = origSrc; name = name'; };
49+ _isLibCleanSourceWith = true;
50+ name = name';
51+ };
3852 in
3953 if (builtins.typeOf src) == "path"
40− then clean else src;
54+ then (if lib.versionAtLeast lib.version "19.09" then clean else compat) else src;
4155}
lib/clean-source-with.nix+8−35
@@ -50,33 +50,6 @@
5050 # (and forward a `name` argument) can use this to make
5151 # the message to the use more meaningful.
5252 #
53− # Nix <2.4 Suport with filterPath
54− #
55− # As of Nix >=2.4 filtering is now possible on all paths (including those in the store).
56− # If you still need to support older versions of Nix and want to maximise cache hits for your project
57− # you may want to consider using setting the `filterPath` attribute on `src` (must be done on
58− # the original src not the output of another `cleanSourceWith`).
59− #
60− # To disable filtering completely replace:
61− #
62− # src = ./.;
63− #
64− # with:
65− #
66− # src = { outPath = ./.; filterPath = { path, ... }: path; };
67− #
68− # To disable filtering only when the path is in the store use (when Nix <2.4 is unable to filter it):
69− #
70− # src = {
71− # outPath = ./.;
72− # filterPath = { path, ... }@args:
73− # if builtins.hasContext (toString path) then path else builtins.path args;
74− # };
75− #
76− # Currently `haskell-nix.hackage-project` (used by `hackage-package`, `tool` and `tools`) disables
77− # filtering. See `overlays/haskell.nix` for details.
78− #
79− # For more see https://github.com/input-output-hk/haskell.nix/pull/1418
8053 cleanSourceWith = { filter ? _path: _type: true, src, subDir ? "", name ? null
8154 , caller ? "cleanSourceWith", includeSiblings ? false }:
8255 let
@@ -130,21 +103,21 @@
130103 __trace (
131104 "WARNING: `${caller}` called on ${toString src} without a `name`. "
132105 + "Consider adding `name = \"${baseNameOf src}\";`") "source";
133− filterPath = origSrc.filterPath or (
134− if builtins.compareVersions builtins.nixVersion "2.4" >= 0
135− then builtins.path
136− else __trace "WARNING: Using nix <2.4 will result in inconsistent filtering of ${toString origSrc} (see lib/clean-source-with.nix)"
137− (if builtins.hasContext or (lib.hasPrefix builtins.storeDir) (toString origSrc)
138− then { path, ... }: path
139− else builtins.path));
140106 in {
141107 inherit origSrc origSubDir origSrcSubDir;
142108 filter = filter';
143− outPath = (filterPath { filter = filter'; path = origSrc; name = name'; }) + origSubDir;
109+ outPath = (builtins.path { filter = filter'; path = origSrc; name = name'; }) + origSubDir;
144110 _isLibCleanSourceWithEx = true;
145111 # It is only safe for older cleanSourceWith to filter this one
146112 # if the we are still looking at the root of origSrc
147113 _isLibCleanSourceWith = origSubDir == "";
148114 name = name';
149115 };
116+
117+ pathHasContext = builtins.hasContext or (lib.hasPrefix builtins.storeDir);
118+
119+ canCleanSource = src:
120+ src ? _isLibCleanSourceWithEx
121+ || src ? _isLibCleanSourceWith
122+ || !(pathHasContext (toString src));
150123}
lib/cover-project.nixdeleted−150
@@ -1,150 +0,0 @@
1−# A project coverage report is a composition of package coverage
2−# reports
3−{ stdenv, pkgs, lib, haskellLib }:
4−
5−# haskell.nix project
6−project:
7−# List of coverage reports to accumulate
8−coverageReports:
9−
10−let
11− toBashArray = arr: "(" + (lib.concatStringsSep " " arr) + ")";
12−
13− # Create a list element for a project coverage index page.
14− coverageListElement = coverageReport:
15− ''
16− <li>
17− <a href="${coverageReport.passthru.name}/hpc_index.html">${coverageReport.passthru.name}</a>
18− </li>
19− '';
20−
21− projectIndexHtml = pkgs.writeText "index.html" ''
22− <html>
23− <head>
24− <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
25− </head>
26− <body>
27− <div>
28− WARNING: Modules with no coverage are not included in any of these reports, this is just how HPC works under the hood.
29− </div>
30− <div>
31− <h2>Union Report</h2>
32− <p>The following report shows how each module is covered by any test in the project:</p>
33− <ul>
34− <li>
35− <a href="all/hpc_index.html">all</a>
36− </li>
37− </ul>
38− </div>
39− <div>
40− <h2>Individual Reports</h2>
41− <p>The following reports show how the tests of each package cover modules in the project:</p>
42− <ul>
43− ${with lib; concatStringsSep "\n" (map coverageListElement coverageReports)}
44− </ul>
45− </div>
46− </body>
47− </html>
48− '';
49−
50− ghc = project.pkg-set.config.ghc.package;
51−
52− libs = lib.unique (lib.concatMap (r: r.mixLibraries) coverageReports);
53−
54− mixDirs =
55− map
56− (l: "${l}/share/hpc/vanilla/mix/${l.identifier.name}-${l.identifier.version}")
57− libs;
58−
59− srcDirs = map (l: l.srcSubDirPath) libs;
60−
61− allCoverageReport = haskellLib.coverageReport {
62− name = "all";
63− checks = lib.flatten (lib.concatMap
64− (pkg: lib.optional (pkg ? checks) (lib.filter lib.isDerivation (lib.attrValues pkg.checks)))
65− (lib.attrValues (haskellLib.selectProjectPackages project.hsPkgs)));
66− mixLibraries = lib.concatMap
67− (pkg: lib.optional (pkg.components ? library) pkg.components.library)
68− (lib.attrValues (haskellLib.selectProjectPackages project.hsPkgs));
69− ghc = project.pkg-set.config.ghc.package;
70− };
71−
72−in pkgs.runCommand "project-coverage-report"
73− ({ nativeBuildInputs = [ (ghc.buildGHC or ghc) pkgs.buildPackages.zip ];
74− LANG = "en_US.UTF-8";
75− LC_ALL = "en_US.UTF-8";
76− } // lib.optionalAttrs (stdenv.buildPlatform.libc == "glibc") {
77− LOCALE_ARCHIVE = "${pkgs.buildPackages.glibcLocales}/lib/locale/locale-archive";
78− })
79− ''
80− function markup() {
81− local -n srcDs=$1
82− local -n mixDs=$2
83− local -n includedModules=$3
84− local destDir=$4
85− local tixFile=$5
86−
87− local hpcMarkupCmd=("hpc" "markup" "--destdir=$destDir")
88− for srcDir in "''${srcDs[@]}"; do
89− hpcMarkupCmd+=("--srcdir=$srcDir")
90− done
91−
92− for mixDir in "''${mixDs[@]}"; do
93− hpcMarkupCmd+=("--hpcdir=$mixDir")
94− done
95−
96− for module in "''${includedModules[@]}"; do
97− hpcMarkupCmd+=("--include=$module")
98− done
99−
100− hpcMarkupCmd+=("$tixFile")
101−
102− echo "''${hpcMarkupCmd[@]}"
103− eval "''${hpcMarkupCmd[@]}"
104− }
105−
106− function findModules() {
107− local searchDir=$2
108− local pattern=$3
109−
110− pushd $searchDir
111− mapfile -d $'\0' $1 < <(find ./ -type f \
112− -wholename "$pattern" -not -name "Paths*" \
113− -exec basename {} \; \
114− | sed "s/\.mix$//" \
115− | tr "\n" "\0")
116− popd
117− }
118−
119− mkdir -p $out/nix-support
120− mkdir -p $out/share/hpc/vanilla/tix/all
121− mkdir -p $out/share/hpc/vanilla/mix/
122− mkdir -p $out/share/hpc/vanilla/html/
123−
124− # Find all tix files in each package
125− tixFiles=()
126− ${with lib; concatStringsSep "\n" (map (coverageReport: ''
127− identifier="${coverageReport.name}"
128− report=${coverageReport}
129− tix="$report/share/hpc/vanilla/tix/$identifier/$identifier.tix"
130− if test -f "$tix"; then
131− tixFiles+=("$tix")
132− fi
133−
134− # Copy mix, tix, and html information over from each report
135− cp -Rn $report/share/hpc/vanilla/mix/$identifier $out/share/hpc/vanilla/mix/
136− cp -R $report/share/hpc/vanilla/tix/* $out/share/hpc/vanilla/tix/
137− cp -R $report/share/hpc/vanilla/html/* $out/share/hpc/vanilla/html/
138− '') coverageReports)}
139−
140− # Copy out "all" coverage report
141− cp -R ${allCoverageReport}/share/hpc/vanilla/tix/all $out/share/hpc/vanilla/tix
142− cp -R ${allCoverageReport}/share/hpc/vanilla/html/all $out/share/hpc/vanilla/html
143−
144− # Markup a HTML coverage summary report for the entire project
145− cp ${projectIndexHtml} $out/share/hpc/vanilla/html/index.html
146−
147− echo "report coverage $out/share/hpc/vanilla/html/index.html" >> $out/nix-support/hydra-build-products
148− ( cd $out/share/hpc/vanilla/html ; zip -r $out/share/hpc/vanilla/html.zip . )
149− echo "file zip $out/share/hpc/vanilla/html.zip" >> $out/nix-support/hydra-build-products
150− ''
lib/cover.nixdeleted−204
@@ -1,204 +0,0 @@
1−# The following collects coverage information from a set of given "checks" and
2−# provides a coverage report showing how those "checks" cover a set of given
3−# "mixLibraries".
4−{ stdenv, lib, haskellLib, pkgs }:
5−
6−# Name of the coverage report, which should be unique.
7−{ name
8−# List of check derivations that generate coverage.
9−, checks ? []
10−# List of libraries to include in the coverage report. If one of the above
11−# checks generates coverage for a particular library, coverage will only
12−# be included if that library is in this list.
13−, mixLibraries ? []
14−# Hack for project-less projects.
15−, ghc ? if mixLibraries == [] then null else (lib.head mixLibraries).project.pkg-set.config.ghc.package
16−}:
17−
18−let
19− toBashArray = arr: "(" + (lib.concatStringsSep " " arr) + ")";
20−
21− mixDir = l: "${l}/share/hpc/vanilla/mix/${l.identifier.name}-${l.identifier.version}";
22− mixDirs = map mixDir mixLibraries;
23−
24− srcDirs = map (l: l.srcSubDirPath) mixLibraries;
25−
26−in pkgs.runCommand (name + "-coverage-report")
27− ({nativeBuildInputs = [ (ghc.buildGHC or ghc) pkgs.buildPackages.zip ];
28− passthru = {
29− inherit name checks mixLibraries;
30− };
31− # HPC will fail if the Haskell file contains non-ASCII characters,
32− # unless our locale is set correctly. This has been fixed, but we
33− # don't know what version of HPC we will be using, hence we should
34− # always use the workaround.
35− # https://gitlab.haskell.org/ghc/ghc/-/issues/17073
36− LANG = "en_US.UTF-8";
37− LC_ALL = "en_US.UTF-8";
38− } // lib.optionalAttrs (stdenv.buildPlatform.libc == "glibc") {
39− LOCALE_ARCHIVE = "${pkgs.buildPackages.glibcLocales}/lib/locale/locale-archive";
40− })
41− ''
42− function markup() {
43− local -n srcDs=$1
44− local -n mixDs=$2
45− local -n includedModules=$3
46− local destDir=$4
47− local tixFile=$5
48−
49− local hpcMarkupCmd=("hpc" "markup" "--destdir=$destDir")
50− for srcDir in "''${srcDs[@]}"; do
51− hpcMarkupCmd+=("--srcdir=$srcDir")
52− done
53−
54− for mixDir in "''${mixDs[@]}"; do
55− hpcMarkupCmd+=("--hpcdir=$mixDir")
56− done
57−
58− for module in "''${includedModules[@]}"; do
59− hpcMarkupCmd+=("--include=$module")
60− done
61−
62− hpcMarkupCmd+=("$tixFile")
63−
64− echo "''${hpcMarkupCmd[@]}"
65− eval "''${hpcMarkupCmd[@]}"
66− }
67−
68− function sumTix() {
69− local -n includedModules=$1
70− local -n tixFs=$2
71− local outFile="$3"
72−
73− if (( "''${#tixFs[@]}" > 0 )); then
74− local hpcSumCmd=("hpc" "sum" "--union" "--output=$outFile")
75−
76− for module in "''${includedModules[@]}"; do
77− hpcSumCmd+=("--include=$module")
78− done
79−
80− for tixFile in "''${tixFs[@]}"; do
81− hpcSumCmd+=("$tixFile")
82− done
83−
84− echo "''${hpcSumCmd[@]}"
85− eval "''${hpcSumCmd[@]}"
86− else
87− # If there are no tix files we output an empty tix file so that we can
88− # markup an empty HTML coverage report. This is preferable to failing to
89− # output a HTML report.
90− echo 'Tix []' > $outFile
91− fi
92− }
93−
94− function findModules() {
95− local -n result=$1
96− local -n searchDirs=$2
97− local pattern=$3
98−
99− for dir in "''${searchDirs[@]}"; do
100− pushd $dir
101− local temp=()
102− mapfile -d $'\0' temp < <(find ./ -type f \
103− -wholename "$pattern" -not -name "Paths*" \
104− -exec basename {} \; \
105− | sed "s/\.mix$//" \
106− | tr "\n" "\0")
107− result+=("''${temp[@]}")
108− popd
109− done
110− }
111−
112− mkdir -p $out/nix-support
113− mkdir -p $out/share/hpc/vanilla/mix/
114− mkdir -p $out/share/hpc/vanilla/tix/${name}
115− mkdir -p $out/share/hpc/vanilla/html/${name}
116−
117− local srcDirs=${toBashArray srcDirs}
118− local mixDirs=${toBashArray mixDirs}
119−
120− # Copy out mix files used for this report
121− for dir in "''${mixDirs[@]}"; do
122− if [ -d "$dir" ]; then
123− cp -R "$dir" $out/share/hpc/vanilla/mix/
124− fi
125− done
126−
127− local mixModules=()
128− # Mix modules for all packages in "mixLibraries"
129− findModules mixModules mixDirs "*.mix"
130−
131− # We need to make a distinction between library "exposed-modules" and
132− # "other-modules" used in test suites:
133− # - "exposed-modules" are addressed as "$library-$version-$hash/module"
134− # - "other-modules" are addressed as "module"
135− #
136− # This complicates the code required to find the mix modules. For a given mix directory:
137− #
138− # mix
139− # └── ntp-client-0.0.1
140− # └── ntp-client-0.0.1-gYjRsBHUCaHX7ENcjHnw5
141− # ├── Network.NTP.Client.mix
142− # ├── Network.NTP.Client.Packet.mix
143− # └── Network.NTP.Client.Query.mix
144− #
145− # Iff ntp-client uses "other-modules" in a test suite, both:
146− # - "mix/ntp-client-0.0.1", and
147− # - "mix/ntp-client-0.0.1/ntp-client-0.0.1-gYjRsBHUCaHX7ENcjHnw5"
148− # need to be provided to hpc as search directories.
149− #
150− # I'd prefer to just exclude "other-modules", but I can't think of an easy
151− # way to do that in bash.
152− #
153− # Here we expand the search dirs and modify the mix dirs accordingly:
154− for dir in "''${mixDirs[@]}"; do
155− local otherModulesSearchDirs=()
156− # Simply consider any directory with a mix file as a search directory.
157− mapfile -d $'\0' otherModulesSearchDirs < <(find $dir -type f \
158− -wholename "*.mix" \
159− -exec dirname {} \; \
160− | uniq \
161− | tr "\n" "\0")
162− mixDirs+=("''${otherModulesSearchDirs[@]}")
163− done
164−
165− local tixFiles=()
166− ${lib.concatStringsSep "\n" (builtins.map (check: ''
167− if [ -d "${check}/share/hpc/vanilla/tix" ]; then
168− pushd ${check}/share/hpc/vanilla/tix
169−
170− tixFile="$(find . -iwholename "*.tix" -type f -print -quit)"
171− local newTixFile=$out/share/hpc/vanilla/tix/${check.name}/"$(basename $tixFile)"
172−
173− mkdir -p "$(dirname $newTixFile)"
174− # Copy over the tix file verbatim
175− cp "$tixFile" "$newTixFile"
176−
177− # Add the tix file to our list
178− tixFiles+=("$newTixFile")
179−
180− # Create a coverage report for *just that check* affecting any of the
181− # "mixLibraries"
182− markup srcDirs mixDirs mixModules "$out/share/hpc/vanilla/html/${check.name}/" "$newTixFile"
183−
184− popd
185− fi
186− '') checks)
187− }
188−
189− # Sum tix files to create a tix file with tix information from all tests in
190− # the package and markup a HTML report from this info.
191− local sumTixFile="$out/share/hpc/vanilla/tix/${name}/${name}.tix"
192− local markupOutDir="$out/share/hpc/vanilla/html/${name}"
193−
194− # Sum all of our tix files
195− sumTix mixModules tixFiles "$sumTixFile"
196−
197− # Markup a HTML report
198− markup srcDirs mixDirs mixModules "$markupOutDir" "$sumTixFile"
199−
200− # Provide a HTML zipfile and Hydra links
201− ( cd "$markupOutDir" ; zip -r $out/share/hpc/vanilla/${name}-html.zip . )
202− echo "report coverage $markupOutDir/hpc_index.html" >> $out/nix-support/hydra-build-products
203− echo "file zip $out/share/hpc/vanilla/${name}-html.zip" >> $out/nix-support/hydra-build-products
204− ''
lib/default.nix+30−110
@@ -4,8 +4,11 @@
44with haskellLib;
55
66let
7− # Why `final.buildPackages.buildPackages.gitMinimal`?
8− # Why not just final.buildPackages.gitMinimal?
7+ # Why `final.evalPackages.buildPackages.gitMinimal`?
8+ # Why not just final.evalPackages.gitMinimal?
9+ #
10+ # A problem arises when `evalPackages` is `buildPackages`.i
11+ # As may be the case in a flake.
912 #
1013 # It turns out `git` depends on `gdb` in a round about way:
1114 # git -> openssh -> libfido2 -> systemd -> python libxml -> Cython -> gdb
@@ -21,7 +24,7 @@ let
2124 # * When `gdb` does not exist for `js`, so when cross
2225 # compiling with ghcjs `final.buildPackages.git` fails
2326 # to build at all.
24− inherit (pkgs.buildPackages.buildPackages) gitMinimal;
27+ inherit (pkgs.evalPackages.buildPackages) gitMinimal;
2528
2629in {
2730 # Within the package components, these are the attribute names of
@@ -59,23 +62,13 @@ in {
5962 benchmarks = "bench";
6063 };
6164
62− # For looking up the components attribute based on the cabal component type
63− prefixComponent =
64− lib.listToAttrs (
65− lib.mapAttrsToList (value: name: { inherit name value; })
66− componentPrefix);
67−
6865 applyComponents = f: config:
6966 let
7067 comps = config.components;
7168 applyLibrary = cname: f { cname = config.package.identifier.name; ctype = "lib"; };
7269 applySubComp = ctype: cname: f { inherit cname; ctype = componentPrefix.${ctype} or (throw "Missing component mapping for ${ctype}."); };
73− isBuildable = comp:
74− config.package.buildable # Set manually in a module (allows whole packages to be disabled)
75− && comp.buildable # Set based on `buildable` in `.cabal` files
76− && comp.planned; # Set if the component was in the `plan.json`
77− buildableAttrs = lib.filterAttrs (n: isBuildable);
78− libComp = if comps.library == null || !(isBuildable comps.library)
70+ buildableAttrs = lib.filterAttrs (n: comp: comp.buildable or true);
71+ libComp = if comps.library == null || !(comps.library.buildable or true)
7972 then {}
8073 else lib.mapAttrs applyLibrary (removeAttrs comps (subComponentTypes ++ [ "setup" ]));
8174 subComps = lib.mapAttrs
@@ -101,7 +94,7 @@ in {
10194
10295 # if it's a project package it has a src attribute set with an origSubDir attribute.
10396 # project packages are a subset of localPackages
104− isProjectPackage = p: p.isProject or false;
97+ isProjectPackage = p: p ? src && p.src ? origSubDir;
10598 selectProjectPackages = ps: lib.filterAttrs (n: p: p != null && isLocalPackage p && isProjectPackage p) ps;
10699
107100 # Format a componentId as it should appear as a target on the
@@ -133,7 +126,14 @@ in {
133126 ## flatLibDepends :: Component -> [Package]
134127 flatLibDepends = component:
135128 let
136− makePairs = map (p: rec { key=val.name; val=(p.components.library or p); });
129+ # this is a minor improvement over the "cannot coerce set to string"
130+ # error. It will now say:
131+ #
132+ # > The option `packages.Win32.package.identifier.name' is used but not defined.
133+ #
134+ # which indicates that the package.Win32 is missing and not defined.
135+ getKey = x: if x ? "outPath" then "${x}" else (throw x.identifier.name);
136+ makePairs = map (p: rec { key=getKey val; val=(p.components.library or p); });
137137 closure = builtins.genericClosure {
138138 startSet = makePairs component.depends;
139139 operator = {val,...}: makePairs val.config.depends;
@@ -189,7 +189,7 @@ in {
189189 collectChecks' = collectChecks (_: true);
190190
191191 # Replacement for lib.cleanSourceWith that has a subDir argument.
192− inherit (import ./clean-source-with.nix { inherit lib; }) cleanSourceWith;
192+ inherit (import ./clean-source-with.nix { inherit lib; }) cleanSourceWith canCleanSource;
193193
194194 # Use cleanSourceWith to filter just the files needed for a particular
195195 # component of a package
@@ -199,7 +199,7 @@ in {
199199 cleanGit = import ./clean-git.nix {
200200 inherit lib cleanSourceWith;
201201 git = gitMinimal;
202− inherit (pkgs.buildPackages.buildPackages) runCommand;
202+ inherit (pkgs.evalPackages) runCommand;
203203 };
204204
205205 # Some times it is handy to temporarily use a relative path between git
@@ -229,17 +229,7 @@ in {
229229
230230 # Check a test component
231231 check = import ./check.nix {
232− inherit stdenv lib haskellLib;
233− };
234−
235− # Do coverage of a package
236− coverageReport = import ./cover.nix {
237− inherit stdenv lib haskellLib pkgs;
238− };
239−
240− # Do coverage of a project
241− projectCoverageReport = import ./cover-project.nix {
242− inherit stdenv lib haskellLib pkgs;
232+ inherit stdenv lib haskellLib srcOnly;
243233 };
244234
245235 # Use `isCrossHost` to identify when we are cross compiling and
@@ -248,99 +238,29 @@ in {
248238 # In most cases we do not want to treat musl as a cross compiler.
249239 # For instance when building ghc we want to include ghci.
250240 isCrossHost = stdenv.hostPlatform != stdenv.buildPlatform
251− && !(stdenv.buildPlatform.isLinux && stdenv.hostPlatform.isMusl && stdenv.buildPlatform.linuxArch == stdenv.hostPlatform.linuxArch);
241+ && !(stdenv.buildPlatform.isLinux && stdenv.hostPlatform.isMusl && stdenv.buildPlatform.isx86 && stdenv.hostPlatform.isx86);
252242 # This is the same as isCrossHost but for use when building ghc itself
253243 isCrossTarget = stdenv.targetPlatform != stdenv.hostPlatform
254− && !(stdenv.hostPlatform.isLinux && stdenv.targetPlatform.isMusl && stdenv.hostPlatform.linuxArch == stdenv.targetPlatform.linuxArch);
244+ && !(stdenv.hostPlatform.isLinux && stdenv.targetPlatform.isMusl && stdenv.hostPlatform.isx86 && stdenv.targetPlatform.isx86);
255245 # Native musl build-host-target combo
256246 isNativeMusl = stdenv.hostPlatform.isMusl
257247 && stdenv.buildPlatform == stdenv.hostPlatform
258248 && stdenv.hostPlatform == stdenv.targetPlatform;
259249
260− # Takes a version number, module or list of modules (for cabalProject)
261− # and converts it to an list of project modules. This allows
250+ # Takes a version number or attr set of arguments (for cabalProject)
251+ # and converts it to an attr set of arguments. This allows
262252 # the use of "1.0.0.0" or { version = "1.0.0.0"; ... }
263− versionOrModToMods = versionOrMod:
264− if lib.isString versionOrMod
265− then [{ version = versionOrMod; }]
266− else if lib.isList versionOrMod
267− then versionOrMod
268− else [versionOrMod];
253+ versionOrArgsToArgs = versionOrArgs:
254+ if lib.isAttrs versionOrArgs
255+ then versionOrArgs
256+ else { version = versionOrArgs; };
269257
270258 # Find the resolver in the stack.yaml file and fetch it if a sha256 value is provided
271259 fetchResolver = import ./fetch-resolver.nix {
272− inherit (pkgs.buildPackages) pkgs;
260+ inherit (pkgs.evalPackages) pkgs;
273261 };
274262
275263 inherit (import ./cabal-project-parser.nix {
276264 inherit pkgs;
277− }) parseIndexState parseSourceRepositoryPackages parseRepositories parseSourceRepositoryPackageBlock parseRepositoryBlock;
278−
279−
280− cabalToNixpkgsLicense = import ./spdx/cabal.nix pkgs;
281−
282− # This function is like
283− # `src + (if subDir == "" then "" else "/" + subDir)`
284− # however when `includeSiblings` is set it maintains
285− # `src.origSrc` if there is one and instead adds to
286− # `src.origSubDir`. It uses `cleanSourceWith` when possible
287− # to keep `cleanSourceWith` support in the result.
288− appendSubDir = { src, subDir, includeSiblings ? false }:
289− if subDir == ""
290− then src
291− else
292− haskellLib.cleanSourceWith {
293− inherit src subDir includeSiblings;
294− };
295−
296− # Givin a `src` split it into a `root` path (based on `src.origSrc` if
297− # present) and `subDir` (based on `src.origSubDir). The
298− # `root` will still use the `filter` of `src` if there was one.
299− rootAndSubDir = src: rec {
300− subDir = src.origSubDir or "";
301− root =
302− if subDir == ""
303− then src # if there was no subdir use the original src
304− else
305− # Use `cleanSourceWith` to make sure the `filter` is still used
306− if src ? origSrc && src ? filter
307− then haskellLib.cleanSourceWith {
308− name = src.name or "source" + "-root";
309− src = src.origSrc;
310− # Not passing src.origSubDir so that the result points `origSrc`
311− inherit (src) filter;
312− }
313− else src.origSrc or src; # If there is a subDir and origSrc (but no filter) use origSrc
314− };
315−
316− # Run evalModules passing the project function argument (m) as a module along with
317− # the the a projectType module (../modules/cabal-project.nix or ../modules/stack-project.nix).
318− # The resulting config is then passed to the project function's implementation.
319− evalProjectModule = projectType: m: f:
320− let project = f
321− (lib.evalModules {
322− modules = (if builtins.isList m then m else [m]) ++ [
323− # Include ../modules/cabal-project.nix or ../modules/stack-project.nix
324− (import ../modules/project-common.nix)
325− (import projectType)
326− # Pass the pkgs and the buildProject to the modules
327− ({ config, lib, ... }: {
328− _module.args = {
329− inherit pkgs;
330− # to make it easy to depends on build packages in, eg., shell definition:
331− inherit (project) buildProject;
332− };
333− inherit (project) hsPkgs;
334− })
335− ];
336− }).config;
337− in project;
338−
339− # Converts from a `compoent.depends` value to a library derivation.
340− # In the case of sublibs the `depends` value should already be the derivation.
341− dependToLib = d: d.components.library or d;
342−
343− projectOverlays = import ./project-overlays.nix {
344− inherit lib haskellLib;
345− };
265+ }) parseIndexState parseBlock;
346266}
lib/failed-cabal-configure.nixdeleted−9
@@ -1,9 +0,0 @@
1−let
2− configurationError = ./cabal-configure.out;
3−in
4− # Trace the error output to make sure the user has a chance to see it
5− # (even if the choose not to build anything from the project)
6− __trace ''
7− ERROR: cabal configure failed with:
8− ${__readFile configurationError}
9− '' { inherit configurationError; }
lib/fetch-resolver.nix+2−6
@@ -5,12 +5,10 @@
55, resolverSha256 ? null
66}:
77let
8− srcDir = src.origSrcSubDir or src;
9−
108 # Using origSrcSubDir bypasses any cleanSourceWith so that it will work when
119 # access to the store is restricted. If origSrc was already in the store
1210 # you can pass the project in as a string.
13− rawStackYaml = builtins.readFile (srcDir + "/${stackYaml}");
11+ rawStackYaml = builtins.readFile ((src.origSrcSubDir or src) + ("/" + stackYaml));
1412
1513 # Determine the resolver as it may point to another file we need
1614 # to look at.
@@ -30,8 +28,6 @@ let
3028 url = resolver;
3129 sha256 = resolverSha256;
3230 }
33− else if resolver != null && __pathExists (srcDir + "/${resolver}")
34− then pkgs.copyPathToStore (srcDir + "/${resolver}")
35− else null;
31+ else null;
3632
3733in { inherit resolver fetchedResolver; }
lib/ghcjs-project.nix+32−119
@@ -1,7 +1,3 @@
1−# IMPORTANT: This is for building ghcjs, not for building with
2−# ghcjs. To build with ghcjs then just replace `haskell-nix`
3−# with `pkgsCross.ghcjs.haskell-nix`.
4−#
51# For the time being we can't really treat ghcjs like a
62# regular ghc (with different target). We need this as a
73# stop-gap measure until ghcjs can be treated like a regular
@@ -21,45 +17,15 @@
2117# of the project.
2218{ pkgs }:
2319{ src
24−, compiler-nix-name
25−, ghc ? pkgs.buildPackages.haskell-nix.compiler.${compiler-nix-name}
26−, ghcjsVersion # Version in the ghcjs.cabal file (that we will replace)
27−, ghcVersion ? ghc.version
28−, happy ? pkgs.haskell-nix.tool compiler-nix-name "happy" {
29− index-state = pkgs.haskell-nix.internalHackageIndexState;
30− version = "1.19.12";
31− materialized = ../materialized/ghcjs/happy + "/${compiler-nix-name}";
32− }
33−, alex ? pkgs.haskell-nix.tool compiler-nix-name "alex" {
34− index-state = pkgs.haskell-nix.internalHackageIndexState;
35− version = "3.2.5";
36− materialized = ../materialized/ghcjs/alex + "/${compiler-nix-name}";
37− }
38−, cabal-install ?
39− if (builtins.compareVersions ghcjsVersion "8.10.0.0" >= 0)
40− then pkgs.haskell-nix.tool compiler-nix-name "cabal" {
41− index-state = pkgs.haskell-nix.internalHackageIndexState;
42− version = "3.6.2.0";
43− materialized = ../materialized/ghcjs/cabal + "/${compiler-nix-name}";
44− }
45− else pkgs.haskell-nix.tool compiler-nix-name "cabal" {
46− index-state = pkgs.haskell-nix.internalHackageIndexState;
47− version = "3.2.0.0";
48− # Cabal 3.2.1.0 no longer supports he mix of `cabal-version`,
49− # lack of `custom-setup` and `v1-install` used by ghcjs boot.
50− cabalProjectLocal = ''
51− constraints: Cabal <3.2.1.0
52− '';
53− materialized = ../materialized/ghcjs/cabal + "/${compiler-nix-name}";
54− }
55−, overrideBootPackages ? []
56−, patches ? []
20+, ghc ? pkgs.ghc
21+, ghcjsVersion ? "8.6.0.1" # TODO get this from the source?
22+, ghcVersion ? "8.6.5" # TODO get this from the ghc arg?
23+, happy ? pkgs.haskellPackages.happy
24+, alex ? pkgs.haskellPackages.alex
25+, cabal-install ? pkgs.cabal-install
5726, ...
5827}@args:
5928let
60− isGhcjs88 = builtins.compareVersions ghcjsVersion "8.8.0.0" >= 0;
61− isGhcjs810 = builtins.compareVersions ghcjsVersion "8.10.0.0" >= 0;
62−
6329 # Inputs needed to configure the GHCJS source tree
6430 configureInputs = with pkgs; [
6531 perl
@@ -72,26 +38,22 @@ let
7238 alex
7339 cabal-install
7440 ];
75−
76− inherit (pkgs.buildPackages) emscriptenupstream emscripten emsdk;
77−
7841 # Inputs needed to boot the GHCJS compiler
79− bootInputs = with pkgs.buildPackages; [
80− # We used to pin nodejs to the 12 series, as strings can only be half the length in node 14+
81− # see https://github.com/nodejs/node/issues/33960
82− # Large TH splices are likely broken.
83− # TODO reinstate the pin of find a work around for ghcjs to send TH splice in chunks.
84− nodejs-18_x
42+ bootInputs = with pkgs; [
43+ nodejs
8544 makeWrapper
8645 xorg.lndir
8746 gmp
8847 pkgconfig
8948 ]
90− ++ [ ghc cabal-install emsdk ];
49+ ++ [ ghc cabal-install ]
50+ ++ lib.optionals stdenv.isDarwin [
51+ pkgs.buildPackages.gcc # https://github.com/ghcjs/ghcjs/issues/663
52+ ];
9153 # Configured the GHCJS source
92− configured-src = (pkgs.runCommandCC "configured-ghcjs-src" {
54+ configured-src = pkgs.runCommand "configured-ghcjs-src" {
9355 buildInputs = configureInputs;
94− inherit src patches;
56+ inherit src;
9557 } ''
9658 export HOME=$(pwd)
9759 mkdir $HOME/.cabal
@@ -100,80 +62,35 @@ let
10062 chmod -R +w "$out"
10163 cd "$out"
10264
103− for p in $patches
104− do
105− patch -p1 <$p
106− done
107−
10865 # TODO: Find a better way to avoid impure version numbers
10966 sed -i 's/RELEASE=NO/RELEASE=YES/' ghc/configure.ac
11067 sed -i 's/${ghcjsVersion}/${ghcVersion}/' ghcjs.cabal
11168
112− ${
113− # TODO: How to actually fix this?
114− # Seems to work fine and produce the right files.
115− pkgs.lib.optionalString (!isGhcjs88) ''
116− touch ghc/includes/ghcautoconf.h
117− mkdir -p ghc/compiler/vectorise
118− mkdir -p ghc/utils/haddock/haddock-library/vendor
119− ''
120− }
121−
122− rm -rf utils/pkg-cache/ghc
123− cp -r ${ghc.generated} utils/pkg-cache/ghc
124−
125− for a in integer-gmp base unix; do
126− cp ${../overlays/patches/config.sub} ghc/libraries/$a/config.sub
127− cp ${../overlays/patches/config.guess} ghc/libraries/$a/config.guess
128− chmod +w ghc/libraries/$a/config.*
129− done
130−
131− sed -i 's/_AC_PROG_CC_C99/AC_PROG_CC_C99/' ghc/aclocal.m4
69+ # TODO: How to actually fix this?
70+ # Seems to work fine and produce the right files.
71+ touch ghc/includes/ghcautoconf.h
72+ mkdir -p ghc/compiler/vectorise
73+ mkdir -p ghc/utils/haddock/haddock-library/vendor
13274
13375 patchShebangs .
13476 sed -i 's/gcc /cc /g' utils/makePackages.sh
77+ cat utils/makePackages.sh
13578 ./utils/makePackages.sh copy
13679
137− for a in integer-gmp base unix; do
138− cp ${../overlays/patches/config.sub} lib/boot/pkg/$a/config.sub
139− done
140− ${ # it just so happens that all existing uses of overriding boot packages
141− # need to be installed right after template-haskell
142− # if at some point we would need to insert them at different points
143− # then we will have gto come up with something more clever
144− builtins.concatStringsSep "\n" (map ({name, src}: ''
145− rm -rf $out/lib/boot/pkg/${name}
146− cp -r ${src} $out/lib/boot/pkg/${name}
147− sed -i 's/^ - ${name}$//g' $out/lib/boot/boot.yaml
148− sed -i 's/^ - template-haskell$/ - template-haskell\n - ${name}/g' $out/lib/boot/boot.yaml
149− echo "Added ${name} to boot.yaml"
150− ''
151− ) (pkgs.lib.reverseList overrideBootPackages))
152− }
80+ echo " build-tool-depends: alex:alex, happy:happy <= 1.19.9" >> lib/ghc-api-ghcjs/ghc-api-ghcjs.cabal
15381
154− chmod -R +w $out/lib/boot/pkg
155− '') // {
156− # The configured source includes /nix/store paths and so filtering can fail.
157− filterPath = { path, ... }: path;
158− };
82+ # nuke the HsBaseConfig.h from base.buildinfo.in; this will
83+ # prevent it from being installed and provide incorrect values.
84+ sed -i 's/HsBaseConfig.h//g' lib/boot/pkg/base/base.buildinfo.in
85+ cat lib/boot/pkg/base/base.buildinfo.in
86+ '';
15987 # see https://github.com/ghcjs/ghcjs/issues/751 for the happy upper bound.
16088
16189 ghcjsProject = pkgs.haskell-nix.cabalProject' (
162− (pkgs.lib.filterAttrs
163− (n: _: !(builtins.any (x: x == n)
164− [ "src" "ghcjsVersion" "ghcVersion" "happy" "alex" "cabal-install"
165− "overrideBootPackages" "patches"])) args) // {
90+ (pkgs.lib.filterAttrs
91+ (n: _: builtins.any (x: x == n)
92+ ["src" "ghcjsVersion" "ghcVersion" "happy" "alex" "cabal-install"]) args) // {
16693 src = configured-src;
167− index-state = "2021-03-20T00:00:00Z";
168− inherit compiler-nix-name;
169− configureArgs = pkgs.lib.optionalString (isGhcjs88 && !isGhcjs810) "--constraint='Cabal >=3.0.2.0 && <3.1'";
170− # If a package is in both build-depends and build-tool-depends multiple versions may
171− # be in the `plan.json` file. Haskell.nix will pick the newer one, but when nbuilding
172− # ghcjs 8.6 we need to use the older happy version.
173− pkg-def-extras = pkgs.lib.optional (!isGhcjs88) (hackage: {
174− packages.happy.revision = hackage.happy."1.19.9".revisions.default;
175− });
176− materialized = ../materialized + "/ghcjs/${compiler-nix-name}";
17794 modules = [
17895 {
17996 # we need ghc-boot in here for ghcjs.
@@ -182,11 +99,8 @@ let
18299 "ghc-boot" "binary" "bytestring" "filepath" "directory" "containers"
183100 "time" "unix" "Win32" ];
184101 }
185− (pkgs.lib.optionalAttrs (!isGhcjs88) {
186− packages.Cabal.patches = [ ./../overlays/patches/Cabal/fix-data-dir.patch ];
187− })
188102 {
189− ghcOptions = ["-O2"];
103+ packages.Cabal.patches = [ ./../overlays/patches/Cabal/fix-data-dir.patch ];
190104 packages.ghcjs.doHaddock = false;
191105 packages.haddock-ghcjs.doHaddock = false;
192106 packages.haddock-api-ghcjs.doHaddock = false;
@@ -200,7 +114,6 @@ let
200114 packages.ghc.flags.ghci = true;
201115 packages.ghci.flags.ghci = true;
202116 # packages.ghcjs.components.library.configureFlags = [ "-fno-wrapper-install" ];
203− packages.ghcjs.components.library.build-tools = [ alex ];
204117 }
205118 ];
206119 });
@@ -211,8 +124,8 @@ in ghcjsProject // {
211124 shellFor = args: (ghcjsProject.hsPkgs.shellFor args).overrideAttrs (drv: {
212125 buildInputs = (drv.buildInputs or []) ++ configureInputs;
213126 nativeBuildInputs = (drv.nativeBuildInputs or []) ++ bootInputs;
214− EMSDK = emsdk;
215127 });
216128 };
217− inherit configureInputs bootInputs configured-src emscriptenupstream emscripten emsdk;
129+ inherit configureInputs bootInputs configured-src;
218130}
131+
lib/import-and-filter-project.nix+25−39
@@ -6,11 +6,14 @@
66let
77 # Full source including possible relative paths form the
88 # project directory.
9− srcRoot = haskellLib.cleanSourceWith {
10− name = if src ? name then "${src.name}-root" else "source-root";
11− src = src.origSrc or src;
12− filter = src.filter or (_: _: true);
13− };
9+ srcRoot =
10+ if haskellLib.canCleanSource src
11+ then haskellLib.cleanSourceWith {
12+ name = if src ? name then "${src.name}-root" else "source-root";
13+ src = src.origSrc or src;
14+ filter = src.filter or (_: _: true);
15+ }
16+ else src.origSrc or src;
1417 # The sub directory containing the cabal.project or stack.yaml file
1518 projectSubDir' = src.origSubDir or ""; # With leading /
1619 projectSubDir = pkgs.lib.strings.removePrefix "/" projectSubDir'; # Without /
@@ -21,41 +24,24 @@ in project // {
2124 packages = pkgs.lib.attrsets.mapAttrs (name: value:
2225 if builtins.isFunction value
2326 then value
24− else {...}@args: with pkgs.lib.strings;
25− let
26− oldPkg = import value args;
27− packageInfo =
28− if oldPkg.src ? url
29− then {
30− # The source is from a source-repository-package in a cabal.project file
31− # and lib/call-cabal-project-to-nix.nix should have replaced the url with
32− # an index into the sourceRepos list.
33− isProject = false;
34− packageSrc = pkgs.lib.lists.elemAt sourceRepos (toInt oldPkg.src.url);
35− }
36− else if !hasPrefix "${projectNix}" (toString oldPkg.src.content)
37− then {
38− # Source location does not match project prefix
39− isProject = false;
40− packageSrc = toString oldPkg.src.content;
41− }
42− else {
43− # Source does match project prefix and it is not from a source repository
44− isProject = true;
45− packageSrc = haskellLib.appendSubDir {
46− src = srcRoot;
47− subDir = removePrefix "/" (removePrefix "${projectNix}"
48− (toString oldPkg.src.content));
49− includeSiblings = true; # Filtering sibling dirs of the package dir is done in the
50− # component builder so that relative paths can be used to
51− # reference project directories not in the package subDir.
52− };
53− };
27+ else {...}@args:
28+ let oldPkg = import value args;
29+ packageSrc = if !pkgs.lib.strings.hasPrefix (toString projectNix) (toString oldPkg.src.content)
30+ then toString oldPkg.src.content
31+ else let
32+ subDir = pkgs.lib.strings.removePrefix "/" (
33+ pkgs.lib.strings.removePrefix (toString projectNix)
34+ (toString oldPkg.src.content));
35+ srcRepoPrefix = projectSubDir'' + ".source-repository-packages/";
36+ in if pkgs.lib.strings.hasPrefix srcRepoPrefix subDir
37+ then
38+ pkgs.lib.lists.elemAt sourceRepos (
39+ pkgs.lib.strings.toInt (pkgs.lib.strings.removePrefix srcRepoPrefix subDir))
40+ else if haskellLib.canCleanSource srcRoot
41+ then haskellLib.cleanSourceWith { src = srcRoot; inherit subDir; }
42+ else srcRoot + (if subDir == "" then "" else "/" + subDir);
5443 in oldPkg // {
55− src = (pkgs.lib).mkDefault packageInfo.packageSrc;
56− package = oldPkg.package // {
57− isProject = (pkgs.lib).mkDefault packageInfo.isProject;
58− };
44+ src = (pkgs.lib).mkDefault packageSrc;
5945 }) old;
6046 };
6147 }
lib/materialize.nix+11−23
@@ -7,9 +7,6 @@
77 # the output. If this is set but does not exist
88 # the derivation will fail but with a message
99 # advising how to populate it.
10−, this ? "this"
11− # A name to use when referring to the thing currently being
12− # materialized. Clients can pass in an attribute name or similar.
1310, reasonNotSafe ? null
1411 # Some times there a reasont the derivation will
1512 # not produce output that can be safely materialized.
@@ -24,7 +21,7 @@
2421}: derivation:
2522
2623let
27− name = derivation.name + pkgs.lib.optionalString (derivation ? version) "-${derivation.version}";
24+ inherit (derivation) name;
2825
2926 traceIgnoringSha256 = reason: x:
3027 if sha256 != null
@@ -36,15 +33,10 @@ let
3633 then builtins.trace ("Warning: ignoring materialized for " + name + " " + reason) x
3734 else x;
3835
39− traceWhenChecking = message: x:
40− if checkMaterialization
41− then builtins.trace message x
42− else x;
43−
4436 unchecked =
4537 let
46− sha256message = "${name}: To make ${this} a fixed-output derivation but not materialized, set `${sha256Arg}` to the output of the 'calculateMaterializedSha' script in 'passthru'.";
47− materializeMessage = "${name}: To materialize ${this} entirely, pass a writable path as the `materialized` argument and run the 'updateMaterialized' script in 'passthru'.";
38+ sha256message = "To make this a fixed-output derivation but not materialized, set `${sha256Arg}` to the output of ${calculateMaterializedSha}";
39+ materializeMessage = "To materialize the output entirely, pass a writable path as the `materialized` argument and pass that path to ${generateMaterialized}";
4840 in if reasonNotSafe != null
4941 then
5042 # Warn the user if they tried to pin stuff down when it is not safe
@@ -55,20 +47,13 @@ let
5547 else if sha256 != null
5648 then
5749 # Let the user know how to materialize if they want to.
58− traceWhenChecking materializeMessage calculateUseHash
50+ builtins.trace materializeMessage calculateUseHash
5951 else # materialized == null && sha256 == null
6052 # Let the user know how to calculate a sha256 or materialize if they want to.
61− traceWhenChecking sha256message (traceWhenChecking materializeMessage calculateNoHash);
53+ builtins.trace sha256message (builtins.trace materializeMessage calculateNoHash);
6254
6355 # Build fully and check the hash and materialized versions
64− checked =
65− # Let the user know what we are checking. This is useful for debugging issues
66− # where materialization fails to prevent infinite recurstion when:
67− # checkMaterialization = true;
68− (if materialized != null
69− then __trace "Checking materialization in ${toString materialized}"
70− else x: x)
71− runCommand name {} (''
56+ checked = runCommand name {} (''
7257 ERR=$(mktemp -d)/errors.txt
7358 ''
7459 + (pkgs.lib.optionalString (sha256 != null) ''
@@ -128,7 +113,11 @@ let
128113 calculateUseMaterialized =
129114 assert materialized != null;
130115 assert __pathExists materialized;
131− { outPath = materialized; inherit name; };
116+ runCommand name (pkgs.lib.optionalAttrs (sha256 == null) hashArgs) ''
117+ cp -Lr ${materialized} $out
118+ # Make sure output files can be removed from the sandbox
119+ chmod -R +w $out
120+ '';
132121 calculateMaterializedSha =
133122 writeShellScript "calculateSha" ''${nix}/bin/nix-hash --base32 --type sha256 ${calculateNoHash}'';
134123
@@ -144,7 +133,6 @@ let
144133 fi
145134
146135 # Generate the files
147− mkdir -p $TARGET
148136 rm -rf $TARGET
149137 cp -r ${calculateNoHash} "$TARGET"
150138 chmod -R +w "$TARGET"
lib/pkgconf-nixpkgs-map.nix+17−28
@@ -21,18 +21,18 @@ pkgs:
2121 "cairo-ps" = [ pkgs."cairo" ];
2222 "cairo-svg" = [ pkgs."cairo" ];
2323 "crypt" = []; # provided by glibc
24+ "crypto" = [ pkgs."openssl" ];
2425 "curses" = [ pkgs."ncurses" ];
2526 "dbusmenu-glib-0.4" = [ pkgs."libdbusmenu" ];
2627 "dbusmenu-gtk3-0.4" = [ pkgs."libdbusmenu-gtk3" ]; # do we also need pkgs."gtk3"
2728 "dl" = []; # provided by glibc
2829 "fftw3" = [ pkgs."fftw" ];
2930 "fftw3f" = [ pkgs."fftwFloat" ];
30− "freetype2" = [ pkgs."freetype" ];
3131 "gconf" = [ pkgs."GConf" ];
3232 "gconf-2.0" = [ pkgs."GConf" ];
3333 "gdk-2.0" = [ pkgs."gtk2" ];
3434 "gdk-3.0" = [ pkgs."gtk3" ];
35− "gdk-pixbuf-2.0" = [ (pkgs."gdk-pixbuf" or pkgs."gdk_pixbuf") ];
35+ "gdk-pixbuf-2.0" = [ pkgs."gdk_pixbuf" ];
3636 "gdk-x11-2.0" = [ pkgs."gdk_x11" ];
3737 "gdk-x11-3.0" = [ pkgs."gtk3" ];
3838 "gio-2.0" = [ pkgs."glib" ];
@@ -45,9 +45,7 @@ pkgs:
4545 "gnome-vfs-2.0" = [ pkgs."gnome-vfs" ];
4646 "gnome-vfs-module-2.0" = [ pkgs."gnome-vfs_module" ];
4747 "gobject-2.0" = [ pkgs."glib" ];
48− "gmodule-2.0" = [ pkgs."glib" ];
4948 "gobject-introspection-1.0" = [ pkgs."gobject-introspection" ];
50− "graphene-gobject-1.0" = [ pkgs."graphene" ];
5149 "gstreamer-audio-0.10" = [ pkgs."gst-plugins-base" ];
5250 "gstreamer-audio-1.0" = [ pkgs."gst-plugins-base" ];
5351 "gstreamer-base-0.10" = [ pkgs."gst-plugins-base" ];
@@ -67,7 +65,6 @@ pkgs:
6765 "hidapi-libusb" = [ pkgs."hidapi" ];
6866 "icudata" = [ pkgs."icu" ];
6967 "icui18n" = [ pkgs."icu" ];
70− "icu-i18n" = [ pkgs."icu" ];
7168 "icuuc" = [ pkgs."icu" ];
7269 "idn" = [ pkgs."libidn" ];
7370 "IL" = [ pkgs."libdevil" ];
@@ -83,10 +80,7 @@ pkgs:
8380 "lber" = [ pkgs."openldap" ];
8481 "ldap" = [ pkgs."openldap" ];
8582 "libavutil" = [ pkgs."ffmpeg" ];
86− "libcrypto" = [ pkgs."openssl".dev ];
87− "libfreenect" = [ pkgs."freenect" ];
8883 "libgsasl" = [ pkgs."gsasl" ];
89− "liboath" = [ pkgs."liboauth" ];
9084 "libpcre" = [ pkgs."pcre" ];
9185 "libqrencode" = [ pkgs."qrencode" ];
9286 "libR" = [ pkgs."R" ];
@@ -94,14 +88,11 @@ pkgs:
9488 "libsecp256k1" = [ pkgs."secp256k1" ];
9589 "libsoup-2.4" = [ pkgs."libsoup" ];
9690 "libsoup-gnome-2.4" = [ pkgs."libsoup" ];
97− "libssl" = [ pkgs."openssl".dev ];
9891 "libsystemd" = [ pkgs."systemd" ];
9992 "libudev" = [ pkgs."systemd" ];
100− "libusb-1.0" = [ pkgs."libusb1" ];
10193 "libxml-2.0" = [ pkgs."libxml2" ];
10294 "libzip" = [ pkgs."libzip" ];
10395 "libzmq" = [ pkgs."zeromq" ];
104− "libzstd" = [ pkgs."zstd" ];
10596 "m" = []; # in stdenv
10697 "magic" = [ pkgs."file" ];
10798 "MagickWand" = [ pkgs."imagemagick" ];
@@ -122,9 +113,7 @@ pkgs:
122113 "pfs-1.2" = [ pkgs."pfstools" ];
123114 "png" = [ pkgs."libpng" ];
124115 "poppler-glib" = [ pkgs."poppler" ];
125− "poppler-cpp" = [ pkgs."poppler" ];
126116 "pq" = [ pkgs."postgresql" ];
127− "libpq" = [ pkgs."postgresql" ];
128117 "pthread" = [];
129118 "pulse" = [ pkgs."libpulseaudio" ];
130119 "pulse-simple" = [ pkgs."libpulseaudio" ];
@@ -146,6 +135,7 @@ pkgs:
146135 "sodium" = [ pkgs."libsodium" ];
147136 "sqlite3" = [ pkgs."sqlite" ];
148137 "ssh2" = [ pkgs."libssh2" ];
138+ "ssl" = [ pkgs."openssl" ];
149139 "statgrab" = [ pkgs."libstatgrab" ];
150140 "stdc++" = []; # What is that?
151141 "stdc++.dll" = []; # What is that?
@@ -164,24 +154,23 @@ pkgs:
164154 "webkit2gtk-4.0" = [ pkgs."webkitgtk" ];
165155 "webkit2gtk-web-extension-4.0" = [ pkgs."webkitgtk" ];
166156 "webkitgtk-3.0" = [ pkgs."webkitgtk24x-gtk3" ]; # These are the old APIs, of which 2.4 is the last provider, so map directly to that
167− "vulkan" = [ pkgs."vulkan-loader" ]; # vulkan-loader provides vulkan.pc file for pkg-config.
168− "X11" = [ pkgs.xorg."libX11" ];
169− "x11" = [ pkgs.xorg."xlibsWrapper" ];
170− "xau" = [ pkgs.xorg."libXau" ];
171− "Xcursor" = [ pkgs.xorg."libXcursor" ];
157+ "X11" = [ pkgs."libX11" ];
158+ "x11" = [ pkgs."xlibsWrapper" ];
159+ "xau" = [ pkgs."libXau" ];
160+ "Xcursor" = [ pkgs."libXcursor" ];
172161 "xerces-c" = [ pkgs."xercesc" ];
173− "Xext" = [ pkgs.xorg."libXext" ];
174− "xft" = [ pkgs.xorg."libXft" ];
175− "Xi" = [ pkgs.xorg."libXi" ];
176− "Xinerama" = [ pkgs.xorg."libXinerama" ];
162+ "Xext" = [ pkgs."libXext" ];
163+ "xft" = [ pkgs."libXft" ];
164+ "Xi" = [ pkgs."libXi" ];
165+ "Xinerama" = [ pkgs."libXinerama" ];
177166 "xkbcommon" = [ pkgs."libxkbcommon" ];
178167 "xml2" = [ pkgs."libxml2" ];
179− "Xpm" = [ pkgs.xorg."libXpm" ];
180− "Xrandr" = [ pkgs.xorg."libXrandr" ];
181− "Xrender" = [ pkgs.xorg."libXrender" ];
182− "Xss" = [ pkgs.xorg."libXScrnSaver" ];
183− "Xtst" = [ pkgs.xorg."libXtst" ];
184− "Xxf86vm" = [ pkgs.xorg."libXxf86vm" ];
168+ "Xpm" = [ pkgs."libXpm" ];
169+ "Xrandr" = [ pkgs."libXrandr" ];
170+ "Xrender" = [ pkgs."libXrender" ];
171+ "Xss" = [ pkgs."libXScrnSaver" ];
172+ "Xtst" = [ pkgs."libXtst" ];
173+ "Xxf86vm" = [ pkgs."libXxf86vm" ];
185174 "yaml" = [ pkgs."libyaml" ];
186175 "yaml-0.1" = [ pkgs."libyaml" ];
187176 "z" = [ pkgs."zlib" ];
lib/project-overlays.nixdeleted−37
@@ -1,37 +0,0 @@
1−{
2− lib
3−, haskellLib
4−}: {
5− # Provide a devshell profile (https://github.com/numtide/devshell),
6− # adapted from the project normal shell.
7− devshell = final: prev: {
8− devshell = let
9− in {
10− packages = final.shell.nativeBuildInputs
11− # devshell does not use pkgs.mkShell / pkgs.stdenv.mkDerivation,
12− # so we need to explicit required dependencies which
13− # are provided implicitely by stdenv when using the normal shell:
14− ++ (lib.filter lib.isDerivation final.shell.stdenv.defaultNativeBuildInputs)
15− ++ [ final.pkgs.buildPackages.binutils ];
16− env = lib.mapAttrsToList lib.nameValuePair {
17− inherit (final.shell) CABAL_CONFIG NIX_GHC_LIBDIR;
18− };
19− };
20− };
21−
22− # Provides easily accessible attrset for each type of
23− # components belonging to the project packages.
24− projectComponents = final: prev: {
25− # local project packages:
26− packages = haskellLib.selectProjectPackages final.hsPkgs;
27− # set of all exes (as first level entries):
28− exes = lib.foldl' lib.mergeAttrs { } (map (p: p.components.exes) (lib.attrValues final.packages));
29− # `tests` are the test suites which have been built.
30− tests = haskellLib.collectComponents' "tests" final.packages;
31− # `benchmarks` (only built, not run).
32− benchmarks = haskellLib.collectComponents' "benchmarks" final.packages;
33− # `checks` collect results of executing the tests:
34− checks = haskellLib.collectChecks' final.packages;
35− };
36−
37−}
lib/spdx/cabal.nixdeleted−19
@@ -1,19 +0,0 @@
1−let
2− spdx = import ./parser.nix;
3−in pkgs:
4−with builtins;
5−let
6− # For better performance these are not in the
7− # let block below (probably helps by increasing
8− # the sharing)
9− license-map = import ../cabal-licenses.nix pkgs;
10− otherLicenseWarning = lic:
11− trace "WARNING: license \"${lic}\" not found"
12− license-map.LicenseRef-OtherLicense;
13−in license:
14−let
15− licenses = spdx.compound-expression license;
16−in if licenses == []
17− then otherLicenseWarning license
18− else map (lic: license-map.${lic} or (otherLicenseWarning lic))
19− (pkgs.lib.unique (head licenses)._1)
lib/spdx/licenses.nixdeleted−27
@@ -1,27 +0,0 @@
1−pkgs:
2−with builtins; let
3− spdxJson = pkgs.buildPackages.spdx-license-list-data.json or pkgs.buildPackages.spdx-license-list-data;
4− materialized' = ../../materialized + "/spdx-${spdxJson.version}";
5− licensesJSON = fromJSON (replaceStrings
6− [ "\\u0026" "\\u0027" "\\u003d" ]
7− [ "&" "'" "=" ]
8− (readFile "${pkgs.buildPackages.haskell-nix.materialize {
9− materialized = if pathExists materialized' then materialized' else null;
10− } (pkgs.buildPackages.runCommand "spdx-json" { inherit (spdxJson) version; } ''
11− mkdir $out
12− cp ${spdxJson}/json/licenses.json $out
13− '')
14− }/licenses.json")
15− );
16− dropFour = s: substring 0 (stringLength s - 4) s;
17− toSpdx = lic: with lic;
18− { spdxId = licenseId;
19− shortName = licenseId;
20− fullName = name;
21− url = dropFour detailsUrl + "html";
22− free = isOsiApproved || lic.isFsfLibre or false;
23− };
24− toNamedValue = lic: { name = lic.spdxId; value = lic; };
25−in
26−
27−listToAttrs (map (l: toNamedValue (toSpdx l)) licensesJSON.licenses)
lib/spdx/parser.nixdeleted−115
@@ -1,115 +0,0 @@
1−let String = { mempty = ""; mappend = a: b: a + b; };
2− List = { singleton = x: [x]; };
3− pair = a: b: { _1 = a; _2 = b; };
4− Pair = { pure = s: pair String.mempty s;
5− mappend = a: b: pair (String.mappend a._1 b._1) b._2;
6− map = f: p: pair (f p._1) p._2;
7− };
8− compose = f: g: x: f (g x);
9−in with builtins; rec {
10− # Parser a = String -> [(a, String)]
11− string = str: s:
12− let strL = stringLength str;
13− sL = stringLength s;
14− in if str == substring 0 strL s
15− then [ (pair str (substring strL sL s)) ]
16− else [];
17−
18− regex = capture_groups: re: s:
19− let result = match "(${re})(.*)" s;
20− in if result == null
21− then []
22− else [ (pair (elemAt result 0) (elemAt result (1 + capture_groups))) ];
23−
24− # Left-biased choice
25− choice = cs: s:
26− if cs == []
27− then []
28− else let c = head cs;
29− cs' = tail cs;
30− result = c s;
31− in if result == []
32− then choice cs' s
33− else result;
34−
35− optional = p: s:
36− let result = p s;
37− in if result == []
38− then [ (Pair.pure s) ]
39− else result;
40−
41− chain = ps: s:
42− if ps == []
43− then [ (Pair.pure s) ]
44− else let p = head ps;
45− ps' = tail ps;
46− result = p s;
47− in if result == []
48− then []
49− else let r = head result;
50− rest = chain ps' r._2;
51− in if rest == []
52− then []
53− else let r' = head rest;
54− in [ (Pair.mappend r r') ];
55−
56− idstring = regex 0 "[-\.0-9a-zA-Z]+";
57−
58− license-ref = let documentref = chain [ (string "DocumentRef-")
59− idstring
60− (string ":")
61− ];
62− in chain [
63− (optional documentref)
64− (string "LicenseRef-")
65− idstring
66− ];
67−
68− simple-expression = choice [ license-ref
69− (chain [ idstring (string "+") ])
70− idstring
71− ];
72−
73− compound-expression = let wrap = compose (map (Pair.map List.singleton));
74− in choice [
75− (s: let result = simple-expression s;
76− in if result == []
77− then []
78− else let r = head result;
79− rest = chain [(string " WITH ") idstring ] r._2;
80− in if rest == []
81− then []
82− else [(pair r._1 (head rest)._2)]
83− )
84− (s: let result = simple-expression s;
85− in if result == []
86− then []
87− else let r = head result;
88− firstLicense = r._1;
89− operator = choice [ (string " AND ")
90− (string " OR ")
91− ]
92− r._2;
93− in if operator == []
94− then []
95− else let s' = (head operator)._2;
96− licenses = compound-expression s';
97− in if licenses == []
98− then []
99− else let ls = head licenses;
100− in [(pair ([firstLicense] ++ ls._1) ls._2)]
101− )
102− (wrap simple-expression)
103− (s: let openParen = string "(" s;
104− in if openParen == []
105− then []
106− else let result = compound-expression (head openParen)._2;
107− in if result == []
108− then []
109− else let r = head result;
110− closeParen = string ")" r._2;
111− in if closeParen == []
112− then []
113− else [(pair r._1 (head closeParen)._2)])
114− ];
115−}
lib/spdx/test.nixdeleted−32
@@ -1,32 +0,0 @@
1−let spdx = import ./parser.nix;
2−in {
3− idstringF = [ (spdx.idstring "$@#!$") ];
4− idstringP = [ (spdx.idstring "blah") ];
5−
6− license-refF = [ (spdx.license-ref "LicenseRef-$@#!$") ];
7− license-refP = [ (spdx.license-ref "LicenseRef-blah")
8− (spdx.license-ref "DocumentRef-beep:LicenseRef-boop")
9− ];
10−
11− simple-expressionF = [ (spdx.simple-expression "$@#!$") ];
12− simple-expressionP = [
13− (spdx.simple-expression "blah")
14− (spdx.simple-expression "blah+")
15− (spdx.simple-expression "LicenseRef-blah")
16− (spdx.simple-expression "DocumentRef-beep:LicenseRef-boop")
17− ];
18−
19− compound-expressionF = [ (spdx.compound-expression "$@#!$") ];
20− compound-expressionP = [
21− (spdx.compound-expression "blah")
22− (spdx.compound-expression "blah+")
23− (spdx.compound-expression "LicenseRef-blah")
24− (spdx.compound-expression "DocumentRef-beep:LicenseRef-boop")
25− (spdx.compound-expression "(blah)")
26− (spdx.compound-expression "beep OR boop")
27− (spdx.compound-expression "beep AND boop")
28− (spdx.compound-expression "beep WITH boop")
29− (spdx.compound-expression "beep AND (boop OR blap)")
30− (spdx.compound-expression "(beep AND ((boop OR ((blap)))))")
31− ];
32−}
lib/stack-cache-generator.nix+31−46
@@ -1,5 +1,6 @@
11# Generate cache entries for dependencies of package defined in `src`
22
3+{ pkgs, haskellLib }:
34{ src
45, stackYaml ? "stack.yaml"
56, sha256map ? null
@@ -8,22 +9,15 @@
89 # sha256map =
910 # { "https://github.com/jgm/pandoc-citeproc"."0.17"
1011 # = "0dxx8cp2xndpw3jwiawch2dkrkp15mil7pyx7dvd810pwc22pm2q"; };
11−, branchMap ? null
12− # A way to specify in which branch a git commit can
13− # be found
14−, lookupBranch ?
15− if branchMap != null
16− then { location, tag, ...}: branchMap."${location}"."${tag}" or null
12+, lookupSha256 ?
13+ if sha256map != null
14+ then { location, tag, ...}: sha256map."${location}"."${tag}"
1715 else _: null
1816, resolverSha256 ? null
19−, nix-tools
20−, evalPackages
17+, nix-tools ? pkgs.haskell-nix.internal-nix-tools # When building stack projects we use the internal nix-tools (compiled with a fixed GHC version)
2118, ...
22−}@args:
19+}:
2320let
24− inherit (evalPackages) runCommand;
25− inherit (evalPackages.haskell-nix) haskellLib;
26−
2721 # We only care about the stackYaml file. If src is a local directory
2822 # we want to avoid recalculating the cache unless the stack.yaml file
2923 # changes.
@@ -33,27 +27,20 @@ let
3327 }) resolver fetchedResolver;
3428
3529 # Filter just the stack yaml file and any resolver yaml file it points to.
36− maybeCleanedSource = haskellLib.cleanSourceWith {
37− inherit src;
38− filter = path: type:
39− let
40− origSrc = if src ? _isLibCleanSourceWith then src.origSrc else src;
41− origSubDir = if src ? _isLibCleanSourceWithEx then src.origSubDir else "";
42− relPath = evalPackages.lib.removePrefix (toString origSrc + origSubDir + "/") path;
43−
44− # checks if path1 is a parent directory for path2
45− isParent = path1: path2: evalPackages.lib.hasPrefix "${path1}/" path2;
46−
47− in
48− (relPath == stackYaml)
49− || (resolver != null && (relPath == resolver || isParent relPath resolver))
50− ;
51− };
30+ maybeCleanedSource =
31+ if haskellLib.canCleanSource src
32+ then haskellLib.cleanSourceWith {
33+ inherit src;
34+ filter = path: type:
35+ pkgs.lib.hasSuffix ("/" + stackYaml) path
36+ || (resolver != null && pkgs.lib.hasSuffix ("/" + resolver) path);
37+ }
38+ else src;
5239
5340 # All repos served via ssh or git protocols are usually private
54− private = url: evalPackages.lib.substring 0 4 url != "http";
41+ private = url: pkgs.lib.substring 0 4 url != "http";
5542
56− repos = builtins.fromJSON (builtins.readFile (evalPackages.runCommand "stack-repos" {
43+ repos = builtins.fromJSON (builtins.readFile (pkgs.runCommand "stack-repos" {
5744 buildInputs = [ nix-tools ];
5845 } ''
5946 TMP=$(mktemp -d)
@@ -61,43 +48,41 @@ let
6148 cp -r "${maybeCleanedSource}/." $TMP
6249 chmod -R +w $TMP
6350 substituteInPlace ${stackYaml} --replace "# nix-sha256:" "nix-sha256:"
64− ${evalPackages.lib.optionalString (fetchedResolver != null) ''
51+ ${pkgs.lib.optionalString (fetchedResolver != null) ''
6552 substituteInPlace ${stackYaml} --replace "${resolver}" "${fetchedResolver}"
6653 ''}
6754 stack-repos --stack-yaml ${stackYaml}
6855 cp repos.json $out
6956 ''));
7057
71− cabalName = path: builtins.readFile (evalPackages.runCommand "cabal-name" {
58+ cabalName = path: builtins.readFile (pkgs.runCommand "cabal-name" {
7259 buildInputs = [ nix-tools ];
7360 } ''
7461 cabal-name ${path} > $out
7562 '');
7663
7764 hashPath = path:
78− builtins.readFile (evalPackages.runCommand "hash-path" { preferLocalBuild = true; }
79− "echo -n $(${evalPackages.nix}/bin/nix-hash --type sha256 --base32 ${path}) > $out");
80−in with evalPackages.lib;
65+ builtins.readFile (pkgs.runCommand "hash-path" { preferLocalBuild = true; }
66+ "echo -n $(${pkgs.nix}/bin/nix-hash --type sha256 --base32 ${path}) > $out");
67+in with pkgs.lib;
8168concatMap (dep:
8269 let
8370 is-private = private dep.url;
84− sha256 =
85− if dep.sha256 != null then dep.sha256
86− else if sha256map != null then sha256map."${dep.url}"."${dep.rev}"
87− else null;
88− branch = lookupBranch {
89− location = dep.url;
90− tag = dep.rev;
91− };
71+ sha256 = if dep.sha256 != null
72+ then dep.sha256
73+ else lookupSha256 {
74+ location = dep.url;
75+ tag = dep.rev;
76+ };
9277 pkgsrc =
9378 if !is-private && sha256 != null
94− then evalPackages.fetchgit {
79+ then pkgs.fetchgit {
9580 inherit (dep) url rev;
9681 inherit sha256;
9782 }
98− else builtins.fetchGit ({
83+ else builtins.fetchGit {
9984 inherit (dep) url rev;
100− } // evalPackages.lib.optionalAttrs (branch != null) { ref = branch; });
85+ };
10186 in map (subdir: {
10287 name = cabalName "${pkgsrc}/${subdir}";
10388 inherit (dep) url rev;
lib/system-nixpkgs-map.nix+82−119
@@ -1,136 +1,99 @@
1−# Maps of system pkg references from cabal file to nixpkgs pkgs.
2−# library name (from `extra-libraries` field of `.cabal` file) -> nixpkgs package(s) mapping.
3−# This mapping is used to construct the `libs` component attribute.
4−# See ../docs/tutorials/pkg-map.md
1+# Maps of system pkg references from
2+# cabal file to nixpkgs pkgs.
3+# See ../docs/dev/pkg-map.md
54pkgs:
6−
7−with pkgs;
8−
9−let
10− # On windows systems we need these to be propagatedBuildInputs so that the DLLs will be found.
11− gcclibs = if pkgs.stdenv.hostPlatform.isWindows then [
12− pkgs.windows.mcfgthreads
13− # If we just use `pkgs.buildPackages.gcc.cc` here it breaks the `th-dlls` test. TODO figure out why exactly.
14− (pkgs.buildPackages.runCommand "gcc-only" { nativeBuildInputs = [ pkgs.buildPackages.xorg.lndir ]; } ''
15− mkdir $out
16− lndir ${pkgs.buildPackages.gcc.cc} $out
17− '')
18− ] else [];
19−in
5+# fetchgit should always come from the buildPackages
6+# if it comes from the targetPackages we won't even
7+# be able to execute it.
8+ { fetchgit = pkgs.buildPackages.fetchgit; }
9+# haskell lib -> nix lib mapping
2010# -- linux
21−{ crypto = [ openssl ];
22− "c++" = []; # no libc++
23− "stdc++" = gcclibs;
24− "stdc++-6" = gcclibs;
25− gcc_s_seh-1 = gcclibs;
26− gcc_s = gcclibs;
27− gcc = gcclibs;
28− ssl = [ openssl ];
29− z = [ zlib ];
30− m = []; # Included with ghc
31− pcap = [ libpcap ];
32− pthread = null; # available by default
33− GL = [ libGL ];
34− GLEW = [ glew ];
35− GLU = [ libGLU ];
36− alut = [ freealut ];
37− X11 = with xorg; [ libX11 ];
38− Xrandr = [ xorg.libXrandr ];
39− Xrender = [ xorg.libXrender ];
40− Xss = [ xorg.libXScrnSaver ];
41− Xext = [ xorg.libXext ];
42− Xi = [ xorg.libXi ];
43− Xxf86vm = [ xorg.libXxf86vm ];
44− Xcursor = [ xorg.libXcursor ];
45− Xinerama = [ xorg.libXinerama ];
46− mysqlclient = [ mysql ];
47− Imlib2 = [ imlib2 ];
48− asound = [ alsaLib ];
49− ffi = null;
50− bz2 = [ bzip2 ];
51− util = [ utillinux ];
52− magic = [ file ];
53− pq = [ postgresql ];
54− libpq = [ postgresql ];
55− iconv = [ libiconv ];
56− lapack = [ liblapack ];
57− boost_atomic = [ boost ];
58− boost_chrono = [ boost ];
59− boost_container = [ boost ];
60− boost_context = [ boost ];
61− boost_contract = [ boost ];
62− boost_coroutine = [ boost ];
63− boost_date_time = [ boost ];
64− boost_fiber = [ boost ];
65− boost_filesystem = [ boost ];
66− boost_graph = [ boost ];
67− boost_iostreams = [ boost ];
68− boost_locale = [ boost ];
69− boost_log_setup = [ boost ];
70− boost_log = [ boost ];
71− boost_math_c99f = [ boost ];
72− boost_math_c99l = [ boost ];
73− boost_math_c99 = [ boost ];
74− boost_math_tr1f = [ boost ];
75− boost_math_tr1l = [ boost ];
76− boost_math_tr1 = [ boost ];
77− boost_prg_exec_monitor = [ boost ];
78− boost_program_options = [ boost ];
79− boost_random = [ boost ];
80− boost_regex = [ boost ];
81− boost_serialization = [ boost ];
82− boost_signals = [ boost ];
83− boost_stacktrace_addr2line = [ boost ];
84− boost_stacktrace_basic = [ boost ];
85− boost_stacktrace_noop = [ boost ];
86− boost_system = [ boost ];
87− boost_thread = [ boost ];
88− boost_timer = [ boost ];
89− boost_type_erasure = [ boost ];
90− boost_unit_test_framework = [ boost ];
91− boost_wave = [ boost ];
92− boost_wserialization = [ boost ];
93− tensorflow = [ libtensorflow ];
94− # odbc package requires unixODBC packages to be installed in order to successfully
95− # compile C sources (https://github.com/fpco/odbc/blob/master/cbits/odbc.c)
96− odbc = [ unixODBC ];
97− opencv = [ opencv3 ];
98− icuuc = [ icu ];
99− icui18n = [ icu ];
100− icu-i18n = [ icu ];
101− icudata = [ icu ];
102− vulkan = [ vulkan-loader ];
103− sodium = [ libsodium ];
104− gfortran = [ gfortran.cc.lib ];
105− ssh2 = [ libssh2 ];
106− gpiod = [ libgpiod ];
107− png = [ libpng ];
108− jpeg = [ libjpeg ];
109− freenect_sync = [ freenect ];
110− FLAC = [ flac ];
111− mp3lame = [ lame ];
112− tag_c = [ taglib ];
113− jwt = [ libjwt ];
114− GeoIP = [ geoip ];
115− pulse-simple = [ libpulseaudio ];
116− oath = [ liboauth ];
117−}
11+// { crypto = pkgs.openssl;
12+ "c++" = null; # no libc++
13+ "stdc++" = null; "stdc++-6" = null;
14+ ssl = pkgs.openssl;
15+ z = pkgs.zlib;
16+ pthread = null; # available by default
17+ GL = pkgs.libGL;
18+ GLU = pkgs.libGLU;
19+ alut = pkgs.freealut;
20+ X11 = pkgs.xorg.libX11;
21+ Xrandr = pkgs.xorg.libXrandr;
22+ Xext = pkgs.xorg.libXext;
23+ Xi = pkgs.xorg.libXi;
24+ Xxf86vm = pkgs.xorg.libXxf86vm;
25+ Xcursor = pkgs.xorg.libXcursor;
26+ Xinerama = pkgs.xorg.libXinerama;
27+ mysqlclient = pkgs.mysql;
28+ Imlib2 = pkgs.imlib2;
29+ asound = pkgs.alsaLib;
30+ ffi = null;
31+ bz2 = pkgs.bzip2;
32+ util = pkgs.utillinux;
33+ magic = pkgs.file;
34+ pq = pkgs.postgresql;
35+ iconv = pkgs.libiconv;
36+ lapack = pkgs.liblapack;
37+ boost_atomic = pkgs.boost;
38+ boost_chrono = pkgs.boost;
39+ boost_container = pkgs.boost;
40+ boost_context = pkgs.boost;
41+ boost_contract = pkgs.boost;
42+ boost_coroutine = pkgs.boost;
43+ boost_date_time = pkgs.boost;
44+ boost_fiber = pkgs.boost;
45+ boost_filesystem = pkgs.boost;
46+ boost_graph = pkgs.boost;
47+ boost_iostreams = pkgs.boost;
48+ boost_locale = pkgs.boost;
49+ boost_log_setup = pkgs.boost;
50+ boost_log = pkgs.boost;
51+ boost_math_c99f = pkgs.boost;
52+ boost_math_c99l = pkgs.boost;
53+ boost_math_c99 = pkgs.boost;
54+ boost_math_tr1f = pkgs.boost;
55+ boost_math_tr1l = pkgs.boost;
56+ boost_math_tr1 = pkgs.boost;
57+ boost_prg_exec_monitor = pkgs.boost;
58+ boost_program_options = pkgs.boost;
59+ boost_random = pkgs.boost;
60+ boost_regex = pkgs.boost;
61+ boost_serialization = pkgs.boost;
62+ boost_signals = pkgs.boost;
63+ boost_stacktrace_addr2line = pkgs.boost;
64+ boost_stacktrace_basic = pkgs.boost;
65+ boost_stacktrace_noop = pkgs.boost;
66+ boost_system = pkgs.boost;
67+ boost_thread = pkgs.boost;
68+ boost_timer = pkgs.boost;
69+ boost_type_erasure = pkgs.boost;
70+ boost_unit_test_framework = pkgs.boost;
71+ boost_wave = pkgs.boost;
72+ boost_wserialization = pkgs.boost;
73+ tensorflow = pkgs.libtensorflow;
74+ opencv = pkgs.opencv3;
75+ icuuc = pkgs.icu;
76+ icui18n = pkgs.icu;
77+ icudata = pkgs.icu;
78+ vulkan = pkgs.vulkan-loader;
79+ sodium = pkgs.libsodium;
80+ gfortran = pkgs.gfortran.cc.lib;
81+ }
11882# -- windows
11983// { advapi32 = null; gdi32 = null; imm32 = null; msimg32 = null;
12084 shell32 = null; shfolder = null; shlwapi = null; user32 = null;
121− ole32 = null; rpcrt4 = null;
12285 winmm = null; userenv = null;
12386 kernel32 = null; ws2_32 = null;
12487 # this should be bundled with gcc.
12588 # if it's not we have more severe
12689 # issues anyway.
127− ssl32 = null; eay32 = [ openssl ];
90+ gcc_s_seh-1 = null;
91+ ssl32 = null; eay32 = pkgs.openssl;
12892 iphlpapi = null; # IP Help API
12993 msvcrt = null; # this is the libc
13094 Crypt32 = null;
13195 mswsock = null;
132− bcrypt = null;
13396 }
13497# -- os x
13598# NB: these map almost 1:1 to the framework names
136−// darwin.apple_sdk.frameworks
99+// pkgs.darwin.apple_sdk.frameworks
lib/system-pkgs.nixdeleted−16
@@ -1,16 +0,0 @@
1−# Cabal packages can depend on operating system packages. However
2−# package names vary between distributions - there is no standard.
3−#
4−# This file augments the nixpkgs package set with extra attributes
5−# from the system packages map file.
6−#
7−# This package set will be used when resolving system package
8−# dependencies of package descriptions.
9−
10−pkgs:
11−
12− # Base packages.
13− pkgs
14−
15− # Apply the mapping.
16− // import ./system-nixpkgs-map.nix pkgs
materialized/bootstrap/ghc8107/alex/.plan.nix/alex.nixdeleted−160
@@ -1,160 +0,0 @@
1−{ system
2− , compiler
3− , flags
4− , pkgs
5− , hsPkgs
6− , pkgconfPkgs
7− , errorHandler
8− , config
9− , ... }:
10− {
11− flags = { small_base = true; };
12− package = {
13− specVersion = "1.8";
14− identifier = { name = "alex"; version = "3.2.4"; };
15− license = "BSD-3-Clause";
16− copyright = "(c) Chis Dornan, Simon Marlow";
17− maintainer = "Simon Marlow <marlowsd@gmail.com>";
18− author = "Chris Dornan and Simon Marlow";
19− homepage = "http://www.haskell.org/alex/";
20− url = "";
21− synopsis = "Alex is a tool for generating lexical analysers in Haskell";
22− description = "Alex is a tool for generating lexical analysers in Haskell.\nIt takes a description of tokens based on regular\nexpressions and generates a Haskell module containing code\nfor scanning text efficiently. It is similar to the tool\nlex or flex for C/C++.";
23− buildType = "Simple";
24− isLocal = true;
25− detailLevel = "FullDetails";
26− licenseFiles = [ "LICENSE" ];
27− dataDir = "data/";
28− dataFiles = [
29− "AlexTemplate"
30− "AlexTemplate-ghc"
31− "AlexTemplate-ghc-nopred"
32− "AlexTemplate-ghc-debug"
33− "AlexTemplate-debug"
34− "AlexWrapper-basic"
35− "AlexWrapper-basic-bytestring"
36− "AlexWrapper-strict-bytestring"
37− "AlexWrapper-posn"
38− "AlexWrapper-posn-bytestring"
39− "AlexWrapper-monad"
40− "AlexWrapper-monad-bytestring"
41− "AlexWrapper-monadUserState"
42− "AlexWrapper-monadUserState-bytestring"
43− "AlexWrapper-gscan"
44− ];
45− extraSrcFiles = [
46− "CHANGELOG.md"
47− "README.md"
48− "TODO"
49− "alex.spec"
50− "doc/Makefile"
51− "doc/aclocal.m4"
52− "doc/alex.1.in"
53− "doc/alex.xml"
54− "doc/config.mk.in"
55− "doc/configure.ac"
56− "doc/docbook-xml.mk"
57− "doc/fptools.css"
58− "examples/Makefile"
59− "examples/Tokens.x"
60− "examples/Tokens_gscan.x"
61− "examples/Tokens_posn.x"
62− "examples/examples.x"
63− "examples/haskell.x"
64− "examples/lit.x"
65− "examples/pp.x"
66− "examples/state.x"
67− "examples/tiny.y"
68− "examples/words.x"
69− "examples/words_monad.x"
70− "examples/words_posn.x"
71− "src/Parser.y.boot"
72− "src/Scan.x.boot"
73− "src/ghc_hooks.c"
74− "templates/GenericTemplate.hs"
75− "templates/wrappers.hs"
76− "tests/Makefile"
77− "tests/simple.x"
78− "tests/null.x"
79− "tests/tokens.x"
80− "tests/tokens_gscan.x"
81− "tests/tokens_posn.x"
82− "tests/tokens_bytestring.x"
83− "tests/tokens_posn_bytestring.x"
84− "tests/tokens_scan_user.x"
85− "tests/tokens_strict_bytestring.x"
86− "tests/tokens_monad_bytestring.x"
87− "tests/tokens_monadUserState_bytestring.x"
88− "tests/tokens_bytestring_unicode.x"
89− "tests/basic_typeclass.x"
90− "tests/basic_typeclass_bytestring.x"
91− "tests/default_typeclass.x"
92− "tests/gscan_typeclass.x"
93− "tests/posn_typeclass.x"
94− "tests/monad_typeclass.x"
95− "tests/monad_typeclass_bytestring.x"
96− "tests/monadUserState_typeclass.x"
97− "tests/monadUserState_typeclass_bytestring.x"
98− "tests/posn_typeclass_bytestring.x"
99− "tests/strict_typeclass.x"
100− "tests/unicode.x"
101− ];
102− extraTmpFiles = [];
103− extraDocFiles = [];
104− };
105− components = {
106− exes = {
107− "alex" = {
108− depends = [
109− (hsPkgs."base" or (errorHandler.buildDepError "base"))
110− ] ++ (if flags.small_base
111− then [
112− (hsPkgs."base" or (errorHandler.buildDepError "base"))
113− (hsPkgs."array" or (errorHandler.buildDepError "array"))
114− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
115− (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
116− ]
117− else [ (hsPkgs."base" or (errorHandler.buildDepError "base")) ]);
118− buildable = true;
119− modules = [
120− "AbsSyn"
121− "CharSet"
122− "DFA"
123− "DFAMin"
124− "DFS"
125− "Info"
126− "Map"
127− "NFA"
128− "Output"
129− "Paths_alex"
130− "Parser"
131− "ParseMonad"
132− "Scan"
133− "Set"
134− "Sort"
135− "Util"
136− "UTF8"
137− "Data/Ranged"
138− "Data/Ranged/Boundaries"
139− "Data/Ranged/RangedSet"
140− "Data/Ranged/Ranges"
141− ];
142− hsSourceDirs = [ "src" ];
143− mainPath = [ "Main.hs" ] ++ [ "" ];
144− };
145− };
146− tests = {
147− "tests" = {
148− depends = [
149− (hsPkgs."base" or (errorHandler.buildDepError "base"))
150− (hsPkgs."process" or (errorHandler.buildDepError "process"))
151− ];
152− build-tools = [
153− (hsPkgs.buildPackages.alex.components.exes.alex or (pkgs.buildPackages.alex or (errorHandler.buildToolDepError "alex:alex")))
154− ];
155− buildable = true;
156− mainPath = [ "test.hs" ];
157− };
158− };
159− };
160− } // rec { src = (pkgs.lib).mkDefault ../.; }
materialized/bootstrap/ghc8107/alex/default.nixdeleted−69
@@ -1,69 +0,0 @@
1−{
2− pkgs = hackage:
3− {
4− packages = {
5− "ghc-prim".revision = (((hackage."ghc-prim")."0.6.1").revisions).default;
6− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
7− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.3.0").revisions).default;
8− "process".revision = (((hackage."process")."1.6.13.2").revisions).default;
9− "base".revision = (((hackage."base")."4.14.3.0").revisions).default;
10− "rts".revision = (((hackage."rts")."1.0.1").revisions).default;
11− "time".revision = (((hackage."time")."1.9.3").revisions).default;
12− "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
13− "bytestring".revision = (((hackage."bytestring")."0.10.12.0").revisions).default;
14− "containers".revision = (((hackage."containers")."0.6.5.1").revisions).default;
15− "directory".revision = (((hackage."directory")."1.3.6.0").revisions).default;
16− "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
17− "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
18− };
19− compiler = {
20− version = "8.10.7";
21− nix-name = "ghc8107";
22− packages = {
23− "ghc-prim" = "0.6.1";
24− "array" = "0.5.4.0";
25− "integer-gmp" = "1.0.3.0";
26− "process" = "1.6.13.2";
27− "base" = "4.14.3.0";
28− "rts" = "1.0.1";
29− "time" = "1.9.3";
30− "unix" = "2.7.2.2";
31− "bytestring" = "0.10.12.0";
32− "containers" = "0.6.5.1";
33− "directory" = "1.3.6.0";
34− "filepath" = "1.4.2.1";
35− "deepseq" = "1.4.4.0";
36− };
37− };
38− };
39− extras = hackage:
40− { packages = { alex = ./.plan.nix/alex.nix; }; };
41− modules = [
42− ({ lib, ... }:
43− {
44− packages = {
45− "alex" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
46− };
47− })
48− ({ lib, ... }:
49− {
50− packages = {
51− "containers".components.library.planned = lib.mkOverride 900 true;
52− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
53− "process".components.library.planned = lib.mkOverride 900 true;
54− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
55− "array".components.library.planned = lib.mkOverride 900 true;
56− "bytestring".components.library.planned = lib.mkOverride 900 true;
57− "unix".components.library.planned = lib.mkOverride 900 true;
58− "alex".components.exes."alex".planned = lib.mkOverride 900 true;
59− "base".components.library.planned = lib.mkOverride 900 true;
60− "rts".components.library.planned = lib.mkOverride 900 true;
61− "time".components.library.planned = lib.mkOverride 900 true;
62− "deepseq".components.library.planned = lib.mkOverride 900 true;
63− "filepath".components.library.planned = lib.mkOverride 900 true;
64− "directory".components.library.planned = lib.mkOverride 900 true;
65− "alex".components.tests."tests".planned = lib.mkOverride 900 true;
66− };
67− })
68− ];
69− }
materialized/bootstrap/ghc8107/happy-1.19.12/.plan.nix/happy.nixdeleted−200
@@ -1,200 +0,0 @@
1−{ system
2− , compiler
3− , flags
4− , pkgs
5− , hsPkgs
6− , pkgconfPkgs
7− , errorHandler
8− , config
9− , ... }:
10− {
11− flags = { small_base = true; };
12− package = {
13− specVersion = "1.8";
14− identifier = { name = "happy"; version = "1.19.12"; };
15− license = "BSD-2-Clause";
16− copyright = "(c) Andy Gill, Simon Marlow";
17− maintainer = "Simon Marlow <marlowsd@gmail.com>";
18− author = "Andy Gill and Simon Marlow";
19− homepage = "https://www.haskell.org/happy/";
20− url = "";
21− synopsis = "Happy is a parser generator for Haskell";
22− description = "Happy is a parser generator for Haskell. Given a grammar\nspecification in BNF, Happy generates Haskell code to parse the\ngrammar. Happy works in a similar way to the @yacc@ tool for C.";
23− buildType = "Simple";
24− isLocal = true;
25− detailLevel = "FullDetails";
26− licenseFiles = [ "LICENSE" ];
27− dataDir = "data/";
28− dataFiles = [
29− "HappyTemplate"
30− "HappyTemplate-arrays"
31− "HappyTemplate-arrays-coerce"
32− "HappyTemplate-arrays-coerce-debug"
33− "HappyTemplate-arrays-debug"
34− "HappyTemplate-arrays-ghc"
35− "HappyTemplate-arrays-ghc-debug"
36− "HappyTemplate-coerce"
37− "HappyTemplate-ghc"
38− "GLR_Base"
39− "GLR_Lib"
40− "GLR_Lib-ghc"
41− "GLR_Lib-ghc-debug"
42− ];
43− extraSrcFiles = [
44− "ANNOUNCE"
45− "CHANGES"
46− "Makefile"
47− "README.md"
48− "TODO"
49− "doc/Makefile"
50− "doc/aclocal.m4"
51− "doc/config.mk.in"
52− "doc/configure.ac"
53− "doc/docbook-xml.mk"
54− "doc/fptools.css"
55− "doc/happy.1.in"
56− "doc/happy.xml"
57− "examples/glr/nlp/Main.lhs"
58− "examples/glr/nlp/Makefile"
59− "examples/glr/nlp/README"
60− "examples/glr/nlp/English.y"
61− "examples/glr/nlp/Hugs.lhs"
62− "examples/glr/Makefile"
63− "examples/glr/Makefile.defs"
64− "examples/glr/expr-eval/Main.lhs"
65− "examples/glr/expr-eval/Makefile"
66− "examples/glr/expr-eval/Expr.y"
67− "examples/glr/expr-eval/README"
68− "examples/glr/expr-eval/Hugs.lhs"
69− "examples/glr/expr-tree/Main.lhs"
70− "examples/glr/expr-tree/Makefile"
71− "examples/glr/expr-tree/Expr.y"
72− "examples/glr/expr-tree/README"
73− "examples/glr/expr-tree/Tree.lhs"
74− "examples/glr/expr-tree/Hugs.lhs"
75− "examples/glr/highly-ambiguous/Main.lhs"
76− "examples/glr/highly-ambiguous/Makefile"
77− "examples/glr/highly-ambiguous/Expr.y"
78− "examples/glr/highly-ambiguous/README"
79− "examples/glr/highly-ambiguous/Hugs.lhs"
80− "examples/glr/hidden-leftrec/Main.lhs"
81− "examples/glr/hidden-leftrec/Makefile"
82− "examples/glr/hidden-leftrec/Expr.y"
83− "examples/glr/hidden-leftrec/README"
84− "examples/glr/hidden-leftrec/Hugs.lhs"
85− "examples/glr/expr-monad/Main.lhs"
86− "examples/glr/expr-monad/Makefile"
87− "examples/glr/expr-monad/Expr.y"
88− "examples/glr/expr-monad/README"
89− "examples/glr/expr-monad/Hugs.lhs"
90− "examples/glr/bio-eg/Main.lhs"
91− "examples/glr/bio-eg/Makefile"
92− "examples/glr/bio-eg/Bio.y"
93− "examples/glr/bio-eg/README"
94− "examples/glr/bio-eg/1-1200.dna"
95− "examples/glr/bio-eg/1-600.dna"
96− "examples/glr/common/DV_lhs"
97− "examples/glr/common/DaVinciTypes.hs"
98− "examples/glr/packing/Main.lhs"
99− "examples/glr/packing/Makefile"
100− "examples/glr/packing/Expr.y"
101− "examples/glr/packing/README"
102− "examples/glr/packing/Hugs.lhs"
103− "examples/PgnParser.ly"
104− "examples/MonadTest.ly"
105− "examples/igloo/ParserM.hs"
106− "examples/igloo/Makefile"
107− "examples/igloo/Parser.y"
108− "examples/igloo/Foo.hs"
109− "examples/igloo/README"
110− "examples/igloo/Lexer.x"
111− "examples/README"
112− "examples/Calc.ly"
113− "examples/DavesExample.ly"
114− "examples/ErrorTest.ly"
115− "examples/ErlParser.ly"
116− "examples/SimonsExample.ly"
117− "examples/LexerTest.ly"
118− "happy.spec"
119− "src/ARRAY-NOTES"
120− "tests/AttrGrammar001.y"
121− "tests/AttrGrammar002.y"
122− "tests/Makefile"
123− "tests/Partial.ly"
124− "tests/Test.ly"
125− "tests/TestMulti.ly"
126− "tests/TestPrecedence.ly"
127− "tests/bogus-token.y"
128− "tests/bug001.ly"
129− "tests/bug002.y"
130− "tests/error001.stderr"
131− "tests/error001.stdout"
132− "tests/error001.y"
133− "tests/monad001.y"
134− "tests/monad002.ly"
135− "tests/monaderror.y"
136− "tests/precedence001.ly"
137− "tests/precedence002.y"
138− "tests/test_rules.y"
139− "tests/issue91.y"
140− "tests/issue93.y"
141− "tests/issue94.y"
142− "tests/issue95.y"
143− "tests/monaderror-explist.y"
144− "tests/typeclass_monad001.y"
145− "tests/typeclass_monad002.ly"
146− "tests/typeclass_monad_lexer.y"
147− "tests/rank2.y"
148− ];
149− extraTmpFiles = [];
150− extraDocFiles = [];
151− };
152− components = {
153− exes = {
154− "happy" = {
155− depends = [
156− (hsPkgs."base" or (errorHandler.buildDepError "base"))
157− (hsPkgs."array" or (errorHandler.buildDepError "array"))
158− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
159− (hsPkgs."mtl" or (errorHandler.buildDepError "mtl"))
160− ];
161− buildable = true;
162− modules = [
163− "Paths_happy"
164− "AbsSyn"
165− "First"
166− "GenUtils"
167− "Grammar"
168− "Info"
169− "LALR"
170− "Lexer"
171− "ParseMonad"
172− "Parser"
173− "ProduceCode"
174− "ProduceGLRCode"
175− "NameSet"
176− "Target"
177− "AttrGrammar"
178− "AttrGrammarParser"
179− "ParamRules"
180− "PrettyGrammar"
181− ];
182− hsSourceDirs = [ "src" ];
183− mainPath = [ "Main.lhs" ];
184− };
185− };
186− tests = {
187− "tests" = {
188− depends = [
189− (hsPkgs."base" or (errorHandler.buildDepError "base"))
190− (hsPkgs."process" or (errorHandler.buildDepError "process"))
191− ];
192− build-tools = [
193− (hsPkgs.buildPackages.happy.components.exes.happy or (pkgs.buildPackages.happy or (errorHandler.buildToolDepError "happy:happy")))
194− ];
195− buildable = true;
196− mainPath = [ "test.hs" ];
197− };
198− };
199− };
200− } // rec { src = (pkgs.lib).mkDefault ../.; }
materialized/bootstrap/ghc8107/happy-1.19.12/default.nixdeleted−75
@@ -1,75 +0,0 @@
1−{
2− pkgs = hackage:
3− {
4− packages = {
5− "ghc-prim".revision = (((hackage."ghc-prim")."0.6.1").revisions).default;
6− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
7− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.3.0").revisions).default;
8− "process".revision = (((hackage."process")."1.6.13.2").revisions).default;
9− "base".revision = (((hackage."base")."4.14.3.0").revisions).default;
10− "rts".revision = (((hackage."rts")."1.0.1").revisions).default;
11− "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
12− "time".revision = (((hackage."time")."1.9.3").revisions).default;
13− "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
14− "bytestring".revision = (((hackage."bytestring")."0.10.12.0").revisions).default;
15− "containers".revision = (((hackage."containers")."0.6.5.1").revisions).default;
16− "directory".revision = (((hackage."directory")."1.3.6.0").revisions).default;
17− "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
18− "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
19− "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
20− };
21− compiler = {
22− version = "8.10.7";
23− nix-name = "ghc8107";
24− packages = {
25− "ghc-prim" = "0.6.1";
26− "array" = "0.5.4.0";
27− "integer-gmp" = "1.0.3.0";
28− "process" = "1.6.13.2";
29− "base" = "4.14.3.0";
30− "rts" = "1.0.1";
31− "mtl" = "2.2.2";
32− "time" = "1.9.3";
33− "unix" = "2.7.2.2";
34− "bytestring" = "0.10.12.0";
35− "containers" = "0.6.5.1";
36− "directory" = "1.3.6.0";
37− "filepath" = "1.4.2.1";
38− "deepseq" = "1.4.4.0";
39− "transformers" = "0.5.6.2";
40− };
41− };
42− };
43− extras = hackage:
44− { packages = { happy = ./.plan.nix/happy.nix; }; };
45− modules = [
46− ({ lib, ... }:
47− {
48− packages = {
49− "happy" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
50− };
51− })
52− ({ lib, ... }:
53− {
54− packages = {
55− "containers".components.library.planned = lib.mkOverride 900 true;
56− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
57− "happy".components.exes."happy".planned = lib.mkOverride 900 true;
58− "transformers".components.library.planned = lib.mkOverride 900 true;
59− "process".components.library.planned = lib.mkOverride 900 true;
60− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
61− "array".components.library.planned = lib.mkOverride 900 true;
62− "bytestring".components.library.planned = lib.mkOverride 900 true;
63− "unix".components.library.planned = lib.mkOverride 900 true;
64− "base".components.library.planned = lib.mkOverride 900 true;
65− "rts".components.library.planned = lib.mkOverride 900 true;
66− "mtl".components.library.planned = lib.mkOverride 900 true;
67− "time".components.library.planned = lib.mkOverride 900 true;
68− "deepseq".components.library.planned = lib.mkOverride 900 true;
69− "filepath".components.library.planned = lib.mkOverride 900 true;
70− "happy".components.tests."tests".planned = lib.mkOverride 900 true;
71− "directory".components.library.planned = lib.mkOverride 900 true;
72− };
73− })
74− ];
75− }
materialized/bootstrap/ghc8107/hscolour/.plan.nix/hscolour.nixdeleted−70
@@ -1,70 +0,0 @@
1−{ system
2− , compiler
3− , flags
4− , pkgs
5− , hsPkgs
6− , pkgconfPkgs
7− , errorHandler
8− , config
9− , ... }:
10− {
11− flags = {};
12− package = {
13− specVersion = "1.6";
14− identifier = { name = "hscolour"; version = "1.24.4"; };
15− license = "LicenseRef-LGPL";
16− copyright = "2003-2017 Malcolm Wallace; 2006 Bjorn Bringert";
17− maintainer = "Malcolm Wallace";
18− author = "Malcolm Wallace";
19− homepage = "http://code.haskell.org/~malcolm/hscolour/";
20− url = "";
21− synopsis = "Colourise Haskell code.";
22− description = "hscolour is a small Haskell script to colourise Haskell code. It currently\nhas six output formats:\nANSI terminal codes (optionally XTerm-256colour codes),\nHTML 3.2 with <font> tags,\nHTML 4.01 with CSS,\nHTML 4.01 with CSS and mouseover annotations,\nXHTML 1.0 with inline CSS styling,\nLaTeX,\nand mIRC chat codes.";
23− buildType = "Simple";
24− isLocal = true;
25− detailLevel = "FullDetails";
26− licenseFiles = [ "LICENCE-LGPL" ];
27− dataDir = ".";
28− dataFiles = [ "hscolour.css" "data/rgb24-example-.hscolour" ];
29− extraSrcFiles = [];
30− extraTmpFiles = [];
31− extraDocFiles = [];
32− };
33− components = {
34− "library" = {
35− depends = [
36− (hsPkgs."base" or (errorHandler.buildDepError "base"))
37− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
38− ];
39− buildable = true;
40− modules = [
41− "Language/Haskell/HsColour"
42− "Language/Haskell/HsColour/ANSI"
43− "Language/Haskell/HsColour/Anchors"
44− "Language/Haskell/HsColour/ACSS"
45− "Language/Haskell/HsColour/CSS"
46− "Language/Haskell/HsColour/Classify"
47− "Language/Haskell/HsColour/ColourHighlight"
48− "Language/Haskell/HsColour/Colourise"
49− "Language/Haskell/HsColour/General"
50− "Language/Haskell/HsColour/HTML"
51− "Language/Haskell/HsColour/InlineCSS"
52− "Language/Haskell/HsColour/LaTeX"
53− "Language/Haskell/HsColour/MIRC"
54− "Language/Haskell/HsColour/Options"
55− "Language/Haskell/HsColour/Output"
56− "Language/Haskell/HsColour/TTY"
57− ];
58− };
59− exes = {
60− "HsColour" = {
61− depends = [
62− (hsPkgs."base" or (errorHandler.buildDepError "base"))
63− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
64− ];
65− buildable = true;
66− mainPath = [ "HsColour.hs" ];
67− };
68− };
69− };
70− } // rec { src = (pkgs.lib).mkDefault ../.; }
materialized/bootstrap/ghc8107/hscolour/default.nixdeleted−47
@@ -1,47 +0,0 @@
1−{
2− pkgs = hackage:
3− {
4− packages = {
5− "ghc-prim".revision = (((hackage."ghc-prim")."0.6.1").revisions).default;
6− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
7− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.3.0").revisions).default;
8− "base".revision = (((hackage."base")."4.14.3.0").revisions).default;
9− "rts".revision = (((hackage."rts")."1.0.1").revisions).default;
10− "containers".revision = (((hackage."containers")."0.6.5.1").revisions).default;
11− "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
12− };
13− compiler = {
14− version = "8.10.7";
15− nix-name = "ghc8107";
16− packages = {
17− "ghc-prim" = "0.6.1";
18− "array" = "0.5.4.0";
19− "integer-gmp" = "1.0.3.0";
20− "base" = "4.14.3.0";
21− "rts" = "1.0.1";
22− "containers" = "0.6.5.1";
23− "deepseq" = "1.4.4.0";
24− };
25− };
26− };
27− extras = hackage:
28− { packages = { hscolour = ./.plan.nix/hscolour.nix; }; };
29− modules = [
30− ({ lib, ... }:
31− { packages = { "hscolour" = { flags = {}; }; }; })
32− ({ lib, ... }:
33− {
34− packages = {
35− "containers".components.library.planned = lib.mkOverride 900 true;
36− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
37− "hscolour".components.exes."HsColour".planned = lib.mkOverride 900 true;
38− "hscolour".components.library.planned = lib.mkOverride 900 true;
39− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
40− "array".components.library.planned = lib.mkOverride 900 true;
41− "base".components.library.planned = lib.mkOverride 900 true;
42− "rts".components.library.planned = lib.mkOverride 900 true;
43− "deepseq".components.library.planned = lib.mkOverride 900 true;
44− };
45− })
46− ];
47− }
materialized/bootstrap/ghc844/alex/.plan.nix/alex.nix+1−1
@@ -150,7 +150,7 @@
150150 (hsPkgs."process" or (errorHandler.buildDepError "process"))
151151 ];
152152 build-tools = [
153− (hsPkgs.buildPackages.alex.components.exes.alex or (pkgs.buildPackages.alex or (errorHandler.buildToolDepError "alex:alex")))
153+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (errorHandler.buildToolDepError "alex")))
154154 ];
155155 buildable = true;
156156 mainPath = [ "test.hs" ];
materialized/bootstrap/ghc844/alex/default.nix+18−34
@@ -3,34 +3,36 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.2.0").revisions).default;
6− "array".revision = (((hackage."array")."0.5.2.0").revisions).default;
7− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
8− "base".revision = (((hackage."base")."4.11.1.0").revisions).default;
9− "rts".revision = (((hackage."rts")."1.0").revisions).default;
10− "time".revision = (((hackage."time")."1.8.0.2").revisions).default;
116 "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
12− "bytestring".revision = (((hackage."bytestring")."0.10.8.2").revisions).default;
13− "containers".revision = (((hackage."containers")."0.5.11.0").revisions).default;
7+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
8+ "deepseq".revision = (((hackage."deepseq")."1.4.3.0").revisions).default;
149 "directory".revision = (((hackage."directory")."1.3.1.5").revisions).default;
10+ "containers".revision = (((hackage."containers")."0.5.11.0").revisions).default;
11+ "bytestring".revision = (((hackage."bytestring")."0.10.8.2").revisions).default;
12+ "base".revision = (((hackage."base")."4.11.1.0").revisions).default;
13+ "time".revision = (((hackage."time")."1.8.0.2").revisions).default;
1514 "filepath".revision = (((hackage."filepath")."1.4.2").revisions).default;
16− "deepseq".revision = (((hackage."deepseq")."1.4.3.0").revisions).default;
15+ "process".revision = (((hackage."process")."1.6.3.0").revisions).default;
16+ "array".revision = (((hackage."array")."0.5.2.0").revisions).default;
17+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
1718 };
1819 compiler = {
1920 version = "8.4.4";
2021 nix-name = "ghc844";
2122 packages = {
2223 "ghc-prim" = "0.5.2.0";
23− "array" = "0.5.2.0";
24− "integer-gmp" = "1.0.2.0";
25− "base" = "4.11.1.0";
26− "rts" = "1.0";
27− "time" = "1.8.0.2";
2824 "unix" = "2.7.2.2";
29− "bytestring" = "0.10.8.2";
30− "containers" = "0.5.11.0";
25+ "rts" = "1.0";
26+ "deepseq" = "1.4.3.0";
3127 "directory" = "1.3.1.5";
28+ "containers" = "0.5.11.0";
29+ "bytestring" = "0.10.8.2";
30+ "base" = "4.11.1.0";
31+ "time" = "1.8.0.2";
3232 "filepath" = "1.4.2";
33− "deepseq" = "1.4.3.0";
33+ "process" = "1.6.3.0";
34+ "array" = "0.5.2.0";
35+ "integer-gmp" = "1.0.2.0";
3436 };
3537 };
3638 };
@@ -43,23 +45,5 @@
4345 "alex" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
4446 };
4547 })
46− ({ lib, ... }:
47− {
48− packages = {
49− "containers".components.library.planned = lib.mkOverride 900 true;
50− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
51− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
52− "array".components.library.planned = lib.mkOverride 900 true;
53− "bytestring".components.library.planned = lib.mkOverride 900 true;
54− "unix".components.library.planned = lib.mkOverride 900 true;
55− "alex".components.exes."alex".planned = lib.mkOverride 900 true;
56− "base".components.library.planned = lib.mkOverride 900 true;
57− "rts".components.library.planned = lib.mkOverride 900 true;
58− "time".components.library.planned = lib.mkOverride 900 true;
59− "deepseq".components.library.planned = lib.mkOverride 900 true;
60− "filepath".components.library.planned = lib.mkOverride 900 true;
61− "directory".components.library.planned = lib.mkOverride 900 true;
62− };
63− })
6448 ];
6549 }
materialized/bootstrap/ghc844/happy-1.19.11/.plan.nix/happy.nix+5−5
@@ -23,14 +23,14 @@
2323 buildType = "Custom";
2424 isLocal = true;
2525 setup-depends = [
26− (hsPkgs.buildPackages.Cabal or (pkgs.buildPackages.Cabal or (errorHandler.setupDepError "Cabal")))
27− (hsPkgs.buildPackages.base or (pkgs.buildPackages.base or (errorHandler.setupDepError "base")))
28− (hsPkgs.buildPackages.directory or (pkgs.buildPackages.directory or (errorHandler.setupDepError "directory")))
29− (hsPkgs.buildPackages.filepath or (pkgs.buildPackages.filepath or (errorHandler.setupDepError "filepath")))
26+ (hsPkgs.buildPackages.Cabal or (pkgs.buildPackages.Cabal or (errorHandler.buildToolDepError "Cabal")))
27+ (hsPkgs.buildPackages.base or (pkgs.buildPackages.base or (errorHandler.buildToolDepError "base")))
28+ (hsPkgs.buildPackages.directory or (pkgs.buildPackages.directory or (errorHandler.buildToolDepError "directory")))
29+ (hsPkgs.buildPackages.filepath or (pkgs.buildPackages.filepath or (errorHandler.buildToolDepError "filepath")))
3030 ];
3131 detailLevel = "FullDetails";
3232 licenseFiles = [ "LICENSE" ];
33− dataDir = ".";
33+ dataDir = "";
3434 dataFiles = [];
3535 extraSrcFiles = [
3636 "ANNOUNCE"
materialized/bootstrap/ghc844/happy-1.19.11/default.nix+28−55
@@ -4,24 +4,24 @@
44 packages = {
55 "binary".revision = (((hackage."binary")."0.8.5.1").revisions).default;
66 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.2.0").revisions).default;
7− "array".revision = (((hackage."array")."0.5.2.0").revisions).default;
8− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
9− "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
10− "process".revision = (((hackage."process")."1.6.3.0").revisions).default;
11− "base".revision = (((hackage."base")."4.11.1.0").revisions).default;
7+ "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
8+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
129 "rts".revision = (((hackage."rts")."1.0").revisions).default;
10+ "deepseq".revision = (((hackage."deepseq")."1.4.3.0").revisions).default;
11+ "parsec".revision = (((hackage."parsec")."3.1.13.0").revisions).default;
12+ "directory".revision = (((hackage."directory")."1.3.1.5").revisions).default;
13+ "containers".revision = (((hackage."containers")."0.5.11.0").revisions).default;
14+ "bytestring".revision = (((hackage."bytestring")."0.10.8.2").revisions).default;
1315 "text".revision = (((hackage."text")."1.2.3.1").revisions).default;
14− "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
16+ "Cabal".revision = (((hackage."Cabal")."2.2.0.1").revisions).default;
17+ "base".revision = (((hackage."base")."4.11.1.0").revisions).default;
1518 "time".revision = (((hackage."time")."1.8.0.2").revisions).default;
16− "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
17− "bytestring".revision = (((hackage."bytestring")."0.10.8.2").revisions).default;
18− "containers".revision = (((hackage."containers")."0.5.11.0").revisions).default;
19− "directory".revision = (((hackage."directory")."1.3.1.5").revisions).default;
20− "parsec".revision = (((hackage."parsec")."3.1.13.0").revisions).default;
21− "filepath".revision = (((hackage."filepath")."1.4.2").revisions).default;
22− "deepseq".revision = (((hackage."deepseq")."1.4.3.0").revisions).default;
2319 "transformers".revision = (((hackage."transformers")."0.5.5.0").revisions).default;
24− "Cabal".revision = (((hackage."Cabal")."2.2.0.1").revisions).default;
20+ "filepath".revision = (((hackage."filepath")."1.4.2").revisions).default;
21+ "process".revision = (((hackage."process")."1.6.3.0").revisions).default;
22+ "pretty".revision = (((hackage."pretty")."1.1.3.6").revisions).default;
23+ "array".revision = (((hackage."array")."0.5.2.0").revisions).default;
24+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
2525 };
2626 compiler = {
2727 version = "8.4.4";
@@ -29,24 +29,24 @@
2929 packages = {
3030 "binary" = "0.8.5.1";
3131 "ghc-prim" = "0.5.2.0";
32− "array" = "0.5.2.0";
33− "integer-gmp" = "1.0.2.0";
34− "pretty" = "1.1.3.6";
35− "process" = "1.6.3.0";
36− "base" = "4.11.1.0";
32+ "unix" = "2.7.2.2";
33+ "mtl" = "2.2.2";
3734 "rts" = "1.0";
35+ "deepseq" = "1.4.3.0";
36+ "parsec" = "3.1.13.0";
37+ "directory" = "1.3.1.5";
38+ "containers" = "0.5.11.0";
39+ "bytestring" = "0.10.8.2";
3840 "text" = "1.2.3.1";
39− "mtl" = "2.2.2";
41+ "Cabal" = "2.2.0.1";
42+ "base" = "4.11.1.0";
4043 "time" = "1.8.0.2";
41− "unix" = "2.7.2.2";
42− "bytestring" = "0.10.8.2";
43− "containers" = "0.5.11.0";
44− "directory" = "1.3.1.5";
45− "parsec" = "3.1.13.0";
46− "filepath" = "1.4.2";
47− "deepseq" = "1.4.3.0";
4844 "transformers" = "0.5.5.0";
49− "Cabal" = "2.2.0.1";
45+ "filepath" = "1.4.2";
46+ "process" = "1.6.3.0";
47+ "pretty" = "1.1.3.6";
48+ "array" = "0.5.2.0";
49+ "integer-gmp" = "1.0.2.0";
5050 };
5151 };
5252 };
@@ -59,32 +59,5 @@
5959 "happy" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
6060 };
6161 })
62− ({ lib, ... }:
63− {
64− packages = {
65− "containers".components.library.planned = lib.mkOverride 900 true;
66− "binary".components.library.planned = lib.mkOverride 900 true;
67− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
68− "happy".components.exes."happy".planned = lib.mkOverride 900 true;
69− "Cabal".components.library.planned = lib.mkOverride 900 true;
70− "transformers".components.library.planned = lib.mkOverride 900 true;
71− "process".components.library.planned = lib.mkOverride 900 true;
72− "pretty".components.library.planned = lib.mkOverride 900 true;
73− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
74− "array".components.library.planned = lib.mkOverride 900 true;
75− "bytestring".components.library.planned = lib.mkOverride 900 true;
76− "unix".components.library.planned = lib.mkOverride 900 true;
77− "text".components.library.planned = lib.mkOverride 900 true;
78− "base".components.library.planned = lib.mkOverride 900 true;
79− "rts".components.library.planned = lib.mkOverride 900 true;
80− "mtl".components.library.planned = lib.mkOverride 900 true;
81− "time".components.library.planned = lib.mkOverride 900 true;
82− "happy".components.setup.planned = lib.mkOverride 900 true;
83− "deepseq".components.library.planned = lib.mkOverride 900 true;
84− "filepath".components.library.planned = lib.mkOverride 900 true;
85− "parsec".components.library.planned = lib.mkOverride 900 true;
86− "directory".components.library.planned = lib.mkOverride 900 true;
87− };
88− })
8962 ];
9063 }
materialized/bootstrap/ghc844/happy-1.19.12/.plan.nix/happy.nix+1−1
@@ -190,7 +190,7 @@
190190 (hsPkgs."process" or (errorHandler.buildDepError "process"))
191191 ];
192192 build-tools = [
193− (hsPkgs.buildPackages.happy.components.exes.happy or (pkgs.buildPackages.happy or (errorHandler.buildToolDepError "happy:happy")))
193+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (errorHandler.buildToolDepError "happy")))
194194 ];
195195 buildable = true;
196196 mainPath = [ "test.hs" ];
materialized/bootstrap/ghc844/happy-1.19.12/default.nix+22−25
@@ -3,28 +3,40 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.2.0").revisions).default;
6− "array".revision = (((hackage."array")."0.5.2.0").revisions).default;
7− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
8− "base".revision = (((hackage."base")."4.11.1.0").revisions).default;
9− "rts".revision = (((hackage."rts")."1.0").revisions).default;
6+ "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
107 "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
11− "containers".revision = (((hackage."containers")."0.5.11.0").revisions).default;
8+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
129 "deepseq".revision = (((hackage."deepseq")."1.4.3.0").revisions).default;
10+ "directory".revision = (((hackage."directory")."1.3.1.5").revisions).default;
11+ "containers".revision = (((hackage."containers")."0.5.11.0").revisions).default;
12+ "bytestring".revision = (((hackage."bytestring")."0.10.8.2").revisions).default;
13+ "base".revision = (((hackage."base")."4.11.1.0").revisions).default;
14+ "time".revision = (((hackage."time")."1.8.0.2").revisions).default;
1315 "transformers".revision = (((hackage."transformers")."0.5.5.0").revisions).default;
16+ "filepath".revision = (((hackage."filepath")."1.4.2").revisions).default;
17+ "process".revision = (((hackage."process")."1.6.3.0").revisions).default;
18+ "array".revision = (((hackage."array")."0.5.2.0").revisions).default;
19+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
1420 };
1521 compiler = {
1622 version = "8.4.4";
1723 nix-name = "ghc844";
1824 packages = {
1925 "ghc-prim" = "0.5.2.0";
20− "array" = "0.5.2.0";
21− "integer-gmp" = "1.0.2.0";
22− "base" = "4.11.1.0";
23− "rts" = "1.0";
26+ "unix" = "2.7.2.2";
2427 "mtl" = "2.2.2";
25− "containers" = "0.5.11.0";
28+ "rts" = "1.0";
2629 "deepseq" = "1.4.3.0";
30+ "directory" = "1.3.1.5";
31+ "containers" = "0.5.11.0";
32+ "bytestring" = "0.10.8.2";
33+ "base" = "4.11.1.0";
34+ "time" = "1.8.0.2";
2735 "transformers" = "0.5.5.0";
36+ "filepath" = "1.4.2";
37+ "process" = "1.6.3.0";
38+ "array" = "0.5.2.0";
39+ "integer-gmp" = "1.0.2.0";
2840 };
2941 };
3042 };
@@ -37,20 +49,5 @@
3749 "happy" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
3850 };
3951 })
40− ({ lib, ... }:
41− {
42− packages = {
43− "containers".components.library.planned = lib.mkOverride 900 true;
44− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
45− "happy".components.exes."happy".planned = lib.mkOverride 900 true;
46− "transformers".components.library.planned = lib.mkOverride 900 true;
47− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
48− "array".components.library.planned = lib.mkOverride 900 true;
49− "base".components.library.planned = lib.mkOverride 900 true;
50− "rts".components.library.planned = lib.mkOverride 900 true;
51− "mtl".components.library.planned = lib.mkOverride 900 true;
52− "deepseq".components.library.planned = lib.mkOverride 900 true;
53− };
54− })
5552 ];
5653 }
materialized/bootstrap/ghc844/hscolour/.plan.nix/hscolour.nix+1−1
@@ -24,7 +24,7 @@
2424 isLocal = true;
2525 detailLevel = "FullDetails";
2626 licenseFiles = [ "LICENCE-LGPL" ];
27− dataDir = ".";
27+ dataDir = "";
2828 dataFiles = [ "hscolour.css" "data/rgb24-example-.hscolour" ];
2929 extraSrcFiles = [];
3030 extraTmpFiles = [];
materialized/bootstrap/ghc844/hscolour/default.nix+8−22
@@ -3,24 +3,24 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.2.0").revisions).default;
6− "array".revision = (((hackage."array")."0.5.2.0").revisions).default;
7− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
8− "base".revision = (((hackage."base")."4.11.1.0").revisions).default;
96 "rts".revision = (((hackage."rts")."1.0").revisions).default;
10− "containers".revision = (((hackage."containers")."0.5.11.0").revisions).default;
117 "deepseq".revision = (((hackage."deepseq")."1.4.3.0").revisions).default;
8+ "containers".revision = (((hackage."containers")."0.5.11.0").revisions).default;
9+ "base".revision = (((hackage."base")."4.11.1.0").revisions).default;
10+ "array".revision = (((hackage."array")."0.5.2.0").revisions).default;
11+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
1212 };
1313 compiler = {
1414 version = "8.4.4";
1515 nix-name = "ghc844";
1616 packages = {
1717 "ghc-prim" = "0.5.2.0";
18− "array" = "0.5.2.0";
19− "integer-gmp" = "1.0.2.0";
20− "base" = "4.11.1.0";
2118 "rts" = "1.0";
22− "containers" = "0.5.11.0";
2319 "deepseq" = "1.4.3.0";
20+ "containers" = "0.5.11.0";
21+ "base" = "4.11.1.0";
22+ "array" = "0.5.2.0";
23+ "integer-gmp" = "1.0.2.0";
2424 };
2525 };
2626 };
@@ -29,19 +29,5 @@
2929 modules = [
3030 ({ lib, ... }:
3131 { packages = { "hscolour" = { flags = {}; }; }; })
32− ({ lib, ... }:
33− {
34− packages = {
35− "containers".components.library.planned = lib.mkOverride 900 true;
36− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
37− "hscolour".components.exes."HsColour".planned = lib.mkOverride 900 true;
38− "hscolour".components.library.planned = lib.mkOverride 900 true;
39− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
40− "array".components.library.planned = lib.mkOverride 900 true;
41− "base".components.library.planned = lib.mkOverride 900 true;
42− "rts".components.library.planned = lib.mkOverride 900 true;
43− "deepseq".components.library.planned = lib.mkOverride 900 true;
44− };
45− })
4632 ];
4733 }
materialized/bootstrap/ghc882/alex/.plan.nix/alex.nix+1−1
@@ -150,7 +150,7 @@
150150 (hsPkgs."process" or (errorHandler.buildDepError "process"))
151151 ];
152152 build-tools = [
153− (hsPkgs.buildPackages.alex.components.exes.alex or (pkgs.buildPackages.alex or (errorHandler.buildToolDepError "alex:alex")))
153+ (hsPkgs.buildPackages.alex or (pkgs.buildPackages.alex or (errorHandler.buildToolDepError "alex")))
154154 ];
155155 buildable = true;
156156 mainPath = [ "test.hs" ];
materialized/bootstrap/ghc882/alex/default.nix+18−38
@@ -3,36 +3,36 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
6− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
7− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
8− "process".revision = (((hackage."process")."1.6.7.0").revisions).default;
9− "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
10− "rts".revision = (((hackage."rts")."1.0").revisions).default;
11− "time".revision = (((hackage."time")."1.9.3").revisions).default;
126 "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
13− "bytestring".revision = (((hackage."bytestring")."0.10.10.0").revisions).default;
14− "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
7+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
8+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
159 "directory".revision = (((hackage."directory")."1.3.4.0").revisions).default;
10+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
11+ "bytestring".revision = (((hackage."bytestring")."0.10.10.0").revisions).default;
12+ "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
13+ "time".revision = (((hackage."time")."1.9.3").revisions).default;
1614 "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
17− "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
15+ "process".revision = (((hackage."process")."1.6.7.0").revisions).default;
16+ "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
17+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
1818 };
1919 compiler = {
2020 version = "8.8.2";
2121 nix-name = "ghc882";
2222 packages = {
2323 "ghc-prim" = "0.5.3";
24− "array" = "0.5.4.0";
25− "integer-gmp" = "1.0.2.0";
26− "process" = "1.6.7.0";
27− "base" = "4.13.0.0";
28− "rts" = "1.0";
29− "time" = "1.9.3";
3024 "unix" = "2.7.2.2";
31− "bytestring" = "0.10.10.0";
32− "containers" = "0.6.2.1";
25+ "rts" = "1.0";
26+ "deepseq" = "1.4.4.0";
3327 "directory" = "1.3.4.0";
28+ "containers" = "0.6.2.1";
29+ "bytestring" = "0.10.10.0";
30+ "base" = "4.13.0.0";
31+ "time" = "1.9.3";
3432 "filepath" = "1.4.2.1";
35− "deepseq" = "1.4.4.0";
33+ "process" = "1.6.7.0";
34+ "array" = "0.5.4.0";
35+ "integer-gmp" = "1.0.2.0";
3636 };
3737 };
3838 };
@@ -45,25 +45,5 @@
4545 "alex" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
4646 };
4747 })
48− ({ lib, ... }:
49− {
50− packages = {
51− "containers".components.library.planned = lib.mkOverride 900 true;
52− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
53− "process".components.library.planned = lib.mkOverride 900 true;
54− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
55− "array".components.library.planned = lib.mkOverride 900 true;
56− "bytestring".components.library.planned = lib.mkOverride 900 true;
57− "unix".components.library.planned = lib.mkOverride 900 true;
58− "alex".components.exes."alex".planned = lib.mkOverride 900 true;
59− "base".components.library.planned = lib.mkOverride 900 true;
60− "rts".components.library.planned = lib.mkOverride 900 true;
61− "time".components.library.planned = lib.mkOverride 900 true;
62− "deepseq".components.library.planned = lib.mkOverride 900 true;
63− "filepath".components.library.planned = lib.mkOverride 900 true;
64− "directory".components.library.planned = lib.mkOverride 900 true;
65− "alex".components.tests."tests".planned = lib.mkOverride 900 true;
66− };
67− })
6848 ];
6949 }
materialized/bootstrap/ghc882/happy-1.19.12/.plan.nix/happy.nix+1−1
@@ -190,7 +190,7 @@
190190 (hsPkgs."process" or (errorHandler.buildDepError "process"))
191191 ];
192192 build-tools = [
193− (hsPkgs.buildPackages.happy.components.exes.happy or (pkgs.buildPackages.happy or (errorHandler.buildToolDepError "happy:happy")))
193+ (hsPkgs.buildPackages.happy or (pkgs.buildPackages.happy or (errorHandler.buildToolDepError "happy")))
194194 ];
195195 buildable = true;
196196 mainPath = [ "test.hs" ];
materialized/bootstrap/ghc882/happy-1.19.12/default.nix+22−44
@@ -3,40 +3,40 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
6− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
7− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
8− "process".revision = (((hackage."process")."1.6.7.0").revisions).default;
9− "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
10− "rts".revision = (((hackage."rts")."1.0").revisions).default;
11− "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
12− "time".revision = (((hackage."time")."1.9.3").revisions).default;
136 "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
14− "bytestring".revision = (((hackage."bytestring")."0.10.10.0").revisions).default;
15− "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
16− "directory".revision = (((hackage."directory")."1.3.4.0").revisions).default;
17− "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
7+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
8+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
189 "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
10+ "directory".revision = (((hackage."directory")."1.3.4.0").revisions).default;
11+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
12+ "bytestring".revision = (((hackage."bytestring")."0.10.10.0").revisions).default;
13+ "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
14+ "time".revision = (((hackage."time")."1.9.3").revisions).default;
1915 "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
16+ "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
17+ "process".revision = (((hackage."process")."1.6.7.0").revisions).default;
18+ "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
19+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
2020 };
2121 compiler = {
2222 version = "8.8.2";
2323 nix-name = "ghc882";
2424 packages = {
2525 "ghc-prim" = "0.5.3";
26− "array" = "0.5.4.0";
27− "integer-gmp" = "1.0.2.0";
28− "process" = "1.6.7.0";
29− "base" = "4.13.0.0";
30− "rts" = "1.0";
31− "mtl" = "2.2.2";
32− "time" = "1.9.3";
3326 "unix" = "2.7.2.2";
34− "bytestring" = "0.10.10.0";
35− "containers" = "0.6.2.1";
36− "directory" = "1.3.4.0";
37− "filepath" = "1.4.2.1";
27+ "mtl" = "2.2.2";
28+ "rts" = "1.0";
3829 "deepseq" = "1.4.4.0";
30+ "directory" = "1.3.4.0";
31+ "containers" = "0.6.2.1";
32+ "bytestring" = "0.10.10.0";
33+ "base" = "4.13.0.0";
34+ "time" = "1.9.3";
3935 "transformers" = "0.5.6.2";
36+ "filepath" = "1.4.2.1";
37+ "process" = "1.6.7.0";
38+ "array" = "0.5.4.0";
39+ "integer-gmp" = "1.0.2.0";
4040 };
4141 };
4242 };
@@ -49,27 +49,5 @@
4949 "happy" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
5050 };
5151 })
52− ({ lib, ... }:
53− {
54− packages = {
55− "containers".components.library.planned = lib.mkOverride 900 true;
56− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
57− "happy".components.exes."happy".planned = lib.mkOverride 900 true;
58− "transformers".components.library.planned = lib.mkOverride 900 true;
59− "process".components.library.planned = lib.mkOverride 900 true;
60− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
61− "array".components.library.planned = lib.mkOverride 900 true;
62− "bytestring".components.library.planned = lib.mkOverride 900 true;
63− "unix".components.library.planned = lib.mkOverride 900 true;
64− "base".components.library.planned = lib.mkOverride 900 true;
65− "rts".components.library.planned = lib.mkOverride 900 true;
66− "mtl".components.library.planned = lib.mkOverride 900 true;
67− "time".components.library.planned = lib.mkOverride 900 true;
68− "deepseq".components.library.planned = lib.mkOverride 900 true;
69− "filepath".components.library.planned = lib.mkOverride 900 true;
70− "happy".components.tests."tests".planned = lib.mkOverride 900 true;
71− "directory".components.library.planned = lib.mkOverride 900 true;
72− };
73− })
7452 ];
7553 }
materialized/bootstrap/ghc882/hscolour/.plan.nix/hscolour.nix+1−1
@@ -24,7 +24,7 @@
2424 isLocal = true;
2525 detailLevel = "FullDetails";
2626 licenseFiles = [ "LICENCE-LGPL" ];
27− dataDir = ".";
27+ dataDir = "";
2828 dataFiles = [ "hscolour.css" "data/rgb24-example-.hscolour" ];
2929 extraSrcFiles = [];
3030 extraTmpFiles = [];
materialized/bootstrap/ghc882/hscolour/default.nix+8−22
@@ -3,24 +3,24 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
6− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
7− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
8− "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
96 "rts".revision = (((hackage."rts")."1.0").revisions).default;
10− "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
117 "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
8+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
9+ "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
10+ "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
11+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
1212 };
1313 compiler = {
1414 version = "8.8.2";
1515 nix-name = "ghc882";
1616 packages = {
1717 "ghc-prim" = "0.5.3";
18− "array" = "0.5.4.0";
19− "integer-gmp" = "1.0.2.0";
20− "base" = "4.13.0.0";
2118 "rts" = "1.0";
22− "containers" = "0.6.2.1";
2319 "deepseq" = "1.4.4.0";
20+ "containers" = "0.6.2.1";
21+ "base" = "4.13.0.0";
22+ "array" = "0.5.4.0";
23+ "integer-gmp" = "1.0.2.0";
2424 };
2525 };
2626 };
@@ -29,19 +29,5 @@
2929 modules = [
3030 ({ lib, ... }:
3131 { packages = { "hscolour" = { flags = {}; }; }; })
32− ({ lib, ... }:
33− {
34− packages = {
35− "containers".components.library.planned = lib.mkOverride 900 true;
36− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
37− "hscolour".components.exes."HsColour".planned = lib.mkOverride 900 true;
38− "hscolour".components.library.planned = lib.mkOverride 900 true;
39− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
40− "array".components.library.planned = lib.mkOverride 900 true;
41− "base".components.library.planned = lib.mkOverride 900 true;
42− "rts".components.library.planned = lib.mkOverride 900 true;
43− "deepseq".components.library.planned = lib.mkOverride 900 true;
44− };
45− })
4632 ];
4733 }
materialized/bootstrap/ghc883/alex/.plan.nix/alex.nixdeleted−160
@@ -1,160 +0,0 @@
1−{ system
2− , compiler
3− , flags
4− , pkgs
5− , hsPkgs
6− , pkgconfPkgs
7− , errorHandler
8− , config
9− , ... }:
10− {
11− flags = { small_base = true; };
12− package = {
13− specVersion = "1.8";
14− identifier = { name = "alex"; version = "3.2.4"; };
15− license = "BSD-3-Clause";
16− copyright = "(c) Chis Dornan, Simon Marlow";
17− maintainer = "Simon Marlow <marlowsd@gmail.com>";
18− author = "Chris Dornan and Simon Marlow";
19− homepage = "http://www.haskell.org/alex/";
20− url = "";
21− synopsis = "Alex is a tool for generating lexical analysers in Haskell";
22− description = "Alex is a tool for generating lexical analysers in Haskell.\nIt takes a description of tokens based on regular\nexpressions and generates a Haskell module containing code\nfor scanning text efficiently. It is similar to the tool\nlex or flex for C/C++.";
23− buildType = "Simple";
24− isLocal = true;
25− detailLevel = "FullDetails";
26− licenseFiles = [ "LICENSE" ];
27− dataDir = "data/";
28− dataFiles = [
29− "AlexTemplate"
30− "AlexTemplate-ghc"
31− "AlexTemplate-ghc-nopred"
32− "AlexTemplate-ghc-debug"
33− "AlexTemplate-debug"
34− "AlexWrapper-basic"
35− "AlexWrapper-basic-bytestring"
36− "AlexWrapper-strict-bytestring"
37− "AlexWrapper-posn"
38− "AlexWrapper-posn-bytestring"
39− "AlexWrapper-monad"
40− "AlexWrapper-monad-bytestring"
41− "AlexWrapper-monadUserState"
42− "AlexWrapper-monadUserState-bytestring"
43− "AlexWrapper-gscan"
44− ];
45− extraSrcFiles = [
46− "CHANGELOG.md"
47− "README.md"
48− "TODO"
49− "alex.spec"
50− "doc/Makefile"
51− "doc/aclocal.m4"
52− "doc/alex.1.in"
53− "doc/alex.xml"
54− "doc/config.mk.in"
55− "doc/configure.ac"
56− "doc/docbook-xml.mk"
57− "doc/fptools.css"
58− "examples/Makefile"
59− "examples/Tokens.x"
60− "examples/Tokens_gscan.x"
61− "examples/Tokens_posn.x"
62− "examples/examples.x"
63− "examples/haskell.x"
64− "examples/lit.x"
65− "examples/pp.x"
66− "examples/state.x"
67− "examples/tiny.y"
68− "examples/words.x"
69− "examples/words_monad.x"
70− "examples/words_posn.x"
71− "src/Parser.y.boot"
72− "src/Scan.x.boot"
73− "src/ghc_hooks.c"
74− "templates/GenericTemplate.hs"
75− "templates/wrappers.hs"
76− "tests/Makefile"
77− "tests/simple.x"
78− "tests/null.x"
79− "tests/tokens.x"
80− "tests/tokens_gscan.x"
81− "tests/tokens_posn.x"
82− "tests/tokens_bytestring.x"
83− "tests/tokens_posn_bytestring.x"
84− "tests/tokens_scan_user.x"
85− "tests/tokens_strict_bytestring.x"
86− "tests/tokens_monad_bytestring.x"
87− "tests/tokens_monadUserState_bytestring.x"
88− "tests/tokens_bytestring_unicode.x"
89− "tests/basic_typeclass.x"
90− "tests/basic_typeclass_bytestring.x"
91− "tests/default_typeclass.x"
92− "tests/gscan_typeclass.x"
93− "tests/posn_typeclass.x"
94− "tests/monad_typeclass.x"
95− "tests/monad_typeclass_bytestring.x"
96− "tests/monadUserState_typeclass.x"
97− "tests/monadUserState_typeclass_bytestring.x"
98− "tests/posn_typeclass_bytestring.x"
99− "tests/strict_typeclass.x"
100− "tests/unicode.x"
101− ];
102− extraTmpFiles = [];
103− extraDocFiles = [];
104− };
105− components = {
106− exes = {
107− "alex" = {
108− depends = [
109− (hsPkgs."base" or (errorHandler.buildDepError "base"))
110− ] ++ (if flags.small_base
111− then [
112− (hsPkgs."base" or (errorHandler.buildDepError "base"))
113− (hsPkgs."array" or (errorHandler.buildDepError "array"))
114− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
115− (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
116− ]
117− else [ (hsPkgs."base" or (errorHandler.buildDepError "base")) ]);
118− buildable = true;
119− modules = [
120− "AbsSyn"
121− "CharSet"
122− "DFA"
123− "DFAMin"
124− "DFS"
125− "Info"
126− "Map"
127− "NFA"
128− "Output"
129− "Paths_alex"
130− "Parser"
131− "ParseMonad"
132− "Scan"
133− "Set"
134− "Sort"
135− "Util"
136− "UTF8"
137− "Data/Ranged"
138− "Data/Ranged/Boundaries"
139− "Data/Ranged/RangedSet"
140− "Data/Ranged/Ranges"
141− ];
142− hsSourceDirs = [ "src" ];
143− mainPath = [ "Main.hs" ] ++ [ "" ];
144− };
145− };
146− tests = {
147− "tests" = {
148− depends = [
149− (hsPkgs."base" or (errorHandler.buildDepError "base"))
150− (hsPkgs."process" or (errorHandler.buildDepError "process"))
151− ];
152− build-tools = [
153− (hsPkgs.buildPackages.alex.components.exes.alex or (pkgs.buildPackages.alex or (errorHandler.buildToolDepError "alex:alex")))
154− ];
155− buildable = true;
156− mainPath = [ "test.hs" ];
157− };
158− };
159− };
160− } // rec { src = (pkgs.lib).mkDefault ../.; }
materialized/bootstrap/ghc883/alex/default.nixdeleted−65
@@ -1,65 +0,0 @@
1−{
2− pkgs = hackage:
3− {
4− packages = {
5− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
6− "bytestring".revision = (((hackage."bytestring")."0.10.10.0").revisions).default;
7− "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
8− "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
9− "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
10− "time".revision = (((hackage."time")."1.9.3").revisions).default;
11− "directory".revision = (((hackage."directory")."1.3.6.0").revisions).default;
12− "rts".revision = (((hackage."rts")."1.0").revisions).default;
13− "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
14− "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
15− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
16− "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
17− };
18− compiler = {
19− version = "8.8.3";
20− nix-name = "ghc883";
21− packages = {
22− "array" = "0.5.4.0";
23− "bytestring" = "0.10.10.0";
24− "filepath" = "1.4.2.1";
25− "ghc-prim" = "0.5.3";
26− "base" = "4.13.0.0";
27− "time" = "1.9.3";
28− "directory" = "1.3.6.0";
29− "rts" = "1.0";
30− "deepseq" = "1.4.4.0";
31− "unix" = "2.7.2.2";
32− "integer-gmp" = "1.0.2.0";
33− "containers" = "0.6.2.1";
34− };
35− };
36− };
37− extras = hackage:
38− { packages = { alex = ./.plan.nix/alex.nix; }; };
39− modules = [
40− ({ lib, ... }:
41− {
42− packages = {
43− "alex" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
44− };
45− })
46− ({ lib, ... }:
47− {
48− packages = {
49− "filepath".components.library.planned = lib.mkOverride 900 true;
50− "bytestring".components.library.planned = lib.mkOverride 900 true;
51− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
52− "array".components.library.planned = lib.mkOverride 900 true;
53− "rts".components.library.planned = lib.mkOverride 900 true;
54− "unix".components.library.planned = lib.mkOverride 900 true;
55− "directory".components.library.planned = lib.mkOverride 900 true;
56− "time".components.library.planned = lib.mkOverride 900 true;
57− "alex".components.exes."alex".planned = lib.mkOverride 900 true;
58− "deepseq".components.library.planned = lib.mkOverride 900 true;
59− "base".components.library.planned = lib.mkOverride 900 true;
60− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
61− "containers".components.library.planned = lib.mkOverride 900 true;
62− };
63− })
64− ];
65− }
materialized/bootstrap/ghc883/happy-1.19.12/.plan.nix/happy.nixdeleted−200
@@ -1,200 +0,0 @@
1−{ system
2− , compiler
3− , flags
4− , pkgs
5− , hsPkgs
6− , pkgconfPkgs
7− , errorHandler
8− , config
9− , ... }:
10− {
11− flags = { small_base = true; };
12− package = {
13− specVersion = "1.8";
14− identifier = { name = "happy"; version = "1.19.12"; };
15− license = "BSD-2-Clause";
16− copyright = "(c) Andy Gill, Simon Marlow";
17− maintainer = "Simon Marlow <marlowsd@gmail.com>";
18− author = "Andy Gill and Simon Marlow";
19− homepage = "https://www.haskell.org/happy/";
20− url = "";
21− synopsis = "Happy is a parser generator for Haskell";
22− description = "Happy is a parser generator for Haskell. Given a grammar\nspecification in BNF, Happy generates Haskell code to parse the\ngrammar. Happy works in a similar way to the @yacc@ tool for C.";
23− buildType = "Simple";
24− isLocal = true;
25− detailLevel = "FullDetails";
26− licenseFiles = [ "LICENSE" ];
27− dataDir = "data/";
28− dataFiles = [
29− "HappyTemplate"
30− "HappyTemplate-arrays"
31− "HappyTemplate-arrays-coerce"
32− "HappyTemplate-arrays-coerce-debug"
33− "HappyTemplate-arrays-debug"
34− "HappyTemplate-arrays-ghc"
35− "HappyTemplate-arrays-ghc-debug"
36− "HappyTemplate-coerce"
37− "HappyTemplate-ghc"
38− "GLR_Base"
39− "GLR_Lib"
40− "GLR_Lib-ghc"
41− "GLR_Lib-ghc-debug"
42− ];
43− extraSrcFiles = [
44− "ANNOUNCE"
45− "CHANGES"
46− "Makefile"
47− "README.md"
48− "TODO"
49− "doc/Makefile"
50− "doc/aclocal.m4"
51− "doc/config.mk.in"
52− "doc/configure.ac"
53− "doc/docbook-xml.mk"
54− "doc/fptools.css"
55− "doc/happy.1.in"
56− "doc/happy.xml"
57− "examples/glr/nlp/Main.lhs"
58− "examples/glr/nlp/Makefile"
59− "examples/glr/nlp/README"
60− "examples/glr/nlp/English.y"
61− "examples/glr/nlp/Hugs.lhs"
62− "examples/glr/Makefile"
63− "examples/glr/Makefile.defs"
64− "examples/glr/expr-eval/Main.lhs"
65− "examples/glr/expr-eval/Makefile"
66− "examples/glr/expr-eval/Expr.y"
67− "examples/glr/expr-eval/README"
68− "examples/glr/expr-eval/Hugs.lhs"
69− "examples/glr/expr-tree/Main.lhs"
70− "examples/glr/expr-tree/Makefile"
71− "examples/glr/expr-tree/Expr.y"
72− "examples/glr/expr-tree/README"
73− "examples/glr/expr-tree/Tree.lhs"
74− "examples/glr/expr-tree/Hugs.lhs"
75− "examples/glr/highly-ambiguous/Main.lhs"
76− "examples/glr/highly-ambiguous/Makefile"
77− "examples/glr/highly-ambiguous/Expr.y"
78− "examples/glr/highly-ambiguous/README"
79− "examples/glr/highly-ambiguous/Hugs.lhs"
80− "examples/glr/hidden-leftrec/Main.lhs"
81− "examples/glr/hidden-leftrec/Makefile"
82− "examples/glr/hidden-leftrec/Expr.y"
83− "examples/glr/hidden-leftrec/README"
84− "examples/glr/hidden-leftrec/Hugs.lhs"
85− "examples/glr/expr-monad/Main.lhs"
86− "examples/glr/expr-monad/Makefile"
87− "examples/glr/expr-monad/Expr.y"
88− "examples/glr/expr-monad/README"
89− "examples/glr/expr-monad/Hugs.lhs"
90− "examples/glr/bio-eg/Main.lhs"
91− "examples/glr/bio-eg/Makefile"
92− "examples/glr/bio-eg/Bio.y"
93− "examples/glr/bio-eg/README"
94− "examples/glr/bio-eg/1-1200.dna"
95− "examples/glr/bio-eg/1-600.dna"
96− "examples/glr/common/DV_lhs"
97− "examples/glr/common/DaVinciTypes.hs"
98− "examples/glr/packing/Main.lhs"
99− "examples/glr/packing/Makefile"
100− "examples/glr/packing/Expr.y"
101− "examples/glr/packing/README"
102− "examples/glr/packing/Hugs.lhs"
103− "examples/PgnParser.ly"
104− "examples/MonadTest.ly"
105− "examples/igloo/ParserM.hs"
106− "examples/igloo/Makefile"
107− "examples/igloo/Parser.y"
108− "examples/igloo/Foo.hs"
109− "examples/igloo/README"
110− "examples/igloo/Lexer.x"
111− "examples/README"
112− "examples/Calc.ly"
113− "examples/DavesExample.ly"
114− "examples/ErrorTest.ly"
115− "examples/ErlParser.ly"
116− "examples/SimonsExample.ly"
117− "examples/LexerTest.ly"
118− "happy.spec"
119− "src/ARRAY-NOTES"
120− "tests/AttrGrammar001.y"
121− "tests/AttrGrammar002.y"
122− "tests/Makefile"
123− "tests/Partial.ly"
124− "tests/Test.ly"
125− "tests/TestMulti.ly"
126− "tests/TestPrecedence.ly"
127− "tests/bogus-token.y"
128− "tests/bug001.ly"
129− "tests/bug002.y"
130− "tests/error001.stderr"
131− "tests/error001.stdout"
132− "tests/error001.y"
133− "tests/monad001.y"
134− "tests/monad002.ly"
135− "tests/monaderror.y"
136− "tests/precedence001.ly"
137− "tests/precedence002.y"
138− "tests/test_rules.y"
139− "tests/issue91.y"
140− "tests/issue93.y"
141− "tests/issue94.y"
142− "tests/issue95.y"
143− "tests/monaderror-explist.y"
144− "tests/typeclass_monad001.y"
145− "tests/typeclass_monad002.ly"
146− "tests/typeclass_monad_lexer.y"
147− "tests/rank2.y"
148− ];
149− extraTmpFiles = [];
150− extraDocFiles = [];
151− };
152− components = {
153− exes = {
154− "happy" = {
155− depends = [
156− (hsPkgs."base" or (errorHandler.buildDepError "base"))
157− (hsPkgs."array" or (errorHandler.buildDepError "array"))
158− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
159− (hsPkgs."mtl" or (errorHandler.buildDepError "mtl"))
160− ];
161− buildable = true;
162− modules = [
163− "Paths_happy"
164− "AbsSyn"
165− "First"
166− "GenUtils"
167− "Grammar"
168− "Info"
169− "LALR"
170− "Lexer"
171− "ParseMonad"
172− "Parser"
173− "ProduceCode"
174− "ProduceGLRCode"
175− "NameSet"
176− "Target"
177− "AttrGrammar"
178− "AttrGrammarParser"
179− "ParamRules"
180− "PrettyGrammar"
181− ];
182− hsSourceDirs = [ "src" ];
183− mainPath = [ "Main.lhs" ];
184− };
185− };
186− tests = {
187− "tests" = {
188− depends = [
189− (hsPkgs."base" or (errorHandler.buildDepError "base"))
190− (hsPkgs."process" or (errorHandler.buildDepError "process"))
191− ];
192− build-tools = [
193− (hsPkgs.buildPackages.happy.components.exes.happy or (pkgs.buildPackages.happy or (errorHandler.buildToolDepError "happy:happy")))
194− ];
195− buildable = true;
196− mainPath = [ "test.hs" ];
197− };
198− };
199− };
200− } // rec { src = (pkgs.lib).mkDefault ../.; }
materialized/bootstrap/ghc883/happy-1.19.12/default.nixdeleted−56
@@ -1,56 +0,0 @@
1−{
2− pkgs = hackage:
3− {
4− packages = {
5− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
6− "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
7− "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
8− "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
9− "rts".revision = (((hackage."rts")."1.0").revisions).default;
10− "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
11− "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
12− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
13− "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
14− };
15− compiler = {
16− version = "8.8.3";
17− nix-name = "ghc883";
18− packages = {
19− "array" = "0.5.4.0";
20− "mtl" = "2.2.2";
21− "ghc-prim" = "0.5.3";
22− "base" = "4.13.0.0";
23− "rts" = "1.0";
24− "transformers" = "0.5.6.2";
25− "deepseq" = "1.4.4.0";
26− "integer-gmp" = "1.0.2.0";
27− "containers" = "0.6.2.1";
28− };
29− };
30− };
31− extras = hackage:
32− { packages = { happy = ./.plan.nix/happy.nix; }; };
33− modules = [
34− ({ lib, ... }:
35− {
36− packages = {
37− "happy" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
38− };
39− })
40− ({ lib, ... }:
41− {
42− packages = {
43− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
44− "array".components.library.planned = lib.mkOverride 900 true;
45− "rts".components.library.planned = lib.mkOverride 900 true;
46− "happy".components.exes."happy".planned = lib.mkOverride 900 true;
47− "mtl".components.library.planned = lib.mkOverride 900 true;
48− "transformers".components.library.planned = lib.mkOverride 900 true;
49− "deepseq".components.library.planned = lib.mkOverride 900 true;
50− "base".components.library.planned = lib.mkOverride 900 true;
51− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
52− "containers".components.library.planned = lib.mkOverride 900 true;
53− };
54− })
55− ];
56− }
materialized/bootstrap/ghc883/hscolour/.plan.nix/hscolour.nixdeleted−70
@@ -1,70 +0,0 @@
1−{ system
2− , compiler
3− , flags
4− , pkgs
5− , hsPkgs
6− , pkgconfPkgs
7− , errorHandler
8− , config
9− , ... }:
10− {
11− flags = {};
12− package = {
13− specVersion = "1.6";
14− identifier = { name = "hscolour"; version = "1.24.4"; };
15− license = "LicenseRef-LGPL";
16− copyright = "2003-2017 Malcolm Wallace; 2006 Bjorn Bringert";
17− maintainer = "Malcolm Wallace";
18− author = "Malcolm Wallace";
19− homepage = "http://code.haskell.org/~malcolm/hscolour/";
20− url = "";
21− synopsis = "Colourise Haskell code.";
22− description = "hscolour is a small Haskell script to colourise Haskell code. It currently\nhas six output formats:\nANSI terminal codes (optionally XTerm-256colour codes),\nHTML 3.2 with <font> tags,\nHTML 4.01 with CSS,\nHTML 4.01 with CSS and mouseover annotations,\nXHTML 1.0 with inline CSS styling,\nLaTeX,\nand mIRC chat codes.";
23− buildType = "Simple";
24− isLocal = true;
25− detailLevel = "FullDetails";
26− licenseFiles = [ "LICENCE-LGPL" ];
27− dataDir = ".";
28− dataFiles = [ "hscolour.css" "data/rgb24-example-.hscolour" ];
29− extraSrcFiles = [];
30− extraTmpFiles = [];
31− extraDocFiles = [];
32− };
33− components = {
34− "library" = {
35− depends = [
36− (hsPkgs."base" or (errorHandler.buildDepError "base"))
37− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
38− ];
39− buildable = true;
40− modules = [
41− "Language/Haskell/HsColour"
42− "Language/Haskell/HsColour/ANSI"
43− "Language/Haskell/HsColour/Anchors"
44− "Language/Haskell/HsColour/ACSS"
45− "Language/Haskell/HsColour/CSS"
46− "Language/Haskell/HsColour/Classify"
47− "Language/Haskell/HsColour/ColourHighlight"
48− "Language/Haskell/HsColour/Colourise"
49− "Language/Haskell/HsColour/General"
50− "Language/Haskell/HsColour/HTML"
51− "Language/Haskell/HsColour/InlineCSS"
52− "Language/Haskell/HsColour/LaTeX"
53− "Language/Haskell/HsColour/MIRC"
54− "Language/Haskell/HsColour/Options"
55− "Language/Haskell/HsColour/Output"
56− "Language/Haskell/HsColour/TTY"
57− ];
58− };
59− exes = {
60− "HsColour" = {
61− depends = [
62− (hsPkgs."base" or (errorHandler.buildDepError "base"))
63− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
64− ];
65− buildable = true;
66− mainPath = [ "HsColour.hs" ];
67− };
68− };
69− };
70− } // rec { src = (pkgs.lib).mkDefault ../.; }
materialized/bootstrap/ghc883/hscolour/default.nixdeleted−47
@@ -1,47 +0,0 @@
1−{
2− pkgs = hackage:
3− {
4− packages = {
5− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
6− "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
7− "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
8− "rts".revision = (((hackage."rts")."1.0").revisions).default;
9− "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
10− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
11− "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
12− };
13− compiler = {
14− version = "8.8.3";
15− nix-name = "ghc883";
16− packages = {
17− "array" = "0.5.4.0";
18− "ghc-prim" = "0.5.3";
19− "base" = "4.13.0.0";
20− "rts" = "1.0";
21− "deepseq" = "1.4.4.0";
22− "integer-gmp" = "1.0.2.0";
23− "containers" = "0.6.2.1";
24− };
25− };
26− };
27− extras = hackage:
28− { packages = { hscolour = ./.plan.nix/hscolour.nix; }; };
29− modules = [
30− ({ lib, ... }:
31− { packages = { "hscolour" = { flags = {}; }; }; })
32− ({ lib, ... }:
33− {
34− packages = {
35− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
36− "array".components.library.planned = lib.mkOverride 900 true;
37− "rts".components.library.planned = lib.mkOverride 900 true;
38− "hscolour".components.library.planned = lib.mkOverride 900 true;
39− "hscolour".components.exes."HsColour".planned = lib.mkOverride 900 true;
40− "deepseq".components.library.planned = lib.mkOverride 900 true;
41− "base".components.library.planned = lib.mkOverride 900 true;
42− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
43− "containers".components.library.planned = lib.mkOverride 900 true;
44− };
45− })
46− ];
47− }
materialized/bootstrap/ghc884/alex/.plan.nix/alex.nixdeleted−160
@@ -1,160 +0,0 @@
1−{ system
2− , compiler
3− , flags
4− , pkgs
5− , hsPkgs
6− , pkgconfPkgs
7− , errorHandler
8− , config
9− , ... }:
10− {
11− flags = { small_base = true; };
12− package = {
13− specVersion = "1.8";
14− identifier = { name = "alex"; version = "3.2.4"; };
15− license = "BSD-3-Clause";
16− copyright = "(c) Chis Dornan, Simon Marlow";
17− maintainer = "Simon Marlow <marlowsd@gmail.com>";
18− author = "Chris Dornan and Simon Marlow";
19− homepage = "http://www.haskell.org/alex/";
20− url = "";
21− synopsis = "Alex is a tool for generating lexical analysers in Haskell";
22− description = "Alex is a tool for generating lexical analysers in Haskell.\nIt takes a description of tokens based on regular\nexpressions and generates a Haskell module containing code\nfor scanning text efficiently. It is similar to the tool\nlex or flex for C/C++.";
23− buildType = "Simple";
24− isLocal = true;
25− detailLevel = "FullDetails";
26− licenseFiles = [ "LICENSE" ];
27− dataDir = "data/";
28− dataFiles = [
29− "AlexTemplate"
30− "AlexTemplate-ghc"
31− "AlexTemplate-ghc-nopred"
32− "AlexTemplate-ghc-debug"
33− "AlexTemplate-debug"
34− "AlexWrapper-basic"
35− "AlexWrapper-basic-bytestring"
36− "AlexWrapper-strict-bytestring"
37− "AlexWrapper-posn"
38− "AlexWrapper-posn-bytestring"
39− "AlexWrapper-monad"
40− "AlexWrapper-monad-bytestring"
41− "AlexWrapper-monadUserState"
42− "AlexWrapper-monadUserState-bytestring"
43− "AlexWrapper-gscan"
44− ];
45− extraSrcFiles = [
46− "CHANGELOG.md"
47− "README.md"
48− "TODO"
49− "alex.spec"
50− "doc/Makefile"
51− "doc/aclocal.m4"
52− "doc/alex.1.in"
53− "doc/alex.xml"
54− "doc/config.mk.in"
55− "doc/configure.ac"
56− "doc/docbook-xml.mk"
57− "doc/fptools.css"
58− "examples/Makefile"
59− "examples/Tokens.x"
60− "examples/Tokens_gscan.x"
61− "examples/Tokens_posn.x"
62− "examples/examples.x"
63− "examples/haskell.x"
64− "examples/lit.x"
65− "examples/pp.x"
66− "examples/state.x"
67− "examples/tiny.y"
68− "examples/words.x"
69− "examples/words_monad.x"
70− "examples/words_posn.x"
71− "src/Parser.y.boot"
72− "src/Scan.x.boot"
73− "src/ghc_hooks.c"
74− "templates/GenericTemplate.hs"
75− "templates/wrappers.hs"
76− "tests/Makefile"
77− "tests/simple.x"
78− "tests/null.x"
79− "tests/tokens.x"
80− "tests/tokens_gscan.x"
81− "tests/tokens_posn.x"
82− "tests/tokens_bytestring.x"
83− "tests/tokens_posn_bytestring.x"
84− "tests/tokens_scan_user.x"
85− "tests/tokens_strict_bytestring.x"
86− "tests/tokens_monad_bytestring.x"
87− "tests/tokens_monadUserState_bytestring.x"
88− "tests/tokens_bytestring_unicode.x"
89− "tests/basic_typeclass.x"
90− "tests/basic_typeclass_bytestring.x"
91− "tests/default_typeclass.x"
92− "tests/gscan_typeclass.x"
93− "tests/posn_typeclass.x"
94− "tests/monad_typeclass.x"
95− "tests/monad_typeclass_bytestring.x"
96− "tests/monadUserState_typeclass.x"
97− "tests/monadUserState_typeclass_bytestring.x"
98− "tests/posn_typeclass_bytestring.x"
99− "tests/strict_typeclass.x"
100− "tests/unicode.x"
101− ];
102− extraTmpFiles = [];
103− extraDocFiles = [];
104− };
105− components = {
106− exes = {
107− "alex" = {
108− depends = [
109− (hsPkgs."base" or (errorHandler.buildDepError "base"))
110− ] ++ (if flags.small_base
111− then [
112− (hsPkgs."base" or (errorHandler.buildDepError "base"))
113− (hsPkgs."array" or (errorHandler.buildDepError "array"))
114− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
115− (hsPkgs."directory" or (errorHandler.buildDepError "directory"))
116− ]
117− else [ (hsPkgs."base" or (errorHandler.buildDepError "base")) ]);
118− buildable = true;
119− modules = [
120− "AbsSyn"
121− "CharSet"
122− "DFA"
123− "DFAMin"
124− "DFS"
125− "Info"
126− "Map"
127− "NFA"
128− "Output"
129− "Paths_alex"
130− "Parser"
131− "ParseMonad"
132− "Scan"
133− "Set"
134− "Sort"
135− "Util"
136− "UTF8"
137− "Data/Ranged"
138− "Data/Ranged/Boundaries"
139− "Data/Ranged/RangedSet"
140− "Data/Ranged/Ranges"
141− ];
142− hsSourceDirs = [ "src" ];
143− mainPath = [ "Main.hs" ] ++ [ "" ];
144− };
145− };
146− tests = {
147− "tests" = {
148− depends = [
149− (hsPkgs."base" or (errorHandler.buildDepError "base"))
150− (hsPkgs."process" or (errorHandler.buildDepError "process"))
151− ];
152− build-tools = [
153− (hsPkgs.buildPackages.alex.components.exes.alex or (pkgs.buildPackages.alex or (errorHandler.buildToolDepError "alex:alex")))
154− ];
155− buildable = true;
156− mainPath = [ "test.hs" ];
157− };
158− };
159− };
160− } // rec { src = (pkgs.lib).mkDefault ../.; }
materialized/bootstrap/ghc884/alex/default.nixdeleted−65
@@ -1,65 +0,0 @@
1−{
2− pkgs = hackage:
3− {
4− packages = {
5− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
6− "bytestring".revision = (((hackage."bytestring")."0.10.10.1").revisions).default;
7− "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
8− "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
9− "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
10− "time".revision = (((hackage."time")."1.9.3").revisions).default;
11− "directory".revision = (((hackage."directory")."1.3.6.0").revisions).default;
12− "rts".revision = (((hackage."rts")."1.0").revisions).default;
13− "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
14− "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
15− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
16− "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
17− };
18− compiler = {
19− version = "8.8.4";
20− nix-name = "ghc884";
21− packages = {
22− "array" = "0.5.4.0";
23− "bytestring" = "0.10.10.1";
24− "filepath" = "1.4.2.1";
25− "ghc-prim" = "0.5.3";
26− "base" = "4.13.0.0";
27− "time" = "1.9.3";
28− "directory" = "1.3.6.0";
29− "rts" = "1.0";
30− "deepseq" = "1.4.4.0";
31− "unix" = "2.7.2.2";
32− "integer-gmp" = "1.0.2.0";
33− "containers" = "0.6.2.1";
34− };
35− };
36− };
37− extras = hackage:
38− { packages = { alex = ./.plan.nix/alex.nix; }; };
39− modules = [
40− ({ lib, ... }:
41− {
42− packages = {
43− "alex" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
44− };
45− })
46− ({ lib, ... }:
47− {
48− packages = {
49− "filepath".components.library.planned = lib.mkOverride 900 true;
50− "bytestring".components.library.planned = lib.mkOverride 900 true;
51− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
52− "array".components.library.planned = lib.mkOverride 900 true;
53− "rts".components.library.planned = lib.mkOverride 900 true;
54− "unix".components.library.planned = lib.mkOverride 900 true;
55− "directory".components.library.planned = lib.mkOverride 900 true;
56− "time".components.library.planned = lib.mkOverride 900 true;
57− "alex".components.exes."alex".planned = lib.mkOverride 900 true;
58− "deepseq".components.library.planned = lib.mkOverride 900 true;
59− "base".components.library.planned = lib.mkOverride 900 true;
60− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
61− "containers".components.library.planned = lib.mkOverride 900 true;
62− };
63− })
64− ];
65− }
materialized/bootstrap/ghc884/happy-1.19.12/.plan.nix/happy.nixdeleted−200
@@ -1,200 +0,0 @@
1−{ system
2− , compiler
3− , flags
4− , pkgs
5− , hsPkgs
6− , pkgconfPkgs
7− , errorHandler
8− , config
9− , ... }:
10− {
11− flags = { small_base = true; };
12− package = {
13− specVersion = "1.8";
14− identifier = { name = "happy"; version = "1.19.12"; };
15− license = "BSD-2-Clause";
16− copyright = "(c) Andy Gill, Simon Marlow";
17− maintainer = "Simon Marlow <marlowsd@gmail.com>";
18− author = "Andy Gill and Simon Marlow";
19− homepage = "https://www.haskell.org/happy/";
20− url = "";
21− synopsis = "Happy is a parser generator for Haskell";
22− description = "Happy is a parser generator for Haskell. Given a grammar\nspecification in BNF, Happy generates Haskell code to parse the\ngrammar. Happy works in a similar way to the @yacc@ tool for C.";
23− buildType = "Simple";
24− isLocal = true;
25− detailLevel = "FullDetails";
26− licenseFiles = [ "LICENSE" ];
27− dataDir = "data/";
28− dataFiles = [
29− "HappyTemplate"
30− "HappyTemplate-arrays"
31− "HappyTemplate-arrays-coerce"
32− "HappyTemplate-arrays-coerce-debug"
33− "HappyTemplate-arrays-debug"
34− "HappyTemplate-arrays-ghc"
35− "HappyTemplate-arrays-ghc-debug"
36− "HappyTemplate-coerce"
37− "HappyTemplate-ghc"
38− "GLR_Base"
39− "GLR_Lib"
40− "GLR_Lib-ghc"
41− "GLR_Lib-ghc-debug"
42− ];
43− extraSrcFiles = [
44− "ANNOUNCE"
45− "CHANGES"
46− "Makefile"
47− "README.md"
48− "TODO"
49− "doc/Makefile"
50− "doc/aclocal.m4"
51− "doc/config.mk.in"
52− "doc/configure.ac"
53− "doc/docbook-xml.mk"
54− "doc/fptools.css"
55− "doc/happy.1.in"
56− "doc/happy.xml"
57− "examples/glr/nlp/Main.lhs"
58− "examples/glr/nlp/Makefile"
59− "examples/glr/nlp/README"
60− "examples/glr/nlp/English.y"
61− "examples/glr/nlp/Hugs.lhs"
62− "examples/glr/Makefile"
63− "examples/glr/Makefile.defs"
64− "examples/glr/expr-eval/Main.lhs"
65− "examples/glr/expr-eval/Makefile"
66− "examples/glr/expr-eval/Expr.y"
67− "examples/glr/expr-eval/README"
68− "examples/glr/expr-eval/Hugs.lhs"
69− "examples/glr/expr-tree/Main.lhs"
70− "examples/glr/expr-tree/Makefile"
71− "examples/glr/expr-tree/Expr.y"
72− "examples/glr/expr-tree/README"
73− "examples/glr/expr-tree/Tree.lhs"
74− "examples/glr/expr-tree/Hugs.lhs"
75− "examples/glr/highly-ambiguous/Main.lhs"
76− "examples/glr/highly-ambiguous/Makefile"
77− "examples/glr/highly-ambiguous/Expr.y"
78− "examples/glr/highly-ambiguous/README"
79− "examples/glr/highly-ambiguous/Hugs.lhs"
80− "examples/glr/hidden-leftrec/Main.lhs"
81− "examples/glr/hidden-leftrec/Makefile"
82− "examples/glr/hidden-leftrec/Expr.y"
83− "examples/glr/hidden-leftrec/README"
84− "examples/glr/hidden-leftrec/Hugs.lhs"
85− "examples/glr/expr-monad/Main.lhs"
86− "examples/glr/expr-monad/Makefile"
87− "examples/glr/expr-monad/Expr.y"
88− "examples/glr/expr-monad/README"
89− "examples/glr/expr-monad/Hugs.lhs"
90− "examples/glr/bio-eg/Main.lhs"
91− "examples/glr/bio-eg/Makefile"
92− "examples/glr/bio-eg/Bio.y"
93− "examples/glr/bio-eg/README"
94− "examples/glr/bio-eg/1-1200.dna"
95− "examples/glr/bio-eg/1-600.dna"
96− "examples/glr/common/DV_lhs"
97− "examples/glr/common/DaVinciTypes.hs"
98− "examples/glr/packing/Main.lhs"
99− "examples/glr/packing/Makefile"
100− "examples/glr/packing/Expr.y"
101− "examples/glr/packing/README"
102− "examples/glr/packing/Hugs.lhs"
103− "examples/PgnParser.ly"
104− "examples/MonadTest.ly"
105− "examples/igloo/ParserM.hs"
106− "examples/igloo/Makefile"
107− "examples/igloo/Parser.y"
108− "examples/igloo/Foo.hs"
109− "examples/igloo/README"
110− "examples/igloo/Lexer.x"
111− "examples/README"
112− "examples/Calc.ly"
113− "examples/DavesExample.ly"
114− "examples/ErrorTest.ly"
115− "examples/ErlParser.ly"
116− "examples/SimonsExample.ly"
117− "examples/LexerTest.ly"
118− "happy.spec"
119− "src/ARRAY-NOTES"
120− "tests/AttrGrammar001.y"
121− "tests/AttrGrammar002.y"
122− "tests/Makefile"
123− "tests/Partial.ly"
124− "tests/Test.ly"
125− "tests/TestMulti.ly"
126− "tests/TestPrecedence.ly"
127− "tests/bogus-token.y"
128− "tests/bug001.ly"
129− "tests/bug002.y"
130− "tests/error001.stderr"
131− "tests/error001.stdout"
132− "tests/error001.y"
133− "tests/monad001.y"
134− "tests/monad002.ly"
135− "tests/monaderror.y"
136− "tests/precedence001.ly"
137− "tests/precedence002.y"
138− "tests/test_rules.y"
139− "tests/issue91.y"
140− "tests/issue93.y"
141− "tests/issue94.y"
142− "tests/issue95.y"
143− "tests/monaderror-explist.y"
144− "tests/typeclass_monad001.y"
145− "tests/typeclass_monad002.ly"
146− "tests/typeclass_monad_lexer.y"
147− "tests/rank2.y"
148− ];
149− extraTmpFiles = [];
150− extraDocFiles = [];
151− };
152− components = {
153− exes = {
154− "happy" = {
155− depends = [
156− (hsPkgs."base" or (errorHandler.buildDepError "base"))
157− (hsPkgs."array" or (errorHandler.buildDepError "array"))
158− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
159− (hsPkgs."mtl" or (errorHandler.buildDepError "mtl"))
160− ];
161− buildable = true;
162− modules = [
163− "Paths_happy"
164− "AbsSyn"
165− "First"
166− "GenUtils"
167− "Grammar"
168− "Info"
169− "LALR"
170− "Lexer"
171− "ParseMonad"
172− "Parser"
173− "ProduceCode"
174− "ProduceGLRCode"
175− "NameSet"
176− "Target"
177− "AttrGrammar"
178− "AttrGrammarParser"
179− "ParamRules"
180− "PrettyGrammar"
181− ];
182− hsSourceDirs = [ "src" ];
183− mainPath = [ "Main.lhs" ];
184− };
185− };
186− tests = {
187− "tests" = {
188− depends = [
189− (hsPkgs."base" or (errorHandler.buildDepError "base"))
190− (hsPkgs."process" or (errorHandler.buildDepError "process"))
191− ];
192− build-tools = [
193− (hsPkgs.buildPackages.happy.components.exes.happy or (pkgs.buildPackages.happy or (errorHandler.buildToolDepError "happy:happy")))
194− ];
195− buildable = true;
196− mainPath = [ "test.hs" ];
197− };
198− };
199− };
200− } // rec { src = (pkgs.lib).mkDefault ../.; }
materialized/bootstrap/ghc884/happy-1.19.12/default.nixdeleted−56
@@ -1,56 +0,0 @@
1−{
2− pkgs = hackage:
3− {
4− packages = {
5− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
6− "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
7− "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
8− "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
9− "rts".revision = (((hackage."rts")."1.0").revisions).default;
10− "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
11− "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
12− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
13− "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
14− };
15− compiler = {
16− version = "8.8.4";
17− nix-name = "ghc884";
18− packages = {
19− "array" = "0.5.4.0";
20− "mtl" = "2.2.2";
21− "ghc-prim" = "0.5.3";
22− "base" = "4.13.0.0";
23− "rts" = "1.0";
24− "transformers" = "0.5.6.2";
25− "deepseq" = "1.4.4.0";
26− "integer-gmp" = "1.0.2.0";
27− "containers" = "0.6.2.1";
28− };
29− };
30− };
31− extras = hackage:
32− { packages = { happy = ./.plan.nix/happy.nix; }; };
33− modules = [
34− ({ lib, ... }:
35− {
36− packages = {
37− "happy" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
38− };
39− })
40− ({ lib, ... }:
41− {
42− packages = {
43− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
44− "array".components.library.planned = lib.mkOverride 900 true;
45− "rts".components.library.planned = lib.mkOverride 900 true;
46− "happy".components.exes."happy".planned = lib.mkOverride 900 true;
47− "mtl".components.library.planned = lib.mkOverride 900 true;
48− "transformers".components.library.planned = lib.mkOverride 900 true;
49− "deepseq".components.library.planned = lib.mkOverride 900 true;
50− "base".components.library.planned = lib.mkOverride 900 true;
51− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
52− "containers".components.library.planned = lib.mkOverride 900 true;
53− };
54− })
55− ];
56− }
materialized/bootstrap/ghc884/hscolour/.plan.nix/hscolour.nixdeleted−70
@@ -1,70 +0,0 @@
1−{ system
2− , compiler
3− , flags
4− , pkgs
5− , hsPkgs
6− , pkgconfPkgs
7− , errorHandler
8− , config
9− , ... }:
10− {
11− flags = {};
12− package = {
13− specVersion = "1.6";
14− identifier = { name = "hscolour"; version = "1.24.4"; };
15− license = "LicenseRef-LGPL";
16− copyright = "2003-2017 Malcolm Wallace; 2006 Bjorn Bringert";
17− maintainer = "Malcolm Wallace";
18− author = "Malcolm Wallace";
19− homepage = "http://code.haskell.org/~malcolm/hscolour/";
20− url = "";
21− synopsis = "Colourise Haskell code.";
22− description = "hscolour is a small Haskell script to colourise Haskell code. It currently\nhas six output formats:\nANSI terminal codes (optionally XTerm-256colour codes),\nHTML 3.2 with <font> tags,\nHTML 4.01 with CSS,\nHTML 4.01 with CSS and mouseover annotations,\nXHTML 1.0 with inline CSS styling,\nLaTeX,\nand mIRC chat codes.";
23− buildType = "Simple";
24− isLocal = true;
25− detailLevel = "FullDetails";
26− licenseFiles = [ "LICENCE-LGPL" ];
27− dataDir = ".";
28− dataFiles = [ "hscolour.css" "data/rgb24-example-.hscolour" ];
29− extraSrcFiles = [];
30− extraTmpFiles = [];
31− extraDocFiles = [];
32− };
33− components = {
34− "library" = {
35− depends = [
36− (hsPkgs."base" or (errorHandler.buildDepError "base"))
37− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
38− ];
39− buildable = true;
40− modules = [
41− "Language/Haskell/HsColour"
42− "Language/Haskell/HsColour/ANSI"
43− "Language/Haskell/HsColour/Anchors"
44− "Language/Haskell/HsColour/ACSS"
45− "Language/Haskell/HsColour/CSS"
46− "Language/Haskell/HsColour/Classify"
47− "Language/Haskell/HsColour/ColourHighlight"
48− "Language/Haskell/HsColour/Colourise"
49− "Language/Haskell/HsColour/General"
50− "Language/Haskell/HsColour/HTML"
51− "Language/Haskell/HsColour/InlineCSS"
52− "Language/Haskell/HsColour/LaTeX"
53− "Language/Haskell/HsColour/MIRC"
54− "Language/Haskell/HsColour/Options"
55− "Language/Haskell/HsColour/Output"
56− "Language/Haskell/HsColour/TTY"
57− ];
58− };
59− exes = {
60− "HsColour" = {
61− depends = [
62− (hsPkgs."base" or (errorHandler.buildDepError "base"))
63− (hsPkgs."containers" or (errorHandler.buildDepError "containers"))
64− ];
65− buildable = true;
66− mainPath = [ "HsColour.hs" ];
67− };
68− };
69− };
70− } // rec { src = (pkgs.lib).mkDefault ../.; }
materialized/bootstrap/ghc884/hscolour/default.nixdeleted−47
@@ -1,47 +0,0 @@
1−{
2− pkgs = hackage:
3− {
4− packages = {
5− "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
6− "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
7− "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
8− "rts".revision = (((hackage."rts")."1.0").revisions).default;
9− "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
10− "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
11− "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
12− };
13− compiler = {
14− version = "8.8.4";
15− nix-name = "ghc884";
16− packages = {
17− "array" = "0.5.4.0";
18− "ghc-prim" = "0.5.3";
19− "base" = "4.13.0.0";
20− "rts" = "1.0";
21− "deepseq" = "1.4.4.0";
22− "integer-gmp" = "1.0.2.0";
23− "containers" = "0.6.2.1";
24− };
25− };
26− };
27− extras = hackage:
28− { packages = { hscolour = ./.plan.nix/hscolour.nix; }; };
29− modules = [
30− ({ lib, ... }:
31− { packages = { "hscolour" = { flags = {}; }; }; })
32− ({ lib, ... }:
33− {
34− packages = {
35− "ghc-prim".components.library.planned = lib.mkOverride 900 true;
36− "array".components.library.planned = lib.mkOverride 900 true;
37− "rts".components.library.planned = lib.mkOverride 900 true;
38− "hscolour".components.library.planned = lib.mkOverride 900 true;
39− "hscolour".components.exes."HsColour".planned = lib.mkOverride 900 true;
40− "deepseq".components.library.planned = lib.mkOverride 900 true;
41− "base".components.library.planned = lib.mkOverride 900 true;
42− "integer-gmp".components.library.planned = lib.mkOverride 900 true;
43− "containers".components.library.planned = lib.mkOverride 900 true;
44− };
45− })
46− ];
47− }
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.1-x86_64-linux/ghc/info+1−1
@@ -43,7 +43,7 @@
4343 ,("RTS expects libdw","NO")
4444 ,("Project version","8.10.1")
4545 ,("Project Git commit id","5c3cadf5db0d7eb859ff2c278ab07585c7df17b5")
46− ,("Booter version","8.6.5")
46+ ,("Booter version","8.8.4")
4747 ,("Stage","1")
4848 ,("Build platform","x86_64-unknown-linux")
4949 ,("Host platform","x86_64-unknown-linux")
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.2-x86_64-linux/ghc/info+1−1
@@ -44,7 +44,7 @@
4444 ,("RTS expects libdw","NO")
4545 ,("Project version","8.10.2")
4646 ,("Project Git commit id","29204b1c4f52ea34d84da33593052ee839293bf2")
47− ,("Booter version","8.6.5")
47+ ,("Booter version","8.8.4")
4848 ,("Stage","1")
4949 ,("Build platform","x86_64-unknown-linux")
5050 ,("Host platform","x86_64-unknown-linux")
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc-pkg/dump-globaldeleted−1443
@@ -1,1443 +0,0 @@
1−name: Cabal
2−version: 3.2.1.0
3−visibility: public
4−id: Cabal-3.2.1.0
5−key: Cabal-3.2.1.0
6−license: BSD-3-Clause
7−copyright: 2003-2020, Cabal Development Team (see AUTHORS file)
8−maintainer: cabal-devel@haskell.org
9−author: Cabal Development Team <cabal-devel@haskell.org>
10−homepage: http://www.haskell.org/cabal/
11−synopsis: A framework for packaging Haskell software
12−description:
13− The Haskell Common Architecture for Building Applications and
14− Libraries: a framework defining a common interface for authors to more
15− easily build their Haskell applications in a portable way.
16− The Haskell Cabal is part of a larger infrastructure for distributing,
17− organizing, and cataloging Haskell libraries and tools.
18−category: Distribution
19−exposed: True
20−exposed-modules:
21− Distribution.Backpack Distribution.Backpack.ComponentsGraph
22− Distribution.Backpack.Configure
23− Distribution.Backpack.ConfiguredComponent
24− Distribution.Backpack.DescribeUnitId
25− Distribution.Backpack.FullUnitId
26− Distribution.Backpack.LinkedComponent
27− Distribution.Backpack.ModSubst Distribution.Backpack.ModuleShape
28− Distribution.Backpack.PreModuleShape Distribution.CabalSpecVersion
29− Distribution.Compat.Binary Distribution.Compat.CharParsing
30− Distribution.Compat.CreatePipe Distribution.Compat.DList
31− Distribution.Compat.Directory Distribution.Compat.Environment
32− Distribution.Compat.Exception Distribution.Compat.FilePath
33− Distribution.Compat.Graph Distribution.Compat.Internal.TempFile
34− Distribution.Compat.Lens Distribution.Compat.Newtype
35− Distribution.Compat.Parsing Distribution.Compat.Prelude.Internal
36− Distribution.Compat.Process Distribution.Compat.ResponseFile
37− Distribution.Compat.Semigroup Distribution.Compat.Stack
38− Distribution.Compat.Time Distribution.Compat.Typeable
39− Distribution.Compiler Distribution.FieldGrammar
40− Distribution.FieldGrammar.Class
41− Distribution.FieldGrammar.FieldDescrs
42− Distribution.FieldGrammar.Parsec Distribution.FieldGrammar.Pretty
43− Distribution.Fields Distribution.Fields.ConfVar
44− Distribution.Fields.Field Distribution.Fields.Lexer
45− Distribution.Fields.LexerMonad Distribution.Fields.ParseResult
46− Distribution.Fields.Parser Distribution.Fields.Pretty
47− Distribution.InstalledPackageInfo Distribution.License
48− Distribution.Make Distribution.ModuleName Distribution.Package
49− Distribution.PackageDescription
50− Distribution.PackageDescription.Check
51− Distribution.PackageDescription.Configuration
52− Distribution.PackageDescription.FieldGrammar
53− Distribution.PackageDescription.Parsec
54− Distribution.PackageDescription.PrettyPrint
55− Distribution.PackageDescription.Quirks
56− Distribution.PackageDescription.Utils Distribution.Parsec
57− Distribution.Parsec.Error Distribution.Parsec.FieldLineStream
58− Distribution.Parsec.Newtypes Distribution.Parsec.Position
59− Distribution.Parsec.Warning Distribution.Pretty Distribution.ReadE
60− Distribution.SPDX Distribution.SPDX.License
61− Distribution.SPDX.LicenseExceptionId
62− Distribution.SPDX.LicenseExpression Distribution.SPDX.LicenseId
63− Distribution.SPDX.LicenseListVersion
64− Distribution.SPDX.LicenseReference Distribution.Simple
65− Distribution.Simple.Bench Distribution.Simple.Build
66− Distribution.Simple.Build.Macros
67− Distribution.Simple.Build.PathsModule
68− Distribution.Simple.BuildPaths Distribution.Simple.BuildTarget
69− Distribution.Simple.BuildToolDepends Distribution.Simple.CCompiler
70− Distribution.Simple.Command Distribution.Simple.Compiler
71− Distribution.Simple.Configure Distribution.Simple.Doctest
72− Distribution.Simple.Flag Distribution.Simple.GHC
73− Distribution.Simple.GHCJS Distribution.Simple.Glob
74− Distribution.Simple.Haddock Distribution.Simple.HaskellSuite
75− Distribution.Simple.Hpc Distribution.Simple.Install
76− Distribution.Simple.InstallDirs
77− Distribution.Simple.InstallDirs.Internal
78− Distribution.Simple.LocalBuildInfo Distribution.Simple.PackageIndex
79− Distribution.Simple.PreProcess Distribution.Simple.PreProcess.Unlit
80− Distribution.Simple.Program Distribution.Simple.Program.Ar
81− Distribution.Simple.Program.Builtin Distribution.Simple.Program.Db
82− Distribution.Simple.Program.Find Distribution.Simple.Program.GHC
83− Distribution.Simple.Program.HcPkg Distribution.Simple.Program.Hpc
84− Distribution.Simple.Program.Internal Distribution.Simple.Program.Ld
85− Distribution.Simple.Program.ResponseFile
86− Distribution.Simple.Program.Run Distribution.Simple.Program.Script
87− Distribution.Simple.Program.Strip Distribution.Simple.Program.Types
88− Distribution.Simple.Register Distribution.Simple.Setup
89− Distribution.Simple.ShowBuildInfo Distribution.Simple.SrcDist
90− Distribution.Simple.Test Distribution.Simple.Test.ExeV10
91− Distribution.Simple.Test.LibV09 Distribution.Simple.Test.Log
92− Distribution.Simple.UHC Distribution.Simple.UserHooks
93− Distribution.Simple.Utils Distribution.System
94− Distribution.TestSuite Distribution.Text
95− Distribution.Types.AbiDependency Distribution.Types.AbiHash
96− Distribution.Types.AnnotatedId Distribution.Types.Benchmark
97− Distribution.Types.Benchmark.Lens
98− Distribution.Types.BenchmarkInterface
99− Distribution.Types.BenchmarkType Distribution.Types.BuildInfo
100− Distribution.Types.BuildInfo.Lens Distribution.Types.BuildType
101− Distribution.Types.Component Distribution.Types.ComponentId
102− Distribution.Types.ComponentInclude
103− Distribution.Types.ComponentLocalBuildInfo
104− Distribution.Types.ComponentName
105− Distribution.Types.ComponentRequestedSpec
106− Distribution.Types.CondTree Distribution.Types.Condition
107− Distribution.Types.ConfVar Distribution.Types.Dependency
108− Distribution.Types.DependencyMap Distribution.Types.ExeDependency
109− Distribution.Types.Executable Distribution.Types.Executable.Lens
110− Distribution.Types.ExecutableScope Distribution.Types.ExposedModule
111− Distribution.Types.Flag Distribution.Types.ForeignLib
112− Distribution.Types.ForeignLib.Lens
113− Distribution.Types.ForeignLibOption
114− Distribution.Types.ForeignLibType
115− Distribution.Types.GenericPackageDescription
116− Distribution.Types.GenericPackageDescription.Lens
117− Distribution.Types.GivenComponent
118− Distribution.Types.HookedBuildInfo
119− Distribution.Types.IncludeRenaming
120− Distribution.Types.InstalledPackageInfo
121− Distribution.Types.InstalledPackageInfo.FieldGrammar
122− Distribution.Types.InstalledPackageInfo.Lens
123− Distribution.Types.LegacyExeDependency Distribution.Types.Lens
124− Distribution.Types.Library Distribution.Types.Library.Lens
125− Distribution.Types.LibraryName Distribution.Types.LibraryVisibility
126− Distribution.Types.LocalBuildInfo Distribution.Types.Mixin
127− Distribution.Types.Module Distribution.Types.ModuleReexport
128− Distribution.Types.ModuleRenaming
129− Distribution.Types.MungedPackageId
130− Distribution.Types.MungedPackageName
131− Distribution.Types.PackageDescription
132− Distribution.Types.PackageDescription.Lens
133− Distribution.Types.PackageId Distribution.Types.PackageId.Lens
134− Distribution.Types.PackageName Distribution.Types.PackageName.Magic
135− Distribution.Types.PackageVersionConstraint
136− Distribution.Types.PkgconfigDependency
137− Distribution.Types.PkgconfigName
138− Distribution.Types.PkgconfigVersion
139− Distribution.Types.PkgconfigVersionRange
140− Distribution.Types.SetupBuildInfo
141− Distribution.Types.SetupBuildInfo.Lens
142− Distribution.Types.SourceRepo Distribution.Types.SourceRepo.Lens
143− Distribution.Types.TargetInfo Distribution.Types.TestSuite
144− Distribution.Types.TestSuite.Lens
145− Distribution.Types.TestSuiteInterface Distribution.Types.TestType
146− Distribution.Types.UnitId Distribution.Types.UnqualComponentName
147− Distribution.Types.Version Distribution.Types.VersionInterval
148− Distribution.Types.VersionRange
149− Distribution.Types.VersionRange.Internal Distribution.Utils.Generic
150− Distribution.Utils.IOData Distribution.Utils.LogProgress
151− Distribution.Utils.MD5 Distribution.Utils.MapAccum
152− Distribution.Utils.NubList Distribution.Utils.Progress
153− Distribution.Utils.ShortText Distribution.Utils.Structured
154− Distribution.Verbosity Distribution.Verbosity.Internal
155− Distribution.Version Language.Haskell.Extension
156−hidden-modules:
157− Distribution.Backpack.PreExistingComponent
158− Distribution.Backpack.ReadyComponent Distribution.Backpack.MixLink
159− Distribution.Backpack.ModuleScope Distribution.Backpack.UnifyM
160− Distribution.Backpack.Id Distribution.Utils.UnionFind
161− Distribution.Utils.Base62 Distribution.Compat.Async
162− Distribution.Compat.CopyFile Distribution.Compat.GetShortPathName
163− Distribution.Compat.MonadFail Distribution.Compat.Prelude
164− Distribution.Compat.SnocList Distribution.GetOpt Distribution.Lex
165− Distribution.Utils.String Distribution.Simple.GHC.EnvironmentParser
166− Distribution.Simple.GHC.Internal Distribution.Simple.GHC.ImplInfo
167− Distribution.Simple.Utils.Json Paths_Cabal
168−import-dirs:
169−library-dirs:
170−dynamic-library-dirs:
171−data-dir:
172−hs-libraries: HSCabal-3.2.1.0
173−depends:
174− array-0.5.4.0 base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
175− containers-0.6.2.1 deepseq-1.4.4.0 directory-1.3.6.0
176− filepath-1.4.2.1 mtl-2.2.2 parsec-3.1.14.0 pretty-1.1.3.6
177− process-1.6.9.0 text-1.2.4.1 time-1.9.3 transformers-0.5.6.2
178− unix-2.7.2.2
179−haddock-interfaces:
180−haddock-html:
181−---
182−name: array
183−version: 0.5.4.0
184−visibility: public
185−id: array-0.5.4.0
186−key: array-0.5.4.0
187−license: BSD-3-Clause
188−maintainer: libraries@haskell.org
189−synopsis: Mutable and immutable arrays
190−description:
191− In addition to providing the "Data.Array" module
192− <http://www.haskell.org/onlinereport/haskell2010/haskellch14.html as specified in the Haskell 2010 Language Report>,
193− this package also defines the classes 'IArray' of
194− immutable arrays and 'MArray' of arrays mutable within appropriate
195− monads, as well as some instances of these classes.
196−category: Data Structures
197−exposed: True
198−exposed-modules:
199− Data.Array Data.Array.Base Data.Array.IArray Data.Array.IO
200− Data.Array.IO.Internals Data.Array.IO.Safe Data.Array.MArray
201− Data.Array.MArray.Safe Data.Array.ST Data.Array.ST.Safe
202− Data.Array.Storable Data.Array.Storable.Internals
203− Data.Array.Storable.Safe Data.Array.Unboxed Data.Array.Unsafe
204−import-dirs:
205−library-dirs:
206−dynamic-library-dirs:
207−data-dir:
208−hs-libraries: HSarray-0.5.4.0
209−depends: base-4.14.1.0
210−haddock-interfaces:
211−haddock-html:
212−---
213−name: base
214−version: 4.14.1.0
215−visibility: public
216−id: base-4.14.1.0
217−key: base-4.14.1.0
218−license: BSD-3-Clause
219−maintainer: libraries@haskell.org
220−synopsis: Basic libraries
221−description:
222− This package contains the Standard Haskell "Prelude" and its support libraries,
223− and a large collection of useful libraries ranging from data
224− structures to parsing combinators and debugging utilities.
225−category: Prelude
226−exposed: True
227−exposed-modules:
228− Control.Applicative Control.Arrow Control.Category
229− Control.Concurrent Control.Concurrent.Chan Control.Concurrent.MVar
230− Control.Concurrent.QSem Control.Concurrent.QSemN Control.Exception
231− Control.Exception.Base Control.Monad Control.Monad.Fail
232− Control.Monad.Fix Control.Monad.IO.Class Control.Monad.Instances
233− Control.Monad.ST Control.Monad.ST.Lazy Control.Monad.ST.Lazy.Safe
234− Control.Monad.ST.Lazy.Unsafe Control.Monad.ST.Safe
235− Control.Monad.ST.Strict Control.Monad.ST.Unsafe Control.Monad.Zip
236− Data.Bifoldable Data.Bifunctor Data.Bitraversable Data.Bits
237− Data.Bool Data.Char Data.Coerce Data.Complex Data.Data Data.Dynamic
238− Data.Either Data.Eq Data.Fixed Data.Foldable Data.Function
239− Data.Functor Data.Functor.Classes Data.Functor.Compose
240− Data.Functor.Const Data.Functor.Contravariant Data.Functor.Identity
241− Data.Functor.Product Data.Functor.Sum Data.IORef Data.Int Data.Ix
242− Data.Kind Data.List Data.List.NonEmpty Data.Maybe Data.Monoid
243− Data.Ord Data.Proxy Data.Ratio Data.STRef Data.STRef.Lazy
244− Data.STRef.Strict Data.Semigroup Data.String Data.Traversable
245− Data.Tuple Data.Type.Bool Data.Type.Coercion Data.Type.Equality
246− Data.Typeable Data.Unique Data.Version Data.Void Data.Word
247− Debug.Trace Foreign Foreign.C Foreign.C.Error Foreign.C.String
248− Foreign.C.Types Foreign.Concurrent Foreign.ForeignPtr
249− Foreign.ForeignPtr.Safe Foreign.ForeignPtr.Unsafe Foreign.Marshal
250− Foreign.Marshal.Alloc Foreign.Marshal.Array Foreign.Marshal.Error
251− Foreign.Marshal.Pool Foreign.Marshal.Safe Foreign.Marshal.Unsafe
252− Foreign.Marshal.Utils Foreign.Ptr Foreign.Safe Foreign.StablePtr
253− Foreign.Storable GHC.Arr GHC.Base GHC.ByteOrder GHC.Char GHC.Clock
254− GHC.Conc GHC.Conc.IO GHC.Conc.Signal GHC.Conc.Sync
255− GHC.ConsoleHandler GHC.Constants GHC.Desugar GHC.Enum
256− GHC.Environment GHC.Err GHC.Event GHC.Exception GHC.Exception.Type
257− GHC.ExecutionStack GHC.ExecutionStack.Internal GHC.Exts
258− GHC.Fingerprint GHC.Fingerprint.Type GHC.Float
259− GHC.Float.ConversionUtils GHC.Float.RealFracMethods GHC.Foreign
260− GHC.ForeignPtr GHC.GHCi GHC.GHCi.Helpers GHC.Generics GHC.IO
261− GHC.IO.Buffer GHC.IO.BufferedIO GHC.IO.Device GHC.IO.Encoding
262− GHC.IO.Encoding.CodePage GHC.IO.Encoding.Failure
263− GHC.IO.Encoding.Iconv GHC.IO.Encoding.Latin1 GHC.IO.Encoding.Types
264− GHC.IO.Encoding.UTF16 GHC.IO.Encoding.UTF32 GHC.IO.Encoding.UTF8
265− GHC.IO.Exception GHC.IO.FD GHC.IO.Handle GHC.IO.Handle.FD
266− GHC.IO.Handle.Internals GHC.IO.Handle.Lock GHC.IO.Handle.Text
267− GHC.IO.Handle.Types GHC.IO.IOMode GHC.IO.Unsafe GHC.IOArray
268− GHC.IORef GHC.Int GHC.Ix GHC.List GHC.MVar GHC.Maybe GHC.Natural
269− GHC.Num GHC.OldList GHC.OverloadedLabels GHC.Pack GHC.Profiling
270− GHC.Ptr GHC.RTS.Flags GHC.Read GHC.Real GHC.Records
271− GHC.ResponseFile GHC.ST GHC.STRef GHC.Show GHC.Stable
272− GHC.StableName GHC.Stack GHC.Stack.CCS GHC.Stack.Types
273− GHC.StaticPtr GHC.Stats GHC.Storable GHC.TopHandler GHC.TypeLits
274− GHC.TypeNats GHC.Unicode GHC.Weak GHC.Word Numeric Numeric.Natural
275− Prelude System.CPUTime System.Console.GetOpt System.Environment
276− System.Environment.Blank System.Exit System.IO System.IO.Error
277− System.IO.Unsafe System.Info System.Mem System.Mem.StableName
278− System.Mem.Weak System.Posix.Internals System.Posix.Types
279− System.Timeout Text.ParserCombinators.ReadP
280− Text.ParserCombinators.ReadPrec Text.Printf Text.Read Text.Read.Lex
281− Text.Show Text.Show.Functions Type.Reflection
282− Type.Reflection.Unsafe Unsafe.Coerce
283−hidden-modules:
284− Control.Monad.ST.Imp Control.Monad.ST.Lazy.Imp Data.Functor.Utils
285− Data.OldList Data.Semigroup.Internal Data.Typeable.Internal
286− Foreign.ForeignPtr.Imp GHC.IO.Handle.Lock.Common
287− GHC.IO.Handle.Lock.Flock GHC.IO.Handle.Lock.LinuxOFD
288− GHC.IO.Handle.Lock.NoOp GHC.IO.Handle.Lock.Windows
289− GHC.StaticPtr.Internal System.Environment.ExecutablePath
290− System.CPUTime.Utils GHC.Event.Arr GHC.Event.Array
291− GHC.Event.Control GHC.Event.EPoll GHC.Event.IntTable
292− GHC.Event.Internal GHC.Event.KQueue GHC.Event.Manager GHC.Event.PSQ
293− GHC.Event.Poll GHC.Event.Thread GHC.Event.TimerManager
294− GHC.Event.Unique System.CPUTime.Posix.ClockGetTime
295− System.CPUTime.Posix.Times System.CPUTime.Posix.RUsage
296− System.CPUTime.Unsupported
297−import-dirs:
298−library-dirs:
299−dynamic-library-dirs:
300−data-dir:
301−hs-libraries: HSbase-4.14.1.0
302−include-dirs:
303−includes: HsBase.h
304−depends: ghc-prim-0.6.1 integer-gmp-1.0.3.0 rts
305−haddock-interfaces:
306−haddock-html:
307−---
308−name: binary
309−version: 0.8.8.0
310−visibility: public
311−id: binary-0.8.8.0
312−key: binary-0.8.8.0
313−license: BSD-3-Clause
314−maintainer: Lennart Kolmodin, Don Stewart <dons00@gmail.com>
315−author: Lennart Kolmodin <kolmodin@gmail.com>
316−stability: provisional
317−homepage: https://github.com/kolmodin/binary
318−synopsis:
319− Binary serialisation for Haskell values using lazy ByteStrings
320−description:
321− Efficient, pure binary serialisation using lazy ByteStrings.
322− Haskell values may be encoded to and from binary formats,
323− written to disk as binary, or sent over the network.
324− The format used can be automatically generated, or
325− you can choose to implement a custom format if needed.
326− Serialisation speeds of over 1 G\/sec have been observed,
327− so this library should be suitable for high performance
328− scenarios.
329−category: Data, Parsing
330−exposed: True
331−exposed-modules:
332− Data.Binary Data.Binary.Builder Data.Binary.Get
333− Data.Binary.Get.Internal Data.Binary.Put
334−hidden-modules:
335− Data.Binary.Class Data.Binary.Internal Data.Binary.Generic
336− Data.Binary.FloatCast
337−import-dirs:
338−library-dirs:
339−dynamic-library-dirs:
340−data-dir:
341−hs-libraries: HSbinary-0.8.8.0
342−depends:
343− array-0.5.4.0 base-4.14.1.0 bytestring-0.10.12.0 containers-0.6.2.1
344−haddock-interfaces:
345−haddock-html:
346−---
347−name: bytestring
348−version: 0.10.12.0
349−visibility: public
350−id: bytestring-0.10.12.0
351−key: bytestring-0.10.12.0
352−license: BSD-3-Clause
353−copyright:
354− Copyright (c) Don Stewart 2005-2009,
355− (c) Duncan Coutts 2006-2015,
356− (c) David Roundy 2003-2005,
357− (c) Jasper Van der Jeugt 2010,
358− (c) Simon Meier 2010-2013.
359−maintainer: Duncan Coutts <duncan@community.haskell.org>
360−author:
361− Don Stewart,
362− Duncan Coutts
363−homepage: https://github.com/haskell/bytestring
364−synopsis:
365− Fast, compact, strict and lazy byte strings with a list interface
366−description:
367− An efficient compact, immutable byte string type (both strict and lazy)
368− suitable for binary or 8-bit character data.
369− The 'ByteString' type represents sequences of bytes or 8-bit characters.
370− It is suitable for high performance use, both in terms of large data
371− quantities, or high speed requirements. The 'ByteString' functions follow
372− the same style as Haskell\'s ordinary lists, so it is easy to convert code
373− from using 'String' to 'ByteString'.
374− Two 'ByteString' variants are provided:
375− * Strict 'ByteString's keep the string as a single large array. This
376− makes them convenient for passing data between C and Haskell.
377− * Lazy 'ByteString's use a lazy list of strict chunks which makes it
378− suitable for I\/O streaming tasks.
379− The @Char8@ modules provide a character-based view of the same
380− underlying 'ByteString' types. This makes it convenient to handle mixed
381− binary and 8-bit character content (which is common in many file formats
382− and network protocols).
383− The 'Builder' module provides an efficient way to build up 'ByteString's
384− in an ad-hoc way by repeated concatenation. This is ideal for fast
385− serialisation or pretty printing.
386− There is also a 'ShortByteString' type which has a lower memory overhead
387− and can can be converted to or from a 'ByteString', but supports very few
388− other operations. It is suitable for keeping many short strings in memory.
389− 'ByteString's are not designed for Unicode. For Unicode strings you should
390− use the 'Text' type from the @text@ package.
391− These modules are intended to be imported qualified, to avoid name clashes
392− with "Prelude" functions, e.g.
393− > import qualified Data.ByteString as BS
394−category: Data
395−exposed: True
396−exposed-modules:
397− Data.ByteString Data.ByteString.Builder
398− Data.ByteString.Builder.Extra Data.ByteString.Builder.Internal
399− Data.ByteString.Builder.Prim Data.ByteString.Builder.Prim.Internal
400− Data.ByteString.Char8 Data.ByteString.Internal Data.ByteString.Lazy
401− Data.ByteString.Lazy.Builder Data.ByteString.Lazy.Builder.ASCII
402− Data.ByteString.Lazy.Builder.Extras Data.ByteString.Lazy.Char8
403− Data.ByteString.Lazy.Internal Data.ByteString.Short
404− Data.ByteString.Short.Internal Data.ByteString.Unsafe
405−hidden-modules:
406− Data.ByteString.Builder.ASCII Data.ByteString.Builder.Prim.Binary
407− Data.ByteString.Builder.Prim.ASCII
408− Data.ByteString.Builder.Prim.Internal.Floating
409− Data.ByteString.Builder.Prim.Internal.UncheckedShifts
410− Data.ByteString.Builder.Prim.Internal.Base16
411−import-dirs:
412−library-dirs:
413−dynamic-library-dirs:
414−data-dir:
415−hs-libraries: HSbytestring-0.10.12.0
416−include-dirs:
417−includes: fpstring.h
418−depends:
419− base-4.14.1.0 deepseq-1.4.4.0 ghc-prim-0.6.1 integer-gmp-1.0.3.0
420−haddock-interfaces:
421−haddock-html:
422−---
423−name: containers
424−version: 0.6.2.1
425−visibility: public
426−id: containers-0.6.2.1
427−key: containers-0.6.2.1
428−license: BSD-3-Clause
429−maintainer: libraries@haskell.org
430−synopsis: Assorted concrete container types
431−description:
432− This package contains efficient general-purpose implementations
433− of various immutable container types including sets, maps, sequences,
434− trees, and graphs.
435− For a walkthrough of what this package provides with examples of common
436− operations see the [containers
437− introduction](https://haskell-containers.readthedocs.io).
438− The declared cost of each operation is either worst-case or amortized, but
439− remains valid even if structures are shared.
440−category: Data Structures
441−exposed: True
442−exposed-modules:
443− Data.Containers.ListUtils Data.Graph Data.IntMap
444− Data.IntMap.Internal Data.IntMap.Internal.Debug Data.IntMap.Lazy
445− Data.IntMap.Merge.Lazy Data.IntMap.Merge.Strict Data.IntMap.Strict
446− Data.IntMap.Strict.Internal Data.IntSet Data.IntSet.Internal
447− Data.Map Data.Map.Internal Data.Map.Internal.Debug Data.Map.Lazy
448− Data.Map.Merge.Lazy Data.Map.Merge.Strict Data.Map.Strict
449− Data.Map.Strict.Internal Data.Sequence Data.Sequence.Internal
450− Data.Sequence.Internal.Sorting Data.Set Data.Set.Internal Data.Tree
451− Utils.Containers.Internal.BitQueue
452− Utils.Containers.Internal.BitUtil
453− Utils.Containers.Internal.StrictPair
454−hidden-modules:
455− Utils.Containers.Internal.State
456− Utils.Containers.Internal.StrictMaybe
457− Utils.Containers.Internal.PtrEquality
458− Utils.Containers.Internal.Coercions
459− Utils.Containers.Internal.TypeError
460− Data.Map.Internal.DeprecatedShowTree
461− Data.IntMap.Internal.DeprecatedDebug
462−import-dirs:
463−library-dirs:
464−dynamic-library-dirs:
465−data-dir:
466−hs-libraries: HScontainers-0.6.2.1
467−depends: array-0.5.4.0 base-4.14.1.0 deepseq-1.4.4.0
468−haddock-interfaces:
469−haddock-html:
470−---
471−name: deepseq
472−version: 1.4.4.0
473−visibility: public
474−id: deepseq-1.4.4.0
475−key: deepseq-1.4.4.0
476−license: BSD-3-Clause
477−maintainer: libraries@haskell.org
478−synopsis: Deep evaluation of data structures
479−description:
480− This package provides methods for fully evaluating data structures
481− (\"deep evaluation\"). Deep evaluation is often used for adding
482− strictness to a program, e.g. in order to force pending exceptions,
483− remove space leaks, or force lazy I/O to happen. It is also useful
484− in parallel programs, to ensure pending work does not migrate to the
485− wrong thread.
486− The primary use of this package is via the 'deepseq' function, a
487− \"deep\" version of 'seq'. It is implemented on top of an 'NFData'
488− typeclass (\"Normal Form Data\", data structures with no unevaluated
489− components) which defines strategies for fully evaluating different
490− data types. See module documentation in "Control.DeepSeq" for more
491− details.
492−category: Control
493−exposed: True
494−exposed-modules: Control.DeepSeq
495−hidden-modules: Control.DeepSeq.BackDoor
496−import-dirs:
497−library-dirs:
498−dynamic-library-dirs:
499−data-dir:
500−hs-libraries: HSdeepseq-1.4.4.0
501−depends: array-0.5.4.0 base-4.14.1.0
502−haddock-interfaces:
503−haddock-html:
504−---
505−name: directory
506−version: 1.3.6.0
507−visibility: public
508−id: directory-1.3.6.0
509−key: directory-1.3.6.0
510−license: BSD-3-Clause
511−maintainer: libraries@haskell.org
512−synopsis: Platform-agnostic library for filesystem operations
513−description:
514− This library provides a basic set of operations for manipulating files and
515− directories in a portable way.
516−category: System
517−exposed: True
518−exposed-modules:
519− System.Directory System.Directory.Internal
520− System.Directory.Internal.Prelude
521−hidden-modules:
522− System.Directory.Internal.C_utimensat
523− System.Directory.Internal.Common System.Directory.Internal.Config
524− System.Directory.Internal.Posix System.Directory.Internal.Windows
525−import-dirs:
526−library-dirs:
527−dynamic-library-dirs:
528−data-dir:
529−hs-libraries: HSdirectory-1.3.6.0
530−depends:
531− base-4.14.1.0 filepath-1.4.2.1 time-1.9.3 unix-2.7.2.2
532−haddock-interfaces:
533−haddock-html:
534−---
535−name: exceptions
536−version: 0.10.4
537−visibility: public
538−id: exceptions-0.10.4
539−key: exceptions-0.10.4
540−license: BSD-3-Clause
541−copyright:
542− Copyright (C) 2013-2015 Edward A. Kmett
543− Copyright (C) 2012 Google Inc.
544−maintainer: Edward A. Kmett <ekmett@gmail.com>
545−author: Edward A. Kmett
546−stability: provisional
547−homepage: http://github.com/ekmett/exceptions/
548−synopsis: Extensible optionally-pure exceptions
549−description: Extensible optionally-pure exceptions.
550−category: Control, Exceptions, Monad
551−exposed: True
552−exposed-modules: Control.Monad.Catch Control.Monad.Catch.Pure
553−import-dirs:
554−library-dirs:
555−dynamic-library-dirs:
556−data-dir:
557−hs-libraries: HSexceptions-0.10.4
558−depends:
559− base-4.14.1.0 mtl-2.2.2 stm-2.5.0.0 template-haskell-2.16.0.0
560− transformers-0.5.6.2
561−haddock-interfaces:
562−haddock-html:
563−---
564−name: filepath
565−version: 1.4.2.1
566−visibility: public
567−id: filepath-1.4.2.1
568−key: filepath-1.4.2.1
569−license: BSD-3-Clause
570−copyright: Neil Mitchell 2005-2018
571−maintainer: Neil Mitchell <ndmitchell@gmail.com>
572−author: Neil Mitchell <ndmitchell@gmail.com>
573−homepage: https://github.com/haskell/filepath#readme
574−synopsis: Library for manipulating FilePaths in a cross platform way.
575−description:
576− This package provides functionality for manipulating @FilePath@ values, and is shipped with both <https://www.haskell.org/ghc/ GHC> and the <https://www.haskell.org/platform/ Haskell Platform>. It provides three modules:
577− * "System.FilePath.Posix" manipulates POSIX\/Linux style @FilePath@ values (with @\/@ as the path separator).
578− * "System.FilePath.Windows" manipulates Windows style @FilePath@ values (with either @\\@ or @\/@ as the path separator, and deals with drives).
579− * "System.FilePath" is an alias for the module appropriate to your platform.
580− All three modules provide the same API, and the same documentation (calling out differences in the different variants).
581−category: System
582−exposed: True
583−exposed-modules:
584− System.FilePath System.FilePath.Posix System.FilePath.Windows
585−import-dirs:
586−library-dirs:
587−dynamic-library-dirs:
588−data-dir:
589−hs-libraries: HSfilepath-1.4.2.1
590−depends: base-4.14.1.0
591−haddock-interfaces:
592−haddock-html:
593−---
594−name: ghc-boot
595−version: 8.10.3
596−visibility: public
597−id: ghc-boot-8.10.3
598−key: ghc-boot-8.10.3
599−license: BSD-3-Clause
600−maintainer: ghc-devs@haskell.org
601−synopsis: Shared functionality between GHC and its boot libraries
602−description:
603− This library is shared between GHC, ghc-pkg, and other boot
604− libraries.
605− A note about "GHC.PackageDb": it only deals with the subset of
606− the package database that the compiler cares about: modules
607− paths etc and not package metadata like description, authors
608− etc. It is thus not a library interface to ghc-pkg and is *not*
609− suitable for modifying GHC package databases.
610− The package database format and this library are constructed in
611− such a way that while ghc-pkg depends on Cabal, the GHC library
612− and program do not have to depend on Cabal.
613−category: GHC
614−exposed: True
615−exposed-modules:
616− GHC.BaseDir GHC.ForeignSrcLang GHC.HandleEncoding
617− GHC.LanguageExtensions GHC.PackageDb GHC.Platform GHC.Platform.Host
618− GHC.Serialized GHC.Settings GHC.UniqueSubdir GHC.Version
619−import-dirs:
620−library-dirs:
621−dynamic-library-dirs:
622−data-dir:
623−hs-libraries: HSghc-boot-8.10.3
624−depends:
625− base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
626− containers-0.6.2.1 directory-1.3.6.0 filepath-1.4.2.1
627− ghc-boot-th-8.10.3
628−haddock-interfaces:
629−haddock-html:
630−---
631−name: ghc-boot-th
632−version: 8.10.3
633−visibility: public
634−id: ghc-boot-th-8.10.3
635−key: ghc-boot-th-8.10.3
636−license: BSD-3-Clause
637−maintainer: ghc-devs@haskell.org
638−synopsis:
639− Shared functionality between GHC and the @template-haskell@
640− library
641−description:
642− This library contains various bits shared between the @ghc@ and
643− @template-haskell@ libraries.
644− This package exists to ensure that @template-haskell@ has a
645− minimal set of transitive dependencies, since it is intended to
646− be depended upon by user code.
647−category: GHC
648−exposed: True
649−exposed-modules:
650− GHC.ForeignSrcLang.Type GHC.LanguageExtensions.Type GHC.Lexeme
651−import-dirs:
652−library-dirs:
653−dynamic-library-dirs:
654−data-dir:
655−hs-libraries: HSghc-boot-th-8.10.3
656−depends: base-4.14.1.0
657−haddock-interfaces:
658−haddock-html:
659−---
660−name: ghc-compact
661−version: 0.1.0.0
662−visibility: public
663−id: ghc-compact-0.1.0.0
664−key: ghc-compact-0.1.0.0
665−license: BSD-3-Clause
666−maintainer: libraries@haskell.org
667−synopsis: In memory storage of deeply evaluated data structure
668−description:
669− This package provides minimal functionality for working with
670− "compact regions", which hold a fully evaluated Haskell object graph.
671− These regions maintain the invariant that no pointers live inside the struct
672− that point outside it, which ensures efficient garbage collection without
673− ever reading the structure contents (effectively, it works as a manually
674− managed "oldest generation" which is never freed until the whole is
675− released).
676− Internally, the struct is stored a single contiguous block of memory,
677− which allows efficient serialization and deserialization of structs
678− for distributed computing.
679−category: Data
680−exposed: True
681−exposed-modules: GHC.Compact GHC.Compact.Serialized
682−import-dirs:
683−library-dirs:
684−dynamic-library-dirs:
685−data-dir:
686−hs-libraries: HSghc-compact-0.1.0.0
687−depends: base-4.14.1.0 bytestring-0.10.12.0 ghc-prim-0.6.1
688−haddock-interfaces:
689−haddock-html:
690−---
691−name: ghc-heap
692−version: 8.10.3
693−visibility: public
694−id: ghc-heap-8.10.3
695−key: ghc-heap-8.10.3
696−license: BSD-3-Clause
697−maintainer: libraries@haskell.org
698−synopsis: Functions for walking GHC's heap
699−description:
700− This package provides functions for walking the GHC heap data structures
701− and retrieving information about those data structures.
702−category: GHC
703−exposed: True
704−exposed-modules:
705− GHC.Exts.Heap GHC.Exts.Heap.ClosureTypes GHC.Exts.Heap.Closures
706− GHC.Exts.Heap.Constants GHC.Exts.Heap.InfoTable
707− GHC.Exts.Heap.InfoTable.Types GHC.Exts.Heap.InfoTableProf
708− GHC.Exts.Heap.Utils
709−import-dirs:
710−library-dirs:
711−dynamic-library-dirs:
712−data-dir:
713−hs-libraries: HSghc-heap-8.10.3
714−depends: base-4.14.1.0 ghc-prim-0.6.1 rts
715−haddock-interfaces:
716−haddock-html:
717−---
718−name: ghc-prim
719−version: 0.6.1
720−visibility: public
721−id: ghc-prim-0.6.1
722−key: ghc-prim-0.6.1
723−license: BSD-3-Clause
724−maintainer: libraries@haskell.org
725−synopsis: GHC primitives
726−description:
727− This package contains the primitive types and operations supplied by GHC.
728−category: GHC
729−exposed: True
730−exposed-modules:
731− GHC.CString GHC.Classes GHC.Debug GHC.IntWord64 GHC.Magic
732− GHC.Prim.Ext GHC.PrimopWrappers GHC.Tuple GHC.Types GHC.Prim
733−import-dirs:
734−library-dirs:
735−dynamic-library-dirs:
736−data-dir:
737−hs-libraries: HSghc-prim-0.6.1
738−extra-libraries: gcc c m
739−depends: rts
740−haddock-interfaces:
741−haddock-html:
742−---
743−name: ghci
744−version: 8.10.3
745−visibility: public
746−id: ghci-8.10.3
747−key: ghci-8.10.3
748−license: BSD-3-Clause
749−maintainer: ghc-devs@haskell.org
750−synopsis: The library supporting GHC's interactive interpreter
751−description:
752− This library offers interfaces which mediate interactions between the
753− @ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter
754− backend.
755−category: GHC
756−exposed: True
757−exposed-modules:
758− GHCi.BinaryArray GHCi.BreakArray GHCi.CreateBCO GHCi.FFI
759− GHCi.InfoTable GHCi.Message GHCi.ObjLink GHCi.RemoteTypes
760− GHCi.ResolvedBCO GHCi.Run GHCi.Signals GHCi.StaticPtrTable GHCi.TH
761− GHCi.TH.Binary SizedSeq
762−import-dirs:
763−library-dirs:
764−dynamic-library-dirs:
765−data-dir:
766−hs-libraries: HSghci-8.10.3
767−include-dirs:
768−depends:
769− array-0.5.4.0 base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
770− containers-0.6.2.1 deepseq-1.4.4.0 filepath-1.4.2.1 ghc-boot-8.10.3
771− ghc-boot-th-8.10.3 ghc-heap-8.10.3 template-haskell-2.16.0.0
772− transformers-0.5.6.2 unix-2.7.2.2
773−haddock-interfaces:
774−haddock-html:
775−---
776−name: haskeline
777−version: 0.8.0.1
778−visibility: public
779−id: haskeline-0.8.0.1
780−key: haskeline-0.8.0.1
781−license: BSD-3-Clause
782−copyright: (c) Judah Jacobson
783−maintainer: Judah Jacobson <judah.jacobson@gmail.com>
784−author: Judah Jacobson
785−stability: Stable
786−homepage: https://github.com/judah/haskeline
787−synopsis:
788− A command-line interface for user input, written in Haskell.
789−description:
790− Haskeline provides a user interface for line input in command-line
791− programs. This library is similar in purpose to readline, but since
792− it is written in Haskell it is (hopefully) more easily used in other
793− Haskell programs.
794− Haskeline runs both on POSIX-compatible systems and on Windows.
795−category: User Interfaces
796−exposed: True
797−exposed-modules:
798− System.Console.Haskeline System.Console.Haskeline.Completion
799− System.Console.Haskeline.History System.Console.Haskeline.IO
800− System.Console.Haskeline.Internal
801−hidden-modules:
802− System.Console.Haskeline.Backend
803− System.Console.Haskeline.Backend.WCWidth
804− System.Console.Haskeline.Command
805− System.Console.Haskeline.Command.Completion
806− System.Console.Haskeline.Command.History
807− System.Console.Haskeline.Command.KillRing
808− System.Console.Haskeline.Directory System.Console.Haskeline.Emacs
809− System.Console.Haskeline.InputT System.Console.Haskeline.Key
810− System.Console.Haskeline.LineState System.Console.Haskeline.Monads
811− System.Console.Haskeline.Prefs System.Console.Haskeline.Recover
812− System.Console.Haskeline.RunCommand System.Console.Haskeline.Term
813− System.Console.Haskeline.Command.Undo System.Console.Haskeline.Vi
814− System.Console.Haskeline.Backend.Posix
815− System.Console.Haskeline.Backend.Posix.Encoder
816− System.Console.Haskeline.Backend.DumbTerm
817−import-dirs:
818−library-dirs:
819−dynamic-library-dirs:
820−data-dir:
821−hs-libraries: HShaskeline-0.8.0.1
822−depends:
823− base-4.14.1.0 bytestring-0.10.12.0 containers-0.6.2.1
824− directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
825− process-1.6.9.0 stm-2.5.0.0 transformers-0.5.6.2 unix-2.7.2.2
826−haddock-interfaces:
827−haddock-html:
828−---
829−name: hpc
830−version: 0.6.1.0
831−visibility: public
832−id: hpc-0.6.1.0
833−key: hpc-0.6.1.0
834−license: BSD-3-Clause
835−maintainer: ghc-devs@haskell.org
836−author: Andy Gill
837−synopsis: Code Coverage Library for Haskell
838−description:
839− This package provides the code coverage library for Haskell.
840− See <http://www.haskell.org/haskellwiki/Haskell_program_coverage> for more
841− information.
842−category: Control
843−exposed: True
844−exposed-modules:
845− Trace.Hpc.Mix Trace.Hpc.Reflect Trace.Hpc.Tix Trace.Hpc.Util
846−import-dirs:
847−library-dirs:
848−dynamic-library-dirs:
849−data-dir:
850−hs-libraries: HShpc-0.6.1.0
851−depends:
852− base-4.14.1.0 containers-0.6.2.1 deepseq-1.4.4.0 directory-1.3.6.0
853− filepath-1.4.2.1 time-1.9.3
854−haddock-interfaces:
855−haddock-html:
856−---
857−name: integer-gmp
858−version: 1.0.3.0
859−visibility: public
860−id: integer-gmp-1.0.3.0
861−key: integer-gmp-1.0.3.0
862−license: BSD-3-Clause
863−maintainer: hvr@gnu.org
864−author: Herbert Valerio Riedel
865−synopsis: Integer library based on GMP
866−description:
867− This package provides the low-level implementation of the standard
868− 'Integer' type based on the
869− <http://gmplib.org/ GNU Multiple Precision Arithmetic Library (GMP)>.
870− This package provides access to the internal representation of
871− 'Integer' as well as primitive operations with no proper error
872− handling, and should only be used directly with the utmost care.
873−category: Numeric, Algebra
874−exposed: True
875−exposed-modules:
876− GHC.Integer GHC.Integer.GMP.Internals GHC.Integer.Logarithms
877− GHC.Integer.Logarithms.Internals
878−hidden-modules: GHC.Integer.Type
879−import-dirs:
880−library-dirs:
881−dynamic-library-dirs:
882−data-dir:
883−hs-libraries: HSinteger-gmp-1.0.3.0
884−extra-libraries: gmp
885−include-dirs:
886−depends: ghc-prim-0.6.1
887−haddock-interfaces:
888−haddock-html:
889−---
890−name: libiserv
891−version: 8.10.3
892−visibility: public
893−id: libiserv-8.10.3
894−key: libiserv-8.10.3
895−license: BSD-3-Clause
896−copyright: XXX
897−maintainer: XXX
898−author: XXX
899−synopsis: Provides shared functionality between iserv and iserv-proxy
900−category: Development
901−exposed: True
902−exposed-modules: GHCi.Utils Lib
903−import-dirs:
904−library-dirs:
905−dynamic-library-dirs:
906−data-dir:
907−hs-libraries: HSlibiserv-8.10.3
908−depends:
909− base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
910− containers-0.6.2.1 deepseq-1.4.4.0 ghci-8.10.3 unix-2.7.2.2
911−haddock-interfaces:
912−haddock-html:
913−---
914−name: mtl
915−version: 2.2.2
916−visibility: public
917−id: mtl-2.2.2
918−key: mtl-2.2.2
919−license: BSD-3-Clause
920−maintainer: Edward Kmett <ekmett@gmail.com>
921−author: Andy Gill
922−homepage: http://github.com/haskell/mtl
923−synopsis: Monad classes, using functional dependencies
924−description:
925− Monad classes using functional dependencies, with instances
926− for various monad transformers, inspired by the paper
927− /Functional Programming with Overloading and Higher-Order Polymorphism/,
928− by Mark P Jones, in /Advanced School of Functional Programming/, 1995
929− (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
930−category: Control
931−exposed: True
932−exposed-modules:
933− Control.Monad.Cont Control.Monad.Cont.Class Control.Monad.Error
934− Control.Monad.Error.Class Control.Monad.Except
935− Control.Monad.Identity Control.Monad.List Control.Monad.RWS
936− Control.Monad.RWS.Class Control.Monad.RWS.Lazy
937− Control.Monad.RWS.Strict Control.Monad.Reader
938− Control.Monad.Reader.Class Control.Monad.State
939− Control.Monad.State.Class Control.Monad.State.Lazy
940− Control.Monad.State.Strict Control.Monad.Trans Control.Monad.Writer
941− Control.Monad.Writer.Class Control.Monad.Writer.Lazy
942− Control.Monad.Writer.Strict
943−import-dirs:
944−library-dirs:
945−dynamic-library-dirs:
946−data-dir:
947−hs-libraries: HSmtl-2.2.2
948−depends: base-4.14.1.0 transformers-0.5.6.2
949−haddock-interfaces:
950−haddock-html:
951−---
952−name: parsec
953−version: 3.1.14.0
954−visibility: public
955−id: parsec-3.1.14.0
956−key: parsec-3.1.14.0
957−license: BSD-3-Clause
958−maintainer: Herbert Valerio Riedel <hvr@gnu.org>
959−author:
960− Daan Leijen <daan@microsoft.com>, Paolo Martini <paolo@nemail.it>, Antoine Latter <aslatter@gmail.com>
961−homepage: https://github.com/haskell/parsec
962−synopsis: Monadic parser combinators
963−description:
964− Parsec is designed from scratch as an industrial-strength parser
965− library. It is simple, safe, well documented (on the package
966− homepage), has extensive libraries, good error messages,
967− and is fast. It is defined as a monad transformer that can be
968− stacked on arbitrary monads, and it is also parametric in the
969− input stream type.
970− The main entry point is the "Text.Parsec" module which provides
971− defaults for parsing 'Char'acter data.
972− The "Text.ParserCombinators.Parsec" module hierarchy contains
973− the legacy @parsec-2@ API and may be removed at some point in
974− the future.
975−category: Parsing
976−exposed: True
977−exposed-modules:
978− Text.Parsec Text.Parsec.ByteString Text.Parsec.ByteString.Lazy
979− Text.Parsec.Char Text.Parsec.Combinator Text.Parsec.Error
980− Text.Parsec.Expr Text.Parsec.Language Text.Parsec.Perm
981− Text.Parsec.Pos Text.Parsec.Prim Text.Parsec.String
982− Text.Parsec.Text Text.Parsec.Text.Lazy Text.Parsec.Token
983− Text.ParserCombinators.Parsec Text.ParserCombinators.Parsec.Char
984− Text.ParserCombinators.Parsec.Combinator
985− Text.ParserCombinators.Parsec.Error
986− Text.ParserCombinators.Parsec.Expr
987− Text.ParserCombinators.Parsec.Language
988− Text.ParserCombinators.Parsec.Perm
989− Text.ParserCombinators.Parsec.Pos
990− Text.ParserCombinators.Parsec.Prim
991− Text.ParserCombinators.Parsec.Token
992−import-dirs:
993−library-dirs:
994−dynamic-library-dirs:
995−data-dir:
996−hs-libraries: HSparsec-3.1.14.0
997−depends:
998− base-4.14.1.0 bytestring-0.10.12.0 mtl-2.2.2 text-1.2.4.1
999−haddock-interfaces:
1000−haddock-html:
1001−---
1002−name: pretty
1003−version: 1.1.3.6
1004−visibility: public
1005−id: pretty-1.1.3.6
1006−key: pretty-1.1.3.6
1007−license: BSD-3-Clause
1008−maintainer: David Terei <code@davidterei.com>
1009−stability: Stable
1010−homepage: http://github.com/haskell/pretty
1011−synopsis: Pretty-printing library
1012−description:
1013− This package contains a pretty-printing library, a set of API's
1014− that provides a way to easily print out text in a consistent
1015− format of your choosing. This is useful for compilers and related
1016− tools.
1017− This library was originally designed by John Hughes's and has since
1018− been heavily modified by Simon Peyton Jones.
1019−category: Text
1020−exposed: True
1021−exposed-modules:
1022− Text.PrettyPrint Text.PrettyPrint.Annotated
1023− Text.PrettyPrint.Annotated.HughesPJ
1024− Text.PrettyPrint.Annotated.HughesPJClass Text.PrettyPrint.HughesPJ
1025− Text.PrettyPrint.HughesPJClass
1026−import-dirs:
1027−library-dirs:
1028−dynamic-library-dirs:
1029−data-dir:
1030−hs-libraries: HSpretty-1.1.3.6
1031−depends: base-4.14.1.0 deepseq-1.4.4.0 ghc-prim-0.6.1
1032−haddock-interfaces:
1033−haddock-html:
1034−---
1035−name: process
1036−version: 1.6.9.0
1037−visibility: public
1038−id: process-1.6.9.0
1039−key: process-1.6.9.0
1040−license: BSD-3-Clause
1041−maintainer: libraries@haskell.org
1042−synopsis: Process libraries
1043−description:
1044− This package contains libraries for dealing with system processes.
1045− The typed-process package is a more recent take on a process API,
1046− which uses this package internally. It features better binary
1047− support, easier concurrency, and a more composable API. You can
1048− read more about it at
1049− <https://github.com/fpco/typed-process/#readme>.
1050−category: System
1051−exposed: True
1052−exposed-modules: System.Cmd System.Process System.Process.Internals
1053−hidden-modules: System.Process.Common System.Process.Posix
1054−import-dirs:
1055−library-dirs:
1056−dynamic-library-dirs:
1057−data-dir:
1058−hs-libraries: HSprocess-1.6.9.0
1059−include-dirs:
1060−includes: runProcess.h
1061−depends:
1062− base-4.14.1.0 deepseq-1.4.4.0 directory-1.3.6.0 filepath-1.4.2.1
1063− unix-2.7.2.2
1064−haddock-interfaces:
1065−haddock-html:
1066−---
1067−name: stm
1068−version: 2.5.0.0
1069−visibility: public
1070−id: stm-2.5.0.0
1071−key: stm-2.5.0.0
1072−license: BSD-3-Clause
1073−maintainer: libraries@haskell.org
1074−homepage: https://wiki.haskell.org/Software_transactional_memory
1075−synopsis: Software Transactional Memory
1076−description:
1077− Software Transactional Memory, or STM, is an abstraction for
1078− concurrent communication. The main benefits of STM are
1079− /composability/ and /modularity/. That is, using STM you can write
1080− concurrent abstractions that can be easily composed with any other
1081− abstraction built using STM, without exposing the details of how
1082− your abstraction ensures safety. This is typically not the case
1083− with other forms of concurrent communication, such as locks or
1084− 'MVar's.
1085−category: Concurrency
1086−exposed: True
1087−exposed-modules:
1088− Control.Concurrent.STM Control.Concurrent.STM.TArray
1089− Control.Concurrent.STM.TBQueue Control.Concurrent.STM.TChan
1090− Control.Concurrent.STM.TMVar Control.Concurrent.STM.TQueue
1091− Control.Concurrent.STM.TSem Control.Concurrent.STM.TVar
1092− Control.Monad.STM
1093−hidden-modules: Control.Sequential.STM
1094−import-dirs:
1095−library-dirs:
1096−dynamic-library-dirs:
1097−data-dir:
1098−hs-libraries: HSstm-2.5.0.0
1099−depends: array-0.5.4.0 base-4.14.1.0
1100−haddock-interfaces:
1101−haddock-html:
1102−---
1103−name: template-haskell
1104−version: 2.16.0.0
1105−visibility: public
1106−id: template-haskell-2.16.0.0
1107−key: template-haskell-2.16.0.0
1108−license: BSD-3-Clause
1109−maintainer: libraries@haskell.org
1110−synopsis: Support library for Template Haskell
1111−description:
1112− This package provides modules containing facilities for manipulating
1113− Haskell source code using Template Haskell.
1114− See <http://www.haskell.org/haskellwiki/Template_Haskell> for more
1115− information.
1116−category: Template Haskell
1117−exposed: True
1118−exposed-modules:
1119− Language.Haskell.TH Language.Haskell.TH.LanguageExtensions
1120− Language.Haskell.TH.Lib Language.Haskell.TH.Lib.Internal
1121− Language.Haskell.TH.Ppr Language.Haskell.TH.PprLib
1122− Language.Haskell.TH.Quote Language.Haskell.TH.Syntax
1123−hidden-modules: Language.Haskell.TH.Lib.Map
1124−import-dirs:
1125−library-dirs:
1126−dynamic-library-dirs:
1127−data-dir:
1128−hs-libraries: HStemplate-haskell-2.16.0.0
1129−depends:
1130− base-4.14.1.0 ghc-boot-th-8.10.3 ghc-prim-0.6.1 pretty-1.1.3.6
1131−haddock-interfaces:
1132−haddock-html:
1133−---
1134−name: text
1135−version: 1.2.4.1
1136−visibility: public
1137−id: text-1.2.4.1
1138−key: text-1.2.4.1
1139−license: BSD-2-Clause
1140−copyright: 2009-2011 Bryan O'Sullivan, 2008-2009 Tom Harper
1141−maintainer:
1142− Bryan O'Sullivan <bos@serpentine.com>, Herbert Valerio Riedel <hvr@gnu.org>
1143−author: Bryan O'Sullivan <bos@serpentine.com>
1144−homepage: https://github.com/haskell/text
1145−synopsis: An efficient packed Unicode text type.
1146−description:
1147− An efficient packed, immutable Unicode text type (both strict and
1148− lazy), with a powerful loop fusion optimization framework.
1149− The 'Text' type represents Unicode character strings, in a time and
1150− space-efficient manner. This package provides text processing
1151− capabilities that are optimized for performance critical use, both
1152− in terms of large data quantities and high speed.
1153− The 'Text' type provides character-encoding, type-safe case
1154− conversion via whole-string case conversion functions (see "Data.Text").
1155− It also provides a range of functions for converting 'Text' values to
1156− and from 'ByteStrings', using several standard encodings
1157− (see "Data.Text.Encoding").
1158− Efficient locale-sensitive support for text IO is also supported
1159− (see "Data.Text.IO").
1160− These modules are intended to be imported qualified, to avoid name
1161− clashes with Prelude functions, e.g.
1162− > import qualified Data.Text as T
1163− == ICU Support
1164− To use an extended and very rich family of functions for working
1165− with Unicode text (including normalization, regular expressions,
1166− non-standard encodings, text breaking, and locales), see
1167− the [text-icu package](https://hackage.haskell.org/package/text-icu)
1168− based on the well-respected and liberally
1169− licensed [ICU library](http://site.icu-project.org/).
1170− == Internal Representation: UTF-16 vs. UTF-8
1171− Currently the @text@ library uses UTF-16 as its internal representation
1172− which is [neither a fixed-width nor always the most dense representation](http://utf8everywhere.org/)
1173− for Unicode text. We're currently investigating the feasibility
1174− of [changing Text's internal representation to UTF-8](https://github.com/text-utf8)
1175− and if you need such a 'Text' type right now you might be interested in using the spin-off
1176− packages <https://hackage.haskell.org/package/text-utf8 text-utf8> and
1177− <https://hackage.haskell.org/package/text-short text-short>.
1178−category: Data, Text
1179−exposed: True
1180−exposed-modules:
1181− Data.Text Data.Text.Array Data.Text.Encoding
1182− Data.Text.Encoding.Error Data.Text.Foreign Data.Text.IO
1183− Data.Text.Internal Data.Text.Internal.Builder
1184− Data.Text.Internal.Builder.Functions
1185− Data.Text.Internal.Builder.Int.Digits
1186− Data.Text.Internal.Builder.RealFloat.Functions
1187− Data.Text.Internal.ByteStringCompat
1188− Data.Text.Internal.Encoding.Fusion
1189− Data.Text.Internal.Encoding.Fusion.Common
1190− Data.Text.Internal.Encoding.Utf16 Data.Text.Internal.Encoding.Utf32
1191− Data.Text.Internal.Encoding.Utf8 Data.Text.Internal.Functions
1192− Data.Text.Internal.Fusion Data.Text.Internal.Fusion.CaseMapping
1193− Data.Text.Internal.Fusion.Common Data.Text.Internal.Fusion.Size
1194− Data.Text.Internal.Fusion.Types Data.Text.Internal.IO
1195− Data.Text.Internal.Lazy Data.Text.Internal.Lazy.Encoding.Fusion
1196− Data.Text.Internal.Lazy.Fusion Data.Text.Internal.Lazy.Search
1197− Data.Text.Internal.Private Data.Text.Internal.Read
1198− Data.Text.Internal.Search Data.Text.Internal.Unsafe
1199− Data.Text.Internal.Unsafe.Char Data.Text.Internal.Unsafe.Shift
1200− Data.Text.Lazy Data.Text.Lazy.Builder Data.Text.Lazy.Builder.Int
1201− Data.Text.Lazy.Builder.RealFloat Data.Text.Lazy.Encoding
1202− Data.Text.Lazy.IO Data.Text.Lazy.Internal Data.Text.Lazy.Read
1203− Data.Text.Read Data.Text.Unsafe
1204−hidden-modules: Data.Text.Show
1205−import-dirs:
1206−library-dirs:
1207−dynamic-library-dirs:
1208−data-dir:
1209−hs-libraries: HStext-1.2.4.1
1210−depends:
1211− array-0.5.4.0 base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
1212− deepseq-1.4.4.0 ghc-prim-0.6.1 integer-gmp-1.0.3.0
1213− template-haskell-2.16.0.0
1214−haddock-interfaces:
1215−haddock-html:
1216−---
1217−name: time
1218−version: 1.9.3
1219−visibility: public
1220−id: time-1.9.3
1221−key: time-1.9.3
1222−license: BSD-3-Clause
1223−maintainer: <ashley@semantic.org>
1224−author: Ashley Yakeley
1225−stability: stable
1226−homepage: https://github.com/haskell/time
1227−synopsis: A time library
1228−description: Time, clocks and calendars
1229−category: Time
1230−exposed: True
1231−exposed-modules:
1232− Data.Time Data.Time.Calendar Data.Time.Calendar.Easter
1233− Data.Time.Calendar.Julian Data.Time.Calendar.MonthDay
1234− Data.Time.Calendar.OrdinalDate Data.Time.Calendar.WeekDate
1235− Data.Time.Clock Data.Time.Clock.POSIX Data.Time.Clock.System
1236− Data.Time.Clock.TAI Data.Time.Format Data.Time.Format.ISO8601
1237− Data.Time.Format.Internal Data.Time.LocalTime
1238−hidden-modules:
1239− Data.Format Data.Time.Calendar.Private Data.Time.Calendar.Days
1240− Data.Time.Calendar.Gregorian Data.Time.Calendar.CalendarDiffDays
1241− Data.Time.Calendar.Week Data.Time.Calendar.JulianYearDay
1242− Data.Time.Clock.Internal.DiffTime
1243− Data.Time.Clock.Internal.AbsoluteTime
1244− Data.Time.Clock.Internal.NominalDiffTime
1245− Data.Time.Clock.Internal.POSIXTime
1246− Data.Time.Clock.Internal.UniversalTime
1247− Data.Time.Clock.Internal.SystemTime
1248− Data.Time.Clock.Internal.UTCTime Data.Time.Clock.Internal.CTimeval
1249− Data.Time.Clock.Internal.CTimespec Data.Time.Clock.Internal.UTCDiff
1250− Data.Time.LocalTime.Internal.TimeZone
1251− Data.Time.LocalTime.Internal.TimeOfDay
1252− Data.Time.LocalTime.Internal.CalendarDiffTime
1253− Data.Time.LocalTime.Internal.LocalTime
1254− Data.Time.LocalTime.Internal.ZonedTime Data.Time.Format.Parse
1255− Data.Time.Format.Locale Data.Time.Format.Format.Class
1256− Data.Time.Format.Format.Instances Data.Time.Format.Parse.Class
1257− Data.Time.Format.Parse.Instances
1258−import-dirs:
1259−library-dirs:
1260−dynamic-library-dirs:
1261−data-dir:
1262−hs-libraries: HStime-1.9.3
1263−include-dirs:
1264−depends: base-4.14.1.0 deepseq-1.4.4.0
1265−haddock-interfaces:
1266−haddock-html:
1267−---
1268−name: transformers
1269−version: 0.5.6.2
1270−visibility: public
1271−id: transformers-0.5.6.2
1272−key: transformers-0.5.6.2
1273−license: BSD-3-Clause
1274−maintainer: Ross Paterson <R.Paterson@city.ac.uk>
1275−author: Andy Gill, Ross Paterson
1276−synopsis: Concrete functor and monad transformers
1277−description:
1278− A portable library of functor and monad transformers, inspired by
1279− the paper
1280− * \"Functional Programming with Overloading and Higher-Order
1281− Polymorphism\", by Mark P Jones,
1282− in /Advanced School of Functional Programming/, 1995
1283− (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
1284− This package contains:
1285− * the monad transformer class (in "Control.Monad.Trans.Class")
1286− * concrete functor and monad transformers, each with associated
1287− operations and functions to lift operations associated with other
1288− transformers.
1289− The package can be used on its own in portable Haskell code, in
1290− which case operations need to be manually lifted through transformer
1291− stacks (see "Control.Monad.Trans.Class" for some examples).
1292− Alternatively, it can be used with the non-portable monad classes in
1293− the @mtl@ or @monads-tf@ packages, which automatically lift operations
1294− introduced by monad transformers through other transformers.
1295−category: Control
1296−exposed: True
1297−exposed-modules:
1298− Control.Applicative.Backwards Control.Applicative.Lift
1299− Control.Monad.Signatures Control.Monad.Trans.Accum
1300− Control.Monad.Trans.Class Control.Monad.Trans.Cont
1301− Control.Monad.Trans.Error Control.Monad.Trans.Except
1302− Control.Monad.Trans.Identity Control.Monad.Trans.List
1303− Control.Monad.Trans.Maybe Control.Monad.Trans.RWS
1304− Control.Monad.Trans.RWS.CPS Control.Monad.Trans.RWS.Lazy
1305− Control.Monad.Trans.RWS.Strict Control.Monad.Trans.Reader
1306− Control.Monad.Trans.Select Control.Monad.Trans.State
1307− Control.Monad.Trans.State.Lazy Control.Monad.Trans.State.Strict
1308− Control.Monad.Trans.Writer Control.Monad.Trans.Writer.CPS
1309− Control.Monad.Trans.Writer.Lazy Control.Monad.Trans.Writer.Strict
1310− Data.Functor.Constant Data.Functor.Reverse
1311−import-dirs:
1312−library-dirs:
1313−dynamic-library-dirs:
1314−data-dir:
1315−hs-libraries: HStransformers-0.5.6.2
1316−depends: base-4.14.1.0
1317−haddock-interfaces:
1318−haddock-html:
1319−---
1320−name: unix
1321−version: 2.7.2.2
1322−visibility: public
1323−id: unix-2.7.2.2
1324−key: unix-2.7.2.2
1325−license: BSD-3-Clause
1326−maintainer: libraries@haskell.org
1327−homepage: https://github.com/haskell/unix
1328−synopsis: POSIX functionality
1329−description:
1330− This package gives you access to the set of operating system
1331− services standardised by
1332− <http://pubs.opengroup.org/onlinepubs/9699919799/ POSIX.1-2008>
1333− (or the IEEE Portable Operating System Interface for Computing
1334− Environments - IEEE Std. 1003.1).
1335− The package is not supported under Windows.
1336−category: System
1337−exposed: True
1338−exposed-modules:
1339− System.Posix System.Posix.ByteString
1340− System.Posix.ByteString.FilePath System.Posix.Directory
1341− System.Posix.Directory.ByteString System.Posix.DynamicLinker
1342− System.Posix.DynamicLinker.ByteString
1343− System.Posix.DynamicLinker.Module
1344− System.Posix.DynamicLinker.Module.ByteString
1345− System.Posix.DynamicLinker.Prim System.Posix.Env
1346− System.Posix.Env.ByteString System.Posix.Error System.Posix.Fcntl
1347− System.Posix.Files System.Posix.Files.ByteString System.Posix.IO
1348− System.Posix.IO.ByteString System.Posix.Process
1349− System.Posix.Process.ByteString System.Posix.Process.Internals
1350− System.Posix.Resource System.Posix.Semaphore System.Posix.SharedMem
1351− System.Posix.Signals System.Posix.Signals.Exts System.Posix.Temp
1352− System.Posix.Temp.ByteString System.Posix.Terminal
1353− System.Posix.Terminal.ByteString System.Posix.Time
1354− System.Posix.Unistd System.Posix.User
1355−hidden-modules:
1356− System.Posix.Directory.Common System.Posix.DynamicLinker.Common
1357− System.Posix.Files.Common System.Posix.IO.Common
1358− System.Posix.Process.Common System.Posix.Terminal.Common
1359−import-dirs:
1360−library-dirs:
1361−dynamic-library-dirs:
1362−data-dir:
1363−hs-libraries: HSunix-2.7.2.2
1364−extra-libraries: rt util dl pthread
1365−include-dirs:
1366−includes: HsUnix.h execvpe.h
1367−depends: base-4.14.1.0 bytestring-0.10.12.0 time-1.9.3
1368−haddock-interfaces:
1369−haddock-html:
1370−---
1371−name: rts
1372−version: 1.0
1373−visibility: public
1374−id: rts
1375−key: rts
1376−license: BSD-3-Clause
1377−maintainer: glasgow-haskell-users@haskell.org
1378−exposed: True
1379−library-dirs:
1380−hs-libraries: HSrts
1381−extra-libraries: m rt dl ffi numa pthread
1382−include-dirs:
1383−includes: Stg.h
1384−ld-options:
1385− "-Wl,-u,base_GHCziTopHandler_runIO_closure"
1386− "-Wl,-u,base_GHCziTopHandler_runNonIO_closure"
1387− "-Wl,-u,ghczmprim_GHCziTuple_Z0T_closure"
1388− "-Wl,-u,ghczmprim_GHCziTypes_True_closure"
1389− "-Wl,-u,ghczmprim_GHCziTypes_False_closure"
1390− "-Wl,-u,base_GHCziPack_unpackCString_closure"
1391− "-Wl,-u,base_GHCziWeak_runFinalizzerBatch_closure"
1392− "-Wl,-u,base_GHCziIOziException_stackOverflow_closure"
1393− "-Wl,-u,base_GHCziIOziException_heapOverflow_closure"
1394− "-Wl,-u,base_GHCziIOziException_allocationLimitExceeded_closure"
1395− "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnMVar_closure"
1396− "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnSTM_closure"
1397− "-Wl,-u,base_GHCziIOziException_cannotCompactFunction_closure"
1398− "-Wl,-u,base_GHCziIOziException_cannotCompactPinned_closure"
1399− "-Wl,-u,base_GHCziIOziException_cannotCompactMutable_closure"
1400− "-Wl,-u,base_ControlziExceptionziBase_absentSumFieldError_closure"
1401− "-Wl,-u,base_ControlziExceptionziBase_nonTermination_closure"
1402− "-Wl,-u,base_ControlziExceptionziBase_nestedAtomically_closure"
1403− "-Wl,-u,base_GHCziEventziThread_blockedOnBadFD_closure"
1404− "-Wl,-u,base_GHCziConcziSync_runSparks_closure"
1405− "-Wl,-u,base_GHCziConcziIO_ensureIOManagerIsRunning_closure"
1406− "-Wl,-u,base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure"
1407− "-Wl,-u,base_GHCziConcziSignal_runHandlersPtr_closure"
1408− "-Wl,-u,base_GHCziTopHandler_flushStdHandles_closure"
1409− "-Wl,-u,base_GHCziTopHandler_runMainIO_closure"
1410− "-Wl,-u,ghczmprim_GHCziTypes_Czh_con_info"
1411− "-Wl,-u,ghczmprim_GHCziTypes_Izh_con_info"
1412− "-Wl,-u,ghczmprim_GHCziTypes_Fzh_con_info"
1413− "-Wl,-u,ghczmprim_GHCziTypes_Dzh_con_info"
1414− "-Wl,-u,ghczmprim_GHCziTypes_Wzh_con_info"
1415− "-Wl,-u,base_GHCziPtr_Ptr_con_info"
1416− "-Wl,-u,base_GHCziPtr_FunPtr_con_info"
1417− "-Wl,-u,base_GHCziInt_I8zh_con_info"
1418− "-Wl,-u,base_GHCziInt_I16zh_con_info"
1419− "-Wl,-u,base_GHCziInt_I32zh_con_info"
1420− "-Wl,-u,base_GHCziInt_I64zh_con_info"
1421− "-Wl,-u,base_GHCziWord_W8zh_con_info"
1422− "-Wl,-u,base_GHCziWord_W16zh_con_info"
1423− "-Wl,-u,base_GHCziWord_W32zh_con_info"
1424− "-Wl,-u,base_GHCziWord_W64zh_con_info"
1425− "-Wl,-u,base_GHCziStable_StablePtr_con_info"
1426− "-Wl,-u,hs_atomic_add8" "-Wl,-u,hs_atomic_add16"
1427− "-Wl,-u,hs_atomic_add32" "-Wl,-u,hs_atomic_add64"
1428− "-Wl,-u,hs_atomic_sub8" "-Wl,-u,hs_atomic_sub16"
1429− "-Wl,-u,hs_atomic_sub32" "-Wl,-u,hs_atomic_sub64"
1430− "-Wl,-u,hs_atomic_and8" "-Wl,-u,hs_atomic_and16"
1431− "-Wl,-u,hs_atomic_and32" "-Wl,-u,hs_atomic_and64"
1432− "-Wl,-u,hs_atomic_nand8" "-Wl,-u,hs_atomic_nand16"
1433− "-Wl,-u,hs_atomic_nand32" "-Wl,-u,hs_atomic_nand64"
1434− "-Wl,-u,hs_atomic_or8" "-Wl,-u,hs_atomic_or16"
1435− "-Wl,-u,hs_atomic_or32" "-Wl,-u,hs_atomic_or64"
1436− "-Wl,-u,hs_atomic_xor8" "-Wl,-u,hs_atomic_xor16"
1437− "-Wl,-u,hs_atomic_xor32" "-Wl,-u,hs_atomic_xor64"
1438− "-Wl,-u,hs_cmpxchg8" "-Wl,-u,hs_cmpxchg16" "-Wl,-u,hs_cmpxchg32"
1439− "-Wl,-u,hs_cmpxchg64" "-Wl,-u,hs_atomicread8"
1440− "-Wl,-u,hs_atomicread16" "-Wl,-u,hs_atomicread32"
1441− "-Wl,-u,hs_atomicread64" "-Wl,-u,hs_atomicwrite8"
1442− "-Wl,-u,hs_atomicwrite16" "-Wl,-u,hs_atomicwrite32"
1443− "-Wl,-u,hs_atomicwrite64"
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc-pkg/versiondeleted−1
@@ -1 +0,0 @@
1−GHC package manager version 8.10.3
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc/infodeleted−69
@@ -1,69 +0,0 @@
1− [("Project name","The Glorious Glasgow Haskell Compilation System")
2− ,("GCC extra via C opts","")
3− ,("C compiler flags","")
4− ,("C++ compiler flags","")
5− ,("C compiler link flags","-Wl,-z,noexecstack")
6− ,("C compiler supports -no-pie","YES")
7− ,("Haskell CPP flags","-E -undef -traditional")
8− ,("ld flags","-z noexecstack")
9− ,("ld supports compact unwind","YES")
10− ,("ld supports build-id","YES")
11− ,("ld supports filelist","NO")
12− ,("ld is GNU ld","YES")
13− ,("Merge objects flags","-r")
14− ,("ar flags","q")
15− ,("ar supports at file","YES")
16− ,("otool command","otool")
17− ,("install_name_tool command","install_name_tool")
18− ,("touch command","touch")
19− ,("dllwrap command","/bin/false")
20− ,("windres command","/bin/false")
21− ,("libtool command","libtool")
22− ,("cross compiling","YES")
23− ,("target platform string","aarch64-unknown-linux")
24− ,("target os","OSLinux")
25− ,("target arch","ArchARM64")
26− ,("target word size","8")
27− ,("target has GNU nonexec stack","YES")
28− ,("target has .ident directive","YES")
29− ,("target has subsections via symbols","NO")
30− ,("target has RTS linker","YES")
31− ,("Unregisterised","NO")
32− ,("LLVM target","aarch64-unknown-linux")
33− ,("LLVM llc command","llc")
34− ,("LLVM opt command","opt")
35− ,("LLVM clang command","clang")
36− ,("integer library","integer-gmp")
37− ,("Use interpreter","YES")
38− ,("Use native code generator","NO")
39− ,("Support SMP","YES")
40− ,("RTS ways","l debug thr thr_debug thr_l thr_p thr_debug_p debug_p")
41− ,("Tables next to code","YES")
42− ,("Leading underscore","NO")
43− ,("Use LibFFI","YES")
44− ,("Use Threads","YES")
45− ,("Use Debugging","NO")
46− ,("RTS expects libdw","NO")
47− ,("Project version","8.10.3")
48− ,("Project Git commit id","6db6db46af6f8e3e24d7d16b0b43a984a9a14677")
49− ,("Booter version","8.6.5")
50− ,("Stage","1")
51− ,("Build platform","x86_64-unknown-linux")
52− ,("Host platform","x86_64-unknown-linux")
53− ,("Target platform","aarch64-unknown-linux")
54− ,("Have interpreter","YES")
55− ,("Object splitting supported","NO")
56− ,("Have native code generator","NO")
57− ,("Support dynamic-too","YES")
58− ,("Support parallel --make","YES")
59− ,("Support reexported-modules","YES")
60− ,("Support thinning and renaming package flags","YES")
61− ,("Support Backpack","YES")
62− ,("Requires unified installed package IDs","YES")
63− ,("Uses package keys","YES")
64− ,("Uses unit IDs","YES")
65− ,("Dynamic by default","NO")
66− ,("GHC Dynamic","NO")
67− ,("GHC Profiled","NO")
68− ,("Debug on","NO")
69− ]
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc/numeric-versiondeleted−1
@@ -1 +0,0 @@
1−8.10.3
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc/supported-languagesdeleted−255
@@ -1,255 +0,0 @@
1−Haskell98
2−Haskell2010
3−Unsafe
4−Trustworthy
5−Safe
6−AllowAmbiguousTypes
7−NoAllowAmbiguousTypes
8−AlternativeLayoutRule
9−NoAlternativeLayoutRule
10−AlternativeLayoutRuleTransitional
11−NoAlternativeLayoutRuleTransitional
12−Arrows
13−NoArrows
14−AutoDeriveTypeable
15−NoAutoDeriveTypeable
16−BangPatterns
17−NoBangPatterns
18−BinaryLiterals
19−NoBinaryLiterals
20−CApiFFI
21−NoCApiFFI
22−CPP
23−NoCPP
24−CUSKs
25−NoCUSKs
26−ConstrainedClassMethods
27−NoConstrainedClassMethods
28−ConstraintKinds
29−NoConstraintKinds
30−DataKinds
31−NoDataKinds
32−DatatypeContexts
33−NoDatatypeContexts
34−DefaultSignatures
35−NoDefaultSignatures
36−DeriveAnyClass
37−NoDeriveAnyClass
38−DeriveDataTypeable
39−NoDeriveDataTypeable
40−DeriveFoldable
41−NoDeriveFoldable
42−DeriveFunctor
43−NoDeriveFunctor
44−DeriveGeneric
45−NoDeriveGeneric
46−DeriveLift
47−NoDeriveLift
48−DeriveTraversable
49−NoDeriveTraversable
50−DerivingStrategies
51−NoDerivingStrategies
52−DerivingVia
53−NoDerivingVia
54−DisambiguateRecordFields
55−NoDisambiguateRecordFields
56−DoAndIfThenElse
57−NoDoAndIfThenElse
58−BlockArguments
59−NoBlockArguments
60−DoRec
61−NoDoRec
62−DuplicateRecordFields
63−NoDuplicateRecordFields
64−EmptyCase
65−NoEmptyCase
66−EmptyDataDecls
67−NoEmptyDataDecls
68−EmptyDataDeriving
69−NoEmptyDataDeriving
70−ExistentialQuantification
71−NoExistentialQuantification
72−ExplicitForAll
73−NoExplicitForAll
74−ExplicitNamespaces
75−NoExplicitNamespaces
76−ExtendedDefaultRules
77−NoExtendedDefaultRules
78−FlexibleContexts
79−NoFlexibleContexts
80−FlexibleInstances
81−NoFlexibleInstances
82−ForeignFunctionInterface
83−NoForeignFunctionInterface
84−FunctionalDependencies
85−NoFunctionalDependencies
86−GADTSyntax
87−NoGADTSyntax
88−GADTs
89−NoGADTs
90−GHCForeignImportPrim
91−NoGHCForeignImportPrim
92−GeneralizedNewtypeDeriving
93−NoGeneralizedNewtypeDeriving
94−GeneralisedNewtypeDeriving
95−NoGeneralisedNewtypeDeriving
96−ImplicitParams
97−NoImplicitParams
98−ImplicitPrelude
99−NoImplicitPrelude
100−ImportQualifiedPost
101−NoImportQualifiedPost
102−ImpredicativeTypes
103−NoImpredicativeTypes
104−IncoherentInstances
105−NoIncoherentInstances
106−TypeFamilyDependencies
107−NoTypeFamilyDependencies
108−InstanceSigs
109−NoInstanceSigs
110−ApplicativeDo
111−NoApplicativeDo
112−InterruptibleFFI
113−NoInterruptibleFFI
114−JavaScriptFFI
115−NoJavaScriptFFI
116−KindSignatures
117−NoKindSignatures
118−LambdaCase
119−NoLambdaCase
120−LiberalTypeSynonyms
121−NoLiberalTypeSynonyms
122−MagicHash
123−NoMagicHash
124−MonadComprehensions
125−NoMonadComprehensions
126−MonadFailDesugaring
127−NoMonadFailDesugaring
128−MonoLocalBinds
129−NoMonoLocalBinds
130−MonoPatBinds
131−NoMonoPatBinds
132−MonomorphismRestriction
133−NoMonomorphismRestriction
134−MultiParamTypeClasses
135−NoMultiParamTypeClasses
136−MultiWayIf
137−NoMultiWayIf
138−NumericUnderscores
139−NoNumericUnderscores
140−NPlusKPatterns
141−NoNPlusKPatterns
142−NamedFieldPuns
143−NoNamedFieldPuns
144−NamedWildCards
145−NoNamedWildCards
146−NegativeLiterals
147−NoNegativeLiterals
148−HexFloatLiterals
149−NoHexFloatLiterals
150−NondecreasingIndentation
151−NoNondecreasingIndentation
152−NullaryTypeClasses
153−NoNullaryTypeClasses
154−NumDecimals
155−NoNumDecimals
156−OverlappingInstances
157−NoOverlappingInstances
158−OverloadedLabels
159−NoOverloadedLabels
160−OverloadedLists
161−NoOverloadedLists
162−OverloadedStrings
163−NoOverloadedStrings
164−PackageImports
165−NoPackageImports
166−ParallelArrays
167−NoParallelArrays
168−ParallelListComp
169−NoParallelListComp
170−PartialTypeSignatures
171−NoPartialTypeSignatures
172−PatternGuards
173−NoPatternGuards
174−PatternSignatures
175−NoPatternSignatures
176−PatternSynonyms
177−NoPatternSynonyms
178−PolyKinds
179−NoPolyKinds
180−PolymorphicComponents
181−NoPolymorphicComponents
182−QuantifiedConstraints
183−NoQuantifiedConstraints
184−PostfixOperators
185−NoPostfixOperators
186−QuasiQuotes
187−NoQuasiQuotes
188−Rank2Types
189−NoRank2Types
190−RankNTypes
191−NoRankNTypes
192−RebindableSyntax
193−NoRebindableSyntax
194−RecordPuns
195−NoRecordPuns
196−RecordWildCards
197−NoRecordWildCards
198−RecursiveDo
199−NoRecursiveDo
200−RelaxedLayout
201−NoRelaxedLayout
202−RelaxedPolyRec
203−NoRelaxedPolyRec
204−RoleAnnotations
205−NoRoleAnnotations
206−ScopedTypeVariables
207−NoScopedTypeVariables
208−StandaloneDeriving
209−NoStandaloneDeriving
210−StarIsType
211−NoStarIsType
212−StaticPointers
213−NoStaticPointers
214−Strict
215−NoStrict
216−StrictData
217−NoStrictData
218−TemplateHaskell
219−NoTemplateHaskell
220−TemplateHaskellQuotes
221−NoTemplateHaskellQuotes
222−StandaloneKindSignatures
223−NoStandaloneKindSignatures
224−TraditionalRecordSyntax
225−NoTraditionalRecordSyntax
226−TransformListComp
227−NoTransformListComp
228−TupleSections
229−NoTupleSections
230−TypeApplications
231−NoTypeApplications
232−TypeInType
233−NoTypeInType
234−TypeFamilies
235−NoTypeFamilies
236−TypeOperators
237−NoTypeOperators
238−TypeSynonymInstances
239−NoTypeSynonymInstances
240−UnboxedTuples
241−NoUnboxedTuples
242−UnboxedSums
243−NoUnboxedSums
244−UndecidableInstances
245−NoUndecidableInstances
246−UndecidableSuperClasses
247−NoUndecidableSuperClasses
248−UnicodeSyntax
249−NoUnicodeSyntax
250−UnliftedFFITypes
251−NoUnliftedFFITypes
252−UnliftedNewtypes
253−NoUnliftedNewtypes
254−ViewPatterns
255−NoViewPatterns
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.3-x86_64-linux/ghc/versiondeleted−1
@@ -1 +0,0 @@
1−The Glorious Glasgow Haskell Compilation System, version 8.10.3
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc-pkg/dump-globaldeleted−1443
@@ -1,1443 +0,0 @@
1−name: Cabal
2−version: 3.2.1.0
3−visibility: public
4−id: Cabal-3.2.1.0
5−key: Cabal-3.2.1.0
6−license: BSD-3-Clause
7−copyright: 2003-2020, Cabal Development Team (see AUTHORS file)
8−maintainer: cabal-devel@haskell.org
9−author: Cabal Development Team <cabal-devel@haskell.org>
10−homepage: http://www.haskell.org/cabal/
11−synopsis: A framework for packaging Haskell software
12−description:
13− The Haskell Common Architecture for Building Applications and
14− Libraries: a framework defining a common interface for authors to more
15− easily build their Haskell applications in a portable way.
16− The Haskell Cabal is part of a larger infrastructure for distributing,
17− organizing, and cataloging Haskell libraries and tools.
18−category: Distribution
19−exposed: True
20−exposed-modules:
21− Distribution.Backpack Distribution.Backpack.ComponentsGraph
22− Distribution.Backpack.Configure
23− Distribution.Backpack.ConfiguredComponent
24− Distribution.Backpack.DescribeUnitId
25− Distribution.Backpack.FullUnitId
26− Distribution.Backpack.LinkedComponent
27− Distribution.Backpack.ModSubst Distribution.Backpack.ModuleShape
28− Distribution.Backpack.PreModuleShape Distribution.CabalSpecVersion
29− Distribution.Compat.Binary Distribution.Compat.CharParsing
30− Distribution.Compat.CreatePipe Distribution.Compat.DList
31− Distribution.Compat.Directory Distribution.Compat.Environment
32− Distribution.Compat.Exception Distribution.Compat.FilePath
33− Distribution.Compat.Graph Distribution.Compat.Internal.TempFile
34− Distribution.Compat.Lens Distribution.Compat.Newtype
35− Distribution.Compat.Parsing Distribution.Compat.Prelude.Internal
36− Distribution.Compat.Process Distribution.Compat.ResponseFile
37− Distribution.Compat.Semigroup Distribution.Compat.Stack
38− Distribution.Compat.Time Distribution.Compat.Typeable
39− Distribution.Compiler Distribution.FieldGrammar
40− Distribution.FieldGrammar.Class
41− Distribution.FieldGrammar.FieldDescrs
42− Distribution.FieldGrammar.Parsec Distribution.FieldGrammar.Pretty
43− Distribution.Fields Distribution.Fields.ConfVar
44− Distribution.Fields.Field Distribution.Fields.Lexer
45− Distribution.Fields.LexerMonad Distribution.Fields.ParseResult
46− Distribution.Fields.Parser Distribution.Fields.Pretty
47− Distribution.InstalledPackageInfo Distribution.License
48− Distribution.Make Distribution.ModuleName Distribution.Package
49− Distribution.PackageDescription
50− Distribution.PackageDescription.Check
51− Distribution.PackageDescription.Configuration
52− Distribution.PackageDescription.FieldGrammar
53− Distribution.PackageDescription.Parsec
54− Distribution.PackageDescription.PrettyPrint
55− Distribution.PackageDescription.Quirks
56− Distribution.PackageDescription.Utils Distribution.Parsec
57− Distribution.Parsec.Error Distribution.Parsec.FieldLineStream
58− Distribution.Parsec.Newtypes Distribution.Parsec.Position
59− Distribution.Parsec.Warning Distribution.Pretty Distribution.ReadE
60− Distribution.SPDX Distribution.SPDX.License
61− Distribution.SPDX.LicenseExceptionId
62− Distribution.SPDX.LicenseExpression Distribution.SPDX.LicenseId
63− Distribution.SPDX.LicenseListVersion
64− Distribution.SPDX.LicenseReference Distribution.Simple
65− Distribution.Simple.Bench Distribution.Simple.Build
66− Distribution.Simple.Build.Macros
67− Distribution.Simple.Build.PathsModule
68− Distribution.Simple.BuildPaths Distribution.Simple.BuildTarget
69− Distribution.Simple.BuildToolDepends Distribution.Simple.CCompiler
70− Distribution.Simple.Command Distribution.Simple.Compiler
71− Distribution.Simple.Configure Distribution.Simple.Doctest
72− Distribution.Simple.Flag Distribution.Simple.GHC
73− Distribution.Simple.GHCJS Distribution.Simple.Glob
74− Distribution.Simple.Haddock Distribution.Simple.HaskellSuite
75− Distribution.Simple.Hpc Distribution.Simple.Install
76− Distribution.Simple.InstallDirs
77− Distribution.Simple.InstallDirs.Internal
78− Distribution.Simple.LocalBuildInfo Distribution.Simple.PackageIndex
79− Distribution.Simple.PreProcess Distribution.Simple.PreProcess.Unlit
80− Distribution.Simple.Program Distribution.Simple.Program.Ar
81− Distribution.Simple.Program.Builtin Distribution.Simple.Program.Db
82− Distribution.Simple.Program.Find Distribution.Simple.Program.GHC
83− Distribution.Simple.Program.HcPkg Distribution.Simple.Program.Hpc
84− Distribution.Simple.Program.Internal Distribution.Simple.Program.Ld
85− Distribution.Simple.Program.ResponseFile
86− Distribution.Simple.Program.Run Distribution.Simple.Program.Script
87− Distribution.Simple.Program.Strip Distribution.Simple.Program.Types
88− Distribution.Simple.Register Distribution.Simple.Setup
89− Distribution.Simple.ShowBuildInfo Distribution.Simple.SrcDist
90− Distribution.Simple.Test Distribution.Simple.Test.ExeV10
91− Distribution.Simple.Test.LibV09 Distribution.Simple.Test.Log
92− Distribution.Simple.UHC Distribution.Simple.UserHooks
93− Distribution.Simple.Utils Distribution.System
94− Distribution.TestSuite Distribution.Text
95− Distribution.Types.AbiDependency Distribution.Types.AbiHash
96− Distribution.Types.AnnotatedId Distribution.Types.Benchmark
97− Distribution.Types.Benchmark.Lens
98− Distribution.Types.BenchmarkInterface
99− Distribution.Types.BenchmarkType Distribution.Types.BuildInfo
100− Distribution.Types.BuildInfo.Lens Distribution.Types.BuildType
101− Distribution.Types.Component Distribution.Types.ComponentId
102− Distribution.Types.ComponentInclude
103− Distribution.Types.ComponentLocalBuildInfo
104− Distribution.Types.ComponentName
105− Distribution.Types.ComponentRequestedSpec
106− Distribution.Types.CondTree Distribution.Types.Condition
107− Distribution.Types.ConfVar Distribution.Types.Dependency
108− Distribution.Types.DependencyMap Distribution.Types.ExeDependency
109− Distribution.Types.Executable Distribution.Types.Executable.Lens
110− Distribution.Types.ExecutableScope Distribution.Types.ExposedModule
111− Distribution.Types.Flag Distribution.Types.ForeignLib
112− Distribution.Types.ForeignLib.Lens
113− Distribution.Types.ForeignLibOption
114− Distribution.Types.ForeignLibType
115− Distribution.Types.GenericPackageDescription
116− Distribution.Types.GenericPackageDescription.Lens
117− Distribution.Types.GivenComponent
118− Distribution.Types.HookedBuildInfo
119− Distribution.Types.IncludeRenaming
120− Distribution.Types.InstalledPackageInfo
121− Distribution.Types.InstalledPackageInfo.FieldGrammar
122− Distribution.Types.InstalledPackageInfo.Lens
123− Distribution.Types.LegacyExeDependency Distribution.Types.Lens
124− Distribution.Types.Library Distribution.Types.Library.Lens
125− Distribution.Types.LibraryName Distribution.Types.LibraryVisibility
126− Distribution.Types.LocalBuildInfo Distribution.Types.Mixin
127− Distribution.Types.Module Distribution.Types.ModuleReexport
128− Distribution.Types.ModuleRenaming
129− Distribution.Types.MungedPackageId
130− Distribution.Types.MungedPackageName
131− Distribution.Types.PackageDescription
132− Distribution.Types.PackageDescription.Lens
133− Distribution.Types.PackageId Distribution.Types.PackageId.Lens
134− Distribution.Types.PackageName Distribution.Types.PackageName.Magic
135− Distribution.Types.PackageVersionConstraint
136− Distribution.Types.PkgconfigDependency
137− Distribution.Types.PkgconfigName
138− Distribution.Types.PkgconfigVersion
139− Distribution.Types.PkgconfigVersionRange
140− Distribution.Types.SetupBuildInfo
141− Distribution.Types.SetupBuildInfo.Lens
142− Distribution.Types.SourceRepo Distribution.Types.SourceRepo.Lens
143− Distribution.Types.TargetInfo Distribution.Types.TestSuite
144− Distribution.Types.TestSuite.Lens
145− Distribution.Types.TestSuiteInterface Distribution.Types.TestType
146− Distribution.Types.UnitId Distribution.Types.UnqualComponentName
147− Distribution.Types.Version Distribution.Types.VersionInterval
148− Distribution.Types.VersionRange
149− Distribution.Types.VersionRange.Internal Distribution.Utils.Generic
150− Distribution.Utils.IOData Distribution.Utils.LogProgress
151− Distribution.Utils.MD5 Distribution.Utils.MapAccum
152− Distribution.Utils.NubList Distribution.Utils.Progress
153− Distribution.Utils.ShortText Distribution.Utils.Structured
154− Distribution.Verbosity Distribution.Verbosity.Internal
155− Distribution.Version Language.Haskell.Extension
156−hidden-modules:
157− Distribution.Backpack.PreExistingComponent
158− Distribution.Backpack.ReadyComponent Distribution.Backpack.MixLink
159− Distribution.Backpack.ModuleScope Distribution.Backpack.UnifyM
160− Distribution.Backpack.Id Distribution.Utils.UnionFind
161− Distribution.Utils.Base62 Distribution.Compat.Async
162− Distribution.Compat.CopyFile Distribution.Compat.GetShortPathName
163− Distribution.Compat.MonadFail Distribution.Compat.Prelude
164− Distribution.Compat.SnocList Distribution.GetOpt Distribution.Lex
165− Distribution.Utils.String Distribution.Simple.GHC.EnvironmentParser
166− Distribution.Simple.GHC.Internal Distribution.Simple.GHC.ImplInfo
167− Distribution.Simple.Utils.Json Paths_Cabal
168−import-dirs:
169−library-dirs:
170−dynamic-library-dirs:
171−data-dir:
172−hs-libraries: HSCabal-3.2.1.0
173−depends:
174− array-0.5.4.0 base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
175− containers-0.6.2.1 deepseq-1.4.4.0 directory-1.3.6.0
176− filepath-1.4.2.1 mtl-2.2.2 parsec-3.1.14.0 pretty-1.1.3.6
177− process-1.6.9.0 text-1.2.4.1 time-1.9.3 transformers-0.5.6.2
178− unix-2.7.2.2
179−haddock-interfaces:
180−haddock-html:
181−---
182−name: array
183−version: 0.5.4.0
184−visibility: public
185−id: array-0.5.4.0
186−key: array-0.5.4.0
187−license: BSD-3-Clause
188−maintainer: libraries@haskell.org
189−synopsis: Mutable and immutable arrays
190−description:
191− In addition to providing the "Data.Array" module
192− <http://www.haskell.org/onlinereport/haskell2010/haskellch14.html as specified in the Haskell 2010 Language Report>,
193− this package also defines the classes 'IArray' of
194− immutable arrays and 'MArray' of arrays mutable within appropriate
195− monads, as well as some instances of these classes.
196−category: Data Structures
197−exposed: True
198−exposed-modules:
199− Data.Array Data.Array.Base Data.Array.IArray Data.Array.IO
200− Data.Array.IO.Internals Data.Array.IO.Safe Data.Array.MArray
201− Data.Array.MArray.Safe Data.Array.ST Data.Array.ST.Safe
202− Data.Array.Storable Data.Array.Storable.Internals
203− Data.Array.Storable.Safe Data.Array.Unboxed Data.Array.Unsafe
204−import-dirs:
205−library-dirs:
206−dynamic-library-dirs:
207−data-dir:
208−hs-libraries: HSarray-0.5.4.0
209−depends: base-4.14.1.0
210−haddock-interfaces:
211−haddock-html:
212−---
213−name: base
214−version: 4.14.1.0
215−visibility: public
216−id: base-4.14.1.0
217−key: base-4.14.1.0
218−license: BSD-3-Clause
219−maintainer: libraries@haskell.org
220−synopsis: Basic libraries
221−description:
222− This package contains the Standard Haskell "Prelude" and its support libraries,
223− and a large collection of useful libraries ranging from data
224− structures to parsing combinators and debugging utilities.
225−category: Prelude
226−exposed: True
227−exposed-modules:
228− Control.Applicative Control.Arrow Control.Category
229− Control.Concurrent Control.Concurrent.Chan Control.Concurrent.MVar
230− Control.Concurrent.QSem Control.Concurrent.QSemN Control.Exception
231− Control.Exception.Base Control.Monad Control.Monad.Fail
232− Control.Monad.Fix Control.Monad.IO.Class Control.Monad.Instances
233− Control.Monad.ST Control.Monad.ST.Lazy Control.Monad.ST.Lazy.Safe
234− Control.Monad.ST.Lazy.Unsafe Control.Monad.ST.Safe
235− Control.Monad.ST.Strict Control.Monad.ST.Unsafe Control.Monad.Zip
236− Data.Bifoldable Data.Bifunctor Data.Bitraversable Data.Bits
237− Data.Bool Data.Char Data.Coerce Data.Complex Data.Data Data.Dynamic
238− Data.Either Data.Eq Data.Fixed Data.Foldable Data.Function
239− Data.Functor Data.Functor.Classes Data.Functor.Compose
240− Data.Functor.Const Data.Functor.Contravariant Data.Functor.Identity
241− Data.Functor.Product Data.Functor.Sum Data.IORef Data.Int Data.Ix
242− Data.Kind Data.List Data.List.NonEmpty Data.Maybe Data.Monoid
243− Data.Ord Data.Proxy Data.Ratio Data.STRef Data.STRef.Lazy
244− Data.STRef.Strict Data.Semigroup Data.String Data.Traversable
245− Data.Tuple Data.Type.Bool Data.Type.Coercion Data.Type.Equality
246− Data.Typeable Data.Unique Data.Version Data.Void Data.Word
247− Debug.Trace Foreign Foreign.C Foreign.C.Error Foreign.C.String
248− Foreign.C.Types Foreign.Concurrent Foreign.ForeignPtr
249− Foreign.ForeignPtr.Safe Foreign.ForeignPtr.Unsafe Foreign.Marshal
250− Foreign.Marshal.Alloc Foreign.Marshal.Array Foreign.Marshal.Error
251− Foreign.Marshal.Pool Foreign.Marshal.Safe Foreign.Marshal.Unsafe
252− Foreign.Marshal.Utils Foreign.Ptr Foreign.Safe Foreign.StablePtr
253− Foreign.Storable GHC.Arr GHC.Base GHC.ByteOrder GHC.Char GHC.Clock
254− GHC.Conc GHC.Conc.IO GHC.Conc.Signal GHC.Conc.Sync
255− GHC.ConsoleHandler GHC.Constants GHC.Desugar GHC.Enum
256− GHC.Environment GHC.Err GHC.Event GHC.Exception GHC.Exception.Type
257− GHC.ExecutionStack GHC.ExecutionStack.Internal GHC.Exts
258− GHC.Fingerprint GHC.Fingerprint.Type GHC.Float
259− GHC.Float.ConversionUtils GHC.Float.RealFracMethods GHC.Foreign
260− GHC.ForeignPtr GHC.GHCi GHC.GHCi.Helpers GHC.Generics GHC.IO
261− GHC.IO.Buffer GHC.IO.BufferedIO GHC.IO.Device GHC.IO.Encoding
262− GHC.IO.Encoding.CodePage GHC.IO.Encoding.Failure
263− GHC.IO.Encoding.Iconv GHC.IO.Encoding.Latin1 GHC.IO.Encoding.Types
264− GHC.IO.Encoding.UTF16 GHC.IO.Encoding.UTF32 GHC.IO.Encoding.UTF8
265− GHC.IO.Exception GHC.IO.FD GHC.IO.Handle GHC.IO.Handle.FD
266− GHC.IO.Handle.Internals GHC.IO.Handle.Lock GHC.IO.Handle.Text
267− GHC.IO.Handle.Types GHC.IO.IOMode GHC.IO.Unsafe GHC.IOArray
268− GHC.IORef GHC.Int GHC.Ix GHC.List GHC.MVar GHC.Maybe GHC.Natural
269− GHC.Num GHC.OldList GHC.OverloadedLabels GHC.Pack GHC.Profiling
270− GHC.Ptr GHC.RTS.Flags GHC.Read GHC.Real GHC.Records
271− GHC.ResponseFile GHC.ST GHC.STRef GHC.Show GHC.Stable
272− GHC.StableName GHC.Stack GHC.Stack.CCS GHC.Stack.Types
273− GHC.StaticPtr GHC.Stats GHC.Storable GHC.TopHandler GHC.TypeLits
274− GHC.TypeNats GHC.Unicode GHC.Weak GHC.Word Numeric Numeric.Natural
275− Prelude System.CPUTime System.Console.GetOpt System.Environment
276− System.Environment.Blank System.Exit System.IO System.IO.Error
277− System.IO.Unsafe System.Info System.Mem System.Mem.StableName
278− System.Mem.Weak System.Posix.Internals System.Posix.Types
279− System.Timeout Text.ParserCombinators.ReadP
280− Text.ParserCombinators.ReadPrec Text.Printf Text.Read Text.Read.Lex
281− Text.Show Text.Show.Functions Type.Reflection
282− Type.Reflection.Unsafe Unsafe.Coerce
283−hidden-modules:
284− Control.Monad.ST.Imp Control.Monad.ST.Lazy.Imp Data.Functor.Utils
285− Data.OldList Data.Semigroup.Internal Data.Typeable.Internal
286− Foreign.ForeignPtr.Imp GHC.IO.Handle.Lock.Common
287− GHC.IO.Handle.Lock.Flock GHC.IO.Handle.Lock.LinuxOFD
288− GHC.IO.Handle.Lock.NoOp GHC.IO.Handle.Lock.Windows
289− GHC.StaticPtr.Internal System.Environment.ExecutablePath
290− System.CPUTime.Utils GHC.Event.Arr GHC.Event.Array
291− GHC.Event.Control GHC.Event.EPoll GHC.Event.IntTable
292− GHC.Event.Internal GHC.Event.KQueue GHC.Event.Manager GHC.Event.PSQ
293− GHC.Event.Poll GHC.Event.Thread GHC.Event.TimerManager
294− GHC.Event.Unique System.CPUTime.Posix.ClockGetTime
295− System.CPUTime.Posix.Times System.CPUTime.Posix.RUsage
296− System.CPUTime.Unsupported
297−import-dirs:
298−library-dirs:
299−dynamic-library-dirs:
300−data-dir:
301−hs-libraries: HSbase-4.14.1.0
302−include-dirs:
303−includes: HsBase.h
304−depends: ghc-prim-0.6.1 integer-gmp-1.0.3.0 rts
305−haddock-interfaces:
306−haddock-html:
307−---
308−name: binary
309−version: 0.8.8.0
310−visibility: public
311−id: binary-0.8.8.0
312−key: binary-0.8.8.0
313−license: BSD-3-Clause
314−maintainer: Lennart Kolmodin, Don Stewart <dons00@gmail.com>
315−author: Lennart Kolmodin <kolmodin@gmail.com>
316−stability: provisional
317−homepage: https://github.com/kolmodin/binary
318−synopsis:
319− Binary serialisation for Haskell values using lazy ByteStrings
320−description:
321− Efficient, pure binary serialisation using lazy ByteStrings.
322− Haskell values may be encoded to and from binary formats,
323− written to disk as binary, or sent over the network.
324− The format used can be automatically generated, or
325− you can choose to implement a custom format if needed.
326− Serialisation speeds of over 1 G\/sec have been observed,
327− so this library should be suitable for high performance
328− scenarios.
329−category: Data, Parsing
330−exposed: True
331−exposed-modules:
332− Data.Binary Data.Binary.Builder Data.Binary.Get
333− Data.Binary.Get.Internal Data.Binary.Put
334−hidden-modules:
335− Data.Binary.Class Data.Binary.Internal Data.Binary.Generic
336− Data.Binary.FloatCast
337−import-dirs:
338−library-dirs:
339−dynamic-library-dirs:
340−data-dir:
341−hs-libraries: HSbinary-0.8.8.0
342−depends:
343− array-0.5.4.0 base-4.14.1.0 bytestring-0.10.12.0 containers-0.6.2.1
344−haddock-interfaces:
345−haddock-html:
346−---
347−name: bytestring
348−version: 0.10.12.0
349−visibility: public
350−id: bytestring-0.10.12.0
351−key: bytestring-0.10.12.0
352−license: BSD-3-Clause
353−copyright:
354− Copyright (c) Don Stewart 2005-2009,
355− (c) Duncan Coutts 2006-2015,
356− (c) David Roundy 2003-2005,
357− (c) Jasper Van der Jeugt 2010,
358− (c) Simon Meier 2010-2013.
359−maintainer: Duncan Coutts <duncan@community.haskell.org>
360−author:
361− Don Stewart,
362− Duncan Coutts
363−homepage: https://github.com/haskell/bytestring
364−synopsis:
365− Fast, compact, strict and lazy byte strings with a list interface
366−description:
367− An efficient compact, immutable byte string type (both strict and lazy)
368− suitable for binary or 8-bit character data.
369− The 'ByteString' type represents sequences of bytes or 8-bit characters.
370− It is suitable for high performance use, both in terms of large data
371− quantities, or high speed requirements. The 'ByteString' functions follow
372− the same style as Haskell\'s ordinary lists, so it is easy to convert code
373− from using 'String' to 'ByteString'.
374− Two 'ByteString' variants are provided:
375− * Strict 'ByteString's keep the string as a single large array. This
376− makes them convenient for passing data between C and Haskell.
377− * Lazy 'ByteString's use a lazy list of strict chunks which makes it
378− suitable for I\/O streaming tasks.
379− The @Char8@ modules provide a character-based view of the same
380− underlying 'ByteString' types. This makes it convenient to handle mixed
381− binary and 8-bit character content (which is common in many file formats
382− and network protocols).
383− The 'Builder' module provides an efficient way to build up 'ByteString's
384− in an ad-hoc way by repeated concatenation. This is ideal for fast
385− serialisation or pretty printing.
386− There is also a 'ShortByteString' type which has a lower memory overhead
387− and can can be converted to or from a 'ByteString', but supports very few
388− other operations. It is suitable for keeping many short strings in memory.
389− 'ByteString's are not designed for Unicode. For Unicode strings you should
390− use the 'Text' type from the @text@ package.
391− These modules are intended to be imported qualified, to avoid name clashes
392− with "Prelude" functions, e.g.
393− > import qualified Data.ByteString as BS
394−category: Data
395−exposed: True
396−exposed-modules:
397− Data.ByteString Data.ByteString.Builder
398− Data.ByteString.Builder.Extra Data.ByteString.Builder.Internal
399− Data.ByteString.Builder.Prim Data.ByteString.Builder.Prim.Internal
400− Data.ByteString.Char8 Data.ByteString.Internal Data.ByteString.Lazy
401− Data.ByteString.Lazy.Builder Data.ByteString.Lazy.Builder.ASCII
402− Data.ByteString.Lazy.Builder.Extras Data.ByteString.Lazy.Char8
403− Data.ByteString.Lazy.Internal Data.ByteString.Short
404− Data.ByteString.Short.Internal Data.ByteString.Unsafe
405−hidden-modules:
406− Data.ByteString.Builder.ASCII Data.ByteString.Builder.Prim.Binary
407− Data.ByteString.Builder.Prim.ASCII
408− Data.ByteString.Builder.Prim.Internal.Floating
409− Data.ByteString.Builder.Prim.Internal.UncheckedShifts
410− Data.ByteString.Builder.Prim.Internal.Base16
411−import-dirs:
412−library-dirs:
413−dynamic-library-dirs:
414−data-dir:
415−hs-libraries: HSbytestring-0.10.12.0
416−include-dirs:
417−includes: fpstring.h
418−depends:
419− base-4.14.1.0 deepseq-1.4.4.0 ghc-prim-0.6.1 integer-gmp-1.0.3.0
420−haddock-interfaces:
421−haddock-html:
422−---
423−name: containers
424−version: 0.6.2.1
425−visibility: public
426−id: containers-0.6.2.1
427−key: containers-0.6.2.1
428−license: BSD-3-Clause
429−maintainer: libraries@haskell.org
430−synopsis: Assorted concrete container types
431−description:
432− This package contains efficient general-purpose implementations
433− of various immutable container types including sets, maps, sequences,
434− trees, and graphs.
435− For a walkthrough of what this package provides with examples of common
436− operations see the [containers
437− introduction](https://haskell-containers.readthedocs.io).
438− The declared cost of each operation is either worst-case or amortized, but
439− remains valid even if structures are shared.
440−category: Data Structures
441−exposed: True
442−exposed-modules:
443− Data.Containers.ListUtils Data.Graph Data.IntMap
444− Data.IntMap.Internal Data.IntMap.Internal.Debug Data.IntMap.Lazy
445− Data.IntMap.Merge.Lazy Data.IntMap.Merge.Strict Data.IntMap.Strict
446− Data.IntMap.Strict.Internal Data.IntSet Data.IntSet.Internal
447− Data.Map Data.Map.Internal Data.Map.Internal.Debug Data.Map.Lazy
448− Data.Map.Merge.Lazy Data.Map.Merge.Strict Data.Map.Strict
449− Data.Map.Strict.Internal Data.Sequence Data.Sequence.Internal
450− Data.Sequence.Internal.Sorting Data.Set Data.Set.Internal Data.Tree
451− Utils.Containers.Internal.BitQueue
452− Utils.Containers.Internal.BitUtil
453− Utils.Containers.Internal.StrictPair
454−hidden-modules:
455− Utils.Containers.Internal.State
456− Utils.Containers.Internal.StrictMaybe
457− Utils.Containers.Internal.PtrEquality
458− Utils.Containers.Internal.Coercions
459− Utils.Containers.Internal.TypeError
460− Data.Map.Internal.DeprecatedShowTree
461− Data.IntMap.Internal.DeprecatedDebug
462−import-dirs:
463−library-dirs:
464−dynamic-library-dirs:
465−data-dir:
466−hs-libraries: HScontainers-0.6.2.1
467−depends: array-0.5.4.0 base-4.14.1.0 deepseq-1.4.4.0
468−haddock-interfaces:
469−haddock-html:
470−---
471−name: deepseq
472−version: 1.4.4.0
473−visibility: public
474−id: deepseq-1.4.4.0
475−key: deepseq-1.4.4.0
476−license: BSD-3-Clause
477−maintainer: libraries@haskell.org
478−synopsis: Deep evaluation of data structures
479−description:
480− This package provides methods for fully evaluating data structures
481− (\"deep evaluation\"). Deep evaluation is often used for adding
482− strictness to a program, e.g. in order to force pending exceptions,
483− remove space leaks, or force lazy I/O to happen. It is also useful
484− in parallel programs, to ensure pending work does not migrate to the
485− wrong thread.
486− The primary use of this package is via the 'deepseq' function, a
487− \"deep\" version of 'seq'. It is implemented on top of an 'NFData'
488− typeclass (\"Normal Form Data\", data structures with no unevaluated
489− components) which defines strategies for fully evaluating different
490− data types. See module documentation in "Control.DeepSeq" for more
491− details.
492−category: Control
493−exposed: True
494−exposed-modules: Control.DeepSeq
495−hidden-modules: Control.DeepSeq.BackDoor
496−import-dirs:
497−library-dirs:
498−dynamic-library-dirs:
499−data-dir:
500−hs-libraries: HSdeepseq-1.4.4.0
501−depends: array-0.5.4.0 base-4.14.1.0
502−haddock-interfaces:
503−haddock-html:
504−---
505−name: directory
506−version: 1.3.6.0
507−visibility: public
508−id: directory-1.3.6.0
509−key: directory-1.3.6.0
510−license: BSD-3-Clause
511−maintainer: libraries@haskell.org
512−synopsis: Platform-agnostic library for filesystem operations
513−description:
514− This library provides a basic set of operations for manipulating files and
515− directories in a portable way.
516−category: System
517−exposed: True
518−exposed-modules:
519− System.Directory System.Directory.Internal
520− System.Directory.Internal.Prelude
521−hidden-modules:
522− System.Directory.Internal.C_utimensat
523− System.Directory.Internal.Common System.Directory.Internal.Config
524− System.Directory.Internal.Posix System.Directory.Internal.Windows
525−import-dirs:
526−library-dirs:
527−dynamic-library-dirs:
528−data-dir:
529−hs-libraries: HSdirectory-1.3.6.0
530−depends:
531− base-4.14.1.0 filepath-1.4.2.1 time-1.9.3 unix-2.7.2.2
532−haddock-interfaces:
533−haddock-html:
534−---
535−name: exceptions
536−version: 0.10.4
537−visibility: public
538−id: exceptions-0.10.4
539−key: exceptions-0.10.4
540−license: BSD-3-Clause
541−copyright:
542− Copyright (C) 2013-2015 Edward A. Kmett
543− Copyright (C) 2012 Google Inc.
544−maintainer: Edward A. Kmett <ekmett@gmail.com>
545−author: Edward A. Kmett
546−stability: provisional
547−homepage: http://github.com/ekmett/exceptions/
548−synopsis: Extensible optionally-pure exceptions
549−description: Extensible optionally-pure exceptions.
550−category: Control, Exceptions, Monad
551−exposed: True
552−exposed-modules: Control.Monad.Catch Control.Monad.Catch.Pure
553−import-dirs:
554−library-dirs:
555−dynamic-library-dirs:
556−data-dir:
557−hs-libraries: HSexceptions-0.10.4
558−depends:
559− base-4.14.1.0 mtl-2.2.2 stm-2.5.0.0 template-haskell-2.16.0.0
560− transformers-0.5.6.2
561−haddock-interfaces:
562−haddock-html:
563−---
564−name: filepath
565−version: 1.4.2.1
566−visibility: public
567−id: filepath-1.4.2.1
568−key: filepath-1.4.2.1
569−license: BSD-3-Clause
570−copyright: Neil Mitchell 2005-2018
571−maintainer: Neil Mitchell <ndmitchell@gmail.com>
572−author: Neil Mitchell <ndmitchell@gmail.com>
573−homepage: https://github.com/haskell/filepath#readme
574−synopsis: Library for manipulating FilePaths in a cross platform way.
575−description:
576− This package provides functionality for manipulating @FilePath@ values, and is shipped with both <https://www.haskell.org/ghc/ GHC> and the <https://www.haskell.org/platform/ Haskell Platform>. It provides three modules:
577− * "System.FilePath.Posix" manipulates POSIX\/Linux style @FilePath@ values (with @\/@ as the path separator).
578− * "System.FilePath.Windows" manipulates Windows style @FilePath@ values (with either @\\@ or @\/@ as the path separator, and deals with drives).
579− * "System.FilePath" is an alias for the module appropriate to your platform.
580− All three modules provide the same API, and the same documentation (calling out differences in the different variants).
581−category: System
582−exposed: True
583−exposed-modules:
584− System.FilePath System.FilePath.Posix System.FilePath.Windows
585−import-dirs:
586−library-dirs:
587−dynamic-library-dirs:
588−data-dir:
589−hs-libraries: HSfilepath-1.4.2.1
590−depends: base-4.14.1.0
591−haddock-interfaces:
592−haddock-html:
593−---
594−name: ghc-boot
595−version: 8.10.4
596−visibility: public
597−id: ghc-boot-8.10.4
598−key: ghc-boot-8.10.4
599−license: BSD-3-Clause
600−maintainer: ghc-devs@haskell.org
601−synopsis: Shared functionality between GHC and its boot libraries
602−description:
603− This library is shared between GHC, ghc-pkg, and other boot
604− libraries.
605− A note about "GHC.PackageDb": it only deals with the subset of
606− the package database that the compiler cares about: modules
607− paths etc and not package metadata like description, authors
608− etc. It is thus not a library interface to ghc-pkg and is *not*
609− suitable for modifying GHC package databases.
610− The package database format and this library are constructed in
611− such a way that while ghc-pkg depends on Cabal, the GHC library
612− and program do not have to depend on Cabal.
613−category: GHC
614−exposed: True
615−exposed-modules:
616− GHC.BaseDir GHC.ForeignSrcLang GHC.HandleEncoding
617− GHC.LanguageExtensions GHC.PackageDb GHC.Platform GHC.Platform.Host
618− GHC.Serialized GHC.Settings GHC.UniqueSubdir GHC.Version
619−import-dirs:
620−library-dirs:
621−dynamic-library-dirs:
622−data-dir:
623−hs-libraries: HSghc-boot-8.10.4
624−depends:
625− base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
626− containers-0.6.2.1 directory-1.3.6.0 filepath-1.4.2.1
627− ghc-boot-th-8.10.4
628−haddock-interfaces:
629−haddock-html:
630−---
631−name: ghc-boot-th
632−version: 8.10.4
633−visibility: public
634−id: ghc-boot-th-8.10.4
635−key: ghc-boot-th-8.10.4
636−license: BSD-3-Clause
637−maintainer: ghc-devs@haskell.org
638−synopsis:
639− Shared functionality between GHC and the @template-haskell@
640− library
641−description:
642− This library contains various bits shared between the @ghc@ and
643− @template-haskell@ libraries.
644− This package exists to ensure that @template-haskell@ has a
645− minimal set of transitive dependencies, since it is intended to
646− be depended upon by user code.
647−category: GHC
648−exposed: True
649−exposed-modules:
650− GHC.ForeignSrcLang.Type GHC.LanguageExtensions.Type GHC.Lexeme
651−import-dirs:
652−library-dirs:
653−dynamic-library-dirs:
654−data-dir:
655−hs-libraries: HSghc-boot-th-8.10.4
656−depends: base-4.14.1.0
657−haddock-interfaces:
658−haddock-html:
659−---
660−name: ghc-compact
661−version: 0.1.0.0
662−visibility: public
663−id: ghc-compact-0.1.0.0
664−key: ghc-compact-0.1.0.0
665−license: BSD-3-Clause
666−maintainer: libraries@haskell.org
667−synopsis: In memory storage of deeply evaluated data structure
668−description:
669− This package provides minimal functionality for working with
670− "compact regions", which hold a fully evaluated Haskell object graph.
671− These regions maintain the invariant that no pointers live inside the struct
672− that point outside it, which ensures efficient garbage collection without
673− ever reading the structure contents (effectively, it works as a manually
674− managed "oldest generation" which is never freed until the whole is
675− released).
676− Internally, the struct is stored a single contiguous block of memory,
677− which allows efficient serialization and deserialization of structs
678− for distributed computing.
679−category: Data
680−exposed: True
681−exposed-modules: GHC.Compact GHC.Compact.Serialized
682−import-dirs:
683−library-dirs:
684−dynamic-library-dirs:
685−data-dir:
686−hs-libraries: HSghc-compact-0.1.0.0
687−depends: base-4.14.1.0 bytestring-0.10.12.0 ghc-prim-0.6.1
688−haddock-interfaces:
689−haddock-html:
690−---
691−name: ghc-heap
692−version: 8.10.4
693−visibility: public
694−id: ghc-heap-8.10.4
695−key: ghc-heap-8.10.4
696−license: BSD-3-Clause
697−maintainer: libraries@haskell.org
698−synopsis: Functions for walking GHC's heap
699−description:
700− This package provides functions for walking the GHC heap data structures
701− and retrieving information about those data structures.
702−category: GHC
703−exposed: True
704−exposed-modules:
705− GHC.Exts.Heap GHC.Exts.Heap.ClosureTypes GHC.Exts.Heap.Closures
706− GHC.Exts.Heap.Constants GHC.Exts.Heap.InfoTable
707− GHC.Exts.Heap.InfoTable.Types GHC.Exts.Heap.InfoTableProf
708− GHC.Exts.Heap.Utils
709−import-dirs:
710−library-dirs:
711−dynamic-library-dirs:
712−data-dir:
713−hs-libraries: HSghc-heap-8.10.4
714−depends: base-4.14.1.0 ghc-prim-0.6.1 rts
715−haddock-interfaces:
716−haddock-html:
717−---
718−name: ghc-prim
719−version: 0.6.1
720−visibility: public
721−id: ghc-prim-0.6.1
722−key: ghc-prim-0.6.1
723−license: BSD-3-Clause
724−maintainer: libraries@haskell.org
725−synopsis: GHC primitives
726−description:
727− This package contains the primitive types and operations supplied by GHC.
728−category: GHC
729−exposed: True
730−exposed-modules:
731− GHC.CString GHC.Classes GHC.Debug GHC.IntWord64 GHC.Magic
732− GHC.Prim.Ext GHC.PrimopWrappers GHC.Tuple GHC.Types GHC.Prim
733−import-dirs:
734−library-dirs:
735−dynamic-library-dirs:
736−data-dir:
737−hs-libraries: HSghc-prim-0.6.1
738−extra-libraries: gcc c m
739−depends: rts
740−haddock-interfaces:
741−haddock-html:
742−---
743−name: ghci
744−version: 8.10.4
745−visibility: public
746−id: ghci-8.10.4
747−key: ghci-8.10.4
748−license: BSD-3-Clause
749−maintainer: ghc-devs@haskell.org
750−synopsis: The library supporting GHC's interactive interpreter
751−description:
752− This library offers interfaces which mediate interactions between the
753− @ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter
754− backend.
755−category: GHC
756−exposed: True
757−exposed-modules:
758− GHCi.BinaryArray GHCi.BreakArray GHCi.CreateBCO GHCi.FFI
759− GHCi.InfoTable GHCi.Message GHCi.ObjLink GHCi.RemoteTypes
760− GHCi.ResolvedBCO GHCi.Run GHCi.Signals GHCi.StaticPtrTable GHCi.TH
761− GHCi.TH.Binary SizedSeq
762−import-dirs:
763−library-dirs:
764−dynamic-library-dirs:
765−data-dir:
766−hs-libraries: HSghci-8.10.4
767−include-dirs:
768−depends:
769− array-0.5.4.0 base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
770− containers-0.6.2.1 deepseq-1.4.4.0 filepath-1.4.2.1 ghc-boot-8.10.4
771− ghc-boot-th-8.10.4 ghc-heap-8.10.4 template-haskell-2.16.0.0
772− transformers-0.5.6.2 unix-2.7.2.2
773−haddock-interfaces:
774−haddock-html:
775−---
776−name: haskeline
777−version: 0.8.0.1
778−visibility: public
779−id: haskeline-0.8.0.1
780−key: haskeline-0.8.0.1
781−license: BSD-3-Clause
782−copyright: (c) Judah Jacobson
783−maintainer: Judah Jacobson <judah.jacobson@gmail.com>
784−author: Judah Jacobson
785−stability: Stable
786−homepage: https://github.com/judah/haskeline
787−synopsis:
788− A command-line interface for user input, written in Haskell.
789−description:
790− Haskeline provides a user interface for line input in command-line
791− programs. This library is similar in purpose to readline, but since
792− it is written in Haskell it is (hopefully) more easily used in other
793− Haskell programs.
794− Haskeline runs both on POSIX-compatible systems and on Windows.
795−category: User Interfaces
796−exposed: True
797−exposed-modules:
798− System.Console.Haskeline System.Console.Haskeline.Completion
799− System.Console.Haskeline.History System.Console.Haskeline.IO
800− System.Console.Haskeline.Internal
801−hidden-modules:
802− System.Console.Haskeline.Backend
803− System.Console.Haskeline.Backend.WCWidth
804− System.Console.Haskeline.Command
805− System.Console.Haskeline.Command.Completion
806− System.Console.Haskeline.Command.History
807− System.Console.Haskeline.Command.KillRing
808− System.Console.Haskeline.Directory System.Console.Haskeline.Emacs
809− System.Console.Haskeline.InputT System.Console.Haskeline.Key
810− System.Console.Haskeline.LineState System.Console.Haskeline.Monads
811− System.Console.Haskeline.Prefs System.Console.Haskeline.Recover
812− System.Console.Haskeline.RunCommand System.Console.Haskeline.Term
813− System.Console.Haskeline.Command.Undo System.Console.Haskeline.Vi
814− System.Console.Haskeline.Backend.Posix
815− System.Console.Haskeline.Backend.Posix.Encoder
816− System.Console.Haskeline.Backend.DumbTerm
817−import-dirs:
818−library-dirs:
819−dynamic-library-dirs:
820−data-dir:
821−hs-libraries: HShaskeline-0.8.0.1
822−depends:
823− base-4.14.1.0 bytestring-0.10.12.0 containers-0.6.2.1
824− directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
825− process-1.6.9.0 stm-2.5.0.0 transformers-0.5.6.2 unix-2.7.2.2
826−haddock-interfaces:
827−haddock-html:
828−---
829−name: hpc
830−version: 0.6.1.0
831−visibility: public
832−id: hpc-0.6.1.0
833−key: hpc-0.6.1.0
834−license: BSD-3-Clause
835−maintainer: ghc-devs@haskell.org
836−author: Andy Gill
837−synopsis: Code Coverage Library for Haskell
838−description:
839− This package provides the code coverage library for Haskell.
840− See <http://www.haskell.org/haskellwiki/Haskell_program_coverage> for more
841− information.
842−category: Control
843−exposed: True
844−exposed-modules:
845− Trace.Hpc.Mix Trace.Hpc.Reflect Trace.Hpc.Tix Trace.Hpc.Util
846−import-dirs:
847−library-dirs:
848−dynamic-library-dirs:
849−data-dir:
850−hs-libraries: HShpc-0.6.1.0
851−depends:
852− base-4.14.1.0 containers-0.6.2.1 deepseq-1.4.4.0 directory-1.3.6.0
853− filepath-1.4.2.1 time-1.9.3
854−haddock-interfaces:
855−haddock-html:
856−---
857−name: integer-gmp
858−version: 1.0.3.0
859−visibility: public
860−id: integer-gmp-1.0.3.0
861−key: integer-gmp-1.0.3.0
862−license: BSD-3-Clause
863−maintainer: hvr@gnu.org
864−author: Herbert Valerio Riedel
865−synopsis: Integer library based on GMP
866−description:
867− This package provides the low-level implementation of the standard
868− 'Integer' type based on the
869− <http://gmplib.org/ GNU Multiple Precision Arithmetic Library (GMP)>.
870− This package provides access to the internal representation of
871− 'Integer' as well as primitive operations with no proper error
872− handling, and should only be used directly with the utmost care.
873−category: Numeric, Algebra
874−exposed: True
875−exposed-modules:
876− GHC.Integer GHC.Integer.GMP.Internals GHC.Integer.Logarithms
877− GHC.Integer.Logarithms.Internals
878−hidden-modules: GHC.Integer.Type
879−import-dirs:
880−library-dirs:
881−dynamic-library-dirs:
882−data-dir:
883−hs-libraries: HSinteger-gmp-1.0.3.0
884−extra-libraries: gmp
885−include-dirs:
886−depends: ghc-prim-0.6.1
887−haddock-interfaces:
888−haddock-html:
889−---
890−name: libiserv
891−version: 8.10.4
892−visibility: public
893−id: libiserv-8.10.4
894−key: libiserv-8.10.4
895−license: BSD-3-Clause
896−copyright: XXX
897−maintainer: XXX
898−author: XXX
899−synopsis: Provides shared functionality between iserv and iserv-proxy
900−category: Development
901−exposed: True
902−exposed-modules: GHCi.Utils Lib
903−import-dirs:
904−library-dirs:
905−dynamic-library-dirs:
906−data-dir:
907−hs-libraries: HSlibiserv-8.10.4
908−depends:
909− base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
910− containers-0.6.2.1 deepseq-1.4.4.0 ghci-8.10.4 unix-2.7.2.2
911−haddock-interfaces:
912−haddock-html:
913−---
914−name: mtl
915−version: 2.2.2
916−visibility: public
917−id: mtl-2.2.2
918−key: mtl-2.2.2
919−license: BSD-3-Clause
920−maintainer: Edward Kmett <ekmett@gmail.com>
921−author: Andy Gill
922−homepage: http://github.com/haskell/mtl
923−synopsis: Monad classes, using functional dependencies
924−description:
925− Monad classes using functional dependencies, with instances
926− for various monad transformers, inspired by the paper
927− /Functional Programming with Overloading and Higher-Order Polymorphism/,
928− by Mark P Jones, in /Advanced School of Functional Programming/, 1995
929− (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
930−category: Control
931−exposed: True
932−exposed-modules:
933− Control.Monad.Cont Control.Monad.Cont.Class Control.Monad.Error
934− Control.Monad.Error.Class Control.Monad.Except
935− Control.Monad.Identity Control.Monad.List Control.Monad.RWS
936− Control.Monad.RWS.Class Control.Monad.RWS.Lazy
937− Control.Monad.RWS.Strict Control.Monad.Reader
938− Control.Monad.Reader.Class Control.Monad.State
939− Control.Monad.State.Class Control.Monad.State.Lazy
940− Control.Monad.State.Strict Control.Monad.Trans Control.Monad.Writer
941− Control.Monad.Writer.Class Control.Monad.Writer.Lazy
942− Control.Monad.Writer.Strict
943−import-dirs:
944−library-dirs:
945−dynamic-library-dirs:
946−data-dir:
947−hs-libraries: HSmtl-2.2.2
948−depends: base-4.14.1.0 transformers-0.5.6.2
949−haddock-interfaces:
950−haddock-html:
951−---
952−name: parsec
953−version: 3.1.14.0
954−visibility: public
955−id: parsec-3.1.14.0
956−key: parsec-3.1.14.0
957−license: BSD-3-Clause
958−maintainer: Herbert Valerio Riedel <hvr@gnu.org>
959−author:
960− Daan Leijen <daan@microsoft.com>, Paolo Martini <paolo@nemail.it>, Antoine Latter <aslatter@gmail.com>
961−homepage: https://github.com/haskell/parsec
962−synopsis: Monadic parser combinators
963−description:
964− Parsec is designed from scratch as an industrial-strength parser
965− library. It is simple, safe, well documented (on the package
966− homepage), has extensive libraries, good error messages,
967− and is fast. It is defined as a monad transformer that can be
968− stacked on arbitrary monads, and it is also parametric in the
969− input stream type.
970− The main entry point is the "Text.Parsec" module which provides
971− defaults for parsing 'Char'acter data.
972− The "Text.ParserCombinators.Parsec" module hierarchy contains
973− the legacy @parsec-2@ API and may be removed at some point in
974− the future.
975−category: Parsing
976−exposed: True
977−exposed-modules:
978− Text.Parsec Text.Parsec.ByteString Text.Parsec.ByteString.Lazy
979− Text.Parsec.Char Text.Parsec.Combinator Text.Parsec.Error
980− Text.Parsec.Expr Text.Parsec.Language Text.Parsec.Perm
981− Text.Parsec.Pos Text.Parsec.Prim Text.Parsec.String
982− Text.Parsec.Text Text.Parsec.Text.Lazy Text.Parsec.Token
983− Text.ParserCombinators.Parsec Text.ParserCombinators.Parsec.Char
984− Text.ParserCombinators.Parsec.Combinator
985− Text.ParserCombinators.Parsec.Error
986− Text.ParserCombinators.Parsec.Expr
987− Text.ParserCombinators.Parsec.Language
988− Text.ParserCombinators.Parsec.Perm
989− Text.ParserCombinators.Parsec.Pos
990− Text.ParserCombinators.Parsec.Prim
991− Text.ParserCombinators.Parsec.Token
992−import-dirs:
993−library-dirs:
994−dynamic-library-dirs:
995−data-dir:
996−hs-libraries: HSparsec-3.1.14.0
997−depends:
998− base-4.14.1.0 bytestring-0.10.12.0 mtl-2.2.2 text-1.2.4.1
999−haddock-interfaces:
1000−haddock-html:
1001−---
1002−name: pretty
1003−version: 1.1.3.6
1004−visibility: public
1005−id: pretty-1.1.3.6
1006−key: pretty-1.1.3.6
1007−license: BSD-3-Clause
1008−maintainer: David Terei <code@davidterei.com>
1009−stability: Stable
1010−homepage: http://github.com/haskell/pretty
1011−synopsis: Pretty-printing library
1012−description:
1013− This package contains a pretty-printing library, a set of API's
1014− that provides a way to easily print out text in a consistent
1015− format of your choosing. This is useful for compilers and related
1016− tools.
1017− This library was originally designed by John Hughes's and has since
1018− been heavily modified by Simon Peyton Jones.
1019−category: Text
1020−exposed: True
1021−exposed-modules:
1022− Text.PrettyPrint Text.PrettyPrint.Annotated
1023− Text.PrettyPrint.Annotated.HughesPJ
1024− Text.PrettyPrint.Annotated.HughesPJClass Text.PrettyPrint.HughesPJ
1025− Text.PrettyPrint.HughesPJClass
1026−import-dirs:
1027−library-dirs:
1028−dynamic-library-dirs:
1029−data-dir:
1030−hs-libraries: HSpretty-1.1.3.6
1031−depends: base-4.14.1.0 deepseq-1.4.4.0 ghc-prim-0.6.1
1032−haddock-interfaces:
1033−haddock-html:
1034−---
1035−name: process
1036−version: 1.6.9.0
1037−visibility: public
1038−id: process-1.6.9.0
1039−key: process-1.6.9.0
1040−license: BSD-3-Clause
1041−maintainer: libraries@haskell.org
1042−synopsis: Process libraries
1043−description:
1044− This package contains libraries for dealing with system processes.
1045− The typed-process package is a more recent take on a process API,
1046− which uses this package internally. It features better binary
1047− support, easier concurrency, and a more composable API. You can
1048− read more about it at
1049− <https://github.com/fpco/typed-process/#readme>.
1050−category: System
1051−exposed: True
1052−exposed-modules: System.Cmd System.Process System.Process.Internals
1053−hidden-modules: System.Process.Common System.Process.Posix
1054−import-dirs:
1055−library-dirs:
1056−dynamic-library-dirs:
1057−data-dir:
1058−hs-libraries: HSprocess-1.6.9.0
1059−include-dirs:
1060−includes: runProcess.h
1061−depends:
1062− base-4.14.1.0 deepseq-1.4.4.0 directory-1.3.6.0 filepath-1.4.2.1
1063− unix-2.7.2.2
1064−haddock-interfaces:
1065−haddock-html:
1066−---
1067−name: stm
1068−version: 2.5.0.0
1069−visibility: public
1070−id: stm-2.5.0.0
1071−key: stm-2.5.0.0
1072−license: BSD-3-Clause
1073−maintainer: libraries@haskell.org
1074−homepage: https://wiki.haskell.org/Software_transactional_memory
1075−synopsis: Software Transactional Memory
1076−description:
1077− Software Transactional Memory, or STM, is an abstraction for
1078− concurrent communication. The main benefits of STM are
1079− /composability/ and /modularity/. That is, using STM you can write
1080− concurrent abstractions that can be easily composed with any other
1081− abstraction built using STM, without exposing the details of how
1082− your abstraction ensures safety. This is typically not the case
1083− with other forms of concurrent communication, such as locks or
1084− 'MVar's.
1085−category: Concurrency
1086−exposed: True
1087−exposed-modules:
1088− Control.Concurrent.STM Control.Concurrent.STM.TArray
1089− Control.Concurrent.STM.TBQueue Control.Concurrent.STM.TChan
1090− Control.Concurrent.STM.TMVar Control.Concurrent.STM.TQueue
1091− Control.Concurrent.STM.TSem Control.Concurrent.STM.TVar
1092− Control.Monad.STM
1093−hidden-modules: Control.Sequential.STM
1094−import-dirs:
1095−library-dirs:
1096−dynamic-library-dirs:
1097−data-dir:
1098−hs-libraries: HSstm-2.5.0.0
1099−depends: array-0.5.4.0 base-4.14.1.0
1100−haddock-interfaces:
1101−haddock-html:
1102−---
1103−name: template-haskell
1104−version: 2.16.0.0
1105−visibility: public
1106−id: template-haskell-2.16.0.0
1107−key: template-haskell-2.16.0.0
1108−license: BSD-3-Clause
1109−maintainer: libraries@haskell.org
1110−synopsis: Support library for Template Haskell
1111−description:
1112− This package provides modules containing facilities for manipulating
1113− Haskell source code using Template Haskell.
1114− See <http://www.haskell.org/haskellwiki/Template_Haskell> for more
1115− information.
1116−category: Template Haskell
1117−exposed: True
1118−exposed-modules:
1119− Language.Haskell.TH Language.Haskell.TH.LanguageExtensions
1120− Language.Haskell.TH.Lib Language.Haskell.TH.Lib.Internal
1121− Language.Haskell.TH.Ppr Language.Haskell.TH.PprLib
1122− Language.Haskell.TH.Quote Language.Haskell.TH.Syntax
1123−hidden-modules: Language.Haskell.TH.Lib.Map
1124−import-dirs:
1125−library-dirs:
1126−dynamic-library-dirs:
1127−data-dir:
1128−hs-libraries: HStemplate-haskell-2.16.0.0
1129−depends:
1130− base-4.14.1.0 ghc-boot-th-8.10.4 ghc-prim-0.6.1 pretty-1.1.3.6
1131−haddock-interfaces:
1132−haddock-html:
1133−---
1134−name: text
1135−version: 1.2.4.1
1136−visibility: public
1137−id: text-1.2.4.1
1138−key: text-1.2.4.1
1139−license: BSD-2-Clause
1140−copyright: 2009-2011 Bryan O'Sullivan, 2008-2009 Tom Harper
1141−maintainer:
1142− Bryan O'Sullivan <bos@serpentine.com>, Herbert Valerio Riedel <hvr@gnu.org>
1143−author: Bryan O'Sullivan <bos@serpentine.com>
1144−homepage: https://github.com/haskell/text
1145−synopsis: An efficient packed Unicode text type.
1146−description:
1147− An efficient packed, immutable Unicode text type (both strict and
1148− lazy), with a powerful loop fusion optimization framework.
1149− The 'Text' type represents Unicode character strings, in a time and
1150− space-efficient manner. This package provides text processing
1151− capabilities that are optimized for performance critical use, both
1152− in terms of large data quantities and high speed.
1153− The 'Text' type provides character-encoding, type-safe case
1154− conversion via whole-string case conversion functions (see "Data.Text").
1155− It also provides a range of functions for converting 'Text' values to
1156− and from 'ByteStrings', using several standard encodings
1157− (see "Data.Text.Encoding").
1158− Efficient locale-sensitive support for text IO is also supported
1159− (see "Data.Text.IO").
1160− These modules are intended to be imported qualified, to avoid name
1161− clashes with Prelude functions, e.g.
1162− > import qualified Data.Text as T
1163− == ICU Support
1164− To use an extended and very rich family of functions for working
1165− with Unicode text (including normalization, regular expressions,
1166− non-standard encodings, text breaking, and locales), see
1167− the [text-icu package](https://hackage.haskell.org/package/text-icu)
1168− based on the well-respected and liberally
1169− licensed [ICU library](http://site.icu-project.org/).
1170− == Internal Representation: UTF-16 vs. UTF-8
1171− Currently the @text@ library uses UTF-16 as its internal representation
1172− which is [neither a fixed-width nor always the most dense representation](http://utf8everywhere.org/)
1173− for Unicode text. We're currently investigating the feasibility
1174− of [changing Text's internal representation to UTF-8](https://github.com/text-utf8)
1175− and if you need such a 'Text' type right now you might be interested in using the spin-off
1176− packages <https://hackage.haskell.org/package/text-utf8 text-utf8> and
1177− <https://hackage.haskell.org/package/text-short text-short>.
1178−category: Data, Text
1179−exposed: True
1180−exposed-modules:
1181− Data.Text Data.Text.Array Data.Text.Encoding
1182− Data.Text.Encoding.Error Data.Text.Foreign Data.Text.IO
1183− Data.Text.Internal Data.Text.Internal.Builder
1184− Data.Text.Internal.Builder.Functions
1185− Data.Text.Internal.Builder.Int.Digits
1186− Data.Text.Internal.Builder.RealFloat.Functions
1187− Data.Text.Internal.ByteStringCompat
1188− Data.Text.Internal.Encoding.Fusion
1189− Data.Text.Internal.Encoding.Fusion.Common
1190− Data.Text.Internal.Encoding.Utf16 Data.Text.Internal.Encoding.Utf32
1191− Data.Text.Internal.Encoding.Utf8 Data.Text.Internal.Functions
1192− Data.Text.Internal.Fusion Data.Text.Internal.Fusion.CaseMapping
1193− Data.Text.Internal.Fusion.Common Data.Text.Internal.Fusion.Size
1194− Data.Text.Internal.Fusion.Types Data.Text.Internal.IO
1195− Data.Text.Internal.Lazy Data.Text.Internal.Lazy.Encoding.Fusion
1196− Data.Text.Internal.Lazy.Fusion Data.Text.Internal.Lazy.Search
1197− Data.Text.Internal.Private Data.Text.Internal.Read
1198− Data.Text.Internal.Search Data.Text.Internal.Unsafe
1199− Data.Text.Internal.Unsafe.Char Data.Text.Internal.Unsafe.Shift
1200− Data.Text.Lazy Data.Text.Lazy.Builder Data.Text.Lazy.Builder.Int
1201− Data.Text.Lazy.Builder.RealFloat Data.Text.Lazy.Encoding
1202− Data.Text.Lazy.IO Data.Text.Lazy.Internal Data.Text.Lazy.Read
1203− Data.Text.Read Data.Text.Unsafe
1204−hidden-modules: Data.Text.Show
1205−import-dirs:
1206−library-dirs:
1207−dynamic-library-dirs:
1208−data-dir:
1209−hs-libraries: HStext-1.2.4.1
1210−depends:
1211− array-0.5.4.0 base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
1212− deepseq-1.4.4.0 ghc-prim-0.6.1 integer-gmp-1.0.3.0
1213− template-haskell-2.16.0.0
1214−haddock-interfaces:
1215−haddock-html:
1216−---
1217−name: time
1218−version: 1.9.3
1219−visibility: public
1220−id: time-1.9.3
1221−key: time-1.9.3
1222−license: BSD-3-Clause
1223−maintainer: <ashley@semantic.org>
1224−author: Ashley Yakeley
1225−stability: stable
1226−homepage: https://github.com/haskell/time
1227−synopsis: A time library
1228−description: Time, clocks and calendars
1229−category: Time
1230−exposed: True
1231−exposed-modules:
1232− Data.Time Data.Time.Calendar Data.Time.Calendar.Easter
1233− Data.Time.Calendar.Julian Data.Time.Calendar.MonthDay
1234− Data.Time.Calendar.OrdinalDate Data.Time.Calendar.WeekDate
1235− Data.Time.Clock Data.Time.Clock.POSIX Data.Time.Clock.System
1236− Data.Time.Clock.TAI Data.Time.Format Data.Time.Format.ISO8601
1237− Data.Time.Format.Internal Data.Time.LocalTime
1238−hidden-modules:
1239− Data.Format Data.Time.Calendar.Private Data.Time.Calendar.Days
1240− Data.Time.Calendar.Gregorian Data.Time.Calendar.CalendarDiffDays
1241− Data.Time.Calendar.Week Data.Time.Calendar.JulianYearDay
1242− Data.Time.Clock.Internal.DiffTime
1243− Data.Time.Clock.Internal.AbsoluteTime
1244− Data.Time.Clock.Internal.NominalDiffTime
1245− Data.Time.Clock.Internal.POSIXTime
1246− Data.Time.Clock.Internal.UniversalTime
1247− Data.Time.Clock.Internal.SystemTime
1248− Data.Time.Clock.Internal.UTCTime Data.Time.Clock.Internal.CTimeval
1249− Data.Time.Clock.Internal.CTimespec Data.Time.Clock.Internal.UTCDiff
1250− Data.Time.LocalTime.Internal.TimeZone
1251− Data.Time.LocalTime.Internal.TimeOfDay
1252− Data.Time.LocalTime.Internal.CalendarDiffTime
1253− Data.Time.LocalTime.Internal.LocalTime
1254− Data.Time.LocalTime.Internal.ZonedTime Data.Time.Format.Parse
1255− Data.Time.Format.Locale Data.Time.Format.Format.Class
1256− Data.Time.Format.Format.Instances Data.Time.Format.Parse.Class
1257− Data.Time.Format.Parse.Instances
1258−import-dirs:
1259−library-dirs:
1260−dynamic-library-dirs:
1261−data-dir:
1262−hs-libraries: HStime-1.9.3
1263−include-dirs:
1264−depends: base-4.14.1.0 deepseq-1.4.4.0
1265−haddock-interfaces:
1266−haddock-html:
1267−---
1268−name: transformers
1269−version: 0.5.6.2
1270−visibility: public
1271−id: transformers-0.5.6.2
1272−key: transformers-0.5.6.2
1273−license: BSD-3-Clause
1274−maintainer: Ross Paterson <R.Paterson@city.ac.uk>
1275−author: Andy Gill, Ross Paterson
1276−synopsis: Concrete functor and monad transformers
1277−description:
1278− A portable library of functor and monad transformers, inspired by
1279− the paper
1280− * \"Functional Programming with Overloading and Higher-Order
1281− Polymorphism\", by Mark P Jones,
1282− in /Advanced School of Functional Programming/, 1995
1283− (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
1284− This package contains:
1285− * the monad transformer class (in "Control.Monad.Trans.Class")
1286− * concrete functor and monad transformers, each with associated
1287− operations and functions to lift operations associated with other
1288− transformers.
1289− The package can be used on its own in portable Haskell code, in
1290− which case operations need to be manually lifted through transformer
1291− stacks (see "Control.Monad.Trans.Class" for some examples).
1292− Alternatively, it can be used with the non-portable monad classes in
1293− the @mtl@ or @monads-tf@ packages, which automatically lift operations
1294− introduced by monad transformers through other transformers.
1295−category: Control
1296−exposed: True
1297−exposed-modules:
1298− Control.Applicative.Backwards Control.Applicative.Lift
1299− Control.Monad.Signatures Control.Monad.Trans.Accum
1300− Control.Monad.Trans.Class Control.Monad.Trans.Cont
1301− Control.Monad.Trans.Error Control.Monad.Trans.Except
1302− Control.Monad.Trans.Identity Control.Monad.Trans.List
1303− Control.Monad.Trans.Maybe Control.Monad.Trans.RWS
1304− Control.Monad.Trans.RWS.CPS Control.Monad.Trans.RWS.Lazy
1305− Control.Monad.Trans.RWS.Strict Control.Monad.Trans.Reader
1306− Control.Monad.Trans.Select Control.Monad.Trans.State
1307− Control.Monad.Trans.State.Lazy Control.Monad.Trans.State.Strict
1308− Control.Monad.Trans.Writer Control.Monad.Trans.Writer.CPS
1309− Control.Monad.Trans.Writer.Lazy Control.Monad.Trans.Writer.Strict
1310− Data.Functor.Constant Data.Functor.Reverse
1311−import-dirs:
1312−library-dirs:
1313−dynamic-library-dirs:
1314−data-dir:
1315−hs-libraries: HStransformers-0.5.6.2
1316−depends: base-4.14.1.0
1317−haddock-interfaces:
1318−haddock-html:
1319−---
1320−name: unix
1321−version: 2.7.2.2
1322−visibility: public
1323−id: unix-2.7.2.2
1324−key: unix-2.7.2.2
1325−license: BSD-3-Clause
1326−maintainer: libraries@haskell.org
1327−homepage: https://github.com/haskell/unix
1328−synopsis: POSIX functionality
1329−description:
1330− This package gives you access to the set of operating system
1331− services standardised by
1332− <http://pubs.opengroup.org/onlinepubs/9699919799/ POSIX.1-2008>
1333− (or the IEEE Portable Operating System Interface for Computing
1334− Environments - IEEE Std. 1003.1).
1335− The package is not supported under Windows.
1336−category: System
1337−exposed: True
1338−exposed-modules:
1339− System.Posix System.Posix.ByteString
1340− System.Posix.ByteString.FilePath System.Posix.Directory
1341− System.Posix.Directory.ByteString System.Posix.DynamicLinker
1342− System.Posix.DynamicLinker.ByteString
1343− System.Posix.DynamicLinker.Module
1344− System.Posix.DynamicLinker.Module.ByteString
1345− System.Posix.DynamicLinker.Prim System.Posix.Env
1346− System.Posix.Env.ByteString System.Posix.Error System.Posix.Fcntl
1347− System.Posix.Files System.Posix.Files.ByteString System.Posix.IO
1348− System.Posix.IO.ByteString System.Posix.Process
1349− System.Posix.Process.ByteString System.Posix.Process.Internals
1350− System.Posix.Resource System.Posix.Semaphore System.Posix.SharedMem
1351− System.Posix.Signals System.Posix.Signals.Exts System.Posix.Temp
1352− System.Posix.Temp.ByteString System.Posix.Terminal
1353− System.Posix.Terminal.ByteString System.Posix.Time
1354− System.Posix.Unistd System.Posix.User
1355−hidden-modules:
1356− System.Posix.Directory.Common System.Posix.DynamicLinker.Common
1357− System.Posix.Files.Common System.Posix.IO.Common
1358− System.Posix.Process.Common System.Posix.Terminal.Common
1359−import-dirs:
1360−library-dirs:
1361−dynamic-library-dirs:
1362−data-dir:
1363−hs-libraries: HSunix-2.7.2.2
1364−extra-libraries: rt util dl pthread
1365−include-dirs:
1366−includes: HsUnix.h execvpe.h
1367−depends: base-4.14.1.0 bytestring-0.10.12.0 time-1.9.3
1368−haddock-interfaces:
1369−haddock-html:
1370−---
1371−name: rts
1372−version: 1.0
1373−visibility: public
1374−id: rts
1375−key: rts
1376−license: BSD-3-Clause
1377−maintainer: glasgow-haskell-users@haskell.org
1378−exposed: True
1379−library-dirs:
1380−hs-libraries: HSrts
1381−extra-libraries: m rt dl ffi numa pthread
1382−include-dirs:
1383−includes: Stg.h
1384−ld-options:
1385− "-Wl,-u,base_GHCziTopHandler_runIO_closure"
1386− "-Wl,-u,base_GHCziTopHandler_runNonIO_closure"
1387− "-Wl,-u,ghczmprim_GHCziTuple_Z0T_closure"
1388− "-Wl,-u,ghczmprim_GHCziTypes_True_closure"
1389− "-Wl,-u,ghczmprim_GHCziTypes_False_closure"
1390− "-Wl,-u,base_GHCziPack_unpackCString_closure"
1391− "-Wl,-u,base_GHCziWeak_runFinalizzerBatch_closure"
1392− "-Wl,-u,base_GHCziIOziException_stackOverflow_closure"
1393− "-Wl,-u,base_GHCziIOziException_heapOverflow_closure"
1394− "-Wl,-u,base_GHCziIOziException_allocationLimitExceeded_closure"
1395− "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnMVar_closure"
1396− "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnSTM_closure"
1397− "-Wl,-u,base_GHCziIOziException_cannotCompactFunction_closure"
1398− "-Wl,-u,base_GHCziIOziException_cannotCompactPinned_closure"
1399− "-Wl,-u,base_GHCziIOziException_cannotCompactMutable_closure"
1400− "-Wl,-u,base_ControlziExceptionziBase_absentSumFieldError_closure"
1401− "-Wl,-u,base_ControlziExceptionziBase_nonTermination_closure"
1402− "-Wl,-u,base_ControlziExceptionziBase_nestedAtomically_closure"
1403− "-Wl,-u,base_GHCziEventziThread_blockedOnBadFD_closure"
1404− "-Wl,-u,base_GHCziConcziSync_runSparks_closure"
1405− "-Wl,-u,base_GHCziConcziIO_ensureIOManagerIsRunning_closure"
1406− "-Wl,-u,base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure"
1407− "-Wl,-u,base_GHCziConcziSignal_runHandlersPtr_closure"
1408− "-Wl,-u,base_GHCziTopHandler_flushStdHandles_closure"
1409− "-Wl,-u,base_GHCziTopHandler_runMainIO_closure"
1410− "-Wl,-u,ghczmprim_GHCziTypes_Czh_con_info"
1411− "-Wl,-u,ghczmprim_GHCziTypes_Izh_con_info"
1412− "-Wl,-u,ghczmprim_GHCziTypes_Fzh_con_info"
1413− "-Wl,-u,ghczmprim_GHCziTypes_Dzh_con_info"
1414− "-Wl,-u,ghczmprim_GHCziTypes_Wzh_con_info"
1415− "-Wl,-u,base_GHCziPtr_Ptr_con_info"
1416− "-Wl,-u,base_GHCziPtr_FunPtr_con_info"
1417− "-Wl,-u,base_GHCziInt_I8zh_con_info"
1418− "-Wl,-u,base_GHCziInt_I16zh_con_info"
1419− "-Wl,-u,base_GHCziInt_I32zh_con_info"
1420− "-Wl,-u,base_GHCziInt_I64zh_con_info"
1421− "-Wl,-u,base_GHCziWord_W8zh_con_info"
1422− "-Wl,-u,base_GHCziWord_W16zh_con_info"
1423− "-Wl,-u,base_GHCziWord_W32zh_con_info"
1424− "-Wl,-u,base_GHCziWord_W64zh_con_info"
1425− "-Wl,-u,base_GHCziStable_StablePtr_con_info"
1426− "-Wl,-u,hs_atomic_add8" "-Wl,-u,hs_atomic_add16"
1427− "-Wl,-u,hs_atomic_add32" "-Wl,-u,hs_atomic_add64"
1428− "-Wl,-u,hs_atomic_sub8" "-Wl,-u,hs_atomic_sub16"
1429− "-Wl,-u,hs_atomic_sub32" "-Wl,-u,hs_atomic_sub64"
1430− "-Wl,-u,hs_atomic_and8" "-Wl,-u,hs_atomic_and16"
1431− "-Wl,-u,hs_atomic_and32" "-Wl,-u,hs_atomic_and64"
1432− "-Wl,-u,hs_atomic_nand8" "-Wl,-u,hs_atomic_nand16"
1433− "-Wl,-u,hs_atomic_nand32" "-Wl,-u,hs_atomic_nand64"
1434− "-Wl,-u,hs_atomic_or8" "-Wl,-u,hs_atomic_or16"
1435− "-Wl,-u,hs_atomic_or32" "-Wl,-u,hs_atomic_or64"
1436− "-Wl,-u,hs_atomic_xor8" "-Wl,-u,hs_atomic_xor16"
1437− "-Wl,-u,hs_atomic_xor32" "-Wl,-u,hs_atomic_xor64"
1438− "-Wl,-u,hs_cmpxchg8" "-Wl,-u,hs_cmpxchg16" "-Wl,-u,hs_cmpxchg32"
1439− "-Wl,-u,hs_cmpxchg64" "-Wl,-u,hs_atomicread8"
1440− "-Wl,-u,hs_atomicread16" "-Wl,-u,hs_atomicread32"
1441− "-Wl,-u,hs_atomicread64" "-Wl,-u,hs_atomicwrite8"
1442− "-Wl,-u,hs_atomicwrite16" "-Wl,-u,hs_atomicwrite32"
1443− "-Wl,-u,hs_atomicwrite64"
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc-pkg/versiondeleted−1
@@ -1 +0,0 @@
1−GHC package manager version 8.10.4
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc/infodeleted−69
@@ -1,69 +0,0 @@
1− [("Project name","The Glorious Glasgow Haskell Compilation System")
2− ,("GCC extra via C opts","")
3− ,("C compiler flags","")
4− ,("C++ compiler flags","")
5− ,("C compiler link flags","-Wl,-z,noexecstack")
6− ,("C compiler supports -no-pie","YES")
7− ,("Haskell CPP flags","-E -undef -traditional")
8− ,("ld flags","-z noexecstack")
9− ,("ld supports compact unwind","YES")
10− ,("ld supports build-id","YES")
11− ,("ld supports filelist","NO")
12− ,("ld is GNU ld","YES")
13− ,("Merge objects flags","-r")
14− ,("ar flags","q")
15− ,("ar supports at file","YES")
16− ,("otool command","otool")
17− ,("install_name_tool command","install_name_tool")
18− ,("touch command","touch")
19− ,("dllwrap command","/bin/false")
20− ,("windres command","/bin/false")
21− ,("libtool command","libtool")
22− ,("cross compiling","YES")
23− ,("target platform string","aarch64-unknown-linux")
24− ,("target os","OSLinux")
25− ,("target arch","ArchARM64")
26− ,("target word size","8")
27− ,("target has GNU nonexec stack","YES")
28− ,("target has .ident directive","YES")
29− ,("target has subsections via symbols","NO")
30− ,("target has RTS linker","YES")
31− ,("Unregisterised","NO")
32− ,("LLVM target","aarch64-unknown-linux")
33− ,("LLVM llc command","llc")
34− ,("LLVM opt command","opt")
35− ,("LLVM clang command","clang")
36− ,("integer library","integer-gmp")
37− ,("Use interpreter","YES")
38− ,("Use native code generator","NO")
39− ,("Support SMP","YES")
40− ,("RTS ways","l debug thr thr_debug thr_l thr_p thr_debug_p debug_p")
41− ,("Tables next to code","YES")
42− ,("Leading underscore","NO")
43− ,("Use LibFFI","YES")
44− ,("Use Threads","YES")
45− ,("Use Debugging","NO")
46− ,("RTS expects libdw","NO")
47− ,("Project version","8.10.4")
48− ,("Project Git commit id","6a01e28f4204ec17c587931311711fa76e0ea08d")
49− ,("Booter version","8.6.5")
50− ,("Stage","1")
51− ,("Build platform","x86_64-unknown-linux")
52− ,("Host platform","x86_64-unknown-linux")
53− ,("Target platform","aarch64-unknown-linux")
54− ,("Have interpreter","YES")
55− ,("Object splitting supported","NO")
56− ,("Have native code generator","NO")
57− ,("Support dynamic-too","YES")
58− ,("Support parallel --make","YES")
59− ,("Support reexported-modules","YES")
60− ,("Support thinning and renaming package flags","YES")
61− ,("Support Backpack","YES")
62− ,("Requires unified installed package IDs","YES")
63− ,("Uses package keys","YES")
64− ,("Uses unit IDs","YES")
65− ,("Dynamic by default","NO")
66− ,("GHC Dynamic","NO")
67− ,("GHC Profiled","NO")
68− ,("Debug on","NO")
69− ]
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc/numeric-versiondeleted−1
@@ -1 +0,0 @@
1−8.10.4
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc/supported-languagesdeleted−255
@@ -1,255 +0,0 @@
1−Haskell98
2−Haskell2010
3−Unsafe
4−Trustworthy
5−Safe
6−AllowAmbiguousTypes
7−NoAllowAmbiguousTypes
8−AlternativeLayoutRule
9−NoAlternativeLayoutRule
10−AlternativeLayoutRuleTransitional
11−NoAlternativeLayoutRuleTransitional
12−Arrows
13−NoArrows
14−AutoDeriveTypeable
15−NoAutoDeriveTypeable
16−BangPatterns
17−NoBangPatterns
18−BinaryLiterals
19−NoBinaryLiterals
20−CApiFFI
21−NoCApiFFI
22−CPP
23−NoCPP
24−CUSKs
25−NoCUSKs
26−ConstrainedClassMethods
27−NoConstrainedClassMethods
28−ConstraintKinds
29−NoConstraintKinds
30−DataKinds
31−NoDataKinds
32−DatatypeContexts
33−NoDatatypeContexts
34−DefaultSignatures
35−NoDefaultSignatures
36−DeriveAnyClass
37−NoDeriveAnyClass
38−DeriveDataTypeable
39−NoDeriveDataTypeable
40−DeriveFoldable
41−NoDeriveFoldable
42−DeriveFunctor
43−NoDeriveFunctor
44−DeriveGeneric
45−NoDeriveGeneric
46−DeriveLift
47−NoDeriveLift
48−DeriveTraversable
49−NoDeriveTraversable
50−DerivingStrategies
51−NoDerivingStrategies
52−DerivingVia
53−NoDerivingVia
54−DisambiguateRecordFields
55−NoDisambiguateRecordFields
56−DoAndIfThenElse
57−NoDoAndIfThenElse
58−BlockArguments
59−NoBlockArguments
60−DoRec
61−NoDoRec
62−DuplicateRecordFields
63−NoDuplicateRecordFields
64−EmptyCase
65−NoEmptyCase
66−EmptyDataDecls
67−NoEmptyDataDecls
68−EmptyDataDeriving
69−NoEmptyDataDeriving
70−ExistentialQuantification
71−NoExistentialQuantification
72−ExplicitForAll
73−NoExplicitForAll
74−ExplicitNamespaces
75−NoExplicitNamespaces
76−ExtendedDefaultRules
77−NoExtendedDefaultRules
78−FlexibleContexts
79−NoFlexibleContexts
80−FlexibleInstances
81−NoFlexibleInstances
82−ForeignFunctionInterface
83−NoForeignFunctionInterface
84−FunctionalDependencies
85−NoFunctionalDependencies
86−GADTSyntax
87−NoGADTSyntax
88−GADTs
89−NoGADTs
90−GHCForeignImportPrim
91−NoGHCForeignImportPrim
92−GeneralizedNewtypeDeriving
93−NoGeneralizedNewtypeDeriving
94−GeneralisedNewtypeDeriving
95−NoGeneralisedNewtypeDeriving
96−ImplicitParams
97−NoImplicitParams
98−ImplicitPrelude
99−NoImplicitPrelude
100−ImportQualifiedPost
101−NoImportQualifiedPost
102−ImpredicativeTypes
103−NoImpredicativeTypes
104−IncoherentInstances
105−NoIncoherentInstances
106−TypeFamilyDependencies
107−NoTypeFamilyDependencies
108−InstanceSigs
109−NoInstanceSigs
110−ApplicativeDo
111−NoApplicativeDo
112−InterruptibleFFI
113−NoInterruptibleFFI
114−JavaScriptFFI
115−NoJavaScriptFFI
116−KindSignatures
117−NoKindSignatures
118−LambdaCase
119−NoLambdaCase
120−LiberalTypeSynonyms
121−NoLiberalTypeSynonyms
122−MagicHash
123−NoMagicHash
124−MonadComprehensions
125−NoMonadComprehensions
126−MonadFailDesugaring
127−NoMonadFailDesugaring
128−MonoLocalBinds
129−NoMonoLocalBinds
130−MonoPatBinds
131−NoMonoPatBinds
132−MonomorphismRestriction
133−NoMonomorphismRestriction
134−MultiParamTypeClasses
135−NoMultiParamTypeClasses
136−MultiWayIf
137−NoMultiWayIf
138−NumericUnderscores
139−NoNumericUnderscores
140−NPlusKPatterns
141−NoNPlusKPatterns
142−NamedFieldPuns
143−NoNamedFieldPuns
144−NamedWildCards
145−NoNamedWildCards
146−NegativeLiterals
147−NoNegativeLiterals
148−HexFloatLiterals
149−NoHexFloatLiterals
150−NondecreasingIndentation
151−NoNondecreasingIndentation
152−NullaryTypeClasses
153−NoNullaryTypeClasses
154−NumDecimals
155−NoNumDecimals
156−OverlappingInstances
157−NoOverlappingInstances
158−OverloadedLabels
159−NoOverloadedLabels
160−OverloadedLists
161−NoOverloadedLists
162−OverloadedStrings
163−NoOverloadedStrings
164−PackageImports
165−NoPackageImports
166−ParallelArrays
167−NoParallelArrays
168−ParallelListComp
169−NoParallelListComp
170−PartialTypeSignatures
171−NoPartialTypeSignatures
172−PatternGuards
173−NoPatternGuards
174−PatternSignatures
175−NoPatternSignatures
176−PatternSynonyms
177−NoPatternSynonyms
178−PolyKinds
179−NoPolyKinds
180−PolymorphicComponents
181−NoPolymorphicComponents
182−QuantifiedConstraints
183−NoQuantifiedConstraints
184−PostfixOperators
185−NoPostfixOperators
186−QuasiQuotes
187−NoQuasiQuotes
188−Rank2Types
189−NoRank2Types
190−RankNTypes
191−NoRankNTypes
192−RebindableSyntax
193−NoRebindableSyntax
194−RecordPuns
195−NoRecordPuns
196−RecordWildCards
197−NoRecordWildCards
198−RecursiveDo
199−NoRecursiveDo
200−RelaxedLayout
201−NoRelaxedLayout
202−RelaxedPolyRec
203−NoRelaxedPolyRec
204−RoleAnnotations
205−NoRoleAnnotations
206−ScopedTypeVariables
207−NoScopedTypeVariables
208−StandaloneDeriving
209−NoStandaloneDeriving
210−StarIsType
211−NoStarIsType
212−StaticPointers
213−NoStaticPointers
214−Strict
215−NoStrict
216−StrictData
217−NoStrictData
218−TemplateHaskell
219−NoTemplateHaskell
220−TemplateHaskellQuotes
221−NoTemplateHaskellQuotes
222−StandaloneKindSignatures
223−NoStandaloneKindSignatures
224−TraditionalRecordSyntax
225−NoTraditionalRecordSyntax
226−TransformListComp
227−NoTransformListComp
228−TupleSections
229−NoTupleSections
230−TypeApplications
231−NoTypeApplications
232−TypeInType
233−NoTypeInType
234−TypeFamilies
235−NoTypeFamilies
236−TypeOperators
237−NoTypeOperators
238−TypeSynonymInstances
239−NoTypeSynonymInstances
240−UnboxedTuples
241−NoUnboxedTuples
242−UnboxedSums
243−NoUnboxedSums
244−UndecidableInstances
245−NoUndecidableInstances
246−UndecidableSuperClasses
247−NoUndecidableSuperClasses
248−UnicodeSyntax
249−NoUnicodeSyntax
250−UnliftedFFITypes
251−NoUnliftedFFITypes
252−UnliftedNewtypes
253−NoUnliftedNewtypes
254−ViewPatterns
255−NoViewPatterns
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4-x86_64-linux/ghc/versiondeleted−1
@@ -1 +0,0 @@
1−The Glorious Glasgow Haskell Compilation System, version 8.10.4
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/dump-globaldeleted−1446
@@ -1,1446 +0,0 @@
1−name: Cabal
2−version: 3.2.1.0
3−visibility: public
4−id: Cabal-3.2.1.0
5−key: Cabal-3.2.1.0
6−license: BSD-3-Clause
7−copyright: 2003-2020, Cabal Development Team (see AUTHORS file)
8−maintainer: cabal-devel@haskell.org
9−author: Cabal Development Team <cabal-devel@haskell.org>
10−homepage: http://www.haskell.org/cabal/
11−synopsis: A framework for packaging Haskell software
12−description:
13− The Haskell Common Architecture for Building Applications and
14− Libraries: a framework defining a common interface for authors to more
15− easily build their Haskell applications in a portable way.
16− The Haskell Cabal is part of a larger infrastructure for distributing,
17− organizing, and cataloging Haskell libraries and tools.
18−category: Distribution
19−exposed: True
20−exposed-modules:
21− Distribution.Backpack Distribution.Backpack.ComponentsGraph
22− Distribution.Backpack.Configure
23− Distribution.Backpack.ConfiguredComponent
24− Distribution.Backpack.DescribeUnitId
25− Distribution.Backpack.FullUnitId
26− Distribution.Backpack.LinkedComponent
27− Distribution.Backpack.ModSubst Distribution.Backpack.ModuleShape
28− Distribution.Backpack.PreModuleShape Distribution.CabalSpecVersion
29− Distribution.Compat.Binary Distribution.Compat.CharParsing
30− Distribution.Compat.CreatePipe Distribution.Compat.DList
31− Distribution.Compat.Directory Distribution.Compat.Environment
32− Distribution.Compat.Exception Distribution.Compat.FilePath
33− Distribution.Compat.Graph Distribution.Compat.Internal.TempFile
34− Distribution.Compat.Lens Distribution.Compat.Newtype
35− Distribution.Compat.Parsing Distribution.Compat.Prelude.Internal
36− Distribution.Compat.Process Distribution.Compat.ResponseFile
37− Distribution.Compat.Semigroup Distribution.Compat.Stack
38− Distribution.Compat.Time Distribution.Compat.Typeable
39− Distribution.Compiler Distribution.FieldGrammar
40− Distribution.FieldGrammar.Class
41− Distribution.FieldGrammar.FieldDescrs
42− Distribution.FieldGrammar.Parsec Distribution.FieldGrammar.Pretty
43− Distribution.Fields Distribution.Fields.ConfVar
44− Distribution.Fields.Field Distribution.Fields.Lexer
45− Distribution.Fields.LexerMonad Distribution.Fields.ParseResult
46− Distribution.Fields.Parser Distribution.Fields.Pretty
47− Distribution.InstalledPackageInfo Distribution.License
48− Distribution.Make Distribution.ModuleName Distribution.Package
49− Distribution.PackageDescription
50− Distribution.PackageDescription.Check
51− Distribution.PackageDescription.Configuration
52− Distribution.PackageDescription.FieldGrammar
53− Distribution.PackageDescription.Parsec
54− Distribution.PackageDescription.PrettyPrint
55− Distribution.PackageDescription.Quirks
56− Distribution.PackageDescription.Utils Distribution.Parsec
57− Distribution.Parsec.Error Distribution.Parsec.FieldLineStream
58− Distribution.Parsec.Newtypes Distribution.Parsec.Position
59− Distribution.Parsec.Warning Distribution.Pretty Distribution.ReadE
60− Distribution.SPDX Distribution.SPDX.License
61− Distribution.SPDX.LicenseExceptionId
62− Distribution.SPDX.LicenseExpression Distribution.SPDX.LicenseId
63− Distribution.SPDX.LicenseListVersion
64− Distribution.SPDX.LicenseReference Distribution.Simple
65− Distribution.Simple.Bench Distribution.Simple.Build
66− Distribution.Simple.Build.Macros
67− Distribution.Simple.Build.PathsModule
68− Distribution.Simple.BuildPaths Distribution.Simple.BuildTarget
69− Distribution.Simple.BuildToolDepends Distribution.Simple.CCompiler
70− Distribution.Simple.Command Distribution.Simple.Compiler
71− Distribution.Simple.Configure Distribution.Simple.Doctest
72− Distribution.Simple.Flag Distribution.Simple.GHC
73− Distribution.Simple.GHCJS Distribution.Simple.Glob
74− Distribution.Simple.Haddock Distribution.Simple.HaskellSuite
75− Distribution.Simple.Hpc Distribution.Simple.Install
76− Distribution.Simple.InstallDirs
77− Distribution.Simple.InstallDirs.Internal
78− Distribution.Simple.LocalBuildInfo Distribution.Simple.PackageIndex
79− Distribution.Simple.PreProcess Distribution.Simple.PreProcess.Unlit
80− Distribution.Simple.Program Distribution.Simple.Program.Ar
81− Distribution.Simple.Program.Builtin Distribution.Simple.Program.Db
82− Distribution.Simple.Program.Find Distribution.Simple.Program.GHC
83− Distribution.Simple.Program.HcPkg Distribution.Simple.Program.Hpc
84− Distribution.Simple.Program.Internal Distribution.Simple.Program.Ld
85− Distribution.Simple.Program.ResponseFile
86− Distribution.Simple.Program.Run Distribution.Simple.Program.Script
87− Distribution.Simple.Program.Strip Distribution.Simple.Program.Types
88− Distribution.Simple.Register Distribution.Simple.Setup
89− Distribution.Simple.ShowBuildInfo Distribution.Simple.SrcDist
90− Distribution.Simple.Test Distribution.Simple.Test.ExeV10
91− Distribution.Simple.Test.LibV09 Distribution.Simple.Test.Log
92− Distribution.Simple.UHC Distribution.Simple.UserHooks
93− Distribution.Simple.Utils Distribution.System
94− Distribution.TestSuite Distribution.Text
95− Distribution.Types.AbiDependency Distribution.Types.AbiHash
96− Distribution.Types.AnnotatedId Distribution.Types.Benchmark
97− Distribution.Types.Benchmark.Lens
98− Distribution.Types.BenchmarkInterface
99− Distribution.Types.BenchmarkType Distribution.Types.BuildInfo
100− Distribution.Types.BuildInfo.Lens Distribution.Types.BuildType
101− Distribution.Types.Component Distribution.Types.ComponentId
102− Distribution.Types.ComponentInclude
103− Distribution.Types.ComponentLocalBuildInfo
104− Distribution.Types.ComponentName
105− Distribution.Types.ComponentRequestedSpec
106− Distribution.Types.CondTree Distribution.Types.Condition
107− Distribution.Types.ConfVar Distribution.Types.Dependency
108− Distribution.Types.DependencyMap Distribution.Types.ExeDependency
109− Distribution.Types.Executable Distribution.Types.Executable.Lens
110− Distribution.Types.ExecutableScope Distribution.Types.ExposedModule
111− Distribution.Types.Flag Distribution.Types.ForeignLib
112− Distribution.Types.ForeignLib.Lens
113− Distribution.Types.ForeignLibOption
114− Distribution.Types.ForeignLibType
115− Distribution.Types.GenericPackageDescription
116− Distribution.Types.GenericPackageDescription.Lens
117− Distribution.Types.GivenComponent
118− Distribution.Types.HookedBuildInfo
119− Distribution.Types.IncludeRenaming
120− Distribution.Types.InstalledPackageInfo
121− Distribution.Types.InstalledPackageInfo.FieldGrammar
122− Distribution.Types.InstalledPackageInfo.Lens
123− Distribution.Types.LegacyExeDependency Distribution.Types.Lens
124− Distribution.Types.Library Distribution.Types.Library.Lens
125− Distribution.Types.LibraryName Distribution.Types.LibraryVisibility
126− Distribution.Types.LocalBuildInfo Distribution.Types.Mixin
127− Distribution.Types.Module Distribution.Types.ModuleReexport
128− Distribution.Types.ModuleRenaming
129− Distribution.Types.MungedPackageId
130− Distribution.Types.MungedPackageName
131− Distribution.Types.PackageDescription
132− Distribution.Types.PackageDescription.Lens
133− Distribution.Types.PackageId Distribution.Types.PackageId.Lens
134− Distribution.Types.PackageName Distribution.Types.PackageName.Magic
135− Distribution.Types.PackageVersionConstraint
136− Distribution.Types.PkgconfigDependency
137− Distribution.Types.PkgconfigName
138− Distribution.Types.PkgconfigVersion
139− Distribution.Types.PkgconfigVersionRange
140− Distribution.Types.SetupBuildInfo
141− Distribution.Types.SetupBuildInfo.Lens
142− Distribution.Types.SourceRepo Distribution.Types.SourceRepo.Lens
143− Distribution.Types.TargetInfo Distribution.Types.TestSuite
144− Distribution.Types.TestSuite.Lens
145− Distribution.Types.TestSuiteInterface Distribution.Types.TestType
146− Distribution.Types.UnitId Distribution.Types.UnqualComponentName
147− Distribution.Types.Version Distribution.Types.VersionInterval
148− Distribution.Types.VersionRange
149− Distribution.Types.VersionRange.Internal Distribution.Utils.Generic
150− Distribution.Utils.IOData Distribution.Utils.LogProgress
151− Distribution.Utils.MD5 Distribution.Utils.MapAccum
152− Distribution.Utils.NubList Distribution.Utils.Progress
153− Distribution.Utils.ShortText Distribution.Utils.Structured
154− Distribution.Verbosity Distribution.Verbosity.Internal
155− Distribution.Version Language.Haskell.Extension
156−hidden-modules:
157− Distribution.Backpack.PreExistingComponent
158− Distribution.Backpack.ReadyComponent Distribution.Backpack.MixLink
159− Distribution.Backpack.ModuleScope Distribution.Backpack.UnifyM
160− Distribution.Backpack.Id Distribution.Utils.UnionFind
161− Distribution.Utils.Base62 Distribution.Compat.Async
162− Distribution.Compat.CopyFile Distribution.Compat.GetShortPathName
163− Distribution.Compat.MonadFail Distribution.Compat.Prelude
164− Distribution.Compat.SnocList Distribution.GetOpt Distribution.Lex
165− Distribution.Utils.String Distribution.Simple.GHC.EnvironmentParser
166− Distribution.Simple.GHC.Internal Distribution.Simple.GHC.ImplInfo
167− Distribution.Simple.Utils.Json Paths_Cabal
168−import-dirs:
169−library-dirs:
170−dynamic-library-dirs:
171−data-dir:
172−hs-libraries: HSCabal-3.2.1.0
173−depends:
174− array-0.5.4.0 base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
175− containers-0.6.2.1 deepseq-1.4.4.0 directory-1.3.6.0
176− filepath-1.4.2.1 mtl-2.2.2 parsec-3.1.14.0 pretty-1.1.3.6
177− process-1.6.9.0 text-1.2.4.1 time-1.9.3 transformers-0.5.6.2
178− unix-2.7.2.2
179−haddock-interfaces:
180−haddock-html:
181−---
182−name: array
183−version: 0.5.4.0
184−visibility: public
185−id: array-0.5.4.0
186−key: array-0.5.4.0
187−license: BSD-3-Clause
188−maintainer: libraries@haskell.org
189−synopsis: Mutable and immutable arrays
190−description:
191− In addition to providing the "Data.Array" module
192− <http://www.haskell.org/onlinereport/haskell2010/haskellch14.html as specified in the Haskell 2010 Language Report>,
193− this package also defines the classes 'IArray' of
194− immutable arrays and 'MArray' of arrays mutable within appropriate
195− monads, as well as some instances of these classes.
196−category: Data Structures
197−exposed: True
198−exposed-modules:
199− Data.Array Data.Array.Base Data.Array.IArray Data.Array.IO
200− Data.Array.IO.Internals Data.Array.IO.Safe Data.Array.MArray
201− Data.Array.MArray.Safe Data.Array.ST Data.Array.ST.Safe
202− Data.Array.Storable Data.Array.Storable.Internals
203− Data.Array.Storable.Safe Data.Array.Unboxed Data.Array.Unsafe
204−import-dirs:
205−library-dirs:
206−dynamic-library-dirs:
207−data-dir:
208−hs-libraries: HSarray-0.5.4.0
209−depends: base-4.14.1.0
210−haddock-interfaces:
211−haddock-html:
212−---
213−name: base
214−version: 4.14.1.0
215−visibility: public
216−id: base-4.14.1.0
217−key: base-4.14.1.0
218−license: BSD-3-Clause
219−maintainer: libraries@haskell.org
220−synopsis: Basic libraries
221−description:
222− This package contains the Standard Haskell "Prelude" and its support libraries,
223− and a large collection of useful libraries ranging from data
224− structures to parsing combinators and debugging utilities.
225−category: Prelude
226−exposed: True
227−exposed-modules:
228− Control.Applicative Control.Arrow Control.Category
229− Control.Concurrent Control.Concurrent.Chan Control.Concurrent.MVar
230− Control.Concurrent.QSem Control.Concurrent.QSemN Control.Exception
231− Control.Exception.Base Control.Monad Control.Monad.Fail
232− Control.Monad.Fix Control.Monad.IO.Class Control.Monad.Instances
233− Control.Monad.ST Control.Monad.ST.Lazy Control.Monad.ST.Lazy.Safe
234− Control.Monad.ST.Lazy.Unsafe Control.Monad.ST.Safe
235− Control.Monad.ST.Strict Control.Monad.ST.Unsafe Control.Monad.Zip
236− Data.Bifoldable Data.Bifunctor Data.Bitraversable Data.Bits
237− Data.Bool Data.Char Data.Coerce Data.Complex Data.Data Data.Dynamic
238− Data.Either Data.Eq Data.Fixed Data.Foldable Data.Function
239− Data.Functor Data.Functor.Classes Data.Functor.Compose
240− Data.Functor.Const Data.Functor.Contravariant Data.Functor.Identity
241− Data.Functor.Product Data.Functor.Sum Data.IORef Data.Int Data.Ix
242− Data.Kind Data.List Data.List.NonEmpty Data.Maybe Data.Monoid
243− Data.Ord Data.Proxy Data.Ratio Data.STRef Data.STRef.Lazy
244− Data.STRef.Strict Data.Semigroup Data.String Data.Traversable
245− Data.Tuple Data.Type.Bool Data.Type.Coercion Data.Type.Equality
246− Data.Typeable Data.Unique Data.Version Data.Void Data.Word
247− Debug.Trace Foreign Foreign.C Foreign.C.Error Foreign.C.String
248− Foreign.C.Types Foreign.Concurrent Foreign.ForeignPtr
249− Foreign.ForeignPtr.Safe Foreign.ForeignPtr.Unsafe Foreign.Marshal
250− Foreign.Marshal.Alloc Foreign.Marshal.Array Foreign.Marshal.Error
251− Foreign.Marshal.Pool Foreign.Marshal.Safe Foreign.Marshal.Unsafe
252− Foreign.Marshal.Utils Foreign.Ptr Foreign.Safe Foreign.StablePtr
253− Foreign.Storable GHC.Arr GHC.Base GHC.ByteOrder GHC.Char GHC.Clock
254− GHC.Conc GHC.Conc.IO GHC.Conc.Signal GHC.Conc.Sync
255− GHC.ConsoleHandler GHC.Constants GHC.Desugar GHC.Enum
256− GHC.Environment GHC.Err GHC.Event GHC.Exception GHC.Exception.Type
257− GHC.ExecutionStack GHC.ExecutionStack.Internal GHC.Exts
258− GHC.Fingerprint GHC.Fingerprint.Type GHC.Float
259− GHC.Float.ConversionUtils GHC.Float.RealFracMethods GHC.Foreign
260− GHC.ForeignPtr GHC.GHCi GHC.GHCi.Helpers GHC.Generics GHC.IO
261− GHC.IO.Buffer GHC.IO.BufferedIO GHC.IO.Device GHC.IO.Encoding
262− GHC.IO.Encoding.CodePage GHC.IO.Encoding.Failure
263− GHC.IO.Encoding.Iconv GHC.IO.Encoding.Latin1 GHC.IO.Encoding.Types
264− GHC.IO.Encoding.UTF16 GHC.IO.Encoding.UTF32 GHC.IO.Encoding.UTF8
265− GHC.IO.Exception GHC.IO.FD GHC.IO.Handle GHC.IO.Handle.FD
266− GHC.IO.Handle.Internals GHC.IO.Handle.Lock GHC.IO.Handle.Text
267− GHC.IO.Handle.Types GHC.IO.IOMode GHC.IO.Unsafe GHC.IOArray
268− GHC.IORef GHC.Int GHC.Ix GHC.List GHC.MVar GHC.Maybe GHC.Natural
269− GHC.Num GHC.OldList GHC.OverloadedLabels GHC.Pack GHC.Profiling
270− GHC.Ptr GHC.RTS.Flags GHC.Read GHC.Real GHC.Records
271− GHC.ResponseFile GHC.ST GHC.STRef GHC.Show GHC.Stable
272− GHC.StableName GHC.Stack GHC.Stack.CCS GHC.Stack.Types
273− GHC.StaticPtr GHC.Stats GHC.Storable GHC.TopHandler GHC.TypeLits
274− GHC.TypeNats GHC.Unicode GHC.Weak GHC.Word Numeric Numeric.Natural
275− Prelude System.CPUTime System.Console.GetOpt System.Environment
276− System.Environment.Blank System.Exit System.IO System.IO.Error
277− System.IO.Unsafe System.Info System.Mem System.Mem.StableName
278− System.Mem.Weak System.Posix.Internals System.Posix.Types
279− System.Timeout Text.ParserCombinators.ReadP
280− Text.ParserCombinators.ReadPrec Text.Printf Text.Read Text.Read.Lex
281− Text.Show Text.Show.Functions Type.Reflection
282− Type.Reflection.Unsafe Unsafe.Coerce
283−hidden-modules:
284− Control.Monad.ST.Imp Control.Monad.ST.Lazy.Imp Data.Functor.Utils
285− Data.OldList Data.Semigroup.Internal Data.Typeable.Internal
286− Foreign.ForeignPtr.Imp GHC.IO.Handle.Lock.Common
287− GHC.IO.Handle.Lock.Flock GHC.IO.Handle.Lock.LinuxOFD
288− GHC.IO.Handle.Lock.NoOp GHC.IO.Handle.Lock.Windows
289− GHC.StaticPtr.Internal System.Environment.ExecutablePath
290− System.CPUTime.Utils GHC.Event.Arr GHC.Event.Array
291− GHC.Event.Control GHC.Event.EPoll GHC.Event.IntTable
292− GHC.Event.Internal GHC.Event.KQueue GHC.Event.Manager GHC.Event.PSQ
293− GHC.Event.Poll GHC.Event.Thread GHC.Event.TimerManager
294− GHC.Event.Unique System.CPUTime.Posix.ClockGetTime
295− System.CPUTime.Posix.Times System.CPUTime.Posix.RUsage
296− System.CPUTime.Unsupported
297−import-dirs:
298−library-dirs:
299−dynamic-library-dirs:
300−data-dir:
301−hs-libraries: HSbase-4.14.1.0
302−include-dirs:
303−includes: HsBase.h
304−depends: ghc-prim-0.6.1 integer-gmp-1.0.3.0 rts
305−haddock-interfaces:
306−haddock-html:
307−---
308−name: binary
309−version: 0.8.8.0
310−visibility: public
311−id: binary-0.8.8.0
312−key: binary-0.8.8.0
313−license: BSD-3-Clause
314−maintainer: Lennart Kolmodin, Don Stewart <dons00@gmail.com>
315−author: Lennart Kolmodin <kolmodin@gmail.com>
316−stability: provisional
317−homepage: https://github.com/kolmodin/binary
318−synopsis:
319− Binary serialisation for Haskell values using lazy ByteStrings
320−description:
321− Efficient, pure binary serialisation using lazy ByteStrings.
322− Haskell values may be encoded to and from binary formats,
323− written to disk as binary, or sent over the network.
324− The format used can be automatically generated, or
325− you can choose to implement a custom format if needed.
326− Serialisation speeds of over 1 G\/sec have been observed,
327− so this library should be suitable for high performance
328− scenarios.
329−category: Data, Parsing
330−exposed: True
331−exposed-modules:
332− Data.Binary Data.Binary.Builder Data.Binary.Get
333− Data.Binary.Get.Internal Data.Binary.Put
334−hidden-modules:
335− Data.Binary.Class Data.Binary.Internal Data.Binary.Generic
336− Data.Binary.FloatCast
337−import-dirs:
338−library-dirs:
339−dynamic-library-dirs:
340−data-dir:
341−hs-libraries: HSbinary-0.8.8.0
342−depends:
343− array-0.5.4.0 base-4.14.1.0 bytestring-0.10.12.0 containers-0.6.2.1
344−haddock-interfaces:
345−haddock-html:
346−---
347−name: bytestring
348−version: 0.10.12.0
349−visibility: public
350−id: bytestring-0.10.12.0
351−key: bytestring-0.10.12.0
352−license: BSD-3-Clause
353−copyright:
354− Copyright (c) Don Stewart 2005-2009,
355− (c) Duncan Coutts 2006-2015,
356− (c) David Roundy 2003-2005,
357− (c) Jasper Van der Jeugt 2010,
358− (c) Simon Meier 2010-2013.
359−maintainer: Duncan Coutts <duncan@community.haskell.org>
360−author:
361− Don Stewart,
362− Duncan Coutts
363−homepage: https://github.com/haskell/bytestring
364−synopsis:
365− Fast, compact, strict and lazy byte strings with a list interface
366−description:
367− An efficient compact, immutable byte string type (both strict and lazy)
368− suitable for binary or 8-bit character data.
369− The 'ByteString' type represents sequences of bytes or 8-bit characters.
370− It is suitable for high performance use, both in terms of large data
371− quantities, or high speed requirements. The 'ByteString' functions follow
372− the same style as Haskell\'s ordinary lists, so it is easy to convert code
373− from using 'String' to 'ByteString'.
374− Two 'ByteString' variants are provided:
375− * Strict 'ByteString's keep the string as a single large array. This
376− makes them convenient for passing data between C and Haskell.
377− * Lazy 'ByteString's use a lazy list of strict chunks which makes it
378− suitable for I\/O streaming tasks.
379− The @Char8@ modules provide a character-based view of the same
380− underlying 'ByteString' types. This makes it convenient to handle mixed
381− binary and 8-bit character content (which is common in many file formats
382− and network protocols).
383− The 'Builder' module provides an efficient way to build up 'ByteString's
384− in an ad-hoc way by repeated concatenation. This is ideal for fast
385− serialisation or pretty printing.
386− There is also a 'ShortByteString' type which has a lower memory overhead
387− and can can be converted to or from a 'ByteString', but supports very few
388− other operations. It is suitable for keeping many short strings in memory.
389− 'ByteString's are not designed for Unicode. For Unicode strings you should
390− use the 'Text' type from the @text@ package.
391− These modules are intended to be imported qualified, to avoid name clashes
392− with "Prelude" functions, e.g.
393− > import qualified Data.ByteString as BS
394−category: Data
395−exposed: True
396−exposed-modules:
397− Data.ByteString Data.ByteString.Builder
398− Data.ByteString.Builder.Extra Data.ByteString.Builder.Internal
399− Data.ByteString.Builder.Prim Data.ByteString.Builder.Prim.Internal
400− Data.ByteString.Char8 Data.ByteString.Internal Data.ByteString.Lazy
401− Data.ByteString.Lazy.Builder Data.ByteString.Lazy.Builder.ASCII
402− Data.ByteString.Lazy.Builder.Extras Data.ByteString.Lazy.Char8
403− Data.ByteString.Lazy.Internal Data.ByteString.Short
404− Data.ByteString.Short.Internal Data.ByteString.Unsafe
405−hidden-modules:
406− Data.ByteString.Builder.ASCII Data.ByteString.Builder.Prim.Binary
407− Data.ByteString.Builder.Prim.ASCII
408− Data.ByteString.Builder.Prim.Internal.Floating
409− Data.ByteString.Builder.Prim.Internal.UncheckedShifts
410− Data.ByteString.Builder.Prim.Internal.Base16
411−import-dirs:
412−library-dirs:
413−dynamic-library-dirs:
414−data-dir:
415−hs-libraries: HSbytestring-0.10.12.0
416−include-dirs:
417−includes: fpstring.h
418−depends:
419− base-4.14.1.0 deepseq-1.4.4.0 ghc-prim-0.6.1 integer-gmp-1.0.3.0
420−haddock-interfaces:
421−haddock-html:
422−---
423−name: containers
424−version: 0.6.2.1
425−visibility: public
426−id: containers-0.6.2.1
427−key: containers-0.6.2.1
428−license: BSD-3-Clause
429−maintainer: libraries@haskell.org
430−synopsis: Assorted concrete container types
431−description:
432− This package contains efficient general-purpose implementations
433− of various immutable container types including sets, maps, sequences,
434− trees, and graphs.
435− For a walkthrough of what this package provides with examples of common
436− operations see the [containers
437− introduction](https://haskell-containers.readthedocs.io).
438− The declared cost of each operation is either worst-case or amortized, but
439− remains valid even if structures are shared.
440−category: Data Structures
441−exposed: True
442−exposed-modules:
443− Data.Containers.ListUtils Data.Graph Data.IntMap
444− Data.IntMap.Internal Data.IntMap.Internal.Debug Data.IntMap.Lazy
445− Data.IntMap.Merge.Lazy Data.IntMap.Merge.Strict Data.IntMap.Strict
446− Data.IntMap.Strict.Internal Data.IntSet Data.IntSet.Internal
447− Data.Map Data.Map.Internal Data.Map.Internal.Debug Data.Map.Lazy
448− Data.Map.Merge.Lazy Data.Map.Merge.Strict Data.Map.Strict
449− Data.Map.Strict.Internal Data.Sequence Data.Sequence.Internal
450− Data.Sequence.Internal.Sorting Data.Set Data.Set.Internal Data.Tree
451− Utils.Containers.Internal.BitQueue
452− Utils.Containers.Internal.BitUtil
453− Utils.Containers.Internal.StrictPair
454−hidden-modules:
455− Utils.Containers.Internal.State
456− Utils.Containers.Internal.StrictMaybe
457− Utils.Containers.Internal.PtrEquality
458− Utils.Containers.Internal.Coercions
459− Utils.Containers.Internal.TypeError
460− Data.Map.Internal.DeprecatedShowTree
461− Data.IntMap.Internal.DeprecatedDebug
462−import-dirs:
463−library-dirs:
464−dynamic-library-dirs:
465−data-dir:
466−hs-libraries: HScontainers-0.6.2.1
467−depends: array-0.5.4.0 base-4.14.1.0 deepseq-1.4.4.0
468−haddock-interfaces:
469−haddock-html:
470−---
471−name: deepseq
472−version: 1.4.4.0
473−visibility: public
474−id: deepseq-1.4.4.0
475−key: deepseq-1.4.4.0
476−license: BSD-3-Clause
477−maintainer: libraries@haskell.org
478−synopsis: Deep evaluation of data structures
479−description:
480− This package provides methods for fully evaluating data structures
481− (\"deep evaluation\"). Deep evaluation is often used for adding
482− strictness to a program, e.g. in order to force pending exceptions,
483− remove space leaks, or force lazy I/O to happen. It is also useful
484− in parallel programs, to ensure pending work does not migrate to the
485− wrong thread.
486− The primary use of this package is via the 'deepseq' function, a
487− \"deep\" version of 'seq'. It is implemented on top of an 'NFData'
488− typeclass (\"Normal Form Data\", data structures with no unevaluated
489− components) which defines strategies for fully evaluating different
490− data types. See module documentation in "Control.DeepSeq" for more
491− details.
492−category: Control
493−exposed: True
494−exposed-modules: Control.DeepSeq
495−hidden-modules: Control.DeepSeq.BackDoor
496−import-dirs:
497−library-dirs:
498−dynamic-library-dirs:
499−data-dir:
500−hs-libraries: HSdeepseq-1.4.4.0
501−depends: array-0.5.4.0 base-4.14.1.0
502−haddock-interfaces:
503−haddock-html:
504−---
505−name: directory
506−version: 1.3.6.0
507−visibility: public
508−id: directory-1.3.6.0
509−key: directory-1.3.6.0
510−license: BSD-3-Clause
511−maintainer: libraries@haskell.org
512−synopsis: Platform-agnostic library for filesystem operations
513−description:
514− This library provides a basic set of operations for manipulating files and
515− directories in a portable way.
516−category: System
517−exposed: True
518−exposed-modules:
519− System.Directory System.Directory.Internal
520− System.Directory.Internal.Prelude
521−hidden-modules:
522− System.Directory.Internal.C_utimensat
523− System.Directory.Internal.Common System.Directory.Internal.Config
524− System.Directory.Internal.Posix System.Directory.Internal.Windows
525−import-dirs:
526−library-dirs:
527−dynamic-library-dirs:
528−data-dir:
529−hs-libraries: HSdirectory-1.3.6.0
530−depends:
531− base-4.14.1.0 filepath-1.4.2.1 time-1.9.3 unix-2.7.2.2
532−haddock-interfaces:
533−haddock-html:
534−---
535−name: exceptions
536−version: 0.10.4
537−visibility: public
538−id: exceptions-0.10.4
539−key: exceptions-0.10.4
540−license: BSD-3-Clause
541−copyright:
542− Copyright (C) 2013-2015 Edward A. Kmett
543− Copyright (C) 2012 Google Inc.
544−maintainer: Edward A. Kmett <ekmett@gmail.com>
545−author: Edward A. Kmett
546−stability: provisional
547−homepage: http://github.com/ekmett/exceptions/
548−synopsis: Extensible optionally-pure exceptions
549−description: Extensible optionally-pure exceptions.
550−category: Control, Exceptions, Monad
551−exposed: True
552−exposed-modules: Control.Monad.Catch Control.Monad.Catch.Pure
553−import-dirs:
554−library-dirs:
555−dynamic-library-dirs:
556−data-dir:
557−hs-libraries: HSexceptions-0.10.4
558−depends:
559− base-4.14.1.0 mtl-2.2.2 stm-2.5.0.0 template-haskell-2.16.0.0
560− transformers-0.5.6.2
561−haddock-interfaces:
562−haddock-html:
563−---
564−name: filepath
565−version: 1.4.2.1
566−visibility: public
567−id: filepath-1.4.2.1
568−key: filepath-1.4.2.1
569−license: BSD-3-Clause
570−copyright: Neil Mitchell 2005-2018
571−maintainer: Neil Mitchell <ndmitchell@gmail.com>
572−author: Neil Mitchell <ndmitchell@gmail.com>
573−homepage: https://github.com/haskell/filepath#readme
574−synopsis: Library for manipulating FilePaths in a cross platform way.
575−description:
576− This package provides functionality for manipulating @FilePath@ values, and is shipped with both <https://www.haskell.org/ghc/ GHC> and the <https://www.haskell.org/platform/ Haskell Platform>. It provides three modules:
577− * "System.FilePath.Posix" manipulates POSIX\/Linux style @FilePath@ values (with @\/@ as the path separator).
578− * "System.FilePath.Windows" manipulates Windows style @FilePath@ values (with either @\\@ or @\/@ as the path separator, and deals with drives).
579− * "System.FilePath" is an alias for the module appropriate to your platform.
580− All three modules provide the same API, and the same documentation (calling out differences in the different variants).
581−category: System
582−exposed: True
583−exposed-modules:
584− System.FilePath System.FilePath.Posix System.FilePath.Windows
585−import-dirs:
586−library-dirs:
587−dynamic-library-dirs:
588−data-dir:
589−hs-libraries: HSfilepath-1.4.2.1
590−depends: base-4.14.1.0
591−haddock-interfaces:
592−haddock-html:
593−---
594−name: ghc-boot
595−version: 8.10.4.20210212
596−visibility: public
597−id: ghc-boot-8.10.4.20210212
598−key: ghc-boot-8.10.4.20210212
599−license: BSD-3-Clause
600−maintainer: ghc-devs@haskell.org
601−synopsis: Shared functionality between GHC and its boot libraries
602−description:
603− This library is shared between GHC, ghc-pkg, and other boot
604− libraries.
605− A note about "GHC.PackageDb": it only deals with the subset of
606− the package database that the compiler cares about: modules
607− paths etc and not package metadata like description, authors
608− etc. It is thus not a library interface to ghc-pkg and is *not*
609− suitable for modifying GHC package databases.
610− The package database format and this library are constructed in
611− such a way that while ghc-pkg depends on Cabal, the GHC library
612− and program do not have to depend on Cabal.
613−category: GHC
614−exposed: True
615−exposed-modules:
616− GHC.BaseDir GHC.ForeignSrcLang GHC.HandleEncoding
617− GHC.LanguageExtensions GHC.PackageDb GHC.Platform GHC.Platform.Host
618− GHC.Serialized GHC.Settings GHC.UniqueSubdir GHC.Version
619−import-dirs:
620−library-dirs:
621−dynamic-library-dirs:
622−data-dir:
623−hs-libraries: HSghc-boot-8.10.4.20210212
624−depends:
625− base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
626− containers-0.6.2.1 directory-1.3.6.0 filepath-1.4.2.1
627− ghc-boot-th-8.10.4.20210212
628−haddock-interfaces:
629−haddock-html:
630−---
631−name: ghc-boot-th
632−version: 8.10.4.20210212
633−visibility: public
634−id: ghc-boot-th-8.10.4.20210212
635−key: ghc-boot-th-8.10.4.20210212
636−license: BSD-3-Clause
637−maintainer: ghc-devs@haskell.org
638−synopsis:
639− Shared functionality between GHC and the @template-haskell@
640− library
641−description:
642− This library contains various bits shared between the @ghc@ and
643− @template-haskell@ libraries.
644− This package exists to ensure that @template-haskell@ has a
645− minimal set of transitive dependencies, since it is intended to
646− be depended upon by user code.
647−category: GHC
648−exposed: True
649−exposed-modules:
650− GHC.ForeignSrcLang.Type GHC.LanguageExtensions.Type GHC.Lexeme
651−import-dirs:
652−library-dirs:
653−dynamic-library-dirs:
654−data-dir:
655−hs-libraries: HSghc-boot-th-8.10.4.20210212
656−depends: base-4.14.1.0
657−haddock-interfaces:
658−haddock-html:
659−---
660−name: ghc-compact
661−version: 0.1.0.0
662−visibility: public
663−id: ghc-compact-0.1.0.0
664−key: ghc-compact-0.1.0.0
665−license: BSD-3-Clause
666−maintainer: libraries@haskell.org
667−synopsis: In memory storage of deeply evaluated data structure
668−description:
669− This package provides minimal functionality for working with
670− "compact regions", which hold a fully evaluated Haskell object graph.
671− These regions maintain the invariant that no pointers live inside the struct
672− that point outside it, which ensures efficient garbage collection without
673− ever reading the structure contents (effectively, it works as a manually
674− managed "oldest generation" which is never freed until the whole is
675− released).
676− Internally, the struct is stored a single contiguous block of memory,
677− which allows efficient serialization and deserialization of structs
678− for distributed computing.
679−category: Data
680−exposed: True
681−exposed-modules: GHC.Compact GHC.Compact.Serialized
682−import-dirs:
683−library-dirs:
684−dynamic-library-dirs:
685−data-dir:
686−hs-libraries: HSghc-compact-0.1.0.0
687−depends: base-4.14.1.0 bytestring-0.10.12.0 ghc-prim-0.6.1
688−haddock-interfaces:
689−haddock-html:
690−---
691−name: ghc-heap
692−version: 8.10.4.20210212
693−visibility: public
694−id: ghc-heap-8.10.4.20210212
695−key: ghc-heap-8.10.4.20210212
696−license: BSD-3-Clause
697−maintainer: libraries@haskell.org
698−synopsis: Functions for walking GHC's heap
699−description:
700− This package provides functions for walking the GHC heap data structures
701− and retrieving information about those data structures.
702−category: GHC
703−exposed: True
704−exposed-modules:
705− GHC.Exts.Heap GHC.Exts.Heap.ClosureTypes GHC.Exts.Heap.Closures
706− GHC.Exts.Heap.Constants GHC.Exts.Heap.InfoTable
707− GHC.Exts.Heap.InfoTable.Types GHC.Exts.Heap.InfoTableProf
708− GHC.Exts.Heap.Utils
709−import-dirs:
710−library-dirs:
711−dynamic-library-dirs:
712−data-dir:
713−hs-libraries: HSghc-heap-8.10.4.20210212
714−depends: base-4.14.1.0 ghc-prim-0.6.1 rts
715−haddock-interfaces:
716−haddock-html:
717−---
718−name: ghc-prim
719−version: 0.6.1
720−visibility: public
721−id: ghc-prim-0.6.1
722−key: ghc-prim-0.6.1
723−license: BSD-3-Clause
724−maintainer: libraries@haskell.org
725−synopsis: GHC primitives
726−description:
727− This package contains the primitive types and operations supplied by GHC.
728−category: GHC
729−exposed: True
730−exposed-modules:
731− GHC.CString GHC.Classes GHC.Debug GHC.IntWord64 GHC.Magic
732− GHC.Prim.Ext GHC.PrimopWrappers GHC.Tuple GHC.Types GHC.Prim
733−import-dirs:
734−library-dirs:
735−dynamic-library-dirs:
736−data-dir:
737−hs-libraries: HSghc-prim-0.6.1
738−extra-libraries: gcc c m
739−depends: rts
740−haddock-interfaces:
741−haddock-html:
742−---
743−name: ghci
744−version: 8.10.4.20210212
745−visibility: public
746−id: ghci-8.10.4.20210212
747−key: ghci-8.10.4.20210212
748−license: BSD-3-Clause
749−maintainer: ghc-devs@haskell.org
750−synopsis: The library supporting GHC's interactive interpreter
751−description:
752− This library offers interfaces which mediate interactions between the
753− @ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter
754− backend.
755−category: GHC
756−exposed: True
757−exposed-modules:
758− GHCi.BinaryArray GHCi.BreakArray GHCi.CreateBCO GHCi.FFI
759− GHCi.InfoTable GHCi.Message GHCi.ObjLink GHCi.RemoteTypes
760− GHCi.ResolvedBCO GHCi.Run GHCi.Signals GHCi.StaticPtrTable GHCi.TH
761− GHCi.TH.Binary SizedSeq
762−import-dirs:
763−library-dirs:
764−dynamic-library-dirs:
765−data-dir:
766−hs-libraries: HSghci-8.10.4.20210212
767−include-dirs:
768−depends:
769− array-0.5.4.0 base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
770− containers-0.6.2.1 deepseq-1.4.4.0 filepath-1.4.2.1
771− ghc-boot-8.10.4.20210212 ghc-boot-th-8.10.4.20210212
772− ghc-heap-8.10.4.20210212 template-haskell-2.16.0.0
773− transformers-0.5.6.2 unix-2.7.2.2
774−haddock-interfaces:
775−haddock-html:
776−---
777−name: haskeline
778−version: 0.8.0.1
779−visibility: public
780−id: haskeline-0.8.0.1
781−key: haskeline-0.8.0.1
782−license: BSD-3-Clause
783−copyright: (c) Judah Jacobson
784−maintainer: Judah Jacobson <judah.jacobson@gmail.com>
785−author: Judah Jacobson
786−stability: Stable
787−homepage: https://github.com/judah/haskeline
788−synopsis:
789− A command-line interface for user input, written in Haskell.
790−description:
791− Haskeline provides a user interface for line input in command-line
792− programs. This library is similar in purpose to readline, but since
793− it is written in Haskell it is (hopefully) more easily used in other
794− Haskell programs.
795− Haskeline runs both on POSIX-compatible systems and on Windows.
796−category: User Interfaces
797−exposed: True
798−exposed-modules:
799− System.Console.Haskeline System.Console.Haskeline.Completion
800− System.Console.Haskeline.History System.Console.Haskeline.IO
801− System.Console.Haskeline.Internal
802−hidden-modules:
803− System.Console.Haskeline.Backend
804− System.Console.Haskeline.Backend.WCWidth
805− System.Console.Haskeline.Command
806− System.Console.Haskeline.Command.Completion
807− System.Console.Haskeline.Command.History
808− System.Console.Haskeline.Command.KillRing
809− System.Console.Haskeline.Directory System.Console.Haskeline.Emacs
810− System.Console.Haskeline.InputT System.Console.Haskeline.Key
811− System.Console.Haskeline.LineState System.Console.Haskeline.Monads
812− System.Console.Haskeline.Prefs System.Console.Haskeline.Recover
813− System.Console.Haskeline.RunCommand System.Console.Haskeline.Term
814− System.Console.Haskeline.Command.Undo System.Console.Haskeline.Vi
815− System.Console.Haskeline.Backend.Posix
816− System.Console.Haskeline.Backend.Posix.Encoder
817− System.Console.Haskeline.Backend.DumbTerm
818−import-dirs:
819−library-dirs:
820−dynamic-library-dirs:
821−data-dir:
822−hs-libraries: HShaskeline-0.8.0.1
823−depends:
824− base-4.14.1.0 bytestring-0.10.12.0 containers-0.6.2.1
825− directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
826− process-1.6.9.0 stm-2.5.0.0 transformers-0.5.6.2 unix-2.7.2.2
827−haddock-interfaces:
828−haddock-html:
829−---
830−name: hpc
831−version: 0.6.1.0
832−visibility: public
833−id: hpc-0.6.1.0
834−key: hpc-0.6.1.0
835−license: BSD-3-Clause
836−maintainer: ghc-devs@haskell.org
837−author: Andy Gill
838−synopsis: Code Coverage Library for Haskell
839−description:
840− This package provides the code coverage library for Haskell.
841− See <http://www.haskell.org/haskellwiki/Haskell_program_coverage> for more
842− information.
843−category: Control
844−exposed: True
845−exposed-modules:
846− Trace.Hpc.Mix Trace.Hpc.Reflect Trace.Hpc.Tix Trace.Hpc.Util
847−import-dirs:
848−library-dirs:
849−dynamic-library-dirs:
850−data-dir:
851−hs-libraries: HShpc-0.6.1.0
852−depends:
853− base-4.14.1.0 containers-0.6.2.1 deepseq-1.4.4.0 directory-1.3.6.0
854− filepath-1.4.2.1 time-1.9.3
855−haddock-interfaces:
856−haddock-html:
857−---
858−name: integer-gmp
859−version: 1.0.3.0
860−visibility: public
861−id: integer-gmp-1.0.3.0
862−key: integer-gmp-1.0.3.0
863−license: BSD-3-Clause
864−maintainer: hvr@gnu.org
865−author: Herbert Valerio Riedel
866−synopsis: Integer library based on GMP
867−description:
868− This package provides the low-level implementation of the standard
869− 'Integer' type based on the
870− <http://gmplib.org/ GNU Multiple Precision Arithmetic Library (GMP)>.
871− This package provides access to the internal representation of
872− 'Integer' as well as primitive operations with no proper error
873− handling, and should only be used directly with the utmost care.
874−category: Numeric, Algebra
875−exposed: True
876−exposed-modules:
877− GHC.Integer GHC.Integer.GMP.Internals GHC.Integer.Logarithms
878− GHC.Integer.Logarithms.Internals
879−hidden-modules: GHC.Integer.Type
880−import-dirs:
881−library-dirs:
882−dynamic-library-dirs:
883−data-dir:
884−hs-libraries: HSinteger-gmp-1.0.3.0
885−extra-libraries: gmp
886−include-dirs:
887−depends: ghc-prim-0.6.1
888−haddock-interfaces:
889−haddock-html:
890−---
891−name: libiserv
892−version: 8.10.4.20210212
893−visibility: public
894−id: libiserv-8.10.4.20210212
895−key: libiserv-8.10.4.20210212
896−license: BSD-3-Clause
897−copyright: XXX
898−maintainer: XXX
899−author: XXX
900−synopsis: Provides shared functionality between iserv and iserv-proxy
901−category: Development
902−exposed: True
903−exposed-modules: GHCi.Utils Lib
904−import-dirs:
905−library-dirs:
906−dynamic-library-dirs:
907−data-dir:
908−hs-libraries: HSlibiserv-8.10.4.20210212
909−depends:
910− base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
911− containers-0.6.2.1 deepseq-1.4.4.0 ghci-8.10.4.20210212
912− unix-2.7.2.2
913−haddock-interfaces:
914−haddock-html:
915−---
916−name: mtl
917−version: 2.2.2
918−visibility: public
919−id: mtl-2.2.2
920−key: mtl-2.2.2
921−license: BSD-3-Clause
922−maintainer: Edward Kmett <ekmett@gmail.com>
923−author: Andy Gill
924−homepage: http://github.com/haskell/mtl
925−synopsis: Monad classes, using functional dependencies
926−description:
927− Monad classes using functional dependencies, with instances
928− for various monad transformers, inspired by the paper
929− /Functional Programming with Overloading and Higher-Order Polymorphism/,
930− by Mark P Jones, in /Advanced School of Functional Programming/, 1995
931− (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
932−category: Control
933−exposed: True
934−exposed-modules:
935− Control.Monad.Cont Control.Monad.Cont.Class Control.Monad.Error
936− Control.Monad.Error.Class Control.Monad.Except
937− Control.Monad.Identity Control.Monad.List Control.Monad.RWS
938− Control.Monad.RWS.Class Control.Monad.RWS.Lazy
939− Control.Monad.RWS.Strict Control.Monad.Reader
940− Control.Monad.Reader.Class Control.Monad.State
941− Control.Monad.State.Class Control.Monad.State.Lazy
942− Control.Monad.State.Strict Control.Monad.Trans Control.Monad.Writer
943− Control.Monad.Writer.Class Control.Monad.Writer.Lazy
944− Control.Monad.Writer.Strict
945−import-dirs:
946−library-dirs:
947−dynamic-library-dirs:
948−data-dir:
949−hs-libraries: HSmtl-2.2.2
950−depends: base-4.14.1.0 transformers-0.5.6.2
951−haddock-interfaces:
952−haddock-html:
953−---
954−name: parsec
955−version: 3.1.14.0
956−visibility: public
957−id: parsec-3.1.14.0
958−key: parsec-3.1.14.0
959−license: BSD-3-Clause
960−maintainer: Herbert Valerio Riedel <hvr@gnu.org>
961−author:
962− Daan Leijen <daan@microsoft.com>, Paolo Martini <paolo@nemail.it>, Antoine Latter <aslatter@gmail.com>
963−homepage: https://github.com/haskell/parsec
964−synopsis: Monadic parser combinators
965−description:
966− Parsec is designed from scratch as an industrial-strength parser
967− library. It is simple, safe, well documented (on the package
968− homepage), has extensive libraries, good error messages,
969− and is fast. It is defined as a monad transformer that can be
970− stacked on arbitrary monads, and it is also parametric in the
971− input stream type.
972− The main entry point is the "Text.Parsec" module which provides
973− defaults for parsing 'Char'acter data.
974− The "Text.ParserCombinators.Parsec" module hierarchy contains
975− the legacy @parsec-2@ API and may be removed at some point in
976− the future.
977−category: Parsing
978−exposed: True
979−exposed-modules:
980− Text.Parsec Text.Parsec.ByteString Text.Parsec.ByteString.Lazy
981− Text.Parsec.Char Text.Parsec.Combinator Text.Parsec.Error
982− Text.Parsec.Expr Text.Parsec.Language Text.Parsec.Perm
983− Text.Parsec.Pos Text.Parsec.Prim Text.Parsec.String
984− Text.Parsec.Text Text.Parsec.Text.Lazy Text.Parsec.Token
985− Text.ParserCombinators.Parsec Text.ParserCombinators.Parsec.Char
986− Text.ParserCombinators.Parsec.Combinator
987− Text.ParserCombinators.Parsec.Error
988− Text.ParserCombinators.Parsec.Expr
989− Text.ParserCombinators.Parsec.Language
990− Text.ParserCombinators.Parsec.Perm
991− Text.ParserCombinators.Parsec.Pos
992− Text.ParserCombinators.Parsec.Prim
993− Text.ParserCombinators.Parsec.Token
994−import-dirs:
995−library-dirs:
996−dynamic-library-dirs:
997−data-dir:
998−hs-libraries: HSparsec-3.1.14.0
999−depends:
1000− base-4.14.1.0 bytestring-0.10.12.0 mtl-2.2.2 text-1.2.4.1
1001−haddock-interfaces:
1002−haddock-html:
1003−---
1004−name: pretty
1005−version: 1.1.3.6
1006−visibility: public
1007−id: pretty-1.1.3.6
1008−key: pretty-1.1.3.6
1009−license: BSD-3-Clause
1010−maintainer: David Terei <code@davidterei.com>
1011−stability: Stable
1012−homepage: http://github.com/haskell/pretty
1013−synopsis: Pretty-printing library
1014−description:
1015− This package contains a pretty-printing library, a set of API's
1016− that provides a way to easily print out text in a consistent
1017− format of your choosing. This is useful for compilers and related
1018− tools.
1019− This library was originally designed by John Hughes's and has since
1020− been heavily modified by Simon Peyton Jones.
1021−category: Text
1022−exposed: True
1023−exposed-modules:
1024− Text.PrettyPrint Text.PrettyPrint.Annotated
1025− Text.PrettyPrint.Annotated.HughesPJ
1026− Text.PrettyPrint.Annotated.HughesPJClass Text.PrettyPrint.HughesPJ
1027− Text.PrettyPrint.HughesPJClass
1028−import-dirs:
1029−library-dirs:
1030−dynamic-library-dirs:
1031−data-dir:
1032−hs-libraries: HSpretty-1.1.3.6
1033−depends: base-4.14.1.0 deepseq-1.4.4.0 ghc-prim-0.6.1
1034−haddock-interfaces:
1035−haddock-html:
1036−---
1037−name: process
1038−version: 1.6.9.0
1039−visibility: public
1040−id: process-1.6.9.0
1041−key: process-1.6.9.0
1042−license: BSD-3-Clause
1043−maintainer: libraries@haskell.org
1044−synopsis: Process libraries
1045−description:
1046− This package contains libraries for dealing with system processes.
1047− The typed-process package is a more recent take on a process API,
1048− which uses this package internally. It features better binary
1049− support, easier concurrency, and a more composable API. You can
1050− read more about it at
1051− <https://github.com/fpco/typed-process/#readme>.
1052−category: System
1053−exposed: True
1054−exposed-modules: System.Cmd System.Process System.Process.Internals
1055−hidden-modules: System.Process.Common System.Process.Posix
1056−import-dirs:
1057−library-dirs:
1058−dynamic-library-dirs:
1059−data-dir:
1060−hs-libraries: HSprocess-1.6.9.0
1061−include-dirs:
1062−includes: runProcess.h
1063−depends:
1064− base-4.14.1.0 deepseq-1.4.4.0 directory-1.3.6.0 filepath-1.4.2.1
1065− unix-2.7.2.2
1066−haddock-interfaces:
1067−haddock-html:
1068−---
1069−name: stm
1070−version: 2.5.0.0
1071−visibility: public
1072−id: stm-2.5.0.0
1073−key: stm-2.5.0.0
1074−license: BSD-3-Clause
1075−maintainer: libraries@haskell.org
1076−homepage: https://wiki.haskell.org/Software_transactional_memory
1077−synopsis: Software Transactional Memory
1078−description:
1079− Software Transactional Memory, or STM, is an abstraction for
1080− concurrent communication. The main benefits of STM are
1081− /composability/ and /modularity/. That is, using STM you can write
1082− concurrent abstractions that can be easily composed with any other
1083− abstraction built using STM, without exposing the details of how
1084− your abstraction ensures safety. This is typically not the case
1085− with other forms of concurrent communication, such as locks or
1086− 'MVar's.
1087−category: Concurrency
1088−exposed: True
1089−exposed-modules:
1090− Control.Concurrent.STM Control.Concurrent.STM.TArray
1091− Control.Concurrent.STM.TBQueue Control.Concurrent.STM.TChan
1092− Control.Concurrent.STM.TMVar Control.Concurrent.STM.TQueue
1093− Control.Concurrent.STM.TSem Control.Concurrent.STM.TVar
1094− Control.Monad.STM
1095−hidden-modules: Control.Sequential.STM
1096−import-dirs:
1097−library-dirs:
1098−dynamic-library-dirs:
1099−data-dir:
1100−hs-libraries: HSstm-2.5.0.0
1101−depends: array-0.5.4.0 base-4.14.1.0
1102−haddock-interfaces:
1103−haddock-html:
1104−---
1105−name: template-haskell
1106−version: 2.16.0.0
1107−visibility: public
1108−id: template-haskell-2.16.0.0
1109−key: template-haskell-2.16.0.0
1110−license: BSD-3-Clause
1111−maintainer: libraries@haskell.org
1112−synopsis: Support library for Template Haskell
1113−description:
1114− This package provides modules containing facilities for manipulating
1115− Haskell source code using Template Haskell.
1116− See <http://www.haskell.org/haskellwiki/Template_Haskell> for more
1117− information.
1118−category: Template Haskell
1119−exposed: True
1120−exposed-modules:
1121− Language.Haskell.TH Language.Haskell.TH.LanguageExtensions
1122− Language.Haskell.TH.Lib Language.Haskell.TH.Lib.Internal
1123− Language.Haskell.TH.Ppr Language.Haskell.TH.PprLib
1124− Language.Haskell.TH.Quote Language.Haskell.TH.Syntax
1125−hidden-modules: Language.Haskell.TH.Lib.Map
1126−import-dirs:
1127−library-dirs:
1128−dynamic-library-dirs:
1129−data-dir:
1130−hs-libraries: HStemplate-haskell-2.16.0.0
1131−depends:
1132− base-4.14.1.0 ghc-boot-th-8.10.4.20210212 ghc-prim-0.6.1
1133− pretty-1.1.3.6
1134−haddock-interfaces:
1135−haddock-html:
1136−---
1137−name: text
1138−version: 1.2.4.1
1139−visibility: public
1140−id: text-1.2.4.1
1141−key: text-1.2.4.1
1142−license: BSD-2-Clause
1143−copyright: 2009-2011 Bryan O'Sullivan, 2008-2009 Tom Harper
1144−maintainer:
1145− Bryan O'Sullivan <bos@serpentine.com>, Herbert Valerio Riedel <hvr@gnu.org>
1146−author: Bryan O'Sullivan <bos@serpentine.com>
1147−homepage: https://github.com/haskell/text
1148−synopsis: An efficient packed Unicode text type.
1149−description:
1150− An efficient packed, immutable Unicode text type (both strict and
1151− lazy), with a powerful loop fusion optimization framework.
1152− The 'Text' type represents Unicode character strings, in a time and
1153− space-efficient manner. This package provides text processing
1154− capabilities that are optimized for performance critical use, both
1155− in terms of large data quantities and high speed.
1156− The 'Text' type provides character-encoding, type-safe case
1157− conversion via whole-string case conversion functions (see "Data.Text").
1158− It also provides a range of functions for converting 'Text' values to
1159− and from 'ByteStrings', using several standard encodings
1160− (see "Data.Text.Encoding").
1161− Efficient locale-sensitive support for text IO is also supported
1162− (see "Data.Text.IO").
1163− These modules are intended to be imported qualified, to avoid name
1164− clashes with Prelude functions, e.g.
1165− > import qualified Data.Text as T
1166− == ICU Support
1167− To use an extended and very rich family of functions for working
1168− with Unicode text (including normalization, regular expressions,
1169− non-standard encodings, text breaking, and locales), see
1170− the [text-icu package](https://hackage.haskell.org/package/text-icu)
1171− based on the well-respected and liberally
1172− licensed [ICU library](http://site.icu-project.org/).
1173− == Internal Representation: UTF-16 vs. UTF-8
1174− Currently the @text@ library uses UTF-16 as its internal representation
1175− which is [neither a fixed-width nor always the most dense representation](http://utf8everywhere.org/)
1176− for Unicode text. We're currently investigating the feasibility
1177− of [changing Text's internal representation to UTF-8](https://github.com/text-utf8)
1178− and if you need such a 'Text' type right now you might be interested in using the spin-off
1179− packages <https://hackage.haskell.org/package/text-utf8 text-utf8> and
1180− <https://hackage.haskell.org/package/text-short text-short>.
1181−category: Data, Text
1182−exposed: True
1183−exposed-modules:
1184− Data.Text Data.Text.Array Data.Text.Encoding
1185− Data.Text.Encoding.Error Data.Text.Foreign Data.Text.IO
1186− Data.Text.Internal Data.Text.Internal.Builder
1187− Data.Text.Internal.Builder.Functions
1188− Data.Text.Internal.Builder.Int.Digits
1189− Data.Text.Internal.Builder.RealFloat.Functions
1190− Data.Text.Internal.ByteStringCompat
1191− Data.Text.Internal.Encoding.Fusion
1192− Data.Text.Internal.Encoding.Fusion.Common
1193− Data.Text.Internal.Encoding.Utf16 Data.Text.Internal.Encoding.Utf32
1194− Data.Text.Internal.Encoding.Utf8 Data.Text.Internal.Functions
1195− Data.Text.Internal.Fusion Data.Text.Internal.Fusion.CaseMapping
1196− Data.Text.Internal.Fusion.Common Data.Text.Internal.Fusion.Size
1197− Data.Text.Internal.Fusion.Types Data.Text.Internal.IO
1198− Data.Text.Internal.Lazy Data.Text.Internal.Lazy.Encoding.Fusion
1199− Data.Text.Internal.Lazy.Fusion Data.Text.Internal.Lazy.Search
1200− Data.Text.Internal.Private Data.Text.Internal.Read
1201− Data.Text.Internal.Search Data.Text.Internal.Unsafe
1202− Data.Text.Internal.Unsafe.Char Data.Text.Internal.Unsafe.Shift
1203− Data.Text.Lazy Data.Text.Lazy.Builder Data.Text.Lazy.Builder.Int
1204− Data.Text.Lazy.Builder.RealFloat Data.Text.Lazy.Encoding
1205− Data.Text.Lazy.IO Data.Text.Lazy.Internal Data.Text.Lazy.Read
1206− Data.Text.Read Data.Text.Unsafe
1207−hidden-modules: Data.Text.Show
1208−import-dirs:
1209−library-dirs:
1210−dynamic-library-dirs:
1211−data-dir:
1212−hs-libraries: HStext-1.2.4.1
1213−depends:
1214− array-0.5.4.0 base-4.14.1.0 binary-0.8.8.0 bytestring-0.10.12.0
1215− deepseq-1.4.4.0 ghc-prim-0.6.1 integer-gmp-1.0.3.0
1216− template-haskell-2.16.0.0
1217−haddock-interfaces:
1218−haddock-html:
1219−---
1220−name: time
1221−version: 1.9.3
1222−visibility: public
1223−id: time-1.9.3
1224−key: time-1.9.3
1225−license: BSD-3-Clause
1226−maintainer: <ashley@semantic.org>
1227−author: Ashley Yakeley
1228−stability: stable
1229−homepage: https://github.com/haskell/time
1230−synopsis: A time library
1231−description: Time, clocks and calendars
1232−category: Time
1233−exposed: True
1234−exposed-modules:
1235− Data.Time Data.Time.Calendar Data.Time.Calendar.Easter
1236− Data.Time.Calendar.Julian Data.Time.Calendar.MonthDay
1237− Data.Time.Calendar.OrdinalDate Data.Time.Calendar.WeekDate
1238− Data.Time.Clock Data.Time.Clock.POSIX Data.Time.Clock.System
1239− Data.Time.Clock.TAI Data.Time.Format Data.Time.Format.ISO8601
1240− Data.Time.Format.Internal Data.Time.LocalTime
1241−hidden-modules:
1242− Data.Format Data.Time.Calendar.Private Data.Time.Calendar.Days
1243− Data.Time.Calendar.Gregorian Data.Time.Calendar.CalendarDiffDays
1244− Data.Time.Calendar.Week Data.Time.Calendar.JulianYearDay
1245− Data.Time.Clock.Internal.DiffTime
1246− Data.Time.Clock.Internal.AbsoluteTime
1247− Data.Time.Clock.Internal.NominalDiffTime
1248− Data.Time.Clock.Internal.POSIXTime
1249− Data.Time.Clock.Internal.UniversalTime
1250− Data.Time.Clock.Internal.SystemTime
1251− Data.Time.Clock.Internal.UTCTime Data.Time.Clock.Internal.CTimeval
1252− Data.Time.Clock.Internal.CTimespec Data.Time.Clock.Internal.UTCDiff
1253− Data.Time.LocalTime.Internal.TimeZone
1254− Data.Time.LocalTime.Internal.TimeOfDay
1255− Data.Time.LocalTime.Internal.CalendarDiffTime
1256− Data.Time.LocalTime.Internal.LocalTime
1257− Data.Time.LocalTime.Internal.ZonedTime Data.Time.Format.Parse
1258− Data.Time.Format.Locale Data.Time.Format.Format.Class
1259− Data.Time.Format.Format.Instances Data.Time.Format.Parse.Class
1260− Data.Time.Format.Parse.Instances
1261−import-dirs:
1262−library-dirs:
1263−dynamic-library-dirs:
1264−data-dir:
1265−hs-libraries: HStime-1.9.3
1266−include-dirs:
1267−depends: base-4.14.1.0 deepseq-1.4.4.0
1268−haddock-interfaces:
1269−haddock-html:
1270−---
1271−name: transformers
1272−version: 0.5.6.2
1273−visibility: public
1274−id: transformers-0.5.6.2
1275−key: transformers-0.5.6.2
1276−license: BSD-3-Clause
1277−maintainer: Ross Paterson <R.Paterson@city.ac.uk>
1278−author: Andy Gill, Ross Paterson
1279−synopsis: Concrete functor and monad transformers
1280−description:
1281− A portable library of functor and monad transformers, inspired by
1282− the paper
1283− * \"Functional Programming with Overloading and Higher-Order
1284− Polymorphism\", by Mark P Jones,
1285− in /Advanced School of Functional Programming/, 1995
1286− (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
1287− This package contains:
1288− * the monad transformer class (in "Control.Monad.Trans.Class")
1289− * concrete functor and monad transformers, each with associated
1290− operations and functions to lift operations associated with other
1291− transformers.
1292− The package can be used on its own in portable Haskell code, in
1293− which case operations need to be manually lifted through transformer
1294− stacks (see "Control.Monad.Trans.Class" for some examples).
1295− Alternatively, it can be used with the non-portable monad classes in
1296− the @mtl@ or @monads-tf@ packages, which automatically lift operations
1297− introduced by monad transformers through other transformers.
1298−category: Control
1299−exposed: True
1300−exposed-modules:
1301− Control.Applicative.Backwards Control.Applicative.Lift
1302− Control.Monad.Signatures Control.Monad.Trans.Accum
1303− Control.Monad.Trans.Class Control.Monad.Trans.Cont
1304− Control.Monad.Trans.Error Control.Monad.Trans.Except
1305− Control.Monad.Trans.Identity Control.Monad.Trans.List
1306− Control.Monad.Trans.Maybe Control.Monad.Trans.RWS
1307− Control.Monad.Trans.RWS.CPS Control.Monad.Trans.RWS.Lazy
1308− Control.Monad.Trans.RWS.Strict Control.Monad.Trans.Reader
1309− Control.Monad.Trans.Select Control.Monad.Trans.State
1310− Control.Monad.Trans.State.Lazy Control.Monad.Trans.State.Strict
1311− Control.Monad.Trans.Writer Control.Monad.Trans.Writer.CPS
1312− Control.Monad.Trans.Writer.Lazy Control.Monad.Trans.Writer.Strict
1313− Data.Functor.Constant Data.Functor.Reverse
1314−import-dirs:
1315−library-dirs:
1316−dynamic-library-dirs:
1317−data-dir:
1318−hs-libraries: HStransformers-0.5.6.2
1319−depends: base-4.14.1.0
1320−haddock-interfaces:
1321−haddock-html:
1322−---
1323−name: unix
1324−version: 2.7.2.2
1325−visibility: public
1326−id: unix-2.7.2.2
1327−key: unix-2.7.2.2
1328−license: BSD-3-Clause
1329−maintainer: libraries@haskell.org
1330−homepage: https://github.com/haskell/unix
1331−synopsis: POSIX functionality
1332−description:
1333− This package gives you access to the set of operating system
1334− services standardised by
1335− <http://pubs.opengroup.org/onlinepubs/9699919799/ POSIX.1-2008>
1336− (or the IEEE Portable Operating System Interface for Computing
1337− Environments - IEEE Std. 1003.1).
1338− The package is not supported under Windows.
1339−category: System
1340−exposed: True
1341−exposed-modules:
1342− System.Posix System.Posix.ByteString
1343− System.Posix.ByteString.FilePath System.Posix.Directory
1344− System.Posix.Directory.ByteString System.Posix.DynamicLinker
1345− System.Posix.DynamicLinker.ByteString
1346− System.Posix.DynamicLinker.Module
1347− System.Posix.DynamicLinker.Module.ByteString
1348− System.Posix.DynamicLinker.Prim System.Posix.Env
1349− System.Posix.Env.ByteString System.Posix.Error System.Posix.Fcntl
1350− System.Posix.Files System.Posix.Files.ByteString System.Posix.IO
1351− System.Posix.IO.ByteString System.Posix.Process
1352− System.Posix.Process.ByteString System.Posix.Process.Internals
1353− System.Posix.Resource System.Posix.Semaphore System.Posix.SharedMem
1354− System.Posix.Signals System.Posix.Signals.Exts System.Posix.Temp
1355− System.Posix.Temp.ByteString System.Posix.Terminal
1356− System.Posix.Terminal.ByteString System.Posix.Time
1357− System.Posix.Unistd System.Posix.User
1358−hidden-modules:
1359− System.Posix.Directory.Common System.Posix.DynamicLinker.Common
1360− System.Posix.Files.Common System.Posix.IO.Common
1361− System.Posix.Process.Common System.Posix.Terminal.Common
1362−import-dirs:
1363−library-dirs:
1364−dynamic-library-dirs:
1365−data-dir:
1366−hs-libraries: HSunix-2.7.2.2
1367−extra-libraries: rt util dl pthread
1368−include-dirs:
1369−includes: HsUnix.h execvpe.h
1370−depends: base-4.14.1.0 bytestring-0.10.12.0 time-1.9.3
1371−haddock-interfaces:
1372−haddock-html:
1373−---
1374−name: rts
1375−version: 1.0
1376−visibility: public
1377−id: rts
1378−key: rts
1379−license: BSD-3-Clause
1380−maintainer: glasgow-haskell-users@haskell.org
1381−exposed: True
1382−library-dirs:
1383−hs-libraries: HSrts
1384−extra-libraries: m rt dl ffi numa pthread
1385−include-dirs:
1386−includes: Stg.h
1387−ld-options:
1388− "-Wl,-u,base_GHCziTopHandler_runIO_closure"
1389− "-Wl,-u,base_GHCziTopHandler_runNonIO_closure"
1390− "-Wl,-u,ghczmprim_GHCziTuple_Z0T_closure"
1391− "-Wl,-u,ghczmprim_GHCziTypes_True_closure"
1392− "-Wl,-u,ghczmprim_GHCziTypes_False_closure"
1393− "-Wl,-u,base_GHCziPack_unpackCString_closure"
1394− "-Wl,-u,base_GHCziWeak_runFinalizzerBatch_closure"
1395− "-Wl,-u,base_GHCziIOziException_stackOverflow_closure"
1396− "-Wl,-u,base_GHCziIOziException_heapOverflow_closure"
1397− "-Wl,-u,base_GHCziIOziException_allocationLimitExceeded_closure"
1398− "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnMVar_closure"
1399− "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnSTM_closure"
1400− "-Wl,-u,base_GHCziIOziException_cannotCompactFunction_closure"
1401− "-Wl,-u,base_GHCziIOziException_cannotCompactPinned_closure"
1402− "-Wl,-u,base_GHCziIOziException_cannotCompactMutable_closure"
1403− "-Wl,-u,base_ControlziExceptionziBase_absentSumFieldError_closure"
1404− "-Wl,-u,base_ControlziExceptionziBase_nonTermination_closure"
1405− "-Wl,-u,base_ControlziExceptionziBase_nestedAtomically_closure"
1406− "-Wl,-u,base_GHCziEventziThread_blockedOnBadFD_closure"
1407− "-Wl,-u,base_GHCziConcziSync_runSparks_closure"
1408− "-Wl,-u,base_GHCziConcziIO_ensureIOManagerIsRunning_closure"
1409− "-Wl,-u,base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure"
1410− "-Wl,-u,base_GHCziConcziSignal_runHandlersPtr_closure"
1411− "-Wl,-u,base_GHCziTopHandler_flushStdHandles_closure"
1412− "-Wl,-u,base_GHCziTopHandler_runMainIO_closure"
1413− "-Wl,-u,ghczmprim_GHCziTypes_Czh_con_info"
1414− "-Wl,-u,ghczmprim_GHCziTypes_Izh_con_info"
1415− "-Wl,-u,ghczmprim_GHCziTypes_Fzh_con_info"
1416− "-Wl,-u,ghczmprim_GHCziTypes_Dzh_con_info"
1417− "-Wl,-u,ghczmprim_GHCziTypes_Wzh_con_info"
1418− "-Wl,-u,base_GHCziPtr_Ptr_con_info"
1419− "-Wl,-u,base_GHCziPtr_FunPtr_con_info"
1420− "-Wl,-u,base_GHCziInt_I8zh_con_info"
1421− "-Wl,-u,base_GHCziInt_I16zh_con_info"
1422− "-Wl,-u,base_GHCziInt_I32zh_con_info"
1423− "-Wl,-u,base_GHCziInt_I64zh_con_info"
1424− "-Wl,-u,base_GHCziWord_W8zh_con_info"
1425− "-Wl,-u,base_GHCziWord_W16zh_con_info"
1426− "-Wl,-u,base_GHCziWord_W32zh_con_info"
1427− "-Wl,-u,base_GHCziWord_W64zh_con_info"
1428− "-Wl,-u,base_GHCziStable_StablePtr_con_info"
1429− "-Wl,-u,hs_atomic_add8" "-Wl,-u,hs_atomic_add16"
1430− "-Wl,-u,hs_atomic_add32" "-Wl,-u,hs_atomic_add64"
1431− "-Wl,-u,hs_atomic_sub8" "-Wl,-u,hs_atomic_sub16"
1432− "-Wl,-u,hs_atomic_sub32" "-Wl,-u,hs_atomic_sub64"
1433− "-Wl,-u,hs_atomic_and8" "-Wl,-u,hs_atomic_and16"
1434− "-Wl,-u,hs_atomic_and32" "-Wl,-u,hs_atomic_and64"
1435− "-Wl,-u,hs_atomic_nand8" "-Wl,-u,hs_atomic_nand16"
1436− "-Wl,-u,hs_atomic_nand32" "-Wl,-u,hs_atomic_nand64"
1437− "-Wl,-u,hs_atomic_or8" "-Wl,-u,hs_atomic_or16"
1438− "-Wl,-u,hs_atomic_or32" "-Wl,-u,hs_atomic_or64"
1439− "-Wl,-u,hs_atomic_xor8" "-Wl,-u,hs_atomic_xor16"
1440− "-Wl,-u,hs_atomic_xor32" "-Wl,-u,hs_atomic_xor64"
1441− "-Wl,-u,hs_cmpxchg8" "-Wl,-u,hs_cmpxchg16" "-Wl,-u,hs_cmpxchg32"
1442− "-Wl,-u,hs_cmpxchg64" "-Wl,-u,hs_atomicread8"
1443− "-Wl,-u,hs_atomicread16" "-Wl,-u,hs_atomicread32"
1444− "-Wl,-u,hs_atomicread64" "-Wl,-u,hs_atomicwrite8"
1445− "-Wl,-u,hs_atomicwrite16" "-Wl,-u,hs_atomicwrite32"
1446− "-Wl,-u,hs_atomicwrite64"
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/versiondeleted−1
@@ -1 +0,0 @@
1−GHC package manager version 8.10.4.20210212
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc/infodeleted−69
@@ -1,69 +0,0 @@
1− [("Project name","The Glorious Glasgow Haskell Compilation System")
2− ,("GCC extra via C opts","")
3− ,("C compiler flags","")
4− ,("C++ compiler flags","")
5− ,("C compiler link flags","-Wl,-z,noexecstack")
6− ,("C compiler supports -no-pie","YES")
7− ,("Haskell CPP flags","-E -undef -traditional")
8− ,("ld flags","-z noexecstack")
9− ,("ld supports compact unwind","YES")
10− ,("ld supports build-id","YES")
11− ,("ld supports filelist","NO")
12− ,("ld is GNU ld","YES")
13− ,("Merge objects flags","-r")
14− ,("ar flags","q")
15− ,("ar supports at file","YES")
16− ,("otool command","otool")
17− ,("install_name_tool command","install_name_tool")
18− ,("touch command","touch")
19− ,("dllwrap command","/bin/false")
20− ,("windres command","/bin/false")
21− ,("libtool command","libtool")
22− ,("cross compiling","YES")
23− ,("target platform string","aarch64-unknown-linux")
24− ,("target os","OSLinux")
25− ,("target arch","ArchARM64")
26− ,("target word size","8")
27− ,("target has GNU nonexec stack","YES")
28− ,("target has .ident directive","YES")
29− ,("target has subsections via symbols","NO")
30− ,("target has RTS linker","YES")
31− ,("Unregisterised","NO")
32− ,("LLVM target","aarch64-unknown-linux")
33− ,("LLVM llc command","llc")
34− ,("LLVM opt command","opt")
35− ,("LLVM clang command","clang")
36− ,("integer library","integer-gmp")
37− ,("Use interpreter","YES")
38− ,("Use native code generator","NO")
39− ,("Support SMP","YES")
40− ,("RTS ways","l debug thr thr_debug thr_l thr_p thr_debug_p debug_p")
41− ,("Tables next to code","YES")
42− ,("Leading underscore","NO")
43− ,("Use LibFFI","YES")
44− ,("Use Threads","YES")
45− ,("Use Debugging","NO")
46− ,("RTS expects libdw","NO")
47− ,("Project version","8.10.4.20210212")
48− ,("Project Git commit id","6a01e28f4204ec17c587931311711fa76e0ea08d")
49− ,("Booter version","8.6.5")
50− ,("Stage","1")
51− ,("Build platform","x86_64-unknown-linux")
52− ,("Host platform","x86_64-unknown-linux")
53− ,("Target platform","aarch64-unknown-linux")
54− ,("Have interpreter","YES")
55− ,("Object splitting supported","NO")
56− ,("Have native code generator","NO")
57− ,("Support dynamic-too","YES")
58− ,("Support parallel --make","YES")
59− ,("Support reexported-modules","YES")
60− ,("Support thinning and renaming package flags","YES")
61− ,("Support Backpack","YES")
62− ,("Requires unified installed package IDs","YES")
63− ,("Uses package keys","YES")
64− ,("Uses unit IDs","YES")
65− ,("Dynamic by default","NO")
66− ,("GHC Dynamic","NO")
67− ,("GHC Profiled","NO")
68− ,("Debug on","NO")
69− ]
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc/numeric-versiondeleted−1
@@ -1 +0,0 @@
1−8.10.4.20210212
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc/supported-languagesdeleted−255
@@ -1,255 +0,0 @@
1−Haskell98
2−Haskell2010
3−Unsafe
4−Trustworthy
5−Safe
6−AllowAmbiguousTypes
7−NoAllowAmbiguousTypes
8−AlternativeLayoutRule
9−NoAlternativeLayoutRule
10−AlternativeLayoutRuleTransitional
11−NoAlternativeLayoutRuleTransitional
12−Arrows
13−NoArrows
14−AutoDeriveTypeable
15−NoAutoDeriveTypeable
16−BangPatterns
17−NoBangPatterns
18−BinaryLiterals
19−NoBinaryLiterals
20−CApiFFI
21−NoCApiFFI
22−CPP
23−NoCPP
24−CUSKs
25−NoCUSKs
26−ConstrainedClassMethods
27−NoConstrainedClassMethods
28−ConstraintKinds
29−NoConstraintKinds
30−DataKinds
31−NoDataKinds
32−DatatypeContexts
33−NoDatatypeContexts
34−DefaultSignatures
35−NoDefaultSignatures
36−DeriveAnyClass
37−NoDeriveAnyClass
38−DeriveDataTypeable
39−NoDeriveDataTypeable
40−DeriveFoldable
41−NoDeriveFoldable
42−DeriveFunctor
43−NoDeriveFunctor
44−DeriveGeneric
45−NoDeriveGeneric
46−DeriveLift
47−NoDeriveLift
48−DeriveTraversable
49−NoDeriveTraversable
50−DerivingStrategies
51−NoDerivingStrategies
52−DerivingVia
53−NoDerivingVia
54−DisambiguateRecordFields
55−NoDisambiguateRecordFields
56−DoAndIfThenElse
57−NoDoAndIfThenElse
58−BlockArguments
59−NoBlockArguments
60−DoRec
61−NoDoRec
62−DuplicateRecordFields
63−NoDuplicateRecordFields
64−EmptyCase
65−NoEmptyCase
66−EmptyDataDecls
67−NoEmptyDataDecls
68−EmptyDataDeriving
69−NoEmptyDataDeriving
70−ExistentialQuantification
71−NoExistentialQuantification
72−ExplicitForAll
73−NoExplicitForAll
74−ExplicitNamespaces
75−NoExplicitNamespaces
76−ExtendedDefaultRules
77−NoExtendedDefaultRules
78−FlexibleContexts
79−NoFlexibleContexts
80−FlexibleInstances
81−NoFlexibleInstances
82−ForeignFunctionInterface
83−NoForeignFunctionInterface
84−FunctionalDependencies
85−NoFunctionalDependencies
86−GADTSyntax
87−NoGADTSyntax
88−GADTs
89−NoGADTs
90−GHCForeignImportPrim
91−NoGHCForeignImportPrim
92−GeneralizedNewtypeDeriving
93−NoGeneralizedNewtypeDeriving
94−GeneralisedNewtypeDeriving
95−NoGeneralisedNewtypeDeriving
96−ImplicitParams
97−NoImplicitParams
98−ImplicitPrelude
99−NoImplicitPrelude
100−ImportQualifiedPost
101−NoImportQualifiedPost
102−ImpredicativeTypes
103−NoImpredicativeTypes
104−IncoherentInstances
105−NoIncoherentInstances
106−TypeFamilyDependencies
107−NoTypeFamilyDependencies
108−InstanceSigs
109−NoInstanceSigs
110−ApplicativeDo
111−NoApplicativeDo
112−InterruptibleFFI
113−NoInterruptibleFFI
114−JavaScriptFFI
115−NoJavaScriptFFI
116−KindSignatures
117−NoKindSignatures
118−LambdaCase
119−NoLambdaCase
120−LiberalTypeSynonyms
121−NoLiberalTypeSynonyms
122−MagicHash
123−NoMagicHash
124−MonadComprehensions
125−NoMonadComprehensions
126−MonadFailDesugaring
127−NoMonadFailDesugaring
128−MonoLocalBinds
129−NoMonoLocalBinds
130−MonoPatBinds
131−NoMonoPatBinds
132−MonomorphismRestriction
133−NoMonomorphismRestriction
134−MultiParamTypeClasses
135−NoMultiParamTypeClasses
136−MultiWayIf
137−NoMultiWayIf
138−NumericUnderscores
139−NoNumericUnderscores
140−NPlusKPatterns
141−NoNPlusKPatterns
142−NamedFieldPuns
143−NoNamedFieldPuns
144−NamedWildCards
145−NoNamedWildCards
146−NegativeLiterals
147−NoNegativeLiterals
148−HexFloatLiterals
149−NoHexFloatLiterals
150−NondecreasingIndentation
151−NoNondecreasingIndentation
152−NullaryTypeClasses
153−NoNullaryTypeClasses
154−NumDecimals
155−NoNumDecimals
156−OverlappingInstances
157−NoOverlappingInstances
158−OverloadedLabels
159−NoOverloadedLabels
160−OverloadedLists
161−NoOverloadedLists
162−OverloadedStrings
163−NoOverloadedStrings
164−PackageImports
165−NoPackageImports
166−ParallelArrays
167−NoParallelArrays
168−ParallelListComp
169−NoParallelListComp
170−PartialTypeSignatures
171−NoPartialTypeSignatures
172−PatternGuards
173−NoPatternGuards
174−PatternSignatures
175−NoPatternSignatures
176−PatternSynonyms
177−NoPatternSynonyms
178−PolyKinds
179−NoPolyKinds
180−PolymorphicComponents
181−NoPolymorphicComponents
182−QuantifiedConstraints
183−NoQuantifiedConstraints
184−PostfixOperators
185−NoPostfixOperators
186−QuasiQuotes
187−NoQuasiQuotes
188−Rank2Types
189−NoRank2Types
190−RankNTypes
191−NoRankNTypes
192−RebindableSyntax
193−NoRebindableSyntax
194−RecordPuns
195−NoRecordPuns
196−RecordWildCards
197−NoRecordWildCards
198−RecursiveDo
199−NoRecursiveDo
200−RelaxedLayout
201−NoRelaxedLayout
202−RelaxedPolyRec
203−NoRelaxedPolyRec
204−RoleAnnotations
205−NoRoleAnnotations
206−ScopedTypeVariables
207−NoScopedTypeVariables
208−StandaloneDeriving
209−NoStandaloneDeriving
210−StarIsType
211−NoStarIsType
212−StaticPointers
213−NoStaticPointers
214−Strict
215−NoStrict
216−StrictData
217−NoStrictData
218−TemplateHaskell
219−NoTemplateHaskell
220−TemplateHaskellQuotes
221−NoTemplateHaskellQuotes
222−StandaloneKindSignatures
223−NoStandaloneKindSignatures
224−TraditionalRecordSyntax
225−NoTraditionalRecordSyntax
226−TransformListComp
227−NoTransformListComp
228−TupleSections
229−NoTupleSections
230−TypeApplications
231−NoTypeApplications
232−TypeInType
233−NoTypeInType
234−TypeFamilies
235−NoTypeFamilies
236−TypeOperators
237−NoTypeOperators
238−TypeSynonymInstances
239−NoTypeSynonymInstances
240−UnboxedTuples
241−NoUnboxedTuples
242−UnboxedSums
243−NoUnboxedSums
244−UndecidableInstances
245−NoUndecidableInstances
246−UndecidableSuperClasses
247−NoUndecidableSuperClasses
248−UnicodeSyntax
249−NoUnicodeSyntax
250−UnliftedFFITypes
251−NoUnliftedFFITypes
252−UnliftedNewtypes
253−NoUnliftedNewtypes
254−ViewPatterns
255−NoViewPatterns
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.4.20210212-x86_64-linux/ghc/versiondeleted−1
@@ -1 +0,0 @@
1−The Glorious Glasgow Haskell Compilation System, version 8.10.4.20210212
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc-pkg/dump-globaldeleted−1443
@@ -1,1443 +0,0 @@
1−name: Cabal
2−version: 3.2.1.0
3−visibility: public
4−id: Cabal-3.2.1.0
5−key: Cabal-3.2.1.0
6−license: BSD-3-Clause
7−copyright: 2003-2020, Cabal Development Team (see AUTHORS file)
8−maintainer: cabal-devel@haskell.org
9−author: Cabal Development Team <cabal-devel@haskell.org>
10−homepage: http://www.haskell.org/cabal/
11−synopsis: A framework for packaging Haskell software
12−description:
13− The Haskell Common Architecture for Building Applications and
14− Libraries: a framework defining a common interface for authors to more
15− easily build their Haskell applications in a portable way.
16− The Haskell Cabal is part of a larger infrastructure for distributing,
17− organizing, and cataloging Haskell libraries and tools.
18−category: Distribution
19−exposed: True
20−exposed-modules:
21− Distribution.Backpack Distribution.Backpack.ComponentsGraph
22− Distribution.Backpack.Configure
23− Distribution.Backpack.ConfiguredComponent
24− Distribution.Backpack.DescribeUnitId
25− Distribution.Backpack.FullUnitId
26− Distribution.Backpack.LinkedComponent
27− Distribution.Backpack.ModSubst Distribution.Backpack.ModuleShape
28− Distribution.Backpack.PreModuleShape Distribution.CabalSpecVersion
29− Distribution.Compat.Binary Distribution.Compat.CharParsing
30− Distribution.Compat.CreatePipe Distribution.Compat.DList
31− Distribution.Compat.Directory Distribution.Compat.Environment
32− Distribution.Compat.Exception Distribution.Compat.FilePath
33− Distribution.Compat.Graph Distribution.Compat.Internal.TempFile
34− Distribution.Compat.Lens Distribution.Compat.Newtype
35− Distribution.Compat.Parsing Distribution.Compat.Prelude.Internal
36− Distribution.Compat.Process Distribution.Compat.ResponseFile
37− Distribution.Compat.Semigroup Distribution.Compat.Stack
38− Distribution.Compat.Time Distribution.Compat.Typeable
39− Distribution.Compiler Distribution.FieldGrammar
40− Distribution.FieldGrammar.Class
41− Distribution.FieldGrammar.FieldDescrs
42− Distribution.FieldGrammar.Parsec Distribution.FieldGrammar.Pretty
43− Distribution.Fields Distribution.Fields.ConfVar
44− Distribution.Fields.Field Distribution.Fields.Lexer
45− Distribution.Fields.LexerMonad Distribution.Fields.ParseResult
46− Distribution.Fields.Parser Distribution.Fields.Pretty
47− Distribution.InstalledPackageInfo Distribution.License
48− Distribution.Make Distribution.ModuleName Distribution.Package
49− Distribution.PackageDescription
50− Distribution.PackageDescription.Check
51− Distribution.PackageDescription.Configuration
52− Distribution.PackageDescription.FieldGrammar
53− Distribution.PackageDescription.Parsec
54− Distribution.PackageDescription.PrettyPrint
55− Distribution.PackageDescription.Quirks
56− Distribution.PackageDescription.Utils Distribution.Parsec
57− Distribution.Parsec.Error Distribution.Parsec.FieldLineStream
58− Distribution.Parsec.Newtypes Distribution.Parsec.Position
59− Distribution.Parsec.Warning Distribution.Pretty Distribution.ReadE
60− Distribution.SPDX Distribution.SPDX.License
61− Distribution.SPDX.LicenseExceptionId
62− Distribution.SPDX.LicenseExpression Distribution.SPDX.LicenseId
63− Distribution.SPDX.LicenseListVersion
64− Distribution.SPDX.LicenseReference Distribution.Simple
65− Distribution.Simple.Bench Distribution.Simple.Build
66− Distribution.Simple.Build.Macros
67− Distribution.Simple.Build.PathsModule
68− Distribution.Simple.BuildPaths Distribution.Simple.BuildTarget
69− Distribution.Simple.BuildToolDepends Distribution.Simple.CCompiler
70− Distribution.Simple.Command Distribution.Simple.Compiler
71− Distribution.Simple.Configure Distribution.Simple.Doctest
72− Distribution.Simple.Flag Distribution.Simple.GHC
73− Distribution.Simple.GHCJS Distribution.Simple.Glob
74− Distribution.Simple.Haddock Distribution.Simple.HaskellSuite
75− Distribution.Simple.Hpc Distribution.Simple.Install
76− Distribution.Simple.InstallDirs
77− Distribution.Simple.InstallDirs.Internal
78− Distribution.Simple.LocalBuildInfo Distribution.Simple.PackageIndex
79− Distribution.Simple.PreProcess Distribution.Simple.PreProcess.Unlit
80− Distribution.Simple.Program Distribution.Simple.Program.Ar
81− Distribution.Simple.Program.Builtin Distribution.Simple.Program.Db
82− Distribution.Simple.Program.Find Distribution.Simple.Program.GHC
83− Distribution.Simple.Program.HcPkg Distribution.Simple.Program.Hpc
84− Distribution.Simple.Program.Internal Distribution.Simple.Program.Ld
85− Distribution.Simple.Program.ResponseFile
86− Distribution.Simple.Program.Run Distribution.Simple.Program.Script
87− Distribution.Simple.Program.Strip Distribution.Simple.Program.Types
88− Distribution.Simple.Register Distribution.Simple.Setup
89− Distribution.Simple.ShowBuildInfo Distribution.Simple.SrcDist
90− Distribution.Simple.Test Distribution.Simple.Test.ExeV10
91− Distribution.Simple.Test.LibV09 Distribution.Simple.Test.Log
92− Distribution.Simple.UHC Distribution.Simple.UserHooks
93− Distribution.Simple.Utils Distribution.System
94− Distribution.TestSuite Distribution.Text
95− Distribution.Types.AbiDependency Distribution.Types.AbiHash
96− Distribution.Types.AnnotatedId Distribution.Types.Benchmark
97− Distribution.Types.Benchmark.Lens
98− Distribution.Types.BenchmarkInterface
99− Distribution.Types.BenchmarkType Distribution.Types.BuildInfo
100− Distribution.Types.BuildInfo.Lens Distribution.Types.BuildType
101− Distribution.Types.Component Distribution.Types.ComponentId
102− Distribution.Types.ComponentInclude
103− Distribution.Types.ComponentLocalBuildInfo
104− Distribution.Types.ComponentName
105− Distribution.Types.ComponentRequestedSpec
106− Distribution.Types.CondTree Distribution.Types.Condition
107− Distribution.Types.ConfVar Distribution.Types.Dependency
108− Distribution.Types.DependencyMap Distribution.Types.ExeDependency
109− Distribution.Types.Executable Distribution.Types.Executable.Lens
110− Distribution.Types.ExecutableScope Distribution.Types.ExposedModule
111− Distribution.Types.Flag Distribution.Types.ForeignLib
112− Distribution.Types.ForeignLib.Lens
113− Distribution.Types.ForeignLibOption
114− Distribution.Types.ForeignLibType
115− Distribution.Types.GenericPackageDescription
116− Distribution.Types.GenericPackageDescription.Lens
117− Distribution.Types.GivenComponent
118− Distribution.Types.HookedBuildInfo
119− Distribution.Types.IncludeRenaming
120− Distribution.Types.InstalledPackageInfo
121− Distribution.Types.InstalledPackageInfo.FieldGrammar
122− Distribution.Types.InstalledPackageInfo.Lens
123− Distribution.Types.LegacyExeDependency Distribution.Types.Lens
124− Distribution.Types.Library Distribution.Types.Library.Lens
125− Distribution.Types.LibraryName Distribution.Types.LibraryVisibility
126− Distribution.Types.LocalBuildInfo Distribution.Types.Mixin
127− Distribution.Types.Module Distribution.Types.ModuleReexport
128− Distribution.Types.ModuleRenaming
129− Distribution.Types.MungedPackageId
130− Distribution.Types.MungedPackageName
131− Distribution.Types.PackageDescription
132− Distribution.Types.PackageDescription.Lens
133− Distribution.Types.PackageId Distribution.Types.PackageId.Lens
134− Distribution.Types.PackageName Distribution.Types.PackageName.Magic
135− Distribution.Types.PackageVersionConstraint
136− Distribution.Types.PkgconfigDependency
137− Distribution.Types.PkgconfigName
138− Distribution.Types.PkgconfigVersion
139− Distribution.Types.PkgconfigVersionRange
140− Distribution.Types.SetupBuildInfo
141− Distribution.Types.SetupBuildInfo.Lens
142− Distribution.Types.SourceRepo Distribution.Types.SourceRepo.Lens
143− Distribution.Types.TargetInfo Distribution.Types.TestSuite
144− Distribution.Types.TestSuite.Lens
145− Distribution.Types.TestSuiteInterface Distribution.Types.TestType
146− Distribution.Types.UnitId Distribution.Types.UnqualComponentName
147− Distribution.Types.Version Distribution.Types.VersionInterval
148− Distribution.Types.VersionRange
149− Distribution.Types.VersionRange.Internal Distribution.Utils.Generic
150− Distribution.Utils.IOData Distribution.Utils.LogProgress
151− Distribution.Utils.MD5 Distribution.Utils.MapAccum
152− Distribution.Utils.NubList Distribution.Utils.Progress
153− Distribution.Utils.ShortText Distribution.Utils.Structured
154− Distribution.Verbosity Distribution.Verbosity.Internal
155− Distribution.Version Language.Haskell.Extension
156−hidden-modules:
157− Distribution.Backpack.PreExistingComponent
158− Distribution.Backpack.ReadyComponent Distribution.Backpack.MixLink
159− Distribution.Backpack.ModuleScope Distribution.Backpack.UnifyM
160− Distribution.Backpack.Id Distribution.Utils.UnionFind
161− Distribution.Utils.Base62 Distribution.Compat.Async
162− Distribution.Compat.CopyFile Distribution.Compat.GetShortPathName
163− Distribution.Compat.MonadFail Distribution.Compat.Prelude
164− Distribution.Compat.SnocList Distribution.GetOpt Distribution.Lex
165− Distribution.Utils.String Distribution.Simple.GHC.EnvironmentParser
166− Distribution.Simple.GHC.Internal Distribution.Simple.GHC.ImplInfo
167− Distribution.Simple.Utils.Json Paths_Cabal
168−import-dirs:
169−library-dirs:
170−dynamic-library-dirs:
171−data-dir:
172−hs-libraries: HSCabal-3.2.1.0
173−depends:
174− array-0.5.4.0 base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
175− containers-0.6.4.1 deepseq-1.4.4.0 directory-1.3.6.0
176− filepath-1.4.2.1 mtl-2.2.2 parsec-3.1.14.0 pretty-1.1.3.6
177− process-1.6.9.0 text-1.2.4.1 time-1.9.3 transformers-0.5.6.2
178− unix-2.7.2.2
179−haddock-interfaces:
180−haddock-html:
181−---
182−name: array
183−version: 0.5.4.0
184−visibility: public
185−id: array-0.5.4.0
186−key: array-0.5.4.0
187−license: BSD-3-Clause
188−maintainer: libraries@haskell.org
189−synopsis: Mutable and immutable arrays
190−description:
191− In addition to providing the "Data.Array" module
192− <http://www.haskell.org/onlinereport/haskell2010/haskellch14.html as specified in the Haskell 2010 Language Report>,
193− this package also defines the classes 'IArray' of
194− immutable arrays and 'MArray' of arrays mutable within appropriate
195− monads, as well as some instances of these classes.
196−category: Data Structures
197−exposed: True
198−exposed-modules:
199− Data.Array Data.Array.Base Data.Array.IArray Data.Array.IO
200− Data.Array.IO.Internals Data.Array.IO.Safe Data.Array.MArray
201− Data.Array.MArray.Safe Data.Array.ST Data.Array.ST.Safe
202− Data.Array.Storable Data.Array.Storable.Internals
203− Data.Array.Storable.Safe Data.Array.Unboxed Data.Array.Unsafe
204−import-dirs:
205−library-dirs:
206−dynamic-library-dirs:
207−data-dir:
208−hs-libraries: HSarray-0.5.4.0
209−depends: base-4.14.2.0
210−haddock-interfaces:
211−haddock-html:
212−---
213−name: base
214−version: 4.14.2.0
215−visibility: public
216−id: base-4.14.2.0
217−key: base-4.14.2.0
218−license: BSD-3-Clause
219−maintainer: libraries@haskell.org
220−synopsis: Basic libraries
221−description:
222− This package contains the Standard Haskell "Prelude" and its support libraries,
223− and a large collection of useful libraries ranging from data
224− structures to parsing combinators and debugging utilities.
225−category: Prelude
226−exposed: True
227−exposed-modules:
228− Control.Applicative Control.Arrow Control.Category
229− Control.Concurrent Control.Concurrent.Chan Control.Concurrent.MVar
230− Control.Concurrent.QSem Control.Concurrent.QSemN Control.Exception
231− Control.Exception.Base Control.Monad Control.Monad.Fail
232− Control.Monad.Fix Control.Monad.IO.Class Control.Monad.Instances
233− Control.Monad.ST Control.Monad.ST.Lazy Control.Monad.ST.Lazy.Safe
234− Control.Monad.ST.Lazy.Unsafe Control.Monad.ST.Safe
235− Control.Monad.ST.Strict Control.Monad.ST.Unsafe Control.Monad.Zip
236− Data.Bifoldable Data.Bifunctor Data.Bitraversable Data.Bits
237− Data.Bool Data.Char Data.Coerce Data.Complex Data.Data Data.Dynamic
238− Data.Either Data.Eq Data.Fixed Data.Foldable Data.Function
239− Data.Functor Data.Functor.Classes Data.Functor.Compose
240− Data.Functor.Const Data.Functor.Contravariant Data.Functor.Identity
241− Data.Functor.Product Data.Functor.Sum Data.IORef Data.Int Data.Ix
242− Data.Kind Data.List Data.List.NonEmpty Data.Maybe Data.Monoid
243− Data.Ord Data.Proxy Data.Ratio Data.STRef Data.STRef.Lazy
244− Data.STRef.Strict Data.Semigroup Data.String Data.Traversable
245− Data.Tuple Data.Type.Bool Data.Type.Coercion Data.Type.Equality
246− Data.Typeable Data.Unique Data.Version Data.Void Data.Word
247− Debug.Trace Foreign Foreign.C Foreign.C.Error Foreign.C.String
248− Foreign.C.Types Foreign.Concurrent Foreign.ForeignPtr
249− Foreign.ForeignPtr.Safe Foreign.ForeignPtr.Unsafe Foreign.Marshal
250− Foreign.Marshal.Alloc Foreign.Marshal.Array Foreign.Marshal.Error
251− Foreign.Marshal.Pool Foreign.Marshal.Safe Foreign.Marshal.Unsafe
252− Foreign.Marshal.Utils Foreign.Ptr Foreign.Safe Foreign.StablePtr
253− Foreign.Storable GHC.Arr GHC.Base GHC.ByteOrder GHC.Char GHC.Clock
254− GHC.Conc GHC.Conc.IO GHC.Conc.Signal GHC.Conc.Sync
255− GHC.ConsoleHandler GHC.Constants GHC.Desugar GHC.Enum
256− GHC.Environment GHC.Err GHC.Event GHC.Exception GHC.Exception.Type
257− GHC.ExecutionStack GHC.ExecutionStack.Internal GHC.Exts
258− GHC.Fingerprint GHC.Fingerprint.Type GHC.Float
259− GHC.Float.ConversionUtils GHC.Float.RealFracMethods GHC.Foreign
260− GHC.ForeignPtr GHC.GHCi GHC.GHCi.Helpers GHC.Generics GHC.IO
261− GHC.IO.Buffer GHC.IO.BufferedIO GHC.IO.Device GHC.IO.Encoding
262− GHC.IO.Encoding.CodePage GHC.IO.Encoding.Failure
263− GHC.IO.Encoding.Iconv GHC.IO.Encoding.Latin1 GHC.IO.Encoding.Types
264− GHC.IO.Encoding.UTF16 GHC.IO.Encoding.UTF32 GHC.IO.Encoding.UTF8
265− GHC.IO.Exception GHC.IO.FD GHC.IO.Handle GHC.IO.Handle.FD
266− GHC.IO.Handle.Internals GHC.IO.Handle.Lock GHC.IO.Handle.Text
267− GHC.IO.Handle.Types GHC.IO.IOMode GHC.IO.Unsafe GHC.IOArray
268− GHC.IORef GHC.Int GHC.Ix GHC.List GHC.MVar GHC.Maybe GHC.Natural
269− GHC.Num GHC.OldList GHC.OverloadedLabels GHC.Pack GHC.Profiling
270− GHC.Ptr GHC.RTS.Flags GHC.Read GHC.Real GHC.Records
271− GHC.ResponseFile GHC.ST GHC.STRef GHC.Show GHC.Stable
272− GHC.StableName GHC.Stack GHC.Stack.CCS GHC.Stack.Types
273− GHC.StaticPtr GHC.Stats GHC.Storable GHC.TopHandler GHC.TypeLits
274− GHC.TypeNats GHC.Unicode GHC.Weak GHC.Word Numeric Numeric.Natural
275− Prelude System.CPUTime System.Console.GetOpt System.Environment
276− System.Environment.Blank System.Exit System.IO System.IO.Error
277− System.IO.Unsafe System.Info System.Mem System.Mem.StableName
278− System.Mem.Weak System.Posix.Internals System.Posix.Types
279− System.Timeout Text.ParserCombinators.ReadP
280− Text.ParserCombinators.ReadPrec Text.Printf Text.Read Text.Read.Lex
281− Text.Show Text.Show.Functions Type.Reflection
282− Type.Reflection.Unsafe Unsafe.Coerce
283−hidden-modules:
284− Control.Monad.ST.Imp Control.Monad.ST.Lazy.Imp Data.Functor.Utils
285− Data.OldList Data.Semigroup.Internal Data.Typeable.Internal
286− Foreign.ForeignPtr.Imp GHC.IO.Handle.Lock.Common
287− GHC.IO.Handle.Lock.Flock GHC.IO.Handle.Lock.LinuxOFD
288− GHC.IO.Handle.Lock.NoOp GHC.IO.Handle.Lock.Windows
289− GHC.StaticPtr.Internal System.Environment.ExecutablePath
290− System.CPUTime.Utils GHC.Event.Arr GHC.Event.Array
291− GHC.Event.Control GHC.Event.EPoll GHC.Event.IntTable
292− GHC.Event.Internal GHC.Event.KQueue GHC.Event.Manager GHC.Event.PSQ
293− GHC.Event.Poll GHC.Event.Thread GHC.Event.TimerManager
294− GHC.Event.Unique System.CPUTime.Posix.ClockGetTime
295− System.CPUTime.Posix.Times System.CPUTime.Posix.RUsage
296− System.CPUTime.Unsupported
297−import-dirs:
298−library-dirs:
299−dynamic-library-dirs:
300−data-dir:
301−hs-libraries: HSbase-4.14.2.0
302−include-dirs:
303−includes: HsBase.h
304−depends: ghc-prim-0.6.1 integer-gmp-1.0.3.0 rts
305−haddock-interfaces:
306−haddock-html:
307−---
308−name: binary
309−version: 0.8.8.0
310−visibility: public
311−id: binary-0.8.8.0
312−key: binary-0.8.8.0
313−license: BSD-3-Clause
314−maintainer: Lennart Kolmodin, Don Stewart <dons00@gmail.com>
315−author: Lennart Kolmodin <kolmodin@gmail.com>
316−stability: provisional
317−homepage: https://github.com/kolmodin/binary
318−synopsis:
319− Binary serialisation for Haskell values using lazy ByteStrings
320−description:
321− Efficient, pure binary serialisation using lazy ByteStrings.
322− Haskell values may be encoded to and from binary formats,
323− written to disk as binary, or sent over the network.
324− The format used can be automatically generated, or
325− you can choose to implement a custom format if needed.
326− Serialisation speeds of over 1 G\/sec have been observed,
327− so this library should be suitable for high performance
328− scenarios.
329−category: Data, Parsing
330−exposed: True
331−exposed-modules:
332− Data.Binary Data.Binary.Builder Data.Binary.Get
333− Data.Binary.Get.Internal Data.Binary.Put
334−hidden-modules:
335− Data.Binary.Class Data.Binary.Internal Data.Binary.Generic
336− Data.Binary.FloatCast
337−import-dirs:
338−library-dirs:
339−dynamic-library-dirs:
340−data-dir:
341−hs-libraries: HSbinary-0.8.8.0
342−depends:
343− array-0.5.4.0 base-4.14.2.0 bytestring-0.10.12.0 containers-0.6.4.1
344−haddock-interfaces:
345−haddock-html:
346−---
347−name: bytestring
348−version: 0.10.12.0
349−visibility: public
350−id: bytestring-0.10.12.0
351−key: bytestring-0.10.12.0
352−license: BSD-3-Clause
353−copyright:
354− Copyright (c) Don Stewart 2005-2009,
355− (c) Duncan Coutts 2006-2015,
356− (c) David Roundy 2003-2005,
357− (c) Jasper Van der Jeugt 2010,
358− (c) Simon Meier 2010-2013.
359−maintainer: Duncan Coutts <duncan@community.haskell.org>
360−author:
361− Don Stewart,
362− Duncan Coutts
363−homepage: https://github.com/haskell/bytestring
364−synopsis:
365− Fast, compact, strict and lazy byte strings with a list interface
366−description:
367− An efficient compact, immutable byte string type (both strict and lazy)
368− suitable for binary or 8-bit character data.
369− The 'ByteString' type represents sequences of bytes or 8-bit characters.
370− It is suitable for high performance use, both in terms of large data
371− quantities, or high speed requirements. The 'ByteString' functions follow
372− the same style as Haskell\'s ordinary lists, so it is easy to convert code
373− from using 'String' to 'ByteString'.
374− Two 'ByteString' variants are provided:
375− * Strict 'ByteString's keep the string as a single large array. This
376− makes them convenient for passing data between C and Haskell.
377− * Lazy 'ByteString's use a lazy list of strict chunks which makes it
378− suitable for I\/O streaming tasks.
379− The @Char8@ modules provide a character-based view of the same
380− underlying 'ByteString' types. This makes it convenient to handle mixed
381− binary and 8-bit character content (which is common in many file formats
382− and network protocols).
383− The 'Builder' module provides an efficient way to build up 'ByteString's
384− in an ad-hoc way by repeated concatenation. This is ideal for fast
385− serialisation or pretty printing.
386− There is also a 'ShortByteString' type which has a lower memory overhead
387− and can can be converted to or from a 'ByteString', but supports very few
388− other operations. It is suitable for keeping many short strings in memory.
389− 'ByteString's are not designed for Unicode. For Unicode strings you should
390− use the 'Text' type from the @text@ package.
391− These modules are intended to be imported qualified, to avoid name clashes
392− with "Prelude" functions, e.g.
393− > import qualified Data.ByteString as BS
394−category: Data
395−exposed: True
396−exposed-modules:
397− Data.ByteString Data.ByteString.Builder
398− Data.ByteString.Builder.Extra Data.ByteString.Builder.Internal
399− Data.ByteString.Builder.Prim Data.ByteString.Builder.Prim.Internal
400− Data.ByteString.Char8 Data.ByteString.Internal Data.ByteString.Lazy
401− Data.ByteString.Lazy.Builder Data.ByteString.Lazy.Builder.ASCII
402− Data.ByteString.Lazy.Builder.Extras Data.ByteString.Lazy.Char8
403− Data.ByteString.Lazy.Internal Data.ByteString.Short
404− Data.ByteString.Short.Internal Data.ByteString.Unsafe
405−hidden-modules:
406− Data.ByteString.Builder.ASCII Data.ByteString.Builder.Prim.Binary
407− Data.ByteString.Builder.Prim.ASCII
408− Data.ByteString.Builder.Prim.Internal.Floating
409− Data.ByteString.Builder.Prim.Internal.UncheckedShifts
410− Data.ByteString.Builder.Prim.Internal.Base16
411−import-dirs:
412−library-dirs:
413−dynamic-library-dirs:
414−data-dir:
415−hs-libraries: HSbytestring-0.10.12.0
416−include-dirs:
417−includes: fpstring.h
418−depends:
419− base-4.14.2.0 deepseq-1.4.4.0 ghc-prim-0.6.1 integer-gmp-1.0.3.0
420−haddock-interfaces:
421−haddock-html:
422−---
423−name: containers
424−version: 0.6.4.1
425−visibility: public
426−id: containers-0.6.4.1
427−key: containers-0.6.4.1
428−license: BSD-3-Clause
429−maintainer: libraries@haskell.org
430−synopsis: Assorted concrete container types
431−description:
432− This package contains efficient general-purpose implementations
433− of various immutable container types including sets, maps, sequences,
434− trees, and graphs.
435− For a walkthrough of what this package provides with examples of common
436− operations see the [containers
437− introduction](https://haskell-containers.readthedocs.io).
438− The declared cost of each operation is either worst-case or amortized, but
439− remains valid even if structures are shared.
440−category: Data Structures
441−exposed: True
442−exposed-modules:
443− Data.Containers.ListUtils Data.Graph Data.IntMap
444− Data.IntMap.Internal Data.IntMap.Internal.Debug Data.IntMap.Lazy
445− Data.IntMap.Merge.Lazy Data.IntMap.Merge.Strict Data.IntMap.Strict
446− Data.IntMap.Strict.Internal Data.IntSet Data.IntSet.Internal
447− Data.Map Data.Map.Internal Data.Map.Internal.Debug Data.Map.Lazy
448− Data.Map.Merge.Lazy Data.Map.Merge.Strict Data.Map.Strict
449− Data.Map.Strict.Internal Data.Sequence Data.Sequence.Internal
450− Data.Sequence.Internal.Sorting Data.Set Data.Set.Internal Data.Tree
451− Utils.Containers.Internal.BitQueue
452− Utils.Containers.Internal.BitUtil
453− Utils.Containers.Internal.StrictPair
454−hidden-modules:
455− Utils.Containers.Internal.State
456− Utils.Containers.Internal.StrictMaybe
457− Utils.Containers.Internal.PtrEquality
458− Utils.Containers.Internal.Coercions
459− Utils.Containers.Internal.TypeError
460− Data.Map.Internal.DeprecatedShowTree
461− Data.IntMap.Internal.DeprecatedDebug
462−import-dirs:
463−library-dirs:
464−dynamic-library-dirs:
465−data-dir:
466−hs-libraries: HScontainers-0.6.4.1
467−depends: array-0.5.4.0 base-4.14.2.0 deepseq-1.4.4.0
468−haddock-interfaces:
469−haddock-html:
470−---
471−name: deepseq
472−version: 1.4.4.0
473−visibility: public
474−id: deepseq-1.4.4.0
475−key: deepseq-1.4.4.0
476−license: BSD-3-Clause
477−maintainer: libraries@haskell.org
478−synopsis: Deep evaluation of data structures
479−description:
480− This package provides methods for fully evaluating data structures
481− (\"deep evaluation\"). Deep evaluation is often used for adding
482− strictness to a program, e.g. in order to force pending exceptions,
483− remove space leaks, or force lazy I/O to happen. It is also useful
484− in parallel programs, to ensure pending work does not migrate to the
485− wrong thread.
486− The primary use of this package is via the 'deepseq' function, a
487− \"deep\" version of 'seq'. It is implemented on top of an 'NFData'
488− typeclass (\"Normal Form Data\", data structures with no unevaluated
489− components) which defines strategies for fully evaluating different
490− data types. See module documentation in "Control.DeepSeq" for more
491− details.
492−category: Control
493−exposed: True
494−exposed-modules: Control.DeepSeq
495−hidden-modules: Control.DeepSeq.BackDoor
496−import-dirs:
497−library-dirs:
498−dynamic-library-dirs:
499−data-dir:
500−hs-libraries: HSdeepseq-1.4.4.0
501−depends: array-0.5.4.0 base-4.14.2.0
502−haddock-interfaces:
503−haddock-html:
504−---
505−name: directory
506−version: 1.3.6.0
507−visibility: public
508−id: directory-1.3.6.0
509−key: directory-1.3.6.0
510−license: BSD-3-Clause
511−maintainer: libraries@haskell.org
512−synopsis: Platform-agnostic library for filesystem operations
513−description:
514− This library provides a basic set of operations for manipulating files and
515− directories in a portable way.
516−category: System
517−exposed: True
518−exposed-modules:
519− System.Directory System.Directory.Internal
520− System.Directory.Internal.Prelude
521−hidden-modules:
522− System.Directory.Internal.C_utimensat
523− System.Directory.Internal.Common System.Directory.Internal.Config
524− System.Directory.Internal.Posix System.Directory.Internal.Windows
525−import-dirs:
526−library-dirs:
527−dynamic-library-dirs:
528−data-dir:
529−hs-libraries: HSdirectory-1.3.6.0
530−depends:
531− base-4.14.2.0 filepath-1.4.2.1 time-1.9.3 unix-2.7.2.2
532−haddock-interfaces:
533−haddock-html:
534−---
535−name: exceptions
536−version: 0.10.4
537−visibility: public
538−id: exceptions-0.10.4
539−key: exceptions-0.10.4
540−license: BSD-3-Clause
541−copyright:
542− Copyright (C) 2013-2015 Edward A. Kmett
543− Copyright (C) 2012 Google Inc.
544−maintainer: Edward A. Kmett <ekmett@gmail.com>
545−author: Edward A. Kmett
546−stability: provisional
547−homepage: http://github.com/ekmett/exceptions/
548−synopsis: Extensible optionally-pure exceptions
549−description: Extensible optionally-pure exceptions.
550−category: Control, Exceptions, Monad
551−exposed: True
552−exposed-modules: Control.Monad.Catch Control.Monad.Catch.Pure
553−import-dirs:
554−library-dirs:
555−dynamic-library-dirs:
556−data-dir:
557−hs-libraries: HSexceptions-0.10.4
558−depends:
559− base-4.14.2.0 mtl-2.2.2 stm-2.5.0.1 template-haskell-2.16.0.0
560− transformers-0.5.6.2
561−haddock-interfaces:
562−haddock-html:
563−---
564−name: filepath
565−version: 1.4.2.1
566−visibility: public
567−id: filepath-1.4.2.1
568−key: filepath-1.4.2.1
569−license: BSD-3-Clause
570−copyright: Neil Mitchell 2005-2018
571−maintainer: Neil Mitchell <ndmitchell@gmail.com>
572−author: Neil Mitchell <ndmitchell@gmail.com>
573−homepage: https://github.com/haskell/filepath#readme
574−synopsis: Library for manipulating FilePaths in a cross platform way.
575−description:
576− This package provides functionality for manipulating @FilePath@ values, and is shipped with both <https://www.haskell.org/ghc/ GHC> and the <https://www.haskell.org/platform/ Haskell Platform>. It provides three modules:
577− * "System.FilePath.Posix" manipulates POSIX\/Linux style @FilePath@ values (with @\/@ as the path separator).
578− * "System.FilePath.Windows" manipulates Windows style @FilePath@ values (with either @\\@ or @\/@ as the path separator, and deals with drives).
579− * "System.FilePath" is an alias for the module appropriate to your platform.
580− All three modules provide the same API, and the same documentation (calling out differences in the different variants).
581−category: System
582−exposed: True
583−exposed-modules:
584− System.FilePath System.FilePath.Posix System.FilePath.Windows
585−import-dirs:
586−library-dirs:
587−dynamic-library-dirs:
588−data-dir:
589−hs-libraries: HSfilepath-1.4.2.1
590−depends: base-4.14.2.0
591−haddock-interfaces:
592−haddock-html:
593−---
594−name: ghc-boot
595−version: 8.10.5
596−visibility: public
597−id: ghc-boot-8.10.5
598−key: ghc-boot-8.10.5
599−license: BSD-3-Clause
600−maintainer: ghc-devs@haskell.org
601−synopsis: Shared functionality between GHC and its boot libraries
602−description:
603− This library is shared between GHC, ghc-pkg, and other boot
604− libraries.
605− A note about "GHC.PackageDb": it only deals with the subset of
606− the package database that the compiler cares about: modules
607− paths etc and not package metadata like description, authors
608− etc. It is thus not a library interface to ghc-pkg and is *not*
609− suitable for modifying GHC package databases.
610− The package database format and this library are constructed in
611− such a way that while ghc-pkg depends on Cabal, the GHC library
612− and program do not have to depend on Cabal.
613−category: GHC
614−exposed: True
615−exposed-modules:
616− GHC.BaseDir GHC.ForeignSrcLang GHC.HandleEncoding
617− GHC.LanguageExtensions GHC.PackageDb GHC.Platform GHC.Platform.Host
618− GHC.Serialized GHC.Settings GHC.UniqueSubdir GHC.Version
619−import-dirs:
620−library-dirs:
621−dynamic-library-dirs:
622−data-dir:
623−hs-libraries: HSghc-boot-8.10.5
624−depends:
625− base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
626− containers-0.6.4.1 directory-1.3.6.0 filepath-1.4.2.1
627− ghc-boot-th-8.10.5
628−haddock-interfaces:
629−haddock-html:
630−---
631−name: ghc-boot-th
632−version: 8.10.5
633−visibility: public
634−id: ghc-boot-th-8.10.5
635−key: ghc-boot-th-8.10.5
636−license: BSD-3-Clause
637−maintainer: ghc-devs@haskell.org
638−synopsis:
639− Shared functionality between GHC and the @template-haskell@
640− library
641−description:
642− This library contains various bits shared between the @ghc@ and
643− @template-haskell@ libraries.
644− This package exists to ensure that @template-haskell@ has a
645− minimal set of transitive dependencies, since it is intended to
646− be depended upon by user code.
647−category: GHC
648−exposed: True
649−exposed-modules:
650− GHC.ForeignSrcLang.Type GHC.LanguageExtensions.Type GHC.Lexeme
651−import-dirs:
652−library-dirs:
653−dynamic-library-dirs:
654−data-dir:
655−hs-libraries: HSghc-boot-th-8.10.5
656−depends: base-4.14.2.0
657−haddock-interfaces:
658−haddock-html:
659−---
660−name: ghc-compact
661−version: 0.1.0.0
662−visibility: public
663−id: ghc-compact-0.1.0.0
664−key: ghc-compact-0.1.0.0
665−license: BSD-3-Clause
666−maintainer: libraries@haskell.org
667−synopsis: In memory storage of deeply evaluated data structure
668−description:
669− This package provides minimal functionality for working with
670− "compact regions", which hold a fully evaluated Haskell object graph.
671− These regions maintain the invariant that no pointers live inside the struct
672− that point outside it, which ensures efficient garbage collection without
673− ever reading the structure contents (effectively, it works as a manually
674− managed "oldest generation" which is never freed until the whole is
675− released).
676− Internally, the struct is stored a single contiguous block of memory,
677− which allows efficient serialization and deserialization of structs
678− for distributed computing.
679−category: Data
680−exposed: True
681−exposed-modules: GHC.Compact GHC.Compact.Serialized
682−import-dirs:
683−library-dirs:
684−dynamic-library-dirs:
685−data-dir:
686−hs-libraries: HSghc-compact-0.1.0.0
687−depends: base-4.14.2.0 bytestring-0.10.12.0 ghc-prim-0.6.1
688−haddock-interfaces:
689−haddock-html:
690−---
691−name: ghc-heap
692−version: 8.10.5
693−visibility: public
694−id: ghc-heap-8.10.5
695−key: ghc-heap-8.10.5
696−license: BSD-3-Clause
697−maintainer: libraries@haskell.org
698−synopsis: Functions for walking GHC's heap
699−description:
700− This package provides functions for walking the GHC heap data structures
701− and retrieving information about those data structures.
702−category: GHC
703−exposed: True
704−exposed-modules:
705− GHC.Exts.Heap GHC.Exts.Heap.ClosureTypes GHC.Exts.Heap.Closures
706− GHC.Exts.Heap.Constants GHC.Exts.Heap.InfoTable
707− GHC.Exts.Heap.InfoTable.Types GHC.Exts.Heap.InfoTableProf
708− GHC.Exts.Heap.Utils
709−import-dirs:
710−library-dirs:
711−dynamic-library-dirs:
712−data-dir:
713−hs-libraries: HSghc-heap-8.10.5
714−depends: base-4.14.2.0 ghc-prim-0.6.1 rts
715−haddock-interfaces:
716−haddock-html:
717−---
718−name: ghc-prim
719−version: 0.6.1
720−visibility: public
721−id: ghc-prim-0.6.1
722−key: ghc-prim-0.6.1
723−license: BSD-3-Clause
724−maintainer: libraries@haskell.org
725−synopsis: GHC primitives
726−description:
727− This package contains the primitive types and operations supplied by GHC.
728−category: GHC
729−exposed: True
730−exposed-modules:
731− GHC.CString GHC.Classes GHC.Debug GHC.IntWord64 GHC.Magic
732− GHC.Prim.Ext GHC.PrimopWrappers GHC.Tuple GHC.Types GHC.Prim
733−import-dirs:
734−library-dirs:
735−dynamic-library-dirs:
736−data-dir:
737−hs-libraries: HSghc-prim-0.6.1
738−extra-libraries: gcc c m
739−depends: rts
740−haddock-interfaces:
741−haddock-html:
742−---
743−name: ghci
744−version: 8.10.5
745−visibility: public
746−id: ghci-8.10.5
747−key: ghci-8.10.5
748−license: BSD-3-Clause
749−maintainer: ghc-devs@haskell.org
750−synopsis: The library supporting GHC's interactive interpreter
751−description:
752− This library offers interfaces which mediate interactions between the
753− @ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter
754− backend.
755−category: GHC
756−exposed: True
757−exposed-modules:
758− GHCi.BinaryArray GHCi.BreakArray GHCi.CreateBCO GHCi.FFI
759− GHCi.InfoTable GHCi.Message GHCi.ObjLink GHCi.RemoteTypes
760− GHCi.ResolvedBCO GHCi.Run GHCi.Signals GHCi.StaticPtrTable GHCi.TH
761− GHCi.TH.Binary SizedSeq
762−import-dirs:
763−library-dirs:
764−dynamic-library-dirs:
765−data-dir:
766−hs-libraries: HSghci-8.10.5
767−include-dirs:
768−depends:
769− array-0.5.4.0 base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
770− containers-0.6.4.1 deepseq-1.4.4.0 filepath-1.4.2.1 ghc-boot-8.10.5
771− ghc-boot-th-8.10.5 ghc-heap-8.10.5 rts template-haskell-2.16.0.0
772− transformers-0.5.6.2 unix-2.7.2.2
773−haddock-interfaces:
774−haddock-html:
775−---
776−name: haskeline
777−version: 0.8.0.1
778−visibility: public
779−id: haskeline-0.8.0.1
780−key: haskeline-0.8.0.1
781−license: BSD-3-Clause
782−copyright: (c) Judah Jacobson
783−maintainer: Judah Jacobson <judah.jacobson@gmail.com>
784−author: Judah Jacobson
785−stability: Stable
786−homepage: https://github.com/judah/haskeline
787−synopsis:
788− A command-line interface for user input, written in Haskell.
789−description:
790− Haskeline provides a user interface for line input in command-line
791− programs. This library is similar in purpose to readline, but since
792− it is written in Haskell it is (hopefully) more easily used in other
793− Haskell programs.
794− Haskeline runs both on POSIX-compatible systems and on Windows.
795−category: User Interfaces
796−exposed: True
797−exposed-modules:
798− System.Console.Haskeline System.Console.Haskeline.Completion
799− System.Console.Haskeline.History System.Console.Haskeline.IO
800− System.Console.Haskeline.Internal
801−hidden-modules:
802− System.Console.Haskeline.Backend
803− System.Console.Haskeline.Backend.WCWidth
804− System.Console.Haskeline.Command
805− System.Console.Haskeline.Command.Completion
806− System.Console.Haskeline.Command.History
807− System.Console.Haskeline.Command.KillRing
808− System.Console.Haskeline.Directory System.Console.Haskeline.Emacs
809− System.Console.Haskeline.InputT System.Console.Haskeline.Key
810− System.Console.Haskeline.LineState System.Console.Haskeline.Monads
811− System.Console.Haskeline.Prefs System.Console.Haskeline.Recover
812− System.Console.Haskeline.RunCommand System.Console.Haskeline.Term
813− System.Console.Haskeline.Command.Undo System.Console.Haskeline.Vi
814− System.Console.Haskeline.Backend.Posix
815− System.Console.Haskeline.Backend.Posix.Encoder
816− System.Console.Haskeline.Backend.DumbTerm
817−import-dirs:
818−library-dirs:
819−dynamic-library-dirs:
820−data-dir:
821−hs-libraries: HShaskeline-0.8.0.1
822−depends:
823− base-4.14.2.0 bytestring-0.10.12.0 containers-0.6.4.1
824− directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
825− process-1.6.9.0 stm-2.5.0.1 transformers-0.5.6.2 unix-2.7.2.2
826−haddock-interfaces:
827−haddock-html:
828−---
829−name: hpc
830−version: 0.6.1.0
831−visibility: public
832−id: hpc-0.6.1.0
833−key: hpc-0.6.1.0
834−license: BSD-3-Clause
835−maintainer: ghc-devs@haskell.org
836−author: Andy Gill
837−synopsis: Code Coverage Library for Haskell
838−description:
839− This package provides the code coverage library for Haskell.
840− See <http://www.haskell.org/haskellwiki/Haskell_program_coverage> for more
841− information.
842−category: Control
843−exposed: True
844−exposed-modules:
845− Trace.Hpc.Mix Trace.Hpc.Reflect Trace.Hpc.Tix Trace.Hpc.Util
846−import-dirs:
847−library-dirs:
848−dynamic-library-dirs:
849−data-dir:
850−hs-libraries: HShpc-0.6.1.0
851−depends:
852− base-4.14.2.0 containers-0.6.4.1 deepseq-1.4.4.0 directory-1.3.6.0
853− filepath-1.4.2.1 time-1.9.3
854−haddock-interfaces:
855−haddock-html:
856−---
857−name: integer-gmp
858−version: 1.0.3.0
859−visibility: public
860−id: integer-gmp-1.0.3.0
861−key: integer-gmp-1.0.3.0
862−license: BSD-3-Clause
863−maintainer: hvr@gnu.org
864−author: Herbert Valerio Riedel
865−synopsis: Integer library based on GMP
866−description:
867− This package provides the low-level implementation of the standard
868− 'Integer' type based on the
869− <http://gmplib.org/ GNU Multiple Precision Arithmetic Library (GMP)>.
870− This package provides access to the internal representation of
871− 'Integer' as well as primitive operations with no proper error
872− handling, and should only be used directly with the utmost care.
873−category: Numeric, Algebra
874−exposed: True
875−exposed-modules:
876− GHC.Integer GHC.Integer.GMP.Internals GHC.Integer.Logarithms
877− GHC.Integer.Logarithms.Internals
878−hidden-modules: GHC.Integer.Type
879−import-dirs:
880−library-dirs:
881−dynamic-library-dirs:
882−data-dir:
883−hs-libraries: HSinteger-gmp-1.0.3.0
884−extra-libraries: gmp
885−include-dirs:
886−depends: ghc-prim-0.6.1
887−haddock-interfaces:
888−haddock-html:
889−---
890−name: libiserv
891−version: 8.10.5
892−visibility: public
893−id: libiserv-8.10.5
894−key: libiserv-8.10.5
895−license: BSD-3-Clause
896−copyright: XXX
897−maintainer: XXX
898−author: XXX
899−synopsis: Provides shared functionality between iserv and iserv-proxy
900−category: Development
901−exposed: True
902−exposed-modules: GHCi.Utils Lib
903−import-dirs:
904−library-dirs:
905−dynamic-library-dirs:
906−data-dir:
907−hs-libraries: HSlibiserv-8.10.5
908−depends:
909− base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
910− containers-0.6.4.1 deepseq-1.4.4.0 ghci-8.10.5 unix-2.7.2.2
911−haddock-interfaces:
912−haddock-html:
913−---
914−name: mtl
915−version: 2.2.2
916−visibility: public
917−id: mtl-2.2.2
918−key: mtl-2.2.2
919−license: BSD-3-Clause
920−maintainer: Edward Kmett <ekmett@gmail.com>
921−author: Andy Gill
922−homepage: http://github.com/haskell/mtl
923−synopsis: Monad classes, using functional dependencies
924−description:
925− Monad classes using functional dependencies, with instances
926− for various monad transformers, inspired by the paper
927− /Functional Programming with Overloading and Higher-Order Polymorphism/,
928− by Mark P Jones, in /Advanced School of Functional Programming/, 1995
929− (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
930−category: Control
931−exposed: True
932−exposed-modules:
933− Control.Monad.Cont Control.Monad.Cont.Class Control.Monad.Error
934− Control.Monad.Error.Class Control.Monad.Except
935− Control.Monad.Identity Control.Monad.List Control.Monad.RWS
936− Control.Monad.RWS.Class Control.Monad.RWS.Lazy
937− Control.Monad.RWS.Strict Control.Monad.Reader
938− Control.Monad.Reader.Class Control.Monad.State
939− Control.Monad.State.Class Control.Monad.State.Lazy
940− Control.Monad.State.Strict Control.Monad.Trans Control.Monad.Writer
941− Control.Monad.Writer.Class Control.Monad.Writer.Lazy
942− Control.Monad.Writer.Strict
943−import-dirs:
944−library-dirs:
945−dynamic-library-dirs:
946−data-dir:
947−hs-libraries: HSmtl-2.2.2
948−depends: base-4.14.2.0 transformers-0.5.6.2
949−haddock-interfaces:
950−haddock-html:
951−---
952−name: parsec
953−version: 3.1.14.0
954−visibility: public
955−id: parsec-3.1.14.0
956−key: parsec-3.1.14.0
957−license: BSD-3-Clause
958−maintainer: Herbert Valerio Riedel <hvr@gnu.org>
959−author:
960− Daan Leijen <daan@microsoft.com>, Paolo Martini <paolo@nemail.it>, Antoine Latter <aslatter@gmail.com>
961−homepage: https://github.com/haskell/parsec
962−synopsis: Monadic parser combinators
963−description:
964− Parsec is designed from scratch as an industrial-strength parser
965− library. It is simple, safe, well documented (on the package
966− homepage), has extensive libraries, good error messages,
967− and is fast. It is defined as a monad transformer that can be
968− stacked on arbitrary monads, and it is also parametric in the
969− input stream type.
970− The main entry point is the "Text.Parsec" module which provides
971− defaults for parsing 'Char'acter data.
972− The "Text.ParserCombinators.Parsec" module hierarchy contains
973− the legacy @parsec-2@ API and may be removed at some point in
974− the future.
975−category: Parsing
976−exposed: True
977−exposed-modules:
978− Text.Parsec Text.Parsec.ByteString Text.Parsec.ByteString.Lazy
979− Text.Parsec.Char Text.Parsec.Combinator Text.Parsec.Error
980− Text.Parsec.Expr Text.Parsec.Language Text.Parsec.Perm
981− Text.Parsec.Pos Text.Parsec.Prim Text.Parsec.String
982− Text.Parsec.Text Text.Parsec.Text.Lazy Text.Parsec.Token
983− Text.ParserCombinators.Parsec Text.ParserCombinators.Parsec.Char
984− Text.ParserCombinators.Parsec.Combinator
985− Text.ParserCombinators.Parsec.Error
986− Text.ParserCombinators.Parsec.Expr
987− Text.ParserCombinators.Parsec.Language
988− Text.ParserCombinators.Parsec.Perm
989− Text.ParserCombinators.Parsec.Pos
990− Text.ParserCombinators.Parsec.Prim
991− Text.ParserCombinators.Parsec.Token
992−import-dirs:
993−library-dirs:
994−dynamic-library-dirs:
995−data-dir:
996−hs-libraries: HSparsec-3.1.14.0
997−depends:
998− base-4.14.2.0 bytestring-0.10.12.0 mtl-2.2.2 text-1.2.4.1
999−haddock-interfaces:
1000−haddock-html:
1001−---
1002−name: pretty
1003−version: 1.1.3.6
1004−visibility: public
1005−id: pretty-1.1.3.6
1006−key: pretty-1.1.3.6
1007−license: BSD-3-Clause
1008−maintainer: David Terei <code@davidterei.com>
1009−stability: Stable
1010−homepage: http://github.com/haskell/pretty
1011−synopsis: Pretty-printing library
1012−description:
1013− This package contains a pretty-printing library, a set of API's
1014− that provides a way to easily print out text in a consistent
1015− format of your choosing. This is useful for compilers and related
1016− tools.
1017− This library was originally designed by John Hughes's and has since
1018− been heavily modified by Simon Peyton Jones.
1019−category: Text
1020−exposed: True
1021−exposed-modules:
1022− Text.PrettyPrint Text.PrettyPrint.Annotated
1023− Text.PrettyPrint.Annotated.HughesPJ
1024− Text.PrettyPrint.Annotated.HughesPJClass Text.PrettyPrint.HughesPJ
1025− Text.PrettyPrint.HughesPJClass
1026−import-dirs:
1027−library-dirs:
1028−dynamic-library-dirs:
1029−data-dir:
1030−hs-libraries: HSpretty-1.1.3.6
1031−depends: base-4.14.2.0 deepseq-1.4.4.0 ghc-prim-0.6.1
1032−haddock-interfaces:
1033−haddock-html:
1034−---
1035−name: process
1036−version: 1.6.9.0
1037−visibility: public
1038−id: process-1.6.9.0
1039−key: process-1.6.9.0
1040−license: BSD-3-Clause
1041−maintainer: libraries@haskell.org
1042−synopsis: Process libraries
1043−description:
1044− This package contains libraries for dealing with system processes.
1045− The typed-process package is a more recent take on a process API,
1046− which uses this package internally. It features better binary
1047− support, easier concurrency, and a more composable API. You can
1048− read more about it at
1049− <https://github.com/fpco/typed-process/#readme>.
1050−category: System
1051−exposed: True
1052−exposed-modules: System.Cmd System.Process System.Process.Internals
1053−hidden-modules: System.Process.Common System.Process.Posix
1054−import-dirs:
1055−library-dirs:
1056−dynamic-library-dirs:
1057−data-dir:
1058−hs-libraries: HSprocess-1.6.9.0
1059−include-dirs:
1060−includes: runProcess.h
1061−depends:
1062− base-4.14.2.0 deepseq-1.4.4.0 directory-1.3.6.0 filepath-1.4.2.1
1063− unix-2.7.2.2
1064−haddock-interfaces:
1065−haddock-html:
1066−---
1067−name: stm
1068−version: 2.5.0.1
1069−visibility: public
1070−id: stm-2.5.0.1
1071−key: stm-2.5.0.1
1072−license: BSD-3-Clause
1073−maintainer: libraries@haskell.org
1074−homepage: https://wiki.haskell.org/Software_transactional_memory
1075−synopsis: Software Transactional Memory
1076−description:
1077− Software Transactional Memory, or STM, is an abstraction for
1078− concurrent communication. The main benefits of STM are
1079− /composability/ and /modularity/. That is, using STM you can write
1080− concurrent abstractions that can be easily composed with any other
1081− abstraction built using STM, without exposing the details of how
1082− your abstraction ensures safety. This is typically not the case
1083− with other forms of concurrent communication, such as locks or
1084− 'MVar's.
1085−category: Concurrency
1086−exposed: True
1087−exposed-modules:
1088− Control.Concurrent.STM Control.Concurrent.STM.TArray
1089− Control.Concurrent.STM.TBQueue Control.Concurrent.STM.TChan
1090− Control.Concurrent.STM.TMVar Control.Concurrent.STM.TQueue
1091− Control.Concurrent.STM.TSem Control.Concurrent.STM.TVar
1092− Control.Monad.STM
1093−hidden-modules: Control.Sequential.STM
1094−import-dirs:
1095−library-dirs:
1096−dynamic-library-dirs:
1097−data-dir:
1098−hs-libraries: HSstm-2.5.0.1
1099−depends: array-0.5.4.0 base-4.14.2.0
1100−haddock-interfaces:
1101−haddock-html:
1102−---
1103−name: template-haskell
1104−version: 2.16.0.0
1105−visibility: public
1106−id: template-haskell-2.16.0.0
1107−key: template-haskell-2.16.0.0
1108−license: BSD-3-Clause
1109−maintainer: libraries@haskell.org
1110−synopsis: Support library for Template Haskell
1111−description:
1112− This package provides modules containing facilities for manipulating
1113− Haskell source code using Template Haskell.
1114− See <http://www.haskell.org/haskellwiki/Template_Haskell> for more
1115− information.
1116−category: Template Haskell
1117−exposed: True
1118−exposed-modules:
1119− Language.Haskell.TH Language.Haskell.TH.LanguageExtensions
1120− Language.Haskell.TH.Lib Language.Haskell.TH.Lib.Internal
1121− Language.Haskell.TH.Ppr Language.Haskell.TH.PprLib
1122− Language.Haskell.TH.Quote Language.Haskell.TH.Syntax
1123−hidden-modules: Language.Haskell.TH.Lib.Map
1124−import-dirs:
1125−library-dirs:
1126−dynamic-library-dirs:
1127−data-dir:
1128−hs-libraries: HStemplate-haskell-2.16.0.0
1129−depends:
1130− base-4.14.2.0 ghc-boot-th-8.10.5 ghc-prim-0.6.1 pretty-1.1.3.6
1131−haddock-interfaces:
1132−haddock-html:
1133−---
1134−name: text
1135−version: 1.2.4.1
1136−visibility: public
1137−id: text-1.2.4.1
1138−key: text-1.2.4.1
1139−license: BSD-2-Clause
1140−copyright: 2009-2011 Bryan O'Sullivan, 2008-2009 Tom Harper
1141−maintainer:
1142− Bryan O'Sullivan <bos@serpentine.com>, Herbert Valerio Riedel <hvr@gnu.org>
1143−author: Bryan O'Sullivan <bos@serpentine.com>
1144−homepage: https://github.com/haskell/text
1145−synopsis: An efficient packed Unicode text type.
1146−description:
1147− An efficient packed, immutable Unicode text type (both strict and
1148− lazy), with a powerful loop fusion optimization framework.
1149− The 'Text' type represents Unicode character strings, in a time and
1150− space-efficient manner. This package provides text processing
1151− capabilities that are optimized for performance critical use, both
1152− in terms of large data quantities and high speed.
1153− The 'Text' type provides character-encoding, type-safe case
1154− conversion via whole-string case conversion functions (see "Data.Text").
1155− It also provides a range of functions for converting 'Text' values to
1156− and from 'ByteStrings', using several standard encodings
1157− (see "Data.Text.Encoding").
1158− Efficient locale-sensitive support for text IO is also supported
1159− (see "Data.Text.IO").
1160− These modules are intended to be imported qualified, to avoid name
1161− clashes with Prelude functions, e.g.
1162− > import qualified Data.Text as T
1163− == ICU Support
1164− To use an extended and very rich family of functions for working
1165− with Unicode text (including normalization, regular expressions,
1166− non-standard encodings, text breaking, and locales), see
1167− the [text-icu package](https://hackage.haskell.org/package/text-icu)
1168− based on the well-respected and liberally
1169− licensed [ICU library](http://site.icu-project.org/).
1170− == Internal Representation: UTF-16 vs. UTF-8
1171− Currently the @text@ library uses UTF-16 as its internal representation
1172− which is [neither a fixed-width nor always the most dense representation](http://utf8everywhere.org/)
1173− for Unicode text. We're currently investigating the feasibility
1174− of [changing Text's internal representation to UTF-8](https://github.com/text-utf8)
1175− and if you need such a 'Text' type right now you might be interested in using the spin-off
1176− packages <https://hackage.haskell.org/package/text-utf8 text-utf8> and
1177− <https://hackage.haskell.org/package/text-short text-short>.
1178−category: Data, Text
1179−exposed: True
1180−exposed-modules:
1181− Data.Text Data.Text.Array Data.Text.Encoding
1182− Data.Text.Encoding.Error Data.Text.Foreign Data.Text.IO
1183− Data.Text.Internal Data.Text.Internal.Builder
1184− Data.Text.Internal.Builder.Functions
1185− Data.Text.Internal.Builder.Int.Digits
1186− Data.Text.Internal.Builder.RealFloat.Functions
1187− Data.Text.Internal.ByteStringCompat
1188− Data.Text.Internal.Encoding.Fusion
1189− Data.Text.Internal.Encoding.Fusion.Common
1190− Data.Text.Internal.Encoding.Utf16 Data.Text.Internal.Encoding.Utf32
1191− Data.Text.Internal.Encoding.Utf8 Data.Text.Internal.Functions
1192− Data.Text.Internal.Fusion Data.Text.Internal.Fusion.CaseMapping
1193− Data.Text.Internal.Fusion.Common Data.Text.Internal.Fusion.Size
1194− Data.Text.Internal.Fusion.Types Data.Text.Internal.IO
1195− Data.Text.Internal.Lazy Data.Text.Internal.Lazy.Encoding.Fusion
1196− Data.Text.Internal.Lazy.Fusion Data.Text.Internal.Lazy.Search
1197− Data.Text.Internal.Private Data.Text.Internal.Read
1198− Data.Text.Internal.Search Data.Text.Internal.Unsafe
1199− Data.Text.Internal.Unsafe.Char Data.Text.Internal.Unsafe.Shift
1200− Data.Text.Lazy Data.Text.Lazy.Builder Data.Text.Lazy.Builder.Int
1201− Data.Text.Lazy.Builder.RealFloat Data.Text.Lazy.Encoding
1202− Data.Text.Lazy.IO Data.Text.Lazy.Internal Data.Text.Lazy.Read
1203− Data.Text.Read Data.Text.Unsafe
1204−hidden-modules: Data.Text.Show
1205−import-dirs:
1206−library-dirs:
1207−dynamic-library-dirs:
1208−data-dir:
1209−hs-libraries: HStext-1.2.4.1
1210−depends:
1211− array-0.5.4.0 base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
1212− deepseq-1.4.4.0 ghc-prim-0.6.1 integer-gmp-1.0.3.0
1213− template-haskell-2.16.0.0
1214−haddock-interfaces:
1215−haddock-html:
1216−---
1217−name: time
1218−version: 1.9.3
1219−visibility: public
1220−id: time-1.9.3
1221−key: time-1.9.3
1222−license: BSD-3-Clause
1223−maintainer: <ashley@semantic.org>
1224−author: Ashley Yakeley
1225−stability: stable
1226−homepage: https://github.com/haskell/time
1227−synopsis: A time library
1228−description: Time, clocks and calendars
1229−category: Time
1230−exposed: True
1231−exposed-modules:
1232− Data.Time Data.Time.Calendar Data.Time.Calendar.Easter
1233− Data.Time.Calendar.Julian Data.Time.Calendar.MonthDay
1234− Data.Time.Calendar.OrdinalDate Data.Time.Calendar.WeekDate
1235− Data.Time.Clock Data.Time.Clock.POSIX Data.Time.Clock.System
1236− Data.Time.Clock.TAI Data.Time.Format Data.Time.Format.ISO8601
1237− Data.Time.Format.Internal Data.Time.LocalTime
1238−hidden-modules:
1239− Data.Format Data.Time.Calendar.Private Data.Time.Calendar.Days
1240− Data.Time.Calendar.Gregorian Data.Time.Calendar.CalendarDiffDays
1241− Data.Time.Calendar.Week Data.Time.Calendar.JulianYearDay
1242− Data.Time.Clock.Internal.DiffTime
1243− Data.Time.Clock.Internal.AbsoluteTime
1244− Data.Time.Clock.Internal.NominalDiffTime
1245− Data.Time.Clock.Internal.POSIXTime
1246− Data.Time.Clock.Internal.UniversalTime
1247− Data.Time.Clock.Internal.SystemTime
1248− Data.Time.Clock.Internal.UTCTime Data.Time.Clock.Internal.CTimeval
1249− Data.Time.Clock.Internal.CTimespec Data.Time.Clock.Internal.UTCDiff
1250− Data.Time.LocalTime.Internal.TimeZone
1251− Data.Time.LocalTime.Internal.TimeOfDay
1252− Data.Time.LocalTime.Internal.CalendarDiffTime
1253− Data.Time.LocalTime.Internal.LocalTime
1254− Data.Time.LocalTime.Internal.ZonedTime Data.Time.Format.Parse
1255− Data.Time.Format.Locale Data.Time.Format.Format.Class
1256− Data.Time.Format.Format.Instances Data.Time.Format.Parse.Class
1257− Data.Time.Format.Parse.Instances
1258−import-dirs:
1259−library-dirs:
1260−dynamic-library-dirs:
1261−data-dir:
1262−hs-libraries: HStime-1.9.3
1263−include-dirs:
1264−depends: base-4.14.2.0 deepseq-1.4.4.0
1265−haddock-interfaces:
1266−haddock-html:
1267−---
1268−name: transformers
1269−version: 0.5.6.2
1270−visibility: public
1271−id: transformers-0.5.6.2
1272−key: transformers-0.5.6.2
1273−license: BSD-3-Clause
1274−maintainer: Ross Paterson <R.Paterson@city.ac.uk>
1275−author: Andy Gill, Ross Paterson
1276−synopsis: Concrete functor and monad transformers
1277−description:
1278− A portable library of functor and monad transformers, inspired by
1279− the paper
1280− * \"Functional Programming with Overloading and Higher-Order
1281− Polymorphism\", by Mark P Jones,
1282− in /Advanced School of Functional Programming/, 1995
1283− (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
1284− This package contains:
1285− * the monad transformer class (in "Control.Monad.Trans.Class")
1286− * concrete functor and monad transformers, each with associated
1287− operations and functions to lift operations associated with other
1288− transformers.
1289− The package can be used on its own in portable Haskell code, in
1290− which case operations need to be manually lifted through transformer
1291− stacks (see "Control.Monad.Trans.Class" for some examples).
1292− Alternatively, it can be used with the non-portable monad classes in
1293− the @mtl@ or @monads-tf@ packages, which automatically lift operations
1294− introduced by monad transformers through other transformers.
1295−category: Control
1296−exposed: True
1297−exposed-modules:
1298− Control.Applicative.Backwards Control.Applicative.Lift
1299− Control.Monad.Signatures Control.Monad.Trans.Accum
1300− Control.Monad.Trans.Class Control.Monad.Trans.Cont
1301− Control.Monad.Trans.Error Control.Monad.Trans.Except
1302− Control.Monad.Trans.Identity Control.Monad.Trans.List
1303− Control.Monad.Trans.Maybe Control.Monad.Trans.RWS
1304− Control.Monad.Trans.RWS.CPS Control.Monad.Trans.RWS.Lazy
1305− Control.Monad.Trans.RWS.Strict Control.Monad.Trans.Reader
1306− Control.Monad.Trans.Select Control.Monad.Trans.State
1307− Control.Monad.Trans.State.Lazy Control.Monad.Trans.State.Strict
1308− Control.Monad.Trans.Writer Control.Monad.Trans.Writer.CPS
1309− Control.Monad.Trans.Writer.Lazy Control.Monad.Trans.Writer.Strict
1310− Data.Functor.Constant Data.Functor.Reverse
1311−import-dirs:
1312−library-dirs:
1313−dynamic-library-dirs:
1314−data-dir:
1315−hs-libraries: HStransformers-0.5.6.2
1316−depends: base-4.14.2.0
1317−haddock-interfaces:
1318−haddock-html:
1319−---
1320−name: unix
1321−version: 2.7.2.2
1322−visibility: public
1323−id: unix-2.7.2.2
1324−key: unix-2.7.2.2
1325−license: BSD-3-Clause
1326−maintainer: libraries@haskell.org
1327−homepage: https://github.com/haskell/unix
1328−synopsis: POSIX functionality
1329−description:
1330− This package gives you access to the set of operating system
1331− services standardised by
1332− <http://pubs.opengroup.org/onlinepubs/9699919799/ POSIX.1-2008>
1333− (or the IEEE Portable Operating System Interface for Computing
1334− Environments - IEEE Std. 1003.1).
1335− The package is not supported under Windows.
1336−category: System
1337−exposed: True
1338−exposed-modules:
1339− System.Posix System.Posix.ByteString
1340− System.Posix.ByteString.FilePath System.Posix.Directory
1341− System.Posix.Directory.ByteString System.Posix.DynamicLinker
1342− System.Posix.DynamicLinker.ByteString
1343− System.Posix.DynamicLinker.Module
1344− System.Posix.DynamicLinker.Module.ByteString
1345− System.Posix.DynamicLinker.Prim System.Posix.Env
1346− System.Posix.Env.ByteString System.Posix.Error System.Posix.Fcntl
1347− System.Posix.Files System.Posix.Files.ByteString System.Posix.IO
1348− System.Posix.IO.ByteString System.Posix.Process
1349− System.Posix.Process.ByteString System.Posix.Process.Internals
1350− System.Posix.Resource System.Posix.Semaphore System.Posix.SharedMem
1351− System.Posix.Signals System.Posix.Signals.Exts System.Posix.Temp
1352− System.Posix.Temp.ByteString System.Posix.Terminal
1353− System.Posix.Terminal.ByteString System.Posix.Time
1354− System.Posix.Unistd System.Posix.User
1355−hidden-modules:
1356− System.Posix.Directory.Common System.Posix.DynamicLinker.Common
1357− System.Posix.Files.Common System.Posix.IO.Common
1358− System.Posix.Process.Common System.Posix.Terminal.Common
1359−import-dirs:
1360−library-dirs:
1361−dynamic-library-dirs:
1362−data-dir:
1363−hs-libraries: HSunix-2.7.2.2
1364−extra-libraries: rt util dl pthread
1365−include-dirs:
1366−includes: HsUnix.h execvpe.h
1367−depends: base-4.14.2.0 bytestring-0.10.12.0 time-1.9.3
1368−haddock-interfaces:
1369−haddock-html:
1370−---
1371−name: rts
1372−version: 1.0.1
1373−visibility: public
1374−id: rts
1375−key: rts
1376−license: BSD-3-Clause
1377−maintainer: glasgow-haskell-users@haskell.org
1378−exposed: True
1379−library-dirs:
1380−hs-libraries: HSrts
1381−extra-libraries: m rt dl ffi numa pthread
1382−include-dirs:
1383−includes: Stg.h
1384−ld-options:
1385− "-Wl,-u,base_GHCziTopHandler_runIO_closure"
1386− "-Wl,-u,base_GHCziTopHandler_runNonIO_closure"
1387− "-Wl,-u,ghczmprim_GHCziTuple_Z0T_closure"
1388− "-Wl,-u,ghczmprim_GHCziTypes_True_closure"
1389− "-Wl,-u,ghczmprim_GHCziTypes_False_closure"
1390− "-Wl,-u,base_GHCziPack_unpackCString_closure"
1391− "-Wl,-u,base_GHCziWeak_runFinalizzerBatch_closure"
1392− "-Wl,-u,base_GHCziIOziException_stackOverflow_closure"
1393− "-Wl,-u,base_GHCziIOziException_heapOverflow_closure"
1394− "-Wl,-u,base_GHCziIOziException_allocationLimitExceeded_closure"
1395− "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnMVar_closure"
1396− "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnSTM_closure"
1397− "-Wl,-u,base_GHCziIOziException_cannotCompactFunction_closure"
1398− "-Wl,-u,base_GHCziIOziException_cannotCompactPinned_closure"
1399− "-Wl,-u,base_GHCziIOziException_cannotCompactMutable_closure"
1400− "-Wl,-u,base_ControlziExceptionziBase_absentSumFieldError_closure"
1401− "-Wl,-u,base_ControlziExceptionziBase_nonTermination_closure"
1402− "-Wl,-u,base_ControlziExceptionziBase_nestedAtomically_closure"
1403− "-Wl,-u,base_GHCziEventziThread_blockedOnBadFD_closure"
1404− "-Wl,-u,base_GHCziConcziSync_runSparks_closure"
1405− "-Wl,-u,base_GHCziConcziIO_ensureIOManagerIsRunning_closure"
1406− "-Wl,-u,base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure"
1407− "-Wl,-u,base_GHCziConcziSignal_runHandlersPtr_closure"
1408− "-Wl,-u,base_GHCziTopHandler_flushStdHandles_closure"
1409− "-Wl,-u,base_GHCziTopHandler_runMainIO_closure"
1410− "-Wl,-u,ghczmprim_GHCziTypes_Czh_con_info"
1411− "-Wl,-u,ghczmprim_GHCziTypes_Izh_con_info"
1412− "-Wl,-u,ghczmprim_GHCziTypes_Fzh_con_info"
1413− "-Wl,-u,ghczmprim_GHCziTypes_Dzh_con_info"
1414− "-Wl,-u,ghczmprim_GHCziTypes_Wzh_con_info"
1415− "-Wl,-u,base_GHCziPtr_Ptr_con_info"
1416− "-Wl,-u,base_GHCziPtr_FunPtr_con_info"
1417− "-Wl,-u,base_GHCziInt_I8zh_con_info"
1418− "-Wl,-u,base_GHCziInt_I16zh_con_info"
1419− "-Wl,-u,base_GHCziInt_I32zh_con_info"
1420− "-Wl,-u,base_GHCziInt_I64zh_con_info"
1421− "-Wl,-u,base_GHCziWord_W8zh_con_info"
1422− "-Wl,-u,base_GHCziWord_W16zh_con_info"
1423− "-Wl,-u,base_GHCziWord_W32zh_con_info"
1424− "-Wl,-u,base_GHCziWord_W64zh_con_info"
1425− "-Wl,-u,base_GHCziStable_StablePtr_con_info"
1426− "-Wl,-u,hs_atomic_add8" "-Wl,-u,hs_atomic_add16"
1427− "-Wl,-u,hs_atomic_add32" "-Wl,-u,hs_atomic_add64"
1428− "-Wl,-u,hs_atomic_sub8" "-Wl,-u,hs_atomic_sub16"
1429− "-Wl,-u,hs_atomic_sub32" "-Wl,-u,hs_atomic_sub64"
1430− "-Wl,-u,hs_atomic_and8" "-Wl,-u,hs_atomic_and16"
1431− "-Wl,-u,hs_atomic_and32" "-Wl,-u,hs_atomic_and64"
1432− "-Wl,-u,hs_atomic_nand8" "-Wl,-u,hs_atomic_nand16"
1433− "-Wl,-u,hs_atomic_nand32" "-Wl,-u,hs_atomic_nand64"
1434− "-Wl,-u,hs_atomic_or8" "-Wl,-u,hs_atomic_or16"
1435− "-Wl,-u,hs_atomic_or32" "-Wl,-u,hs_atomic_or64"
1436− "-Wl,-u,hs_atomic_xor8" "-Wl,-u,hs_atomic_xor16"
1437− "-Wl,-u,hs_atomic_xor32" "-Wl,-u,hs_atomic_xor64"
1438− "-Wl,-u,hs_cmpxchg8" "-Wl,-u,hs_cmpxchg16" "-Wl,-u,hs_cmpxchg32"
1439− "-Wl,-u,hs_cmpxchg64" "-Wl,-u,hs_atomicread8"
1440− "-Wl,-u,hs_atomicread16" "-Wl,-u,hs_atomicread32"
1441− "-Wl,-u,hs_atomicread64" "-Wl,-u,hs_atomicwrite8"
1442− "-Wl,-u,hs_atomicwrite16" "-Wl,-u,hs_atomicwrite32"
1443− "-Wl,-u,hs_atomicwrite64"
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc-pkg/versiondeleted−1
@@ -1 +0,0 @@
1−GHC package manager version 8.10.5
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc/infodeleted−69
@@ -1,69 +0,0 @@
1− [("Project name","The Glorious Glasgow Haskell Compilation System")
2− ,("GCC extra via C opts","")
3− ,("C compiler flags","")
4− ,("C++ compiler flags","")
5− ,("C compiler link flags","-Wl,-z,noexecstack")
6− ,("C compiler supports -no-pie","YES")
7− ,("Haskell CPP flags","-E -undef -traditional")
8− ,("ld flags","-z noexecstack")
9− ,("ld supports compact unwind","YES")
10− ,("ld supports build-id","YES")
11− ,("ld supports filelist","NO")
12− ,("ld is GNU ld","YES")
13− ,("Merge objects flags","-r")
14− ,("ar flags","q")
15− ,("ar supports at file","YES")
16− ,("otool command","otool")
17− ,("install_name_tool command","install_name_tool")
18− ,("touch command","touch")
19− ,("dllwrap command","/bin/false")
20− ,("windres command","/bin/false")
21− ,("libtool command","libtool")
22− ,("cross compiling","YES")
23− ,("target platform string","aarch64-unknown-linux")
24− ,("target os","OSLinux")
25− ,("target arch","ArchAArch64")
26− ,("target word size","8")
27− ,("target has GNU nonexec stack","YES")
28− ,("target has .ident directive","YES")
29− ,("target has subsections via symbols","NO")
30− ,("target has RTS linker","YES")
31− ,("Unregisterised","NO")
32− ,("LLVM target","aarch64-unknown-linux")
33− ,("LLVM llc command","llc")
34− ,("LLVM opt command","opt")
35− ,("LLVM clang command","clang")
36− ,("integer library","integer-gmp")
37− ,("Use interpreter","YES")
38− ,("Use native code generator","NO")
39− ,("Support SMP","YES")
40− ,("RTS ways","l debug thr thr_debug thr_l thr_p thr_debug_p debug_p")
41− ,("Tables next to code","YES")
42− ,("Leading underscore","NO")
43− ,("Use LibFFI","YES")
44− ,("Use Threads","YES")
45− ,("Use Debugging","NO")
46− ,("RTS expects libdw","NO")
47− ,("Project version","8.10.5")
48− ,("Project Git commit id","a43a5650f51fdc04d757abc3d86b0a23ec518259")
49− ,("Booter version","8.8.4")
50− ,("Stage","1")
51− ,("Build platform","x86_64-unknown-linux")
52− ,("Host platform","x86_64-unknown-linux")
53− ,("Target platform","aarch64-unknown-linux")
54− ,("Have interpreter","YES")
55− ,("Object splitting supported","NO")
56− ,("Have native code generator","NO")
57− ,("Support dynamic-too","YES")
58− ,("Support parallel --make","YES")
59− ,("Support reexported-modules","YES")
60− ,("Support thinning and renaming package flags","YES")
61− ,("Support Backpack","YES")
62− ,("Requires unified installed package IDs","YES")
63− ,("Uses package keys","YES")
64− ,("Uses unit IDs","YES")
65− ,("Dynamic by default","NO")
66− ,("GHC Dynamic","NO")
67− ,("GHC Profiled","NO")
68− ,("Debug on","NO")
69− ]
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc/numeric-versiondeleted−1
@@ -1 +0,0 @@
1−8.10.5
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc/supported-languagesdeleted−255
@@ -1,255 +0,0 @@
1−Haskell98
2−Haskell2010
3−Unsafe
4−Trustworthy
5−Safe
6−AllowAmbiguousTypes
7−NoAllowAmbiguousTypes
8−AlternativeLayoutRule
9−NoAlternativeLayoutRule
10−AlternativeLayoutRuleTransitional
11−NoAlternativeLayoutRuleTransitional
12−Arrows
13−NoArrows
14−AutoDeriveTypeable
15−NoAutoDeriveTypeable
16−BangPatterns
17−NoBangPatterns
18−BinaryLiterals
19−NoBinaryLiterals
20−CApiFFI
21−NoCApiFFI
22−CPP
23−NoCPP
24−CUSKs
25−NoCUSKs
26−ConstrainedClassMethods
27−NoConstrainedClassMethods
28−ConstraintKinds
29−NoConstraintKinds
30−DataKinds
31−NoDataKinds
32−DatatypeContexts
33−NoDatatypeContexts
34−DefaultSignatures
35−NoDefaultSignatures
36−DeriveAnyClass
37−NoDeriveAnyClass
38−DeriveDataTypeable
39−NoDeriveDataTypeable
40−DeriveFoldable
41−NoDeriveFoldable
42−DeriveFunctor
43−NoDeriveFunctor
44−DeriveGeneric
45−NoDeriveGeneric
46−DeriveLift
47−NoDeriveLift
48−DeriveTraversable
49−NoDeriveTraversable
50−DerivingStrategies
51−NoDerivingStrategies
52−DerivingVia
53−NoDerivingVia
54−DisambiguateRecordFields
55−NoDisambiguateRecordFields
56−DoAndIfThenElse
57−NoDoAndIfThenElse
58−BlockArguments
59−NoBlockArguments
60−DoRec
61−NoDoRec
62−DuplicateRecordFields
63−NoDuplicateRecordFields
64−EmptyCase
65−NoEmptyCase
66−EmptyDataDecls
67−NoEmptyDataDecls
68−EmptyDataDeriving
69−NoEmptyDataDeriving
70−ExistentialQuantification
71−NoExistentialQuantification
72−ExplicitForAll
73−NoExplicitForAll
74−ExplicitNamespaces
75−NoExplicitNamespaces
76−ExtendedDefaultRules
77−NoExtendedDefaultRules
78−FlexibleContexts
79−NoFlexibleContexts
80−FlexibleInstances
81−NoFlexibleInstances
82−ForeignFunctionInterface
83−NoForeignFunctionInterface
84−FunctionalDependencies
85−NoFunctionalDependencies
86−GADTSyntax
87−NoGADTSyntax
88−GADTs
89−NoGADTs
90−GHCForeignImportPrim
91−NoGHCForeignImportPrim
92−GeneralizedNewtypeDeriving
93−NoGeneralizedNewtypeDeriving
94−GeneralisedNewtypeDeriving
95−NoGeneralisedNewtypeDeriving
96−ImplicitParams
97−NoImplicitParams
98−ImplicitPrelude
99−NoImplicitPrelude
100−ImportQualifiedPost
101−NoImportQualifiedPost
102−ImpredicativeTypes
103−NoImpredicativeTypes
104−IncoherentInstances
105−NoIncoherentInstances
106−TypeFamilyDependencies
107−NoTypeFamilyDependencies
108−InstanceSigs
109−NoInstanceSigs
110−ApplicativeDo
111−NoApplicativeDo
112−InterruptibleFFI
113−NoInterruptibleFFI
114−JavaScriptFFI
115−NoJavaScriptFFI
116−KindSignatures
117−NoKindSignatures
118−LambdaCase
119−NoLambdaCase
120−LiberalTypeSynonyms
121−NoLiberalTypeSynonyms
122−MagicHash
123−NoMagicHash
124−MonadComprehensions
125−NoMonadComprehensions
126−MonadFailDesugaring
127−NoMonadFailDesugaring
128−MonoLocalBinds
129−NoMonoLocalBinds
130−MonoPatBinds
131−NoMonoPatBinds
132−MonomorphismRestriction
133−NoMonomorphismRestriction
134−MultiParamTypeClasses
135−NoMultiParamTypeClasses
136−MultiWayIf
137−NoMultiWayIf
138−NumericUnderscores
139−NoNumericUnderscores
140−NPlusKPatterns
141−NoNPlusKPatterns
142−NamedFieldPuns
143−NoNamedFieldPuns
144−NamedWildCards
145−NoNamedWildCards
146−NegativeLiterals
147−NoNegativeLiterals
148−HexFloatLiterals
149−NoHexFloatLiterals
150−NondecreasingIndentation
151−NoNondecreasingIndentation
152−NullaryTypeClasses
153−NoNullaryTypeClasses
154−NumDecimals
155−NoNumDecimals
156−OverlappingInstances
157−NoOverlappingInstances
158−OverloadedLabels
159−NoOverloadedLabels
160−OverloadedLists
161−NoOverloadedLists
162−OverloadedStrings
163−NoOverloadedStrings
164−PackageImports
165−NoPackageImports
166−ParallelArrays
167−NoParallelArrays
168−ParallelListComp
169−NoParallelListComp
170−PartialTypeSignatures
171−NoPartialTypeSignatures
172−PatternGuards
173−NoPatternGuards
174−PatternSignatures
175−NoPatternSignatures
176−PatternSynonyms
177−NoPatternSynonyms
178−PolyKinds
179−NoPolyKinds
180−PolymorphicComponents
181−NoPolymorphicComponents
182−QuantifiedConstraints
183−NoQuantifiedConstraints
184−PostfixOperators
185−NoPostfixOperators
186−QuasiQuotes
187−NoQuasiQuotes
188−Rank2Types
189−NoRank2Types
190−RankNTypes
191−NoRankNTypes
192−RebindableSyntax
193−NoRebindableSyntax
194−RecordPuns
195−NoRecordPuns
196−RecordWildCards
197−NoRecordWildCards
198−RecursiveDo
199−NoRecursiveDo
200−RelaxedLayout
201−NoRelaxedLayout
202−RelaxedPolyRec
203−NoRelaxedPolyRec
204−RoleAnnotations
205−NoRoleAnnotations
206−ScopedTypeVariables
207−NoScopedTypeVariables
208−StandaloneDeriving
209−NoStandaloneDeriving
210−StarIsType
211−NoStarIsType
212−StaticPointers
213−NoStaticPointers
214−Strict
215−NoStrict
216−StrictData
217−NoStrictData
218−TemplateHaskell
219−NoTemplateHaskell
220−TemplateHaskellQuotes
221−NoTemplateHaskellQuotes
222−StandaloneKindSignatures
223−NoStandaloneKindSignatures
224−TraditionalRecordSyntax
225−NoTraditionalRecordSyntax
226−TransformListComp
227−NoTransformListComp
228−TupleSections
229−NoTupleSections
230−TypeApplications
231−NoTypeApplications
232−TypeInType
233−NoTypeInType
234−TypeFamilies
235−NoTypeFamilies
236−TypeOperators
237−NoTypeOperators
238−TypeSynonymInstances
239−NoTypeSynonymInstances
240−UnboxedTuples
241−NoUnboxedTuples
242−UnboxedSums
243−NoUnboxedSums
244−UndecidableInstances
245−NoUndecidableInstances
246−UndecidableSuperClasses
247−NoUndecidableSuperClasses
248−UnicodeSyntax
249−NoUnicodeSyntax
250−UnliftedFFITypes
251−NoUnliftedFFITypes
252−UnliftedNewtypes
253−NoUnliftedNewtypes
254−ViewPatterns
255−NoViewPatterns
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc/versiondeleted−1
@@ -1 +0,0 @@
1−The Glorious Glasgow Haskell Compilation System, version 8.10.5
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc-pkg/dump-globaldeleted−1443

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc/infodeleted−67

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc-pkg/dump-globaldeleted−1443

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc/infodeleted−67

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.8.4-x86_64-linux/ghc/info+3−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc-pkg/dump-globaldeleted−1485

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc/infodeleted−70

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.0.1-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc-pkg/dump-globaldeleted−1512

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/infodeleted−66

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/supported-languagesdeleted−268

This diff is too big to show here.

materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.1-x86_64-darwin/ghc/info+1−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.1-x86_64-linux/ghc/info+1−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.2-x86_64-darwin/ghc/info+1−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.2-x86_64-linux/ghc/info+1−7

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc-pkg/dump-globaldeleted−1638

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc-pkg/dump-globaldeleted−1639

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc/infodeleted−75

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc-pkg/dump-globaldeleted−1638

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc/infodeleted−75

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc-pkg/dump-globaldeleted−1639

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc/infodeleted−75

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc-pkg/dump-globaldeleted−1642

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/dump-globaldeleted−1643

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc/infodeleted−75

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc-pkg/dump-globaldeleted−1638

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc/infodeleted−75

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc-pkg/dump-globaldeleted−1639

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc/infodeleted−75

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc-pkg/dump-globaldeleted−1638

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/infodeleted−75

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc-pkg/dump-globaldeleted−1639

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/infodeleted−75

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc-pkg/dump-globaldeleted−1639

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/infodeleted−73

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc-pkg/dump-globaldeleted−1638

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/infodeleted−73

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc-pkg/dump-globaldeleted−1639

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/infodeleted−75

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc-pkg/dump-globaldeleted−1638

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/infodeleted−75

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.6.5-x86_64-darwin/ghc/info−5

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.6.5-x86_64-linux/ghc/info−5

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.2-x86_64-darwin/ghc-pkg/dump-global+3−6

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.2-x86_64-darwin/ghc/info+1−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.2-x86_64-linux/ghc-pkg/dump-global+2−4

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.3-aarch64-linux/ghc/info+3−5

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.3-aarch64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.3-x86_64-darwin/ghc/info−5

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.3-x86_64-linux/ghc/info−5

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc-pkg/dump-globaldeleted−1592

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/infodeleted−60

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/supported-languagesdeleted−247

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.4-x86_64-darwin/ghc/info−5

This diff is too big to show here.

materialized/dummy-ghc/ghc-8.8.4-x86_64-linux/ghc/info−5

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc-pkg/dump-globaldeleted−1759

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/infodeleted−74

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc-pkg/dump-globaldeleted−1760

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/infodeleted−74

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc-pkg/dump-globaldeleted−1759

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc/infodeleted−76

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc-pkg/dump-globaldeleted−1760

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc/infodeleted−76

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc-pkg/dump-globaldeleted−1766

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/infodeleted−74

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc-pkg/dump-globaldeleted−1767

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/infodeleted−74

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc-pkg/dump-globaldeleted−1766

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/infodeleted−76

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc-pkg/dump-globaldeleted−1767

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/infodeleted−76

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc-pkg/dump-globaldeleted−1826

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/infodeleted−73

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc-pkg/dump-globaldeleted−1826

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/infodeleted−73

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc-pkg/dump-globaldeleted−1826

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/infodeleted−73

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc-pkg/dump-globaldeleted−1826

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/infodeleted−73

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc-pkg/dump-globaldeleted−1834

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc-pkg/dump-globaldeleted−1834

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc-pkg/dump-globaldeleted−1834

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc-pkg/dump-globaldeleted−1834

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc-pkg/dump-globaldeleted−1834

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc-pkg/dump-globaldeleted−1834

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc-pkg/dump-globaldeleted−1834

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc-pkg/dump-globaldeleted−1834

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc-pkg/dump-globaldeleted−1834

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/supported-languagesdeleted−268

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc-pkg/dump-globaldeleted−1833

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/supported-languagesdeleted−268

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc-pkg/dump-globaldeleted−1834

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/supported-languagesdeleted−268

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc-pkg/dump-globaldeleted−1833

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/infodeleted−72

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/supported-languagesdeleted−268

This diff is too big to show here.

materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc-pkg/dump-globaldeleted−1328

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/infodeleted−71

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc-pkg/dump-globaldeleted−1328

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/infodeleted−71

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.4-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc-pkg/dump-globaldeleted−1330

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/infodeleted−71

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc-pkg/dump-globaldeleted−1330

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/infodeleted−71

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.5-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc-pkg/dump-globaldeleted−1330

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/infodeleted−71

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc-pkg/dump-globaldeleted−1330

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/infodeleted−71

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.6-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc-pkg/dump-globaldeleted−1330

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/infodeleted−71

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc-pkg/dump-globaldeleted−1330

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/infodeleted−71

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.10.7-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc-pkg/dump-globaldeleted−1183

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc/infodeleted−58

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-darwin/ghc/supported-languagesdeleted−247

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc-pkg/dump-globaldeleted−1122

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/infodeleted−59

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/supported-languagesdeleted−247

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.6.5-x86_64-linux/ghc/version+1−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc-pkg/dump-globaldeleted−1321

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc/infodeleted−59

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-darwin/ghc/supported-languagesdeleted−247

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc-pkg/dump-globaldeleted−1321

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/infodeleted−59

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/supported-languagesdeleted−247

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.3-x86_64-linux/ghc/version+1−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc-pkg/dump-globaldeleted−1321

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc-pkg/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/infodeleted−59

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/numeric-ghc-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/numeric-ghcjs-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/supported-languagesdeleted−247

This diff is too big to show here.

materialized/dummy-ghc/js-unknown-ghcjs-js-unknown-ghcjs-ghc-8.8.4-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.1-x86_64-linux/ghc/info+1−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.2-x86_64-linux/ghc/info+1−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc-pkg/dump-globaldeleted−1603

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.3-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc-pkg/dump-globaldeleted−1638

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/dump-globaldeleted−1607

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.4.20210212-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc-pkg/dump-globaldeleted−1638

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc-pkg/dump-globaldeleted−1638

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc-pkg/dump-globaldeleted−1638

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.6.5-x86_64-linux/ghc-pkg/dump-global+2−31

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc-pkg/dump-globaldeleted−1590

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc/infodeleted−57

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc/supported-languagesdeleted−247

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.2-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.3-x86_64-linux/ghc-pkg/dump-global+3−37

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.8.4-x86_64-linux/ghc-pkg/dump-global+3−37

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc-pkg/dump-globaldeleted−1722

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc/infodeleted−70

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.1-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc-pkg/dump-globaldeleted−1729

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc/infodeleted−70

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc-pkg/dump-globaldeleted−1788

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc/infodeleted−67

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc-pkg/dump-globaldeleted−1796

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc/infodeleted−66

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc-pkg/dump-globaldeleted−1796

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc/infodeleted−66

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc-pkg/dump-globaldeleted−1796

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc/infodeleted−66

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc/supported-languagesdeleted−268

This diff is too big to show here.

materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.4-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc-pkg/dump-globaldeleted−1437

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc/infodeleted−67

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.2-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc-pkg/dump-globaldeleted−1449

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.3-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc-pkg/dump-globaldeleted−1449

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc-pkg/dump-globaldeleted−1449

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/dump-globaldeleted−1451

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.4.20210212-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc-pkg/dump-globaldeleted−1449

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc-pkg/dump-globaldeleted−1449

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.5-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc-pkg/dump-globaldeleted−1450

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc-pkg/dump-globaldeleted−1450

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.6-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc-pkg/dump-globaldeleted−1450

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc-pkg/dump-globaldeleted−1450

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc/infodeleted−69

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc/supported-languagesdeleted−255

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.10.7-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc-pkg/dump-globaldeleted−1411

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc/infodeleted−57

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc/supported-languagesdeleted−247

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc-pkg/dump-globaldeleted−1411

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc/infodeleted−57

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc/supported-languagesdeleted−247

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.2-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc-pkg/dump-globaldeleted−1411

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc/infodeleted−57

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc/supported-languagesdeleted−247

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.3-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc-pkg/dump-globaldeleted−1411

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc/infodeleted−57

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc/supported-languagesdeleted−247

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-8.8.4-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc-pkg/dump-globaldeleted−1504

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc/infodeleted−70

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc-pkg/dump-globaldeleted−1504

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc/infodeleted−70

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.1-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc-pkg/dump-globaldeleted−1512

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc/infodeleted−70

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc-pkg/dump-globaldeleted−1512

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc/infodeleted−70

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc/supported-languagesdeleted−261

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.0.2-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc-pkg/dump-globaldeleted−1522

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc/infodeleted−67

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc-pkg/dump-globaldeleted−1522

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc/infodeleted−67

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.1-x86_64-linux/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc-pkg/dump-globaldeleted−1533

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc-pkg/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc/infodeleted−66

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc/numeric-versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc/supported-languagesdeleted−266

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-darwin/ghc/versiondeleted−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc-pkg/dump-global−1533

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc-pkg/version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc/info−66

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc/numeric-version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc/supported-languages−266

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.2-x86_64-linux/ghc/version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc-pkg/dump-global−1533

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc-pkg/version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc/info−66

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc/numeric-version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc/supported-languages−266

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-darwin/ghc/version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc-pkg/dump-global−1533

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc-pkg/version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc/info−66

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc/numeric-version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc/supported-languages−266

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.3-x86_64-linux/ghc/version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc-pkg/dump-global−1533

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc-pkg/version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc/info−66

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc/numeric-version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc/supported-languages−268

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-darwin/ghc/version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc-pkg/dump-global−1533

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc-pkg/version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc/info−66

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc/numeric-version−1

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc/supported-languages−268

This diff is too big to show here.

materialized/dummy-ghc/x86_64-w64-mingw32-x86_64-w64-mingw32-ghc-9.2.4-x86_64-linux/ghc/version−1

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8101/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8101/base.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8101/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8101/ghc-prim.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8101/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8101/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8102/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8102/base.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8102/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8102/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8102/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8102/iserv-proxy.nix+1−1

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8102/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/base.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/ghc.nix−62

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/ghci.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8103/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/base.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/ghc.nix−62

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/ghci.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8104/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/base.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/ghc.nix−62

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/ghci.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc810420210212/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/base.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc-prim.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc.nix−62

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105-aarch64/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/base.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/ghc.nix−62

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8105/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/base.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc-prim.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc.nix−62

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106-aarch64/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/base.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/ghc.nix−62

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8106/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/base.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc-prim.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc.nix−62

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107-aarch64/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/base.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/ghc.nix−62

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc8107/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc844/ghc-boot.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc844/ghc.nix−58

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc844/ghci.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc844/hpc.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc844/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc844/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc844/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc844/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/base.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/ghc-boot.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/ghc-prim.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/ghc.nix−59

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/ghci.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/hpc.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc863/template-haskell.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/base.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/ghc-boot.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/ghc-prim.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/ghc.nix−60

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/ghci.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/hpc.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc864/template-haskell.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc865/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc865/base.nix+1−1

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc865/ghc-heap.nix+1−1

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc865/ghc-prim.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc865/ghc.nix+4

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc865/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc865/iserv-proxy.nix+1−1

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc865/template-haskell.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/base.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/ghc-boot.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/ghc-prim.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/ghc.nix−61

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/ghci.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/hpc.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc882/template-haskell.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/base.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc-boot.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc-prim.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc.nix−61

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/ghci.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/hpc.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883-aarch64/template-haskell.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883/base.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883/ghc-prim.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883/ghc.nix+4

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883/iserv-proxy.nix+1−1

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc883/template-haskell.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/base.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc-boot.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc.nix−61

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/ghci.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/hpc.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884-aarch64/template-haskell.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884/Win32.nix−46

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884/base.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884/ghc.nix+4

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884/integer-gmp.nix−33

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884/iserv-proxy.nix+1−1

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc884/template-haskell.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/Win32.nix−49

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-prim.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc.nix−61

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/ghci.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901-aarch64/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/Win32.nix−49

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/ghc.nix−61

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/ghci.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc901/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/Win32.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-prim.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc.nix−61

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902-aarch64/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/Win32.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/bytestring.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/ghc-boot.nix−39

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/ghc-heap.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/ghc.nix−61

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc902/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/Win32.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/bytestring.nix−86

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/deepseq.nix−47

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-boot.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-heap.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-prim.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc.nix−61

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/pretty.nix−56

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921-aarch64/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/Win32.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/bytestring.nix−86

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/deepseq.nix−47

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/ghc-boot.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/ghc-heap.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/ghc.nix−61

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/pretty.nix−56

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc921/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/Win32.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/bytestring.nix−68

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/deepseq.nix−47

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-boot.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-heap.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-prim.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc.nix−60

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/pretty.nix−56

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922-aarch64/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/Win32.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/bytestring.nix−68

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/deepseq.nix−47

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/ghc-boot.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/ghc-heap.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/ghc.nix−60

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/pretty.nix−56

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc922/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/Win32.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/bytestring.nix−65

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/deepseq.nix−47

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-boot.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-heap.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-prim.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc.nix−60

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/pretty.nix−56

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923-aarch64/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/Win32.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/bytestring.nix−65

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/deepseq.nix−47

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/ghc-boot.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/ghc-heap.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/ghc.nix−60

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/pretty.nix−56

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc923/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/Win32.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/bytestring.nix−65

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/deepseq.nix−47

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-boot.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-heap.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-prim.nix−44

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc.nix−60

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/pretty.nix−56

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924-aarch64/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/Win32.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/base.nix−48

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/bytestring.nix−65

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/deepseq.nix−47

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/ghc-bignum.nix−37

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/ghc-boot.nix−40

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/ghc-heap.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/ghc-prim.nix−43

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/ghc.nix−60

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/ghci.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/hpc.nix−38

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/integer-gmp.nix−35

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/iserv-proxy.nix−45

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/iserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/libiserv.nix−42

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/pretty.nix−56

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/remote-iserv.nix−36

This diff is too big to show here.

materialized/ghc-boot-packages-nix/ghc924/template-haskell.nix−36

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/bytestring.nix+57−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/ghc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/iserv-proxy.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8101/default.nix+39−77

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/bytestring.nix+57−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/ghc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/iserv-proxy.nix+2−2

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8102/default.nix+41−79

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8103/default.nix−128

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8104/default.nix−128

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc810420210212/default.nix−128

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8105/default.nix−128

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8106/default.nix−128

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc8107/default.nix−128

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc865/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc865/.plan.nix/bytestring.nix

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc865/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc865/.plan.nix/ghc.nix+5−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc865/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc865/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc865/.plan.nix/iserv-proxy.nix+2−2

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc865/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc865/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc865/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc865/default.nix+46−79

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc882/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghc-boot.nix−53

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghc.nix−573

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc882/.plan.nix/hpc.nix−51

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc882/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc882/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc882/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc882/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc882/default.nix−127

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc883/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc883/.plan.nix/bytestring.nix+58−2

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc883/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc883/.plan.nix/ghc.nix+5−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc883/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc883/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc883/.plan.nix/iserv-proxy.nix+2−2

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc883/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc883/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc883/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc883/default.nix+46−78

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc884/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc884/.plan.nix/bytestring.nix+88−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc884/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc884/.plan.nix/ghc.nix+5−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc884/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc884/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc884/.plan.nix/iserv-proxy.nix+2−2

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc884/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc884/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc884/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc884/default.nix+46−78

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc901/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc901/.plan.nix/ghc-boot.nix−61

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc901/.plan.nix/ghc.nix−572

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc901/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc901/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc901/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc901/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc901/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc901/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc901/default.nix−135

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc902/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc902/.plan.nix/ghc-boot.nix−61

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc902/.plan.nix/ghc.nix−572

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc902/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc902/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc902/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc902/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc902/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc902/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc902/default.nix−136

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc921/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc921/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc921/.plan.nix/ghc.nix−663

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc921/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc921/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc921/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc921/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc921/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc921/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc921/default.nix−143

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc922/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc922/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc922/.plan.nix/ghc.nix−661

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc922/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc922/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc922/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc922/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc922/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc922/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc922/default.nix−138

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc923/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc923/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc923/.plan.nix/ghc.nix−661

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc923/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc923/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc923/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc923/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc923/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc923/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc923/default.nix−138

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc924/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc924/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc924/.plan.nix/ghc.nix−661

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc924/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc924/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc924/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc924/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc924/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc924/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/cross/ghc924/default.nix−137

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8101/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8101/.plan.nix/bytestring.nix+136

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8101/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8101/.plan.nix/ghc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8101/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8101/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8101/.plan.nix/iserv-proxy.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8101/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8101/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8101/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8101/default.nix+40−78

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8102/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8102/.plan.nix/bytestring.nix+136

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8102/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8102/.plan.nix/ghc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8102/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8102/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8102/.plan.nix/iserv-proxy.nix+2−2

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8102/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8102/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8102/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8102/default.nix+42−80

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8103/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8103/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8103/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8103/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8103/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8103/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8103/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8103/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8103/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8103/default.nix−129

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8104/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8104/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8104/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8104/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8104/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8104/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8104/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8104/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8104/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8104/default.nix−129

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc810420210212/default.nix−129

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8105/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8105/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8105/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8105/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8105/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8105/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8105/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8105/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8105/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8105/default.nix−129

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8106/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8106/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8106/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8106/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8106/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8106/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8106/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8106/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8106/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8106/default.nix−129

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8107/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8107/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8107/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8107/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8107/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8107/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8107/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8107/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8107/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc8107/default.nix−129

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc844/.plan.nix/ghc-boot.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc844/.plan.nix/ghc.nix−584

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc844/.plan.nix/ghci.nix−69

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc844/.plan.nix/hpc.nix−51

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc844/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc844/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc844/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc844/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc844/default.nix−92

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc863/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc863/.plan.nix/ghc-boot.nix−53

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc863/.plan.nix/ghc.nix−555

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc863/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc863/.plan.nix/hpc.nix−51

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc863/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc863/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc863/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc863/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc863/default.nix−126

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc864/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc864/.plan.nix/ghc-boot.nix−53

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc864/.plan.nix/ghc.nix−556

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc864/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc864/.plan.nix/hpc.nix−51

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc864/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc864/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc864/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc864/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc864/default.nix−127

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc865/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc865/.plan.nix/bytestring.nix+57−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc865/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc865/.plan.nix/ghc.nix+5−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc865/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc865/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc865/.plan.nix/iserv-proxy.nix+2−2

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc865/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc865/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc865/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc865/default.nix+47−79

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc882/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc882/.plan.nix/ghc-boot.nix−53

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc882/.plan.nix/ghc.nix−573

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc882/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc882/.plan.nix/hpc.nix−51

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc882/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc882/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc882/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc882/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc882/default.nix−128

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc883/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc883/.plan.nix/bytestring.nix+136

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc883/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc883/.plan.nix/ghc.nix+5−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc883/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc883/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc883/.plan.nix/iserv-proxy.nix+2−2

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc883/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc883/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc883/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc883/default.nix+47−79

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc884/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc884/.plan.nix/bytestring.nix+167

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc884/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc884/.plan.nix/ghc.nix+5−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc884/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc884/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc884/.plan.nix/iserv-proxy.nix+2−2

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc884/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc884/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc884/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc884/default.nix+47−79

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc901/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc901/.plan.nix/ghc-boot.nix−61

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc901/.plan.nix/ghc.nix−572

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc901/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc901/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc901/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc901/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc901/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc901/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc901/default.nix−136

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc902/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc902/.plan.nix/ghc-boot.nix−61

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc902/.plan.nix/ghc.nix−572

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc902/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc902/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc902/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc902/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc902/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc902/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc902/default.nix−136

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc921/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc921/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc921/.plan.nix/ghc.nix−663

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc921/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc921/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc921/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc921/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc921/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc921/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc921/default.nix−144

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc922/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc922/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc922/.plan.nix/ghc.nix−661

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc922/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc922/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc922/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc922/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc922/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc922/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc922/default.nix−138

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc923/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc923/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc923/.plan.nix/ghc.nix−661

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc923/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc923/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc923/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc923/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc923/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc923/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc923/default.nix−138

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc924/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc924/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc924/.plan.nix/ghc.nix−661

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc924/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc924/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc924/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc924/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc924/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc924/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/default/ghc924/default.nix−138

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8105/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8105/default.nix−131

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8106/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8106/default.nix−131

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8107/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc8107/default.nix−131

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/ghc-boot.nix−53

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/ghc.nix−554

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/hpc.nix−51

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc865/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc865/default.nix−123

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/ghc-boot.nix−53

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/ghc.nix−572

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/hpc.nix−51

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc884/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/ghcjs/ghc884/default.nix−125

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghc.nix−585

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8101/default.nix−120

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8102/default.nix−121

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8103/default.nix−121

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8104/default.nix−121

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc810420210212/default.nix−121

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8105/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8105/default.nix−121

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8106/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8106/default.nix−121

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/ghc-boot.nix−60

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/ghc.nix−586

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8107/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc8107/default.nix−121

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc863/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc863/.plan.nix/ghc-boot.nix−53

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc863/.plan.nix/ghc.nix−555

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc863/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc863/.plan.nix/hpc.nix−51

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc863/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc863/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc863/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc863/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc863/default.nix−118

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc864/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc864/.plan.nix/ghc-boot.nix−53

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc864/.plan.nix/ghc.nix−556

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc864/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc864/.plan.nix/hpc.nix−51

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc864/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc864/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc864/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc864/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc864/default.nix−119

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc865/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc865/.plan.nix/bytestring.nix+57−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc865/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc865/.plan.nix/ghc.nix+5−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc865/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc865/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc865/.plan.nix/iserv-proxy.nix+2−2

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc865/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc865/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc865/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc865/default.nix+45−72

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc882/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc882/.plan.nix/ghc-boot.nix−53

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc882/.plan.nix/ghc.nix−573

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc882/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc882/.plan.nix/hpc.nix−51

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc882/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc882/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc882/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc882/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc882/default.nix−120

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc883/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc883/.plan.nix/bytestring.nix+136

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc883/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc883/.plan.nix/ghc.nix+5−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc883/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc883/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc883/.plan.nix/iserv-proxy.nix+2−2

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc883/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc883/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc883/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc883/default.nix+45−72

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc884/.plan.nix/Win32.nix−155

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc884/.plan.nix/bytestring.nix+167

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc884/.plan.nix/ghc-boot.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc884/.plan.nix/ghc.nix+5−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc884/.plan.nix/ghci.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc884/.plan.nix/hpc.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc884/.plan.nix/iserv-proxy.nix+2−2

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc884/.plan.nix/iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc884/.plan.nix/libiserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc884/.plan.nix/remote-iserv.nix+1−1

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc884/default.nix+45−72

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc901/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc901/.plan.nix/ghc-boot.nix−61

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc901/.plan.nix/ghc.nix−572

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc901/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc901/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc901/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc901/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc901/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc901/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc901/default.nix−132

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc902/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc902/.plan.nix/ghc-boot.nix−61

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc902/.plan.nix/ghc.nix−572

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc902/.plan.nix/ghci.nix−71

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc902/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc902/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc902/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc902/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc902/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc902/default.nix−132

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc921/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc921/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc921/.plan.nix/ghc.nix−663

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc921/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc921/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc921/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc921/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc921/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc921/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc921/default.nix−140

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc922/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc922/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc922/.plan.nix/ghc.nix−661

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc922/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc922/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc922/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc922/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc922/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc922/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc922/default.nix−134

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc923/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc923/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc923/.plan.nix/ghc.nix−661

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc923/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc923/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc923/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc923/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc923/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc923/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc923/default.nix−134

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc924/.plan.nix/Win32.nix−158

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc924/.plan.nix/ghc-boot.nix−64

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc924/.plan.nix/ghc.nix−661

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc924/.plan.nix/ghci.nix−70

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc924/.plan.nix/hpc.nix−52

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc924/.plan.nix/iserv-proxy.nix−55

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc924/.plan.nix/iserv.nix−54

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc924/.plan.nix/libiserv.nix−58

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc924/.plan.nix/remote-iserv.nix−46

This diff is too big to show here.

materialized/ghc-extra-projects/windows/ghc924/default.nix−134

This diff is too big to show here.

materialized/ghc8101/cabal-install/.plan.nix/cabal-install.nix+99−51

This diff is too big to show here.

materialized/ghc8101/cabal-install/default.nix+75−133

This diff is too big to show here.

materialized/ghc8101/nix-tools/.plan.nix/hackage-db.nix+3−13

This diff is too big to show here.

materialized/ghc8101/nix-tools/.plan.nix/nix-tools.nix+1−2

This diff is too big to show here.

materialized/ghc8101/nix-tools/default.nix+152−176

This diff is too big to show here.

materialized/ghc8102/cabal-install/.plan.nix/cabal-install.nix+99−51

This diff is too big to show here.

materialized/ghc8102/cabal-install/default.nix+74−132

This diff is too big to show here.

materialized/ghc8102/nix-tools/.plan.nix/hackage-db.nix+3−13

This diff is too big to show here.

materialized/ghc8102/nix-tools/.plan.nix/nix-tools.nix+1−2

This diff is too big to show here.

materialized/ghc8102/nix-tools/default.nix+295−458

This diff is too big to show here.

materialized/ghc8103/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc8103/cabal-install/default.nix−180

This diff is too big to show here.

materialized/ghc8103/nix-tools/default.nix−518

This diff is too big to show here.

materialized/ghc8104/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc8104/cabal-install/default.nix−180

This diff is too big to show here.

materialized/ghc8104/nix-tools/.plan.nix/hackage-db.nix−110

This diff is too big to show here.

materialized/ghc8104/nix-tools/.plan.nix/nix-tools.nix−234

This diff is too big to show here.

materialized/ghc8104/nix-tools/default.nix−518

This diff is too big to show here.

materialized/ghc810420210212/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc810420210212/cabal-install/default.nix−180

This diff is too big to show here.

materialized/ghc810420210212/nix-tools/.plan.nix/hackage-db.nix−110

This diff is too big to show here.

materialized/ghc810420210212/nix-tools/.plan.nix/nix-tools.nix−234

This diff is too big to show here.

materialized/ghc810420210212/nix-tools/default.nix−518

This diff is too big to show here.

materialized/ghc8105/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc8105/cabal-install/default.nix−180

This diff is too big to show here.

materialized/ghc8105/nix-tools/.plan.nix/hackage-db.nix−110

This diff is too big to show here.

materialized/ghc8105/nix-tools/.plan.nix/nix-tools.nix−234

This diff is too big to show here.

materialized/ghc8105/nix-tools/default.nix−518

This diff is too big to show here.

materialized/ghc8106/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc8106/cabal-install/default.nix−180

This diff is too big to show here.

materialized/ghc8106/nix-tools/.plan.nix/hackage-db.nix−110

This diff is too big to show here.

materialized/ghc8106/nix-tools/.plan.nix/nix-tools.nix−234

This diff is too big to show here.

materialized/ghc8106/nix-tools/default.nix−518

This diff is too big to show here.

materialized/ghc8107/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc8107/cabal-install/default.nix−180

This diff is too big to show here.

materialized/ghc8107/nix-tools/.plan.nix/hackage-db.nix−110

This diff is too big to show here.

materialized/ghc8107/nix-tools/.plan.nix/nix-tools.nix−234

This diff is too big to show here.

materialized/ghc8107/nix-tools/default.nix−518

This diff is too big to show here.

materialized/ghc863/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc863/cabal-install/default.nix−180

This diff is too big to show here.

materialized/ghc863/nix-tools/.plan.nix/hackage-db.nix−110

This diff is too big to show here.

materialized/ghc863/nix-tools/.plan.nix/nix-tools.nix−234

This diff is too big to show here.

materialized/ghc863/nix-tools/default.nix−509

This diff is too big to show here.

materialized/ghc864/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc864/cabal-install/default.nix−180

This diff is too big to show here.

materialized/ghc864/nix-tools/.plan.nix/hackage-db.nix−110

This diff is too big to show here.

materialized/ghc864/nix-tools/.plan.nix/nix-tools.nix−234

This diff is too big to show here.

materialized/ghc864/nix-tools/default.nix−509

This diff is too big to show here.

materialized/ghc865/cabal-install/.plan.nix/cabal-install.nix+99−51

This diff is too big to show here.

materialized/ghc865/cabal-install/default.nix+74−132

This diff is too big to show here.

materialized/ghc865/nix-tools/.plan.nix/hackage-db.nix+3−13

This diff is too big to show here.

materialized/ghc865/nix-tools/.plan.nix/nix-tools.nix+1−2

This diff is too big to show here.

materialized/ghc865/nix-tools/default.nix+294−448

This diff is too big to show here.

materialized/ghc882/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc882/cabal-install/default.nix−180

This diff is too big to show here.

materialized/ghc882/nix-tools/.plan.nix/hackage-db.nix−110

This diff is too big to show here.

materialized/ghc882/nix-tools/.plan.nix/nix-tools.nix−234

This diff is too big to show here.

materialized/ghc882/nix-tools/default.nix−509

This diff is too big to show here.

materialized/ghc883/cabal-install/.plan.nix/cabal-install.nix+99−51

This diff is too big to show here.

materialized/ghc883/cabal-install/default.nix+74−132

This diff is too big to show here.

materialized/ghc883/nix-tools/.plan.nix/hackage-db.nix+3−13

This diff is too big to show here.

materialized/ghc883/nix-tools/.plan.nix/nix-tools.nix+1−2

This diff is too big to show here.

materialized/ghc883/nix-tools/default.nix+294−448

This diff is too big to show here.

materialized/ghc884/cabal-install/.plan.nix/cabal-install.nix+99−51

This diff is too big to show here.

materialized/ghc884/cabal-install/default.nix+74−132

This diff is too big to show here.

materialized/ghc884/nix-tools/.plan.nix/hackage-db.nix+3−13

This diff is too big to show here.

materialized/ghc884/nix-tools/.plan.nix/nix-tools.nix+1−2

This diff is too big to show here.

materialized/ghc884/nix-tools/default.nix+294−448

This diff is too big to show here.

materialized/ghc901/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc901/cabal-install/default.nix−178

This diff is too big to show here.

materialized/ghc902/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc902/cabal-install/default.nix−183

This diff is too big to show here.

materialized/ghc921/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc921/cabal-install/default.nix−174

This diff is too big to show here.

materialized/ghc922/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc922/cabal-install/default.nix−174

This diff is too big to show here.

materialized/ghc923/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc923/cabal-install/default.nix−174

This diff is too big to show here.

materialized/ghc924/cabal-install/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghc924/cabal-install/default.nix−174

This diff is too big to show here.

materialized/ghcjs/alex/ghc8104/.plan.nix/alex.nix−160

This diff is too big to show here.

materialized/ghcjs/alex/ghc8104/default.nix−47

This diff is too big to show here.

materialized/ghcjs/alex/ghc8105/.plan.nix/alex.nix−160

This diff is too big to show here.

materialized/ghcjs/alex/ghc8105/default.nix−65

This diff is too big to show here.

materialized/ghcjs/alex/ghc8106/.plan.nix/alex.nix−160

This diff is too big to show here.

materialized/ghcjs/alex/ghc8106/default.nix−65

This diff is too big to show here.

materialized/ghcjs/alex/ghc8107/.plan.nix/alex.nix−160

This diff is too big to show here.

materialized/ghcjs/alex/ghc8107/default.nix−65

This diff is too big to show here.

materialized/ghcjs/alex/ghc865/.plan.nix/alex.nix−160

This diff is too big to show here.

materialized/ghcjs/alex/ghc865/default.nix−65

This diff is too big to show here.

materialized/ghcjs/alex/ghc884/.plan.nix/alex.nix−160

This diff is too big to show here.

materialized/ghcjs/alex/ghc884/default.nix−65

This diff is too big to show here.

materialized/ghcjs/cabal/ghc8104/.plan.nix/cabal-install.nix−361

This diff is too big to show here.

materialized/ghcjs/cabal/ghc8104/default.nix−128

This diff is too big to show here.

materialized/ghcjs/cabal/ghc8105/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghcjs/cabal/ghc8105/default.nix−180

This diff is too big to show here.

materialized/ghcjs/cabal/ghc8106/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghcjs/cabal/ghc8106/default.nix−180

This diff is too big to show here.

materialized/ghcjs/cabal/ghc8107/.plan.nix/cabal-install.nix−292

This diff is too big to show here.

materialized/ghcjs/cabal/ghc8107/default.nix−180

This diff is too big to show here.

materialized/ghcjs/cabal/ghc865/.plan.nix/cabal-install.nix−340

This diff is too big to show here.

materialized/ghcjs/cabal/ghc865/default.nix−173

This diff is too big to show here.

materialized/ghcjs/cabal/ghc884/.plan.nix/cabal-install.nix−340

This diff is too big to show here.

materialized/ghcjs/cabal/ghc884/default.nix−173

This diff is too big to show here.

materialized/ghcjs/ghc8104/.plan.nix/ghcjs-th.nix−48

This diff is too big to show here.

materialized/ghcjs/ghc8104/.plan.nix/ghcjs.nix−985

This diff is too big to show here.

materialized/ghcjs/ghc8105/.plan.nix/ghcjs-th.nix−48

This diff is too big to show here.

materialized/ghcjs/ghc8105/.plan.nix/ghcjs.nix−985

This diff is too big to show here.

materialized/ghcjs/ghc8105/default.nix−576

This diff is too big to show here.

materialized/ghcjs/ghc8106/.plan.nix/ghcjs-th.nix−48

This diff is too big to show here.

materialized/ghcjs/ghc8106/.plan.nix/ghcjs.nix−985

This diff is too big to show here.

materialized/ghcjs/ghc8106/default.nix−576

This diff is too big to show here.

materialized/ghcjs/ghc8107/.plan.nix/ghcjs-th.nix−48

This diff is too big to show here.

materialized/ghcjs/ghc8107/.plan.nix/ghcjs.nix−985

This diff is too big to show here.

materialized/ghcjs/ghc8107/default.nix−576

This diff is too big to show here.

materialized/ghcjs/ghc865/.plan.nix/ghci-ghcjs.nix−70

This diff is too big to show here.

materialized/ghcjs/ghc865/.plan.nix/ghcjs-th.nix−58

This diff is too big to show here.

materialized/ghcjs/ghc865/.plan.nix/ghcjs.nix−987

This diff is too big to show here.

materialized/ghcjs/ghc865/.plan.nix/haddock-library-ghcjs.nix−103

This diff is too big to show here.

materialized/ghcjs/ghc865/.plan.nix/template-haskell-ghcjs.nix−54

This diff is too big to show here.

materialized/ghcjs/ghc865/default.nix−636

This diff is too big to show here.

materialized/ghcjs/ghc884/.plan.nix/ghcjs-th.nix−52

This diff is too big to show here.

materialized/ghcjs/ghc884/.plan.nix/ghcjs.nix−981

This diff is too big to show here.

materialized/ghcjs/ghc884/default.nix−581

This diff is too big to show here.

materialized/ghcjs/happy/ghc8104/.plan.nix/happy.nix−200

This diff is too big to show here.

materialized/ghcjs/happy/ghc8104/default.nix−41

This diff is too big to show here.

materialized/ghcjs/happy/ghc8105/.plan.nix/happy.nix−200

This diff is too big to show here.

materialized/ghcjs/happy/ghc8105/default.nix−56

This diff is too big to show here.

materialized/ghcjs/happy/ghc8106/.plan.nix/happy.nix−200

This diff is too big to show here.

materialized/ghcjs/happy/ghc8106/default.nix−56

This diff is too big to show here.

materialized/ghcjs/happy/ghc8107/.plan.nix/happy.nix−200

This diff is too big to show here.

materialized/ghcjs/happy/ghc8107/default.nix−56

This diff is too big to show here.

materialized/ghcjs/happy/ghc865/.plan.nix/happy.nix−200

This diff is too big to show here.

materialized/ghcjs/happy/ghc865/default.nix−56

This diff is too big to show here.

materialized/ghcjs/happy/ghc884/.plan.nix/happy.nix−200

This diff is too big to show here.

materialized/ghcjs/happy/ghc884/default.nix−56

This diff is too big to show here.

materialized/spdx-3.12/licenses.json−5622

This diff is too big to show here.

materialized/spdx-3.14/licenses.json−5937

This diff is too big to show here.

materialized/spdx-3.16/licenses.json−6090

This diff is too big to show here.

materialized/spdx-3.17/licenses.json−6155

This diff is too big to show here.

mk-local-hackage-repo/default.nix+9−19

This diff is too big to show here.

mkdocs.yml+1−5

This diff is too big to show here.

modules/cabal-project.nix−134

This diff is too big to show here.

modules/component-driver.nix+6−17

This diff is too big to show here.

modules/configuration-nix.nix+2−114

This diff is too big to show here.

modules/error-handler.nix+2−10

This diff is too big to show here.

modules/hackage-project.nix−60

This diff is too big to show here.

modules/hackage-quirks.nix−88

This diff is too big to show here.

modules/hix-project.nix−47

This diff is too big to show here.

modules/package.nix+83−144

This diff is too big to show here.

modules/plan.nix+3−44

This diff is too big to show here.

modules/project-common.nix−65

This diff is too big to show here.

modules/project.nix−9

This diff is too big to show here.

modules/stack-project.nix−94

This diff is too big to show here.

nix-tools/README.md+3

This diff is too big to show here.

nix-tools/regenerate.nix+100

This diff is too big to show here.

nix/sources.json+80

This diff is too big to show here.

nix/sources.nix+134

This diff is too big to show here.

overlays/android.nix−28

This diff is too big to show here.

overlays/armv6l-linux.nix+8−9

This diff is too big to show here.

overlays/bootstrap.nix+102−638

This diff is too big to show here.

overlays/darwin.nix+3−21

This diff is too big to show here.

overlays/default.nix+10−13

This diff is too big to show here.

overlays/emscripten.nix+19−6

This diff is too big to show here.

overlays/emscripten/binaryen.nix+46

This diff is too big to show here.

overlays/emscripten/default.nix+71

This diff is too big to show here.

overlays/emscripten/fastcomp/default.nix+2−2

This diff is too big to show here.

overlays/emscripten/fastcomp/emscripten-fastcomp.nix+55

This diff is too big to show here.

overlays/emscripten/upstream/default.nix+2−2

This diff is too big to show here.

overlays/emscripten/upstream/emscripten-upstream.nix+60

This diff is too big to show here.

overlays/eval-on-build.nix+6

This diff is too big to show here.

overlays/eval-on-current.nix+8

This diff is too big to show here.

overlays/ghc-packages.nix+56−110

This diff is too big to show here.

overlays/ghc.nix+9−13

This diff is too big to show here.

overlays/ghcjs.nix−60

This diff is too big to show here.

overlays/gobject-introspection.nix+3−5

This diff is too big to show here.

overlays/hackage-quirks.nix+66

This diff is too big to show here.

overlays/haskell.nix+167−428

This diff is too big to show here.

overlays/hix.nix−51

This diff is too big to show here.

overlays/hydra.nix−9

This diff is too big to show here.

overlays/linux-cross.nix+1−1

This diff is too big to show here.

overlays/mingw_w64.nix+22−22

This diff is too big to show here.

overlays/musl.nix+10−13

This diff is too big to show here.

overlays/nix-prefetch-git-minimal.nix−29

This diff is too big to show here.

overlays/patches/Cabal/Cabal-3.0.0.0-drop-pkg-db-check.diff−20

This diff is too big to show here.

overlays/patches/Cabal/Cabal-3.0.0.0-no-final-checks.diff−24

This diff is too big to show here.

overlays/patches/Cabal/Cabal-3.4-defer-build-tool-depends-7532.patch−63

This diff is too big to show here.

overlays/patches/Cabal/Cabal-3.4-speedup-solver-when-tests-enabled-7490.patch−147

This diff is too big to show here.

overlays/patches/Cabal/Cabal-3.6.0.0-drop-pkg-db-check.diff−20

This diff is too big to show here.

overlays/patches/Cabal/Cabal-3.6.0.0-no-final-checks.diff−24

This diff is too big to show here.

overlays/patches/config.guess−1702

This diff is too big to show here.

overlays/patches/config.sub−1865

This diff is too big to show here.

overlays/patches/file-embed-lzma-0.patch+44

This diff is too big to show here.

overlays/patches/ghc-lib-parser-8.10-global-unique-counters-in-rts.patch−20

This diff is too big to show here.

overlays/patches/ghc-lib-parser-9.2-global-unique-counters-in-rts.patch−20

This diff is too big to show here.

overlays/patches/ghc/AC_PROG_CC_99.patch−13

This diff is too big to show here.

overlays/patches/ghc/Cabal-3886.patch−170

This diff is too big to show here.

overlays/patches/ghc/Cabal-unbreak-GHCJS.patch−20

This diff is too big to show here.

overlays/patches/ghc/MR6595-nonmoving-mutvar.patch−521

This diff is too big to show here.

overlays/patches/ghc/MR6617-nonmoving-mvar.patch−174

This diff is too big to show here.

overlays/patches/ghc/MR6654-nonmoving-maxmem.patch−31

This diff is too big to show here.

overlays/patches/ghc/Sphinx_Unicode_Error.patch−20

This diff is too big to show here.

overlays/patches/ghc/android-base-needs-iconv.patch−14

This diff is too big to show here.

overlays/patches/ghc/core-field.patch−958

This diff is too big to show here.

overlays/patches/ghc/external-static-8.10.4.patch−219

This diff is too big to show here.

overlays/patches/ghc/ghc-8.10-3434.patch−68

This diff is too big to show here.

overlays/patches/ghc/ghc-8.10-global-unique-counters-in-rts.patch−55

This diff is too big to show here.

overlays/patches/ghc/ghc-8.10-ubxt.patch−1539

This diff is too big to show here.

overlays/patches/ghc/ghc-8.10-windows-add-dependent-file.patch−22

This diff is too big to show here.

overlays/patches/ghc/ghc-8.10-z-drive-fix.patch−14

This diff is too big to show here.

overlays/patches/ghc/ghc-8.10.3-rts-make-markLiveObject-thread-safe.patch−63

This diff is too big to show here.

overlays/patches/ghc/ghc-8.10.3-ubxt.patch−7884

This diff is too big to show here.

overlays/patches/ghc/ghc-8.10.5-add-rts-exports.patch−26

This diff is too big to show here.

overlays/patches/ghc/ghc-8.10.5-darwin-allocateExec.patch−13

This diff is too big to show here.

overlays/patches/ghc/ghc-8.10.5-ubxt.patch−7884

This diff is too big to show here.

overlays/patches/ghc/ghc-8.10.7-linker-weak-and-common.patch−189

This diff is too big to show here.

overlays/patches/ghc/ghc-8.4.4-reinstallable-lib-ghc.patch+10

This diff is too big to show here.

overlays/patches/ghc/ghc-8.6.3-reinstallable-lib-ghc.patch+10

This diff is too big to show here.

overlays/patches/ghc/ghc-8.6.4-reinstallable-lib-ghc.patch+10

This diff is too big to show here.

overlays/patches/ghc/ghc-8.6.5-reinstallable-lib-ghc.patch+10

This diff is too big to show here.

overlays/patches/ghc/ghc-8.8-ubxt.patch−1127

This diff is too big to show here.

overlays/patches/ghc/ghc-8.8.1-reinstallable-lib-ghc.patch+10

This diff is too big to show here.

overlays/patches/ghc/ghc-8.8.2-reinstallable-lib-ghc.patch+10

This diff is too big to show here.

overlays/patches/ghc/ghc-9.0-macOS-loadArchive-fix.patch−9

This diff is too big to show here.

overlays/patches/ghc/ghc-9.2-3434.patch−68

This diff is too big to show here.

overlays/patches/ghc/ghc-9.2-Cabal-3886.patch−170

This diff is too big to show here.

overlays/patches/ghc/ghc-9.2-cabal-host.patch−13

This diff is too big to show here.

overlays/patches/ghc/ghc-9.2-global-unique-counters-in-rts.patch−83

This diff is too big to show here.

overlays/patches/ghc/ghc-9.2-macOS-loadArchive-fix.patch−9

This diff is too big to show here.

overlays/patches/ghc/ghc-9.2.1-xattr-fix.patch−30

This diff is too big to show here.

overlays/patches/ghc/ghc-acrt-iob-func.patch−12

This diff is too big to show here.

overlays/patches/ghc/ghc-mprotect-nonzero-len.patch−14

This diff is too big to show here.

overlays/patches/ghc/ghc-rts-linker-condbr.patch−73

This diff is too big to show here.

overlays/patches/ghc/issue-18708.patch−39

This diff is too big to show here.

overlays/patches/ghc/libc-memory-symbols.patch−43

This diff is too big to show here.

overlays/patches/ghc/libraries-prim-os-android.patch−13

This diff is too big to show here.

overlays/patches/ghc/mmap-next.patch−70

This diff is too big to show here.

overlays/patches/ghc/noinline-set-bit-if.patch−12

This diff is too big to show here.

overlays/patches/ghc/rts-android-jemalloc-qemu.patch−48

This diff is too big to show here.

overlays/patches/ghc/stack-protector-symbols.patch−67

This diff is too big to show here.

overlays/tools.nix+61−28

This diff is too big to show here.

overlays/windows.nix+31−23

This diff is too big to show here.

overlays/wine.nix+8−10

This diff is too big to show here.

package-set.nix+1−1

This diff is too big to show here.

patches/default.nix−1

This diff is too big to show here.

patches/ghc862/default.nix+1−1

This diff is too big to show here.

patches/ghc863/default.nix+1−1

This diff is too big to show here.

patches/ghc864/default.nix+1−1

This diff is too big to show here.

patches/ghc865/default.nix+1−1

This diff is too big to show here.

patches/ghcide-1.7-plutus-ghc.patch−13

This diff is too big to show here.

patches/ghcide-1.7-unboxed-tuple-fix-issue-1455.patch−76

This diff is too big to show here.

patches/hnix.patch−13

This diff is too big to show here.

patches/js-ghc8107/buffer-builder.patch−79

This diff is too big to show here.

patches/js-ghc8107/conduit-extra.patch−48

This diff is too big to show here.

patches/js-ghc8107/default.nix−7

This diff is too big to show here.

patches/js-ghc8107/double-conversion.patch−64

This diff is too big to show here.

patches/js-ghc8107/network.patch−16

This diff is too big to show here.

patches/js-ghc8107/say.patch−22

This diff is too big to show here.

patches/languge-c-int128.patch−146

This diff is too big to show here.

patches/update-patches.sh+2−6

This diff is too big to show here.

release-linux-only.nix−5

This diff is too big to show here.

release.nix+10−54

This diff is too big to show here.

scripts/check-closure-size.nix+2−2

This diff is too big to show here.

scripts/check-compiler-materialization/default.nix+12−40

This diff is too big to show here.

scripts/check-hydra.nix+4−5

This diff is too big to show here.

scripts/check-materialization-concurrency/check.nix+2−2

This diff is too big to show here.

scripts/check-path-support.nix+3−3

This diff is too big to show here.

scripts/options-doc.nix+1−1

This diff is too big to show here.

scripts/update-docs.nix+2−2

This diff is too big to show here.

scripts/update-external.nix+5−5

This diff is too big to show here.

scripts/update-hackage.nix+2−2

This diff is too big to show here.

scripts/update-index-state-hashes.nix+2−2

This diff is too big to show here.

scripts/update-pins.nix+3−3

This diff is too big to show here.

scripts/update-stackage.nix+2−2

This diff is too big to show here.

shell.nix+12−1

This diff is too big to show here.

snapshots.nix+2−2

This diff is too big to show here.

stackage-src.json+4−7

This diff is too big to show here.

test/buildable/default.nix+5−4

This diff is too big to show here.

test/builder-haddock/.plan.nix/test-haddock.nix+43−12

This diff is too big to show here.

test/builder-haddock/default.nix+10−9

This diff is too big to show here.

test/builder-haddock/pkgs.nix+6−18

This diff is too big to show here.

test/c-ffi/c-ffi.cabal−24

This diff is too big to show here.

test/c-ffi/cbits/test.c−7

This diff is too big to show here.

test/c-ffi/default.nix−65

This diff is too big to show here.

test/c-ffi/exe/Main.hs−15

This diff is too big to show here.

test/c-ffi/jsbits/bindings.js−6

This diff is too big to show here.

test/c-ffi/src/Lib.hs−6

This diff is too big to show here.

test/ca-derivations-include/default.nix−57

This diff is too big to show here.

test/ca-derivations/default.nix−59

This diff is too big to show here.

test/cabal-22/default.nix+7−12

This diff is too big to show here.

test/cabal-doctests/Setup.hs−6

This diff is too big to show here.

test/cabal-doctests/cabal-doctests-test.cabal−31

This diff is too big to show here.

test/cabal-doctests/default.nix−48

This diff is too big to show here.

test/cabal-doctests/doctests/Doctests.hs−16

This diff is too big to show here.

test/cabal-doctests/src/Lib.hs−18

This diff is too big to show here.

test/cabal-hpack/default.nix+6−6

This diff is too big to show here.

test/cabal-simple-debug/Main.hs−4

This diff is too big to show here.

test/cabal-simple-debug/Setup.hs−2

This diff is too big to show here.

test/cabal-simple-debug/cabal-simple.cabal−37

This diff is too big to show here.

test/cabal-simple-debug/default.nix−52

This diff is too big to show here.

test/cabal-simple-prof/default.nix+10−16

This diff is too big to show here.

test/cabal-simple/default.nix+7−11

This diff is too big to show here.

test/cabal-source-repo-comments/cabal.project−2

This diff is too big to show here.

test/cabal-source-repo-comments/default.nix+7−6

This diff is too big to show here.

test/cabal-source-repo/cabal.project+1−3

This diff is too big to show here.

test/cabal-source-repo/default.nix+7−6

This diff is too big to show here.

test/cabal-sublib/cabal-sublib.cabal+1−2

This diff is too big to show here.

test/cabal-sublib/default.nix+6−10

This diff is too big to show here.

test/call-cabal-project-to-nix/default.nix+6−10

This diff is too big to show here.

test/call-stack-to-nix/default.nix+5−7

This diff is too big to show here.

test/call-stack-to-nix/stack.yaml+1−1

This diff is too big to show here.

test/compiler-nix-name/Main.hs+5

This diff is too big to show here.

test/compiler-nix-name/compiler-nix-name.cabal+11

This diff is too big to show here.

test/compiler-nix-name/default.nix+40

This diff is too big to show here.

test/coverage-golden/default.nix−53

This diff is too big to show here.

test/coverage-golden/golden.json−2069

This diff is too big to show here.

test/coverage-no-libs/cabal.project−1

This diff is too big to show here.

test/coverage-no-libs/default.nix−104

This diff is too big to show here.

test/coverage-no-libs/pkga/MainA.hs−4

This diff is too big to show here.

test/coverage-no-libs/pkga/Setup.hs−2

This diff is too big to show here.

test/coverage-no-libs/pkga/pkga.cabal−19

This diff is too big to show here.

test/coverage-no-libs/stack.yaml−4

This diff is too big to show here.

test/coverage/cabal.project−2

This diff is too big to show here.

test/coverage/conduit.hs−19

This diff is too big to show here.

test/coverage/default.nix−133

This diff is too big to show here.

test/coverage/pkga/MainA.hs−4

This diff is too big to show here.

test/coverage/pkga/PkgA.hs−16

This diff is too big to show here.

test/coverage/pkga/Setup.hs−2

This diff is too big to show here.

test/coverage/pkga/pkga.cabal−26

This diff is too big to show here.

test/coverage/pkgb/Setup.hs−2

This diff is too big to show here.

test/coverage/pkgb/app/Main.hs−10

This diff is too big to show here.

test/coverage/pkgb/app/tests.hs−7

This diff is too big to show here.

test/coverage/pkgb/pkgb.cabal−43

This diff is too big to show here.

test/coverage/pkgb/src/ConduitExample.hs−21

This diff is too big to show here.

test/coverage/pkgb/src/PkgB.hs−7

This diff is too big to show here.

test/coverage/pkgb/src/conduit-test.hs−5

This diff is too big to show here.

test/coverage/stack.yaml−5

This diff is too big to show here.

test/default.nix+37−65

This diff is too big to show here.

test/exe-dlls/default.nix−25

This diff is too big to show here.

test/exe-dlls/exe-dlls.cabal−18

This diff is too big to show here.

test/exe-dlls/src/Main.hs−14

This diff is too big to show here.

test/exe-lib-dlls/default.nix−25

This diff is too big to show here.

test/exe-lib-dlls/exe-lib-dlls.cabal−24

This diff is too big to show here.

test/exe-lib-dlls/exes/Main.hs−6

This diff is too big to show here.

test/exe-lib-dlls/src/Lib.hs−14

This diff is too big to show here.

test/exe-only/default.nix+6−6

This diff is too big to show here.

test/external-static-plugin/cabal.project−1

This diff is too big to show here.

test/external-static-plugin/default.nix−27

This diff is too big to show here.

test/external-static-plugin/plugin/CHANGELOG.md−5

This diff is too big to show here.

test/external-static-plugin/plugin/plugin.cabal−12

This diff is too big to show here.

test/external-static-plugin/plugin/src/Plugin.hs−16

This diff is too big to show here.

test/external-static-plugin/prog/CHANGELOG.md−5

This diff is too big to show here.

test/external-static-plugin/prog/app/Main.hs−4

This diff is too big to show here.

test/external-static-plugin/prog/prog.cabal−12

This diff is too big to show here.

test/extra-hackage/default.nix+10−9

This diff is too big to show here.

test/extra-hackage/external-package-user/cabal.project+2−6

This diff is too big to show here.

test/fully-static/cross.nix+1−1

This diff is too big to show here.

test/fully-static/default.nix+4−12

This diff is too big to show here.

test/ghc-options/cabal.nix+7−14

This diff is too big to show here.

test/ghc-options/stack.nix+4−12

This diff is too big to show here.

test/ghcjs-overlay/CHANGELOG.md−5

This diff is too big to show here.

test/ghcjs-overlay/Main.hs−8

This diff is too big to show here.

test/ghcjs-overlay/MyLib.hs−4

This diff is too big to show here.

test/ghcjs-overlay/Setup.hs−2

This diff is too big to show here.

test/ghcjs-overlay/cabal.project−2

This diff is too big to show here.

test/ghcjs-overlay/default.nix−60

This diff is too big to show here.

test/ghcjs-overlay/ghcjs-overlay-test.cabal−21

This diff is too big to show here.

test/githash/default.nix−71

This diff is too big to show here.

test/githash/githash-test.cabal−16

This diff is too big to show here.

test/githash/src/Main.hs−15

This diff is too big to show here.

test/haskell-language-server/cabal.nix+21−6

This diff is too big to show here.

test/haskell-language-server/stack.nix+8−11

This diff is too big to show here.

test/index-state/default.nix+7−14

This diff is too big to show here.

test/lookup-sha256/default.nix+13

This diff is too big to show here.

test/project-flags/cabal.nix+7−6

This diff is too big to show here.

test/project-flags/stack.nix+4−6

This diff is too big to show here.

test/setup-deps/cabal.project+2

This diff is too big to show here.

test/setup-deps/default.nix+24−18

This diff is too big to show here.

test/setup-deps/pkg/Setup.hs−5

This diff is too big to show here.

test/setup-deps/pkg/pkg.cabal−1

This diff is too big to show here.

test/sha256map/default.nix−21

This diff is too big to show here.

test/shell-for-setup-deps/cabal.project+2

This diff is too big to show here.

test/shell-for-setup-deps/default.nix+23−17

This diff is too big to show here.

test/shell-for-setup-deps/pkg/pkg.cabal−1

This diff is too big to show here.

test/shell-for/.plan.nix/pkga.nix+45−14

This diff is too big to show here.

test/shell-for/.plan.nix/pkgb.nix+55−24

This diff is too big to show here.

test/shell-for/default.nix+18−18

This diff is too big to show here.

test/shell-for/pkgb/pkgb.cabal+1−1

This diff is too big to show here.

test/shell-for/pkgs.nix+164−250

This diff is too big to show here.

test/snapshots/default.nix+21−8

This diff is too big to show here.

test/stack-local-resolver-subdir/.gitignore−2

This diff is too big to show here.

test/stack-local-resolver-subdir/default.nix−16

This diff is too big to show here.

test/stack-local-resolver-subdir/package.yaml−7

This diff is too big to show here.

test/stack-local-resolver-subdir/snapshot/snapshot.yaml−4

This diff is too big to show here.

test/stack-local-resolver-subdir/src/Lib.hs−6

This diff is too big to show here.

test/stack-local-resolver-subdir/stack.yaml−4

This diff is too big to show here.

test/stack-local-resolver/default.nix+1−3

This diff is too big to show here.

test/stack-remote-resolver/default.nix+1−3

This diff is too big to show here.

test/stack-simple/default.nix+3−5

This diff is too big to show here.

test/stack-simple/pkgs.nix+1−7

This diff is too big to show here.

test/stack-simple/stack-simple.nix+47−16

This diff is too big to show here.

test/stack-source-repo/default.nix+1−3

This diff is too big to show here.

test/sublib-docs/default.nix+5−11

This diff is too big to show here.

test/tests.sh+4−10

This diff is too big to show here.

test/th-dlls/apps/Main.hs−9

This diff is too big to show here.

test/th-dlls/default.nix−24

This diff is too big to show here.

test/th-dlls/src/Lib.hs−14

This diff is too big to show here.

test/th-dlls/th-dlls.cabal−24

This diff is too big to show here.

test/unit.nix+17−130

This diff is too big to show here.

test/with-packages/.plan.nix/test-with-packages.nix+43−12

This diff is too big to show here.

test/with-packages/default.nix+15−31

This diff is too big to show here.

test/with-packages/pkgs.nix+118−161

This diff is too big to show here.