1818 files changed+281122−11717
.buildkite/pipeline.yml+17−5
@@ -1,6 +1,6 @@
11steps:
2− - label: 'Run tests with ghc8104'
3− command: "./test/tests.sh ghc8104"
2+ - label: 'Run tests with ghc8107'
3+ command: "./test/tests.sh ghc8107"
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 ghc8104'
17+ - label: 'Check closure size with ghc8107'
1818 command:
19− - nix-build build.nix -A maintainer-scripts.check-closure-size --argstr compiler-nix-name ghc8104 -o check-closure-size.sh
19+ - nix-build build.nix -A maintainer-scripts.check-closure-size --argstr compiler-nix-name ghc8107 -o check-closure-size.sh
2020 - echo "+++ Closure size (MB)"
2121 - ./check-closure-size.sh
2222 agents:
@@ -36,5 +36,17 @@ 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 ghc884 -o check-path-support.sh
39+ - nix-build build.nix -A maintainer-scripts.check-path-support --argstr compiler-nix-name ghc8107 -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+3−10
@@ -1,21 +1,14 @@
11steps:
2− - label: 'Update hackage.nix'
2+ - label: 'Update hackage.nix and stackage.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:
147 - nix-build build.nix -A maintainer-scripts.update-stackage -o update-stackage.sh
158 - echo "+++ Updating stackage.nix"
169 - ./update-stackage.sh
1710 artifact_paths:
18− - "stackage-src.json"
11+ - "flake.lock"
1912 agents:
2013 system: x86_64-linux
2114
@@ -24,7 +17,7 @@ steps:
2417
2518 - label: 'Update pins'
2619 command:
27− - 'buildkite-agent artifact download "*.json" .'
20+ - 'buildkite-agent artifact download "flake.lock" .'
2821 - nix-build build.nix -A maintainer-scripts.update-pins -o update-pins.sh
2922 - ./update-pins.sh
3023 agents:
.github/workflows/rebase.yamlnew file+28
@@ -0,0 +1,28 @@
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.ymlnew file+51
@@ -0,0 +1,51 @@
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+21−5
@@ -1,3 +1,19 @@
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+
117# `haskell.nix` is infrastructure for building Haskell packages with Nix
218
319[](https://buildkite.com/input-output-hk/haskell-dot-nix)
@@ -8,9 +24,9 @@ its dependencies into Nix code.
824
925## Documentation
1026
11−- [Introduction](https://input-output-hk.github.io/haskell.nix/)
12−- [Getting Started](https://input-output-hk.github.io/haskell.nix/tutorials/getting-started/)
13−- [Troubleshooting](https://input-output-hk.github.io/haskell.nix/troubleshooting/)
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)
1430- Explore the documentation from there to find further topics.
1531
1632## Help! Something isn't working
@@ -18,8 +34,8 @@ its dependencies into Nix code.
1834The #1 problem that people have when using `haskell.nix` is that they find themselves building GHC.
1935This should not happen, but you *must* follow the `haskell.nix` setup instructions properly to avoid it.
2036If you find this happening to you, please check that you have followed the
21−[getting started instructions](https://input-output-hk.github.io/haskell.nix/tutorials/getting-started/#setting-up-the-binary-cache) and
22−consult the corresponding [troubleshooting section](https://input-output-hk.github.io/haskell.nix/troubleshooting/#why-am-i-building-ghc).
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).
2339
2440The troubleshooting documentation also contains some help for other common issues.
2541Please give it a read before asking on IRC or opening an issue.
build.nix+26−11
@@ -5,9 +5,12 @@
55let
66 haskellNix = (import ./default.nix {});
77in
8−{ nixpkgs ? haskellNix.sources.nixpkgs
8+{ nixpkgs ? haskellNix.sources.nixpkgs-2111
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; })
1114, ifdLevel ? 1000
1215, compiler-nix-name ? throw "No `compiler-nix-name` passed to build.nix"
1316}:
@@ -17,14 +20,22 @@ let
1720 buildHaskell = pkgs.buildPackages.haskell-nix;
1821 tool = buildHaskell.tool;
1922in rec {
20− tests = import ./test/default.nix { inherit pkgs ifdLevel compiler-nix-name; };
23+ tests = import ./test/default.nix { inherit pkgs evalPackages ifdLevel compiler-nix-name; };
2124
2225 tools = pkgs.lib.optionalAttrs (ifdLevel >= 3) (
2326 pkgs.recurseIntoAttrs ({
24− cabal-latest = tool compiler-nix-name "cabal" "latest";
25− } // pkgs.lib.optionalAttrs (compiler-nix-name != "ghc901") {
26− hls-latest = tool compiler-nix-name "haskell-language-server" "latest";
27− hlint-latest = tool compiler-nix-name "hlint" (if compiler-nix-name == "ghc865" then "3.2.7" else "latest");
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; };
2839 })
2940 );
3041
@@ -35,7 +46,7 @@ in rec {
3546 maintainer-scripts = pkgs.dontRecurseIntoAttrs {
3647 update-hackage = import ./scripts/update-hackage.nix {
3748 inherit (pkgs) stdenv lib writeScript coreutils glibc git
38− openssh nix-prefetch-git gawk bash curl findutils;
49+ openssh nixFlakes gawk bash curl findutils;
3950 # Update scripts use the internal nix-tools and cabal-install (compiled with a fixed GHC version)
4051 nix-tools = haskell.internal-nix-tools;
4152 cabal-install = haskell.internal-cabal-install;
@@ -43,7 +54,7 @@ in rec {
4354 };
4455 update-stackage = haskell.callPackage ./scripts/update-stackage.nix {
4556 inherit (pkgs) stdenv lib writeScript coreutils glibc git
46− openssh nix-prefetch-git gawk bash curl findutils;
57+ openssh nixFlakes gawk bash curl findutils;
4758 # Update scripts use the internal nix-tools and cabal-install (compiled with a fixed GHC version)
4859 nix-tools = haskell.internal-nix-tools;
4960 cabal-install = haskell.internal-cabal-install;
@@ -57,7 +68,7 @@ in rec {
5768 # it uses `pkgs.buildPackages.callPackage` not `haskell.callPackage`
5869 # (We could pull in darcs from a known good haskell.nix for hydra to
5970 # use)
60− check-hydra = pkgs.buildPackages.callPackage ./scripts/check-hydra.nix {};
71+ check-hydra = pkgsForHydra.buildPackages.callPackage ./scripts/check-hydra.nix {};
6172 check-closure-size = pkgs.buildPackages.callPackage ./scripts/check-closure-size.nix {
6273 # Includes cabal-install since this is commonly used.
6374 nix-tools = pkgs.linkFarm "common-tools" [
@@ -66,13 +77,17 @@ in rec {
6677 ];
6778 };
6879 check-materialization-concurrency = pkgs.buildPackages.callPackage ./scripts/check-materialization-concurrency/check.nix {};
69− check-path-support = pkgs.buildPackages.callPackage ./scripts/check-path-support.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+ };
7085 };
7186
7287 # These are pure parts of maintainer-script so they can be built by hydra
7388 # and added to the cache to speed up buildkite.
7489 maintainer-script-cache = pkgs.recurseIntoAttrs (
75− (pkgs.lib.optionalAttrs pkgs.stdenv.hostPlatform.isWindows {
90+ (pkgs.lib.optionalAttrs (pkgsForHydra.system == "x86_64-linux") {
7691 inherit (maintainer-scripts) check-hydra;
7792 })
7893 // (pkgs.lib.optionalAttrs (ifdLevel > 2) {
builder/Setup.ghcjs.hsnew file+272
@@ -0,0 +1,272 @@
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.hsnew file+2
@@ -0,0 +1,2 @@
1+import Distribution.Simple
2+main = defaultMain
builder/comp-builder.nix+103−30
@@ -1,4 +1,4 @@
1−{ pkgs, stdenv, buildPackages, ghc, lib, gobject-introspection ? null, haskellLib, makeConfigFiles, haddockBuilder, ghcForComponent, hsPkgs, compiler, runCommand, libffi, gmp, zlib, ncurses, numactl, nodejs }@defaults:
1+{ pkgs, stdenv, buildPackages, ghc, lib, gobject-introspection ? null, haskellLib, makeConfigFiles, haddockBuilder, ghcForComponent, hsPkgs, compiler, runCommand, libffi, gmp, zlib, ncurses, nodejs }@defaults:
22lib.makeOverridable (
33let self =
44{ componentId
@@ -47,8 +47,10 @@ let self =
4747 # ghc's internal linker seems to be broken on x86.
4848 && !(stdenv.hostPlatform.isMusl && !stdenv.hostPlatform.isx86)
4949, enableDeadCodeElimination ? component.enableDeadCodeElimination
50+, writeHieFiles ? component.writeHieFiles
5051
5152, ghcOptions ? component.ghcOptions
53+, contentAddressed ? component.contentAddressed
5254
5355# Options for Haddock generation
5456, doHaddock ? component.doHaddock # Enable haddock and hoogle generation
@@ -60,7 +62,7 @@ let self =
6062
6163# Profiling
6264, enableLibraryProfiling ? component.enableLibraryProfiling
63−, enableExecutableProfiling ? component.enableExecutableProfiling
65+, enableProfiling ? component.enableProfiling
6466, profilingDetail ? component.profilingDetail
6567
6668# Coverage
@@ -81,6 +83,7 @@ let self =
8183
8284# LLVM
8385, useLLVM ? ghc.useLLVM
86+, smallAddressSpace ? false
8487
8588}@drvArgs:
8689
@@ -97,8 +100,10 @@ let
97100 && !stdenv.hostPlatform.isMusl
98101 && builtins.compareVersions defaults.ghc.version "8.10.2" >= 0;
99102
100− ghc = if enableDWARF then defaults.ghc.dwarf else defaults.ghc;
101− setup = if enableDWARF then drvArgs.setup.dwarf else drvArgs.setup;
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);
102107
103108 # TODO fix cabal wildcard support so hpack wildcards can be mapped to cabal wildcards
104109 canCleanSource = !(cabal-generator == "hpack" && !(package.cleanHpack or false));
@@ -128,7 +133,7 @@ let
128133
129134 fullName = "${nameOnly}-${package.identifier.version}";
130135
131− needsProfiling = enableExecutableProfiling || enableLibraryProfiling;
136+ needsProfiling = enableProfiling || enableLibraryProfiling;
132137
133138 configFiles = makeConfigFiles {
134139 component = componentForSetup;
@@ -143,7 +148,15 @@ let
143148
144149 finalConfigureFlags = lib.concatStringsSep " " (
145150 [ "--prefix=$out"
146− ] ++ (
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+ (
147160 # If configureAllComponents is set we should not specify the component
148161 # and Setup will attempt to configure them all.
149162 if configureAllComponents
@@ -167,7 +180,7 @@ let
167180 [ "--with-gcc=${stdenv.cc.targetPrefix}cc"
168181 ] ++
169182 # BINTOOLS
170− (if stdenv.hostPlatform.isLinux
183+ (if stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAndroid # might be better check to see if cc is clang/llvm?
171184 # use gold as the linker on linux to improve link times
172185 then [
173186 "--with-ld=${stdenv.cc.bintools.targetPrefix}ld.gold"
@@ -184,7 +197,7 @@ let
184197 (disableFeature dontStrip "executable-stripping")
185198 (disableFeature dontStrip "library-stripping")
186199 (enableFeature enableLibraryProfiling "library-profiling")
187− (enableFeature enableExecutableProfiling "executable-profiling")
200+ (enableFeature enableProfiling "profiling")
188201 (enableFeature enableStatic "static")
189202 (enableFeature enableShared "shared")
190203 (enableFeature doCoverage "coverage")
@@ -192,13 +205,13 @@ let
192205 ] ++ lib.optionals (stdenv.hostPlatform.isMusl && (haskellLib.isExecutableType componentId)) [
193206 # These flags will make sure the resulting executable is statically linked.
194207 # If it uses other libraries it may be necessary for to add more
195− # `--ghc-option=-optl=-L` options to the `configurationFlags` of the
208+ # `--ghc-option=-optl=-L` options to the `configureFlags` of the
196209 # component.
197210 "--disable-executable-dynamic"
198211 "--ghc-option=-optl=-pthread"
199212 "--ghc-option=-optl=-static"
200213 ] ++ lib.optional enableSeparateDataOutput "--datadir=$data/share/${ghc.name}"
201− ++ lib.optional (enableLibraryProfiling || enableExecutableProfiling) "--profiling-detail=${profilingDetail}"
214+ ++ lib.optional (enableLibraryProfiling || enableProfiling) "--profiling-detail=${profilingDetail}"
202215 ++ lib.optional stdenv.hostPlatform.isLinux (enableFeature enableDeadCodeElimination "split-sections")
203216 ++ lib.optionals haskellLib.isCrossHost (
204217 map (arg: "--hsc2hs-option=" + arg) (["--cross-compile"] ++ lib.optionals (stdenv.hostPlatform.isWindows) ["--via-asm"])
@@ -212,6 +225,14 @@ let
212225 "--ghc-option=-fPIC" "--gcc-option=-fPIC"
213226 ]
214227 ++ 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"
215236 );
216237
217238 executableToolDepends =
@@ -225,6 +246,7 @@ let
225246 shellWrappers = ghcForComponent {
226247 componentName = fullName;
227248 inherit configFiles enableDWARF;
249+ inherit (component) plugins;
228250 };
229251
230252 # In order to let shell hooks make package-specific things like Hoogle databases
@@ -295,7 +317,13 @@ let
295317 componentDrv = drv;
296318 };
297319
298− drv = stdenv.mkDerivation (commonAttrs // {
320+ contentAddressedAttrs = lib.optionalAttrs contentAddressed {
321+ __contentAddressed = true;
322+ outputHashMode = "recursive";
323+ outputHashAlgo = "sha256";
324+ };
325+
326+ drv = stdenv.mkDerivation (commonAttrs // contentAddressedAttrs // {
299327 pname = nameOnly;
300328 inherit (package.identifier) version;
301329
@@ -328,16 +356,28 @@ let
328356 description = package.synopsis or "";
329357 license = haskellLib.cabalToNixpkgsLicense package.license;
330358 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;
331367 };
332368
333369 propagatedBuildInputs =
334370 frameworks # Frameworks will be needed at link time
335371 # Not sure why pkgconfig needs to be propagatedBuildInputs but
336372 # for gi-gtk-hs it seems to help.
337− ++ builtins.concatLists pkgconfig;
373+ ++ builtins.concatLists pkgconfig
374+ ++ lib.optionals (stdenv.hostPlatform.isWindows)
375+ (lib.flatten component.libs
376+ ++ map haskellLib.dependToLib component.depends);
338377
339− buildInputs = component.libs
340− ++ map haskellLib.dependToLib component.depends;
378+ buildInputs = lib.optionals (!stdenv.hostPlatform.isWindows)
379+ (lib.flatten component.libs
380+ ++ map haskellLib.dependToLib component.depends);
341381
342382 nativeBuildInputs =
343383 [shellWrappers buildPackages.removeReferencesTo]
@@ -345,7 +385,8 @@ let
345385
346386 outputs = ["out" ]
347387 ++ (lib.optional enableSeparateDataOutput "data")
348− ++ (lib.optional keepSource "source");
388+ ++ (lib.optional keepSource "source")
389+ ++ (lib.optional writeHieFiles "hie");
349390
350391 prePatch =
351392 # emcc is very slow if it cannot cache stuff in $HOME
@@ -370,12 +411,36 @@ let
370411 runHook postConfigure
371412 '';
372413
373− buildPhase = ''
374− runHook preBuild
375− # https://gitlab.haskell.org/ghc/ghc/issues/9221
376− $SETUP_HS build ${haskellLib.componentTarget componentId} -j$(($NIX_BUILD_CORES > 4 ? 4 : $NIX_BUILD_CORES)) ${lib.concatStringsSep " " setupBuildFlags}
377− runHook postBuild
378− '';
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+ '');
379444
380445 # Note: Cabal does *not* copy test executables during the `install` phase.
381446 #
@@ -447,7 +512,7 @@ let
447512 if [ -f ${testExecutable} ]; then
448513 mkdir -p $(dirname $out/bin/${exeName})
449514 ${if stdenv.hostPlatform.isGhcjs then ''
450− cat <(echo \#!${lib.getBin buildPackages.nodejs}/bin/node) ${testExecutable} >| $out/bin/${exeName}
515+ cat <(echo \#!${lib.getBin buildPackages.nodejs-12_x}/bin/node) ${testExecutable} >| $out/bin/${exeName}
451516 chmod +x $out/bin/${exeName}
452517 '' else ''
453518 cp -r ${testExecutable} $(dirname $out/bin/${exeName})
@@ -455,7 +520,9 @@ let
455520 fi
456521 '')
457522 # In case `setup copy` did not create this
458− + (lib.optionalString enableSeparateDataOutput "mkdir -p $data")
523+ + (lib.optionalString enableSeparateDataOutput ''
524+ mkdir -p $data
525+ '')
459526 + (lib.optionalString (stdenv.hostPlatform.isWindows && (haskellLib.mayHaveExecutable componentId)) (''
460527 echo "Symlink libffi and gmp .dlls ..."
461528 for p in ${lib.concatStringsSep " " [ libffi gmp ]}; do
@@ -463,14 +530,10 @@ let
463530 done
464531 ''
465532 # symlink all .dlls into the local directory.
466− # we ask ghc-pkg for *all* dynamic-library-dirs and then iterate over the unique set
467− # to symlink over dlls as needed.
468533 + ''
469− echo "Symlink library dependencies..."
470− for libdir in $(${stdenv.hostPlatform.config}-ghc-pkg field "*" dynamic-library-dirs --simple-output|xargs|sed 's/ /\n/g'|sort -u); do
471− if [ -d "$libdir" ]; then
472− find "$libdir" -iname '*.dll' -exec ln -s {} $out/bin \;
473− fi
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 \;
474537 done
475538 ''))
476539 + (lib.optionalString doCoverage ''
@@ -505,6 +568,16 @@ let
505568 echo The test ${package.identifier.name}.components.tests.${componentId.cname} was built. To run the test build ${package.identifier.name}.checks.${componentId.cname}.
506569 '');
507570
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+
508581 shellHook = ''
509582 export PATH="${shellWrappers}/bin:$PATH"
510583 ${shellHookApplied}
builder/default.nix+23−15
@@ -1,4 +1,4 @@
1−{ pkgs, buildPackages, stdenv, lib, haskellLib, ghc, compiler-nix-name, fetchurl, pkgconfig, nonReinstallablePkgs, hsPkgs, compiler }:
1+{ pkgs, buildPackages, evalPackages, stdenv, lib, haskellLib, ghc, compiler-nix-name, 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;
21− inherit buildPackages pkgconfig;
20+ inherit (buildPackages) stdenv pkgconfig;
21+ inherit buildPackages;
2222 inherit haskellLib nonReinstallablePkgs makeSetupConfigFiles;
2323 };
2424
@@ -26,8 +26,9 @@ 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 runCommand makeWrapper;
30− inherit (buildPackages.xorg) lndir;
29+ inherit (buildPackages) stdenv;
30+ inherit (buildPackages.buildPackages) runCommand makeWrapper;
31+ inherit (buildPackages.buildPackages.xorg) lndir;
3132 };
3233
3334 # Builds a derivation which contains a ghc package-db of
@@ -44,22 +45,29 @@ let
4445
4546 hoogleLocal = let
4647 nixpkgsHoogle = import (pkgs.path + /pkgs/development/haskell-modules/hoogle.nix);
47− in { packages ? [], hoogle ? pkgs.buildPackages.haskell-nix.tool compiler.nix-name "hoogle" {
48− version = "5.0.17.15";
48+ in { packages ? [], hoogle ? pkgs.buildPackages.haskell-nix.tool "ghc8107" "hoogle" {
49+ inherit evalPackages;
50+ version = "5.0.18.3";
4951 index-state = pkgs.haskell-nix.internalHackageIndexState;
5052 }
5153 }:
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− };
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;
5967
6068 # Same as haskellPackages.shellFor in nixpkgs.
6169 shellFor = haskellLib.weakCallPackage pkgs ./shell-for.nix {
62− inherit hsPkgs ghcForComponent makeConfigFiles hoogleLocal haskellLib buildPackages compiler;
70+ inherit hsPkgs ghcForComponent makeConfigFiles hoogleLocal haskellLib buildPackages evalPackages compiler;
6371 inherit (buildPackages) glibcLocales;
6472 };
6573
builder/ghc-for-component-wrapper.nix+60−15
@@ -13,6 +13,7 @@
1313, configFiles # The component's "config" derivation
1414, postInstall ? ""
1515, enableDWARF
16+, plugins
1617}:
1718
1819let
@@ -37,31 +38,70 @@ in runCommand "${componentName}-${ghc.name}-env" {
3738 ''
3839 . ${makeWrapper}/nix-support/setup-hook
3940
40− # Start with a ghc...
41+ ''
42+ # Start with a ghc and remove all of the package directories
43+ + ''
4144 mkdir -p $out/bin
4245 ${lndir}/bin/lndir -silent ${ghc} $out
43− # ... remove all of the package directories
4446 rm -rf ${libDir}/*/
45− # ... but retain the lib/ghc/bin directory. This contains `unlit' and friends.
47+ ''
48+ # ... but retain the lib/ghc/bin directory. This contains `unlit' and friends.
49+ + ''
4650 ln -s ${ghc}/lib/${ghcCommand}-${ghc.version}/bin ${libDir}
47− # ... and the ghcjs shim's if they are available ...
51+ ''
52+ # ... and the ghcjs shim's if they are available ...
53+ + ''
4854 if [ -d ${ghc}/lib/${ghcCommand}-${ghc.version}/shims ]; then
4955 ln -s ${ghc}/lib/${ghcCommand}-${ghc.version}/shims ${libDir}
5056 fi
51− # ... and node modules ...
57+ ''
58+ # ... and node modules ...
59+ + ''
5260 if [ -d ${ghc}/lib/${ghcCommand}-${ghc.version}/ghcjs-node ]; then
5361 ln -s ${ghc}/lib/${ghcCommand}-${ghc.version}/ghcjs-node ${libDir}
5462 fi
55− # Replace the package database with the one from target package config.
63+ ''
64+ # Replace the package database with the one from target package config.
65+ + ''
5666 ln -s ${configFiles}/${packageCfgDir} $out/${packageCfgDir}
5767
58− # now the tricky bit. For GHCJS (to make plugins work), we need a special
59− # file called ghc_libdir. That points to the build ghc's lib.
60− echo "${ghc.buildGHC or ghc}/lib/${(ghc.buildGHC or ghc).name}" > "${libDir}/ghc_libdir"
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}]"
6194
62− # Wrap compiler executables with correct env variables.
63− # The NIX_ variables are used by the patched Paths_ghc module.
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"
64100
101+ ''
102+ # Wrap compiler executables with correct env variables.
103+ # The NIX_ variables are used by the patched Paths_ghc module.
104+ + ''
65105 for prg in ${ghcCommand} ${ghcCommand}i ${ghcCommand}-${ghc.version} ${ghcCommand}i-${ghc.version}; do
66106 if [[ -x "${ghc}/bin/$prg" ]]; then
67107 rm -f $out/bin/$prg
@@ -70,6 +110,7 @@ in runCommand "${componentName}-${ghc.name}-env" {
70110 --set "NIX_${ghcCommandCaps}" "$out/bin/${ghcCommand}" \
71111 --set "NIX_${ghcCommandCaps}PKG" "$out/bin/${ghcCommand}-pkg" \
72112 --set "NIX_${ghcCommandCaps}_DOCDIR" "${docDir}" \
113+ --set "GHC_PLUGINS" "$GHC_PLUGINS" \
73114 --set "NIX_${ghcCommandCaps}_LIBDIR" "${libDir}"
74115 fi
75116 done
@@ -82,11 +123,14 @@ in runCommand "${componentName}-${ghc.name}-env" {
82123 --set "NIX_${ghcCommandCaps}" "$out/bin/${ghcCommand}" \
83124 --set "NIX_${ghcCommandCaps}PKG" "$out/bin/${ghcCommand}-pkg" \
84125 --set "NIX_${ghcCommandCaps}_DOCDIR" "${docDir}" \
126+ --set "GHC_PLUGINS" "$GHC_PLUGINS" \
85127 --set "NIX_${ghcCommandCaps}_LIBDIR" "${libDir}"
86128 fi
87129 done
88130
89− # Wrap haddock, if the base GHC provides it.
131+ ''
132+ # Wrap haddock, if the base GHC provides it.
133+ + ''
90134 if [[ -x "${haddock}/bin/haddock" ]]; then
91135 rm -f $out/bin/haddock
92136 makeWrapper ${haddock}/bin/haddock $out/bin/haddock \
@@ -94,9 +138,10 @@ in runCommand "${componentName}-${ghc.name}-env" {
94138 --set "NIX_${ghcCommandCaps}_LIBDIR" "${libDir}"
95139 fi
96140
97− # Point ghc-pkg to the package database of the component using the
98− # --global-package-db flag.
99−
141+ ''
142+ # Point ghc-pkg to the package database of the component using the
143+ # --global-package-db flag.
144+ + ''
100145 for prg in ${ghcCommand}-pkg ${ghcCommand}-pkg-${ghc.version}; do
101146 if [[ -x "${ghc}/bin/$prg" ]]; then
102147 rm -f $out/bin/$prg
builder/haddock-builder.nix+2
@@ -41,6 +41,7 @@ let
4141 inherit (package) identifier;
4242 inherit component fullName flags needsProfiling;
4343 chooseDrv = p: p.haddock;
44+ inherit (componentDrv) enableDWARF;
4445 };
4546
4647 finalConfigureFlags = lib.concatStringsSep " " (
@@ -55,6 +56,7 @@ let
5556 componentName = fullName;
5657 configFiles = docsConfigFiles;
5758 inherit (componentDrv) enableDWARF;
59+ inherit (component) plugins;
5860 };
5961
6062 drv = stdenv.mkDerivation (commonAttrs // {
builder/hspkg-builder.nix+35−22
@@ -23,38 +23,44 @@ assert (if ghc.isHaskellNixCompiler or false then true
2323 + pkgs.lib.optionalString (name != null) (" for " + name)));
2424
2525let
26− cabalFile = if revision == null || revision == 0 then null else
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
2734 fetchurl {
2835 name = "${name}-${toString revision}.cabal";
2936 url = "https://hackage.haskell.org/package/${name}/revision/${toString revision}.cabal";
3037 sha256 = revisionSha256;
3138 };
3239
33− defaultSetupSrc = builtins.toFile "Setup.hs" ''
34− import Distribution.Simple
35− main = defaultMain
36− '';
40+ defaultSetupSrc = if stdenv.hostPlatform.isGhcjs then ./Setup.ghcjs.hs else ./Setup.hs;
3741
38− # Get the Cabal lib used to build `cabal-install`.
39− # To avoid infinite recursion we have to leave this out for packages
40− # needed to build `cabal-install`.
41− # We always do this for ghcjs as the patched version of Cabal is needed.
42− cabalLibDepends = lib.optional (
43− stdenv.hostPlatform.isGhcjs || (
44− builtins.elem compiler-nix-name["ghc865" "ghc884"]
45− &&
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`
4655 !builtins.elem package.identifier.name
4756 ["nix-tools" "alex" "happy" "hscolour" "Cabal" "bytestring" "aeson" "time"
4857 "filepath" "base-compat-batteries" "base-compat" "unix" "directory" "transformers"
49− "containers" "binary" "mtl" "text" "process" "parsec"]
50− )
51− )
52− buildPackages.haskell-nix.cabal-install-unchecked.${compiler-nix-name}.project.hsPkgs.Cabal.components.library;
58+ "containers" "binary" "mtl" "text" "process" "parsec"];
5359
54− defaultSetup = setup-builder {
60+ defaultSetup = setup-builder ({
5561 name = "${ghc.targetPrefix}default-Setup";
5662 component = {
57− depends = config.setup-depends ++ cabalLibDepends;
63+ depends = config.setup-depends ++ lib.optional useCabalFromCabalInstall cabalFromCabalInstall;
5864 libs = [];
5965 frameworks = [];
6066 doExactConfig = false;
@@ -82,12 +88,19 @@ let
8288 synopsis = null;
8389 license = "MIT";
8490 };
85− src = null; cleanSrc = buildPackages.runCommand "default-Setup-src" {} ''
91+ src = null;
92+ cleanSrc = buildPackages.runCommand "default-Setup-src" {} ''
8693 mkdir $out
8794 cat ${defaultSetupSrc} > $out/Setup.hs
8895 '';
8996 inherit defaultSetupSrc;
90− };
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+ });
91104
92105 # buildPackages.runCommand "default-Setup" { nativeBuildInputs = [(ghc.passthru.buildGHC or ghc)]; } ''
93106 # cat ${defaultSetupSrc} > Setup.hs
@@ -118,7 +131,7 @@ in rec {
118131 checks = pkgs.recurseIntoAttrs (builtins.mapAttrs
119132 (_: d: haskellLib.check d)
120133 (lib.filterAttrs (_: d: d.config.doCheck) components.tests));
121− inherit (package) identifier detailLevel isLocal isProject;
134+ inherit (package) identifier detailLevel isLocal isProject buildType;
122135 inherit setup cabalFile;
123136 isHaskell = true;
124137 inherit src;
builder/make-config-files.nix+16−8
@@ -1,8 +1,12 @@
11{ stdenv, lib, haskellLib, ghc, nonReinstallablePkgs, runCommand, writeText, writeScript }@defaults:
22
3−{ identifier, component, fullName, flags ? {}, needsProfiling ? false, enableDWARF ? false, chooseDrv ? drv: drv }:
3+{ identifier, component, fullName, flags ? {}, needsProfiling ? false, enableDWARF ? false, chooseDrv ? drv: drv, nonReinstallablePkgs ? defaults.nonReinstallablePkgs }:
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+
610 ghc = if enableDWARF then defaults.ghc.dwarf else defaults.ghc;
711
812 flagsAndConfig = field: xs: lib.optionalString (xs != []) ''
@@ -81,16 +85,20 @@ let
8185 ${target-pkg} init $out/${packageCfgDir}
8286
8387 ${lib.concatStringsSep "\n" (lib.mapAttrsToList flagsAndConfig {
84− "extra-lib-dirs" = map (p: "${lib.getLib p}/lib") component.libs
85− ++ lib.optionals (stdenv.hostPlatform.isWindows) (map (p: "${lib.getBin p}/bin") component.libs);
86− "extra-include-dirs" = map (p: "${lib.getDev p}/include") component.libs;
87− "extra-framework-dirs" = map (p: "${p}/Library/Frameworks") component.frameworks;
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);
8896 })}
8997
9098 ghc=${ghc}
9199 ${ # Copy over the nonReinstallablePkgs from the global package db.
92100 ''
93− for p in ${lib.concatStringsSep " " nonReinstallablePkgs}; do
101+ for p in ${lib.concatStringsSep " " nonReinstallablePkgs'}; do
94102 find $ghc/lib/${ghc.name}/package.conf.d -name $p'*.conf' -exec cp -f {} $out/${packageCfgDir} \;
95103 done
96104 ''}
@@ -149,13 +157,13 @@ let
149157 cat $p/exactDep/cabal.config >> $out/cabal.config
150158 ''}
151159 done
152− for p in ${lib.concatStringsSep " " (lib.remove "ghc" nonReinstallablePkgs)}; do
160+ for p in ${lib.concatStringsSep " " (lib.remove "ghc" nonReinstallablePkgs')}; do
153161 if [ -e $ghc/envDeps/$p ]; then
154162 cat $ghc/envDeps/$p >> $out/ghc-environment
155163 fi
156164 done
157165 '' + lib.optionalString component.doExactConfig ''
158− for p in ${lib.concatStringsSep " " nonReinstallablePkgs}; do
166+ for p in ${lib.concatStringsSep " " nonReinstallablePkgs'}; do
159167 if [ -e $ghc/exactDeps/$p ]; then
160168 cat $ghc/exactDeps/$p/configure-flags >> $out/configure-flags
161169 cat $ghc/exactDeps/$p/cabal.config >> $out/cabal.config
builder/setup-builder.nix+11−6
@@ -1,4 +1,4 @@
1−{ pkgs, stdenv, lib, buildPackages, haskellLib, ghc, nonReinstallablePkgs, hsPkgs, makeSetupConfigFiles, pkgconfig }:
1+{ pkgs, stdenv, lib, buildPackages, haskellLib, ghc, nonReinstallablePkgs, hsPkgs, makeSetupConfigFiles, pkgconfig }@defaults:
22
33let self =
44{ component, package, name, src, enableDWARF ? false, flags ? {}, revision ? null, patches ? [], defaultSetupSrc
@@ -7,9 +7,14 @@ let self =
77, preBuild ? component.preBuild , postBuild ? component.postBuild
88, preInstall ? component.preInstall , postInstall ? component.postInstall
99, cleanSrc ? haskellLib.cleanCabalComponent package component "setup" src
10+, nonReinstallablePkgs ? defaults.nonReinstallablePkgs
11+, smallAddressSpace ? false
1012}@drvArgs:
1113
1214let
15+ ghc = (if enableDWARF then (x: x.dwarf) else (x: x)) (
16+ (if smallAddressSpace then (x: x.smallAddressSpace) else (x: x)) defaults.ghc);
17+
1318 cleanSrc' = haskellLib.rootAndSubDir cleanSrc;
1419
1520 fullName = "${name}-setup";
@@ -18,7 +23,7 @@ let
1823
1924 configFiles = makeSetupConfigFiles {
2025 inherit (package) identifier;
21− inherit fullName flags component enableDWARF;
26+ inherit fullName flags component enableDWARF nonReinstallablePkgs;
2227 };
2328 hooks = haskellLib.optionalHooks {
2429 inherit
@@ -52,6 +57,7 @@ let
5257 cleanSrc = cleanSrc';
5358 inherit configFiles;
5459 dwarf = self (drvArgs // { enableDWARF = true; });
60+ smallAddressSpace = self (drvArgs // { smallAddressSpace = true; });
5561 };
5662
5763 meta = {
@@ -70,13 +76,12 @@ let
7076 for f in Setup.hs Setup.lhs; do
7177 if [ -f $f ]; then
7278 echo Compiling package $f
73− ghc $f -threaded '' + (if includeGhcPackage then "-package ghc " else "")
74− + ''-package-db ${configFiles}/${configFiles.packageCfgDir} --make -o ./Setup
75− setup=$(pwd)/Setup
79+ ghc $f -threaded ${if includeGhcPackage then "-package ghc " else ""
80+ }-package-db ${configFiles}/${configFiles.packageCfgDir} --make -o ./Setup
7681 fi
7782 done
7883 [ -f ./Setup ] || (echo Failed to build Setup && exit 1)
79− runHook preBuild
84+ runHook postBuild
8085 '';
8186
8287 installPhase = ''
builder/shell-for.nix+57−26
@@ -1,4 +1,4 @@
1−{ lib, stdenv, mkShell, glibcLocales, pkgconfig, ghcForComponent, makeConfigFiles, hsPkgs, hoogleLocal, haskellLib, buildPackages, compiler }:
1+{ lib, stdenv, mkShell, glibcLocales, pkgconfig, ghcForComponent, makeConfigFiles, hsPkgs, hoogleLocal, haskellLib, buildPackages, evalPackages, 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
@@ -13,6 +13,7 @@
1313 # Additional packages to be added unconditionally
1414, additional ? _: []
1515, withHoogle ? true
16+, withHaddock ? withHoogle
1617, exactDeps ? false
1718, tools ? {}
1819, packageSetupDeps ? true
@@ -25,39 +26,63 @@ let
2526
2627 selectedPackages = packages hsPkgs;
2728 additionalPackages = additional hsPkgs;
28− selectedComponents = components hsPkgs;
29+ directlySelectedComponents = components hsPkgs;
2930
30− # The configs of all the selected components
31− selectedConfigs = map (c: c.config) selectedComponents
32− ++ lib.optionals packageSetupDeps (map (p: p.setup.config) selectedPackages);
33−
34− name = if lib.length selectedPackages == 1
35− then "ghc-shell-for-${(lib.head selectedPackages).identifier.name}"
36− else "ghc-shell-for-packages";
37−
38− # Given a `packages = [ a b ]` we construct a shell with the dependencies of `a` and `b`.
31+ # Given `directlySelectedComponents = [ a b ]`, we construct a shell that includes all of their dependencies
3932 #
40− # But if `a` depends on `b`, we don't want to include `b`, because
33+ # But we want to exclude `a` if it is a transitive dependecy of `b`
34+ # because:
4135 # - cabal will end up ignoring that built version;
4236 # - The user has indicated that's what they're working on, so they probably don't want to have to build
4337 # it first (and it will change often).
44− # Generally we never want to include any of (the components of) the selected packages as dependencies.
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`
4545 #
4646 # Furthermore, if `a` depends on `b`, `a` will include the library component of `b` in its `buildInputs`
4747 # (to make `propagatedBuildInputs` of `pkgconfig-depends` work). So we also need to filter those
4848 # (the pkgconfig depends of `b` will still be included in the
4949 # system shell's `buildInputs` via `b`'s own `buildInputs`).
50− # We have to do this slightly differently because we will be looking at the actual components rather
51− # than the packages.
5250
53− # Given a list of `depends`, removes those which are components of packages which were selected as part of the shell.
51+
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
5471 removeSelectedInputs =
55− # All the components of the selected packages: we shouldn't add any of these as dependencies
56− let selectedPackageComponents = map (x: x.name) selectedComponents;
57− in lib.filter (input:
58− !(builtins.elem ((haskellLib.dependToLib input).name or null) selectedPackageComponents));
72+ lib.filter (input: !(isSelectedComponent input));
73+
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";
5984
60− # We need to remove any dependencies which are selected packages (see above).
85+ # We need to remove any dependencies which would bring in selected components (see above).
6186 packageInputs = removeSelectedInputs (lib.concatMap (cfg: cfg.depends) selectedConfigs)
6287 ++ additionalPackages;
6388
@@ -74,13 +99,15 @@ let
7499 component = {
75100 depends = packageInputs;
76101 libs = [];
102+ pkgconfig = [];
77103 frameworks = [];
78104 doExactConfig = false;
79105 };
80106 configFiles = makeConfigFiles {
81107 fullName = args.name or name;
82108 identifier.name = name;
83− inherit component;
109+ inherit component enableDWARF;
110+ chooseDrv = p: if withHaddock && p ? haddock then p.haddock else p;
84111 };
85112 ghcEnv = ghcForComponent {
86113 inherit configFiles;
@@ -89,6 +116,7 @@ let
89116 ln -s ${hoogleIndex}/bin/hoogle $out/bin
90117 '';
91118 inherit enableDWARF;
119+ plugins = [];
92120 };
93121
94122 hoogleIndex = let
@@ -105,7 +133,12 @@ let
105133 # inherit (hsPkgs) hoogle;
106134 } // (
107135 lib.optionalAttrs (args ? tools && args.tools ? hoogle) {
108− hoogle = buildPackages.haskell-nix.tool compiler.nix-name "hoogle" 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+ }]);
109142 }
110143 ));
111144
@@ -119,7 +152,7 @@ in
119152 nativeBuildInputs = [ ghcEnv ]
120153 ++ nativeBuildInputs
121154 ++ mkDrvArgs.nativeBuildInputs or []
122− ++ lib.attrValues (buildPackages.haskell-nix.tools compiler.nix-name tools)
155+ ++ lib.attrValues (buildPackages.haskell-nix.tools' evalPackages compiler.nix-name tools)
123156 # If this shell is a cross compilation shell include
124157 # wrapper script for running cabal build with appropriate args.
125158 # Includes `--with-compiler` in case the `cabal.project` file has `with-compiler:` in it.
@@ -142,8 +175,6 @@ in
142175 echo "${"Shell for " + toString (builtins.map (p : p.identifier.name) selectedPackages)}"
143176 echo $nativeBuildInputs $buildInputs > $out
144177 '';
145− LANG = "en_US.UTF-8";
146− LOCALE_ARCHIVE = lib.optionalString (stdenv.hostPlatform.libc == "glibc") "${glibcLocales}/lib/locale/locale-archive";
147178
148179 # This helps tools like `ghcide` (that use the ghc api) to find
149180 # the correct global package DB.
changelog.md+52
@@ -1,6 +1,58 @@
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+
456## Apr 8, 2021
557* Project arguments are now validated with the Nix module system.
658 If unexpected argments are passed to a project function this may now
ci-lib.nix+4−4
@@ -1,8 +1,8 @@
1−let
1+{
22 # Generic nixpkgs, use *only* for lib functions that are stable across versions
3− pkgs = import (import ./nix/sources.nix).nixpkgs {};
4− lib = pkgs.lib;
5−in rec {
3+ pkgs ? (import ./. {}).pkgs,
4+ lib ? pkgs.lib
5+}: rec {
66 inherit (import ./dimension.nix) dimension;
77
88 # A filter for removing packages that aren't supported on the current platform
ci.nix+50−37
@@ -4,17 +4,24 @@
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 }:
7+, checkMaterialization ? false
8+, pkgs ? (import ./. {}).pkgs }:
89 let
9− inherit (import ./ci-lib.nix) dimension platformFilterGeneric filterAttrsOnlyRecursive;
10− sources = import ./nix/sources.nix {};
10+ inherit (import ./ci-lib.nix { inherit pkgs; }) dimension platformFilterGeneric filterAttrsOnlyRecursive;
11+ inherit (pkgs.haskell-nix) sources;
1112 nixpkgsVersions = {
12− "R2003" = "nixpkgs-2003";
13− "R2009" = "nixpkgs-2009";
13+ "R2111" = "nixpkgs-2111";
14+ "R2205" = "nixpkgs-2205";
1415 "unstable" = "nixpkgs-unstable";
1516 };
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+ };
23+ };
1624 compilerNixNames = nixpkgsName: nixpkgs: builtins.mapAttrs (compiler-nix-name: runTests: {
17− inherit (import ./default.nix { inherit checkMaterialization; }) nixpkgsArgs;
1825 inherit runTests;
1926 }) (
2027 # GHC version to cache and whether to run the tests against them.
@@ -23,53 +30,59 @@
2330 # cabal-install and nix-tools plans. When removing a ghc version
2431 # from here (so that is no longer cached) also remove ./materialized/ghcXXX.
2532 # Update supported-ghc-versions.md to reflect any changes made here.
26− {
27− ghc865 = true;
28− ghc8104 = false; # Just included because the native version is needed at eval time
29− } // nixpkgs.lib.optionalAttrs (nixpkgsName == "R2009") {
33+ nixpkgs.lib.optionalAttrs (nixpkgsName == "R2111") {
34+ ghc865 = false;
35+ ghc8107 = true;
36+ } // nixpkgs.lib.optionalAttrs (nixpkgsName == "R2205") {
3037 ghc865 = false;
31− ghc884 = true;
32− ghc8104 = true;
38+ ghc8107 = true;
3339 } // nixpkgs.lib.optionalAttrs (nixpkgsName == "unstable") {
3440 ghc865 = false;
35− ghc8104 = true;
36− ghc901 = true;
37− ghc810420210212 = false;
41+ ghc884 = false; # Native version is used to boot 9.0.1
42+ ghc8107 = true;
43+ ghc902 = true;
44+ ghc924 = true;
3845 });
39− systems = nixpkgs: nixpkgs.lib.filterAttrs (_: v: builtins.elem v supportedSystems) {
40− # I wanted to take these from 'lib.systems.examples', but apparently there isn't one for linux!
41− linux = "x86_64-linux";
42− darwin = "x86_64-darwin";
43− };
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);
4460 crossSystems = nixpkgsName: nixpkgs: compiler-nix-name: system:
4561 # We need to use the actual nixpkgs version we're working with here, since the values
4662 # of 'lib.systems.examples' are not understood between all versions
4763 let lib = nixpkgs.lib;
48− in lib.optionalAttrs (nixpkgsName == "unstable" && (__elem compiler-nix-name ["ghc865" "ghc884" "ghc8104"])) {
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"]))) {
4967 inherit (lib.systems.examples) ghcjs;
50− } // lib.optionalAttrs (system == "x86_64-linux" && (
51− (nixpkgsName == "R2009" && __elem compiler-nix-name ["ghc8101" "ghc8102" "ghc8103" "ghc8104" "ghc810420210212"])
52− || (nixpkgsName == "R2003" && __elem compiler-nix-name ["ghc865"]))) {
53− # Windows cross compilation is currently broken on macOS
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
5471 inherit (lib.systems.examples) mingwW64;
55− } // lib.optionalAttrs (system == "x86_64-linux"
56− && !(nixpkgsName == "R2003" && compiler-nix-name == "ghc8104")) {
72+ } // lib.optionalAttrs (system == "x86_64-linux" && nixpkgsName == "unstable" && __elem compiler-nix-name ["ghc8107" "ghc902" "ghc922" "ghc923" "ghc924"]) {
5773 # Musl cross only works on linux
5874 # aarch64 cross only works on linux
59− # We also skip these for the R2003 was build of ghc8104 (we only need the
60− # native so ifdLevel 1 includes compiler needed in ifdLevel2 eval)
6175 inherit (lib.systems.examples) musl64 aarch64-multiplatform;
6276 };
6377 isDisabled = d: d.meta.disabled or false;
6478in
6579dimension "Nixpkgs version" nixpkgsVersions (nixpkgsName: nixpkgs-pin:
6680 let pinnedNixpkgsSrc = sources.${nixpkgs-pin};
67− # We need this for generic nixpkgs stuff at the right version
68− genericPkgs = import pinnedNixpkgsSrc {};
69− in dimension "GHC version" (compilerNixNames nixpkgsName genericPkgs) (compiler-nix-name: {nixpkgsArgs, runTests}:
70− dimension "System" (systems genericPkgs) (systemName: system:
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:
7184 let pkgs = import pinnedNixpkgsSrc (nixpkgsArgs // { inherit system; });
72− build = import ./build.nix { inherit pkgs ifdLevel compiler-nix-name; };
85+ build = import ./build.nix { inherit pkgs evalPackages ifdLevel compiler-nix-name; };
7386 platformFilter = platformFilterGeneric pkgs system;
7487 in filterAttrsOnlyRecursive (_: v: platformFilter v && !(isDisabled v)) ({
7588 # Native builds
@@ -82,14 +95,14 @@ dimension "Nixpkgs version" nixpkgsVersions (nixpkgsName: nixpkgs-pin:
8295 } // pkgs.lib.optionalAttrs (ifdLevel >= 1) {
8396 iserv-proxy = pkgs.ghc-extra-projects."${compiler-nix-name}".getComponent "iserv-proxy:exe:iserv-proxy";
8497 } // pkgs.lib.optionalAttrs (ifdLevel >= 3) {
85− hello = (pkgs.haskell-nix.hackage-package { name = "hello"; version = "1.0.0.2"; inherit compiler-nix-name; }).getComponent "exe:hello";
98+ hello = (pkgs.haskell-nix.hackage-package { name = "hello"; version = "1.0.0.2"; inherit evalPackages compiler-nix-name; }).getComponent "exe:hello";
8699 });
87100 }
88101 //
89− dimension "Cross system" (crossSystems nixpkgsName genericPkgs compiler-nix-name system) (crossSystemName: crossSystem:
102+ dimension "Cross system" (crossSystems nixpkgsName evalPackages compiler-nix-name system) (crossSystemName: crossSystem:
90103 # Cross builds
91104 let pkgs = import pinnedNixpkgsSrc (nixpkgsArgs // { inherit system crossSystem; });
92− build = import ./build.nix { inherit pkgs ifdLevel compiler-nix-name; };
105+ build = import ./build.nix { inherit pkgs evalPackages ifdLevel compiler-nix-name; };
93106 in pkgs.recurseIntoAttrs (pkgs.lib.optionalAttrs (ifdLevel >= 1) ({
94107 roots = pkgs.haskell-nix.roots' compiler-nix-name ifdLevel;
95108 ghc = pkgs.buildPackages.haskell-nix.compiler."${compiler-nix-name}";
compiler/ghc/configured-src.nixdeleted−127
@@ -1,127 +0,0 @@
1−{ stdenv, lib, fetchurl
2−, ghc-version, ghc-version-date, 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−, enableDWARF, elfutils
13−, ncurses, targetLibffi, libiconv
14−, disableLargeAddressSpace
15−, buildMK
16−}:
17−stdenv.mkDerivation (rec {
18−
19− version = ghc-version;
20− patches = ghc-patches;
21− name = "${targetPrefix}ghc-${ghc-version}-configured-src";
22−
23− # Make sure we never relax`$PATH` and hooks support for compatability.
24− strictDeps = true;
25−
26− nativeBuildInputs = [
27− perl autoconf automake m4 python3 sphinx
28− ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
29− ] ++ lib.optional (patches != []) autoreconfHook;
30−
31− # For building runtime libs
32− depsBuildTarget = toolsForTarget;
33−
34− buildInputs = [ perl bash ] ++ (libDeps hostPlatform);
35−
36− propagatedBuildInputs = [ targetPackages.stdenv.cc ]
37− ++ lib.optional useLLVM llvmPackages.llvm;
38−
39− depsTargetTarget = map lib.getDev (libDeps targetPlatform);
40− depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform);
41−
42− postPatch = "patchShebangs .";
43−
44− src = if src-spec ? file
45− then src-spec.file
46− else fetchurl { inherit (src-spec) url sha256; };
47−
48− # GHC is a bit confused on its cross terminology.
49− preConfigure = ''
50− for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
51− export "''${env#TARGET_}=''${!env}"
52− done
53− # GHC is a bit confused on its cross terminology, as these would normally be
54− # the *host* tools.
55− export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
56− export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx"
57− # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
58− export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString targetPlatform.isAarch32 ".gold"}"
59− export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
60− export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
61− export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
62− export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
63− export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
64− export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip"
65−
66− echo -n "${buildMK}" > mk/build.mk
67− sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
68− '' + lib.optionalString (!stdenv.isDarwin) ''
69− export NIX_LDFLAGS+=" -rpath $out/lib/${targetPrefix}ghc-${version}"
70− '' + lib.optionalString stdenv.isDarwin ''
71− export NIX_LDFLAGS+=" -no_dtrace_dof"
72− '' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
73− 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
74− '' + lib.optionalString targetPlatform.isMusl ''
75− echo "patching llvm-targets for musl targets..."
76− echo "Cloning these existing '*-linux-gnu*' targets:"
77− grep linux-gnu llvm-targets | sed 's/^/ /'
78− echo "(go go gadget sed)"
79− sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets
80− echo "llvm-targets now contains these '*-linux-musl*' targets:"
81− grep linux-musl llvm-targets | sed 's/^/ /'
82−
83− echo "And now patching to preserve '-musleabi' as done with '-gnueabi'"
84− # (aclocal.m4 is actual source, but patch configure as well since we don't re-gen)
85− for x in configure aclocal.m4; do
86− substituteInPlace $x \
87− --replace '*-android*|*-gnueabi*)' \
88− '*-android*|*-gnueabi*|*-musleabi*)'
89− done
90− '' + lib.optionalString (src-spec.version != ghc-version) ''
91− substituteInPlace configure --replace 'RELEASE=YES' 'RELEASE=NO'
92− echo '${ghc-version}' > VERSION
93− '' + lib.optionalString (ghc-version-date != null) ''
94− substituteInPlace configure --replace 'RELEASE=YES' 'RELEASE=NO'
95− echo '${ghc-version-date}' > VERSION_DATE
96− '';
97−
98− configurePlatforms = [ "build" "host" "target" ];
99− # `--with` flags for libraries needed for RTS linker
100− configureFlags = [
101− "--datadir=$doc/share/doc/ghc"
102− "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
103− ] ++ lib.optionals (targetLibffi != null) ["--with-system-libffi" "--with-ffi-includes=${targetLibffi.dev}/include" "--with-ffi-libraries=${targetLibffi.out}/lib"
104− ] ++ lib.optional (!enableIntegerSimple) [
105− "--with-gmp-includes=${targetGmp.dev}/include" "--with-gmp-libraries=${targetGmp.out}/lib"
106− ] ++ lib.optional (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
107− "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
108− ] ++ lib.optionals (targetPlatform != hostPlatform) [
109− "--enable-bootstrap-with-devel-snapshot"
110− ] ++ lib.optionals (disableLargeAddressSpace) [
111− "--disable-large-address-space"
112− ] ++ lib.optionals (targetPlatform.isAarch32) [
113− "CFLAGS=-fuse-ld=gold"
114− "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
115− "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
116− ] ++ lib.optionals enableDWARF [
117− "--enable-dwarf-unwind"
118− "--with-libdw-includes=${lib.getDev elfutils}/include"
119− "--with-libdw-libraries=${lib.getLib elfutils}/lib"
120− ];
121−
122− outputs = [ "out" ];
123− phases = [ "unpackPhase" "patchPhase" ]
124− ++ lib.optional (ghc-patches != []) "autoreconfPhase"
125− ++ [ "configurePhase" "installPhase" ];
126− installPhase = "cp -r . $out";
127−})
compiler/ghc/default.nix+222−64
@@ -13,7 +13,9 @@ let self =
1313, autoreconfHook
1414, bash
1515
16−, libiconv ? null, ncurses
16+, libiconv ? null
17+
18+, ncurses # TODO remove this once the cross compilers all work without
1719
1820, installDeps
1921
@@ -29,6 +31,9 @@ let self =
2931, # If enabled, GHC will be built with the GPL-free but slower integer-simple
3032 # library instead of the faster but GPLed integer-gmp library.
3133 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)
3237
3338, # If enabled, use -fPIC when compiling static libs.
3439 enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform && !stdenv.targetPlatform.isAarch32
@@ -41,8 +46,12 @@ let self =
4146
4247, enableDWARF ? false
4348
44−, # Whether to build terminfo. Musl fails to build terminfo as ncurses seems to be linked to glibc
45− enableTerminfo ? !stdenv.targetPlatform.isWindows && !stdenv.targetPlatform.isMusl
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
4655
4756, # What flavour to build. An empty string indicates no
4857 # specific flavour and falls back to ghc default values.
@@ -65,7 +74,11 @@ let self =
6574, extra-passthru ? {}
6675}@args:
6776
68−assert !enableIntegerSimple -> gmp != null;
77+assert !(enableIntegerSimple || enableNativeBignum) -> gmp != null;
78+
79+# Early check to make sure only one of these is enabled
80+assert enableNativeBignum -> !enableIntegerSimple;
81+assert enableIntegerSimple -> !enableNativeBignum;
6982
7083let
7184 inherit (stdenv) buildPlatform hostPlatform targetPlatform;
@@ -73,6 +86,17 @@ let
7386
7487 inherit (bootPkgs) ghc;
7588
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+
76100 # TODO check if this possible fix for segfaults works or not.
77101 targetLibffi =
78102 # on native platforms targetPlatform.{libffi, gmp} do not exist; thus fall back
@@ -85,6 +109,10 @@ let
85109
86110 targetGmp = targetPackages.gmp or gmp;
87111
112+ targetIconv = targetPackages.libiconv or libiconv;
113+
114+ targetNumactl = targetPackages.numactl or numactl;
115+
88116 # TODO(@Ericson2314) Make unconditional
89117 targetPrefix = lib.optionalString
90118 (targetPlatform != hostPlatform)
@@ -96,7 +124,8 @@ let
96124 include mk/flavours/\$(BuildFlavour).mk
97125 endif
98126 DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
99− INTEGER_LIBRARY = ${if enableIntegerSimple then "integer-simple" else "integer-gmp"}
127+ '' + bignumSpec + ''
128+ EXTRA_HADDOCK_OPTS += --quickjump --hyperlinked-source
100129 '' + lib.optionalString (targetPlatform != hostPlatform) ''
101130 CrossCompilePrefix = ${targetPrefix}
102131 '' + lib.optionalString isCrossTarget ''
@@ -110,6 +139,10 @@ let
110139 '' + lib.optionalString enableRelocatedStaticLibs ''
111140 GhcLibHcOpts += -fPIC
112141 GhcRtsHcOpts += -fPIC
142+ GhcRtsCcOpts += -fPIC
143+ '' + lib.optionalString (enableRelocatedStaticLibs && targetPlatform.isx86_64 && !targetPlatform.isWindows) ''
144+ GhcLibHcOpts += -fexternal-dynamic-refs
145+ GhcRtsHcOpts += -fexternal-dynamic-refs
113146 '' + lib.optionalString enableDWARF ''
114147 GhcLibHcOpts += -g3
115148 GhcRtsHcOpts += -g3
@@ -120,24 +153,29 @@ let
120153 ''
121154 # musl doesn't have a system-linker. Only on x86, and on x86 we need it, as
122155 # our elf linker for x86_64 is broken.
123− + lib.optionalString (targetPlatform.isMusl && !targetPlatform.isx86) ''
156+ + lib.optionalString (targetPlatform.isAndroid || (targetPlatform.isMusl && !targetPlatform.isx86)) ''
124157 compiler_CONFIGURE_OPTS += --flags=-dynamic-system-linker
125158 ''
126159 # While split sections are now enabled by default in ghc 8.8 for windows,
127160 # the seem to lead to `too many sections` errors when building base for
128161 # profiling.
129− + lib.optionalString targetPlatform.isWindows ''
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) ''
130166 SplitSections = NO
131167 '' + lib.optionalString (!enableLibraryProfiling) ''
132168 BUILD_PROF_LIBS = NO
133169 '';
134170
135171 # Splicer will pull out correct variations
136− libDeps = platform: lib.optional enableTerminfo [ ncurses ]
172+ libDeps = platform: lib.optional enableTerminfo [ targetPackages.ncurses targetPackages.ncurses.dev ]
137173 ++ [targetLibffi]
138174 ++ lib.optional (!enableIntegerSimple) gmp
139175 ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv
140− ++ lib.optional (platform.isLinux && !platform.isAarch32) numactl;
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;
141179
142180 toolsForTarget =
143181 if hostPlatform == buildPlatform then
@@ -147,24 +185,6 @@ let
147185
148186 targetCC = builtins.head toolsForTarget;
149187
150− configured-src = import ./configured-src.nix {
151− inherit stdenv lib fetchurl
152− ghc-version ghc-version-date ghc-patches src-spec
153− targetPrefix
154− targetPlatform hostPlatform
155− targetPackages
156− perl autoconf automake m4 python3 sphinx ghc bootPkgs
157− autoreconfHook toolsForTarget bash
158− libDeps
159− useLLVM llvmPackages
160− targetCC
161− enableIntegerSimple targetGmp
162− enableDWARF elfutils
163− ncurses targetLibffi libiconv
164− disableLargeAddressSpace
165− buildMK
166− ;
167− };
168188in
169189stdenv.mkDerivation (rec {
170190 version = ghc-version;
@@ -172,42 +192,102 @@ stdenv.mkDerivation (rec {
172192
173193 patches = ghc-patches;
174194
175− # for this to properly work (with inheritance of patches, postPatch, ...)
176− # this needs to be a function over the values we want to inherit and then called
177− # accordingly. Most trivial might be to just have args, and mash them into the
178− # attrset.
179− src = configured-src;
195+ src = if src-spec ? file
196+ then src-spec.file
197+ else fetchurl { inherit (src-spec) url sha256; };
180198
181199 # configure was run by configured-src already.
182− phases = [ "unpackPhase" "buildPhase"
200+ phases = [ "unpackPhase" "patchPhase" ]
201+ ++ lib.optional (ghc-patches != []) "autoreconfPhase"
202+ ++ [ "configurePhase" "buildPhase"
183203 "checkPhase" "installPhase"
184204 "fixupPhase"
185205 "installCheckPhase"
186206 "distPhase"
187207 ];
188208
189− # ghc hardcodes the TOP dir during config, this breaks when
190− # splitting the configured src from the build process.
191− postUnpack = ''
192− (cd $sourceRoot
193− TOP=$(cat mk/config.mk|grep ^TOP|awk -F\ '{ print $3 }')
194− PREFIX=$(cat mk/install.mk|grep ^prefix|awk -F\ '{ print $3 }')
195−
196− # these two are required
197− substituteInPlace mk/config.mk --replace "$TOP" "$PWD" \
198− --replace "$PREFIX" "$out"
199−
200− substituteInPlace mk/install.mk --replace "$TOP" "$PWD" \
201− --replace "$PREFIX" "$out"
202−
203− # these two only for convencience.
204− substituteInPlace config.log --replace "$TOP" "$PWD"\
205− --replace "$PREFIX" "$out"
206− substituteInPlace config.status --replace "$TOP" "$PWD"\
207− --replace "$PREFIX" "$out")
208−
209−
210− '';
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+ ];
211291
212292 enableParallelBuilding = true;
213293 postPatch = "patchShebangs .";
@@ -230,9 +310,6 @@ stdenv.mkDerivation (rec {
230310
231311 buildInputs = [ perl bash ] ++ (libDeps hostPlatform);
232312
233− propagatedBuildInputs = [ targetPackages.stdenv.cc ]
234− ++ lib.optional useLLVM llvmPackages.llvm;
235−
236313 depsTargetTarget = map lib.getDev (libDeps targetPlatform);
237314 depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform);
238315
@@ -250,7 +327,18 @@ stdenv.mkDerivation (rec {
250327 ++ lib.optional stdenv.targetPlatform.isAarch32 "pic"
251328 ++ lib.optional stdenv.targetPlatform.isMusl "pie";
252329
253− postInstall = ''
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+ '' + ''
254342 # Install the bash completion file.
255343 install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
256344
@@ -266,11 +354,9 @@ stdenv.mkDerivation (rec {
266354 $i
267355 done
268356
269− # Save generated files for needed when building ghcjs
357+ # Save generated files for needed when building ghc and ghcjs
270358 mkdir -p $generated/includes/dist-derivedconstants/header
271− cp includes/dist-derivedconstants/header/GHCConstantsHaskellExports.hs \
272− includes/dist-derivedconstants/header/GHCConstantsHaskellType.hs \
273− includes/dist-derivedconstants/header/GHCConstantsHaskellWrappers.hs \
359+ cp includes/dist-derivedconstants/header/GHCConstantsHaskell*.hs \
274360 $generated/includes/dist-derivedconstants/header
275361 if [[ -f includes/ghcplatform.h ]]; then
276362 cp includes/ghcplatform.h $generated/includes
@@ -279,6 +365,15 @@ stdenv.mkDerivation (rec {
279365 fi
280366 mkdir -p $generated/compiler/stage2/build
281367 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
282377 mkdir -p $generated/rts/build
283378 cp rts/build/config.hs-incl $generated/rts/build || true
284379
@@ -322,7 +417,40 @@ stdenv.mkDerivation (rec {
322417 # Our Cabal compiler name
323418 haskellCompilerName = "ghc-${version}";
324419
325− configured-src = configured-src;
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+ });
326454
327455 # Used to detect non haskell-nix compilers (accidental use of nixpkgs compilers can lead to unexpected errors)
328456 isHaskellNixCompiler = true;
@@ -332,6 +460,11 @@ stdenv.mkDerivation (rec {
332460 enableDWARF = stdenv.targetPlatform.isLinux
333461 && builtins.compareVersions ghc-version "8.10.2" >= 0;
334462 });
463+
464+ # The same GHC, but without the large (1TB) address space reservation
465+ smallAddressSpace = lib.makeOverridable self (args // {
466+ disableLargeAddressSpace = true;
467+ });
335468 } // extra-passthru;
336469
337470 meta = {
@@ -350,5 +483,30 @@ stdenv.mkDerivation (rec {
350483 dontStrip = true;
351484 dontPatchELF = true;
352485 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+ '';
353511});
354512in self
compiler/ghcjs/ghcjs.nix+9−1
@@ -7,6 +7,7 @@
77 then "ghc884"
88 else "ghc865"
99, ghc ? pkgs.buildPackages.ghc
10+, overrideBootPackages ? [] # adds if not present, overrides if present.
1011}:
1112let
1213 isGhcjs88 = builtins.compareVersions ghcjsVersion "8.8.0.0" >= 0;
@@ -14,8 +15,14 @@ let
1415
1516 project = pkgs.buildPackages.haskell-nix.ghcjsProject {
1617 src = ghcjsSrc;
17− inherit ghcjsVersion compiler-nix-name;
18+ inherit ghcjsVersion compiler-nix-name overrideBootPackages;
1819 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 [];
1926# plan-sha256 = "1wy2lr08maxyi7r8jiwf2gj6pdayk5vxxwh42bj4s2gg4035z0yc";
2027# materialized = ../../materialized/ghcjs;
2128 };
@@ -59,6 +66,7 @@ let
5966 # Used to detect non haskell-nix compilers (accidental use of nixpkgs compilers can lead to unexpected errors)
6067 isHaskellNixCompiler = true;
6168 } // ghcjs.components.exes;
69+ dontUpdateAutotoolsGnuConfigScripts = true;
6270 dontConfigure = true;
6371 dontInstall = true;
6472 buildPhase = ''
compiler/ghcjs/ghcjs810-patched-boot-packages/aeson.patchnew file+13
@@ -0,0 +1,13 @@
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.nixnew file+176
@@ -0,0 +1,176 @@
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.patchnew file+471
@@ -0,0 +1,471 @@
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.patchnew file+99
@@ -0,0 +1,99 @@
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.json+2−2
@@ -1,6 +1,6 @@
11{
22 "url": "https://github.com/ghcjs/ghcjs",
3− "rev": "ecb5954b98cdaeb3d4097401c9c3551e7a6f69ce",
4− "sha256": "09120brnd8n8psskq9f098n7wrlrbb2h7s703678a4gbl2xfglql",
3+ "rev": "bb403ec3a1506831aae2d608b7b21c1937e4fb20",
4+ "sha256": "0bs3hijwn0p4wvphwg78mwbz8qyi10wqgfh8yfaszaj1766892ba",
55 "fetchSubmodules": true
66}
compiler/ghcjs/patches/810/boot-optimization-flags.patchnew file+14
@@ -0,0 +1,14 @@
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.patchnew file+87
@@ -0,0 +1,87 @@
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/windows/include/synchapi.hnew file+1
@@ -0,0 +1 @@
1+#include <windows.h>
compiler/windows/include/windows.hnew file+18
@@ -0,0 +1,18 @@
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,11 +2,7 @@
22 # allow building for windows
33 allowUnsupportedSystem = true;
44 # we want the 64bit wine version
5− # See overlays/wine.nix as well!
65 wine.build = "wine64";
76 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" ];
117}
128
default.nix+29−29
@@ -1,29 +1,29 @@
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− pkgs-unstable = import sources.nixpkgs-unstable nixpkgsArgs;
29−}
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))
docs/dev/hix.mdnew file+27
@@ -0,0 +1,27 @@
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/reference/library.md+4−2
@@ -144,7 +144,7 @@ Then feeding its result into [mkStackPkgSet](#mkstackpkgset) passing also
144144| `hsPkgs` | Attrset of [Haskell Packages](#haskell-package) | Buildable packages, created from `packages` |
145145| `stack-nix` | | `projectNix` attribute of [`callStackToNix`](#callstacktonix) return value |
146146| `shellFor` | Function | [`shellFor`](#shellfor) |
147−| `ghcWithHoogle` | Function | [`ghcWithHoogle`](#ghcwithhoogle) |
147+| `ghcWithHoogle` | Function | [`ghcWithHoogle`](#ghcwithhoogle) |
148148| `ghcWithPackages` | Function | [`ghcWithPackages`](#ghcwithpackages) |
149149
150150
@@ -163,9 +163,11 @@ Then feeding its result into [mkCabalProjectPkgSet](#mkcabalprojectpkgset) passi
163163| `plan-nix` | | `projectNix` attribute of [`callCabalProjectToNix`](#callcabalprojecttonix) return value |
164164| `index-state` | | `index-state` attribute of [`callCabalProjectToNix`](#callcabalprojecttonix) return value |
165165| `shellFor` | Function | [`shellFor`](#shellfor) |
166−| `ghcWithHoogle` | Function | [`ghcWithHoogle`](#ghcwithhoogle) |
166+| `ghcWithHoogle` | Function | [`ghcWithHoogle`](#ghcwithhoogle) |
167167| `ghcWithPackages` | Function | [`ghcWithPackages`](#ghcwithpackages) |
168168| `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. |
169171
170172## project, cabalProject and stackProject
171173
docs/reference/supported-ghc-versions.md+39−18
@@ -1,28 +1,49 @@
11# Supported GHC Versions
22
3−
4−The following GHC versions are defined in `haskell.nix` (i.e. there is a derivation for them even if it isn't necessarily cached):
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):
55- 8.4.4
66- 8.6.{1,2,3,4,5}
77- 8.8.{1,2,3,4}
8−- 8.10.{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.
921
10−The following table shows the nixpkgs/GHC versions which are built by CI, and which of those are tested.
11−If you use a combination of nixpkgs version and GHC version which is in this table, you should get cache hits from our cache.
12−The "nixpkgs versions" refer to the versions that `haskell.nix` provides; if you use your own version of nixpkgs you will likely not get cache hit.
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 |
1331
14−| Nixpkgs version | GHC version | Tested? |
15−|------------------|-------------|---------|
16−| 20.03 | 8.6.5 | Y |
17−| 20.09 | 8.6.5 | Y |
18−| 20.09 | 8.8.4 | Y |
19−| 20.09 | 8.10.4 | Y |
20−| nixpkgs-unstable | 8.6.5 | Y |
21−| nixpkgs-unstable | 8.8.4 | Y |
22−| nixpkgs-unstable | 8.10.4 | Y |
32+See [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).
2335
24−See [ci.nix](https://github.com/input-output-hk/haskell.nix/blob/master/ci.nix) for the source of truth about what is built and tested.
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).
2541
26−See [overlays/bootstrap.nix](https://github.com/input-output-hk/haskell.nix/blob/master/overlays/bootstrap.nix) for a list of all the valid `compiler-nix-names`.
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.
2747
28−See also: [Instructions on adding new GHC versions](../dev/adding-new-ghc.md).
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.
docs/tutorials/ca-derivations.mdnew file+65
@@ -0,0 +1,65 @@
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/getting-started-flakes.md+44−14
@@ -22,10 +22,34 @@ You need to add the following sections to `/etc/nix/nix.conf` or, if you are a t
2222
2323```
2424trusted-public-keys = [...] hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= [...]
25−substituters = [...] https://hydra.iohk.io [...]
25+substituters = [...] https://cache.iog.io [...]
2626```
2727
28−This can be tricky to get setup properly. If you're still having trouble getting cache hits, consult the corresponding [troubleshooting section](../reference/troubleshooting#why-am-i-building-ghc).
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).
2953
3054## Scaffolding
3155
@@ -50,24 +74,30 @@ Add `flake.nix`:
5074 final.haskell-nix.project' {
5175 src = ./.;
5276 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];
5390 };
5491 })
5592 ];
56− pkgs = import nixpkgs { inherit system overlays; };
57− flake = pkgs.helloProject.flake {};
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+ };
5898 in flake // {
5999 # Built by `nix build .`
60100 defaultPackage = flake.packages."hello:exe:hello";
61−
62− # This is used by `nix develop .` to open a shell for use with
63− # `cabal`, `hlint` and `haskell-language-server`
64− devShell = pkgs.helloProject.shellFor {
65− tools = {
66− cabal = "latest";
67− hlint = "latest";
68− haskell-language-server = "latest";
69− };
70− };
71101 });
72102}
73103```
docs/tutorials/getting-started-hix.mdnew file+227
@@ -0,0 +1,227 @@
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+19−7
@@ -18,26 +18,38 @@ You need to add the following sections to `/etc/nix/nix.conf` or, if you are a t
1818
1919```
2020trusted-public-keys = [...] hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= [...]
21−substituters = [...] https://hydra.iohk.io [...]
21+substituters = [...] https://cache.iog.io [...]
2222```
2323
2424If you're running NixOS, you need to add/update the following in your `/etc/nixos/configuration.nix` files instead.
2525
2626```
2727# 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
2840nix.binaryCachePublicKeys = [
2941 "hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
3042];
3143nix.binaryCaches = [
32− "https://hydra.iohk.io"
33−];
44+ "https://cache.iog.io"
45+];
3446```
3547
36−This can be tricky to get setup properly. If you're still having trouble getting cache hits, consult the corresponding [troubleshooting section](../../troubleshooting#why-am-i-building-ghc).
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).
3749
3850## Niv
3951
40−[Niv](https://github.com/nmattia/niv) is a command line tool for keeping tack of Nix project dependencies.
52+[Niv](https://github.com/nmattia/niv) is a command line tool for keeping track of Nix project dependencies.
4153
4254This guide assumes that the `sources.haskellNix` will be set to point
4355a pinned copy of the haskell.nix github repo. One easy way to do this
@@ -87,7 +99,7 @@ let
8799 # haskell.nix provides access to the nixpkgs pins which are used by our CI,
88100 # hence you will be more likely to get cache hits when using these.
89101 # But you can also just use your own, e.g. '<nixpkgs>'.
90− haskellNix.sources.nixpkgs-2009
102+ haskellNix.sources.nixpkgs-unstable
91103 # These arguments passed to nixpkgs, include some patches and also
92104 # the haskell.nix functionality itself as an overlay.
93105 haskellNix.nixpkgsArgs;
@@ -174,7 +186,7 @@ Straightforward way of doing this is to change the branch name to a revision.
174186
175187```nix
176188let sources = {
177− haskellNix = import (builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/f1a94a4c82a2ab999a67c3b84269da78d89f0075.tar.gz") {};
189+ haskellNix = builtins.fetchTarball "https://github.com/input-output-hk/haskell.nix/archive/f1a94a4c82a2ab999a67c3b84269da78d89f0075.tar.gz";
178190 };
179191```
180192
flake.locknew file+396
@@ -0,0 +1,396 @@
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+135−37
@@ -2,49 +2,147 @@
22 description = "Alternative Haskell Infrastructure for Nixpkgs";
33
44 inputs = {
5− # Note: keep this in sync with sources.json!
6− nixpkgs.url = github:NixOS/nixpkgs/f02bf8ffb9a5ec5e8f6f66f1e5544fd2aa1a0693;
7− nixpkgs-2003.url = github:NixOS/nixpkgs/7f73e46625f508a793700f5110b86f1a53341d6e;
8− nixpkgs-2009.url = github:NixOS/nixpkgs/f02bf8ffb9a5ec5e8f6f66f1e5544fd2aa1a0693;
9− nixpkgs-unstable.url = github:NixOS/nixpkgs/410bbd828cdc6156aecd5bc91772ad3a6b1099c7;
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+ };
1060 };
1161
12− outputs = { self, nixpkgs, ... }:
13− {
14−
15− internal = rec {
62+ outputs = { self, nixpkgs, nixpkgs-unstable, nixpkgs-2105, nixpkgs-2111, nixpkgs-2205, flake-utils, ... }@inputs:
63+ let compiler = "ghc924";
1664 config = import ./config.nix;
17− # We can't import ./nix/sources.nix directly, because that uses nixpkgs to fetch by default,
18− # and importing nixpkgs without specifying localSystem doesn't work on flakes.
19− sources = let
20− sourcesInfo =
21− builtins.fromJSON (builtins.readFile ./nix/sources.json);
22− fetch = sourceInfo:
23− builtins.fetchTarball { inherit (sourceInfo) url sha256; };
24− in builtins.mapAttrs (_: fetch) sourcesInfo;
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+ };
2574
26− nixpkgsArgs = {
27− inherit config;
28− overlays = [ self.overlay ];
75+ sources = inputs;
76+
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+ };
29114 };
30115
31− overlaysOverrideable = import ./overlays;
32− };
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;
33124
34− # Using the eval-on-build version here as the plan is that
35− # `builtins.currentSystem` will not be supported in flakes.
36− # https://github.com/NixOS/rfcs/pull/49/files#diff-a5a138ca225433534de8d260f225fe31R429
37− overlay = self.overlays.combined-eval-on-build;
38− overlays = self.internal.overlaysOverrideable { sourcesOverride = self.internal.sources; };
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;
39137
40− legacyPackages = let
41− genAttrs = lst: f:
42− builtins.listToAttrs (map (name: {
43− inherit name;
44− value = f name;
45− }) lst);
46− in genAttrs [ "x86_64-linux" "x86_64-darwin" ] (system:
47− import nixpkgs
48− (self.internal.nixpkgsArgs // { localSystem = { inherit system; }; }));
49− };
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+ });
50148}
hackage-src.json+4−4
@@ -1,9 +1,9 @@
11{
22 "url": "https://github.com/input-output-hk/hackage.nix",
3− "rev": "4b9a485688f2ddd9cb146354d65def445124f8fa",
4− "date": "2021-06-07T01:11:00+00:00",
5− "path": "/nix/store/c6nqddmwb45a7jvd775cpz3jsqjq59rr-hackage.nix-4b9a485",
6− "sha256": "0winhgs82ayws8z5h2k8bj9rckm033zf8qwqjlgrq3j5qk9c5479",
3+ "rev": "9bdefa51c864bbef48a2758b05b4b568f0ded62b",
4+ "date": "2021-08-06T01:11:48+00:00",
5+ "path": "/nix/store/isypgnv4qa5398z6vjc3fi620l4y87c4-hackage.nix-9bdefa5",
6+ "sha256": "0pm3m864wwgf76isjwb8244xh8xykc94b5az6zb1h38q30s9xjji",
77 "fetchSubmodules": false,
88 "deepClone": false,
99 "leaveDotGit": false
hix/default.nixnew file+43
@@ -0,0 +1,43 @@
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.nixnew file+77
@@ -0,0 +1,77 @@
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-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+120−14
@@ -74,20 +74,21 @@ let
7474 # --shar256: 003lm3pm0000hbfmii7xcdd9v20000flxf7gdl2pyxia7p014i8z
7575 # will be trated like a field and returned here
7676 # (used in call-cabal-project-to-nix.nix to create a fixed-output derivation)
77− extractRepoData = cabalProjectFileName: lookupSha256: repo:
78− builtins.map (subdir:
79− {
80− url = repo.location;
81− ref = repo.tag;
82− sha256 = repo."--sha256" or (lookupSha256 repo);
83− inherit subdir;
84− })
85− (if repo ? subdir
86− then pkgs.lib.filter (x: x != "") (pkgs.lib.splitString " " repo.subdir)
87− else ["."]);
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+ };
8888
8989 # Parse a source-repository-package and return data of `type: git` repositories
90− parseBlock = cabalProjectFileName: lookupSha256: block:
90+ # See tests/unit.nix for examples of input and output.
91+ parseSourceRepositoryPackageBlock = cabalProjectFileName: sha256map: block:
9192 let
9293 x = span (pkgs.lib.strings.hasPrefix " ") (pkgs.lib.splitString "\n" block);
9394 attrs = parseBlockLines x.fst;
@@ -98,10 +99,115 @@ let
9899 otherText = "\nsource-repository-package\n" + block;
99100 }
100101 else {
101− sourceRepo = extractRepoData cabalProjectFileName lookupSha256 attrs;
102+ sourceRepo = extractSourceRepoPackageData cabalProjectFileName sha256map attrs;
102103 otherText = pkgs.lib.strings.concatStringsSep "\n" x.snd;
103104 };
104105
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+
105209in {
106− inherit parseIndexState parseBlockLines parseBlock;
210+ inherit parseIndexState parseSourceRepositoryPackages parseRepositories
211+ # These are only exposed for tests
212+ parseSourceRepositoryPackageBlock parseRepositoryBlock;
107213}
lib/call-cabal-project-to-nix.nix+142−73
@@ -1,4 +1,4 @@
1−{ dotCabal, pkgs, runCommand, evalPackages, symlinkJoin, cacert, index-state-hashes, haskellLib, materialize }@defaults:
1+{ pkgs, runCommand, cacert, index-state-hashes, haskellLib }@defaults:
22let readIfExists = src: fileName:
33 let origSrcDir = src.origSrcSubDir or src;
44 in
@@ -30,17 +30,47 @@ in
3030 # An alternative to adding `--sha256` comments into the
3131 # cabal.project file:
3232 # sha256map =
33− # { "https://github.com/jgm/pandoc-citeproc"."0.17"
34− # = "0dxx8cp2xndpw3jwiawch2dkrkp15mil7pyx7dvd810pwc22pm2q"; };
35−, lookupSha256 ?
36− if sha256map != null
37− then { location, tag, ...}: sha256map."${location}"."${tag}"
38− else _: null
39−, extra-hackage-tarballs ? []
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
4068, ...
4169}@args:
4270
4371let
72+ inherit (evalPackages.haskell-nix) materialize dotCabal;
73+
4474 # These defaults are hear rather than in modules/cabal-project.nix to make them
4575 # lazy enough to avoid infinite recursion issues.
4676 # Using null as the default also improves performance as they are not forced by the
@@ -84,15 +114,13 @@ let
84114 ghc = ghc';
85115 subDir' = src.origSubDir or "";
86116 subDir = pkgs.lib.strings.removePrefix "/" subDir';
87− maybeCleanedSource =
88− if haskellLib.canCleanSource src
89− then (haskellLib.cleanSourceWith {
90− name = if name != null then "${name}-root-cabal-files" else "source-root-cabal-files";
91− src = src.origSrc or src;
92− filter = path: type: (!(src ? filter) || src.filter path type) && (
93− type == "directory" ||
94− pkgs.lib.any (i: (pkgs.lib.hasSuffix i path)) [ ".cabal" "package.yaml" ]); })
95− else src.origSrc or src;
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" ]); };
96124
97125 # Using origSrcSubDir bypasses any cleanSourceWith so that it will work when
98126 # access to the store is restricted. If origSrc was already in the store
@@ -172,67 +200,104 @@ let
172200 builtins.readFile (pkgs.runCommand "hash-path" { preferLocalBuild = true; }
173201 "echo -n $(${pkgs.nix}/bin/nix-hash --type sha256 --base32 ${path}) > $out");
174202
175− replaceSoureRepos = projectFile:
203+ replaceSourceRepos = projectFile:
176204 let
177− fetchRepo = fetchgit: repoData:
205+ fetchPackageRepo = fetchgit: repoData:
178206 let
179207 fetched =
180− if repoData.sha256 != null
181− then fetchgit { inherit (repoData) url sha256; rev = repoData.ref; }
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; }
182217 else
183218 let drv = builtins.fetchGit { inherit (repoData) url ref; };
184219 in __trace "WARNING: No sha256 found for source-repository-package ${repoData.url} ${repoData.ref} download may fail in restricted mode (hydra)"
185− (__trace "Consider adding `--sha256: ${hashPath drv}` to the ${cabalProjectFileName} file or passing in a lookupSha256 argument"
220+ (__trace "Consider adding `--sha256: ${hashPath drv}` to the ${cabalProjectFileName} file or passing in a sha256map argument"
186221 drv);
187− in fetched + (if repoData.subdir == "." then "" else "/" + repoData.subdir);
188−
189− blocks = pkgs.lib.splitString "\nsource-repository-package\n" ("\n" + projectFile);
190− initialText = pkgs.lib.lists.take 1 blocks;
191− repoBlocks = builtins.map (pkgs.haskell-nix.haskellLib.parseBlock cabalProjectFileName lookupSha256) (pkgs.lib.lists.drop 1 blocks);
192− sourceRepoData = pkgs.lib.lists.concatMap (x: x.sourceRepo) repoBlocks;
193− otherText = pkgs.evalPackages.writeText "cabal.project" (pkgs.lib.strings.concatStringsSep "\n" (
194− initialText
195− ++ (builtins.map (x: x.otherText) repoBlocks)));
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;
196248
197249 # we need the repository content twice:
198250 # * at eval time (below to build the fixed project file)
199− # Here we want to use pkgs.evalPackages.fetchgit, so one can calculate
251+ # Here we want to use evalPackages.fetchgit, so one can calculate
200252 # the build plan for any target without a remote builder
201253 # * at built time (passed out)
202254 # Here we want to use plain pkgs.fetchgit, which is what a builder
203255 # on the target system would use, so that the derivation is unaffected
204256 # and, say, a linux release build job can identify the derivation
205257 # as built by a darwin builder, and fetch it from a cache
206− sourceReposBuild = builtins.map (fetchRepo pkgs.evalPackages.fetchgit) sourceRepoData ;
207− sourceReposEval = builtins.map (fetchRepo pkgs.fetchgit) sourceRepoData;
258+ sourceReposEval = builtins.map (fetchPackageRepo evalPackages.fetchgit) sourceRepoPackageResult.sourceRepos;
259+ sourceReposBuild = builtins.map (x: (fetchPackageRepo pkgs.fetchgit x).fetched) sourceRepoPackageResult.sourceRepos;
208260 in {
209261 sourceRepos = sourceReposBuild;
262+ inherit (repoResult) repos extra-hackages;
210263 makeFixedProjectFile = ''
211− cp -f ${otherText} ./cabal.project
264+ cp -f ${evalPackages.writeText "cabal.project" sourceRepoPackageResult.otherText} ./cabal.project
265+ '' +
266+ pkgs.lib.optionalString (builtins.length sourceReposEval != 0) (''
212267 chmod +w -R ./cabal.project
213268 # The newline here is important in case cabal.project does not have one at the end
214− printf "\npackages:" >> ./cabal.project
215− mkdir -p ./.source-repository-packages
269+ echo >> ./cabal.project
216270 '' +
217− ( pkgs.lib.strings.concatStrings (
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 (
218285 pkgs.lib.lists.zipListsWith (n: f: ''
219− mkdir -p ./.source-repository-packages/${builtins.toString n}
220− rsync -a --prune-empty-dirs \
221− --include '*/' --include '*.cabal' --include 'package.yaml' \
222− --exclude '*' \
223− "${f}/" "./.source-repository-packages/${builtins.toString n}/"
224− echo " ./.source-repository-packages/${builtins.toString n}" >> ./cabal.project
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)
225291 '')
226292 (pkgs.lib.lists.range 0 ((builtins.length sourceReposEval) - 1))
227293 sourceReposEval
228− )
229− );
294+ );
230295 };
231296
232297 fixedProject =
233298 if rawCabalProject == null
234− then { sourceRepos = []; makeFixedProjectFile = ""; }
235− else replaceSoureRepos rawCabalProject;
299+ then { sourceRepos = []; repos = {}; extra-hackages = []; makeFixedProjectFile = ""; replaceLocations = ""; }
300+ else replaceSourceRepos rawCabalProject;
236301
237302 # The use of the actual GHC can cause significant problems:
238303 # * For hydra to assemble a list of jobs from `components.tests` it must
@@ -303,12 +368,12 @@ let
303368 '');
304369
305370 # Dummy `ghc` that uses the captured output
306− dummy-ghc = pkgs.evalPackages.writeTextFile {
371+ dummy-ghc = evalPackages.writeTextFile {
307372 name = "dummy-" + ghc.name;
308373 executable = true;
309374 destination = "/bin/${ghc.targetPrefix}ghc";
310375 text = ''
311− #!${pkgs.evalPackages.runtimeShell}
376+ #!${evalPackages.runtimeShell}
312377 case "$*" in
313378 --version*)
314379 cat ${dummy-ghc-data}/ghc/version
@@ -346,12 +411,12 @@ let
346411 };
347412
348413 # Dummy `ghc-pkg` that uses the captured output
349− dummy-ghc-pkg = pkgs.evalPackages.writeTextFile {
414+ dummy-ghc-pkg = evalPackages.writeTextFile {
350415 name = "dummy-pkg-" + ghc.name;
351416 executable = true;
352417 destination = "/bin/${ghc.targetPrefix}ghc-pkg";
353418 text = ''
354− #!${pkgs.evalPackages.runtimeShell}
419+ #!${evalPackages.runtimeShell}
355420 case "$*" in
356421 --version)
357422 cat ${dummy-ghc-data}/ghc-pkg/version
@@ -387,10 +452,10 @@ let
387452 else null;
388453 } // pkgs.lib.optionalAttrs (checkMaterialization != null) {
389454 inherit checkMaterialization;
390− }) (pkgs.evalPackages.runCommand (nameAndSuffix "plan-to-nix-pkgs") {
391− nativeBuildInputs = [ nix-tools dummy-ghc dummy-ghc-pkg cabal-install pkgs.evalPackages.rsync ];
455+ }) (evalPackages.runCommand (nameAndSuffix "plan-to-nix-pkgs") {
456+ nativeBuildInputs = [ nix-tools dummy-ghc dummy-ghc-pkg cabal-install evalPackages.rsync evalPackages.gitMinimal ];
392457 # Needed or stack-to-nix will die on unicode inputs
393− LOCALE_ARCHIVE = pkgs.lib.optionalString (pkgs.evalPackages.stdenv.buildPlatform.libc == "glibc") "${pkgs.evalPackages.glibcLocales}/lib/locale/locale-archive";
458+ LOCALE_ARCHIVE = pkgs.lib.optionalString (evalPackages.stdenv.buildPlatform.libc == "glibc") "${evalPackages.glibcLocales}/lib/locale/locale-archive";
394459 LANG = "en_US.UTF-8";
395460 meta.platforms = pkgs.lib.platforms.all;
396461 preferLocalBuild = false;
@@ -412,11 +477,11 @@ let
412477 '';
413478 in {
414479 # These check for cabal configure failure
415− json = pkgs.evalPackages.runCommand (nameAndSuffix "plan-json") {} ''
480+ json = evalPackages.runCommand (nameAndSuffix "plan-json") {} ''
416481 ${checkCabalConfigure}
417482 cp ${plan-nix.maybeJson} $out
418483 '';
419− freeze = pkgs.evalPackages.runCommand (nameAndSuffix "plan-freeze") {} ''
484+ freeze = evalPackages.runCommand (nameAndSuffix "plan-freeze") {} ''
420485 ${checkCabalConfigure}
421486 cp ${plan-nix.maybeFreeze} $out
422487 '';
@@ -424,14 +489,18 @@ let
424489 } ''
425490 tmp=$(mktemp -d)
426491 cd $tmp
427− # if maybeCleanedSource is empty, this means it's a new
492+ # if cleanedSource is empty, this means it's a new
428493 # project where the files haven't been added to the git
429494 # repo yet. We fail early and provide a useful error
430495 # message to prevent headaches (#290).
431− if [ -z "$(ls -A ${maybeCleanedSource})" ]; then
432− echo "cleaned source is empty. Did you forget to 'git add -A'?"; exit 1;
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}/* .
433503 fi
434− cp -r ${maybeCleanedSource}/* .
435504 chmod +w -R .
436505 # Decide what to do for each `package.yaml` file.
437506 for hpackFile in $(find . -name package.yaml); do (
@@ -454,7 +523,7 @@ let
454523 ${pkgs.lib.optionalString (subDir != "") "cd ${subDir}"}
455524 ${fixedProject.makeFixedProjectFile}
456525 ${pkgs.lib.optionalString (cabalProjectFreeze != null) ''
457− cp ${pkgs.evalPackages.writeText "cabal.project.freeze" cabalProjectFreeze} \
526+ cp ${evalPackages.writeText "cabal.project.freeze" cabalProjectFreeze} \
458527 cabal.project.freeze
459528 chmod +w cabal.project.freeze
460529 ''}
@@ -473,15 +542,16 @@ let
473542 # which is used by cabal (cached-index-state >= index-state-found).
474543 dotCabal {
475544 inherit cabal-install nix-tools extra-hackage-tarballs;
545+ extra-hackage-repos = fixedProject.repos;
476546 index-state = cached-index-state;
477547 sha256 = index-sha256-found;
478548 }
479− } cabal v2-freeze \
480− --index-state=${
481− # Setting the desired `index-state` here in case it was not
482− # from the cabal.project file. This will further restrict the
483− # packages used by the solver (cached-index-state >= index-state-found).
484− index-state-found} \
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+ } \
485555 -w ${
486556 # We are using `-w` rather than `--with-ghc` here to override
487557 # the `with-compiler:` in the `cabal.project` file.
@@ -519,16 +589,15 @@ let
519589 # proper relative paths.
520590 (cd $out${subDir'} && plan-to-nix --full --plan-json $tmp${subDir'}/dist-newstyle/cache/plan.json -o .)
521591
592+ # Replace the /nix/store paths to minimal git repos with indexes (that will work with materialization).
593+ ${fixedProject.replaceLocations}
594+
522595 # Make the plan.json file available in case we need to debug plan-to-nix
523596 cp $tmp${subDir'}/dist-newstyle/cache/plan.json $maybeJson
524597
525598 # Remove the non nix files ".project" ".cabal" "package.yaml" files
526599 # as they should not be in the output hash (they may change slightly
527600 # without affecting the nix).
528− if [ -d $out${subDir'}/.source-repository-packages ]; then
529− chmod +w -R $out${subDir'}/.source-repository-packages
530− rm -rf $out${subDir'}/.source-repository-packages
531− fi
532601 find $out \( -type f -or -type l \) ! -name '*.nix' -delete
533602 # Remove empty dirs
534603 find $out -type d -empty -delete
@@ -559,5 +628,5 @@ in {
559628 projectNix = plan-nix;
560629 index-state = index-state-found;
561630 inherit src;
562− inherit (fixedProject) sourceRepos;
631+ inherit (fixedProject) sourceRepos extra-hackages;
563632}
lib/call-stack-to-nix.nix+21−22
@@ -5,7 +5,6 @@
55 *
66 * see also `call-cabal-project-to-nix`!
77 */
8−{ runCommand, pkgs, mkCacheFile, materialize, haskellLib }:
98{ name ? src.name or null # optional name for better error messages
109, src
1110, stackYaml ? "stack.yaml"
@@ -15,24 +14,24 @@
1514, resolverSha256 ? null
1615, materialized ? null # Location of a materialized copy of the nix files
1716, checkMaterialization ? null # If true the nix files will be generated used to check plan-sha256 and material
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−, ... }:
17+, nix-tools
18+, evalPackages
19+, ... }@args:
2020let
21+ inherit (evalPackages) runCommand;
22+ inherit (evalPackages.haskell-nix) mkCacheFile materialize haskellLib;
2123 inherit (haskellLib.fetchResolver {
2224 inherit src stackYaml resolverSha256;
2325 }) resolver fetchedResolver;
2426
2527 subDir' = src.origSubDir or "";
26− subDir = pkgs.lib.strings.removePrefix "/" subDir';
27− maybeCleanedSource =
28− if haskellLib.canCleanSource src
29− then (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− pkgs.lib.any (i: (pkgs.lib.hasSuffix i path)) [ stackYaml ".cabal" "package.yaml" ]); })
35− else src.origSrc or src;
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" ]); });
3635
3736 stackToNixArgs = builtins.concatStringsSep " " [
3837 "--full"
@@ -46,12 +45,12 @@ let
4645 sha256Arg = "stack-sha256";
4746 reasonNotSafe = null;
4847 this = "project.stack-nix" + (if name != null then " for ${name}" else "");
49− } // pkgs.lib.optionalAttrs (checkMaterialization != null) {
48+ } // evalPackages.lib.optionalAttrs (checkMaterialization != null) {
5049 inherit checkMaterialization;
5150 }) (runCommand (if name == null then "stack-to-nix-pkgs" else name + "-stack-to-nix-pkgs") {
52− nativeBuildInputs = [ nix-tools pkgs.nix-prefetch-git pkgs.cacert pkgs.xorg.lndir ];
51+ nativeBuildInputs = [ nix-tools evalPackages.nix-prefetch-git evalPackages.cacert evalPackages.xorg.lndir ];
5352 # Needed or stack-to-nix will die on unicode inputs
54− LOCALE_ARCHIVE = pkgs.lib.optionalString (pkgs.stdenv.hostPlatform.libc == "glibc") "${pkgs.glibcLocales}/lib/locale/locale-archive";
53+ LOCALE_ARCHIVE = evalPackages.lib.optionalString (evalPackages.stdenv.hostPlatform.libc == "glibc") "${evalPackages.glibcLocales}/lib/locale/locale-archive";
5554 LANG = "en_US.UTF-8";
5655 LC_ALL = "en_US.UTF-8";
5756 preferLocalBuild = false;
@@ -59,18 +58,18 @@ let
5958 mkdir -p $out${subDir'}
6059 SRC=$(mktemp -d)
6160 cd $SRC
62− # if maybeCleanedSource is empty, this means it's a new
61+ # if cleanedSource is empty, this means it's a new
6362 # project where the files haven't been added to the git
6463 # repo yet. We fail early and provide a useful error
6564 # message to prevent headaches (#290).
66− if [ -z "$(ls -A ${maybeCleanedSource})" ]; then
65+ if [ -z "$(ls -A ${cleanedSource})" ]; then
6766 echo "cleaned source is empty. Did you forget to 'git add -A'?"; exit 1;
6867 fi
69− lndir -silent "${maybeCleanedSource}/." $SRC
70− ${pkgs.lib.optionalString (subDir != "") "cd ${subDir}"}
68+ lndir -silent "${cleanedSource}/." $SRC
69+ ${evalPackages.lib.optionalString (subDir != "") "cd ${subDir}"}
7170 ${
7271 # If a resolver was fetched use the it instead of the original stack.yaml
73− pkgs.lib.optionalString (fetchedResolver != null)
72+ evalPackages.lib.optionalString (fetchedResolver != null)
7473 # Replace the resolver path in the stack.yaml with the fetched version
7574 ''
7675 rm ${stackYaml}
@@ -78,7 +77,7 @@ let
7877 chmod +w ${stackYaml}
7978 substituteInPlace ${stackYaml} --replace "${resolver}" "${fetchedResolver}"
8079 ''}
81− ${pkgs.lib.optionalString (cache != null) ''
80+ ${evalPackages.lib.optionalString (cache != null) ''
8281 cp ${mkCacheFile cache}/.stack-to-nix.cache* $out${subDir'}
8382 ''}
8483 (cd $out${subDir'} && stack-to-nix ${stackToNixArgs})
lib/check.nix+19−14
@@ -1,4 +1,4 @@
1−{ stdenv, lib, haskellLib, srcOnly }:
1+{ stdenv, lib, haskellLib }:
22drv:
33
44let
@@ -7,13 +7,25 @@ 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 ({
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+ }) // {
1127 name = (drv.name + "-check");
1228
13− # Using `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−
1729 passthru = {
1830 inherit (drv) identifier config configFiles executableToolDepends cleanSrc env exeName;
1931 };
@@ -22,19 +34,12 @@ in stdenv.mkDerivation ({
2234
2335 inherit (component) doCheck doCrossCheck;
2436
25− phases = ["unpackPhase" "buildPhase"];
37+ phases = ["unpackPhase" "patchPhase" "buildPhase"];
2638
2739 # If doCheck or doCrossCheck are false we may still build this
2840 # component and we want it to quietly succeed.
2941 buildPhase = ''
3042 mkdir $out
31− ${
32− # Change to the source sub directory if there is one.
33− lib.optionalString (drv.srcSubDir or "" != "") ''
34− cd ${lib.removePrefix "/" drv.srcSubDir}
35− ''
36− }
37−
3843 runHook preCheck
3944
4045 ${toString component.testWrapper} ${drv}/bin/${drv.exeName} ${lib.concatStringsSep " " component.testFlags} | tee $out/test-stdout
lib/clean-cabal-component.nix+2−2
@@ -1,6 +1,6 @@
11# Use cleanSourceWith to filter just the files needed for a particular
22# component of the package
3−{ lib, cleanSourceWith, canCleanSource }: package: component: componentName: src:
3+{ lib, cleanSourceWith }: package: component: componentName: src:
44let
55 srcStr' = src.origSrc or null;
66 subDir = if src.origSubDir or "" == ""
@@ -56,7 +56,7 @@ let
5656 then p
5757 else p + "/";
5858in
59− if srcStr' == null || package.detailLevel != "FullDetails" || !canCleanSource src
59+ if srcStr' == null || package.detailLevel != "FullDetails"
6060 then src
6161 else
6262 let
lib/clean-git.nix+8−4
@@ -65,9 +65,13 @@ then
6565 first_line = head git_content;
6666 prefix = "gitdir: ";
6767 ok = length git_content == 1 && lib.hasPrefix prefix first_line;
68+ raw_path = remove_prefix prefix first_line;
6869 in
6970 if ok
70− then /. + remove_prefix prefix first_line
71+ then
72+ if lib.hasPrefix "/" raw_path
73+ then /. + raw_path
74+ else /. + builtins.toPath (origSrcSubDir + "/" + raw_path)
7175 else abort "gitSource.nix: Cannot parse ${origSrcSubDir + "/.git"}";
7276 }));
7377
@@ -112,7 +116,7 @@ then
112116 # `git ls-files --recurse-submodules` to give us an accurate list
113117 # of all the files in the index.
114118 whitelist_files = knownSubmoduleDirs:
115− runCommand "git-ls-files" {} ''
119+ runCommand "git-ls-files" { preferLocalBuild = true; } ''
116120 tmp=$(mktemp -d)
117121 cd $tmp
118122 ${ lib.optionalString hasSubmodules ''
@@ -135,7 +139,7 @@ then
135139 ${git}/bin/git ls-files --recurse-submodules > $out/files
136140 '';
137141
138− # Find the submodules
142+ # Find the submodules
139143 whitelist_recursive = knownSubmoduleDirs:
140144 let
141145 # Get the new list of submoduleDirs and files
@@ -176,7 +180,7 @@ then
176180 );
177181
178182 # Identify files in the `.git` dir
179− isGitDirPath = path:
183+ isGitDirPath = path:
180184 path == origSrcSubDir + "/.git"
181185 || lib.hasPrefix (origSrcSubDir + "/.git/") path;
182186
lib/clean-source-with.nix+35−8
@@ -50,6 +50,33 @@
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
5380 cleanSourceWith = { filter ? _path: _type: true, src, subDir ? "", name ? null
5481 , caller ? "cleanSourceWith", includeSiblings ? false }:
5582 let
@@ -103,21 +130,21 @@
103130 __trace (
104131 "WARNING: `${caller}` called on ${toString src} without a `name`. "
105132 + "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));
106140 in {
107141 inherit origSrc origSubDir origSrcSubDir;
108142 filter = filter';
109− outPath = (builtins.path { filter = filter'; path = origSrc; name = name'; }) + origSubDir;
143+ outPath = (filterPath { filter = filter'; path = origSrc; name = name'; }) + origSubDir;
110144 _isLibCleanSourceWithEx = true;
111145 # It is only safe for older cleanSourceWith to filter this one
112146 # if the we are still looking at the root of origSrc
113147 _isLibCleanSourceWith = origSubDir == "";
114148 name = name';
115149 };
116−
117− pathHasContext = builtins.hasContext or (lib.hasPrefix builtins.storeDir);
118−
119− canCleanSource = src:
120− src ? _isLibCleanSourceWithEx
121− || src ? _isLibCleanSourceWith
122− || !(pathHasContext (toString src));
123150}
lib/cover-project.nix+44−47
@@ -10,19 +10,12 @@ coverageReports:
1010let
1111 toBashArray = arr: "(" + (lib.concatStringsSep " " arr) + ")";
1212
13− # Create table rows for a project coverage index page that look something like:
14− #
15− # | Package |
16− # |------------------|
17− # | cardano-shell |
18− # | cardano-launcher |
19− coverageTableRows = coverageReport:
13+ # Create a list element for a project coverage index page.
14+ coverageListElement = coverageReport:
2015 ''
21− <tr>
22− <td>
23− <a href="${coverageReport.passthru.name}/hpc_index.html">${coverageReport.passthru.name}</href>
24− </td>
25− </tr>
16+ <li>
17+ <a href="${coverageReport.passthru.name}/hpc_index.html">${coverageReport.passthru.name}</a>
18+ </li>
2619 '';
2720
2821 projectIndexHtml = pkgs.writeText "index.html" ''
@@ -31,23 +24,32 @@ let
3124 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
3225 </head>
3326 <body>
34− <table border="1" width="100%">
35− <tbody>
36− <tr>
37− <th>Report</th>
38− </tr>
39−
40− ${with lib; concatStringsSep "\n" (map coverageTableRows coverageReports)}
41−
42− </tbody>
43− </table>
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>
4446 </body>
4547 </html>
4648 '';
4749
4850 ghc = project.pkg-set.config.ghc.package;
4951
50− libs = lib.remove null (map (r: r.library) coverageReports);
52+ libs = lib.unique (lib.concatMap (r: r.mixLibraries) coverageReports);
5153
5254 mixDirs =
5355 map
@@ -56,6 +58,17 @@ let
5658
5759 srcDirs = map (l: l.srcSubDirPath) libs;
5860
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+
5972in pkgs.runCommand "project-coverage-report"
6073 ({ nativeBuildInputs = [ (ghc.buildGHC or ghc) pkgs.buildPackages.zip ];
6174 LANG = "en_US.UTF-8";
@@ -124,30 +137,14 @@ in pkgs.runCommand "project-coverage-report"
124137 cp -R $report/share/hpc/vanilla/html/* $out/share/hpc/vanilla/html/
125138 '') coverageReports)}
126139
127− if [ ''${#tixFiles[@]} -ne 0 ]; then
128− # Create tix file with test run information for all packages
129− tixFile="$out/share/hpc/vanilla/tix/all/all.tix"
130− hpcSumCmd=("hpc" "sum" "--union" "--output=$tixFile")
131− hpcSumCmd+=("''${tixFiles[@]}")
132− echo "''${hpcSumCmd[@]}"
133− eval "''${hpcSumCmd[@]}"
134−
135− # Markup a HTML coverage report for the entire project
136− cp ${projectIndexHtml} $out/share/hpc/vanilla/html/index.html
137− echo "report coverage-per-package $out/share/hpc/vanilla/html/index.html" >> $out/nix-support/hydra-build-products
138−
139− local markupOutDir="$out/share/hpc/vanilla/html/all"
140− local srcDirs=${toBashArray srcDirs}
141− local mixDirs=${toBashArray mixDirs}
142− local allMixModules=()
143−
144− mkdir $markupOutDir
145− findModules allMixModules "$out/share/hpc/vanilla/mix/" "*.mix"
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
146143
147− markup srcDirs mixDirs allMixModules "$markupOutDir" "$tixFile"
144+ # Markup a HTML coverage summary report for the entire project
145+ cp ${projectIndexHtml} $out/share/hpc/vanilla/html/index.html
148146
149− echo "report coverage $markupOutDir/hpc_index.html" >> $out/nix-support/hydra-build-products
150− ( cd $out/share/hpc/vanilla/html ; zip -r $out/share/hpc/vanilla/html.zip . )
151− echo "file zip $out/share/hpc/vanilla/html.zip" >> $out/nix-support/hydra-build-products
152− fi
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
153150 ''
lib/cover.nix+102−69
@@ -1,18 +1,18 @@
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".
14{ stdenv, lib, haskellLib, pkgs }:
25
3−# Name of the coverage report, which should be unique
6+# Name of the coverage report, which should be unique.
47{ name
5−# Library to check coverage of
6−, library
7−# List of check derivations that generate coverage
8−, checks
9−# List of other libraries to include in the coverage report. The
10−# default value if just the derivation provided as the `library`
11−# argument. Use a larger list of libraries if you would like the tests
12−# of one local package to generate coverage for another.
13−, mixLibraries ? [library]
14−# hack for project-less projects
15−, ghc ? library.project.pkg-set.config.ghc.package
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
1616}:
1717
1818let
@@ -26,7 +26,7 @@ let
2626in pkgs.runCommand (name + "-coverage-report")
2727 ({nativeBuildInputs = [ (ghc.buildGHC or ghc) pkgs.buildPackages.zip ];
2828 passthru = {
29− inherit name library checks;
29+ inherit name checks mixLibraries;
3030 };
3131 # HPC will fail if the Haskell file contains non-ASCII characters,
3232 # unless our locale is set correctly. This has been fixed, but we
@@ -70,71 +70,105 @@ in pkgs.runCommand (name + "-coverage-report")
7070 local -n tixFs=$2
7171 local outFile="$3"
7272
73− local hpcSumCmd=("hpc" "sum" "--union" "--output=$outFile")
73+ if (( "''${#tixFs[@]}" > 0 )); then
74+ local hpcSumCmd=("hpc" "sum" "--union" "--output=$outFile")
7475
75− for module in "''${includedModules[@]}"; do
76− hpcSumCmd+=("--include=$module")
77− done
76+ for module in "''${includedModules[@]}"; do
77+ hpcSumCmd+=("--include=$module")
78+ done
7879
79− for tixFile in "''${tixFs[@]}"; do
80− hpcSumCmd+=("$tixFile")
81− done
80+ for tixFile in "''${tixFs[@]}"; do
81+ hpcSumCmd+=("$tixFile")
82+ done
8283
83− echo "''${hpcSumCmd[@]}"
84− eval "''${hpcSumCmd[@]}"
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
8592 }
8693
8794 function findModules() {
88− local searchDir=$2
95+ local -n result=$1
96+ local -n searchDirs=$2
8997 local pattern=$3
9098
91− pushd $searchDir
92− mapfile -d $'\0' $1 < <(find ./ -type f \
93− -wholename "$pattern" -not -name "Paths*" \
94− -exec basename {} \; \
95− | sed "s/\.mix$//" \
96− | tr "\n" "\0")
97− popd
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
98110 }
99111
100− local mixDirs=${toBashArray mixDirs}
101−
102112 mkdir -p $out/nix-support
103− mkdir -p $out/share/hpc/vanilla/mix/${name}
113+ mkdir -p $out/share/hpc/vanilla/mix/
104114 mkdir -p $out/share/hpc/vanilla/tix/${name}
105115 mkdir -p $out/share/hpc/vanilla/html/${name}
106116
107− # Copy over mix files verbatim
117+ local srcDirs=${toBashArray srcDirs}
118+ local mixDirs=${toBashArray mixDirs}
119+
120+ # Copy out mix files used for this report
108121 for dir in "''${mixDirs[@]}"; do
109122 if [ -d "$dir" ]; then
110− cp -R "$dir"/* $out/share/hpc/vanilla/mix/${name}
123+ cp -R "$dir" $out/share/hpc/vanilla/mix/
111124 fi
112125 done
113126
114− local srcDirs=${toBashArray srcDirs}
115− local allMixModules=()
116− local pkgMixModules=()
117−
118− # The behaviour of stack coverage reports is to provide tix files
119− # that include coverage information for every local package, but
120− # to provide HTML reports that only include coverage info for the
121− # current package. We emulate the same behaviour here. If the user
122− # includes all local packages in the mix libraries argument, they
123− # will get a coverage report very similar to stack.
124−
125− # All mix modules
126− findModules allMixModules "$out/share/hpc/vanilla/mix/${name}" "*.mix"
127− # Only mix modules corresponding to this package
128− findModules pkgMixModules "$out/share/hpc/vanilla/mix/${name}" "*${name}*/*.mix"
129−
130− # For each test
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+
131165 local tixFiles=()
132166 ${lib.concatStringsSep "\n" (builtins.map (check: ''
133167 if [ -d "${check}/share/hpc/vanilla/tix" ]; then
134168 pushd ${check}/share/hpc/vanilla/tix
135169
136170 tixFile="$(find . -iwholename "*.tix" -type f -print -quit)"
137− local newTixFile=$out/share/hpc/vanilla/tix/${name}/"$tixFile"
171+ local newTixFile=$out/share/hpc/vanilla/tix/${check.name}/"$(basename $tixFile)"
138172
139173 mkdir -p "$(dirname $newTixFile)"
140174 # Copy over the tix file verbatim
@@ -143,29 +177,28 @@ in pkgs.runCommand (name + "-coverage-report")
143177 # Add the tix file to our list
144178 tixFiles+=("$newTixFile")
145179
146− # Create a coverage report for *just that test*
147− markup srcDirs mixDirs pkgMixModules "$out/share/hpc/vanilla/html/${name}/${check.exeName}/" "$newTixFile"
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"
148183
149184 popd
150185 fi
151186 '') checks)
152187 }
153188
154− # Sum tix files to create a tix file with all relevant tix
155− # information and markup a HTML report from this info.
156− if (( "''${#tixFiles[@]}" > 0 )); then
157− local sumTixFile="$out/share/hpc/vanilla/tix/${name}/${name}.tix"
158− local markupOutDir="$out/share/hpc/vanilla/html/${name}"
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}"
159193
160− # Sum all of our tix file, including modules from any local package
161− sumTix allMixModules tixFiles "$sumTixFile"
194+ # Sum all of our tix files
195+ sumTix mixModules tixFiles "$sumTixFile"
162196
163− # Markup a HTML report, included modules from only this package
164− markup srcDirs mixDirs pkgMixModules "$markupOutDir" "$sumTixFile"
197+ # Markup a HTML report
198+ markup srcDirs mixDirs mixModules "$markupOutDir" "$sumTixFile"
165199
166− # Provide a HTML zipfile and Hydra links
167− ( cd "$markupOutDir" ; zip -r $out/share/hpc/vanilla/${name}-html.zip . )
168− echo "report coverage $markupOutDir/hpc_index.html" >> $out/nix-support/hydra-build-products
169− echo "file zip $out/share/hpc/vanilla/${name}-html.zip" >> $out/nix-support/hydra-build-products
170− fi
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
171204 ''
lib/default.nix+42−53
@@ -4,11 +4,8 @@
44with haskellLib;
55
66let
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.
7+ # Why `final.buildPackages.buildPackages.gitMinimal`?
8+ # Why not just final.buildPackages.gitMinimal?
129 #
1310 # It turns out `git` depends on `gdb` in a round about way:
1411 # git -> openssh -> libfido2 -> systemd -> python libxml -> Cython -> gdb
@@ -24,7 +21,7 @@ let
2421 # * When `gdb` does not exist for `js`, so when cross
2522 # compiling with ghcjs `final.buildPackages.git` fails
2623 # to build at all.
27− inherit (pkgs.evalPackages.buildPackages) gitMinimal;
24+ inherit (pkgs.buildPackages.buildPackages) gitMinimal;
2825
2926in {
3027 # Within the package components, these are the attribute names of
@@ -73,8 +70,12 @@ in {
7370 comps = config.components;
7471 applyLibrary = cname: f { cname = config.package.identifier.name; ctype = "lib"; };
7572 applySubComp = ctype: cname: f { inherit cname; ctype = componentPrefix.${ctype} or (throw "Missing component mapping for ${ctype}."); };
76− buildableAttrs = lib.filterAttrs (n: comp: comp.buildable or true);
77− libComp = if comps.library == null || !(comps.library.buildable or true)
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)
7879 then {}
7980 else lib.mapAttrs applyLibrary (removeAttrs comps (subComponentTypes ++ [ "setup" ]));
8081 subComps = lib.mapAttrs
@@ -132,14 +133,7 @@ in {
132133 ## flatLibDepends :: Component -> [Package]
133134 flatLibDepends = component:
134135 let
135− # this is a minor improvement over the "cannot coerce set to string"
136− # error. It will now say:
137− #
138− # > The option `packages.Win32.package.identifier.name' is used but not defined.
139− #
140− # which indicates that the package.Win32 is missing and not defined.
141− getKey = x: if x ? "outPath" then "${x}" else (throw x.identifier.name);
142− makePairs = map (p: rec { key=getKey val; val=(p.components.library or p); });
136+ makePairs = map (p: rec { key=val.name; val=(p.components.library or p); });
143137 closure = builtins.genericClosure {
144138 startSet = makePairs component.depends;
145139 operator = {val,...}: makePairs val.config.depends;
@@ -195,17 +189,17 @@ in {
195189 collectChecks' = collectChecks (_: true);
196190
197191 # Replacement for lib.cleanSourceWith that has a subDir argument.
198− inherit (import ./clean-source-with.nix { inherit lib; }) cleanSourceWith canCleanSource;
192+ inherit (import ./clean-source-with.nix { inherit lib; }) cleanSourceWith;
199193
200194 # Use cleanSourceWith to filter just the files needed for a particular
201195 # component of a package
202− cleanCabalComponent = import ./clean-cabal-component.nix { inherit lib cleanSourceWith canCleanSource; };
196+ cleanCabalComponent = import ./clean-cabal-component.nix { inherit lib cleanSourceWith; };
203197
204198 # Clean git directory based on `git ls-files --recurse-submodules`
205199 cleanGit = import ./clean-git.nix {
206200 inherit lib cleanSourceWith;
207201 git = gitMinimal;
208− inherit (pkgs.evalPackages) runCommand;
202+ inherit (pkgs.buildPackages.buildPackages) runCommand;
209203 };
210204
211205 # Some times it is handy to temporarily use a relative path between git
@@ -235,7 +229,7 @@ in {
235229
236230 # Check a test component
237231 check = import ./check.nix {
238− inherit stdenv lib haskellLib srcOnly;
232+ inherit stdenv lib haskellLib;
239233 };
240234
241235 # Do coverage of a package
@@ -254,31 +248,33 @@ in {
254248 # In most cases we do not want to treat musl as a cross compiler.
255249 # For instance when building ghc we want to include ghci.
256250 isCrossHost = stdenv.hostPlatform != stdenv.buildPlatform
257− && !(stdenv.buildPlatform.isLinux && stdenv.hostPlatform.isMusl && stdenv.buildPlatform.isx86 && stdenv.hostPlatform.isx86);
251+ && !(stdenv.buildPlatform.isLinux && stdenv.hostPlatform.isMusl && stdenv.buildPlatform.linuxArch == stdenv.hostPlatform.linuxArch);
258252 # This is the same as isCrossHost but for use when building ghc itself
259253 isCrossTarget = stdenv.targetPlatform != stdenv.hostPlatform
260− && !(stdenv.hostPlatform.isLinux && stdenv.targetPlatform.isMusl && stdenv.hostPlatform.isx86 && stdenv.targetPlatform.isx86);
254+ && !(stdenv.hostPlatform.isLinux && stdenv.targetPlatform.isMusl && stdenv.hostPlatform.linuxArch == stdenv.targetPlatform.linuxArch);
261255 # Native musl build-host-target combo
262256 isNativeMusl = stdenv.hostPlatform.isMusl
263257 && stdenv.buildPlatform == stdenv.hostPlatform
264258 && stdenv.hostPlatform == stdenv.targetPlatform;
265259
266− # Takes a version number or attr set of arguments (for cabalProject)
267− # and converts it to an attr set of arguments. This allows
260+ # Takes a version number, module or list of modules (for cabalProject)
261+ # and converts it to an list of project modules. This allows
268262 # the use of "1.0.0.0" or { version = "1.0.0.0"; ... }
269− versionOrArgsToArgs = versionOrArgs:
270− if lib.isAttrs versionOrArgs
271− then versionOrArgs
272− else { version = versionOrArgs; };
263+ versionOrModToMods = versionOrMod:
264+ if lib.isString versionOrMod
265+ then [{ version = versionOrMod; }]
266+ else if lib.isList versionOrMod
267+ then versionOrMod
268+ else [versionOrMod];
273269
274270 # Find the resolver in the stack.yaml file and fetch it if a sha256 value is provided
275271 fetchResolver = import ./fetch-resolver.nix {
276− inherit (pkgs.evalPackages) pkgs;
272+ inherit (pkgs.buildPackages) pkgs;
277273 };
278274
279275 inherit (import ./cabal-project-parser.nix {
280276 inherit pkgs;
281− }) parseIndexState parseBlock;
277+ }) parseIndexState parseSourceRepositoryPackages parseRepositories parseSourceRepositoryPackageBlock parseRepositoryBlock;
282278
283279
284280 cabalToNixpkgsLicense = import ./spdx/cabal.nix pkgs;
@@ -293,26 +289,9 @@ in {
293289 if subDir == ""
294290 then src
295291 else
296− if haskellLib.canCleanSource src
297− then haskellLib.cleanSourceWith {
298− inherit src subDir includeSiblings;
299− }
300− else let name = src.name or "source" + "-" + __replaceStrings ["/"] ["-"] subDir;
301− in if includeSiblings
302− then rec {
303− # Keep `src.origSrc` so it can be used to allow references
304− # to other parts of that root.
305− inherit name;
306− origSrc = src.origSrc or src;
307− origSubDir = src.origSubDir or "" + "/" + subDir;
308− outPath = origSrc + origSubDir;
309− }
310− else {
311− # We are not going to need other parts of `origSrc` if there
312− # was one and we can ignore it
313− inherit name;
314− outPath = src + "/" + subDir;
315− };
292+ haskellLib.cleanSourceWith {
293+ inherit src subDir includeSiblings;
294+ };
316295
317296 # Givin a `src` split it into a `root` path (based on `src.origSrc` if
318297 # present) and `subDir` (based on `src.origSubDir). The
@@ -337,21 +316,31 @@ in {
337316 # Run evalModules passing the project function argument (m) as a module along with
338317 # the the a projectType module (../modules/cabal-project.nix or ../modules/stack-project.nix).
339318 # The resulting config is then passed to the project function's implementation.
340− evalProjectModule = projectType: m: f: f
319+ evalProjectModule = projectType: m: f:
320+ let project = f
341321 (lib.evalModules {
342− modules = [m] ++ [
322+ modules = (if builtins.isList m then m else [m]) ++ [
343323 # Include ../modules/cabal-project.nix or ../modules/stack-project.nix
324+ (import ../modules/project-common.nix)
344325 (import projectType)
345− # Pass the pkgs to the modules
326+ # Pass the pkgs and the buildProject to the modules
346327 ({ config, lib, ... }: {
347328 _module.args = {
348329 inherit pkgs;
330+ # to make it easy to depends on build packages in, eg., shell definition:
331+ inherit (project) buildProject;
349332 };
333+ inherit (project) hsPkgs;
350334 })
351335 ];
352336 }).config;
337+ in project;
353338
354339 # Converts from a `compoent.depends` value to a library derivation.
355340 # In the case of sublibs the `depends` value should already be the derivation.
356341 dependToLib = d: d.components.library or d;
342+
343+ projectOverlays = import ./project-overlays.nix {
344+ inherit lib haskellLib;
345+ };
357346}
lib/ghcjs-project.nix+57−14
@@ -23,7 +23,7 @@
2323{ src
2424, compiler-nix-name
2525, ghc ? pkgs.buildPackages.haskell-nix.compiler.${compiler-nix-name}
26−, ghcjsVersion
26+, ghcjsVersion # Version in the ghcjs.cabal file (that we will replace)
2727, ghcVersion ? ghc.version
2828, happy ? pkgs.haskell-nix.tool compiler-nix-name "happy" {
2929 index-state = pkgs.haskell-nix.internalHackageIndexState;
@@ -39,7 +39,7 @@
3939 if (builtins.compareVersions ghcjsVersion "8.10.0.0" >= 0)
4040 then pkgs.haskell-nix.tool compiler-nix-name "cabal" {
4141 index-state = pkgs.haskell-nix.internalHackageIndexState;
42− version = "3.4.0.0";
42+ version = "3.6.2.0";
4343 materialized = ../materialized/ghcjs/cabal + "/${compiler-nix-name}";
4444 }
4545 else pkgs.haskell-nix.tool compiler-nix-name "cabal" {
@@ -52,6 +52,8 @@
5252 '';
5353 materialized = ../materialized/ghcjs/cabal + "/${compiler-nix-name}";
5454 }
55+, overrideBootPackages ? []
56+, patches ? []
5557, ...
5658}@args:
5759let
@@ -75,7 +77,11 @@ let
7577
7678 # Inputs needed to boot the GHCJS compiler
7779 bootInputs = with pkgs.buildPackages; [
78− nodejs
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
7985 makeWrapper
8086 xorg.lndir
8187 gmp
@@ -83,9 +89,9 @@ let
8389 ]
8490 ++ [ ghc cabal-install emsdk ];
8591 # Configured the GHCJS source
86− configured-src = pkgs.runCommand "configured-ghcjs-src" {
92+ configured-src = (pkgs.runCommandCC "configured-ghcjs-src" {
8793 buildInputs = configureInputs;
88− inherit src;
94+ inherit src patches;
8995 } ''
9096 export HOME=$(pwd)
9197 mkdir $HOME/.cabal
@@ -94,6 +100,11 @@ let
94100 chmod -R +w "$out"
95101 cd "$out"
96102
103+ for p in $patches
104+ do
105+ patch -p1 <$p
106+ done
107+
97108 # TODO: Find a better way to avoid impure version numbers
98109 sed -i 's/RELEASE=NO/RELEASE=YES/' ghc/configure.ac
99110 sed -i 's/${ghcjsVersion}/${ghcVersion}/' ghcjs.cabal
@@ -111,26 +122,58 @@ let
111122 rm -rf utils/pkg-cache/ghc
112123 cp -r ${ghc.generated} utils/pkg-cache/ghc
113124
114− cp ${../overlays/patches/config.sub} ghc/libraries/integer-gmp/config.sub
115− cp ${../overlays/patches/config.sub} ghc/libraries/base/config.sub
116− cp ${../overlays/patches/config.sub} ghc/libraries/unix/config.sub
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
117132
118133 patchShebangs .
119134 sed -i 's/gcc /cc /g' utils/makePackages.sh
120135 ./utils/makePackages.sh copy
121136
122− '';
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+ }
153+
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+ };
123159 # see https://github.com/ghcjs/ghcjs/issues/751 for the happy upper bound.
124160
125161 ghcjsProject = pkgs.haskell-nix.cabalProject' (
126− (pkgs.lib.filterAttrs
162+ (pkgs.lib.filterAttrs
127163 (n: _: !(builtins.any (x: x == n)
128− ["src" "ghcjsVersion" "ghcVersion" "happy" "alex" "cabal-install"])) args) // {
164+ [ "src" "ghcjsVersion" "ghcVersion" "happy" "alex" "cabal-install"
165+ "overrideBootPackages" "patches"])) args) // {
129166 src = configured-src;
130167 index-state = "2021-03-20T00:00:00Z";
131− compiler-nix-name = if isGhcjs810 then "ghc8104" else if isGhcjs88 then "ghc884" else "ghc865";
168+ inherit compiler-nix-name;
132169 configureArgs = pkgs.lib.optionalString (isGhcjs88 && !isGhcjs810) "--constraint='Cabal >=3.0.2.0 && <3.1'";
133− materialized = ../materialized + (if isGhcjs810 then "/ghcjs8104" else if isGhcjs88 then "/ghcjs884" else "/ghcjs865");
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}";
134177 modules = [
135178 {
136179 # we need ghc-boot in here for ghcjs.
@@ -143,6 +186,7 @@ let
143186 packages.Cabal.patches = [ ./../overlays/patches/Cabal/fix-data-dir.patch ];
144187 })
145188 {
189+ ghcOptions = ["-O2"];
146190 packages.ghcjs.doHaddock = false;
147191 packages.haddock-ghcjs.doHaddock = false;
148192 packages.haddock-api-ghcjs.doHaddock = false;
@@ -172,4 +216,3 @@ in ghcjsProject // {
172216 };
173217 inherit configureInputs bootInputs configured-src emscriptenupstream emscripten emsdk;
174218}
175−
lib/import-and-filter-project.nix+15−21
@@ -6,14 +6,11 @@
66let
77 # Full source including possible relative paths form the
88 # project directory.
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;
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+ };
1714 # The sub directory containing the cabal.project or stack.yaml file
1815 projectSubDir' = src.origSubDir or ""; # With leading /
1916 projectSubDir = pkgs.lib.strings.removePrefix "/" projectSubDir'; # Without /
@@ -27,31 +24,28 @@ in project // {
2724 else {...}@args: with pkgs.lib.strings;
2825 let
2926 oldPkg = import value args;
30− # When the package src is in the project dir, this is the subDir it is in.
31− subDir = removePrefix "/" (removePrefix (toString projectNix)
32− (toString oldPkg.src.content));
33− srcRepoPrefix = projectSubDir'' + ".source-repository-packages/";
34−
3527 packageInfo =
36− if !hasPrefix (toString projectNix) (toString oldPkg.src.content)
28+ if oldPkg.src ? url
3729 then {
38− # Source location does not match project prefix
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.
3933 isProject = false;
40− packageSrc = toString oldPkg.src.content;
34+ packageSrc = pkgs.lib.lists.elemAt sourceRepos (toInt oldPkg.src.url);
4135 }
42− else if hasPrefix srcRepoPrefix subDir
36+ else if !hasPrefix "${projectNix}" (toString oldPkg.src.content)
4337 then {
44− # The source is from a source repository
38+ # Source location does not match project prefix
4539 isProject = false;
46− packageSrc = pkgs.lib.lists.elemAt sourceRepos (
47− toInt (removePrefix srcRepoPrefix subDir));
40+ packageSrc = toString oldPkg.src.content;
4841 }
4942 else {
5043 # Source does match project prefix and it is not from a source repository
5144 isProject = true;
5245 packageSrc = haskellLib.appendSubDir {
5346 src = srcRoot;
54− inherit subDir;
47+ subDir = removePrefix "/" (removePrefix "${projectNix}"
48+ (toString oldPkg.src.content));
5549 includeSiblings = true; # Filtering sibling dirs of the package dir is done in the
5650 # component builder so that relative paths can be used to
5751 # reference project directories not in the package subDir.
lib/materialize.nix+12−10
@@ -24,7 +24,7 @@
2424}: derivation:
2525
2626let
27− inherit (derivation) name;
27+ name = derivation.name + pkgs.lib.optionalString (derivation ? version) "-${derivation.version}";
2828
2929 traceIgnoringSha256 = reason: x:
3030 if sha256 != null
@@ -36,10 +36,15 @@ let
3636 then builtins.trace ("Warning: ignoring materialized for " + name + " " + reason) x
3737 else x;
3838
39+ traceWhenChecking = message: x:
40+ if checkMaterialization
41+ then builtins.trace message x
42+ else x;
43+
3944 unchecked =
4045 let
41− sha256message = "To make ${this} a fixed-output derivation but not materialized, set `${sha256Arg}` to the output of the 'calculateMaterializedSha' script in 'passthru'.";
42− materializeMessage = "To materialize ${this} entirely, pass a writable path as the `materialized` argument and run the 'updateMaterialized' script in 'passthru'.";
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'.";
4348 in if reasonNotSafe != null
4449 then
4550 # Warn the user if they tried to pin stuff down when it is not safe
@@ -50,10 +55,10 @@ let
5055 else if sha256 != null
5156 then
5257 # Let the user know how to materialize if they want to.
53− builtins.trace materializeMessage calculateUseHash
58+ traceWhenChecking materializeMessage calculateUseHash
5459 else # materialized == null && sha256 == null
5560 # Let the user know how to calculate a sha256 or materialize if they want to.
56− builtins.trace sha256message (builtins.trace materializeMessage calculateNoHash);
61+ traceWhenChecking sha256message (traceWhenChecking materializeMessage calculateNoHash);
5762
5863 # Build fully and check the hash and materialized versions
5964 checked =
@@ -123,11 +128,7 @@ let
123128 calculateUseMaterialized =
124129 assert materialized != null;
125130 assert __pathExists materialized;
126− runCommand name (pkgs.lib.optionalAttrs (sha256 == null) hashArgs) ''
127− cp -Lr ${materialized} $out
128− # Make sure output files can be removed from the sandbox
129− chmod -R +w $out
130− '';
131+ { outPath = materialized; inherit name; };
131132 calculateMaterializedSha =
132133 writeShellScript "calculateSha" ''${nix}/bin/nix-hash --base32 --type sha256 ${calculateNoHash}'';
133134
@@ -143,6 +144,7 @@ let
143144 fi
144145
145146 # Generate the files
147+ mkdir -p $TARGET
146148 rm -rf $TARGET
147149 cp -r ${calculateNoHash} "$TARGET"
148150 chmod -R +w "$TARGET"
lib/pkgconf-nixpkgs-map.nix+8−1
@@ -27,11 +27,12 @@ pkgs:
2727 "dl" = []; # provided by glibc
2828 "fftw3" = [ pkgs."fftw" ];
2929 "fftw3f" = [ pkgs."fftwFloat" ];
30+ "freetype2" = [ pkgs."freetype" ];
3031 "gconf" = [ pkgs."GConf" ];
3132 "gconf-2.0" = [ pkgs."GConf" ];
3233 "gdk-2.0" = [ pkgs."gtk2" ];
3334 "gdk-3.0" = [ pkgs."gtk3" ];
34− "gdk-pixbuf-2.0" = [ pkgs."gdk_pixbuf" ];
35+ "gdk-pixbuf-2.0" = [ (pkgs."gdk-pixbuf" or pkgs."gdk_pixbuf") ];
3536 "gdk-x11-2.0" = [ pkgs."gdk_x11" ];
3637 "gdk-x11-3.0" = [ pkgs."gtk3" ];
3738 "gio-2.0" = [ pkgs."glib" ];
@@ -46,6 +47,7 @@ pkgs:
4647 "gobject-2.0" = [ pkgs."glib" ];
4748 "gmodule-2.0" = [ pkgs."glib" ];
4849 "gobject-introspection-1.0" = [ pkgs."gobject-introspection" ];
50+ "graphene-gobject-1.0" = [ pkgs."graphene" ];
4951 "gstreamer-audio-0.10" = [ pkgs."gst-plugins-base" ];
5052 "gstreamer-audio-1.0" = [ pkgs."gst-plugins-base" ];
5153 "gstreamer-base-0.10" = [ pkgs."gst-plugins-base" ];
@@ -65,6 +67,7 @@ pkgs:
6567 "hidapi-libusb" = [ pkgs."hidapi" ];
6668 "icudata" = [ pkgs."icu" ];
6769 "icui18n" = [ pkgs."icu" ];
70+ "icu-i18n" = [ pkgs."icu" ];
6871 "icuuc" = [ pkgs."icu" ];
6972 "idn" = [ pkgs."libidn" ];
7073 "IL" = [ pkgs."libdevil" ];
@@ -81,7 +84,9 @@ pkgs:
8184 "ldap" = [ pkgs."openldap" ];
8285 "libavutil" = [ pkgs."ffmpeg" ];
8386 "libcrypto" = [ pkgs."openssl".dev ];
87+ "libfreenect" = [ pkgs."freenect" ];
8488 "libgsasl" = [ pkgs."gsasl" ];
89+ "liboath" = [ pkgs."liboauth" ];
8590 "libpcre" = [ pkgs."pcre" ];
8691 "libqrencode" = [ pkgs."qrencode" ];
8792 "libR" = [ pkgs."R" ];
@@ -96,6 +101,7 @@ pkgs:
96101 "libxml-2.0" = [ pkgs."libxml2" ];
97102 "libzip" = [ pkgs."libzip" ];
98103 "libzmq" = [ pkgs."zeromq" ];
104+ "libzstd" = [ pkgs."zstd" ];
99105 "m" = []; # in stdenv
100106 "magic" = [ pkgs."file" ];
101107 "MagickWand" = [ pkgs."imagemagick" ];
@@ -116,6 +122,7 @@ pkgs:
116122 "pfs-1.2" = [ pkgs."pfstools" ];
117123 "png" = [ pkgs."libpng" ];
118124 "poppler-glib" = [ pkgs."poppler" ];
125+ "poppler-cpp" = [ pkgs."poppler" ];
119126 "pq" = [ pkgs."postgresql" ];
120127 "libpq" = [ pkgs."postgresql" ];
121128 "pthread" = [];
lib/project-overlays.nixnew file+37
@@ -0,0 +1,37 @@
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/licenses.nix+14−7
@@ -1,18 +1,25 @@
11pkgs:
22with builtins; let
3+ spdxJson = pkgs.buildPackages.spdx-license-list-data.json or pkgs.buildPackages.spdx-license-list-data;
4+ materialized' = ../../materialized + "/spdx-${spdxJson.version}";
35 licensesJSON = fromJSON (replaceStrings
46 [ "\\u0026" "\\u0027" "\\u003d" ]
57 [ "&" "'" "=" ]
6− (readFile "${pkgs.evalPackages.spdx-license-list-data}/json/licenses.json")
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")
715 );
816 dropFour = s: substring 0 (stringLength s - 4) s;
917 toSpdx = lic: with lic;
10− { spdxId = licenseId
11− ; shortName = licenseId
12− ; fullName = name
13− ; url = dropFour detailsUrl + "html"
14− ; free = isOsiApproved
15− ;
18+ { spdxId = licenseId;
19+ shortName = licenseId;
20+ fullName = name;
21+ url = dropFour detailsUrl + "html";
22+ free = isOsiApproved || lic.isFsfLibre or false;
1623 };
1724 toNamedValue = lic: { name = lic.spdxId; value = lic; };
1825in
lib/stack-cache-generator.nix+33−39
@@ -1,6 +1,5 @@
11# Generate cache entries for dependencies of package defined in `src`
22
3−{ pkgs, haskellLib }:
43{ src
54, stackYaml ? "stack.yaml"
65, sha256map ? null
@@ -9,10 +8,6 @@
98 # sha256map =
109 # { "https://github.com/jgm/pandoc-citeproc"."0.17"
1110 # = "0dxx8cp2xndpw3jwiawch2dkrkp15mil7pyx7dvd810pwc22pm2q"; };
12−, lookupSha256 ?
13− if sha256map != null
14− then { location, tag, ...}: sha256map."${location}"."${tag}"
15− else _: null
1611, branchMap ? null
1712 # A way to specify in which branch a git commit can
1813 # be found
@@ -21,10 +16,14 @@
2116 then { location, tag, ...}: branchMap."${location}"."${tag}" or null
2217 else _: null
2318, resolverSha256 ? null
24−, 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+, nix-tools
20+, evalPackages
2521, ...
26−}:
22+}@args:
2723let
24+ inherit (evalPackages) runCommand;
25+ inherit (evalPackages.haskell-nix) haskellLib;
26+
2827 # We only care about the stackYaml file. If src is a local directory
2928 # we want to avoid recalculating the cache unless the stack.yaml file
3029 # changes.
@@ -34,30 +33,27 @@ let
3433 }) resolver fetchedResolver;
3534
3635 # Filter just the stack yaml file and any resolver yaml file it points to.
37− maybeCleanedSource =
38− if haskellLib.canCleanSource src
39− then haskellLib.cleanSourceWith {
40− inherit src;
41− filter = path: type:
42− let
43− origSrc = if src ? _isLibCleanSourceWith then src.origSrc else src;
44− origSubDir = if src ? _isLibCleanSourceWithEx then src.origSubDir else "";
45− relPath = pkgs.lib.removePrefix (toString origSrc + origSubDir + "/") path;
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;
4643
47− # checks if path1 is a parent directory for path2
48− isParent = path1: path2: pkgs.lib.hasPrefix "${path1}/" path2;
44+ # checks if path1 is a parent directory for path2
45+ isParent = path1: path2: evalPackages.lib.hasPrefix "${path1}/" path2;
4946
50− in
51− (relPath == stackYaml)
52− || (resolver != null && (relPath == resolver || isParent relPath resolver))
53− ;
54− }
55− else src;
47+ in
48+ (relPath == stackYaml)
49+ || (resolver != null && (relPath == resolver || isParent relPath resolver))
50+ ;
51+ };
5652
5753 # All repos served via ssh or git protocols are usually private
58− private = url: pkgs.lib.substring 0 4 url != "http";
54+ private = url: evalPackages.lib.substring 0 4 url != "http";
5955
60− repos = builtins.fromJSON (builtins.readFile (pkgs.runCommand "stack-repos" {
56+ repos = builtins.fromJSON (builtins.readFile (evalPackages.runCommand "stack-repos" {
6157 buildInputs = [ nix-tools ];
6258 } ''
6359 TMP=$(mktemp -d)
@@ -65,45 +61,43 @@ let
6561 cp -r "${maybeCleanedSource}/." $TMP
6662 chmod -R +w $TMP
6763 substituteInPlace ${stackYaml} --replace "# nix-sha256:" "nix-sha256:"
68− ${pkgs.lib.optionalString (fetchedResolver != null) ''
64+ ${evalPackages.lib.optionalString (fetchedResolver != null) ''
6965 substituteInPlace ${stackYaml} --replace "${resolver}" "${fetchedResolver}"
7066 ''}
7167 stack-repos --stack-yaml ${stackYaml}
7268 cp repos.json $out
7369 ''));
7470
75− cabalName = path: builtins.readFile (pkgs.runCommand "cabal-name" {
71+ cabalName = path: builtins.readFile (evalPackages.runCommand "cabal-name" {
7672 buildInputs = [ nix-tools ];
7773 } ''
7874 cabal-name ${path} > $out
7975 '');
8076
8177 hashPath = path:
82− builtins.readFile (pkgs.runCommand "hash-path" { preferLocalBuild = true; }
83− "echo -n $(${pkgs.nix}/bin/nix-hash --type sha256 --base32 ${path}) > $out");
84−in with pkgs.lib;
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;
8581concatMap (dep:
8682 let
8783 is-private = private dep.url;
88− sha256 = if dep.sha256 != null
89− then dep.sha256
90− else lookupSha256 {
91− location = dep.url;
92− tag = dep.rev;
93− };
84+ sha256 =
85+ if dep.sha256 != null then dep.sha256
86+ else if sha256map != null then sha256map."${dep.url}"."${dep.rev}"
87+ else null;
9488 branch = lookupBranch {
9589 location = dep.url;
9690 tag = dep.rev;
9791 };
9892 pkgsrc =
9993 if !is-private && sha256 != null
100− then pkgs.fetchgit {
94+ then evalPackages.fetchgit {
10195 inherit (dep) url rev;
10296 inherit sha256;
10397 }
10498 else builtins.fetchGit ({
10599 inherit (dep) url rev;
106− } // pkgs.lib.optionalAttrs (branch != null) { ref = branch; });
100+ } // evalPackages.lib.optionalAttrs (branch != null) { ref = branch; });
107101 in map (subdir: {
108102 name = cabalName "${pkgsrc}/${subdir}";
109103 inherit (dep) url rev;
lib/system-nixpkgs-map.nix+35−4
@@ -6,16 +6,32 @@ pkgs:
66
77with pkgs;
88
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
920# -- linux
1021{ crypto = [ openssl ];
11− "c++" = null; # no libc++
12− "stdc++" = null;
13− "stdc++-6" = null;
22+ "c++" = []; # no libc++
23+ "stdc++" = gcclibs;
24+ "stdc++-6" = gcclibs;
25+ gcc_s_seh-1 = gcclibs;
26+ gcc_s = gcclibs;
27+ gcc = gcclibs;
1428 ssl = [ openssl ];
1529 z = [ zlib ];
30+ m = []; # Included with ghc
1631 pcap = [ libpcap ];
1732 pthread = null; # available by default
1833 GL = [ libGL ];
34+ GLEW = [ glew ];
1935 GLU = [ libGLU ];
2036 alut = [ freealut ];
2137 X11 = with xorg; [ libX11 ];
@@ -35,6 +51,7 @@ with pkgs;
3551 util = [ utillinux ];
3652 magic = [ file ];
3753 pq = [ postgresql ];
54+ libpq = [ postgresql ];
3855 iconv = [ libiconv ];
3956 lapack = [ liblapack ];
4057 boost_atomic = [ boost ];
@@ -80,25 +97,39 @@ with pkgs;
8097 opencv = [ opencv3 ];
8198 icuuc = [ icu ];
8299 icui18n = [ icu ];
100+ icu-i18n = [ icu ];
83101 icudata = [ icu ];
84102 vulkan = [ vulkan-loader ];
85103 sodium = [ libsodium ];
86104 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 ];
87117}
88118# -- windows
89119// { advapi32 = null; gdi32 = null; imm32 = null; msimg32 = null;
90120 shell32 = null; shfolder = null; shlwapi = null; user32 = null;
121+ ole32 = null; rpcrt4 = null;
91122 winmm = null; userenv = null;
92123 kernel32 = null; ws2_32 = null;
93124 # this should be bundled with gcc.
94125 # if it's not we have more severe
95126 # issues anyway.
96− gcc_s_seh-1 = null;
97127 ssl32 = null; eay32 = [ openssl ];
98128 iphlpapi = null; # IP Help API
99129 msvcrt = null; # this is the libc
100130 Crypt32 = null;
101131 mswsock = null;
132+ bcrypt = null;
102133 }
103134# -- os x
104135# NB: these map almost 1:1 to the framework names
lib/system-pkgs.nix+1−18
@@ -9,25 +9,8 @@
99
1010pkgs:
1111
12−let
13− buildEnvMaybe = name: paths:
14− if builtins.length paths == 1
15− then builtins.head paths
16− else pkgs.buildEnv { name = "${name}-env"; inherit paths; };
17−
18− mapPackages = name: ps:
19− if builtins.typeOf ps == "list"
20− then buildEnvMaybe name ps
21− else ps;
22−
23−in
2412 # Base packages.
2513 pkgs
2614
27− # fetchgit should always come from the evalPackages
28− # if it comes from the targetPackages we won't even
29− # be able to execute it.
30− // { fetchgit = pkgs.evalPackages.fetchgit; }
31−
3215 # Apply the mapping.
33− // builtins.mapAttrs mapPackages (import ./system-nixpkgs-map.nix pkgs)
16+ // import ./system-nixpkgs-map.nix pkgs
materialized/bootstrap/ghc8107/alex/.plan.nix/alex.nixnew file+160
@@ -0,0 +1,160 @@
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.nixnew file+69
@@ -0,0 +1,69 @@
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.nixnew file+200
@@ -0,0 +1,200 @@
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.nixnew file+75
@@ -0,0 +1,75 @@
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.nixnew file+70
@@ -0,0 +1,70 @@
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.nixnew file+47
@@ -0,0 +1,47 @@
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/default.nix+34−18
@@ -3,36 +3,34 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.2.0").revisions).default;
6− "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
7− "rts".revision = (((hackage."rts")."1.0").revisions).default;
8− "deepseq".revision = (((hackage."deepseq")."1.4.3.0").revisions).default;
9− "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;
6+ "array".revision = (((hackage."array")."0.5.2.0").revisions).default;
7+ "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
128 "base".revision = (((hackage."base")."4.11.1.0").revisions).default;
9+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
1310 "time".revision = (((hackage."time")."1.8.0.2").revisions).default;
11+ "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;
14+ "directory".revision = (((hackage."directory")."1.3.1.5").revisions).default;
1415 "filepath".revision = (((hackage."filepath")."1.4.2").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;
16+ "deepseq".revision = (((hackage."deepseq")."1.4.3.0").revisions).default;
1817 };
1918 compiler = {
2019 version = "8.4.4";
2120 nix-name = "ghc844";
2221 packages = {
2322 "ghc-prim" = "0.5.2.0";
24− "unix" = "2.7.2.2";
25− "rts" = "1.0";
26− "deepseq" = "1.4.3.0";
27− "directory" = "1.3.1.5";
28− "containers" = "0.5.11.0";
29− "bytestring" = "0.10.8.2";
23+ "array" = "0.5.2.0";
24+ "integer-gmp" = "1.0.2.0";
3025 "base" = "4.11.1.0";
26+ "rts" = "1.0";
3127 "time" = "1.8.0.2";
28+ "unix" = "2.7.2.2";
29+ "bytestring" = "0.10.8.2";
30+ "containers" = "0.5.11.0";
31+ "directory" = "1.3.1.5";
3232 "filepath" = "1.4.2";
33− "process" = "1.6.3.0";
34− "array" = "0.5.2.0";
35− "integer-gmp" = "1.0.2.0";
33+ "deepseq" = "1.4.3.0";
3634 };
3735 };
3836 };
@@ -45,5 +43,23 @@
4543 "alex" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
4644 };
4745 })
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+ })
4864 ];
4965 }
materialized/bootstrap/ghc844/happy-1.19.11/.plan.nix/happy.nix+1−1
@@ -30,7 +30,7 @@
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+55−28
@@ -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− "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
8− "mtl".revision = (((hackage."mtl")."2.2.2").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;
912 "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;
1513 "text".revision = (((hackage."text")."1.2.3.1").revisions).default;
16− "Cabal".revision = (((hackage."Cabal")."2.2.0.1").revisions).default;
17− "base".revision = (((hackage."base")."4.11.1.0").revisions).default;
14+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
1815 "time".revision = (((hackage."time")."1.8.0.2").revisions).default;
19− "transformers".revision = (((hackage."transformers")."0.5.5.0").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;
2021 "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;
22+ "deepseq".revision = (((hackage."deepseq")."1.4.3.0").revisions).default;
23+ "transformers".revision = (((hackage."transformers")."0.5.5.0").revisions).default;
24+ "Cabal".revision = (((hackage."Cabal")."2.2.0.1").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− "unix" = "2.7.2.2";
33− "mtl" = "2.2.2";
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";
3437 "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";
4038 "text" = "1.2.3.1";
41− "Cabal" = "2.2.0.1";
42− "base" = "4.11.1.0";
39+ "mtl" = "2.2.2";
4340 "time" = "1.8.0.2";
44− "transformers" = "0.5.5.0";
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";
4546 "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";
47+ "deepseq" = "1.4.3.0";
48+ "transformers" = "0.5.5.0";
49+ "Cabal" = "2.2.0.1";
5050 };
5151 };
5252 };
@@ -59,5 +59,32 @@
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+ })
6289 ];
6390 }
materialized/bootstrap/ghc844/happy-1.19.12/default.nix+25−22
@@ -3,40 +3,28 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.2.0").revisions).default;
6− "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
7− "mtl".revision = (((hackage."mtl")."2.2.2").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;
89 "rts".revision = (((hackage."rts")."1.0").revisions).default;
9− "deepseq".revision = (((hackage."deepseq")."1.4.3.0").revisions).default;
10− "directory".revision = (((hackage."directory")."1.3.1.5").revisions).default;
10+ "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
1111 "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;
12+ "deepseq".revision = (((hackage."deepseq")."1.4.3.0").revisions).default;
1513 "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;
2014 };
2115 compiler = {
2216 version = "8.4.4";
2317 nix-name = "ghc844";
2418 packages = {
2519 "ghc-prim" = "0.5.2.0";
26− "unix" = "2.7.2.2";
27− "mtl" = "2.2.2";
20+ "array" = "0.5.2.0";
21+ "integer-gmp" = "1.0.2.0";
22+ "base" = "4.11.1.0";
2823 "rts" = "1.0";
29− "deepseq" = "1.4.3.0";
30− "directory" = "1.3.1.5";
24+ "mtl" = "2.2.2";
3125 "containers" = "0.5.11.0";
32− "bytestring" = "0.10.8.2";
33− "base" = "4.11.1.0";
34− "time" = "1.8.0.2";
26+ "deepseq" = "1.4.3.0";
3527 "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";
4028 };
4129 };
4230 };
@@ -49,5 +37,20 @@
4937 "happy" = { flags = { "small_base" = lib.mkOverride 900 true; }; };
5038 };
5139 })
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+ })
5255 ];
5356 }
materialized/bootstrap/ghc844/hscolour/default.nix+22−8
@@ -3,24 +3,24 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.2.0").revisions).default;
6− "rts".revision = (((hackage."rts")."1.0").revisions).default;
7− "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;
106 "array".revision = (((hackage."array")."0.5.2.0").revisions).default;
117 "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+ "containers".revision = (((hackage."containers")."0.5.11.0").revisions).default;
11+ "deepseq".revision = (((hackage."deepseq")."1.4.3.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− "rts" = "1.0";
19− "deepseq" = "1.4.3.0";
20− "containers" = "0.5.11.0";
21− "base" = "4.11.1.0";
2218 "array" = "0.5.2.0";
2319 "integer-gmp" = "1.0.2.0";
20+ "base" = "4.11.1.0";
21+ "rts" = "1.0";
22+ "containers" = "0.5.11.0";
23+ "deepseq" = "1.4.3.0";
2424 };
2525 };
2626 };
@@ -29,5 +29,19 @@
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+ })
3246 ];
3347 }
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 or (pkgs.buildPackages.alex or (errorHandler.buildToolDepError "alex")))
153+ (hsPkgs.buildPackages.alex.components.exes.alex or (pkgs.buildPackages.alex or (errorHandler.buildToolDepError "alex:alex")))
154154 ];
155155 buildable = true;
156156 mainPath = [ "test.hs" ];
materialized/bootstrap/ghc882/alex/default.nix+38−18
@@ -3,36 +3,36 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
6− "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
7− "rts".revision = (((hackage."rts")."1.0").revisions).default;
8− "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
9− "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;
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;
129 "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
10+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
1311 "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.10.0").revisions).default;
14+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
15+ "directory".revision = (((hackage."directory")."1.3.4.0").revisions).default;
1416 "filepath".revision = (((hackage."filepath")."1.4.2.1").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;
17+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
1818 };
1919 compiler = {
2020 version = "8.8.2";
2121 nix-name = "ghc882";
2222 packages = {
2323 "ghc-prim" = "0.5.3";
24− "unix" = "2.7.2.2";
25− "rts" = "1.0";
26− "deepseq" = "1.4.4.0";
27− "directory" = "1.3.4.0";
28− "containers" = "0.6.2.1";
29− "bytestring" = "0.10.10.0";
24+ "array" = "0.5.4.0";
25+ "integer-gmp" = "1.0.2.0";
26+ "process" = "1.6.7.0";
3027 "base" = "4.13.0.0";
28+ "rts" = "1.0";
3129 "time" = "1.9.3";
30+ "unix" = "2.7.2.2";
31+ "bytestring" = "0.10.10.0";
32+ "containers" = "0.6.2.1";
33+ "directory" = "1.3.4.0";
3234 "filepath" = "1.4.2.1";
33− "process" = "1.6.7.0";
34− "array" = "0.5.4.0";
35− "integer-gmp" = "1.0.2.0";
35+ "deepseq" = "1.4.4.0";
3636 };
3737 };
3838 };
@@ -45,5 +45,25 @@
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+ })
4868 ];
4969 }
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 or (pkgs.buildPackages.happy or (errorHandler.buildToolDepError "happy")))
193+ (hsPkgs.buildPackages.happy.components.exes.happy or (pkgs.buildPackages.happy or (errorHandler.buildToolDepError "happy:happy")))
194194 ];
195195 buildable = true;
196196 mainPath = [ "test.hs" ];
materialized/bootstrap/ghc882/happy-1.19.12/default.nix+44−22
@@ -3,40 +3,40 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
6− "unix".revision = (((hackage."unix")."2.7.2.2").revisions).default;
7− "mtl".revision = (((hackage."mtl")."2.2.2").revisions).default;
8− "rts".revision = (((hackage."rts")."1.0").revisions).default;
9− "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;
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;
139 "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;
1412 "time".revision = (((hackage."time")."1.9.3").revisions).default;
15− "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
13+ "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;
1617 "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;
18+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
19+ "transformers".revision = (((hackage."transformers")."0.5.6.2").revisions).default;
2020 };
2121 compiler = {
2222 version = "8.8.2";
2323 nix-name = "ghc882";
2424 packages = {
2525 "ghc-prim" = "0.5.3";
26− "unix" = "2.7.2.2";
27− "mtl" = "2.2.2";
28− "rts" = "1.0";
29− "deepseq" = "1.4.4.0";
30− "directory" = "1.3.4.0";
31− "containers" = "0.6.2.1";
32− "bytestring" = "0.10.10.0";
26+ "array" = "0.5.4.0";
27+ "integer-gmp" = "1.0.2.0";
28+ "process" = "1.6.7.0";
3329 "base" = "4.13.0.0";
30+ "rts" = "1.0";
31+ "mtl" = "2.2.2";
3432 "time" = "1.9.3";
35− "transformers" = "0.5.6.2";
33+ "unix" = "2.7.2.2";
34+ "bytestring" = "0.10.10.0";
35+ "containers" = "0.6.2.1";
36+ "directory" = "1.3.4.0";
3637 "filepath" = "1.4.2.1";
37− "process" = "1.6.7.0";
38− "array" = "0.5.4.0";
39− "integer-gmp" = "1.0.2.0";
38+ "deepseq" = "1.4.4.0";
39+ "transformers" = "0.5.6.2";
4040 };
4141 };
4242 };
@@ -49,5 +49,27 @@
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+ })
5274 ];
5375 }
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+22−8
@@ -3,24 +3,24 @@
33 {
44 packages = {
55 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
6− "rts".revision = (((hackage."rts")."1.0").revisions).default;
7− "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;
106 "array".revision = (((hackage."array")."0.5.4.0").revisions).default;
117 "integer-gmp".revision = (((hackage."integer-gmp")."1.0.2.0").revisions).default;
8+ "base".revision = (((hackage."base")."4.13.0.0").revisions).default;
9+ "rts".revision = (((hackage."rts")."1.0").revisions).default;
10+ "containers".revision = (((hackage."containers")."0.6.2.1").revisions).default;
11+ "deepseq".revision = (((hackage."deepseq")."1.4.4.0").revisions).default;
1212 };
1313 compiler = {
1414 version = "8.8.2";
1515 nix-name = "ghc882";
1616 packages = {
1717 "ghc-prim" = "0.5.3";
18− "rts" = "1.0";
19− "deepseq" = "1.4.4.0";
20− "containers" = "0.6.2.1";
21− "base" = "4.13.0.0";
2218 "array" = "0.5.4.0";
2319 "integer-gmp" = "1.0.2.0";
20+ "base" = "4.13.0.0";
21+ "rts" = "1.0";
22+ "containers" = "0.6.2.1";
23+ "deepseq" = "1.4.4.0";
2424 };
2525 };
2626 };
@@ -29,5 +29,19 @@
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+ })
3246 ];
3347 }
materialized/bootstrap/ghc883/alex/.plan.nix/alex.nixnew file+160
@@ -0,0 +1,160 @@
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.nixnew file+65
@@ -0,0 +1,65 @@
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.nixnew file+200
@@ -0,0 +1,200 @@
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.nixnew file+56
@@ -0,0 +1,56 @@
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.nixnew file+70
@@ -0,0 +1,70 @@
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.nixnew file+47
@@ -0,0 +1,47 @@
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.nixnew file+160
@@ -0,0 +1,160 @@
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.nixnew file+65
@@ -0,0 +1,65 @@
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.nixnew file+200
@@ -0,0 +1,200 @@
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.nixnew file+56
@@ -0,0 +1,56 @@
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.nixnew file+70
@@ -0,0 +1,70 @@
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.nixnew file+47
@@ -0,0 +1,47 @@
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.5-x86_64-linux/ghc-pkg/dump-globalnew file+1443
@@ -0,0 +1,1443 @@
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/versionnew file+1
@@ -0,0 +1 @@
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/infonew file+69
@@ -0,0 +1,69 @@
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-versionnew file+1
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.5-x86_64-linux/ghc/supported-languagesnew file+255
@@ -0,0 +1,255 @@
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/versionnew file+1
@@ -0,0 +1 @@
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-globalnew file+1443
@@ -0,0 +1,1443 @@
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.3.0 binary-0.8.8.0 bytestring-0.10.12.0
175+ containers-0.6.5.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.13.2 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.3.0
210+haddock-interfaces:
211+haddock-html:
212+---
213+name: base
214+version: 4.14.3.0
215+visibility: public
216+id: base-4.14.3.0
217+key: base-4.14.3.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.3.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.3.0 bytestring-0.10.12.0 containers-0.6.5.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.3.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.5.1
425+visibility: public
426+id: containers-0.6.5.1
427+key: containers-0.6.5.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.5.1
467+depends: array-0.5.4.0 base-4.14.3.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.3.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.3.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.3.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.3.0
591+haddock-interfaces:
592+haddock-html:
593+---
594+name: ghc-boot
595+version: 8.10.6
596+visibility: public
597+id: ghc-boot-8.10.6
598+key: ghc-boot-8.10.6
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.6
624+depends:
625+ base-4.14.3.0 binary-0.8.8.0 bytestring-0.10.12.0
626+ containers-0.6.5.1 directory-1.3.6.0 filepath-1.4.2.1
627+ ghc-boot-th-8.10.6
628+haddock-interfaces:
629+haddock-html:
630+---
631+name: ghc-boot-th
632+version: 8.10.6
633+visibility: public
634+id: ghc-boot-th-8.10.6
635+key: ghc-boot-th-8.10.6
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.6
656+depends: base-4.14.3.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.3.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.6
693+visibility: public
694+id: ghc-heap-8.10.6
695+key: ghc-heap-8.10.6
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.6
714+depends: base-4.14.3.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.6
745+visibility: public
746+id: ghci-8.10.6
747+key: ghci-8.10.6
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.6
767+include-dirs:
768+depends:
769+ array-0.5.4.0 base-4.14.3.0 binary-0.8.8.0 bytestring-0.10.12.0
770+ containers-0.6.5.1 deepseq-1.4.4.0 filepath-1.4.2.1 ghc-boot-8.10.6
771+ ghc-boot-th-8.10.6 ghc-heap-8.10.6 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.2
778+visibility: public
779+id: haskeline-0.8.2
780+key: haskeline-0.8.2
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.2
822+depends:
823+ base-4.14.3.0 bytestring-0.10.12.0 containers-0.6.5.1
824+ directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
825+ process-1.6.13.2 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.3.0 containers-0.6.5.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.6
892+visibility: public
893+id: libiserv-8.10.6
894+key: libiserv-8.10.6
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.6
908+depends:
909+ base-4.14.3.0 binary-0.8.8.0 bytestring-0.10.12.0
910+ containers-0.6.5.1 deepseq-1.4.4.0 ghci-8.10.6 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.3.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.3.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.3.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.13.2
1037+visibility: public
1038+id: process-1.6.13.2
1039+key: process-1.6.13.2
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.13.2
1059+include-dirs:
1060+includes: runProcess.h
1061+depends:
1062+ base-4.14.3.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.3.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.3.0 ghc-boot-th-8.10.6 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.3.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.3.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.3.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.3.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.6-x86_64-linux/ghc-pkg/versionnew file+1
@@ -0,0 +1 @@
1+GHC package manager version 8.10.6
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc/infonew file+67
@@ -0,0 +1,67 @@
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 clang command","clang")
34+ ,("integer library","integer-gmp")
35+ ,("Use interpreter","YES")
36+ ,("Use native code generator","NO")
37+ ,("Support SMP","YES")
38+ ,("RTS ways","l debug thr thr_debug thr_l thr_p thr_debug_p debug_p")
39+ ,("Tables next to code","YES")
40+ ,("Leading underscore","NO")
41+ ,("Use LibFFI","YES")
42+ ,("Use Threads","YES")
43+ ,("Use Debugging","NO")
44+ ,("RTS expects libdw","NO")
45+ ,("Project version","8.10.6")
46+ ,("Project Git commit id","f7b3359be12030d762b299681e1aeef0292417ce")
47+ ,("Booter version","8.8.4")
48+ ,("Stage","1")
49+ ,("Build platform","x86_64-unknown-linux")
50+ ,("Host platform","x86_64-unknown-linux")
51+ ,("Target platform","aarch64-unknown-linux")
52+ ,("Have interpreter","YES")
53+ ,("Object splitting supported","NO")
54+ ,("Have native code generator","NO")
55+ ,("Support dynamic-too","YES")
56+ ,("Support parallel --make","YES")
57+ ,("Support reexported-modules","YES")
58+ ,("Support thinning and renaming package flags","YES")
59+ ,("Support Backpack","YES")
60+ ,("Requires unified installed package IDs","YES")
61+ ,("Uses package keys","YES")
62+ ,("Uses unit IDs","YES")
63+ ,("Dynamic by default","NO")
64+ ,("GHC Dynamic","NO")
65+ ,("GHC Profiled","NO")
66+ ,("Debug on","NO")
67+ ]
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc/numeric-versionnew file+1
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.6-x86_64-linux/ghc/supported-languagesnew file+255
@@ -0,0 +1,255 @@
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.6-x86_64-linux/ghc/versionnew file+1
@@ -0,0 +1 @@
1+The Glorious Glasgow Haskell Compilation System, version 8.10.6
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc-pkg/dump-globalnew file+1443
@@ -0,0 +1,1443 @@
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.3.0 binary-0.8.8.0 bytestring-0.10.12.0
175+ containers-0.6.5.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.13.2 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.3.0
210+haddock-interfaces:
211+haddock-html:
212+---
213+name: base
214+version: 4.14.3.0
215+visibility: public
216+id: base-4.14.3.0
217+key: base-4.14.3.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.3.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.3.0 bytestring-0.10.12.0 containers-0.6.5.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.3.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.5.1
425+visibility: public
426+id: containers-0.6.5.1
427+key: containers-0.6.5.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.5.1
467+depends: array-0.5.4.0 base-4.14.3.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.3.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.3.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.3.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.3.0
591+haddock-interfaces:
592+haddock-html:
593+---
594+name: ghc-boot
595+version: 8.10.7
596+visibility: public
597+id: ghc-boot-8.10.7
598+key: ghc-boot-8.10.7
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.7
624+depends:
625+ base-4.14.3.0 binary-0.8.8.0 bytestring-0.10.12.0
626+ containers-0.6.5.1 directory-1.3.6.0 filepath-1.4.2.1
627+ ghc-boot-th-8.10.7
628+haddock-interfaces:
629+haddock-html:
630+---
631+name: ghc-boot-th
632+version: 8.10.7
633+visibility: public
634+id: ghc-boot-th-8.10.7
635+key: ghc-boot-th-8.10.7
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.7
656+depends: base-4.14.3.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.3.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.7
693+visibility: public
694+id: ghc-heap-8.10.7
695+key: ghc-heap-8.10.7
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.7
714+depends: base-4.14.3.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.7
745+visibility: public
746+id: ghci-8.10.7
747+key: ghci-8.10.7
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.7
767+include-dirs:
768+depends:
769+ array-0.5.4.0 base-4.14.3.0 binary-0.8.8.0 bytestring-0.10.12.0
770+ containers-0.6.5.1 deepseq-1.4.4.0 filepath-1.4.2.1 ghc-boot-8.10.7
771+ ghc-boot-th-8.10.7 ghc-heap-8.10.7 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.2
778+visibility: public
779+id: haskeline-0.8.2
780+key: haskeline-0.8.2
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.2
822+depends:
823+ base-4.14.3.0 bytestring-0.10.12.0 containers-0.6.5.1
824+ directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
825+ process-1.6.13.2 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.3.0 containers-0.6.5.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.7
892+visibility: public
893+id: libiserv-8.10.7
894+key: libiserv-8.10.7
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.7
908+depends:
909+ base-4.14.3.0 binary-0.8.8.0 bytestring-0.10.12.0
910+ containers-0.6.5.1 deepseq-1.4.4.0 ghci-8.10.7 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.3.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.3.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.3.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.13.2
1037+visibility: public
1038+id: process-1.6.13.2
1039+key: process-1.6.13.2
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.13.2
1059+include-dirs:
1060+includes: runProcess.h
1061+depends:
1062+ base-4.14.3.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.3.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.3.0 ghc-boot-th-8.10.7 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.3.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.3.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.3.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.3.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.7-x86_64-linux/ghc-pkg/versionnew file+1
@@ -0,0 +1 @@
1+GHC package manager version 8.10.7
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc/infonew file+67
@@ -0,0 +1,67 @@
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 clang command","clang")
34+ ,("integer library","integer-gmp")
35+ ,("Use interpreter","YES")
36+ ,("Use native code generator","NO")
37+ ,("Support SMP","YES")
38+ ,("RTS ways","l debug thr thr_debug thr_l thr_p thr_debug_p debug_p")
39+ ,("Tables next to code","YES")
40+ ,("Leading underscore","NO")
41+ ,("Use LibFFI","YES")
42+ ,("Use Threads","YES")
43+ ,("Use Debugging","NO")
44+ ,("RTS expects libdw","NO")
45+ ,("Project version","8.10.7")
46+ ,("Project Git commit id","1f02b7430b2fbab403d7ffdde9cfd006e884678e")
47+ ,("Booter version","8.8.4")
48+ ,("Stage","1")
49+ ,("Build platform","x86_64-unknown-linux")
50+ ,("Host platform","x86_64-unknown-linux")
51+ ,("Target platform","aarch64-unknown-linux")
52+ ,("Have interpreter","YES")
53+ ,("Object splitting supported","NO")
54+ ,("Have native code generator","NO")
55+ ,("Support dynamic-too","YES")
56+ ,("Support parallel --make","YES")
57+ ,("Support reexported-modules","YES")
58+ ,("Support thinning and renaming package flags","YES")
59+ ,("Support Backpack","YES")
60+ ,("Requires unified installed package IDs","YES")
61+ ,("Uses package keys","YES")
62+ ,("Uses unit IDs","YES")
63+ ,("Dynamic by default","NO")
64+ ,("GHC Dynamic","NO")
65+ ,("GHC Profiled","NO")
66+ ,("Debug on","NO")
67+ ]
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc/numeric-versionnew file+1
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.10.7-x86_64-linux/ghc/supported-languagesnew file+255
@@ -0,0 +1,255 @@
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.7-x86_64-linux/ghc/versionnew file+1
@@ -0,0 +1 @@
1+The Glorious Glasgow Haskell Compilation System, version 8.10.7
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-8.8.4-x86_64-linux/ghc/info+1−3
@@ -24,12 +24,10 @@
2424 ,("target has subsections via symbols","False")
2525 ,("target has RTS linker","YES")
2626 ,("Unregisterised","NO")
27− ,("LLVM llc command","llc")
28− ,("LLVM opt command","opt")
2927 ,("LLVM clang command","clang")
3028 ,("Project version","8.8.4")
3129 ,("Project Git commit id","6cf8f835267581d551ca6695b3b02c34797e2cf4")
32− ,("Booter version","8.4.4")
30+ ,("Booter version","8.8.4")
3331 ,("Stage","1")
3432 ,("Build platform","x86_64-unknown-linux")
3533 ,("Host platform","x86_64-unknown-linux")
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc-pkg/dump-globalnew file+1512
@@ -0,0 +1,1512 @@
1+name: Cabal
2+version: 3.6.3.0
3+visibility: public
4+id: Cabal-3.6.3.0
5+key: Cabal-3.6.3.0
6+license: BSD-3-Clause
7+copyright: 2003-2021, 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.NonEmptySet Distribution.Compat.Parsing
36+ Distribution.Compat.Prelude.Internal Distribution.Compat.Process
37+ Distribution.Compat.ResponseFile Distribution.Compat.Semigroup
38+ Distribution.Compat.Stack Distribution.Compat.Time
39+ Distribution.Compat.Typeable Distribution.Compiler
40+ Distribution.FieldGrammar Distribution.FieldGrammar.Class
41+ Distribution.FieldGrammar.FieldDescrs
42+ Distribution.FieldGrammar.Newtypes Distribution.FieldGrammar.Parsec
43+ Distribution.FieldGrammar.Pretty Distribution.Fields
44+ Distribution.Fields.ConfVar Distribution.Fields.Field
45+ Distribution.Fields.Lexer Distribution.Fields.LexerMonad
46+ Distribution.Fields.ParseResult Distribution.Fields.Parser
47+ Distribution.Fields.Pretty Distribution.InstalledPackageInfo
48+ Distribution.License Distribution.Make Distribution.ModuleName
49+ Distribution.Package 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.Position Distribution.Parsec.Warning
59+ Distribution.Pretty Distribution.ReadE Distribution.SPDX
60+ Distribution.SPDX.License Distribution.SPDX.LicenseExceptionId
61+ Distribution.SPDX.LicenseExpression Distribution.SPDX.LicenseId
62+ Distribution.SPDX.LicenseListVersion
63+ Distribution.SPDX.LicenseReference Distribution.Simple
64+ Distribution.Simple.Bench Distribution.Simple.Build
65+ Distribution.Simple.Build.Macros
66+ Distribution.Simple.Build.PathsModule
67+ Distribution.Simple.BuildPaths Distribution.Simple.BuildTarget
68+ Distribution.Simple.BuildToolDepends Distribution.Simple.CCompiler
69+ Distribution.Simple.Command Distribution.Simple.Compiler
70+ Distribution.Simple.Configure Distribution.Simple.Flag
71+ Distribution.Simple.GHC Distribution.Simple.GHCJS
72+ Distribution.Simple.Glob Distribution.Simple.Haddock
73+ Distribution.Simple.HaskellSuite Distribution.Simple.Hpc
74+ Distribution.Simple.Install Distribution.Simple.InstallDirs
75+ Distribution.Simple.InstallDirs.Internal
76+ Distribution.Simple.LocalBuildInfo Distribution.Simple.PackageIndex
77+ Distribution.Simple.PreProcess Distribution.Simple.PreProcess.Unlit
78+ Distribution.Simple.Program Distribution.Simple.Program.Ar
79+ Distribution.Simple.Program.Builtin Distribution.Simple.Program.Db
80+ Distribution.Simple.Program.Find Distribution.Simple.Program.GHC
81+ Distribution.Simple.Program.HcPkg Distribution.Simple.Program.Hpc
82+ Distribution.Simple.Program.Internal Distribution.Simple.Program.Ld
83+ Distribution.Simple.Program.ResponseFile
84+ Distribution.Simple.Program.Run Distribution.Simple.Program.Script
85+ Distribution.Simple.Program.Strip Distribution.Simple.Program.Types
86+ Distribution.Simple.Register Distribution.Simple.Setup
87+ Distribution.Simple.ShowBuildInfo Distribution.Simple.SrcDist
88+ Distribution.Simple.Test Distribution.Simple.Test.ExeV10
89+ Distribution.Simple.Test.LibV09 Distribution.Simple.Test.Log
90+ Distribution.Simple.UHC Distribution.Simple.UserHooks
91+ Distribution.Simple.Utils Distribution.System
92+ Distribution.TestSuite Distribution.Text
93+ Distribution.Types.AbiDependency Distribution.Types.AbiHash
94+ Distribution.Types.AnnotatedId Distribution.Types.Benchmark
95+ Distribution.Types.Benchmark.Lens
96+ Distribution.Types.BenchmarkInterface
97+ Distribution.Types.BenchmarkType Distribution.Types.BuildInfo
98+ Distribution.Types.BuildInfo.Lens Distribution.Types.BuildType
99+ Distribution.Types.Component Distribution.Types.ComponentId
100+ Distribution.Types.ComponentInclude
101+ Distribution.Types.ComponentLocalBuildInfo
102+ Distribution.Types.ComponentName
103+ Distribution.Types.ComponentRequestedSpec
104+ Distribution.Types.CondTree Distribution.Types.Condition
105+ Distribution.Types.ConfVar Distribution.Types.Dependency
106+ Distribution.Types.DependencyMap Distribution.Types.ExeDependency
107+ Distribution.Types.Executable Distribution.Types.Executable.Lens
108+ Distribution.Types.ExecutableScope Distribution.Types.ExposedModule
109+ Distribution.Types.Flag Distribution.Types.ForeignLib
110+ Distribution.Types.ForeignLib.Lens
111+ Distribution.Types.ForeignLibOption
112+ Distribution.Types.ForeignLibType
113+ Distribution.Types.GenericPackageDescription
114+ Distribution.Types.GenericPackageDescription.Lens
115+ Distribution.Types.GivenComponent
116+ Distribution.Types.HookedBuildInfo
117+ Distribution.Types.IncludeRenaming
118+ Distribution.Types.InstalledPackageInfo
119+ Distribution.Types.InstalledPackageInfo.FieldGrammar
120+ Distribution.Types.InstalledPackageInfo.Lens
121+ Distribution.Types.LegacyExeDependency Distribution.Types.Lens
122+ Distribution.Types.Library Distribution.Types.Library.Lens
123+ Distribution.Types.LibraryName Distribution.Types.LibraryVisibility
124+ Distribution.Types.LocalBuildInfo Distribution.Types.Mixin
125+ Distribution.Types.Module Distribution.Types.ModuleReexport
126+ Distribution.Types.ModuleRenaming
127+ Distribution.Types.MungedPackageId
128+ Distribution.Types.MungedPackageName
129+ Distribution.Types.PackageDescription
130+ Distribution.Types.PackageDescription.Lens
131+ Distribution.Types.PackageId Distribution.Types.PackageId.Lens
132+ Distribution.Types.PackageName Distribution.Types.PackageName.Magic
133+ Distribution.Types.PackageVersionConstraint
134+ Distribution.Types.PkgconfigDependency
135+ Distribution.Types.PkgconfigName
136+ Distribution.Types.PkgconfigVersion
137+ Distribution.Types.PkgconfigVersionRange
138+ Distribution.Types.SetupBuildInfo
139+ Distribution.Types.SetupBuildInfo.Lens
140+ Distribution.Types.SourceRepo Distribution.Types.SourceRepo.Lens
141+ Distribution.Types.TargetInfo Distribution.Types.TestSuite
142+ Distribution.Types.TestSuite.Lens
143+ Distribution.Types.TestSuiteInterface Distribution.Types.TestType
144+ Distribution.Types.UnitId Distribution.Types.UnqualComponentName
145+ Distribution.Types.Version Distribution.Types.VersionInterval
146+ Distribution.Types.VersionInterval.Legacy
147+ Distribution.Types.VersionRange
148+ Distribution.Types.VersionRange.Internal Distribution.Utils.Generic
149+ Distribution.Utils.IOData Distribution.Utils.LogProgress
150+ Distribution.Utils.MD5 Distribution.Utils.MapAccum
151+ Distribution.Utils.NubList Distribution.Utils.Path
152+ Distribution.Utils.Progress Distribution.Utils.ShortText
153+ Distribution.Utils.Structured Distribution.Verbosity
154+ Distribution.Verbosity.Internal Distribution.Version
155+ 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.Build.Macros.Z
166+ Distribution.Simple.Build.PathsModule.Z
167+ Distribution.Simple.GHC.EnvironmentParser
168+ Distribution.Simple.GHC.Internal Distribution.Simple.GHC.ImplInfo
169+ Distribution.Simple.Utils.Json Distribution.ZinzaPrelude
170+ Paths_Cabal
171+import-dirs:
172+library-dirs:
173+dynamic-library-dirs:
174+data-dir:
175+hs-libraries: HSCabal-3.6.3.0
176+depends:
177+ array-0.5.4.0 base-4.16.3.0 binary-0.8.9.0 bytestring-0.11.3.1
178+ containers-0.6.5.1 deepseq-1.4.6.1 directory-1.3.6.2
179+ filepath-1.4.2.2 mtl-2.2.2 parsec-3.1.15.0 pretty-1.1.3.6
180+ process-1.6.13.2 text-1.2.5.0 time-1.11.1.1 transformers-0.5.6.2
181+ unix-2.7.2.2
182+haddock-interfaces:
183+haddock-html:
184+---
185+name: array
186+version: 0.5.4.0
187+visibility: public
188+id: array-0.5.4.0
189+key: array-0.5.4.0
190+license: BSD-3-Clause
191+maintainer: libraries@haskell.org
192+synopsis: Mutable and immutable arrays
193+description:
194+ In addition to providing the "Data.Array" module
195+ <http://www.haskell.org/onlinereport/haskell2010/haskellch14.html as specified in the Haskell 2010 Language Report>,
196+ this package also defines the classes 'IArray' of
197+ immutable arrays and 'MArray' of arrays mutable within appropriate
198+ monads, as well as some instances of these classes.
199+category: Data Structures
200+exposed: True
201+exposed-modules:
202+ Data.Array Data.Array.Base Data.Array.IArray Data.Array.IO
203+ Data.Array.IO.Internals Data.Array.IO.Safe Data.Array.MArray
204+ Data.Array.MArray.Safe Data.Array.ST Data.Array.ST.Safe
205+ Data.Array.Storable Data.Array.Storable.Internals
206+ Data.Array.Storable.Safe Data.Array.Unboxed Data.Array.Unsafe
207+import-dirs:
208+library-dirs:
209+dynamic-library-dirs:
210+data-dir:
211+hs-libraries: HSarray-0.5.4.0
212+depends: base-4.16.3.0
213+haddock-interfaces:
214+haddock-html:
215+---
216+name: base
217+version: 4.16.3.0
218+visibility: public
219+id: base-4.16.3.0
220+key: base-4.16.3.0
221+license: BSD-3-Clause
222+maintainer: libraries@haskell.org
223+synopsis: Basic libraries
224+description:
225+ This package contains the Standard Haskell "Prelude" and its support libraries,
226+ and a large collection of useful libraries ranging from data
227+ structures to parsing combinators and debugging utilities.
228+category: Prelude
229+exposed: True
230+exposed-modules:
231+ Control.Applicative, Control.Arrow, Control.Category,
232+ Control.Concurrent, Control.Concurrent.Chan,
233+ Control.Concurrent.MVar, Control.Concurrent.QSem,
234+ Control.Concurrent.QSemN, Control.Exception,
235+ Control.Exception.Base, Control.Monad, Control.Monad.Fail,
236+ Control.Monad.Fix, Control.Monad.IO.Class, Control.Monad.Instances,
237+ Control.Monad.ST, Control.Monad.ST.Lazy,
238+ Control.Monad.ST.Lazy.Safe, Control.Monad.ST.Lazy.Unsafe,
239+ Control.Monad.ST.Safe, Control.Monad.ST.Strict,
240+ Control.Monad.ST.Unsafe, Control.Monad.Zip, Data.Bifoldable,
241+ Data.Bifunctor, Data.Bitraversable, Data.Bits, Data.Bool,
242+ Data.Char, Data.Coerce, Data.Complex, Data.Data, Data.Dynamic,
243+ Data.Either, Data.Eq, Data.Fixed, Data.Foldable, Data.Function,
244+ Data.Functor, Data.Functor.Classes, Data.Functor.Compose,
245+ Data.Functor.Const, Data.Functor.Contravariant,
246+ Data.Functor.Identity, Data.Functor.Product, Data.Functor.Sum,
247+ Data.IORef, Data.Int, Data.Ix, Data.Kind, Data.List,
248+ Data.List.NonEmpty, Data.Maybe, Data.Monoid, Data.Ord, Data.Proxy,
249+ Data.Ratio, Data.STRef, Data.STRef.Lazy, Data.STRef.Strict,
250+ Data.Semigroup, Data.String, Data.Traversable, Data.Tuple,
251+ Data.Type.Bool, Data.Type.Coercion, Data.Type.Equality,
252+ Data.Type.Ord, Data.Typeable, Data.Unique, Data.Version, Data.Void,
253+ Data.Word, Debug.Trace, Foreign, Foreign.C, Foreign.C.Error,
254+ Foreign.C.String, Foreign.C.Types, Foreign.Concurrent,
255+ Foreign.ForeignPtr, Foreign.ForeignPtr.Safe,
256+ Foreign.ForeignPtr.Unsafe, Foreign.Marshal, Foreign.Marshal.Alloc,
257+ Foreign.Marshal.Array, Foreign.Marshal.Error, Foreign.Marshal.Pool,
258+ Foreign.Marshal.Safe, Foreign.Marshal.Unsafe,
259+ Foreign.Marshal.Utils, Foreign.Ptr, Foreign.Safe,
260+ Foreign.StablePtr, Foreign.Storable, GHC.Arr, GHC.Base, GHC.Bits,
261+ GHC.ByteOrder, GHC.Char, GHC.Clock, GHC.Conc, GHC.Conc.IO,
262+ GHC.Conc.Signal, GHC.Conc.Sync, GHC.ConsoleHandler, GHC.Constants,
263+ GHC.Desugar, GHC.Enum, GHC.Environment, GHC.Err, GHC.Event,
264+ GHC.Event.TimeOut, GHC.Exception, GHC.Exception.Type,
265+ GHC.ExecutionStack, GHC.ExecutionStack.Internal, GHC.Exts,
266+ GHC.Fingerprint, GHC.Fingerprint.Type, GHC.Float,
267+ GHC.Float.ConversionUtils, GHC.Float.RealFracMethods, GHC.Foreign,
268+ GHC.ForeignPtr, GHC.GHCi, GHC.GHCi.Helpers, GHC.Generics, GHC.IO,
269+ GHC.IO.Buffer, GHC.IO.BufferedIO, GHC.IO.Device, GHC.IO.Encoding,
270+ GHC.IO.Encoding.CodePage, GHC.IO.Encoding.Failure,
271+ GHC.IO.Encoding.Iconv, GHC.IO.Encoding.Latin1,
272+ GHC.IO.Encoding.Types, GHC.IO.Encoding.UTF16,
273+ GHC.IO.Encoding.UTF32, GHC.IO.Encoding.UTF8, GHC.IO.Exception,
274+ GHC.IO.FD, GHC.IO.Handle, GHC.IO.Handle.FD,
275+ GHC.IO.Handle.Internals, GHC.IO.Handle.Lock, GHC.IO.Handle.Text,
276+ GHC.IO.Handle.Types, GHC.IO.IOMode, GHC.IO.StdHandles,
277+ GHC.IO.SubSystem, GHC.IO.Unsafe, GHC.IOArray, GHC.IOPort,
278+ GHC.IORef, GHC.Int, GHC.Integer, GHC.Integer.Logarithms, GHC.Ix,
279+ GHC.List, GHC.MVar, GHC.Maybe, GHC.Natural, GHC.Num,
280+ GHC.Num.BigNat from ghc-bignum-1.2:GHC.Num.BigNat,
281+ GHC.Num.Integer from ghc-bignum-1.2:GHC.Num.Integer,
282+ GHC.Num.Natural from ghc-bignum-1.2:GHC.Num.Natural, GHC.OldList,
283+ GHC.OverloadedLabels, GHC.Pack, GHC.Profiling, GHC.Ptr,
284+ GHC.RTS.Flags, GHC.Read, GHC.Real, GHC.Records, GHC.ResponseFile,
285+ GHC.ST, GHC.STRef, GHC.Show, GHC.Stable, GHC.StableName, GHC.Stack,
286+ GHC.Stack.CCS, GHC.Stack.Types, GHC.StaticPtr, GHC.Stats,
287+ GHC.Storable, GHC.TopHandler, GHC.TypeLits, GHC.TypeLits.Internal,
288+ GHC.TypeNats, GHC.TypeNats.Internal, GHC.Unicode, GHC.Weak,
289+ GHC.Word, Numeric, Numeric.Natural, Prelude, System.CPUTime,
290+ System.Console.GetOpt, System.Environment,
291+ System.Environment.Blank, System.Exit, System.IO, System.IO.Error,
292+ System.IO.Unsafe, System.Info, System.Mem, System.Mem.StableName,
293+ System.Mem.Weak, System.Posix.Internals, System.Posix.Types,
294+ System.Timeout, Text.ParserCombinators.ReadP,
295+ Text.ParserCombinators.ReadPrec, Text.Printf, Text.Read,
296+ Text.Read.Lex, Text.Show, Text.Show.Functions, Type.Reflection,
297+ Type.Reflection.Unsafe, Unsafe.Coerce
298+hidden-modules:
299+ Control.Monad.ST.Imp Control.Monad.ST.Lazy.Imp Data.Functor.Utils
300+ Data.OldList Data.Semigroup.Internal Data.Typeable.Internal
301+ Foreign.ForeignPtr.Imp GHC.IO.Handle.Lock.Common
302+ GHC.IO.Handle.Lock.Flock GHC.IO.Handle.Lock.LinuxOFD
303+ GHC.IO.Handle.Lock.NoOp GHC.IO.Handle.Lock.Windows
304+ GHC.StaticPtr.Internal GHC.Event.Arr GHC.Event.Array
305+ GHC.Event.Internal GHC.Event.Internal.Types GHC.Event.IntTable
306+ GHC.Event.IntVar GHC.Event.PSQ GHC.Event.Unique
307+ System.Environment.ExecutablePath System.CPUTime.Utils
308+ GHC.Event.Control GHC.Event.EPoll GHC.Event.KQueue
309+ GHC.Event.Manager GHC.Event.Poll GHC.Event.Thread
310+ GHC.Event.TimerManager System.CPUTime.Posix.ClockGetTime
311+ System.CPUTime.Posix.Times System.CPUTime.Posix.RUsage
312+ System.CPUTime.Unsupported
313+import-dirs:
314+library-dirs:
315+dynamic-library-dirs:
316+data-dir:
317+hs-libraries: HSbase-4.16.3.0
318+include-dirs:
319+includes: HsBase.h
320+depends: ghc-bignum-1.2 ghc-prim-0.8.0 rts
321+haddock-interfaces:
322+haddock-html:
323+---
324+name: binary
325+version: 0.8.9.0
326+visibility: public
327+id: binary-0.8.9.0
328+key: binary-0.8.9.0
329+license: BSD-3-Clause
330+maintainer: Lennart Kolmodin, Don Stewart <dons00@gmail.com>
331+author: Lennart Kolmodin <kolmodin@gmail.com>
332+stability: provisional
333+homepage: https://github.com/kolmodin/binary
334+synopsis:
335+ Binary serialisation for Haskell values using lazy ByteStrings
336+description:
337+ Efficient, pure binary serialisation using lazy ByteStrings.
338+ Haskell values may be encoded to and from binary formats,
339+ written to disk as binary, or sent over the network.
340+ The format used can be automatically generated, or
341+ you can choose to implement a custom format if needed.
342+ Serialisation speeds of over 1 G\/sec have been observed,
343+ so this library should be suitable for high performance
344+ scenarios.
345+category: Data, Parsing
346+exposed: True
347+exposed-modules:
348+ Data.Binary Data.Binary.Builder Data.Binary.Get
349+ Data.Binary.Get.Internal Data.Binary.Put
350+hidden-modules:
351+ Data.Binary.Class Data.Binary.Internal Data.Binary.Generic
352+ Data.Binary.FloatCast
353+import-dirs:
354+library-dirs:
355+dynamic-library-dirs:
356+data-dir:
357+hs-libraries: HSbinary-0.8.9.0
358+depends:
359+ array-0.5.4.0 base-4.16.3.0 bytestring-0.11.3.1 containers-0.6.5.1
360+haddock-interfaces:
361+haddock-html:
362+---
363+name: bytestring
364+version: 0.11.3.1
365+visibility: public
366+id: bytestring-0.11.3.1
367+key: bytestring-0.11.3.1
368+license: BSD-3-Clause
369+copyright:
370+ Copyright (c) Don Stewart 2005-2009,
371+ (c) Duncan Coutts 2006-2015,
372+ (c) David Roundy 2003-2005,
373+ (c) Jasper Van der Jeugt 2010,
374+ (c) Simon Meier 2010-2013.
375+maintainer:
376+ Haskell Bytestring Team <andrew.lelechenko@gmail.com>, Core Libraries Committee
377+author:
378+ Don Stewart,
379+ Duncan Coutts
380+homepage: https://github.com/haskell/bytestring
381+synopsis:
382+ Fast, compact, strict and lazy byte strings with a list interface
383+description:
384+ An efficient compact, immutable byte string type (both strict and lazy)
385+ suitable for binary or 8-bit character data.
386+ The 'ByteString' type represents sequences of bytes or 8-bit characters.
387+ It is suitable for high performance use, both in terms of large data
388+ quantities, or high speed requirements. The 'ByteString' functions follow
389+ the same style as Haskell\'s ordinary lists, so it is easy to convert code
390+ from using 'String' to 'ByteString'.
391+ Two 'ByteString' variants are provided:
392+ * Strict 'ByteString's keep the string as a single large array. This
393+ makes them convenient for passing data between C and Haskell.
394+ * Lazy 'ByteString's use a lazy list of strict chunks which makes it
395+ suitable for I\/O streaming tasks.
396+ The @Char8@ modules provide a character-based view of the same
397+ underlying 'ByteString' types. This makes it convenient to handle mixed
398+ binary and 8-bit character content (which is common in many file formats
399+ and network protocols).
400+ The 'Builder' module provides an efficient way to build up 'ByteString's
401+ in an ad-hoc way by repeated concatenation. This is ideal for fast
402+ serialisation or pretty printing.
403+ There is also a 'ShortByteString' type which has a lower memory overhead
404+ and can be converted to or from a 'ByteString'. It is suitable for keeping
405+ many short strings in memory.
406+ 'ByteString's are not designed for Unicode. For Unicode strings you should
407+ use the 'Text' type from the @text@ package.
408+ These modules are intended to be imported qualified, to avoid name clashes
409+ with "Prelude" functions, e.g.
410+ > import qualified Data.ByteString as BS
411+category: Data
412+exposed: True
413+exposed-modules:
414+ Data.ByteString Data.ByteString.Builder
415+ Data.ByteString.Builder.Extra Data.ByteString.Builder.Internal
416+ Data.ByteString.Builder.Prim Data.ByteString.Builder.Prim.Internal
417+ Data.ByteString.Builder.RealFloat Data.ByteString.Char8
418+ Data.ByteString.Internal Data.ByteString.Lazy
419+ Data.ByteString.Lazy.Char8 Data.ByteString.Lazy.Internal
420+ Data.ByteString.Short Data.ByteString.Short.Internal
421+ Data.ByteString.Unsafe
422+hidden-modules:
423+ Data.ByteString.Builder.ASCII Data.ByteString.Builder.Prim.ASCII
424+ Data.ByteString.Builder.Prim.Binary
425+ Data.ByteString.Builder.Prim.Internal.Base16
426+ Data.ByteString.Builder.Prim.Internal.Floating
427+ Data.ByteString.Builder.RealFloat.F2S
428+ Data.ByteString.Builder.RealFloat.D2S
429+ Data.ByteString.Builder.RealFloat.Internal
430+ Data.ByteString.Builder.RealFloat.TableGenerator
431+ Data.ByteString.Lazy.Internal.Deque
432+import-dirs:
433+library-dirs:
434+dynamic-library-dirs:
435+data-dir:
436+hs-libraries: HSbytestring-0.11.3.1
437+include-dirs:
438+includes: fpstring.h
439+depends:
440+ base-4.16.3.0 deepseq-1.4.6.1 ghc-prim-0.8.0
441+ template-haskell-2.18.0.0
442+haddock-interfaces:
443+haddock-html:
444+---
445+name: containers
446+version: 0.6.5.1
447+visibility: public
448+id: containers-0.6.5.1
449+key: containers-0.6.5.1
450+license: BSD-3-Clause
451+maintainer: libraries@haskell.org
452+synopsis: Assorted concrete container types
453+description:
454+ This package contains efficient general-purpose implementations
455+ of various immutable container types including sets, maps, sequences,
456+ trees, and graphs.
457+ For a walkthrough of what this package provides with examples of common
458+ operations see the [containers
459+ introduction](https://haskell-containers.readthedocs.io).
460+ The declared cost of each operation is either worst-case or amortized, but
461+ remains valid even if structures are shared.
462+category: Data Structures
463+exposed: True
464+exposed-modules:
465+ Data.Containers.ListUtils Data.Graph Data.IntMap
466+ Data.IntMap.Internal Data.IntMap.Internal.Debug Data.IntMap.Lazy
467+ Data.IntMap.Merge.Lazy Data.IntMap.Merge.Strict Data.IntMap.Strict
468+ Data.IntMap.Strict.Internal Data.IntSet Data.IntSet.Internal
469+ Data.Map Data.Map.Internal Data.Map.Internal.Debug Data.Map.Lazy
470+ Data.Map.Merge.Lazy Data.Map.Merge.Strict Data.Map.Strict
471+ Data.Map.Strict.Internal Data.Sequence Data.Sequence.Internal
472+ Data.Sequence.Internal.Sorting Data.Set Data.Set.Internal Data.Tree
473+ Utils.Containers.Internal.BitQueue
474+ Utils.Containers.Internal.BitUtil
475+ Utils.Containers.Internal.StrictPair
476+hidden-modules:
477+ Utils.Containers.Internal.State
478+ Utils.Containers.Internal.StrictMaybe
479+ Utils.Containers.Internal.PtrEquality
480+ Utils.Containers.Internal.Coercions
481+ Utils.Containers.Internal.TypeError
482+ Data.Map.Internal.DeprecatedShowTree
483+ Data.IntMap.Internal.DeprecatedDebug
484+import-dirs:
485+library-dirs:
486+dynamic-library-dirs:
487+data-dir:
488+hs-libraries: HScontainers-0.6.5.1
489+depends: array-0.5.4.0 base-4.16.3.0 deepseq-1.4.6.1
490+haddock-interfaces:
491+haddock-html:
492+---
493+name: deepseq
494+version: 1.4.6.1
495+visibility: public
496+id: deepseq-1.4.6.1
497+key: deepseq-1.4.6.1
498+license: BSD-3-Clause
499+maintainer: libraries@haskell.org
500+synopsis: Deep evaluation of data structures
501+description:
502+ This package provides methods for fully evaluating data structures
503+ (\"deep evaluation\"). Deep evaluation is often used for adding
504+ strictness to a program, e.g. in order to force pending exceptions,
505+ remove space leaks, or force lazy I/O to happen. It is also useful
506+ in parallel programs, to ensure pending work does not migrate to the
507+ wrong thread.
508+ The primary use of this package is via the 'deepseq' function, a
509+ \"deep\" version of 'seq'. It is implemented on top of an 'NFData'
510+ typeclass (\"Normal Form Data\", data structures with no unevaluated
511+ components) which defines strategies for fully evaluating different
512+ data types. See module documentation in "Control.DeepSeq" for more
513+ details.
514+category: Control
515+exposed: True
516+exposed-modules: Control.DeepSeq
517+hidden-modules: Control.DeepSeq.BackDoor
518+import-dirs:
519+library-dirs:
520+dynamic-library-dirs:
521+data-dir:
522+hs-libraries: HSdeepseq-1.4.6.1
523+depends: array-0.5.4.0 base-4.16.3.0
524+haddock-interfaces:
525+haddock-html:
526+---
527+name: directory
528+version: 1.3.6.2
529+visibility: public
530+id: directory-1.3.6.2
531+key: directory-1.3.6.2
532+license: BSD-3-Clause
533+maintainer: libraries@haskell.org
534+synopsis: Platform-agnostic library for filesystem operations
535+description:
536+ This library provides a basic set of operations for manipulating files and
537+ directories in a portable way.
538+category: System
539+exposed: True
540+exposed-modules:
541+ System.Directory System.Directory.Internal
542+ System.Directory.Internal.Prelude
543+hidden-modules:
544+ System.Directory.Internal.C_utimensat
545+ System.Directory.Internal.Common System.Directory.Internal.Config
546+ System.Directory.Internal.Posix System.Directory.Internal.Windows
547+import-dirs:
548+library-dirs:
549+dynamic-library-dirs:
550+data-dir:
551+hs-libraries: HSdirectory-1.3.6.2
552+depends:
553+ base-4.16.3.0 filepath-1.4.2.2 time-1.11.1.1 unix-2.7.2.2
554+haddock-interfaces:
555+haddock-html:
556+---
557+name: exceptions
558+version: 0.10.4
559+visibility: public
560+id: exceptions-0.10.4
561+key: exceptions-0.10.4
562+license: BSD-3-Clause
563+copyright:
564+ Copyright (C) 2013-2015 Edward A. Kmett
565+ Copyright (C) 2012 Google Inc.
566+maintainer: Edward A. Kmett <ekmett@gmail.com>
567+author: Edward A. Kmett
568+stability: provisional
569+homepage: http://github.com/ekmett/exceptions/
570+synopsis: Extensible optionally-pure exceptions
571+description: Extensible optionally-pure exceptions.
572+category: Control, Exceptions, Monad
573+exposed: True
574+exposed-modules: Control.Monad.Catch Control.Monad.Catch.Pure
575+import-dirs:
576+library-dirs:
577+dynamic-library-dirs:
578+data-dir:
579+hs-libraries: HSexceptions-0.10.4
580+depends:
581+ base-4.16.3.0 mtl-2.2.2 stm-2.5.0.2 template-haskell-2.18.0.0
582+ transformers-0.5.6.2
583+haddock-interfaces:
584+haddock-html:
585+---
586+name: filepath
587+version: 1.4.2.2
588+visibility: public
589+id: filepath-1.4.2.2
590+key: filepath-1.4.2.2
591+license: BSD-3-Clause
592+copyright: Neil Mitchell 2005-2020
593+maintainer: Julian Ospald <hasufell@posteo.de>
594+author: Neil Mitchell <ndmitchell@gmail.com>
595+homepage: https://github.com/haskell/filepath#readme
596+synopsis: Library for manipulating FilePaths in a cross platform way.
597+description:
598+ 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:
599+ * "System.FilePath.Posix" manipulates POSIX\/Linux style @FilePath@ values (with @\/@ as the path separator).
600+ * "System.FilePath.Windows" manipulates Windows style @FilePath@ values (with either @\\@ or @\/@ as the path separator, and deals with drives).
601+ * "System.FilePath" is an alias for the module appropriate to your platform.
602+ All three modules provide the same API, and the same documentation (calling out differences in the different variants).
603+category: System
604+exposed: True
605+exposed-modules:
606+ System.FilePath System.FilePath.Posix System.FilePath.Windows
607+import-dirs:
608+library-dirs:
609+dynamic-library-dirs:
610+data-dir:
611+hs-libraries: HSfilepath-1.4.2.2
612+depends: base-4.16.3.0
613+haddock-interfaces:
614+haddock-html:
615+---
616+name: ghc-bignum
617+version: 1.2
618+visibility: public
619+id: ghc-bignum-1.2
620+key: ghc-bignum-1.2
621+license: BSD-3-Clause
622+maintainer: libraries@haskell.org
623+author: Sylvain Henry
624+synopsis: GHC BigNum library
625+description:
626+ This package provides the low-level implementation of the standard
627+ 'BigNat', 'Natural' and 'Integer' types.
628+category: Numeric, Algebra, GHC
629+exposed: True
630+exposed-modules:
631+ GHC.Num.Backend GHC.Num.Backend.Native GHC.Num.Backend.Selected
632+ GHC.Num.BigNat GHC.Num.Integer GHC.Num.Natural GHC.Num.Primitives
633+ GHC.Num.WordArray
634+import-dirs:
635+library-dirs:
636+dynamic-library-dirs:
637+data-dir:
638+hs-libraries: HSghc-bignum-1.2
639+depends: ghc-prim-0.8.0
640+haddock-interfaces:
641+haddock-html:
642+---
643+name: ghc-boot
644+version: 9.2.4
645+visibility: public
646+id: ghc-boot-9.2.4
647+key: ghc-boot-9.2.4
648+license: BSD-3-Clause
649+maintainer: ghc-devs@haskell.org
650+synopsis: Shared functionality between GHC and its boot libraries
651+description:
652+ This library is shared between GHC, ghc-pkg, and other boot
653+ libraries.
654+ .
655+ A note about "GHC.Unit.Database": it only deals with the subset of
656+ the package database that the compiler cares about: modules
657+ paths etc and not package metadata like description, authors
658+ etc. It is thus not a library interface to ghc-pkg and is *not*
659+ suitable for modifying GHC package databases.
660+ .
661+ The package database format and this library are constructed in
662+ such a way that while ghc-pkg depends on Cabal, the GHC library
663+ and program do not have to depend on Cabal.
664+category: GHC
665+exposed: True
666+exposed-modules:
667+ GHC.BaseDir, GHC.Data.ShortText, GHC.Data.SizedSeq,
668+ GHC.ForeignSrcLang,
669+ GHC.ForeignSrcLang.Type from ghc-boot-th-9.2.4:GHC.ForeignSrcLang.Type,
670+ GHC.HandleEncoding, GHC.LanguageExtensions,
671+ GHC.LanguageExtensions.Type from ghc-boot-th-9.2.4:GHC.LanguageExtensions.Type,
672+ GHC.Lexeme from ghc-boot-th-9.2.4:GHC.Lexeme, GHC.Platform.ArchOS,
673+ GHC.Platform.Host, GHC.Serialized, GHC.Settings.Utils,
674+ GHC.UniqueSubdir, GHC.Unit.Database, GHC.Utils.Encoding,
675+ GHC.Version
676+import-dirs:
677+library-dirs:
678+dynamic-library-dirs:
679+data-dir:
680+hs-libraries: HSghc-boot-9.2.4
681+depends:
682+ base-4.16.3.0 binary-0.8.9.0 bytestring-0.11.3.1 containers-0.6.5.1
683+ deepseq-1.4.6.1 directory-1.3.6.2 filepath-1.4.2.2
684+ ghc-boot-th-9.2.4 unix-2.7.2.2
685+haddock-interfaces:
686+haddock-html:
687+---
688+name: ghc-boot-th
689+version: 9.2.4
690+visibility: public
691+id: ghc-boot-th-9.2.4
692+key: ghc-boot-th-9.2.4
693+license: BSD-3-Clause
694+maintainer: ghc-devs@haskell.org
695+synopsis:
696+ Shared functionality between GHC and the @template-haskell@
697+ library
698+description:
699+ This library contains various bits shared between the @ghc@ and
700+ @template-haskell@ libraries.
701+ This package exists to ensure that @template-haskell@ has a
702+ minimal set of transitive dependencies, since it is intended to
703+ be depended upon by user code.
704+category: GHC
705+exposed: True
706+exposed-modules:
707+ GHC.ForeignSrcLang.Type GHC.LanguageExtensions.Type GHC.Lexeme
708+import-dirs:
709+library-dirs:
710+dynamic-library-dirs:
711+data-dir:
712+hs-libraries: HSghc-boot-th-9.2.4
713+depends: base-4.16.3.0
714+haddock-interfaces:
715+haddock-html:
716+---
717+name: ghc-compact
718+version: 0.1.0.0
719+visibility: public
720+id: ghc-compact-0.1.0.0
721+key: ghc-compact-0.1.0.0
722+license: BSD-3-Clause
723+maintainer: libraries@haskell.org
724+synopsis: In memory storage of deeply evaluated data structure
725+description:
726+ This package provides minimal functionality for working with
727+ "compact regions", which hold a fully evaluated Haskell object graph.
728+ These regions maintain the invariant that no pointers live inside the struct
729+ that point outside it, which ensures efficient garbage collection without
730+ ever reading the structure contents (effectively, it works as a manually
731+ managed "oldest generation" which is never freed until the whole is
732+ released).
733+ Internally, the struct is stored a single contiguous block of memory,
734+ which allows efficient serialization and deserialization of structs
735+ for distributed computing.
736+ This package provides a low-level API; see also the </package/compact
737+ compact package> which provides a user-facing API.
738+category: Data
739+exposed: True
740+exposed-modules: GHC.Compact GHC.Compact.Serialized
741+import-dirs:
742+library-dirs:
743+dynamic-library-dirs:
744+data-dir:
745+hs-libraries: HSghc-compact-0.1.0.0
746+depends: base-4.16.3.0 bytestring-0.11.3.1 ghc-prim-0.8.0
747+haddock-interfaces:
748+haddock-html:
749+---
750+name: ghc-heap
751+version: 9.2.4
752+visibility: public
753+id: ghc-heap-9.2.4
754+key: ghc-heap-9.2.4
755+license: BSD-3-Clause
756+maintainer: libraries@haskell.org
757+synopsis: Functions for walking GHC's heap
758+description:
759+ This package provides functions for walking the GHC heap data structures
760+ and retrieving information about those data structures.
761+category: GHC
762+exposed: True
763+exposed-modules:
764+ GHC.Exts.Heap GHC.Exts.Heap.ClosureTypes GHC.Exts.Heap.Closures
765+ GHC.Exts.Heap.Constants GHC.Exts.Heap.FFIClosures
766+ GHC.Exts.Heap.FFIClosures_ProfilingDisabled
767+ GHC.Exts.Heap.FFIClosures_ProfilingEnabled GHC.Exts.Heap.InfoTable
768+ GHC.Exts.Heap.InfoTable.Types GHC.Exts.Heap.InfoTableProf
769+ GHC.Exts.Heap.ProfInfo.PeekProfInfo
770+ GHC.Exts.Heap.ProfInfo.PeekProfInfo_ProfilingDisabled
771+ GHC.Exts.Heap.ProfInfo.PeekProfInfo_ProfilingEnabled
772+ GHC.Exts.Heap.ProfInfo.Types GHC.Exts.Heap.Utils
773+import-dirs:
774+library-dirs:
775+dynamic-library-dirs:
776+data-dir:
777+hs-libraries: HSghc-heap-9.2.4
778+depends: base-4.16.3.0 containers-0.6.5.1 ghc-prim-0.8.0 rts
779+haddock-interfaces:
780+haddock-html:
781+---
782+name: ghc-prim
783+version: 0.8.0
784+visibility: public
785+id: ghc-prim-0.8.0
786+key: ghc-prim-0.8.0
787+license: BSD-3-Clause
788+maintainer: libraries@haskell.org
789+synopsis: GHC primitives
790+description:
791+ This package contains the primitive types and operations supplied by GHC.
792+category: GHC
793+exposed: True
794+exposed-modules:
795+ GHC.CString GHC.Classes GHC.Debug GHC.Magic GHC.Prim.Exception
796+ GHC.Prim.Ext GHC.Prim.Panic GHC.PrimopWrappers GHC.Tuple GHC.Types
797+ GHC.Prim
798+import-dirs:
799+library-dirs:
800+dynamic-library-dirs:
801+data-dir:
802+hs-libraries: HSghc-prim-0.8.0
803+extra-libraries: gcc c m
804+depends: rts
805+haddock-interfaces:
806+haddock-html:
807+---
808+name: ghci
809+version: 9.2.4
810+visibility: public
811+id: ghci-9.2.4
812+key: ghci-9.2.4
813+license: BSD-3-Clause
814+maintainer: ghc-devs@haskell.org
815+synopsis: The library supporting GHC's interactive interpreter
816+description:
817+ This library offers interfaces which mediate interactions between the
818+ @ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter
819+ backend.
820+category: GHC
821+exposed: True
822+exposed-modules:
823+ GHCi.BinaryArray GHCi.BreakArray GHCi.CreateBCO GHCi.FFI
824+ GHCi.InfoTable GHCi.Message GHCi.ObjLink GHCi.RemoteTypes
825+ GHCi.ResolvedBCO GHCi.Run GHCi.Signals GHCi.StaticPtrTable GHCi.TH
826+ GHCi.TH.Binary
827+import-dirs:
828+library-dirs:
829+dynamic-library-dirs:
830+data-dir:
831+hs-libraries: HSghci-9.2.4
832+depends:
833+ array-0.5.4.0 base-4.16.3.0 binary-0.8.9.0 bytestring-0.11.3.1
834+ containers-0.6.5.1 deepseq-1.4.6.1 filepath-1.4.2.2 ghc-boot-9.2.4
835+ ghc-heap-9.2.4 ghc-prim-0.8.0 rts template-haskell-2.18.0.0
836+ transformers-0.5.6.2 unix-2.7.2.2
837+haddock-interfaces:
838+haddock-html:
839+---
840+name: haskeline
841+version: 0.8.2
842+visibility: public
843+id: haskeline-0.8.2
844+key: haskeline-0.8.2
845+license: BSD-3-Clause
846+copyright: (c) Judah Jacobson
847+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
848+author: Judah Jacobson
849+stability: Stable
850+homepage: https://github.com/judah/haskeline
851+synopsis:
852+ A command-line interface for user input, written in Haskell.
853+description:
854+ Haskeline provides a user interface for line input in command-line
855+ programs. This library is similar in purpose to readline, but since
856+ it is written in Haskell it is (hopefully) more easily used in other
857+ Haskell programs.
858+ Haskeline runs both on POSIX-compatible systems and on Windows.
859+category: User Interfaces
860+exposed: True
861+exposed-modules:
862+ System.Console.Haskeline System.Console.Haskeline.Completion
863+ System.Console.Haskeline.History System.Console.Haskeline.IO
864+ System.Console.Haskeline.Internal
865+hidden-modules:
866+ System.Console.Haskeline.Backend
867+ System.Console.Haskeline.Backend.WCWidth
868+ System.Console.Haskeline.Command
869+ System.Console.Haskeline.Command.Completion
870+ System.Console.Haskeline.Command.History
871+ System.Console.Haskeline.Command.KillRing
872+ System.Console.Haskeline.Directory System.Console.Haskeline.Emacs
873+ System.Console.Haskeline.InputT System.Console.Haskeline.Key
874+ System.Console.Haskeline.LineState System.Console.Haskeline.Monads
875+ System.Console.Haskeline.Prefs System.Console.Haskeline.Recover
876+ System.Console.Haskeline.RunCommand System.Console.Haskeline.Term
877+ System.Console.Haskeline.Command.Undo System.Console.Haskeline.Vi
878+ System.Console.Haskeline.Backend.Posix
879+ System.Console.Haskeline.Backend.Posix.Encoder
880+ System.Console.Haskeline.Backend.DumbTerm
881+import-dirs:
882+library-dirs:
883+dynamic-library-dirs:
884+data-dir:
885+hs-libraries: HShaskeline-0.8.2
886+depends:
887+ base-4.16.3.0 bytestring-0.11.3.1 containers-0.6.5.1
888+ directory-1.3.6.2 exceptions-0.10.4 filepath-1.4.2.2
889+ process-1.6.13.2 stm-2.5.0.2 transformers-0.5.6.2 unix-2.7.2.2
890+haddock-interfaces:
891+haddock-html:
892+---
893+name: hpc
894+version: 0.6.1.0
895+visibility: public
896+id: hpc-0.6.1.0
897+key: hpc-0.6.1.0
898+license: BSD-3-Clause
899+maintainer: ghc-devs@haskell.org
900+author: Andy Gill
901+synopsis: Code Coverage Library for Haskell
902+description:
903+ This package provides the code coverage library for Haskell.
904+ See <http://www.haskell.org/haskellwiki/Haskell_program_coverage> for more
905+ information.
906+category: Control
907+exposed: True
908+exposed-modules:
909+ Trace.Hpc.Mix Trace.Hpc.Reflect Trace.Hpc.Tix Trace.Hpc.Util
910+import-dirs:
911+library-dirs:
912+dynamic-library-dirs:
913+data-dir:
914+hs-libraries: HShpc-0.6.1.0
915+depends:
916+ base-4.16.3.0 containers-0.6.5.1 deepseq-1.4.6.1 directory-1.3.6.2
917+ filepath-1.4.2.2 time-1.11.1.1
918+haddock-interfaces:
919+haddock-html:
920+---
921+name: integer-gmp
922+version: 1.1
923+visibility: public
924+id: integer-gmp-1.1
925+key: integer-gmp-1.1
926+license: BSD-3-Clause
927+maintainer: hvr@gnu.org
928+author: Herbert Valerio Riedel
929+synopsis: Integer library based on GMP
930+description:
931+ This package used to provide an implementation of the standard 'Integer'
932+ type based on the
933+ <http://gmplib.org/ GNU Multiple Precision Arithmetic Library (GMP)>.
934+ It is now deprecated in favor of the 'ghc-bignum' package.
935+ Its purpose is to provide backward compatibility for codes directly
936+ depending on the `integer-gmp` package.
937+category: Numeric, Algebra
938+exposed: True
939+exposed-modules: GHC.Integer.GMP.Internals
940+import-dirs:
941+library-dirs:
942+dynamic-library-dirs:
943+data-dir:
944+hs-libraries: HSinteger-gmp-1.1
945+depends: base-4.16.3.0 ghc-bignum-1.2 ghc-prim-0.8.0
946+haddock-interfaces:
947+haddock-html:
948+---
949+name: libiserv
950+version: 9.2.4
951+visibility: public
952+id: libiserv-9.2.4
953+key: libiserv-9.2.4
954+license: BSD-3-Clause
955+copyright: XXX
956+maintainer: XXX
957+author: XXX
958+synopsis:
959+ Provides shared functionality between iserv and iserv-proxy.
960+description:
961+ Provides shared functionality between iserv and iserv-proxy.
962+category: Development
963+exposed: True
964+exposed-modules: GHCi.Utils Lib
965+import-dirs:
966+library-dirs:
967+dynamic-library-dirs:
968+data-dir:
969+hs-libraries: HSlibiserv-9.2.4
970+depends:
971+ base-4.16.3.0 binary-0.8.9.0 bytestring-0.11.3.1 containers-0.6.5.1
972+ deepseq-1.4.6.1 ghci-9.2.4 unix-2.7.2.2
973+haddock-interfaces:
974+haddock-html:
975+---
976+name: mtl
977+version: 2.2.2
978+visibility: public
979+id: mtl-2.2.2
980+key: mtl-2.2.2
981+license: BSD-3-Clause
982+maintainer: Edward Kmett <ekmett@gmail.com>
983+author: Andy Gill
984+homepage: http://github.com/haskell/mtl
985+synopsis: Monad classes, using functional dependencies
986+description:
987+ Monad classes using functional dependencies, with instances
988+ for various monad transformers, inspired by the paper
989+ /Functional Programming with Overloading and Higher-Order Polymorphism/,
990+ by Mark P Jones, in /Advanced School of Functional Programming/, 1995
991+ (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
992+category: Control
993+exposed: True
994+exposed-modules:
995+ Control.Monad.Cont Control.Monad.Cont.Class Control.Monad.Error
996+ Control.Monad.Error.Class Control.Monad.Except
997+ Control.Monad.Identity Control.Monad.List Control.Monad.RWS
998+ Control.Monad.RWS.Class Control.Monad.RWS.Lazy
999+ Control.Monad.RWS.Strict Control.Monad.Reader
1000+ Control.Monad.Reader.Class Control.Monad.State
1001+ Control.Monad.State.Class Control.Monad.State.Lazy
1002+ Control.Monad.State.Strict Control.Monad.Trans Control.Monad.Writer
1003+ Control.Monad.Writer.Class Control.Monad.Writer.Lazy
1004+ Control.Monad.Writer.Strict
1005+import-dirs:
1006+library-dirs:
1007+dynamic-library-dirs:
1008+data-dir:
1009+hs-libraries: HSmtl-2.2.2
1010+depends: base-4.16.3.0 transformers-0.5.6.2
1011+haddock-interfaces:
1012+haddock-html:
1013+---
1014+name: parsec
1015+version: 3.1.15.0
1016+visibility: public
1017+id: parsec-3.1.15.0
1018+key: parsec-3.1.15.0
1019+license: BSD-2-Clause
1020+maintainer:
1021+ Oleg Grenrus <oleg.grenrus@iki.fi>, Herbert Valerio Riedel <hvr@gnu.org>
1022+author:
1023+ Daan Leijen <daan@microsoft.com>, Paolo Martini <paolo@nemail.it>, Antoine Latter <aslatter@gmail.com>
1024+homepage: https://github.com/haskell/parsec
1025+synopsis: Monadic parser combinators
1026+description:
1027+ Parsec is designed from scratch as an industrial-strength parser
1028+ library. It is simple, safe, well documented (on the package
1029+ homepage), has extensive libraries, good error messages,
1030+ and is fast. It is defined as a monad transformer that can be
1031+ stacked on arbitrary monads, and it is also parametric in the
1032+ input stream type.
1033+ The main entry point is the "Text.Parsec" module which provides
1034+ defaults for parsing 'Char'acter data.
1035+ The "Text.ParserCombinators.Parsec" module hierarchy contains
1036+ the legacy @parsec-2@ API and may be removed at some point in
1037+ the future.
1038+category: Parsing
1039+exposed: True
1040+exposed-modules:
1041+ Text.Parsec Text.Parsec.ByteString Text.Parsec.ByteString.Lazy
1042+ Text.Parsec.Char Text.Parsec.Combinator Text.Parsec.Error
1043+ Text.Parsec.Expr Text.Parsec.Language Text.Parsec.Perm
1044+ Text.Parsec.Pos Text.Parsec.Prim Text.Parsec.String
1045+ Text.Parsec.Text Text.Parsec.Text.Lazy Text.Parsec.Token
1046+ Text.ParserCombinators.Parsec Text.ParserCombinators.Parsec.Char
1047+ Text.ParserCombinators.Parsec.Combinator
1048+ Text.ParserCombinators.Parsec.Error
1049+ Text.ParserCombinators.Parsec.Expr
1050+ Text.ParserCombinators.Parsec.Language
1051+ Text.ParserCombinators.Parsec.Perm
1052+ Text.ParserCombinators.Parsec.Pos
1053+ Text.ParserCombinators.Parsec.Prim
1054+ Text.ParserCombinators.Parsec.Token
1055+import-dirs:
1056+library-dirs:
1057+dynamic-library-dirs:
1058+data-dir:
1059+hs-libraries: HSparsec-3.1.15.0
1060+depends:
1061+ base-4.16.3.0 bytestring-0.11.3.1 mtl-2.2.2 text-1.2.5.0
1062+haddock-interfaces:
1063+haddock-html:
1064+---
1065+name: pretty
1066+version: 1.1.3.6
1067+visibility: public
1068+id: pretty-1.1.3.6
1069+key: pretty-1.1.3.6
1070+license: BSD-3-Clause
1071+maintainer: David Terei <code@davidterei.com>
1072+stability: Stable
1073+homepage: http://github.com/haskell/pretty
1074+synopsis: Pretty-printing library
1075+description:
1076+ This package contains a pretty-printing library, a set of API's
1077+ that provides a way to easily print out text in a consistent
1078+ format of your choosing. This is useful for compilers and related
1079+ tools.
1080+ This library was originally designed by John Hughes's and has since
1081+ been heavily modified by Simon Peyton Jones.
1082+category: Text
1083+exposed: True
1084+exposed-modules:
1085+ Text.PrettyPrint Text.PrettyPrint.Annotated
1086+ Text.PrettyPrint.Annotated.HughesPJ
1087+ Text.PrettyPrint.Annotated.HughesPJClass Text.PrettyPrint.HughesPJ
1088+ Text.PrettyPrint.HughesPJClass
1089+import-dirs:
1090+library-dirs:
1091+dynamic-library-dirs:
1092+data-dir:
1093+hs-libraries: HSpretty-1.1.3.6
1094+depends: base-4.16.3.0 deepseq-1.4.6.1 ghc-prim-0.8.0
1095+haddock-interfaces:
1096+haddock-html:
1097+---
1098+name: process
1099+version: 1.6.13.2
1100+visibility: public
1101+id: process-1.6.13.2
1102+key: process-1.6.13.2
1103+license: BSD-3-Clause
1104+maintainer: libraries@haskell.org
1105+synopsis: Process libraries
1106+description:
1107+ This package contains libraries for dealing with system processes.
1108+ The typed-process package is a more recent take on a process API,
1109+ which uses this package internally. It features better binary
1110+ support, easier concurrency, and a more composable API. You can
1111+ read more about it at
1112+ <https://github.com/fpco/typed-process/#readme>.
1113+category: System
1114+exposed: True
1115+exposed-modules: System.Cmd System.Process System.Process.Internals
1116+hidden-modules: System.Process.Common System.Process.Posix
1117+import-dirs:
1118+library-dirs:
1119+dynamic-library-dirs:
1120+data-dir:
1121+hs-libraries: HSprocess-1.6.13.2
1122+include-dirs:
1123+includes: runProcess.h
1124+depends:
1125+ base-4.16.3.0 deepseq-1.4.6.1 directory-1.3.6.2 filepath-1.4.2.2
1126+ unix-2.7.2.2
1127+haddock-interfaces:
1128+haddock-html:
1129+---
1130+name: stm
1131+version: 2.5.0.2
1132+visibility: public
1133+id: stm-2.5.0.2
1134+key: stm-2.5.0.2
1135+license: BSD-3-Clause
1136+maintainer: libraries@haskell.org
1137+homepage: https://wiki.haskell.org/Software_transactional_memory
1138+synopsis: Software Transactional Memory
1139+description:
1140+ Software Transactional Memory, or STM, is an abstraction for
1141+ concurrent communication. The main benefits of STM are
1142+ /composability/ and /modularity/. That is, using STM you can write
1143+ concurrent abstractions that can be easily composed with any other
1144+ abstraction built using STM, without exposing the details of how
1145+ your abstraction ensures safety. This is typically not the case
1146+ with other forms of concurrent communication, such as locks or
1147+ 'MVar's.
1148+category: Concurrency
1149+exposed: True
1150+exposed-modules:
1151+ Control.Concurrent.STM Control.Concurrent.STM.TArray
1152+ Control.Concurrent.STM.TBQueue Control.Concurrent.STM.TChan
1153+ Control.Concurrent.STM.TMVar Control.Concurrent.STM.TQueue
1154+ Control.Concurrent.STM.TSem Control.Concurrent.STM.TVar
1155+ Control.Monad.STM
1156+hidden-modules: Control.Sequential.STM
1157+import-dirs:
1158+library-dirs:
1159+dynamic-library-dirs:
1160+data-dir:
1161+hs-libraries: HSstm-2.5.0.2
1162+depends: array-0.5.4.0 base-4.16.3.0
1163+haddock-interfaces:
1164+haddock-html:
1165+---
1166+name: template-haskell
1167+version: 2.18.0.0
1168+visibility: public
1169+id: template-haskell-2.18.0.0
1170+key: template-haskell-2.18.0.0
1171+license: BSD-3-Clause
1172+maintainer: libraries@haskell.org
1173+synopsis: Support library for Template Haskell
1174+description:
1175+ This package provides modules containing facilities for manipulating
1176+ Haskell source code using Template Haskell.
1177+ See <http://www.haskell.org/haskellwiki/Template_Haskell> for more
1178+ information.
1179+category: Template Haskell
1180+exposed: True
1181+exposed-modules:
1182+ Language.Haskell.TH Language.Haskell.TH.CodeDo
1183+ Language.Haskell.TH.LanguageExtensions Language.Haskell.TH.Lib
1184+ Language.Haskell.TH.Lib.Internal Language.Haskell.TH.Ppr
1185+ Language.Haskell.TH.PprLib Language.Haskell.TH.Quote
1186+ Language.Haskell.TH.Syntax
1187+hidden-modules: Language.Haskell.TH.Lib.Map
1188+import-dirs:
1189+library-dirs:
1190+dynamic-library-dirs:
1191+data-dir:
1192+hs-libraries: HStemplate-haskell-2.18.0.0
1193+depends:
1194+ base-4.16.3.0 ghc-boot-th-9.2.4 ghc-prim-0.8.0 pretty-1.1.3.6
1195+haddock-interfaces:
1196+haddock-html:
1197+---
1198+name: text
1199+version: 1.2.5.0
1200+visibility: public
1201+id: text-1.2.5.0
1202+key: text-1.2.5.0
1203+license: BSD-2-Clause
1204+copyright: 2009-2011 Bryan O'Sullivan, 2008-2009 Tom Harper
1205+maintainer:
1206+ Haskell Text Team <andrew.lelechenko@gmail.com>, Core Libraries Committee
1207+author: Bryan O'Sullivan <bos@serpentine.com>
1208+homepage: https://github.com/haskell/text
1209+synopsis: An efficient packed Unicode text type.
1210+description:
1211+ An efficient packed, immutable Unicode text type (both strict and
1212+ lazy), with a powerful loop fusion optimization framework.
1213+ The 'Text' type represents Unicode character strings, in a time and
1214+ space-efficient manner. This package provides text processing
1215+ capabilities that are optimized for performance critical use, both
1216+ in terms of large data quantities and high speed.
1217+ The 'Text' type provides character-encoding, type-safe case
1218+ conversion via whole-string case conversion functions (see "Data.Text").
1219+ It also provides a range of functions for converting 'Text' values to
1220+ and from 'ByteStrings', using several standard encodings
1221+ (see "Data.Text.Encoding").
1222+ Efficient locale-sensitive support for text IO is also supported
1223+ (see "Data.Text.IO").
1224+ These modules are intended to be imported qualified, to avoid name
1225+ clashes with Prelude functions, e.g.
1226+ > import qualified Data.Text as T
1227+ == ICU Support
1228+ To use an extended and very rich family of functions for working
1229+ with Unicode text (including normalization, regular expressions,
1230+ non-standard encodings, text breaking, and locales), see
1231+ the [text-icu package](https://hackage.haskell.org/package/text-icu)
1232+ based on the well-respected and liberally
1233+ licensed [ICU library](http://site.icu-project.org/).
1234+ == Internal Representation: UTF-16 vs. UTF-8
1235+ Currently the @text@ library uses UTF-16 as its internal representation
1236+ which is [neither a fixed-width nor always the most dense representation](http://utf8everywhere.org/)
1237+ for Unicode text. We're currently investigating the feasibility
1238+ of [changing Text's internal representation to UTF-8](https://github.com/text-utf8)
1239+ and if you need such a 'Text' type right now you might be interested in using the spin-off
1240+ packages <https://hackage.haskell.org/package/text-utf8 text-utf8> and
1241+ <https://hackage.haskell.org/package/text-short text-short>.
1242+category: Data, Text
1243+exposed: True
1244+exposed-modules:
1245+ Data.Text Data.Text.Array Data.Text.Encoding
1246+ Data.Text.Encoding.Error Data.Text.Foreign Data.Text.IO
1247+ Data.Text.Internal Data.Text.Internal.Builder
1248+ Data.Text.Internal.Builder.Functions
1249+ Data.Text.Internal.Builder.Int.Digits
1250+ Data.Text.Internal.Builder.RealFloat.Functions
1251+ Data.Text.Internal.ByteStringCompat
1252+ Data.Text.Internal.Encoding.Fusion
1253+ Data.Text.Internal.Encoding.Fusion.Common
1254+ Data.Text.Internal.Encoding.Utf16 Data.Text.Internal.Encoding.Utf32
1255+ Data.Text.Internal.Encoding.Utf8 Data.Text.Internal.Functions
1256+ Data.Text.Internal.Fusion Data.Text.Internal.Fusion.CaseMapping
1257+ Data.Text.Internal.Fusion.Common Data.Text.Internal.Fusion.Size
1258+ Data.Text.Internal.Fusion.Types Data.Text.Internal.IO
1259+ Data.Text.Internal.Lazy Data.Text.Internal.Lazy.Encoding.Fusion
1260+ Data.Text.Internal.Lazy.Fusion Data.Text.Internal.Lazy.Search
1261+ Data.Text.Internal.PrimCompat Data.Text.Internal.Private
1262+ Data.Text.Internal.Read Data.Text.Internal.Search
1263+ Data.Text.Internal.Unsafe Data.Text.Internal.Unsafe.Char
1264+ Data.Text.Internal.Unsafe.Shift Data.Text.Lazy
1265+ Data.Text.Lazy.Builder Data.Text.Lazy.Builder.Int
1266+ Data.Text.Lazy.Builder.RealFloat Data.Text.Lazy.Encoding
1267+ Data.Text.Lazy.IO Data.Text.Lazy.Internal Data.Text.Lazy.Read
1268+ Data.Text.Read Data.Text.Unsafe
1269+hidden-modules: Data.Text.Show
1270+import-dirs:
1271+library-dirs:
1272+dynamic-library-dirs:
1273+data-dir:
1274+hs-libraries: HStext-1.2.5.0
1275+depends:
1276+ array-0.5.4.0 base-4.16.3.0 binary-0.8.9.0 bytestring-0.11.3.1
1277+ deepseq-1.4.6.1 ghc-prim-0.8.0 template-haskell-2.18.0.0
1278+haddock-interfaces:
1279+haddock-html:
1280+---
1281+name: time
1282+version: 1.11.1.1
1283+visibility: public
1284+id: time-1.11.1.1
1285+key: time-1.11.1.1
1286+license: BSD-3-Clause
1287+maintainer: <ashley@semantic.org>
1288+author: Ashley Yakeley
1289+stability: stable
1290+homepage: https://github.com/haskell/time
1291+synopsis: A time library
1292+description: Time, clocks and calendars
1293+category: Time
1294+exposed: True
1295+exposed-modules:
1296+ Data.Time Data.Time.Calendar Data.Time.Calendar.Easter
1297+ Data.Time.Calendar.Julian Data.Time.Calendar.Month
1298+ Data.Time.Calendar.MonthDay Data.Time.Calendar.OrdinalDate
1299+ Data.Time.Calendar.Quarter Data.Time.Calendar.WeekDate
1300+ Data.Time.Clock Data.Time.Clock.POSIX Data.Time.Clock.System
1301+ Data.Time.Clock.TAI Data.Time.Format Data.Time.Format.ISO8601
1302+ Data.Time.Format.Internal Data.Time.LocalTime
1303+hidden-modules:
1304+ Data.Format Data.Time.Calendar.Types Data.Time.Calendar.Private
1305+ Data.Time.Calendar.Days Data.Time.Calendar.Gregorian
1306+ Data.Time.Calendar.CalendarDiffDays Data.Time.Calendar.Week
1307+ Data.Time.Calendar.JulianYearDay Data.Time.Clock.Internal.DiffTime
1308+ Data.Time.Clock.Internal.AbsoluteTime
1309+ Data.Time.Clock.Internal.NominalDiffTime
1310+ Data.Time.Clock.Internal.POSIXTime
1311+ Data.Time.Clock.Internal.UniversalTime
1312+ Data.Time.Clock.Internal.SystemTime
1313+ Data.Time.Clock.Internal.UTCTime Data.Time.Clock.Internal.CTimeval
1314+ Data.Time.Clock.Internal.CTimespec Data.Time.Clock.Internal.UTCDiff
1315+ Data.Time.LocalTime.Internal.TimeZone
1316+ Data.Time.LocalTime.Internal.TimeOfDay
1317+ Data.Time.LocalTime.Internal.CalendarDiffTime
1318+ Data.Time.LocalTime.Internal.LocalTime
1319+ Data.Time.LocalTime.Internal.ZonedTime Data.Time.Format.Parse
1320+ Data.Time.Format.Locale Data.Time.Format.Format.Class
1321+ Data.Time.Format.Format.Instances Data.Time.Format.Parse.Class
1322+ Data.Time.Format.Parse.Instances
1323+import-dirs:
1324+library-dirs:
1325+dynamic-library-dirs:
1326+data-dir:
1327+hs-libraries: HStime-1.11.1.1
1328+include-dirs:
1329+depends: base-4.16.3.0 deepseq-1.4.6.1
1330+haddock-interfaces:
1331+haddock-html:
1332+---
1333+name: transformers
1334+version: 0.5.6.2
1335+visibility: public
1336+id: transformers-0.5.6.2
1337+key: transformers-0.5.6.2
1338+license: BSD-3-Clause
1339+maintainer: Ross Paterson <R.Paterson@city.ac.uk>
1340+author: Andy Gill, Ross Paterson
1341+synopsis: Concrete functor and monad transformers
1342+description:
1343+ A portable library of functor and monad transformers, inspired by
1344+ the paper
1345+ * \"Functional Programming with Overloading and Higher-Order
1346+ Polymorphism\", by Mark P Jones,
1347+ in /Advanced School of Functional Programming/, 1995
1348+ (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
1349+ This package contains:
1350+ * the monad transformer class (in "Control.Monad.Trans.Class")
1351+ * concrete functor and monad transformers, each with associated
1352+ operations and functions to lift operations associated with other
1353+ transformers.
1354+ The package can be used on its own in portable Haskell code, in
1355+ which case operations need to be manually lifted through transformer
1356+ stacks (see "Control.Monad.Trans.Class" for some examples).
1357+ Alternatively, it can be used with the non-portable monad classes in
1358+ the @mtl@ or @monads-tf@ packages, which automatically lift operations
1359+ introduced by monad transformers through other transformers.
1360+category: Control
1361+exposed: True
1362+exposed-modules:
1363+ Control.Applicative.Backwards Control.Applicative.Lift
1364+ Control.Monad.Signatures Control.Monad.Trans.Accum
1365+ Control.Monad.Trans.Class Control.Monad.Trans.Cont
1366+ Control.Monad.Trans.Error Control.Monad.Trans.Except
1367+ Control.Monad.Trans.Identity Control.Monad.Trans.List
1368+ Control.Monad.Trans.Maybe Control.Monad.Trans.RWS
1369+ Control.Monad.Trans.RWS.CPS Control.Monad.Trans.RWS.Lazy
1370+ Control.Monad.Trans.RWS.Strict Control.Monad.Trans.Reader
1371+ Control.Monad.Trans.Select Control.Monad.Trans.State
1372+ Control.Monad.Trans.State.Lazy Control.Monad.Trans.State.Strict
1373+ Control.Monad.Trans.Writer Control.Monad.Trans.Writer.CPS
1374+ Control.Monad.Trans.Writer.Lazy Control.Monad.Trans.Writer.Strict
1375+ Data.Functor.Constant Data.Functor.Reverse
1376+import-dirs:
1377+library-dirs:
1378+dynamic-library-dirs:
1379+data-dir:
1380+hs-libraries: HStransformers-0.5.6.2
1381+depends: base-4.16.3.0
1382+haddock-interfaces:
1383+haddock-html:
1384+---
1385+name: unix
1386+version: 2.7.2.2
1387+visibility: public
1388+id: unix-2.7.2.2
1389+key: unix-2.7.2.2
1390+license: BSD-3-Clause
1391+maintainer: libraries@haskell.org
1392+homepage: https://github.com/haskell/unix
1393+synopsis: POSIX functionality
1394+description:
1395+ This package gives you access to the set of operating system
1396+ services standardised by
1397+ <http://pubs.opengroup.org/onlinepubs/9699919799/ POSIX.1-2008>
1398+ (or the IEEE Portable Operating System Interface for Computing
1399+ Environments - IEEE Std. 1003.1).
1400+ The package is not supported under Windows.
1401+category: System
1402+exposed: True
1403+exposed-modules:
1404+ System.Posix System.Posix.ByteString
1405+ System.Posix.ByteString.FilePath System.Posix.Directory
1406+ System.Posix.Directory.ByteString System.Posix.DynamicLinker
1407+ System.Posix.DynamicLinker.ByteString
1408+ System.Posix.DynamicLinker.Module
1409+ System.Posix.DynamicLinker.Module.ByteString
1410+ System.Posix.DynamicLinker.Prim System.Posix.Env
1411+ System.Posix.Env.ByteString System.Posix.Error System.Posix.Fcntl
1412+ System.Posix.Files System.Posix.Files.ByteString System.Posix.IO
1413+ System.Posix.IO.ByteString System.Posix.Process
1414+ System.Posix.Process.ByteString System.Posix.Process.Internals
1415+ System.Posix.Resource System.Posix.Semaphore System.Posix.SharedMem
1416+ System.Posix.Signals System.Posix.Signals.Exts System.Posix.Temp
1417+ System.Posix.Temp.ByteString System.Posix.Terminal
1418+ System.Posix.Terminal.ByteString System.Posix.Time
1419+ System.Posix.Unistd System.Posix.User
1420+hidden-modules:
1421+ System.Posix.Directory.Common System.Posix.DynamicLinker.Common
1422+ System.Posix.Files.Common System.Posix.IO.Common
1423+ System.Posix.Process.Common System.Posix.Terminal.Common
1424+import-dirs:
1425+library-dirs:
1426+dynamic-library-dirs:
1427+data-dir:
1428+hs-libraries: HSunix-2.7.2.2
1429+include-dirs:
1430+includes: HsUnix.h execvpe.h
1431+depends: base-4.16.3.0 bytestring-0.11.3.1 time-1.11.1.1
1432+haddock-interfaces:
1433+haddock-html:
1434+---
1435+name: rts
1436+version: 1.0.2
1437+visibility: public
1438+id: rts
1439+key: rts
1440+license: BSD-3-Clause
1441+maintainer: glasgow-haskell-users@haskell.org
1442+exposed: True
1443+library-dirs:
1444+hs-libraries: HSrts
1445+extra-libraries: m rt dl ffi numa
1446+include-dirs:
1447+includes: Stg.h
1448+ld-options:
1449+ "-Wl,-u,base_GHCziTopHandler_runIO_closure"
1450+ "-Wl,-u,base_GHCziTopHandler_runNonIO_closure"
1451+ "-Wl,-u,ghczmprim_GHCziTuple_Z0T_closure"
1452+ "-Wl,-u,ghczmprim_GHCziTypes_True_closure"
1453+ "-Wl,-u,ghczmprim_GHCziTypes_False_closure"
1454+ "-Wl,-u,base_GHCziPack_unpackCString_closure"
1455+ "-Wl,-u,base_GHCziWeak_runFinalizzerBatch_closure"
1456+ "-Wl,-u,base_GHCziIOziException_stackOverflow_closure"
1457+ "-Wl,-u,base_GHCziIOziException_heapOverflow_closure"
1458+ "-Wl,-u,base_GHCziIOziException_allocationLimitExceeded_closure"
1459+ "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnMVar_closure"
1460+ "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnSTM_closure"
1461+ "-Wl,-u,base_GHCziIOziException_cannotCompactFunction_closure"
1462+ "-Wl,-u,base_GHCziIOziException_cannotCompactPinned_closure"
1463+ "-Wl,-u,base_GHCziIOziException_cannotCompactMutable_closure"
1464+ "-Wl,-u,base_GHCziIOPort_doubleReadException_closure"
1465+ "-Wl,-u,base_ControlziExceptionziBase_nonTermination_closure"
1466+ "-Wl,-u,base_ControlziExceptionziBase_nestedAtomically_closure"
1467+ "-Wl,-u,base_GHCziEventziThread_blockedOnBadFD_closure"
1468+ "-Wl,-u,base_GHCziExceptionziType_divZZeroException_closure"
1469+ "-Wl,-u,base_GHCziExceptionziType_underflowException_closure"
1470+ "-Wl,-u,base_GHCziExceptionziType_overflowException_closure"
1471+ "-Wl,-u,base_GHCziConcziSync_runSparks_closure"
1472+ "-Wl,-u,base_GHCziConcziIO_ensureIOManagerIsRunning_closure"
1473+ "-Wl,-u,base_GHCziConcziIO_interruptIOManager_closure"
1474+ "-Wl,-u,base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure"
1475+ "-Wl,-u,base_GHCziConcziSignal_runHandlersPtr_closure"
1476+ "-Wl,-u,base_GHCziTopHandler_flushStdHandles_closure"
1477+ "-Wl,-u,base_GHCziTopHandler_runMainIO_closure"
1478+ "-Wl,-u,ghczmprim_GHCziTypes_Czh_con_info"
1479+ "-Wl,-u,ghczmprim_GHCziTypes_Izh_con_info"
1480+ "-Wl,-u,ghczmprim_GHCziTypes_Fzh_con_info"
1481+ "-Wl,-u,ghczmprim_GHCziTypes_Dzh_con_info"
1482+ "-Wl,-u,ghczmprim_GHCziTypes_Wzh_con_info"
1483+ "-Wl,-u,base_GHCziPtr_Ptr_con_info"
1484+ "-Wl,-u,base_GHCziPtr_FunPtr_con_info"
1485+ "-Wl,-u,base_GHCziInt_I8zh_con_info"
1486+ "-Wl,-u,base_GHCziInt_I16zh_con_info"
1487+ "-Wl,-u,base_GHCziInt_I32zh_con_info"
1488+ "-Wl,-u,base_GHCziInt_I64zh_con_info"
1489+ "-Wl,-u,base_GHCziWord_W8zh_con_info"
1490+ "-Wl,-u,base_GHCziWord_W16zh_con_info"
1491+ "-Wl,-u,base_GHCziWord_W32zh_con_info"
1492+ "-Wl,-u,base_GHCziWord_W64zh_con_info"
1493+ "-Wl,-u,base_GHCziStable_StablePtr_con_info"
1494+ "-Wl,-u,hs_atomic_add8" "-Wl,-u,hs_atomic_add16"
1495+ "-Wl,-u,hs_atomic_add32" "-Wl,-u,hs_atomic_add64"
1496+ "-Wl,-u,hs_atomic_sub8" "-Wl,-u,hs_atomic_sub16"
1497+ "-Wl,-u,hs_atomic_sub32" "-Wl,-u,hs_atomic_sub64"
1498+ "-Wl,-u,hs_atomic_and8" "-Wl,-u,hs_atomic_and16"
1499+ "-Wl,-u,hs_atomic_and32" "-Wl,-u,hs_atomic_and64"
1500+ "-Wl,-u,hs_atomic_nand8" "-Wl,-u,hs_atomic_nand16"
1501+ "-Wl,-u,hs_atomic_nand32" "-Wl,-u,hs_atomic_nand64"
1502+ "-Wl,-u,hs_atomic_or8" "-Wl,-u,hs_atomic_or16"
1503+ "-Wl,-u,hs_atomic_or32" "-Wl,-u,hs_atomic_or64"
1504+ "-Wl,-u,hs_atomic_xor8" "-Wl,-u,hs_atomic_xor16"
1505+ "-Wl,-u,hs_atomic_xor32" "-Wl,-u,hs_atomic_xor64"
1506+ "-Wl,-u,hs_cmpxchg8" "-Wl,-u,hs_cmpxchg16" "-Wl,-u,hs_cmpxchg32"
1507+ "-Wl,-u,hs_cmpxchg64" "-Wl,-u,hs_xchg8" "-Wl,-u,hs_xchg16"
1508+ "-Wl,-u,hs_xchg32" "-Wl,-u,hs_xchg64" "-Wl,-u,hs_atomicread8"
1509+ "-Wl,-u,hs_atomicread16" "-Wl,-u,hs_atomicread32"
1510+ "-Wl,-u,hs_atomicread64" "-Wl,-u,hs_atomicwrite8"
1511+ "-Wl,-u,hs_atomicwrite16" "-Wl,-u,hs_atomicwrite32"
1512+ "-Wl,-u,hs_atomicwrite64"
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc-pkg/versionnew file+1
@@ -0,0 +1 @@
1+GHC package manager version 9.2.4
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/infonew file+66
@@ -0,0 +1,66 @@
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","NO")
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 word big endian","NO")
28+ ,("target has GNU nonexec stack","YES")
29+ ,("target has .ident directive","YES")
30+ ,("target has subsections via symbols","NO")
31+ ,("target has RTS linker","YES")
32+ ,("Unregisterised","NO")
33+ ,("LLVM target","aarch64-unknown-linux")
34+ ,("LLVM llc command","llc")
35+ ,("LLVM opt command","opt")
36+ ,("LLVM clang command","clang")
37+ ,("Use interpreter","YES")
38+ ,("Support SMP","YES")
39+ ,("RTS ways","l debug thr thr_debug thr_l thr_p thr_debug_p debug_p")
40+ ,("Tables next to code","YES")
41+ ,("Leading underscore","NO")
42+ ,("Use LibFFI","YES")
43+ ,("RTS expects libdw","NO")
44+ ,("Project version","9.2.4")
45+ ,("Project Git commit id","a54827e0b48af33fa9cfde6ad131c6751c2fe321")
46+ ,("Booter version","8.10.7")
47+ ,("Stage","1")
48+ ,("Build platform","x86_64-unknown-linux")
49+ ,("Host platform","x86_64-unknown-linux")
50+ ,("Target platform","aarch64-unknown-linux")
51+ ,("Have interpreter","YES")
52+ ,("Object splitting supported","NO")
53+ ,("Have native code generator","YES")
54+ ,("Target default backend","NCG")
55+ ,("Support dynamic-too","YES")
56+ ,("Support parallel --make","YES")
57+ ,("Support reexported-modules","YES")
58+ ,("Support thinning and renaming package flags","YES")
59+ ,("Support Backpack","YES")
60+ ,("Requires unified installed package IDs","YES")
61+ ,("Uses package keys","YES")
62+ ,("Uses unit IDs","YES")
63+ ,("GHC Dynamic","NO")
64+ ,("GHC Profiled","NO")
65+ ,("Debug on","NO")
66+ ]
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/numeric-versionnew file+1
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/supported-languagesnew file+268
@@ -0,0 +1,268 @@
1+Haskell98
2+Haskell2010
3+GHC2021
4+Unsafe
5+Trustworthy
6+Safe
7+AllowAmbiguousTypes
8+NoAllowAmbiguousTypes
9+AlternativeLayoutRule
10+NoAlternativeLayoutRule
11+AlternativeLayoutRuleTransitional
12+NoAlternativeLayoutRuleTransitional
13+Arrows
14+NoArrows
15+AutoDeriveTypeable
16+NoAutoDeriveTypeable
17+BangPatterns
18+NoBangPatterns
19+BinaryLiterals
20+NoBinaryLiterals
21+CApiFFI
22+NoCApiFFI
23+CPP
24+NoCPP
25+CUSKs
26+NoCUSKs
27+ConstrainedClassMethods
28+NoConstrainedClassMethods
29+ConstraintKinds
30+NoConstraintKinds
31+DataKinds
32+NoDataKinds
33+DatatypeContexts
34+NoDatatypeContexts
35+DefaultSignatures
36+NoDefaultSignatures
37+DeriveAnyClass
38+NoDeriveAnyClass
39+DeriveDataTypeable
40+NoDeriveDataTypeable
41+DeriveFoldable
42+NoDeriveFoldable
43+DeriveFunctor
44+NoDeriveFunctor
45+DeriveGeneric
46+NoDeriveGeneric
47+DeriveLift
48+NoDeriveLift
49+DeriveTraversable
50+NoDeriveTraversable
51+DerivingStrategies
52+NoDerivingStrategies
53+DerivingVia
54+NoDerivingVia
55+DisambiguateRecordFields
56+NoDisambiguateRecordFields
57+DoAndIfThenElse
58+NoDoAndIfThenElse
59+BlockArguments
60+NoBlockArguments
61+DoRec
62+NoDoRec
63+DuplicateRecordFields
64+NoDuplicateRecordFields
65+FieldSelectors
66+NoFieldSelectors
67+EmptyCase
68+NoEmptyCase
69+EmptyDataDecls
70+NoEmptyDataDecls
71+EmptyDataDeriving
72+NoEmptyDataDeriving
73+ExistentialQuantification
74+NoExistentialQuantification
75+ExplicitForAll
76+NoExplicitForAll
77+ExplicitNamespaces
78+NoExplicitNamespaces
79+ExtendedDefaultRules
80+NoExtendedDefaultRules
81+FlexibleContexts
82+NoFlexibleContexts
83+FlexibleInstances
84+NoFlexibleInstances
85+ForeignFunctionInterface
86+NoForeignFunctionInterface
87+FunctionalDependencies
88+NoFunctionalDependencies
89+GADTSyntax
90+NoGADTSyntax
91+GADTs
92+NoGADTs
93+GHCForeignImportPrim
94+NoGHCForeignImportPrim
95+GeneralizedNewtypeDeriving
96+NoGeneralizedNewtypeDeriving
97+GeneralisedNewtypeDeriving
98+NoGeneralisedNewtypeDeriving
99+ImplicitParams
100+NoImplicitParams
101+ImplicitPrelude
102+NoImplicitPrelude
103+ImportQualifiedPost
104+NoImportQualifiedPost
105+ImpredicativeTypes
106+NoImpredicativeTypes
107+IncoherentInstances
108+NoIncoherentInstances
109+TypeFamilyDependencies
110+NoTypeFamilyDependencies
111+InstanceSigs
112+NoInstanceSigs
113+ApplicativeDo
114+NoApplicativeDo
115+InterruptibleFFI
116+NoInterruptibleFFI
117+JavaScriptFFI
118+NoJavaScriptFFI
119+KindSignatures
120+NoKindSignatures
121+LambdaCase
122+NoLambdaCase
123+LexicalNegation
124+NoLexicalNegation
125+LiberalTypeSynonyms
126+NoLiberalTypeSynonyms
127+LinearTypes
128+NoLinearTypes
129+MagicHash
130+NoMagicHash
131+MonadComprehensions
132+NoMonadComprehensions
133+MonoLocalBinds
134+NoMonoLocalBinds
135+DeepSubsumption
136+NoDeepSubsumption
137+MonomorphismRestriction
138+NoMonomorphismRestriction
139+MultiParamTypeClasses
140+NoMultiParamTypeClasses
141+MultiWayIf
142+NoMultiWayIf
143+NumericUnderscores
144+NoNumericUnderscores
145+NPlusKPatterns
146+NoNPlusKPatterns
147+NamedFieldPuns
148+NoNamedFieldPuns
149+NamedWildCards
150+NoNamedWildCards
151+NegativeLiterals
152+NoNegativeLiterals
153+HexFloatLiterals
154+NoHexFloatLiterals
155+NondecreasingIndentation
156+NoNondecreasingIndentation
157+NullaryTypeClasses
158+NoNullaryTypeClasses
159+NumDecimals
160+NoNumDecimals
161+OverlappingInstances
162+NoOverlappingInstances
163+OverloadedLabels
164+NoOverloadedLabels
165+OverloadedLists
166+NoOverloadedLists
167+OverloadedStrings
168+NoOverloadedStrings
169+PackageImports
170+NoPackageImports
171+ParallelArrays
172+NoParallelArrays
173+ParallelListComp
174+NoParallelListComp
175+PartialTypeSignatures
176+NoPartialTypeSignatures
177+PatternGuards
178+NoPatternGuards
179+PatternSignatures
180+NoPatternSignatures
181+PatternSynonyms
182+NoPatternSynonyms
183+PolyKinds
184+NoPolyKinds
185+PolymorphicComponents
186+NoPolymorphicComponents
187+QuantifiedConstraints
188+NoQuantifiedConstraints
189+PostfixOperators
190+NoPostfixOperators
191+QuasiQuotes
192+NoQuasiQuotes
193+QualifiedDo
194+NoQualifiedDo
195+Rank2Types
196+NoRank2Types
197+RankNTypes
198+NoRankNTypes
199+RebindableSyntax
200+NoRebindableSyntax
201+OverloadedRecordDot
202+NoOverloadedRecordDot
203+OverloadedRecordUpdate
204+NoOverloadedRecordUpdate
205+RecordPuns
206+NoRecordPuns
207+RecordWildCards
208+NoRecordWildCards
209+RecursiveDo
210+NoRecursiveDo
211+RelaxedLayout
212+NoRelaxedLayout
213+RelaxedPolyRec
214+NoRelaxedPolyRec
215+RoleAnnotations
216+NoRoleAnnotations
217+ScopedTypeVariables
218+NoScopedTypeVariables
219+StandaloneDeriving
220+NoStandaloneDeriving
221+StarIsType
222+NoStarIsType
223+StaticPointers
224+NoStaticPointers
225+Strict
226+NoStrict
227+StrictData
228+NoStrictData
229+TemplateHaskell
230+NoTemplateHaskell
231+TemplateHaskellQuotes
232+NoTemplateHaskellQuotes
233+StandaloneKindSignatures
234+NoStandaloneKindSignatures
235+TraditionalRecordSyntax
236+NoTraditionalRecordSyntax
237+TransformListComp
238+NoTransformListComp
239+TupleSections
240+NoTupleSections
241+TypeApplications
242+NoTypeApplications
243+TypeInType
244+NoTypeInType
245+TypeFamilies
246+NoTypeFamilies
247+TypeOperators
248+NoTypeOperators
249+TypeSynonymInstances
250+NoTypeSynonymInstances
251+UnboxedTuples
252+NoUnboxedTuples
253+UnboxedSums
254+NoUnboxedSums
255+UndecidableInstances
256+NoUndecidableInstances
257+UndecidableSuperClasses
258+NoUndecidableSuperClasses
259+UnicodeSyntax
260+NoUnicodeSyntax
261+UnliftedDatatypes
262+NoUnliftedDatatypes
263+UnliftedFFITypes
264+NoUnliftedFFITypes
265+UnliftedNewtypes
266+NoUnliftedNewtypes
267+ViewPatterns
268+NoViewPatterns
materialized/dummy-ghc/aarch64-unknown-linux-gnu-aarch64-unknown-linux-gnu-ghc-9.2.4-x86_64-linux/ghc/versionnew file+1
@@ -0,0 +1 @@
1+The Glorious Glasgow Haskell Compilation System, version 9.2.4
materialized/dummy-ghc/ghc-8.10.2-x86_64-linux/ghc/info+6
@@ -1,18 +1,24 @@
11 [("Project name","The Glorious Glasgow Haskell Compilation System")
22 ,("GCC extra via C opts","")
3+ ,("C compiler command","gcc")
34 ,("C compiler flags","")
45 ,("C++ compiler flags","")
56 ,("C compiler link flags","")
67 ,("C compiler supports -no-pie","YES")
8+ ,("Haskell CPP command","gcc")
79 ,("Haskell CPP flags","-E -undef -traditional")
10+ ,("ld command","ld")
811 ,("ld flags","")
912 ,("ld supports compact unwind","YES")
1013 ,("ld supports build-id","YES")
1114 ,("ld supports filelist","NO")
1215 ,("ld is GNU ld","YES")
16+ ,("Merge objects command","ld")
1317 ,("Merge objects flags","-r")
18+ ,("ar command","ar")
1419 ,("ar flags","q")
1520 ,("ar supports at file","YES")
21+ ,("ranlib command","ranlib")
1622 ,("touch command","touch")
1723 ,("dllwrap command","/bin/false")
1824 ,("windres command","/bin/false")
materialized/dummy-ghc/ghc-8.10.3-x86_64-linux/ghc/info+6
@@ -1,18 +1,24 @@
11 [("Project name","The Glorious Glasgow Haskell Compilation System")
22 ,("GCC extra via C opts","")
3+ ,("C compiler command","gcc")
34 ,("C compiler flags","")
45 ,("C++ compiler flags","")
56 ,("C compiler link flags","")
67 ,("C compiler supports -no-pie","YES")
8+ ,("Haskell CPP command","gcc")
79 ,("Haskell CPP flags","-E -undef -traditional")
10+ ,("ld command","ld")
811 ,("ld flags","")
912 ,("ld supports compact unwind","YES")
1013 ,("ld supports build-id","YES")
1114 ,("ld supports filelist","NO")
1215 ,("ld is GNU ld","YES")
16+ ,("Merge objects command","ld")
1317 ,("Merge objects flags","-r")
18+ ,("ar command","ar")
1419 ,("ar flags","q")
1520 ,("ar supports at file","YES")
21+ ,("ranlib command","ranlib")
1622 ,("otool command","otool")
1723 ,("install_name_tool command","install_name_tool")
1824 ,("touch command","touch")
materialized/dummy-ghc/ghc-8.10.4-x86_64-darwin/ghc/info+6
@@ -1,18 +1,24 @@
11 [("Project name","The Glorious Glasgow Haskell Compilation System")
22 ,("GCC extra via C opts","")
3+ ,("C compiler command","clang")
34 ,("C compiler flags","")
45 ,("C++ compiler flags","")
56 ,("C compiler link flags","")
67 ,("C compiler supports -no-pie","NO")
8+ ,("Haskell CPP command","clang")
79 ,("Haskell CPP flags","-E -undef -traditional -Wno-invalid-pp-token -Wno-unicode -Wno-trigraphs")
10+ ,("ld command","ld")
811 ,("ld flags","")
912 ,("ld supports compact unwind","YES")
1013 ,("ld supports build-id","NO")
1114 ,("ld supports filelist","YES")
1215 ,("ld is GNU ld","NO")
16+ ,("Merge objects command","ld")
1317 ,("Merge objects flags","-r")
18+ ,("ar command","ar")
1419 ,("ar flags","qcls")
1520 ,("ar supports at file","NO")
21+ ,("ranlib command","ranlib")
1622 ,("otool command","otool")
1723 ,("install_name_tool command","install_name_tool")
1824 ,("touch command","touch")
materialized/dummy-ghc/ghc-8.10.4-x86_64-linux/ghc/info+6
@@ -1,18 +1,24 @@
11 [("Project name","The Glorious Glasgow Haskell Compilation System")
22 ,("GCC extra via C opts","")
3+ ,("C compiler command","gcc")
34 ,("C compiler flags","")
45 ,("C++ compiler flags","")
56 ,("C compiler link flags","")
67 ,("C compiler supports -no-pie","YES")
8+ ,("Haskell CPP command","gcc")
79 ,("Haskell CPP flags","-E -undef -traditional")
10+ ,("ld command","ld")
811 ,("ld flags","")
912 ,("ld supports compact unwind","YES")
1013 ,("ld supports build-id","YES")
1114 ,("ld supports filelist","NO")
1215 ,("ld is GNU ld","YES")
16+ ,("Merge objects command","ld")
1317 ,("Merge objects flags","-r")
18+ ,("ar command","ar")
1419 ,("ar flags","q")
1520 ,("ar supports at file","YES")
21+ ,("ranlib command","ranlib")
1622 ,("otool command","otool")
1723 ,("install_name_tool command","install_name_tool")
1824 ,("touch command","touch")
materialized/dummy-ghc/ghc-8.10.4.20210212-x86_64-linux/ghc/info+6
@@ -1,18 +1,24 @@
11 [("Project name","The Glorious Glasgow Haskell Compilation System")
22 ,("GCC extra via C opts","")
3+ ,("C compiler command","gcc")
34 ,("C compiler flags","")
45 ,("C++ compiler flags","")
56 ,("C compiler link flags","")
67 ,("C compiler supports -no-pie","YES")
8+ ,("Haskell CPP command","gcc")
79 ,("Haskell CPP flags","-E -undef -traditional")
10+ ,("ld command","ld")
811 ,("ld flags","")
912 ,("ld supports compact unwind","YES")
1013 ,("ld supports build-id","YES")
1114 ,("ld supports filelist","NO")
1215 ,("ld is GNU ld","YES")
16+ ,("Merge objects command","ld")
1317 ,("Merge objects flags","-r")
18+ ,("ar command","ar")
1419 ,("ar flags","q")
1520 ,("ar supports at file","YES")
21+ ,("ranlib command","ranlib")
1622 ,("otool command","otool")
1723 ,("install_name_tool command","install_name_tool")
1824 ,("touch command","touch")
materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc-pkg/dump-globalnew file+1638
@@ -0,0 +1,1638 @@
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+extra-libraries: iconv
303+include-dirs:
304+includes: HsBase.h
305+depends: ghc-prim-0.6.1 integer-gmp-1.0.3.0 rts
306+haddock-interfaces:
307+haddock-html:
308+---
309+name: binary
310+version: 0.8.8.0
311+visibility: public
312+id: binary-0.8.8.0
313+key: binary-0.8.8.0
314+license: BSD-3-Clause
315+maintainer: Lennart Kolmodin, Don Stewart <dons00@gmail.com>
316+author: Lennart Kolmodin <kolmodin@gmail.com>
317+stability: provisional
318+homepage: https://github.com/kolmodin/binary
319+synopsis:
320+ Binary serialisation for Haskell values using lazy ByteStrings
321+description:
322+ Efficient, pure binary serialisation using lazy ByteStrings.
323+ Haskell values may be encoded to and from binary formats,
324+ written to disk as binary, or sent over the network.
325+ The format used can be automatically generated, or
326+ you can choose to implement a custom format if needed.
327+ Serialisation speeds of over 1 G\/sec have been observed,
328+ so this library should be suitable for high performance
329+ scenarios.
330+category: Data, Parsing
331+exposed: True
332+exposed-modules:
333+ Data.Binary Data.Binary.Builder Data.Binary.Get
334+ Data.Binary.Get.Internal Data.Binary.Put
335+hidden-modules:
336+ Data.Binary.Class Data.Binary.Internal Data.Binary.Generic
337+ Data.Binary.FloatCast
338+import-dirs:
339+library-dirs:
340+dynamic-library-dirs:
341+data-dir:
342+hs-libraries: HSbinary-0.8.8.0
343+depends:
344+ array-0.5.4.0 base-4.14.2.0 bytestring-0.10.12.0 containers-0.6.4.1
345+haddock-interfaces:
346+haddock-html:
347+---
348+name: bytestring
349+version: 0.10.12.0
350+visibility: public
351+id: bytestring-0.10.12.0
352+key: bytestring-0.10.12.0
353+license: BSD-3-Clause
354+copyright:
355+ Copyright (c) Don Stewart 2005-2009,
356+ (c) Duncan Coutts 2006-2015,
357+ (c) David Roundy 2003-2005,
358+ (c) Jasper Van der Jeugt 2010,
359+ (c) Simon Meier 2010-2013.
360+maintainer: Duncan Coutts <duncan@community.haskell.org>
361+author:
362+ Don Stewart,
363+ Duncan Coutts
364+homepage: https://github.com/haskell/bytestring
365+synopsis:
366+ Fast, compact, strict and lazy byte strings with a list interface
367+description:
368+ An efficient compact, immutable byte string type (both strict and lazy)
369+ suitable for binary or 8-bit character data.
370+ The 'ByteString' type represents sequences of bytes or 8-bit characters.
371+ It is suitable for high performance use, both in terms of large data
372+ quantities, or high speed requirements. The 'ByteString' functions follow
373+ the same style as Haskell\'s ordinary lists, so it is easy to convert code
374+ from using 'String' to 'ByteString'.
375+ Two 'ByteString' variants are provided:
376+ * Strict 'ByteString's keep the string as a single large array. This
377+ makes them convenient for passing data between C and Haskell.
378+ * Lazy 'ByteString's use a lazy list of strict chunks which makes it
379+ suitable for I\/O streaming tasks.
380+ The @Char8@ modules provide a character-based view of the same
381+ underlying 'ByteString' types. This makes it convenient to handle mixed
382+ binary and 8-bit character content (which is common in many file formats
383+ and network protocols).
384+ The 'Builder' module provides an efficient way to build up 'ByteString's
385+ in an ad-hoc way by repeated concatenation. This is ideal for fast
386+ serialisation or pretty printing.
387+ There is also a 'ShortByteString' type which has a lower memory overhead
388+ and can can be converted to or from a 'ByteString', but supports very few
389+ other operations. It is suitable for keeping many short strings in memory.
390+ 'ByteString's are not designed for Unicode. For Unicode strings you should
391+ use the 'Text' type from the @text@ package.
392+ These modules are intended to be imported qualified, to avoid name clashes
393+ with "Prelude" functions, e.g.
394+ > import qualified Data.ByteString as BS
395+category: Data
396+exposed: True
397+exposed-modules:
398+ Data.ByteString Data.ByteString.Builder
399+ Data.ByteString.Builder.Extra Data.ByteString.Builder.Internal
400+ Data.ByteString.Builder.Prim Data.ByteString.Builder.Prim.Internal
401+ Data.ByteString.Char8 Data.ByteString.Internal Data.ByteString.Lazy
402+ Data.ByteString.Lazy.Builder Data.ByteString.Lazy.Builder.ASCII
403+ Data.ByteString.Lazy.Builder.Extras Data.ByteString.Lazy.Char8
404+ Data.ByteString.Lazy.Internal Data.ByteString.Short
405+ Data.ByteString.Short.Internal Data.ByteString.Unsafe
406+hidden-modules:
407+ Data.ByteString.Builder.ASCII Data.ByteString.Builder.Prim.Binary
408+ Data.ByteString.Builder.Prim.ASCII
409+ Data.ByteString.Builder.Prim.Internal.Floating
410+ Data.ByteString.Builder.Prim.Internal.UncheckedShifts
411+ Data.ByteString.Builder.Prim.Internal.Base16
412+import-dirs:
413+library-dirs:
414+dynamic-library-dirs:
415+data-dir:
416+hs-libraries: HSbytestring-0.10.12.0
417+include-dirs:
418+includes: fpstring.h
419+depends:
420+ base-4.14.2.0 deepseq-1.4.4.0 ghc-prim-0.6.1 integer-gmp-1.0.3.0
421+haddock-interfaces:
422+haddock-html:
423+---
424+name: containers
425+version: 0.6.4.1
426+visibility: public
427+id: containers-0.6.4.1
428+key: containers-0.6.4.1
429+license: BSD-3-Clause
430+maintainer: libraries@haskell.org
431+synopsis: Assorted concrete container types
432+description:
433+ This package contains efficient general-purpose implementations
434+ of various immutable container types including sets, maps, sequences,
435+ trees, and graphs.
436+ For a walkthrough of what this package provides with examples of common
437+ operations see the [containers
438+ introduction](https://haskell-containers.readthedocs.io).
439+ The declared cost of each operation is either worst-case or amortized, but
440+ remains valid even if structures are shared.
441+category: Data Structures
442+exposed: True
443+exposed-modules:
444+ Data.Containers.ListUtils Data.Graph Data.IntMap
445+ Data.IntMap.Internal Data.IntMap.Internal.Debug Data.IntMap.Lazy
446+ Data.IntMap.Merge.Lazy Data.IntMap.Merge.Strict Data.IntMap.Strict
447+ Data.IntMap.Strict.Internal Data.IntSet Data.IntSet.Internal
448+ Data.Map Data.Map.Internal Data.Map.Internal.Debug Data.Map.Lazy
449+ Data.Map.Merge.Lazy Data.Map.Merge.Strict Data.Map.Strict
450+ Data.Map.Strict.Internal Data.Sequence Data.Sequence.Internal
451+ Data.Sequence.Internal.Sorting Data.Set Data.Set.Internal Data.Tree
452+ Utils.Containers.Internal.BitQueue
453+ Utils.Containers.Internal.BitUtil
454+ Utils.Containers.Internal.StrictPair
455+hidden-modules:
456+ Utils.Containers.Internal.State
457+ Utils.Containers.Internal.StrictMaybe
458+ Utils.Containers.Internal.PtrEquality
459+ Utils.Containers.Internal.Coercions
460+ Utils.Containers.Internal.TypeError
461+ Data.Map.Internal.DeprecatedShowTree
462+ Data.IntMap.Internal.DeprecatedDebug
463+import-dirs:
464+library-dirs:
465+dynamic-library-dirs:
466+data-dir:
467+hs-libraries: HScontainers-0.6.4.1
468+depends: array-0.5.4.0 base-4.14.2.0 deepseq-1.4.4.0
469+haddock-interfaces:
470+haddock-html:
471+---
472+name: deepseq
473+version: 1.4.4.0
474+visibility: public
475+id: deepseq-1.4.4.0
476+key: deepseq-1.4.4.0
477+license: BSD-3-Clause
478+maintainer: libraries@haskell.org
479+synopsis: Deep evaluation of data structures
480+description:
481+ This package provides methods for fully evaluating data structures
482+ (\"deep evaluation\"). Deep evaluation is often used for adding
483+ strictness to a program, e.g. in order to force pending exceptions,
484+ remove space leaks, or force lazy I/O to happen. It is also useful
485+ in parallel programs, to ensure pending work does not migrate to the
486+ wrong thread.
487+ The primary use of this package is via the 'deepseq' function, a
488+ \"deep\" version of 'seq'. It is implemented on top of an 'NFData'
489+ typeclass (\"Normal Form Data\", data structures with no unevaluated
490+ components) which defines strategies for fully evaluating different
491+ data types. See module documentation in "Control.DeepSeq" for more
492+ details.
493+category: Control
494+exposed: True
495+exposed-modules: Control.DeepSeq
496+hidden-modules: Control.DeepSeq.BackDoor
497+import-dirs:
498+library-dirs:
499+dynamic-library-dirs:
500+data-dir:
501+hs-libraries: HSdeepseq-1.4.4.0
502+depends: array-0.5.4.0 base-4.14.2.0
503+haddock-interfaces:
504+haddock-html:
505+---
506+name: directory
507+version: 1.3.6.0
508+visibility: public
509+id: directory-1.3.6.0
510+key: directory-1.3.6.0
511+license: BSD-3-Clause
512+maintainer: libraries@haskell.org
513+synopsis: Platform-agnostic library for filesystem operations
514+description:
515+ This library provides a basic set of operations for manipulating files and
516+ directories in a portable way.
517+category: System
518+exposed: True
519+exposed-modules:
520+ System.Directory System.Directory.Internal
521+ System.Directory.Internal.Prelude
522+hidden-modules:
523+ System.Directory.Internal.C_utimensat
524+ System.Directory.Internal.Common System.Directory.Internal.Config
525+ System.Directory.Internal.Posix System.Directory.Internal.Windows
526+import-dirs:
527+library-dirs:
528+dynamic-library-dirs:
529+data-dir:
530+hs-libraries: HSdirectory-1.3.6.0
531+depends:
532+ base-4.14.2.0 filepath-1.4.2.1 time-1.9.3 unix-2.7.2.2
533+haddock-interfaces:
534+haddock-html:
535+---
536+name: exceptions
537+version: 0.10.4
538+visibility: public
539+id: exceptions-0.10.4
540+key: exceptions-0.10.4
541+license: BSD-3-Clause
542+copyright:
543+ Copyright (C) 2013-2015 Edward A. Kmett
544+ Copyright (C) 2012 Google Inc.
545+maintainer: Edward A. Kmett <ekmett@gmail.com>
546+author: Edward A. Kmett
547+stability: provisional
548+homepage: http://github.com/ekmett/exceptions/
549+synopsis: Extensible optionally-pure exceptions
550+description: Extensible optionally-pure exceptions.
551+category: Control, Exceptions, Monad
552+exposed: True
553+exposed-modules: Control.Monad.Catch Control.Monad.Catch.Pure
554+import-dirs:
555+library-dirs:
556+dynamic-library-dirs:
557+data-dir:
558+hs-libraries: HSexceptions-0.10.4
559+depends:
560+ base-4.14.2.0 mtl-2.2.2 stm-2.5.0.1 template-haskell-2.16.0.0
561+ transformers-0.5.6.2
562+haddock-interfaces:
563+haddock-html:
564+---
565+name: filepath
566+version: 1.4.2.1
567+visibility: public
568+id: filepath-1.4.2.1
569+key: filepath-1.4.2.1
570+license: BSD-3-Clause
571+copyright: Neil Mitchell 2005-2018
572+maintainer: Neil Mitchell <ndmitchell@gmail.com>
573+author: Neil Mitchell <ndmitchell@gmail.com>
574+homepage: https://github.com/haskell/filepath#readme
575+synopsis: Library for manipulating FilePaths in a cross platform way.
576+description:
577+ 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:
578+ * "System.FilePath.Posix" manipulates POSIX\/Linux style @FilePath@ values (with @\/@ as the path separator).
579+ * "System.FilePath.Windows" manipulates Windows style @FilePath@ values (with either @\\@ or @\/@ as the path separator, and deals with drives).
580+ * "System.FilePath" is an alias for the module appropriate to your platform.
581+ All three modules provide the same API, and the same documentation (calling out differences in the different variants).
582+category: System
583+exposed: True
584+exposed-modules:
585+ System.FilePath System.FilePath.Posix System.FilePath.Windows
586+import-dirs:
587+library-dirs:
588+dynamic-library-dirs:
589+data-dir:
590+hs-libraries: HSfilepath-1.4.2.1
591+depends: base-4.14.2.0
592+haddock-interfaces:
593+haddock-html:
594+---
595+name: ghc
596+version: 8.10.5
597+visibility: public
598+id: ghc-8.10.5
599+key: ghc-8.10.5
600+license: BSD-3-Clause
601+maintainer: glasgow-haskell-users@haskell.org
602+author: The GHC Team
603+homepage: http://www.haskell.org/ghc/
604+synopsis: The GHC API
605+description:
606+ GHC's functionality can be useful for more things than just
607+ compiling Haskell programs. Important use cases are programs
608+ that analyse (and perhaps transform) Haskell code. Others
609+ include loading Haskell code dynamically in a GHCi-like manner.
610+ For this reason, a lot of GHC's functionality is made available
611+ through this package.
612+category: Development
613+exposed-modules:
614+ Annotations ApiAnnotation Ar AsmCodeGen AsmUtils Avail Bag
615+ BasicTypes BinFingerprint BinIface Binary Bitmap BkpSyn BlockId
616+ BlockLayout BooleanFormula BufWrite BuildTyCl ByteCodeAsm
617+ ByteCodeGen ByteCodeInstr ByteCodeItbls ByteCodeLink ByteCodeTypes
618+ CFG CLabel CPrim CSE CallArity Class CliOption ClsInst
619+ CmdLineParser Cmm CmmBuildInfoTables CmmCallConv CmmCommonBlockElim
620+ CmmContFlowOpt CmmExpr CmmImplementSwitchPlans CmmInfo
621+ CmmLayoutStack CmmLex CmmLint CmmLive CmmMachOp CmmMonad CmmNode
622+ CmmOpt CmmParse CmmPipeline CmmProcPoint CmmSink CmmSwitch CmmType
623+ CmmUtils CoAxiom CodeOutput Coercion ConLike Config Constants
624+ Constraint CoreArity CoreFVs CoreLint CoreMap CoreMonad CoreOpt
625+ CorePrep CoreSeq CoreStats CoreSubst CoreSyn CoreTidy CoreToStg
626+ CoreUnfold CoreUtils CostCentre CostCentreState Coverage Ctype
627+ DataCon Debug Debugger Demand Desugar Digraph DmdAnal Dominators
628+ DriverBkp DriverMkDepend DriverPhases DriverPipeline DsArrows
629+ DsBinds DsCCall DsExpr DsForeign DsGRHSs DsListComp DsMeta DsMonad
630+ DsUsage DsUtils Dwarf Dwarf.Constants Dwarf.Types DynFlags
631+ DynamicLoading Elf Encoding EnumSet ErrUtils Exception Exitify
632+ ExtractDocs FV FamInst FamInstEnv FastFunctions FastMutInt
633+ FastString FastStringEnv FieldLabel FileCleanup FileSettings Finder
634+ Fingerprint FiniteMap FlagChecker FloatIn FloatOut ForeignCall
635+ Format FunDeps GHC GHC.Hs GHC.Hs.Binds GHC.Hs.Decls GHC.Hs.Doc
636+ GHC.Hs.Dump GHC.Hs.Expr GHC.Hs.Extension GHC.Hs.ImpExp
637+ GHC.Hs.Instances GHC.Hs.Lit GHC.Hs.Pat GHC.Hs.PlaceHolder
638+ GHC.Hs.Types GHC.Hs.Utils GHC.HsToCore.PmCheck
639+ GHC.HsToCore.PmCheck.Oracle GHC.HsToCore.PmCheck.Ppr
640+ GHC.HsToCore.PmCheck.Types GHC.Platform.AArch64 GHC.Platform.ARM
641+ GHC.Platform.NoRegs GHC.Platform.PPC GHC.Platform.Regs
642+ GHC.Platform.S390X GHC.Platform.SPARC GHC.Platform.X86
643+ GHC.Platform.X86_64 GHC.StgToCmm GHC.StgToCmm.ArgRep
644+ GHC.StgToCmm.Bind GHC.StgToCmm.CgUtils GHC.StgToCmm.Closure
645+ GHC.StgToCmm.DataCon GHC.StgToCmm.Env GHC.StgToCmm.Expr
646+ GHC.StgToCmm.ExtCode GHC.StgToCmm.Foreign GHC.StgToCmm.Heap
647+ GHC.StgToCmm.Hpc GHC.StgToCmm.Layout GHC.StgToCmm.Monad
648+ GHC.StgToCmm.Prim GHC.StgToCmm.Prof GHC.StgToCmm.Ticky
649+ GHC.StgToCmm.Utils GHC.ThToHs GHCi GhcMake GhcMonad GhcNameVersion
650+ GhcPlugins GhcPrelude GraphBase GraphColor GraphOps GraphPpr
651+ HaddockUtils HeaderInfo HieAst HieBin HieDebug HieTypes HieUtils
652+ Hooks Hoopl.Block Hoopl.Collections Hoopl.Dataflow Hoopl.Graph
653+ Hoopl.Label HscMain HscStats HscTypes IOEnv Id IdInfo IfaceEnv
654+ IfaceSyn IfaceType Inst InstEnv Instruction InteractiveEval
655+ InteractiveEvalTypes Json KnownUniques Lexeme Lexer LiberateCase
656+ Linker LinkerTypes ListSetOps Literal Llvm Llvm.AbsSyn
657+ Llvm.MetaData Llvm.PpLlvm Llvm.Types LlvmCodeGen LlvmCodeGen.Base
658+ LlvmCodeGen.CodeGen LlvmCodeGen.Data LlvmCodeGen.Ppr
659+ LlvmCodeGen.Regs LlvmMangler LoadIface Match MatchCon MatchLit
660+ Maybes MkCore MkGraph MkId MkIface Module MonadUtils NCGMonad Name
661+ NameCache NameEnv NameSet NameShape OccName OccurAnal OptCoercion
662+ OrdList Outputable PIC PPC.CodeGen PPC.Cond PPC.Instr PPC.Ppr
663+ PPC.RegInfo PPC.Regs PackageConfig Packages Pair Panic Parser
664+ PatSyn PipelineMonad PlainPanic PlatformConstants Plugins PprBase
665+ PprC PprCmm PprCmmDecl PprCmmExpr PprColour PprCore PprTyThing
666+ Predicate PrelInfo PrelNames PrelRules Pretty PrimOp ProfInit
667+ RdrHsSyn RdrName Reg RegAlloc.Graph.ArchBase RegAlloc.Graph.ArchX86
668+ RegAlloc.Graph.Coalesce RegAlloc.Graph.Main RegAlloc.Graph.Spill
669+ RegAlloc.Graph.SpillClean RegAlloc.Graph.SpillCost
670+ RegAlloc.Graph.Stats RegAlloc.Graph.TrivColorable
671+ RegAlloc.Linear.Base RegAlloc.Linear.FreeRegs
672+ RegAlloc.Linear.JoinToTargets RegAlloc.Linear.Main
673+ RegAlloc.Linear.PPC.FreeRegs RegAlloc.Linear.SPARC.FreeRegs
674+ RegAlloc.Linear.StackMap RegAlloc.Linear.State
675+ RegAlloc.Linear.Stats RegAlloc.Linear.X86.FreeRegs
676+ RegAlloc.Linear.X86_64.FreeRegs RegAlloc.Liveness RegClass RepType
677+ RnBinds RnEnv RnExpr RnFixity RnHsDoc RnModIface RnNames RnPat
678+ RnSource RnSplice RnTypes RnUnbound RnUtils RtClosureInspect Rules
679+ SAT SMRep SPARC.AddrMode SPARC.Base SPARC.CodeGen
680+ SPARC.CodeGen.Amode SPARC.CodeGen.Base SPARC.CodeGen.CondCode
681+ SPARC.CodeGen.Expand SPARC.CodeGen.Gen32 SPARC.CodeGen.Gen64
682+ SPARC.CodeGen.Sanity SPARC.Cond SPARC.Imm SPARC.Instr SPARC.Ppr
683+ SPARC.Regs SPARC.ShortcutJump SPARC.Stack SetLevels Settings
684+ SimplCore SimplEnv SimplMonad SimplStg SimplUtils Simplify
685+ SpecConstr Specialise SrcLoc State StaticPtrTable StgCse StgFVs
686+ StgLiftLams StgLiftLams.Analysis StgLiftLams.LiftM
687+ StgLiftLams.Transformation StgLint StgStats StgSubst StgSyn Stream
688+ StringBuffer SysTools SysTools.BaseDir SysTools.ExtraObj
689+ SysTools.Info SysTools.Process SysTools.Settings SysTools.Tasks
690+ SysTools.Terminal THNames TargetReg TcAnnotations TcArrows
691+ TcBackpack TcBinds TcCanonical TcClassDcl TcDefaults TcDeriv
692+ TcDerivInfer TcDerivUtils TcEnv TcErrors TcEvTerm TcEvidence TcExpr
693+ TcFlatten TcForeign TcGenDeriv TcGenFunctor TcGenGenerics
694+ TcHoleErrors TcHoleFitTypes TcHsSyn TcHsType TcIface TcInstDcls
695+ TcInteract TcMType TcMatches TcOrigin TcPat TcPatSyn TcPluginM
696+ TcRnDriver TcRnExports TcRnMonad TcRnTypes TcRules TcSMonad TcSigs
697+ TcSimplify TcSplice TcTyClsDecls TcTyDecls TcType TcTypeNats
698+ TcTypeable TcUnify TcValidity TidyPgm ToIface ToolSettings TrieMap
699+ TyCoFVs TyCoPpr TyCoRep TyCoSubst TyCoTidy TyCon Type TysPrim
700+ TysWiredIn UnVarGraph UnariseStg Unify UniqDFM UniqDSet UniqFM
701+ UniqMap UniqSet UniqSupply Unique Util Var VarEnv VarSet WorkWrap
702+ WwLib X86.CodeGen X86.Cond X86.Instr X86.Ppr X86.RegInfo X86.Regs
703+import-dirs:
704+library-dirs:
705+dynamic-library-dirs:
706+data-dir:
707+hs-libraries: HSghc-8.10.5
708+include-dirs:
709+depends:
710+ array-0.5.4.0 base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
711+ containers-0.6.4.1 deepseq-1.4.4.0 directory-1.3.6.0
712+ filepath-1.4.2.1 ghc-boot-8.10.5 ghc-boot-th-8.10.5 ghc-heap-8.10.5
713+ ghci-8.10.5 hpc-0.6.1.0 integer-gmp-1.0.3.0 process-1.6.9.0
714+ template-haskell-2.16.0.0 terminfo-0.4.1.4 time-1.9.3
715+ transformers-0.5.6.2 unix-2.7.2.2
716+haddock-interfaces:
717+haddock-html:
718+---
719+name: ghc-boot
720+version: 8.10.5
721+visibility: public
722+id: ghc-boot-8.10.5
723+key: ghc-boot-8.10.5
724+license: BSD-3-Clause
725+maintainer: ghc-devs@haskell.org
726+synopsis: Shared functionality between GHC and its boot libraries
727+description:
728+ This library is shared between GHC, ghc-pkg, and other boot
729+ libraries.
730+ A note about "GHC.PackageDb": it only deals with the subset of
731+ the package database that the compiler cares about: modules
732+ paths etc and not package metadata like description, authors
733+ etc. It is thus not a library interface to ghc-pkg and is *not*
734+ suitable for modifying GHC package databases.
735+ The package database format and this library are constructed in
736+ such a way that while ghc-pkg depends on Cabal, the GHC library
737+ and program do not have to depend on Cabal.
738+category: GHC
739+exposed: True
740+exposed-modules:
741+ GHC.BaseDir GHC.ForeignSrcLang GHC.HandleEncoding
742+ GHC.LanguageExtensions GHC.PackageDb GHC.Platform GHC.Platform.Host
743+ GHC.Serialized GHC.Settings GHC.UniqueSubdir GHC.Version
744+import-dirs:
745+library-dirs:
746+dynamic-library-dirs:
747+data-dir:
748+hs-libraries: HSghc-boot-8.10.5
749+depends:
750+ base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
751+ containers-0.6.4.1 directory-1.3.6.0 filepath-1.4.2.1
752+ ghc-boot-th-8.10.5
753+haddock-interfaces:
754+haddock-html:
755+---
756+name: ghc-boot-th
757+version: 8.10.5
758+visibility: public
759+id: ghc-boot-th-8.10.5
760+key: ghc-boot-th-8.10.5
761+license: BSD-3-Clause
762+maintainer: ghc-devs@haskell.org
763+synopsis:
764+ Shared functionality between GHC and the @template-haskell@
765+ library
766+description:
767+ This library contains various bits shared between the @ghc@ and
768+ @template-haskell@ libraries.
769+ This package exists to ensure that @template-haskell@ has a
770+ minimal set of transitive dependencies, since it is intended to
771+ be depended upon by user code.
772+category: GHC
773+exposed: True
774+exposed-modules:
775+ GHC.ForeignSrcLang.Type GHC.LanguageExtensions.Type GHC.Lexeme
776+import-dirs:
777+library-dirs:
778+dynamic-library-dirs:
779+data-dir:
780+hs-libraries: HSghc-boot-th-8.10.5
781+depends: base-4.14.2.0
782+haddock-interfaces:
783+haddock-html:
784+---
785+name: ghc-compact
786+version: 0.1.0.0
787+visibility: public
788+id: ghc-compact-0.1.0.0
789+key: ghc-compact-0.1.0.0
790+license: BSD-3-Clause
791+maintainer: libraries@haskell.org
792+synopsis: In memory storage of deeply evaluated data structure
793+description:
794+ This package provides minimal functionality for working with
795+ "compact regions", which hold a fully evaluated Haskell object graph.
796+ These regions maintain the invariant that no pointers live inside the struct
797+ that point outside it, which ensures efficient garbage collection without
798+ ever reading the structure contents (effectively, it works as a manually
799+ managed "oldest generation" which is never freed until the whole is
800+ released).
801+ Internally, the struct is stored a single contiguous block of memory,
802+ which allows efficient serialization and deserialization of structs
803+ for distributed computing.
804+category: Data
805+exposed: True
806+exposed-modules: GHC.Compact GHC.Compact.Serialized
807+import-dirs:
808+library-dirs:
809+dynamic-library-dirs:
810+data-dir:
811+hs-libraries: HSghc-compact-0.1.0.0
812+depends: base-4.14.2.0 bytestring-0.10.12.0 ghc-prim-0.6.1
813+haddock-interfaces:
814+haddock-html:
815+---
816+name: ghc-heap
817+version: 8.10.5
818+visibility: public
819+id: ghc-heap-8.10.5
820+key: ghc-heap-8.10.5
821+license: BSD-3-Clause
822+maintainer: libraries@haskell.org
823+synopsis: Functions for walking GHC's heap
824+description:
825+ This package provides functions for walking the GHC heap data structures
826+ and retrieving information about those data structures.
827+category: GHC
828+exposed: True
829+exposed-modules:
830+ GHC.Exts.Heap GHC.Exts.Heap.ClosureTypes GHC.Exts.Heap.Closures
831+ GHC.Exts.Heap.Constants GHC.Exts.Heap.InfoTable
832+ GHC.Exts.Heap.InfoTable.Types GHC.Exts.Heap.InfoTableProf
833+ GHC.Exts.Heap.Utils
834+import-dirs:
835+library-dirs:
836+dynamic-library-dirs:
837+data-dir:
838+hs-libraries: HSghc-heap-8.10.5
839+depends: base-4.14.2.0 ghc-prim-0.6.1 rts
840+haddock-interfaces:
841+haddock-html:
842+---
843+name: ghc-prim
844+version: 0.6.1
845+visibility: public
846+id: ghc-prim-0.6.1
847+key: ghc-prim-0.6.1
848+license: BSD-3-Clause
849+maintainer: libraries@haskell.org
850+synopsis: GHC primitives
851+description:
852+ This package contains the primitive types and operations supplied by GHC.
853+category: GHC
854+exposed: True
855+exposed-modules:
856+ GHC.CString GHC.Classes GHC.Debug GHC.IntWord64 GHC.Magic
857+ GHC.Prim.Ext GHC.PrimopWrappers GHC.Tuple GHC.Types GHC.Prim
858+import-dirs:
859+library-dirs:
860+dynamic-library-dirs:
861+data-dir:
862+hs-libraries: HSghc-prim-0.6.1
863+depends: rts
864+haddock-interfaces:
865+haddock-html:
866+---
867+name: ghci
868+version: 8.10.5
869+visibility: public
870+id: ghci-8.10.5
871+key: ghci-8.10.5
872+license: BSD-3-Clause
873+maintainer: ghc-devs@haskell.org
874+synopsis: The library supporting GHC's interactive interpreter
875+description:
876+ This library offers interfaces which mediate interactions between the
877+ @ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter
878+ backend.
879+category: GHC
880+exposed: True
881+exposed-modules:
882+ GHCi.BinaryArray GHCi.BreakArray GHCi.CreateBCO GHCi.FFI
883+ GHCi.InfoTable GHCi.Message GHCi.ObjLink GHCi.RemoteTypes
884+ GHCi.ResolvedBCO GHCi.Run GHCi.Signals GHCi.StaticPtrTable GHCi.TH
885+ GHCi.TH.Binary SizedSeq
886+import-dirs:
887+library-dirs:
888+dynamic-library-dirs:
889+data-dir:
890+hs-libraries: HSghci-8.10.5
891+include-dirs:
892+depends:
893+ array-0.5.4.0 base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
894+ containers-0.6.4.1 deepseq-1.4.4.0 filepath-1.4.2.1 ghc-boot-8.10.5
895+ ghc-boot-th-8.10.5 ghc-heap-8.10.5 rts template-haskell-2.16.0.0
896+ transformers-0.5.6.2 unix-2.7.2.2
897+haddock-interfaces:
898+haddock-html:
899+---
900+name: haskeline
901+version: 0.8.0.1
902+visibility: public
903+id: haskeline-0.8.0.1
904+key: haskeline-0.8.0.1
905+license: BSD-3-Clause
906+copyright: (c) Judah Jacobson
907+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
908+author: Judah Jacobson
909+stability: Stable
910+homepage: https://github.com/judah/haskeline
911+synopsis:
912+ A command-line interface for user input, written in Haskell.
913+description:
914+ Haskeline provides a user interface for line input in command-line
915+ programs. This library is similar in purpose to readline, but since
916+ it is written in Haskell it is (hopefully) more easily used in other
917+ Haskell programs.
918+ Haskeline runs both on POSIX-compatible systems and on Windows.
919+category: User Interfaces
920+exposed: True
921+exposed-modules:
922+ System.Console.Haskeline System.Console.Haskeline.Completion
923+ System.Console.Haskeline.History System.Console.Haskeline.IO
924+ System.Console.Haskeline.Internal
925+hidden-modules:
926+ System.Console.Haskeline.Backend
927+ System.Console.Haskeline.Backend.WCWidth
928+ System.Console.Haskeline.Command
929+ System.Console.Haskeline.Command.Completion
930+ System.Console.Haskeline.Command.History
931+ System.Console.Haskeline.Command.KillRing
932+ System.Console.Haskeline.Directory System.Console.Haskeline.Emacs
933+ System.Console.Haskeline.InputT System.Console.Haskeline.Key
934+ System.Console.Haskeline.LineState System.Console.Haskeline.Monads
935+ System.Console.Haskeline.Prefs System.Console.Haskeline.Recover
936+ System.Console.Haskeline.RunCommand System.Console.Haskeline.Term
937+ System.Console.Haskeline.Command.Undo System.Console.Haskeline.Vi
938+ System.Console.Haskeline.Backend.Posix
939+ System.Console.Haskeline.Backend.Posix.Encoder
940+ System.Console.Haskeline.Backend.DumbTerm
941+ System.Console.Haskeline.Backend.Terminfo
942+import-dirs:
943+library-dirs:
944+dynamic-library-dirs:
945+data-dir:
946+hs-libraries: HShaskeline-0.8.0.1
947+depends:
948+ base-4.14.2.0 bytestring-0.10.12.0 containers-0.6.4.1
949+ directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
950+ process-1.6.9.0 stm-2.5.0.1 terminfo-0.4.1.4 transformers-0.5.6.2
951+ unix-2.7.2.2
952+haddock-interfaces:
953+haddock-html:
954+---
955+name: hpc
956+version: 0.6.1.0
957+visibility: public
958+id: hpc-0.6.1.0
959+key: hpc-0.6.1.0
960+license: BSD-3-Clause
961+maintainer: ghc-devs@haskell.org
962+author: Andy Gill
963+synopsis: Code Coverage Library for Haskell
964+description:
965+ This package provides the code coverage library for Haskell.
966+ See <http://www.haskell.org/haskellwiki/Haskell_program_coverage> for more
967+ information.
968+category: Control
969+exposed: True
970+exposed-modules:
971+ Trace.Hpc.Mix Trace.Hpc.Reflect Trace.Hpc.Tix Trace.Hpc.Util
972+import-dirs:
973+library-dirs:
974+dynamic-library-dirs:
975+data-dir:
976+hs-libraries: HShpc-0.6.1.0
977+depends:
978+ base-4.14.2.0 containers-0.6.4.1 deepseq-1.4.4.0 directory-1.3.6.0
979+ filepath-1.4.2.1 time-1.9.3
980+haddock-interfaces:
981+haddock-html:
982+---
983+name: integer-gmp
984+version: 1.0.3.0
985+visibility: public
986+id: integer-gmp-1.0.3.0
987+key: integer-gmp-1.0.3.0
988+license: BSD-3-Clause
989+maintainer: hvr@gnu.org
990+author: Herbert Valerio Riedel
991+synopsis: Integer library based on GMP
992+description:
993+ This package provides the low-level implementation of the standard
994+ 'Integer' type based on the
995+ <http://gmplib.org/ GNU Multiple Precision Arithmetic Library (GMP)>.
996+ This package provides access to the internal representation of
997+ 'Integer' as well as primitive operations with no proper error
998+ handling, and should only be used directly with the utmost care.
999+category: Numeric, Algebra
1000+exposed: True
1001+exposed-modules:
1002+ GHC.Integer GHC.Integer.GMP.Internals GHC.Integer.Logarithms
1003+ GHC.Integer.Logarithms.Internals
1004+hidden-modules: GHC.Integer.Type
1005+import-dirs:
1006+library-dirs:
1007+dynamic-library-dirs:
1008+data-dir:
1009+hs-libraries: HSinteger-gmp-1.0.3.0
1010+extra-libraries: gmp
1011+include-dirs:
1012+depends: ghc-prim-0.6.1
1013+haddock-interfaces:
1014+haddock-html:
1015+---
1016+name: libiserv
1017+version: 8.10.5
1018+visibility: public
1019+id: libiserv-8.10.5
1020+key: libiserv-8.10.5
1021+license: BSD-3-Clause
1022+copyright: XXX
1023+maintainer: XXX
1024+author: XXX
1025+synopsis: Provides shared functionality between iserv and iserv-proxy
1026+category: Development
1027+exposed: True
1028+exposed-modules: GHCi.Utils Lib
1029+import-dirs:
1030+library-dirs:
1031+dynamic-library-dirs:
1032+data-dir:
1033+hs-libraries: HSlibiserv-8.10.5
1034+depends:
1035+ base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
1036+ containers-0.6.4.1 deepseq-1.4.4.0 ghci-8.10.5 unix-2.7.2.2
1037+haddock-interfaces:
1038+haddock-html:
1039+---
1040+name: mtl
1041+version: 2.2.2
1042+visibility: public
1043+id: mtl-2.2.2
1044+key: mtl-2.2.2
1045+license: BSD-3-Clause
1046+maintainer: Edward Kmett <ekmett@gmail.com>
1047+author: Andy Gill
1048+homepage: http://github.com/haskell/mtl
1049+synopsis: Monad classes, using functional dependencies
1050+description:
1051+ Monad classes using functional dependencies, with instances
1052+ for various monad transformers, inspired by the paper
1053+ /Functional Programming with Overloading and Higher-Order Polymorphism/,
1054+ by Mark P Jones, in /Advanced School of Functional Programming/, 1995
1055+ (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
1056+category: Control
1057+exposed: True
1058+exposed-modules:
1059+ Control.Monad.Cont Control.Monad.Cont.Class Control.Monad.Error
1060+ Control.Monad.Error.Class Control.Monad.Except
1061+ Control.Monad.Identity Control.Monad.List Control.Monad.RWS
1062+ Control.Monad.RWS.Class Control.Monad.RWS.Lazy
1063+ Control.Monad.RWS.Strict Control.Monad.Reader
1064+ Control.Monad.Reader.Class Control.Monad.State
1065+ Control.Monad.State.Class Control.Monad.State.Lazy
1066+ Control.Monad.State.Strict Control.Monad.Trans Control.Monad.Writer
1067+ Control.Monad.Writer.Class Control.Monad.Writer.Lazy
1068+ Control.Monad.Writer.Strict
1069+import-dirs:
1070+library-dirs:
1071+dynamic-library-dirs:
1072+data-dir:
1073+hs-libraries: HSmtl-2.2.2
1074+depends: base-4.14.2.0 transformers-0.5.6.2
1075+haddock-interfaces:
1076+haddock-html:
1077+---
1078+name: parsec
1079+version: 3.1.14.0
1080+visibility: public
1081+id: parsec-3.1.14.0
1082+key: parsec-3.1.14.0
1083+license: BSD-3-Clause
1084+maintainer: Herbert Valerio Riedel <hvr@gnu.org>
1085+author:
1086+ Daan Leijen <daan@microsoft.com>, Paolo Martini <paolo@nemail.it>, Antoine Latter <aslatter@gmail.com>
1087+homepage: https://github.com/haskell/parsec
1088+synopsis: Monadic parser combinators
1089+description:
1090+ Parsec is designed from scratch as an industrial-strength parser
1091+ library. It is simple, safe, well documented (on the package
1092+ homepage), has extensive libraries, good error messages,
1093+ and is fast. It is defined as a monad transformer that can be
1094+ stacked on arbitrary monads, and it is also parametric in the
1095+ input stream type.
1096+ The main entry point is the "Text.Parsec" module which provides
1097+ defaults for parsing 'Char'acter data.
1098+ The "Text.ParserCombinators.Parsec" module hierarchy contains
1099+ the legacy @parsec-2@ API and may be removed at some point in
1100+ the future.
1101+category: Parsing
1102+exposed: True
1103+exposed-modules:
1104+ Text.Parsec Text.Parsec.ByteString Text.Parsec.ByteString.Lazy
1105+ Text.Parsec.Char Text.Parsec.Combinator Text.Parsec.Error
1106+ Text.Parsec.Expr Text.Parsec.Language Text.Parsec.Perm
1107+ Text.Parsec.Pos Text.Parsec.Prim Text.Parsec.String
1108+ Text.Parsec.Text Text.Parsec.Text.Lazy Text.Parsec.Token
1109+ Text.ParserCombinators.Parsec Text.ParserCombinators.Parsec.Char
1110+ Text.ParserCombinators.Parsec.Combinator
1111+ Text.ParserCombinators.Parsec.Error
1112+ Text.ParserCombinators.Parsec.Expr
1113+ Text.ParserCombinators.Parsec.Language
1114+ Text.ParserCombinators.Parsec.Perm
1115+ Text.ParserCombinators.Parsec.Pos
1116+ Text.ParserCombinators.Parsec.Prim
1117+ Text.ParserCombinators.Parsec.Token
1118+import-dirs:
1119+library-dirs:
1120+dynamic-library-dirs:
1121+data-dir:
1122+hs-libraries: HSparsec-3.1.14.0
1123+depends:
1124+ base-4.14.2.0 bytestring-0.10.12.0 mtl-2.2.2 text-1.2.4.1
1125+haddock-interfaces:
1126+haddock-html:
1127+---
1128+name: pretty
1129+version: 1.1.3.6
1130+visibility: public
1131+id: pretty-1.1.3.6
1132+key: pretty-1.1.3.6
1133+license: BSD-3-Clause
1134+maintainer: David Terei <code@davidterei.com>
1135+stability: Stable
1136+homepage: http://github.com/haskell/pretty
1137+synopsis: Pretty-printing library
1138+description:
1139+ This package contains a pretty-printing library, a set of API's
1140+ that provides a way to easily print out text in a consistent
1141+ format of your choosing. This is useful for compilers and related
1142+ tools.
1143+ This library was originally designed by John Hughes's and has since
1144+ been heavily modified by Simon Peyton Jones.
1145+category: Text
1146+exposed: True
1147+exposed-modules:
1148+ Text.PrettyPrint Text.PrettyPrint.Annotated
1149+ Text.PrettyPrint.Annotated.HughesPJ
1150+ Text.PrettyPrint.Annotated.HughesPJClass Text.PrettyPrint.HughesPJ
1151+ Text.PrettyPrint.HughesPJClass
1152+import-dirs:
1153+library-dirs:
1154+dynamic-library-dirs:
1155+data-dir:
1156+hs-libraries: HSpretty-1.1.3.6
1157+depends: base-4.14.2.0 deepseq-1.4.4.0 ghc-prim-0.6.1
1158+haddock-interfaces:
1159+haddock-html:
1160+---
1161+name: process
1162+version: 1.6.9.0
1163+visibility: public
1164+id: process-1.6.9.0
1165+key: process-1.6.9.0
1166+license: BSD-3-Clause
1167+maintainer: libraries@haskell.org
1168+synopsis: Process libraries
1169+description:
1170+ This package contains libraries for dealing with system processes.
1171+ The typed-process package is a more recent take on a process API,
1172+ which uses this package internally. It features better binary
1173+ support, easier concurrency, and a more composable API. You can
1174+ read more about it at
1175+ <https://github.com/fpco/typed-process/#readme>.
1176+category: System
1177+exposed: True
1178+exposed-modules: System.Cmd System.Process System.Process.Internals
1179+hidden-modules: System.Process.Common System.Process.Posix
1180+import-dirs:
1181+library-dirs:
1182+dynamic-library-dirs:
1183+data-dir:
1184+hs-libraries: HSprocess-1.6.9.0
1185+include-dirs:
1186+includes: runProcess.h
1187+depends:
1188+ base-4.14.2.0 deepseq-1.4.4.0 directory-1.3.6.0 filepath-1.4.2.1
1189+ unix-2.7.2.2
1190+haddock-interfaces:
1191+haddock-html:
1192+---
1193+name: stm
1194+version: 2.5.0.1
1195+visibility: public
1196+id: stm-2.5.0.1
1197+key: stm-2.5.0.1
1198+license: BSD-3-Clause
1199+maintainer: libraries@haskell.org
1200+homepage: https://wiki.haskell.org/Software_transactional_memory
1201+synopsis: Software Transactional Memory
1202+description:
1203+ Software Transactional Memory, or STM, is an abstraction for
1204+ concurrent communication. The main benefits of STM are
1205+ /composability/ and /modularity/. That is, using STM you can write
1206+ concurrent abstractions that can be easily composed with any other
1207+ abstraction built using STM, without exposing the details of how
1208+ your abstraction ensures safety. This is typically not the case
1209+ with other forms of concurrent communication, such as locks or
1210+ 'MVar's.
1211+category: Concurrency
1212+exposed: True
1213+exposed-modules:
1214+ Control.Concurrent.STM Control.Concurrent.STM.TArray
1215+ Control.Concurrent.STM.TBQueue Control.Concurrent.STM.TChan
1216+ Control.Concurrent.STM.TMVar Control.Concurrent.STM.TQueue
1217+ Control.Concurrent.STM.TSem Control.Concurrent.STM.TVar
1218+ Control.Monad.STM
1219+hidden-modules: Control.Sequential.STM
1220+import-dirs:
1221+library-dirs:
1222+dynamic-library-dirs:
1223+data-dir:
1224+hs-libraries: HSstm-2.5.0.1
1225+depends: array-0.5.4.0 base-4.14.2.0
1226+haddock-interfaces:
1227+haddock-html:
1228+---
1229+name: template-haskell
1230+version: 2.16.0.0
1231+visibility: public
1232+id: template-haskell-2.16.0.0
1233+key: template-haskell-2.16.0.0
1234+license: BSD-3-Clause
1235+maintainer: libraries@haskell.org
1236+synopsis: Support library for Template Haskell
1237+description:
1238+ This package provides modules containing facilities for manipulating
1239+ Haskell source code using Template Haskell.
1240+ See <http://www.haskell.org/haskellwiki/Template_Haskell> for more
1241+ information.
1242+category: Template Haskell
1243+exposed: True
1244+exposed-modules:
1245+ Language.Haskell.TH Language.Haskell.TH.LanguageExtensions
1246+ Language.Haskell.TH.Lib Language.Haskell.TH.Lib.Internal
1247+ Language.Haskell.TH.Ppr Language.Haskell.TH.PprLib
1248+ Language.Haskell.TH.Quote Language.Haskell.TH.Syntax
1249+hidden-modules: Language.Haskell.TH.Lib.Map
1250+import-dirs:
1251+library-dirs:
1252+dynamic-library-dirs:
1253+data-dir:
1254+hs-libraries: HStemplate-haskell-2.16.0.0
1255+depends:
1256+ base-4.14.2.0 ghc-boot-th-8.10.5 ghc-prim-0.6.1 pretty-1.1.3.6
1257+haddock-interfaces:
1258+haddock-html:
1259+---
1260+name: terminfo
1261+version: 0.4.1.4
1262+visibility: public
1263+id: terminfo-0.4.1.4
1264+key: terminfo-0.4.1.4
1265+license: BSD-3-Clause
1266+copyright: (c) Judah Jacobson
1267+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
1268+author: Judah Jacobson
1269+stability: Stable
1270+homepage: https://github.com/judah/terminfo
1271+synopsis: Haskell bindings to the terminfo library.
1272+description:
1273+ This library provides an interface to the terminfo database (via bindings to the
1274+ curses library). <http://en.wikipedia.org/wiki/Terminfo Terminfo> allows POSIX
1275+ systems to interact with a variety of terminals using a standard set of capabilities.
1276+category: User Interfaces
1277+exposed: True
1278+exposed-modules:
1279+ System.Console.Terminfo System.Console.Terminfo.Base
1280+ System.Console.Terminfo.Color System.Console.Terminfo.Cursor
1281+ System.Console.Terminfo.Edit System.Console.Terminfo.Effects
1282+ System.Console.Terminfo.Keys
1283+import-dirs:
1284+library-dirs:
1285+dynamic-library-dirs:
1286+data-dir:
1287+hs-libraries: HSterminfo-0.4.1.4
1288+extra-libraries: tinfo
1289+depends: base-4.14.2.0
1290+haddock-interfaces:
1291+haddock-html:
1292+---
1293+name: text
1294+version: 1.2.4.1
1295+visibility: public
1296+id: text-1.2.4.1
1297+key: text-1.2.4.1
1298+license: BSD-2-Clause
1299+copyright: 2009-2011 Bryan O'Sullivan, 2008-2009 Tom Harper
1300+maintainer:
1301+ Bryan O'Sullivan <bos@serpentine.com>, Herbert Valerio Riedel <hvr@gnu.org>
1302+author: Bryan O'Sullivan <bos@serpentine.com>
1303+homepage: https://github.com/haskell/text
1304+synopsis: An efficient packed Unicode text type.
1305+description:
1306+ An efficient packed, immutable Unicode text type (both strict and
1307+ lazy), with a powerful loop fusion optimization framework.
1308+ The 'Text' type represents Unicode character strings, in a time and
1309+ space-efficient manner. This package provides text processing
1310+ capabilities that are optimized for performance critical use, both
1311+ in terms of large data quantities and high speed.
1312+ The 'Text' type provides character-encoding, type-safe case
1313+ conversion via whole-string case conversion functions (see "Data.Text").
1314+ It also provides a range of functions for converting 'Text' values to
1315+ and from 'ByteStrings', using several standard encodings
1316+ (see "Data.Text.Encoding").
1317+ Efficient locale-sensitive support for text IO is also supported
1318+ (see "Data.Text.IO").
1319+ These modules are intended to be imported qualified, to avoid name
1320+ clashes with Prelude functions, e.g.
1321+ > import qualified Data.Text as T
1322+ == ICU Support
1323+ To use an extended and very rich family of functions for working
1324+ with Unicode text (including normalization, regular expressions,
1325+ non-standard encodings, text breaking, and locales), see
1326+ the [text-icu package](https://hackage.haskell.org/package/text-icu)
1327+ based on the well-respected and liberally
1328+ licensed [ICU library](http://site.icu-project.org/).
1329+ == Internal Representation: UTF-16 vs. UTF-8
1330+ Currently the @text@ library uses UTF-16 as its internal representation
1331+ which is [neither a fixed-width nor always the most dense representation](http://utf8everywhere.org/)
1332+ for Unicode text. We're currently investigating the feasibility
1333+ of [changing Text's internal representation to UTF-8](https://github.com/text-utf8)
1334+ and if you need such a 'Text' type right now you might be interested in using the spin-off
1335+ packages <https://hackage.haskell.org/package/text-utf8 text-utf8> and
1336+ <https://hackage.haskell.org/package/text-short text-short>.
1337+category: Data, Text
1338+exposed: True
1339+exposed-modules:
1340+ Data.Text Data.Text.Array Data.Text.Encoding
1341+ Data.Text.Encoding.Error Data.Text.Foreign Data.Text.IO
1342+ Data.Text.Internal Data.Text.Internal.Builder
1343+ Data.Text.Internal.Builder.Functions
1344+ Data.Text.Internal.Builder.Int.Digits
1345+ Data.Text.Internal.Builder.RealFloat.Functions
1346+ Data.Text.Internal.ByteStringCompat
1347+ Data.Text.Internal.Encoding.Fusion
1348+ Data.Text.Internal.Encoding.Fusion.Common
1349+ Data.Text.Internal.Encoding.Utf16 Data.Text.Internal.Encoding.Utf32
1350+ Data.Text.Internal.Encoding.Utf8 Data.Text.Internal.Functions
1351+ Data.Text.Internal.Fusion Data.Text.Internal.Fusion.CaseMapping
1352+ Data.Text.Internal.Fusion.Common Data.Text.Internal.Fusion.Size
1353+ Data.Text.Internal.Fusion.Types Data.Text.Internal.IO
1354+ Data.Text.Internal.Lazy Data.Text.Internal.Lazy.Encoding.Fusion
1355+ Data.Text.Internal.Lazy.Fusion Data.Text.Internal.Lazy.Search
1356+ Data.Text.Internal.Private Data.Text.Internal.Read
1357+ Data.Text.Internal.Search Data.Text.Internal.Unsafe
1358+ Data.Text.Internal.Unsafe.Char Data.Text.Internal.Unsafe.Shift
1359+ Data.Text.Lazy Data.Text.Lazy.Builder Data.Text.Lazy.Builder.Int
1360+ Data.Text.Lazy.Builder.RealFloat Data.Text.Lazy.Encoding
1361+ Data.Text.Lazy.IO Data.Text.Lazy.Internal Data.Text.Lazy.Read
1362+ Data.Text.Read Data.Text.Unsafe
1363+hidden-modules: Data.Text.Show
1364+import-dirs:
1365+library-dirs:
1366+dynamic-library-dirs:
1367+data-dir:
1368+hs-libraries: HStext-1.2.4.1
1369+depends:
1370+ array-0.5.4.0 base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
1371+ deepseq-1.4.4.0 ghc-prim-0.6.1 integer-gmp-1.0.3.0
1372+ template-haskell-2.16.0.0
1373+haddock-interfaces:
1374+haddock-html:
1375+---
1376+name: time
1377+version: 1.9.3
1378+visibility: public
1379+id: time-1.9.3
1380+key: time-1.9.3
1381+license: BSD-3-Clause
1382+maintainer: <ashley@semantic.org>
1383+author: Ashley Yakeley
1384+stability: stable
1385+homepage: https://github.com/haskell/time
1386+synopsis: A time library
1387+description: Time, clocks and calendars
1388+category: Time
1389+exposed: True
1390+exposed-modules:
1391+ Data.Time Data.Time.Calendar Data.Time.Calendar.Easter
1392+ Data.Time.Calendar.Julian Data.Time.Calendar.MonthDay
1393+ Data.Time.Calendar.OrdinalDate Data.Time.Calendar.WeekDate
1394+ Data.Time.Clock Data.Time.Clock.POSIX Data.Time.Clock.System
1395+ Data.Time.Clock.TAI Data.Time.Format Data.Time.Format.ISO8601
1396+ Data.Time.Format.Internal Data.Time.LocalTime
1397+hidden-modules:
1398+ Data.Format Data.Time.Calendar.Private Data.Time.Calendar.Days
1399+ Data.Time.Calendar.Gregorian Data.Time.Calendar.CalendarDiffDays
1400+ Data.Time.Calendar.Week Data.Time.Calendar.JulianYearDay
1401+ Data.Time.Clock.Internal.DiffTime
1402+ Data.Time.Clock.Internal.AbsoluteTime
1403+ Data.Time.Clock.Internal.NominalDiffTime
1404+ Data.Time.Clock.Internal.POSIXTime
1405+ Data.Time.Clock.Internal.UniversalTime
1406+ Data.Time.Clock.Internal.SystemTime
1407+ Data.Time.Clock.Internal.UTCTime Data.Time.Clock.Internal.CTimeval
1408+ Data.Time.Clock.Internal.CTimespec Data.Time.Clock.Internal.UTCDiff
1409+ Data.Time.LocalTime.Internal.TimeZone
1410+ Data.Time.LocalTime.Internal.TimeOfDay
1411+ Data.Time.LocalTime.Internal.CalendarDiffTime
1412+ Data.Time.LocalTime.Internal.LocalTime
1413+ Data.Time.LocalTime.Internal.ZonedTime Data.Time.Format.Parse
1414+ Data.Time.Format.Locale Data.Time.Format.Format.Class
1415+ Data.Time.Format.Format.Instances Data.Time.Format.Parse.Class
1416+ Data.Time.Format.Parse.Instances
1417+import-dirs:
1418+library-dirs:
1419+dynamic-library-dirs:
1420+data-dir:
1421+hs-libraries: HStime-1.9.3
1422+include-dirs:
1423+depends: base-4.14.2.0 deepseq-1.4.4.0
1424+haddock-interfaces:
1425+haddock-html:
1426+---
1427+name: transformers
1428+version: 0.5.6.2
1429+visibility: public
1430+id: transformers-0.5.6.2
1431+key: transformers-0.5.6.2
1432+license: BSD-3-Clause
1433+maintainer: Ross Paterson <R.Paterson@city.ac.uk>
1434+author: Andy Gill, Ross Paterson
1435+synopsis: Concrete functor and monad transformers
1436+description:
1437+ A portable library of functor and monad transformers, inspired by
1438+ the paper
1439+ * \"Functional Programming with Overloading and Higher-Order
1440+ Polymorphism\", by Mark P Jones,
1441+ in /Advanced School of Functional Programming/, 1995
1442+ (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
1443+ This package contains:
1444+ * the monad transformer class (in "Control.Monad.Trans.Class")
1445+ * concrete functor and monad transformers, each with associated
1446+ operations and functions to lift operations associated with other
1447+ transformers.
1448+ The package can be used on its own in portable Haskell code, in
1449+ which case operations need to be manually lifted through transformer
1450+ stacks (see "Control.Monad.Trans.Class" for some examples).
1451+ Alternatively, it can be used with the non-portable monad classes in
1452+ the @mtl@ or @monads-tf@ packages, which automatically lift operations
1453+ introduced by monad transformers through other transformers.
1454+category: Control
1455+exposed: True
1456+exposed-modules:
1457+ Control.Applicative.Backwards Control.Applicative.Lift
1458+ Control.Monad.Signatures Control.Monad.Trans.Accum
1459+ Control.Monad.Trans.Class Control.Monad.Trans.Cont
1460+ Control.Monad.Trans.Error Control.Monad.Trans.Except
1461+ Control.Monad.Trans.Identity Control.Monad.Trans.List
1462+ Control.Monad.Trans.Maybe Control.Monad.Trans.RWS
1463+ Control.Monad.Trans.RWS.CPS Control.Monad.Trans.RWS.Lazy
1464+ Control.Monad.Trans.RWS.Strict Control.Monad.Trans.Reader
1465+ Control.Monad.Trans.Select Control.Monad.Trans.State
1466+ Control.Monad.Trans.State.Lazy Control.Monad.Trans.State.Strict
1467+ Control.Monad.Trans.Writer Control.Monad.Trans.Writer.CPS
1468+ Control.Monad.Trans.Writer.Lazy Control.Monad.Trans.Writer.Strict
1469+ Data.Functor.Constant Data.Functor.Reverse
1470+import-dirs:
1471+library-dirs:
1472+dynamic-library-dirs:
1473+data-dir:
1474+hs-libraries: HStransformers-0.5.6.2
1475+depends: base-4.14.2.0
1476+haddock-interfaces:
1477+haddock-html:
1478+---
1479+name: unix
1480+version: 2.7.2.2
1481+visibility: public
1482+id: unix-2.7.2.2
1483+key: unix-2.7.2.2
1484+license: BSD-3-Clause
1485+maintainer: libraries@haskell.org
1486+homepage: https://github.com/haskell/unix
1487+synopsis: POSIX functionality
1488+description:
1489+ This package gives you access to the set of operating system
1490+ services standardised by
1491+ <http://pubs.opengroup.org/onlinepubs/9699919799/ POSIX.1-2008>
1492+ (or the IEEE Portable Operating System Interface for Computing
1493+ Environments - IEEE Std. 1003.1).
1494+ The package is not supported under Windows.
1495+category: System
1496+exposed: True
1497+exposed-modules:
1498+ System.Posix System.Posix.ByteString
1499+ System.Posix.ByteString.FilePath System.Posix.Directory
1500+ System.Posix.Directory.ByteString System.Posix.DynamicLinker
1501+ System.Posix.DynamicLinker.ByteString
1502+ System.Posix.DynamicLinker.Module
1503+ System.Posix.DynamicLinker.Module.ByteString
1504+ System.Posix.DynamicLinker.Prim System.Posix.Env
1505+ System.Posix.Env.ByteString System.Posix.Error System.Posix.Fcntl
1506+ System.Posix.Files System.Posix.Files.ByteString System.Posix.IO
1507+ System.Posix.IO.ByteString System.Posix.Process
1508+ System.Posix.Process.ByteString System.Posix.Process.Internals
1509+ System.Posix.Resource System.Posix.Semaphore System.Posix.SharedMem
1510+ System.Posix.Signals System.Posix.Signals.Exts System.Posix.Temp
1511+ System.Posix.Temp.ByteString System.Posix.Terminal
1512+ System.Posix.Terminal.ByteString System.Posix.Time
1513+ System.Posix.Unistd System.Posix.User
1514+hidden-modules:
1515+ System.Posix.Directory.Common System.Posix.DynamicLinker.Common
1516+ System.Posix.Files.Common System.Posix.IO.Common
1517+ System.Posix.Process.Common System.Posix.Terminal.Common
1518+import-dirs:
1519+library-dirs:
1520+dynamic-library-dirs:
1521+data-dir:
1522+hs-libraries: HSunix-2.7.2.2
1523+include-dirs:
1524+includes: HsUnix.h execvpe.h
1525+depends: base-4.14.2.0 bytestring-0.10.12.0 time-1.9.3
1526+haddock-interfaces:
1527+haddock-html:
1528+---
1529+name: xhtml
1530+version: 3000.2.2.1
1531+visibility: public
1532+id: xhtml-3000.2.2.1
1533+key: xhtml-3000.2.2.1
1534+license: BSD-3-Clause
1535+copyright:
1536+ Bjorn Bringert 2004-2006, Andy Gill and the Oregon
1537+ Graduate Institute of Science and Technology, 1999-2001
1538+maintainer: Chris Dornan <chris@chrisdornan.com>
1539+author: Bjorn Bringert
1540+stability: Stable
1541+homepage: https://github.com/haskell/xhtml
1542+synopsis: An XHTML combinator library
1543+description:
1544+ This package provides combinators for producing
1545+ XHTML 1.0, including the Strict, Transitional and
1546+ Frameset variants.
1547+category: Web, XML, Pretty Printer
1548+exposed: True
1549+exposed-modules:
1550+ Text.XHtml Text.XHtml.Debug Text.XHtml.Frameset Text.XHtml.Strict
1551+ Text.XHtml.Table Text.XHtml.Transitional
1552+hidden-modules:
1553+ Text.XHtml.Strict.Attributes Text.XHtml.Strict.Elements
1554+ Text.XHtml.Frameset.Attributes Text.XHtml.Frameset.Elements
1555+ Text.XHtml.Transitional.Attributes Text.XHtml.Transitional.Elements
1556+ Text.XHtml.BlockTable Text.XHtml.Extras Text.XHtml.Internals
1557+import-dirs:
1558+library-dirs:
1559+dynamic-library-dirs:
1560+data-dir:
1561+hs-libraries: HSxhtml-3000.2.2.1
1562+depends: base-4.14.2.0
1563+haddock-interfaces:
1564+haddock-html:
1565+---
1566+name: rts
1567+version: 1.0.1
1568+visibility: public
1569+id: rts
1570+key: rts
1571+license: BSD-3-Clause
1572+maintainer: glasgow-haskell-users@haskell.org
1573+exposed: True
1574+library-dirs:
1575+hs-libraries: HSrts
1576+extra-libraries: m dl ffi
1577+include-dirs:
1578+includes: Stg.h
1579+ld-options:
1580+ "-Wl,-u,_base_GHCziTopHandler_runIO_closure"
1581+ "-Wl,-u,_base_GHCziTopHandler_runNonIO_closure"
1582+ "-Wl,-u,_ghczmprim_GHCziTuple_Z0T_closure"
1583+ "-Wl,-u,_ghczmprim_GHCziTypes_True_closure"
1584+ "-Wl,-u,_ghczmprim_GHCziTypes_False_closure"
1585+ "-Wl,-u,_base_GHCziPack_unpackCString_closure"
1586+ "-Wl,-u,_base_GHCziWeak_runFinalizzerBatch_closure"
1587+ "-Wl,-u,_base_GHCziIOziException_stackOverflow_closure"
1588+ "-Wl,-u,_base_GHCziIOziException_heapOverflow_closure"
1589+ "-Wl,-u,_base_GHCziIOziException_allocationLimitExceeded_closure"
1590+ "-Wl,-u,_base_GHCziIOziException_blockedIndefinitelyOnMVar_closure"
1591+ "-Wl,-u,_base_GHCziIOziException_blockedIndefinitelyOnSTM_closure"
1592+ "-Wl,-u,_base_GHCziIOziException_cannotCompactFunction_closure"
1593+ "-Wl,-u,_base_GHCziIOziException_cannotCompactPinned_closure"
1594+ "-Wl,-u,_base_GHCziIOziException_cannotCompactMutable_closure"
1595+ "-Wl,-u,_base_ControlziExceptionziBase_absentSumFieldError_closure"
1596+ "-Wl,-u,_base_ControlziExceptionziBase_nonTermination_closure"
1597+ "-Wl,-u,_base_ControlziExceptionziBase_nestedAtomically_closure"
1598+ "-Wl,-u,_base_GHCziEventziThread_blockedOnBadFD_closure"
1599+ "-Wl,-u,_base_GHCziConcziSync_runSparks_closure"
1600+ "-Wl,-u,_base_GHCziConcziIO_ensureIOManagerIsRunning_closure"
1601+ "-Wl,-u,_base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure"
1602+ "-Wl,-u,_base_GHCziConcziSignal_runHandlersPtr_closure"
1603+ "-Wl,-u,_base_GHCziTopHandler_flushStdHandles_closure"
1604+ "-Wl,-u,_base_GHCziTopHandler_runMainIO_closure"
1605+ "-Wl,-u,_ghczmprim_GHCziTypes_Czh_con_info"
1606+ "-Wl,-u,_ghczmprim_GHCziTypes_Izh_con_info"
1607+ "-Wl,-u,_ghczmprim_GHCziTypes_Fzh_con_info"
1608+ "-Wl,-u,_ghczmprim_GHCziTypes_Dzh_con_info"
1609+ "-Wl,-u,_ghczmprim_GHCziTypes_Wzh_con_info"
1610+ "-Wl,-u,_base_GHCziPtr_Ptr_con_info"
1611+ "-Wl,-u,_base_GHCziPtr_FunPtr_con_info"
1612+ "-Wl,-u,_base_GHCziInt_I8zh_con_info"
1613+ "-Wl,-u,_base_GHCziInt_I16zh_con_info"
1614+ "-Wl,-u,_base_GHCziInt_I32zh_con_info"
1615+ "-Wl,-u,_base_GHCziInt_I64zh_con_info"
1616+ "-Wl,-u,_base_GHCziWord_W8zh_con_info"
1617+ "-Wl,-u,_base_GHCziWord_W16zh_con_info"
1618+ "-Wl,-u,_base_GHCziWord_W32zh_con_info"
1619+ "-Wl,-u,_base_GHCziWord_W64zh_con_info"
1620+ "-Wl,-u,_base_GHCziStable_StablePtr_con_info"
1621+ "-Wl,-u,_hs_atomic_add8" "-Wl,-u,_hs_atomic_add16"
1622+ "-Wl,-u,_hs_atomic_add32" "-Wl,-u,_hs_atomic_add64"
1623+ "-Wl,-u,_hs_atomic_sub8" "-Wl,-u,_hs_atomic_sub16"
1624+ "-Wl,-u,_hs_atomic_sub32" "-Wl,-u,_hs_atomic_sub64"
1625+ "-Wl,-u,_hs_atomic_and8" "-Wl,-u,_hs_atomic_and16"
1626+ "-Wl,-u,_hs_atomic_and32" "-Wl,-u,_hs_atomic_and64"
1627+ "-Wl,-u,_hs_atomic_nand8" "-Wl,-u,_hs_atomic_nand16"
1628+ "-Wl,-u,_hs_atomic_nand32" "-Wl,-u,_hs_atomic_nand64"
1629+ "-Wl,-u,_hs_atomic_or8" "-Wl,-u,_hs_atomic_or16"
1630+ "-Wl,-u,_hs_atomic_or32" "-Wl,-u,_hs_atomic_or64"
1631+ "-Wl,-u,_hs_atomic_xor8" "-Wl,-u,_hs_atomic_xor16"
1632+ "-Wl,-u,_hs_atomic_xor32" "-Wl,-u,_hs_atomic_xor64"
1633+ "-Wl,-u,_hs_cmpxchg8" "-Wl,-u,_hs_cmpxchg16" "-Wl,-u,_hs_cmpxchg32"
1634+ "-Wl,-u,_hs_cmpxchg64" "-Wl,-u,_hs_atomicread8"
1635+ "-Wl,-u,_hs_atomicread16" "-Wl,-u,_hs_atomicread32"
1636+ "-Wl,-u,_hs_atomicread64" "-Wl,-u,_hs_atomicwrite8"
1637+ "-Wl,-u,_hs_atomicwrite16" "-Wl,-u,_hs_atomicwrite32"
1638+ "-Wl,-u,_hs_atomicwrite64" "-Wl,-search_paths_first"
materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc-pkg/versionnew file+1
@@ -0,0 +1 @@
1+GHC package manager version 8.10.5
materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc/infonew file+75
@@ -0,0 +1,75 @@
1+ [("Project name","The Glorious Glasgow Haskell Compilation System")
2+ ,("GCC extra via C opts","")
3+ ,("C compiler command","clang")
4+ ,("C compiler flags","")
5+ ,("C++ compiler flags","")
6+ ,("C compiler link flags","")
7+ ,("C compiler supports -no-pie","NO")
8+ ,("Haskell CPP command","clang")
9+ ,("Haskell CPP flags","-E -undef -traditional -Wno-invalid-pp-token -Wno-unicode -Wno-trigraphs")
10+ ,("ld command","ld")
11+ ,("ld flags","")
12+ ,("ld supports compact unwind","YES")
13+ ,("ld supports build-id","NO")
14+ ,("ld supports filelist","YES")
15+ ,("ld is GNU ld","NO")
16+ ,("Merge objects command","ld")
17+ ,("Merge objects flags","-r")
18+ ,("ar command","ar")
19+ ,("ar flags","qcls")
20+ ,("ar supports at file","NO")
21+ ,("ranlib command","ranlib")
22+ ,("otool command","otool")
23+ ,("install_name_tool command","install_name_tool")
24+ ,("touch command","touch")
25+ ,("dllwrap command","/bin/false")
26+ ,("windres command","/bin/false")
27+ ,("libtool command","libtool")
28+ ,("cross compiling","NO")
29+ ,("target platform string","x86_64-apple-darwin")
30+ ,("target os","OSDarwin")
31+ ,("target arch","ArchX86_64")
32+ ,("target word size","8")
33+ ,("target has GNU nonexec stack","NO")
34+ ,("target has .ident directive","YES")
35+ ,("target has subsections via symbols","YES")
36+ ,("target has RTS linker","YES")
37+ ,("Unregisterised","NO")
38+ ,("LLVM target","x86_64-apple-darwin")
39+ ,("LLVM llc command","llc")
40+ ,("LLVM opt command","opt")
41+ ,("LLVM clang command","clang")
42+ ,("integer library","integer-gmp")
43+ ,("Use interpreter","YES")
44+ ,("Use native code generator","YES")
45+ ,("Support SMP","YES")
46+ ,("RTS ways","l debug thr thr_debug thr_l thr_p dyn debug_dyn thr_dyn thr_debug_dyn l_dyn thr_l_dyn thr_debug_p debug_p")
47+ ,("Tables next to code","YES")
48+ ,("Leading underscore","YES")
49+ ,("Use LibFFI","NO")
50+ ,("Use Threads","YES")
51+ ,("Use Debugging","NO")
52+ ,("RTS expects libdw","NO")
53+ ,("Project version","8.10.5")
54+ ,("Project Git commit id","a43a5650f51fdc04d757abc3d86b0a23ec518259")
55+ ,("Booter version","8.6.5")
56+ ,("Stage","2")
57+ ,("Build platform","x86_64-apple-darwin")
58+ ,("Host platform","x86_64-apple-darwin")
59+ ,("Target platform","x86_64-apple-darwin")
60+ ,("Have interpreter","YES")
61+ ,("Object splitting supported","NO")
62+ ,("Have native code generator","YES")
63+ ,("Support dynamic-too","YES")
64+ ,("Support parallel --make","YES")
65+ ,("Support reexported-modules","YES")
66+ ,("Support thinning and renaming package flags","YES")
67+ ,("Support Backpack","YES")
68+ ,("Requires unified installed package IDs","YES")
69+ ,("Uses package keys","YES")
70+ ,("Uses unit IDs","YES")
71+ ,("Dynamic by default","NO")
72+ ,("GHC Dynamic","YES")
73+ ,("GHC Profiled","NO")
74+ ,("Debug on","NO")
75+ ]
materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc/numeric-versionnew file+1
materialized/dummy-ghc/ghc-8.10.5-x86_64-darwin/ghc/supported-languagesnew file+255
@@ -0,0 +1,255 @@
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/ghc-8.10.5-x86_64-darwin/ghc/versionnew file+1
@@ -0,0 +1 @@
1+The Glorious Glasgow Haskell Compilation System, version 8.10.5
materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc-pkg/dump-globalnew file+1639
@@ -0,0 +1,1639 @@
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
595+version: 8.10.5
596+visibility: public
597+id: ghc-8.10.5
598+key: ghc-8.10.5
599+license: BSD-3-Clause
600+maintainer: glasgow-haskell-users@haskell.org
601+author: The GHC Team
602+homepage: http://www.haskell.org/ghc/
603+synopsis: The GHC API
604+description:
605+ GHC's functionality can be useful for more things than just
606+ compiling Haskell programs. Important use cases are programs
607+ that analyse (and perhaps transform) Haskell code. Others
608+ include loading Haskell code dynamically in a GHCi-like manner.
609+ For this reason, a lot of GHC's functionality is made available
610+ through this package.
611+category: Development
612+exposed-modules:
613+ Annotations ApiAnnotation Ar AsmCodeGen AsmUtils Avail Bag
614+ BasicTypes BinFingerprint BinIface Binary Bitmap BkpSyn BlockId
615+ BlockLayout BooleanFormula BufWrite BuildTyCl ByteCodeAsm
616+ ByteCodeGen ByteCodeInstr ByteCodeItbls ByteCodeLink ByteCodeTypes
617+ CFG CLabel CPrim CSE CallArity Class CliOption ClsInst
618+ CmdLineParser Cmm CmmBuildInfoTables CmmCallConv CmmCommonBlockElim
619+ CmmContFlowOpt CmmExpr CmmImplementSwitchPlans CmmInfo
620+ CmmLayoutStack CmmLex CmmLint CmmLive CmmMachOp CmmMonad CmmNode
621+ CmmOpt CmmParse CmmPipeline CmmProcPoint CmmSink CmmSwitch CmmType
622+ CmmUtils CoAxiom CodeOutput Coercion ConLike Config Constants
623+ Constraint CoreArity CoreFVs CoreLint CoreMap CoreMonad CoreOpt
624+ CorePrep CoreSeq CoreStats CoreSubst CoreSyn CoreTidy CoreToStg
625+ CoreUnfold CoreUtils CostCentre CostCentreState Coverage Ctype
626+ DataCon Debug Debugger Demand Desugar Digraph DmdAnal Dominators
627+ DriverBkp DriverMkDepend DriverPhases DriverPipeline DsArrows
628+ DsBinds DsCCall DsExpr DsForeign DsGRHSs DsListComp DsMeta DsMonad
629+ DsUsage DsUtils Dwarf Dwarf.Constants Dwarf.Types DynFlags
630+ DynamicLoading Elf Encoding EnumSet ErrUtils Exception Exitify
631+ ExtractDocs FV FamInst FamInstEnv FastFunctions FastMutInt
632+ FastString FastStringEnv FieldLabel FileCleanup FileSettings Finder
633+ Fingerprint FiniteMap FlagChecker FloatIn FloatOut ForeignCall
634+ Format FunDeps GHC GHC.Hs GHC.Hs.Binds GHC.Hs.Decls GHC.Hs.Doc
635+ GHC.Hs.Dump GHC.Hs.Expr GHC.Hs.Extension GHC.Hs.ImpExp
636+ GHC.Hs.Instances GHC.Hs.Lit GHC.Hs.Pat GHC.Hs.PlaceHolder
637+ GHC.Hs.Types GHC.Hs.Utils GHC.HsToCore.PmCheck
638+ GHC.HsToCore.PmCheck.Oracle GHC.HsToCore.PmCheck.Ppr
639+ GHC.HsToCore.PmCheck.Types GHC.Platform.AArch64 GHC.Platform.ARM
640+ GHC.Platform.NoRegs GHC.Platform.PPC GHC.Platform.Regs
641+ GHC.Platform.S390X GHC.Platform.SPARC GHC.Platform.X86
642+ GHC.Platform.X86_64 GHC.StgToCmm GHC.StgToCmm.ArgRep
643+ GHC.StgToCmm.Bind GHC.StgToCmm.CgUtils GHC.StgToCmm.Closure
644+ GHC.StgToCmm.DataCon GHC.StgToCmm.Env GHC.StgToCmm.Expr
645+ GHC.StgToCmm.ExtCode GHC.StgToCmm.Foreign GHC.StgToCmm.Heap
646+ GHC.StgToCmm.Hpc GHC.StgToCmm.Layout GHC.StgToCmm.Monad
647+ GHC.StgToCmm.Prim GHC.StgToCmm.Prof GHC.StgToCmm.Ticky
648+ GHC.StgToCmm.Utils GHC.ThToHs GHCi GhcMake GhcMonad GhcNameVersion
649+ GhcPlugins GhcPrelude GraphBase GraphColor GraphOps GraphPpr
650+ HaddockUtils HeaderInfo HieAst HieBin HieDebug HieTypes HieUtils
651+ Hooks Hoopl.Block Hoopl.Collections Hoopl.Dataflow Hoopl.Graph
652+ Hoopl.Label HscMain HscStats HscTypes IOEnv Id IdInfo IfaceEnv
653+ IfaceSyn IfaceType Inst InstEnv Instruction InteractiveEval
654+ InteractiveEvalTypes Json KnownUniques Lexeme Lexer LiberateCase
655+ Linker LinkerTypes ListSetOps Literal Llvm Llvm.AbsSyn
656+ Llvm.MetaData Llvm.PpLlvm Llvm.Types LlvmCodeGen LlvmCodeGen.Base
657+ LlvmCodeGen.CodeGen LlvmCodeGen.Data LlvmCodeGen.Ppr
658+ LlvmCodeGen.Regs LlvmMangler LoadIface Match MatchCon MatchLit
659+ Maybes MkCore MkGraph MkId MkIface Module MonadUtils NCGMonad Name
660+ NameCache NameEnv NameSet NameShape OccName OccurAnal OptCoercion
661+ OrdList Outputable PIC PPC.CodeGen PPC.Cond PPC.Instr PPC.Ppr
662+ PPC.RegInfo PPC.Regs PackageConfig Packages Pair Panic Parser
663+ PatSyn PipelineMonad PlainPanic PlatformConstants Plugins PprBase
664+ PprC PprCmm PprCmmDecl PprCmmExpr PprColour PprCore PprTyThing
665+ Predicate PrelInfo PrelNames PrelRules Pretty PrimOp ProfInit
666+ RdrHsSyn RdrName Reg RegAlloc.Graph.ArchBase RegAlloc.Graph.ArchX86
667+ RegAlloc.Graph.Coalesce RegAlloc.Graph.Main RegAlloc.Graph.Spill
668+ RegAlloc.Graph.SpillClean RegAlloc.Graph.SpillCost
669+ RegAlloc.Graph.Stats RegAlloc.Graph.TrivColorable
670+ RegAlloc.Linear.Base RegAlloc.Linear.FreeRegs
671+ RegAlloc.Linear.JoinToTargets RegAlloc.Linear.Main
672+ RegAlloc.Linear.PPC.FreeRegs RegAlloc.Linear.SPARC.FreeRegs
673+ RegAlloc.Linear.StackMap RegAlloc.Linear.State
674+ RegAlloc.Linear.Stats RegAlloc.Linear.X86.FreeRegs
675+ RegAlloc.Linear.X86_64.FreeRegs RegAlloc.Liveness RegClass RepType
676+ RnBinds RnEnv RnExpr RnFixity RnHsDoc RnModIface RnNames RnPat
677+ RnSource RnSplice RnTypes RnUnbound RnUtils RtClosureInspect Rules
678+ SAT SMRep SPARC.AddrMode SPARC.Base SPARC.CodeGen
679+ SPARC.CodeGen.Amode SPARC.CodeGen.Base SPARC.CodeGen.CondCode
680+ SPARC.CodeGen.Expand SPARC.CodeGen.Gen32 SPARC.CodeGen.Gen64
681+ SPARC.CodeGen.Sanity SPARC.Cond SPARC.Imm SPARC.Instr SPARC.Ppr
682+ SPARC.Regs SPARC.ShortcutJump SPARC.Stack SetLevels Settings
683+ SimplCore SimplEnv SimplMonad SimplStg SimplUtils Simplify
684+ SpecConstr Specialise SrcLoc State StaticPtrTable StgCse StgFVs
685+ StgLiftLams StgLiftLams.Analysis StgLiftLams.LiftM
686+ StgLiftLams.Transformation StgLint StgStats StgSubst StgSyn Stream
687+ StringBuffer SysTools SysTools.BaseDir SysTools.ExtraObj
688+ SysTools.Info SysTools.Process SysTools.Settings SysTools.Tasks
689+ SysTools.Terminal THNames TargetReg TcAnnotations TcArrows
690+ TcBackpack TcBinds TcCanonical TcClassDcl TcDefaults TcDeriv
691+ TcDerivInfer TcDerivUtils TcEnv TcErrors TcEvTerm TcEvidence TcExpr
692+ TcFlatten TcForeign TcGenDeriv TcGenFunctor TcGenGenerics
693+ TcHoleErrors TcHoleFitTypes TcHsSyn TcHsType TcIface TcInstDcls
694+ TcInteract TcMType TcMatches TcOrigin TcPat TcPatSyn TcPluginM
695+ TcRnDriver TcRnExports TcRnMonad TcRnTypes TcRules TcSMonad TcSigs
696+ TcSimplify TcSplice TcTyClsDecls TcTyDecls TcType TcTypeNats
697+ TcTypeable TcUnify TcValidity TidyPgm ToIface ToolSettings TrieMap
698+ TyCoFVs TyCoPpr TyCoRep TyCoSubst TyCoTidy TyCon Type TysPrim
699+ TysWiredIn UnVarGraph UnariseStg Unify UniqDFM UniqDSet UniqFM
700+ UniqMap UniqSet UniqSupply Unique Util Var VarEnv VarSet WorkWrap
701+ WwLib X86.CodeGen X86.Cond X86.Instr X86.Ppr X86.RegInfo X86.Regs
702+import-dirs:
703+library-dirs:
704+dynamic-library-dirs:
705+data-dir:
706+hs-libraries: HSghc-8.10.5
707+include-dirs:
708+depends:
709+ array-0.5.4.0 base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
710+ containers-0.6.4.1 deepseq-1.4.4.0 directory-1.3.6.0
711+ filepath-1.4.2.1 ghc-boot-8.10.5 ghc-boot-th-8.10.5 ghc-heap-8.10.5
712+ ghci-8.10.5 hpc-0.6.1.0 integer-gmp-1.0.3.0 process-1.6.9.0
713+ template-haskell-2.16.0.0 terminfo-0.4.1.4 time-1.9.3
714+ transformers-0.5.6.2 unix-2.7.2.2
715+haddock-interfaces:
716+haddock-html:
717+---
718+name: ghc-boot
719+version: 8.10.5
720+visibility: public
721+id: ghc-boot-8.10.5
722+key: ghc-boot-8.10.5
723+license: BSD-3-Clause
724+maintainer: ghc-devs@haskell.org
725+synopsis: Shared functionality between GHC and its boot libraries
726+description:
727+ This library is shared between GHC, ghc-pkg, and other boot
728+ libraries.
729+ A note about "GHC.PackageDb": it only deals with the subset of
730+ the package database that the compiler cares about: modules
731+ paths etc and not package metadata like description, authors
732+ etc. It is thus not a library interface to ghc-pkg and is *not*
733+ suitable for modifying GHC package databases.
734+ The package database format and this library are constructed in
735+ such a way that while ghc-pkg depends on Cabal, the GHC library
736+ and program do not have to depend on Cabal.
737+category: GHC
738+exposed: True
739+exposed-modules:
740+ GHC.BaseDir GHC.ForeignSrcLang GHC.HandleEncoding
741+ GHC.LanguageExtensions GHC.PackageDb GHC.Platform GHC.Platform.Host
742+ GHC.Serialized GHC.Settings GHC.UniqueSubdir GHC.Version
743+import-dirs:
744+library-dirs:
745+dynamic-library-dirs:
746+data-dir:
747+hs-libraries: HSghc-boot-8.10.5
748+depends:
749+ base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
750+ containers-0.6.4.1 directory-1.3.6.0 filepath-1.4.2.1
751+ ghc-boot-th-8.10.5
752+haddock-interfaces:
753+haddock-html:
754+---
755+name: ghc-boot-th
756+version: 8.10.5
757+visibility: public
758+id: ghc-boot-th-8.10.5
759+key: ghc-boot-th-8.10.5
760+license: BSD-3-Clause
761+maintainer: ghc-devs@haskell.org
762+synopsis:
763+ Shared functionality between GHC and the @template-haskell@
764+ library
765+description:
766+ This library contains various bits shared between the @ghc@ and
767+ @template-haskell@ libraries.
768+ This package exists to ensure that @template-haskell@ has a
769+ minimal set of transitive dependencies, since it is intended to
770+ be depended upon by user code.
771+category: GHC
772+exposed: True
773+exposed-modules:
774+ GHC.ForeignSrcLang.Type GHC.LanguageExtensions.Type GHC.Lexeme
775+import-dirs:
776+library-dirs:
777+dynamic-library-dirs:
778+data-dir:
779+hs-libraries: HSghc-boot-th-8.10.5
780+depends: base-4.14.2.0
781+haddock-interfaces:
782+haddock-html:
783+---
784+name: ghc-compact
785+version: 0.1.0.0
786+visibility: public
787+id: ghc-compact-0.1.0.0
788+key: ghc-compact-0.1.0.0
789+license: BSD-3-Clause
790+maintainer: libraries@haskell.org
791+synopsis: In memory storage of deeply evaluated data structure
792+description:
793+ This package provides minimal functionality for working with
794+ "compact regions", which hold a fully evaluated Haskell object graph.
795+ These regions maintain the invariant that no pointers live inside the struct
796+ that point outside it, which ensures efficient garbage collection without
797+ ever reading the structure contents (effectively, it works as a manually
798+ managed "oldest generation" which is never freed until the whole is
799+ released).
800+ Internally, the struct is stored a single contiguous block of memory,
801+ which allows efficient serialization and deserialization of structs
802+ for distributed computing.
803+category: Data
804+exposed: True
805+exposed-modules: GHC.Compact GHC.Compact.Serialized
806+import-dirs:
807+library-dirs:
808+dynamic-library-dirs:
809+data-dir:
810+hs-libraries: HSghc-compact-0.1.0.0
811+depends: base-4.14.2.0 bytestring-0.10.12.0 ghc-prim-0.6.1
812+haddock-interfaces:
813+haddock-html:
814+---
815+name: ghc-heap
816+version: 8.10.5
817+visibility: public
818+id: ghc-heap-8.10.5
819+key: ghc-heap-8.10.5
820+license: BSD-3-Clause
821+maintainer: libraries@haskell.org
822+synopsis: Functions for walking GHC's heap
823+description:
824+ This package provides functions for walking the GHC heap data structures
825+ and retrieving information about those data structures.
826+category: GHC
827+exposed: True
828+exposed-modules:
829+ GHC.Exts.Heap GHC.Exts.Heap.ClosureTypes GHC.Exts.Heap.Closures
830+ GHC.Exts.Heap.Constants GHC.Exts.Heap.InfoTable
831+ GHC.Exts.Heap.InfoTable.Types GHC.Exts.Heap.InfoTableProf
832+ GHC.Exts.Heap.Utils
833+import-dirs:
834+library-dirs:
835+dynamic-library-dirs:
836+data-dir:
837+hs-libraries: HSghc-heap-8.10.5
838+depends: base-4.14.2.0 ghc-prim-0.6.1 rts
839+haddock-interfaces:
840+haddock-html:
841+---
842+name: ghc-prim
843+version: 0.6.1
844+visibility: public
845+id: ghc-prim-0.6.1
846+key: ghc-prim-0.6.1
847+license: BSD-3-Clause
848+maintainer: libraries@haskell.org
849+synopsis: GHC primitives
850+description:
851+ This package contains the primitive types and operations supplied by GHC.
852+category: GHC
853+exposed: True
854+exposed-modules:
855+ GHC.CString GHC.Classes GHC.Debug GHC.IntWord64 GHC.Magic
856+ GHC.Prim.Ext GHC.PrimopWrappers GHC.Tuple GHC.Types GHC.Prim
857+import-dirs:
858+library-dirs:
859+dynamic-library-dirs:
860+data-dir:
861+hs-libraries: HSghc-prim-0.6.1
862+extra-libraries: c m
863+depends: rts
864+haddock-interfaces:
865+haddock-html:
866+---
867+name: ghci
868+version: 8.10.5
869+visibility: public
870+id: ghci-8.10.5
871+key: ghci-8.10.5
872+license: BSD-3-Clause
873+maintainer: ghc-devs@haskell.org
874+synopsis: The library supporting GHC's interactive interpreter
875+description:
876+ This library offers interfaces which mediate interactions between the
877+ @ghci@ interactive shell and @iserv@, GHC's out-of-process interpreter
878+ backend.
879+category: GHC
880+exposed: True
881+exposed-modules:
882+ GHCi.BinaryArray GHCi.BreakArray GHCi.CreateBCO GHCi.FFI
883+ GHCi.InfoTable GHCi.Message GHCi.ObjLink GHCi.RemoteTypes
884+ GHCi.ResolvedBCO GHCi.Run GHCi.Signals GHCi.StaticPtrTable GHCi.TH
885+ GHCi.TH.Binary SizedSeq
886+import-dirs:
887+library-dirs:
888+dynamic-library-dirs:
889+data-dir:
890+hs-libraries: HSghci-8.10.5
891+include-dirs:
892+depends:
893+ array-0.5.4.0 base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
894+ containers-0.6.4.1 deepseq-1.4.4.0 filepath-1.4.2.1 ghc-boot-8.10.5
895+ ghc-boot-th-8.10.5 ghc-heap-8.10.5 rts template-haskell-2.16.0.0
896+ transformers-0.5.6.2 unix-2.7.2.2
897+haddock-interfaces:
898+haddock-html:
899+---
900+name: haskeline
901+version: 0.8.0.1
902+visibility: public
903+id: haskeline-0.8.0.1
904+key: haskeline-0.8.0.1
905+license: BSD-3-Clause
906+copyright: (c) Judah Jacobson
907+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
908+author: Judah Jacobson
909+stability: Stable
910+homepage: https://github.com/judah/haskeline
911+synopsis:
912+ A command-line interface for user input, written in Haskell.
913+description:
914+ Haskeline provides a user interface for line input in command-line
915+ programs. This library is similar in purpose to readline, but since
916+ it is written in Haskell it is (hopefully) more easily used in other
917+ Haskell programs.
918+ Haskeline runs both on POSIX-compatible systems and on Windows.
919+category: User Interfaces
920+exposed: True
921+exposed-modules:
922+ System.Console.Haskeline System.Console.Haskeline.Completion
923+ System.Console.Haskeline.History System.Console.Haskeline.IO
924+ System.Console.Haskeline.Internal
925+hidden-modules:
926+ System.Console.Haskeline.Backend
927+ System.Console.Haskeline.Backend.WCWidth
928+ System.Console.Haskeline.Command
929+ System.Console.Haskeline.Command.Completion
930+ System.Console.Haskeline.Command.History
931+ System.Console.Haskeline.Command.KillRing
932+ System.Console.Haskeline.Directory System.Console.Haskeline.Emacs
933+ System.Console.Haskeline.InputT System.Console.Haskeline.Key
934+ System.Console.Haskeline.LineState System.Console.Haskeline.Monads
935+ System.Console.Haskeline.Prefs System.Console.Haskeline.Recover
936+ System.Console.Haskeline.RunCommand System.Console.Haskeline.Term
937+ System.Console.Haskeline.Command.Undo System.Console.Haskeline.Vi
938+ System.Console.Haskeline.Backend.Posix
939+ System.Console.Haskeline.Backend.Posix.Encoder
940+ System.Console.Haskeline.Backend.DumbTerm
941+ System.Console.Haskeline.Backend.Terminfo
942+import-dirs:
943+library-dirs:
944+dynamic-library-dirs:
945+data-dir:
946+hs-libraries: HShaskeline-0.8.0.1
947+depends:
948+ base-4.14.2.0 bytestring-0.10.12.0 containers-0.6.4.1
949+ directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
950+ process-1.6.9.0 stm-2.5.0.1 terminfo-0.4.1.4 transformers-0.5.6.2
951+ unix-2.7.2.2
952+haddock-interfaces:
953+haddock-html:
954+---
955+name: hpc
956+version: 0.6.1.0
957+visibility: public
958+id: hpc-0.6.1.0
959+key: hpc-0.6.1.0
960+license: BSD-3-Clause
961+maintainer: ghc-devs@haskell.org
962+author: Andy Gill
963+synopsis: Code Coverage Library for Haskell
964+description:
965+ This package provides the code coverage library for Haskell.
966+ See <http://www.haskell.org/haskellwiki/Haskell_program_coverage> for more
967+ information.
968+category: Control
969+exposed: True
970+exposed-modules:
971+ Trace.Hpc.Mix Trace.Hpc.Reflect Trace.Hpc.Tix Trace.Hpc.Util
972+import-dirs:
973+library-dirs:
974+dynamic-library-dirs:
975+data-dir:
976+hs-libraries: HShpc-0.6.1.0
977+depends:
978+ base-4.14.2.0 containers-0.6.4.1 deepseq-1.4.4.0 directory-1.3.6.0
979+ filepath-1.4.2.1 time-1.9.3
980+haddock-interfaces:
981+haddock-html:
982+---
983+name: integer-gmp
984+version: 1.0.3.0
985+visibility: public
986+id: integer-gmp-1.0.3.0
987+key: integer-gmp-1.0.3.0
988+license: BSD-3-Clause
989+maintainer: hvr@gnu.org
990+author: Herbert Valerio Riedel
991+synopsis: Integer library based on GMP
992+description:
993+ This package provides the low-level implementation of the standard
994+ 'Integer' type based on the
995+ <http://gmplib.org/ GNU Multiple Precision Arithmetic Library (GMP)>.
996+ This package provides access to the internal representation of
997+ 'Integer' as well as primitive operations with no proper error
998+ handling, and should only be used directly with the utmost care.
999+category: Numeric, Algebra
1000+exposed: True
1001+exposed-modules:
1002+ GHC.Integer GHC.Integer.GMP.Internals GHC.Integer.Logarithms
1003+ GHC.Integer.Logarithms.Internals
1004+hidden-modules: GHC.Integer.Type
1005+import-dirs:
1006+library-dirs:
1007+dynamic-library-dirs:
1008+data-dir:
1009+hs-libraries: HSinteger-gmp-1.0.3.0
1010+extra-libraries: gmp
1011+include-dirs:
1012+depends: ghc-prim-0.6.1
1013+haddock-interfaces:
1014+haddock-html:
1015+---
1016+name: libiserv
1017+version: 8.10.5
1018+visibility: public
1019+id: libiserv-8.10.5
1020+key: libiserv-8.10.5
1021+license: BSD-3-Clause
1022+copyright: XXX
1023+maintainer: XXX
1024+author: XXX
1025+synopsis: Provides shared functionality between iserv and iserv-proxy
1026+category: Development
1027+exposed: True
1028+exposed-modules: GHCi.Utils Lib
1029+import-dirs:
1030+library-dirs:
1031+dynamic-library-dirs:
1032+data-dir:
1033+hs-libraries: HSlibiserv-8.10.5
1034+depends:
1035+ base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
1036+ containers-0.6.4.1 deepseq-1.4.4.0 ghci-8.10.5 unix-2.7.2.2
1037+haddock-interfaces:
1038+haddock-html:
1039+---
1040+name: mtl
1041+version: 2.2.2
1042+visibility: public
1043+id: mtl-2.2.2
1044+key: mtl-2.2.2
1045+license: BSD-3-Clause
1046+maintainer: Edward Kmett <ekmett@gmail.com>
1047+author: Andy Gill
1048+homepage: http://github.com/haskell/mtl
1049+synopsis: Monad classes, using functional dependencies
1050+description:
1051+ Monad classes using functional dependencies, with instances
1052+ for various monad transformers, inspired by the paper
1053+ /Functional Programming with Overloading and Higher-Order Polymorphism/,
1054+ by Mark P Jones, in /Advanced School of Functional Programming/, 1995
1055+ (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
1056+category: Control
1057+exposed: True
1058+exposed-modules:
1059+ Control.Monad.Cont Control.Monad.Cont.Class Control.Monad.Error
1060+ Control.Monad.Error.Class Control.Monad.Except
1061+ Control.Monad.Identity Control.Monad.List Control.Monad.RWS
1062+ Control.Monad.RWS.Class Control.Monad.RWS.Lazy
1063+ Control.Monad.RWS.Strict Control.Monad.Reader
1064+ Control.Monad.Reader.Class Control.Monad.State
1065+ Control.Monad.State.Class Control.Monad.State.Lazy
1066+ Control.Monad.State.Strict Control.Monad.Trans Control.Monad.Writer
1067+ Control.Monad.Writer.Class Control.Monad.Writer.Lazy
1068+ Control.Monad.Writer.Strict
1069+import-dirs:
1070+library-dirs:
1071+dynamic-library-dirs:
1072+data-dir:
1073+hs-libraries: HSmtl-2.2.2
1074+depends: base-4.14.2.0 transformers-0.5.6.2
1075+haddock-interfaces:
1076+haddock-html:
1077+---
1078+name: parsec
1079+version: 3.1.14.0
1080+visibility: public
1081+id: parsec-3.1.14.0
1082+key: parsec-3.1.14.0
1083+license: BSD-3-Clause
1084+maintainer: Herbert Valerio Riedel <hvr@gnu.org>
1085+author:
1086+ Daan Leijen <daan@microsoft.com>, Paolo Martini <paolo@nemail.it>, Antoine Latter <aslatter@gmail.com>
1087+homepage: https://github.com/haskell/parsec
1088+synopsis: Monadic parser combinators
1089+description:
1090+ Parsec is designed from scratch as an industrial-strength parser
1091+ library. It is simple, safe, well documented (on the package
1092+ homepage), has extensive libraries, good error messages,
1093+ and is fast. It is defined as a monad transformer that can be
1094+ stacked on arbitrary monads, and it is also parametric in the
1095+ input stream type.
1096+ The main entry point is the "Text.Parsec" module which provides
1097+ defaults for parsing 'Char'acter data.
1098+ The "Text.ParserCombinators.Parsec" module hierarchy contains
1099+ the legacy @parsec-2@ API and may be removed at some point in
1100+ the future.
1101+category: Parsing
1102+exposed: True
1103+exposed-modules:
1104+ Text.Parsec Text.Parsec.ByteString Text.Parsec.ByteString.Lazy
1105+ Text.Parsec.Char Text.Parsec.Combinator Text.Parsec.Error
1106+ Text.Parsec.Expr Text.Parsec.Language Text.Parsec.Perm
1107+ Text.Parsec.Pos Text.Parsec.Prim Text.Parsec.String
1108+ Text.Parsec.Text Text.Parsec.Text.Lazy Text.Parsec.Token
1109+ Text.ParserCombinators.Parsec Text.ParserCombinators.Parsec.Char
1110+ Text.ParserCombinators.Parsec.Combinator
1111+ Text.ParserCombinators.Parsec.Error
1112+ Text.ParserCombinators.Parsec.Expr
1113+ Text.ParserCombinators.Parsec.Language
1114+ Text.ParserCombinators.Parsec.Perm
1115+ Text.ParserCombinators.Parsec.Pos
1116+ Text.ParserCombinators.Parsec.Prim
1117+ Text.ParserCombinators.Parsec.Token
1118+import-dirs:
1119+library-dirs:
1120+dynamic-library-dirs:
1121+data-dir:
1122+hs-libraries: HSparsec-3.1.14.0
1123+depends:
1124+ base-4.14.2.0 bytestring-0.10.12.0 mtl-2.2.2 text-1.2.4.1
1125+haddock-interfaces:
1126+haddock-html:
1127+---
1128+name: pretty
1129+version: 1.1.3.6
1130+visibility: public
1131+id: pretty-1.1.3.6
1132+key: pretty-1.1.3.6
1133+license: BSD-3-Clause
1134+maintainer: David Terei <code@davidterei.com>
1135+stability: Stable
1136+homepage: http://github.com/haskell/pretty
1137+synopsis: Pretty-printing library
1138+description:
1139+ This package contains a pretty-printing library, a set of API's
1140+ that provides a way to easily print out text in a consistent
1141+ format of your choosing. This is useful for compilers and related
1142+ tools.
1143+ This library was originally designed by John Hughes's and has since
1144+ been heavily modified by Simon Peyton Jones.
1145+category: Text
1146+exposed: True
1147+exposed-modules:
1148+ Text.PrettyPrint Text.PrettyPrint.Annotated
1149+ Text.PrettyPrint.Annotated.HughesPJ
1150+ Text.PrettyPrint.Annotated.HughesPJClass Text.PrettyPrint.HughesPJ
1151+ Text.PrettyPrint.HughesPJClass
1152+import-dirs:
1153+library-dirs:
1154+dynamic-library-dirs:
1155+data-dir:
1156+hs-libraries: HSpretty-1.1.3.6
1157+depends: base-4.14.2.0 deepseq-1.4.4.0 ghc-prim-0.6.1
1158+haddock-interfaces:
1159+haddock-html:
1160+---
1161+name: process
1162+version: 1.6.9.0
1163+visibility: public
1164+id: process-1.6.9.0
1165+key: process-1.6.9.0
1166+license: BSD-3-Clause
1167+maintainer: libraries@haskell.org
1168+synopsis: Process libraries
1169+description:
1170+ This package contains libraries for dealing with system processes.
1171+ The typed-process package is a more recent take on a process API,
1172+ which uses this package internally. It features better binary
1173+ support, easier concurrency, and a more composable API. You can
1174+ read more about it at
1175+ <https://github.com/fpco/typed-process/#readme>.
1176+category: System
1177+exposed: True
1178+exposed-modules: System.Cmd System.Process System.Process.Internals
1179+hidden-modules: System.Process.Common System.Process.Posix
1180+import-dirs:
1181+library-dirs:
1182+dynamic-library-dirs:
1183+data-dir:
1184+hs-libraries: HSprocess-1.6.9.0
1185+include-dirs:
1186+includes: runProcess.h
1187+depends:
1188+ base-4.14.2.0 deepseq-1.4.4.0 directory-1.3.6.0 filepath-1.4.2.1
1189+ unix-2.7.2.2
1190+haddock-interfaces:
1191+haddock-html:
1192+---
1193+name: stm
1194+version: 2.5.0.1
1195+visibility: public
1196+id: stm-2.5.0.1
1197+key: stm-2.5.0.1
1198+license: BSD-3-Clause
1199+maintainer: libraries@haskell.org
1200+homepage: https://wiki.haskell.org/Software_transactional_memory
1201+synopsis: Software Transactional Memory
1202+description:
1203+ Software Transactional Memory, or STM, is an abstraction for
1204+ concurrent communication. The main benefits of STM are
1205+ /composability/ and /modularity/. That is, using STM you can write
1206+ concurrent abstractions that can be easily composed with any other
1207+ abstraction built using STM, without exposing the details of how
1208+ your abstraction ensures safety. This is typically not the case
1209+ with other forms of concurrent communication, such as locks or
1210+ 'MVar's.
1211+category: Concurrency
1212+exposed: True
1213+exposed-modules:
1214+ Control.Concurrent.STM Control.Concurrent.STM.TArray
1215+ Control.Concurrent.STM.TBQueue Control.Concurrent.STM.TChan
1216+ Control.Concurrent.STM.TMVar Control.Concurrent.STM.TQueue
1217+ Control.Concurrent.STM.TSem Control.Concurrent.STM.TVar
1218+ Control.Monad.STM
1219+hidden-modules: Control.Sequential.STM
1220+import-dirs:
1221+library-dirs:
1222+dynamic-library-dirs:
1223+data-dir:
1224+hs-libraries: HSstm-2.5.0.1
1225+depends: array-0.5.4.0 base-4.14.2.0
1226+haddock-interfaces:
1227+haddock-html:
1228+---
1229+name: template-haskell
1230+version: 2.16.0.0
1231+visibility: public
1232+id: template-haskell-2.16.0.0
1233+key: template-haskell-2.16.0.0
1234+license: BSD-3-Clause
1235+maintainer: libraries@haskell.org
1236+synopsis: Support library for Template Haskell
1237+description:
1238+ This package provides modules containing facilities for manipulating
1239+ Haskell source code using Template Haskell.
1240+ See <http://www.haskell.org/haskellwiki/Template_Haskell> for more
1241+ information.
1242+category: Template Haskell
1243+exposed: True
1244+exposed-modules:
1245+ Language.Haskell.TH Language.Haskell.TH.LanguageExtensions
1246+ Language.Haskell.TH.Lib Language.Haskell.TH.Lib.Internal
1247+ Language.Haskell.TH.Ppr Language.Haskell.TH.PprLib
1248+ Language.Haskell.TH.Quote Language.Haskell.TH.Syntax
1249+hidden-modules: Language.Haskell.TH.Lib.Map
1250+import-dirs:
1251+library-dirs:
1252+dynamic-library-dirs:
1253+data-dir:
1254+hs-libraries: HStemplate-haskell-2.16.0.0
1255+depends:
1256+ base-4.14.2.0 ghc-boot-th-8.10.5 ghc-prim-0.6.1 pretty-1.1.3.6
1257+haddock-interfaces:
1258+haddock-html:
1259+---
1260+name: terminfo
1261+version: 0.4.1.4
1262+visibility: public
1263+id: terminfo-0.4.1.4
1264+key: terminfo-0.4.1.4
1265+license: BSD-3-Clause
1266+copyright: (c) Judah Jacobson
1267+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
1268+author: Judah Jacobson
1269+stability: Stable
1270+homepage: https://github.com/judah/terminfo
1271+synopsis: Haskell bindings to the terminfo library.
1272+description:
1273+ This library provides an interface to the terminfo database (via bindings to the
1274+ curses library). <http://en.wikipedia.org/wiki/Terminfo Terminfo> allows POSIX
1275+ systems to interact with a variety of terminals using a standard set of capabilities.
1276+category: User Interfaces
1277+exposed: True
1278+exposed-modules:
1279+ System.Console.Terminfo System.Console.Terminfo.Base
1280+ System.Console.Terminfo.Color System.Console.Terminfo.Cursor
1281+ System.Console.Terminfo.Edit System.Console.Terminfo.Effects
1282+ System.Console.Terminfo.Keys
1283+import-dirs:
1284+library-dirs:
1285+dynamic-library-dirs:
1286+data-dir:
1287+hs-libraries: HSterminfo-0.4.1.4
1288+extra-libraries: tinfo
1289+depends: base-4.14.2.0
1290+haddock-interfaces:
1291+haddock-html:
1292+---
1293+name: text
1294+version: 1.2.4.1
1295+visibility: public
1296+id: text-1.2.4.1
1297+key: text-1.2.4.1
1298+license: BSD-2-Clause
1299+copyright: 2009-2011 Bryan O'Sullivan, 2008-2009 Tom Harper
1300+maintainer:
1301+ Bryan O'Sullivan <bos@serpentine.com>, Herbert Valerio Riedel <hvr@gnu.org>
1302+author: Bryan O'Sullivan <bos@serpentine.com>
1303+homepage: https://github.com/haskell/text
1304+synopsis: An efficient packed Unicode text type.
1305+description:
1306+ An efficient packed, immutable Unicode text type (both strict and
1307+ lazy), with a powerful loop fusion optimization framework.
1308+ The 'Text' type represents Unicode character strings, in a time and
1309+ space-efficient manner. This package provides text processing
1310+ capabilities that are optimized for performance critical use, both
1311+ in terms of large data quantities and high speed.
1312+ The 'Text' type provides character-encoding, type-safe case
1313+ conversion via whole-string case conversion functions (see "Data.Text").
1314+ It also provides a range of functions for converting 'Text' values to
1315+ and from 'ByteStrings', using several standard encodings
1316+ (see "Data.Text.Encoding").
1317+ Efficient locale-sensitive support for text IO is also supported
1318+ (see "Data.Text.IO").
1319+ These modules are intended to be imported qualified, to avoid name
1320+ clashes with Prelude functions, e.g.
1321+ > import qualified Data.Text as T
1322+ == ICU Support
1323+ To use an extended and very rich family of functions for working
1324+ with Unicode text (including normalization, regular expressions,
1325+ non-standard encodings, text breaking, and locales), see
1326+ the [text-icu package](https://hackage.haskell.org/package/text-icu)
1327+ based on the well-respected and liberally
1328+ licensed [ICU library](http://site.icu-project.org/).
1329+ == Internal Representation: UTF-16 vs. UTF-8
1330+ Currently the @text@ library uses UTF-16 as its internal representation
1331+ which is [neither a fixed-width nor always the most dense representation](http://utf8everywhere.org/)
1332+ for Unicode text. We're currently investigating the feasibility
1333+ of [changing Text's internal representation to UTF-8](https://github.com/text-utf8)
1334+ and if you need such a 'Text' type right now you might be interested in using the spin-off
1335+ packages <https://hackage.haskell.org/package/text-utf8 text-utf8> and
1336+ <https://hackage.haskell.org/package/text-short text-short>.
1337+category: Data, Text
1338+exposed: True
1339+exposed-modules:
1340+ Data.Text Data.Text.Array Data.Text.Encoding
1341+ Data.Text.Encoding.Error Data.Text.Foreign Data.Text.IO
1342+ Data.Text.Internal Data.Text.Internal.Builder
1343+ Data.Text.Internal.Builder.Functions
1344+ Data.Text.Internal.Builder.Int.Digits
1345+ Data.Text.Internal.Builder.RealFloat.Functions
1346+ Data.Text.Internal.ByteStringCompat
1347+ Data.Text.Internal.Encoding.Fusion
1348+ Data.Text.Internal.Encoding.Fusion.Common
1349+ Data.Text.Internal.Encoding.Utf16 Data.Text.Internal.Encoding.Utf32
1350+ Data.Text.Internal.Encoding.Utf8 Data.Text.Internal.Functions
1351+ Data.Text.Internal.Fusion Data.Text.Internal.Fusion.CaseMapping
1352+ Data.Text.Internal.Fusion.Common Data.Text.Internal.Fusion.Size
1353+ Data.Text.Internal.Fusion.Types Data.Text.Internal.IO
1354+ Data.Text.Internal.Lazy Data.Text.Internal.Lazy.Encoding.Fusion
1355+ Data.Text.Internal.Lazy.Fusion Data.Text.Internal.Lazy.Search
1356+ Data.Text.Internal.Private Data.Text.Internal.Read
1357+ Data.Text.Internal.Search Data.Text.Internal.Unsafe
1358+ Data.Text.Internal.Unsafe.Char Data.Text.Internal.Unsafe.Shift
1359+ Data.Text.Lazy Data.Text.Lazy.Builder Data.Text.Lazy.Builder.Int
1360+ Data.Text.Lazy.Builder.RealFloat Data.Text.Lazy.Encoding
1361+ Data.Text.Lazy.IO Data.Text.Lazy.Internal Data.Text.Lazy.Read
1362+ Data.Text.Read Data.Text.Unsafe
1363+hidden-modules: Data.Text.Show
1364+import-dirs:
1365+library-dirs:
1366+dynamic-library-dirs:
1367+data-dir:
1368+hs-libraries: HStext-1.2.4.1
1369+depends:
1370+ array-0.5.4.0 base-4.14.2.0 binary-0.8.8.0 bytestring-0.10.12.0
1371+ deepseq-1.4.4.0 ghc-prim-0.6.1 integer-gmp-1.0.3.0
1372+ template-haskell-2.16.0.0
1373+haddock-interfaces:
1374+haddock-html:
1375+---
1376+name: time
1377+version: 1.9.3
1378+visibility: public
1379+id: time-1.9.3
1380+key: time-1.9.3
1381+license: BSD-3-Clause
1382+maintainer: <ashley@semantic.org>
1383+author: Ashley Yakeley
1384+stability: stable
1385+homepage: https://github.com/haskell/time
1386+synopsis: A time library
1387+description: Time, clocks and calendars
1388+category: Time
1389+exposed: True
1390+exposed-modules:
1391+ Data.Time Data.Time.Calendar Data.Time.Calendar.Easter
1392+ Data.Time.Calendar.Julian Data.Time.Calendar.MonthDay
1393+ Data.Time.Calendar.OrdinalDate Data.Time.Calendar.WeekDate
1394+ Data.Time.Clock Data.Time.Clock.POSIX Data.Time.Clock.System
1395+ Data.Time.Clock.TAI Data.Time.Format Data.Time.Format.ISO8601
1396+ Data.Time.Format.Internal Data.Time.LocalTime
1397+hidden-modules:
1398+ Data.Format Data.Time.Calendar.Private Data.Time.Calendar.Days
1399+ Data.Time.Calendar.Gregorian Data.Time.Calendar.CalendarDiffDays
1400+ Data.Time.Calendar.Week Data.Time.Calendar.JulianYearDay
1401+ Data.Time.Clock.Internal.DiffTime
1402+ Data.Time.Clock.Internal.AbsoluteTime
1403+ Data.Time.Clock.Internal.NominalDiffTime
1404+ Data.Time.Clock.Internal.POSIXTime
1405+ Data.Time.Clock.Internal.UniversalTime
1406+ Data.Time.Clock.Internal.SystemTime
1407+ Data.Time.Clock.Internal.UTCTime Data.Time.Clock.Internal.CTimeval
1408+ Data.Time.Clock.Internal.CTimespec Data.Time.Clock.Internal.UTCDiff
1409+ Data.Time.LocalTime.Internal.TimeZone
1410+ Data.Time.LocalTime.Internal.TimeOfDay
1411+ Data.Time.LocalTime.Internal.CalendarDiffTime
1412+ Data.Time.LocalTime.Internal.LocalTime
1413+ Data.Time.LocalTime.Internal.ZonedTime Data.Time.Format.Parse
1414+ Data.Time.Format.Locale Data.Time.Format.Format.Class
1415+ Data.Time.Format.Format.Instances Data.Time.Format.Parse.Class
1416+ Data.Time.Format.Parse.Instances
1417+import-dirs:
1418+library-dirs:
1419+dynamic-library-dirs:
1420+data-dir:
1421+hs-libraries: HStime-1.9.3
1422+include-dirs:
1423+depends: base-4.14.2.0 deepseq-1.4.4.0
1424+haddock-interfaces:
1425+haddock-html:
1426+---
1427+name: transformers
1428+version: 0.5.6.2
1429+visibility: public
1430+id: transformers-0.5.6.2
1431+key: transformers-0.5.6.2
1432+license: BSD-3-Clause
1433+maintainer: Ross Paterson <R.Paterson@city.ac.uk>
1434+author: Andy Gill, Ross Paterson
1435+synopsis: Concrete functor and monad transformers
1436+description:
1437+ A portable library of functor and monad transformers, inspired by
1438+ the paper
1439+ * \"Functional Programming with Overloading and Higher-Order
1440+ Polymorphism\", by Mark P Jones,
1441+ in /Advanced School of Functional Programming/, 1995
1442+ (<http://web.cecs.pdx.edu/~mpj/pubs/springschool.html>).
1443+ This package contains:
1444+ * the monad transformer class (in "Control.Monad.Trans.Class")
1445+ * concrete functor and monad transformers, each with associated
1446+ operations and functions to lift operations associated with other
1447+ transformers.
1448+ The package can be used on its own in portable Haskell code, in
1449+ which case operations need to be manually lifted through transformer
1450+ stacks (see "Control.Monad.Trans.Class" for some examples).
1451+ Alternatively, it can be used with the non-portable monad classes in
1452+ the @mtl@ or @monads-tf@ packages, which automatically lift operations
1453+ introduced by monad transformers through other transformers.
1454+category: Control
1455+exposed: True
1456+exposed-modules:
1457+ Control.Applicative.Backwards Control.Applicative.Lift
1458+ Control.Monad.Signatures Control.Monad.Trans.Accum
1459+ Control.Monad.Trans.Class Control.Monad.Trans.Cont
1460+ Control.Monad.Trans.Error Control.Monad.Trans.Except
1461+ Control.Monad.Trans.Identity Control.Monad.Trans.List
1462+ Control.Monad.Trans.Maybe Control.Monad.Trans.RWS
1463+ Control.Monad.Trans.RWS.CPS Control.Monad.Trans.RWS.Lazy
1464+ Control.Monad.Trans.RWS.Strict Control.Monad.Trans.Reader
1465+ Control.Monad.Trans.Select Control.Monad.Trans.State
1466+ Control.Monad.Trans.State.Lazy Control.Monad.Trans.State.Strict
1467+ Control.Monad.Trans.Writer Control.Monad.Trans.Writer.CPS
1468+ Control.Monad.Trans.Writer.Lazy Control.Monad.Trans.Writer.Strict
1469+ Data.Functor.Constant Data.Functor.Reverse
1470+import-dirs:
1471+library-dirs:
1472+dynamic-library-dirs:
1473+data-dir:
1474+hs-libraries: HStransformers-0.5.6.2
1475+depends: base-4.14.2.0
1476+haddock-interfaces:
1477+haddock-html:
1478+---
1479+name: unix
1480+version: 2.7.2.2
1481+visibility: public
1482+id: unix-2.7.2.2
1483+key: unix-2.7.2.2
1484+license: BSD-3-Clause
1485+maintainer: libraries@haskell.org
1486+homepage: https://github.com/haskell/unix
1487+synopsis: POSIX functionality
1488+description:
1489+ This package gives you access to the set of operating system
1490+ services standardised by
1491+ <http://pubs.opengroup.org/onlinepubs/9699919799/ POSIX.1-2008>
1492+ (or the IEEE Portable Operating System Interface for Computing
1493+ Environments - IEEE Std. 1003.1).
1494+ The package is not supported under Windows.
1495+category: System
1496+exposed: True
1497+exposed-modules:
1498+ System.Posix System.Posix.ByteString
1499+ System.Posix.ByteString.FilePath System.Posix.Directory
1500+ System.Posix.Directory.ByteString System.Posix.DynamicLinker
1501+ System.Posix.DynamicLinker.ByteString
1502+ System.Posix.DynamicLinker.Module
1503+ System.Posix.DynamicLinker.Module.ByteString
1504+ System.Posix.DynamicLinker.Prim System.Posix.Env
1505+ System.Posix.Env.ByteString System.Posix.Error System.Posix.Fcntl
1506+ System.Posix.Files System.Posix.Files.ByteString System.Posix.IO
1507+ System.Posix.IO.ByteString System.Posix.Process
1508+ System.Posix.Process.ByteString System.Posix.Process.Internals
1509+ System.Posix.Resource System.Posix.Semaphore System.Posix.SharedMem
1510+ System.Posix.Signals System.Posix.Signals.Exts System.Posix.Temp
1511+ System.Posix.Temp.ByteString System.Posix.Terminal
1512+ System.Posix.Terminal.ByteString System.Posix.Time
1513+ System.Posix.Unistd System.Posix.User
1514+hidden-modules:
1515+ System.Posix.Directory.Common System.Posix.DynamicLinker.Common
1516+ System.Posix.Files.Common System.Posix.IO.Common
1517+ System.Posix.Process.Common System.Posix.Terminal.Common
1518+import-dirs:
1519+library-dirs:
1520+dynamic-library-dirs:
1521+data-dir:
1522+hs-libraries: HSunix-2.7.2.2
1523+extra-libraries: rt util dl pthread
1524+include-dirs:
1525+includes: HsUnix.h execvpe.h
1526+depends: base-4.14.2.0 bytestring-0.10.12.0 time-1.9.3
1527+haddock-interfaces:
1528+haddock-html:
1529+---
1530+name: xhtml
1531+version: 3000.2.2.1
1532+visibility: public
1533+id: xhtml-3000.2.2.1
1534+key: xhtml-3000.2.2.1
1535+license: BSD-3-Clause
1536+copyright:
1537+ Bjorn Bringert 2004-2006, Andy Gill and the Oregon
1538+ Graduate Institute of Science and Technology, 1999-2001
1539+maintainer: Chris Dornan <chris@chrisdornan.com>
1540+author: Bjorn Bringert
1541+stability: Stable
1542+homepage: https://github.com/haskell/xhtml
1543+synopsis: An XHTML combinator library
1544+description:
1545+ This package provides combinators for producing
1546+ XHTML 1.0, including the Strict, Transitional and
1547+ Frameset variants.
1548+category: Web, XML, Pretty Printer
1549+exposed: True
1550+exposed-modules:
1551+ Text.XHtml Text.XHtml.Debug Text.XHtml.Frameset Text.XHtml.Strict
1552+ Text.XHtml.Table Text.XHtml.Transitional
1553+hidden-modules:
1554+ Text.XHtml.Strict.Attributes Text.XHtml.Strict.Elements
1555+ Text.XHtml.Frameset.Attributes Text.XHtml.Frameset.Elements
1556+ Text.XHtml.Transitional.Attributes Text.XHtml.Transitional.Elements
1557+ Text.XHtml.BlockTable Text.XHtml.Extras Text.XHtml.Internals
1558+import-dirs:
1559+library-dirs:
1560+dynamic-library-dirs:
1561+data-dir:
1562+hs-libraries: HSxhtml-3000.2.2.1
1563+depends: base-4.14.2.0
1564+haddock-interfaces:
1565+haddock-html:
1566+---
1567+name: rts
1568+version: 1.0.1
1569+visibility: public
1570+id: rts
1571+key: rts
1572+license: BSD-3-Clause
1573+maintainer: glasgow-haskell-users@haskell.org
1574+exposed: True
1575+library-dirs:
1576+hs-libraries: HSrts
1577+extra-libraries: m rt dl ffi numa pthread
1578+include-dirs:
1579+includes: Stg.h
1580+ld-options:
1581+ "-Wl,-u,base_GHCziTopHandler_runIO_closure"
1582+ "-Wl,-u,base_GHCziTopHandler_runNonIO_closure"
1583+ "-Wl,-u,ghczmprim_GHCziTuple_Z0T_closure"
1584+ "-Wl,-u,ghczmprim_GHCziTypes_True_closure"
1585+ "-Wl,-u,ghczmprim_GHCziTypes_False_closure"
1586+ "-Wl,-u,base_GHCziPack_unpackCString_closure"
1587+ "-Wl,-u,base_GHCziWeak_runFinalizzerBatch_closure"
1588+ "-Wl,-u,base_GHCziIOziException_stackOverflow_closure"
1589+ "-Wl,-u,base_GHCziIOziException_heapOverflow_closure"
1590+ "-Wl,-u,base_GHCziIOziException_allocationLimitExceeded_closure"
1591+ "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnMVar_closure"
1592+ "-Wl,-u,base_GHCziIOziException_blockedIndefinitelyOnSTM_closure"
1593+ "-Wl,-u,base_GHCziIOziException_cannotCompactFunction_closure"
1594+ "-Wl,-u,base_GHCziIOziException_cannotCompactPinned_closure"
1595+ "-Wl,-u,base_GHCziIOziException_cannotCompactMutable_closure"
1596+ "-Wl,-u,base_ControlziExceptionziBase_absentSumFieldError_closure"
1597+ "-Wl,-u,base_ControlziExceptionziBase_nonTermination_closure"
1598+ "-Wl,-u,base_ControlziExceptionziBase_nestedAtomically_closure"
1599+ "-Wl,-u,base_GHCziEventziThread_blockedOnBadFD_closure"
1600+ "-Wl,-u,base_GHCziConcziSync_runSparks_closure"
1601+ "-Wl,-u,base_GHCziConcziIO_ensureIOManagerIsRunning_closure"
1602+ "-Wl,-u,base_GHCziConcziIO_ioManagerCapabilitiesChanged_closure"
1603+ "-Wl,-u,base_GHCziConcziSignal_runHandlersPtr_closure"
1604+ "-Wl,-u,base_GHCziTopHandler_flushStdHandles_closure"
1605+ "-Wl,-u,base_GHCziTopHandler_runMainIO_closure"
1606+ "-Wl,-u,ghczmprim_GHCziTypes_Czh_con_info"
1607+ "-Wl,-u,ghczmprim_GHCziTypes_Izh_con_info"
1608+ "-Wl,-u,ghczmprim_GHCziTypes_Fzh_con_info"
1609+ "-Wl,-u,ghczmprim_GHCziTypes_Dzh_con_info"
1610+ "-Wl,-u,ghczmprim_GHCziTypes_Wzh_con_info"
1611+ "-Wl,-u,base_GHCziPtr_Ptr_con_info"
1612+ "-Wl,-u,base_GHCziPtr_FunPtr_con_info"
1613+ "-Wl,-u,base_GHCziInt_I8zh_con_info"
1614+ "-Wl,-u,base_GHCziInt_I16zh_con_info"
1615+ "-Wl,-u,base_GHCziInt_I32zh_con_info"
1616+ "-Wl,-u,base_GHCziInt_I64zh_con_info"
1617+ "-Wl,-u,base_GHCziWord_W8zh_con_info"
1618+ "-Wl,-u,base_GHCziWord_W16zh_con_info"
1619+ "-Wl,-u,base_GHCziWord_W32zh_con_info"
1620+ "-Wl,-u,base_GHCziWord_W64zh_con_info"
1621+ "-Wl,-u,base_GHCziStable_StablePtr_con_info"
1622+ "-Wl,-u,hs_atomic_add8" "-Wl,-u,hs_atomic_add16"
1623+ "-Wl,-u,hs_atomic_add32" "-Wl,-u,hs_atomic_add64"
1624+ "-Wl,-u,hs_atomic_sub8" "-Wl,-u,hs_atomic_sub16"
1625+ "-Wl,-u,hs_atomic_sub32" "-Wl,-u,hs_atomic_sub64"
1626+ "-Wl,-u,hs_atomic_and8" "-Wl,-u,hs_atomic_and16"
1627+ "-Wl,-u,hs_atomic_and32" "-Wl,-u,hs_atomic_and64"
1628+ "-Wl,-u,hs_atomic_nand8" "-Wl,-u,hs_atomic_nand16"
1629+ "-Wl,-u,hs_atomic_nand32" "-Wl,-u,hs_atomic_nand64"
1630+ "-Wl,-u,hs_atomic_or8" "-Wl,-u,hs_atomic_or16"
1631+ "-Wl,-u,hs_atomic_or32" "-Wl,-u,hs_atomic_or64"
1632+ "-Wl,-u,hs_atomic_xor8" "-Wl,-u,hs_atomic_xor16"
1633+ "-Wl,-u,hs_atomic_xor32" "-Wl,-u,hs_atomic_xor64"
1634+ "-Wl,-u,hs_cmpxchg8" "-Wl,-u,hs_cmpxchg16" "-Wl,-u,hs_cmpxchg32"
1635+ "-Wl,-u,hs_cmpxchg64" "-Wl,-u,hs_atomicread8"
1636+ "-Wl,-u,hs_atomicread16" "-Wl,-u,hs_atomicread32"
1637+ "-Wl,-u,hs_atomicread64" "-Wl,-u,hs_atomicwrite8"
1638+ "-Wl,-u,hs_atomicwrite16" "-Wl,-u,hs_atomicwrite32"
1639+ "-Wl,-u,hs_atomicwrite64"
materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc-pkg/versionnew file+1
@@ -0,0 +1 @@
1+GHC package manager version 8.10.5
materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc/infonew file+75
@@ -0,0 +1,75 @@
1+ [("Project name","The Glorious Glasgow Haskell Compilation System")
2+ ,("GCC extra via C opts","")
3+ ,("C compiler command","gcc")
4+ ,("C compiler flags","")
5+ ,("C++ compiler flags","")
6+ ,("C compiler link flags","")
7+ ,("C compiler supports -no-pie","YES")
8+ ,("Haskell CPP command","gcc")
9+ ,("Haskell CPP flags","-E -undef -traditional")
10+ ,("ld command","ld")
11+ ,("ld flags","")
12+ ,("ld supports compact unwind","YES")
13+ ,("ld supports build-id","YES")
14+ ,("ld supports filelist","NO")
15+ ,("ld is GNU ld","YES")
16+ ,("Merge objects command","ld")
17+ ,("Merge objects flags","-r")
18+ ,("ar command","ar")
19+ ,("ar flags","q")
20+ ,("ar supports at file","YES")
21+ ,("ranlib command","ranlib")
22+ ,("otool command","otool")
23+ ,("install_name_tool command","install_name_tool")
24+ ,("touch command","touch")
25+ ,("dllwrap command","/bin/false")
26+ ,("windres command","/bin/false")
27+ ,("libtool command","libtool")
28+ ,("cross compiling","NO")
29+ ,("target platform string","x86_64-unknown-linux")
30+ ,("target os","OSLinux")
31+ ,("target arch","ArchX86_64")
32+ ,("target word size","8")
33+ ,("target has GNU nonexec stack","YES")
34+ ,("target has .ident directive","YES")
35+ ,("target has subsections via symbols","NO")
36+ ,("target has RTS linker","YES")
37+ ,("Unregisterised","NO")
38+ ,("LLVM target","x86_64-unknown-linux")
39+ ,("LLVM llc command","llc")
40+ ,("LLVM opt command","opt")
41+ ,("LLVM clang command","clang")
42+ ,("integer library","integer-gmp")
43+ ,("Use interpreter","YES")
44+ ,("Use native code generator","YES")
45+ ,("Support SMP","YES")
46+ ,("RTS ways","l debug thr thr_debug thr_l thr_p dyn debug_dyn thr_dyn thr_debug_dyn l_dyn thr_l_dyn thr_debug_p debug_p")
47+ ,("Tables next to code","YES")
48+ ,("Leading underscore","NO")
49+ ,("Use LibFFI","NO")
50+ ,("Use Threads","YES")
51+ ,("Use Debugging","NO")
52+ ,("RTS expects libdw","NO")
53+ ,("Project version","8.10.5")
54+ ,("Project Git commit id","a43a5650f51fdc04d757abc3d86b0a23ec518259")
55+ ,("Booter version","8.6.5")
56+ ,("Stage","2")
57+ ,("Build platform","x86_64-unknown-linux")
58+ ,("Host platform","x86_64-unknown-linux")
59+ ,("Target platform","x86_64-unknown-linux")
60+ ,("Have interpreter","YES")
61+ ,("Object splitting supported","NO")
62+ ,("Have native code generator","YES")
63+ ,("Support dynamic-too","YES")
64+ ,("Support parallel --make","YES")
65+ ,("Support reexported-modules","YES")
66+ ,("Support thinning and renaming package flags","YES")
67+ ,("Support Backpack","YES")
68+ ,("Requires unified installed package IDs","YES")
69+ ,("Uses package keys","YES")
70+ ,("Uses unit IDs","YES")
71+ ,("Dynamic by default","NO")
72+ ,("GHC Dynamic","YES")
73+ ,("GHC Profiled","NO")
74+ ,("Debug on","NO")
75+ ]
materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc/numeric-versionnew file+1
materialized/dummy-ghc/ghc-8.10.5-x86_64-linux/ghc/supported-languagesnew file+255
@@ -0,0 +1,255 @@
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/ghc-8.10.5-x86_64-linux/ghc/versionnew file+1
@@ -0,0 +1 @@
1+The Glorious Glasgow Haskell Compilation System, version 8.10.5
materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc-pkg/dump-globalnew file+1638
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/infonew file+75
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/supported-languagesnew file+255
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.6-x86_64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc-pkg/dump-globalnew file+1639
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/infonew file+75
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/supported-languagesnew file+255
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.6-x86_64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc-pkg/dump-globalnew file+1639
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/infonew file+73
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/supported-languagesnew file+255
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc-pkg/dump-globalnew file+1638
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/infonew file+73
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/supported-languagesnew file+255
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-aarch64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc-pkg/dump-globalnew file+1639
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/infonew file+75
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/supported-languagesnew file+255
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc-pkg/dump-globalnew file+1638
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/infonew file+75
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/supported-languagesnew file+255
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.10.7-x86_64-linux/ghc/versionnew file+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+6−3
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+4−2
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.8.3-aarch64-linux/ghc/info+5−3
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.8.3-aarch64-linux/ghc/versionnew file+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-globalnew file+1592
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/infonew file+60
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/supported-languagesnew file+247
This diff is too big to show here.
materialized/dummy-ghc/ghc-8.8.4-aarch64-linux/ghc/versionnew file+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-globalnew file+1759
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/infonew file+74
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/supported-languagesnew file+261
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-aarch64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc-pkg/dump-globalnew file+1760
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/infonew file+74
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/supported-languagesnew file+261
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-aarch64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-x86_64-darwin/ghc/info+6
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.1-x86_64-linux/ghc/info+6
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc-pkg/dump-globalnew file+1766
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/infonew file+74
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/supported-languagesnew file+261
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc-pkg/dump-globalnew file+1767
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/infonew file+74
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/supported-languagesnew file+261
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-aarch64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc-pkg/dump-globalnew file+1766
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/infonew file+76
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/supported-languagesnew file+261
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc-pkg/dump-globalnew file+1767
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/infonew file+76
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/supported-languagesnew file+261
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.0.2-x86_64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc-pkg/dump-globalnew file+1826
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/infonew file+73
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc-pkg/dump-globalnew file+1826
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/infonew file+73
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-aarch64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc-pkg/dump-globalnew file+1826
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/infonew file+73
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc-pkg/dump-globalnew file+1826
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/infonew file+73
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.1-x86_64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc-pkg/dump-globalnew file+1834
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc-pkg/dump-globalnew file+1834
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-aarch64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc-pkg/dump-globalnew file+1834
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc-pkg/dump-globalnew file+1834
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.2-x86_64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc-pkg/dump-globalnew file+1834
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc-pkg/dump-globalnew file+1834
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-aarch64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc-pkg/dump-globalnew file+1834
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc-pkg/dump-globalnew file+1834
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/supported-languagesnew file+266
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.3-x86_64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc-pkg/dump-globalnew file+1834
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/supported-languagesnew file+268
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc-pkg/dump-globalnew file+1833
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/supported-languagesnew file+268
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-aarch64-linux/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc-pkg/dump-globalnew file+1834
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/supported-languagesnew file+268
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-darwin/ghc/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc-pkg/dump-globalnew file+1833
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc-pkg/versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/infonew file+72
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/numeric-versionnew file+1
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/supported-languagesnew file+268
This diff is too big to show here.
materialized/dummy-ghc/ghc-9.2.4-x86_64-linux/ghc/versionnew file+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-globalnew file+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-versionnew file+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/versionnew file+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/infonew file+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-versionnew file+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-versionnew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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-versionnew file+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/versionnew file+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/infonew file+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-versionnew file+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-versionnew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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-versionnew file+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/versionnew file+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/infonew file+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-versionnew file+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-versionnew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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-versionnew file+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/versionnew file+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/infonew file+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-versionnew file+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-versionnew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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-versionnew file+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/versionnew file+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/infonew file+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-versionnew file+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-versionnew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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-versionnew file+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/versionnew file+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/infonew file+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-versionnew file+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-versionnew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-global+38−3
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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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+31−2
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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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+37−3
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+37−3
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-global+38−3
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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+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-globalnew file+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/versionnew file+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/infonew file+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-versionnew file+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-languagesnew file+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/versionnew file+1
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8101/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8101/base.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8101/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8101/ghc-prim.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8101/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8101/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8102/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8102/base.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8102/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8102/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8102/integer-gmp.nixnew file+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.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8103/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8103/base.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8103/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8103/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8103/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8103/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8103/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8104/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8104/base.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8104/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8104/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8104/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8104/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8104/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc810420210212/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc810420210212/base.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc810420210212/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc810420210212/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc810420210212/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc810420210212/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc810420210212/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/base.nixnew file+43
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8103/.plan.nix/bytestring.nix → materialized/ghc-boot-packages-nix/ghc8105-aarch64/bytestring.nixrenamed+1−37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc-boot.nixnew file+39
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc-prim.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghc.nixnew file+62
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105-aarch64/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/base.nixnew file+43
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/bytestring.nix → materialized/ghc-boot-packages-nix/ghc8105/bytestring.nixrenamed+1−37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/ghc-boot.nixnew file+39
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/ghc.nixnew file+62
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8105/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/base.nixnew file+43
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/bytestring.nix → materialized/ghc-boot-packages-nix/ghc8106-aarch64/bytestring.nixrenamed+1−37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc-boot.nixnew file+39
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc-prim.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghc.nixnew file+62
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106-aarch64/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/base.nixnew file+43
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/bytestring.nix → materialized/ghc-boot-packages-nix/ghc8106/bytestring.nixrenamed+1−37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/ghc-boot.nixnew file+39
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/ghc.nixnew file+62
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8106/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/base.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/bytestring.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc-boot.nixnew file+39
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc-prim.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghc.nixnew file+62
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107-aarch64/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/base.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/bytestring.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/ghc-boot.nixnew file+39
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/ghc.nixnew file+62
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc8107/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc844/ghc.nix−4
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/base.nixnew file+42
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/bytestring.nix → materialized/ghc-boot-packages-nix/ghc863/bytestring.nixrenamed+1−57
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/ghc-boot.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/ghc-prim.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/ghc.nixnew file+59
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/ghci.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/hpc.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc863/template-haskell.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/base.nixnew file+42
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc865/.plan.nix/bytestring.nix → materialized/ghc-boot-packages-nix/ghc864/bytestring.nixrenamed+1−57
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/ghc-boot.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/ghc-prim.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/ghc.nixnew file+60
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/ghci.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/hpc.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc864/template-haskell.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc865/Win32.nixnew file+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.nixnew file+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.nixnew file+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.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/base.nixnew file+42
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8101/.plan.nix/bytestring.nix → materialized/ghc-boot-packages-nix/ghc882/bytestring.nixrenamed+1−57
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/ghc-boot.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/ghc-prim.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/ghc.nixnew file+61
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/ghci.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/hpc.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc882/template-haskell.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/base.nixnew file+42
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/bytestring.nix → materialized/ghc-boot-packages-nix/ghc883-aarch64/bytestring.nixrenamed+1−57
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc-boot.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc-prim.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/ghc.nixnew file+61
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/ghci.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/hpc.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883-aarch64/template-haskell.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883/base.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc883/ghc-prim.nixnew file+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.nixnew file+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.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/base.nixnew file+42
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/bytestring.nix → materialized/ghc-boot-packages-nix/ghc884-aarch64/bytestring.nixrenamed+4−60
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc-boot.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/ghc.nixnew file+61
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/ghci.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/hpc.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/integer-gmp.nixnew file+33
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884-aarch64/template-haskell.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884/Win32.nixnew file+46
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884/base.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc884/ghc-prim.nixnew file+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.nixnew file+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.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/Win32.nixnew file+49
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc901/.plan.nix/bytestring.nix → materialized/ghc-boot-packages-nix/ghc901-aarch64/bytestring.nixrenamed+1−37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-bignum.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-boot.nixnew file+39
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc-prim.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/ghc.nixnew file+61
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/ghci.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/integer-gmp.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901-aarch64/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901/Win32.nixnew file+49
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc901/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/Win32.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc901/.plan.nix/bytestring.nix → materialized/ghc-boot-packages-nix/ghc902-aarch64/bytestring.nixrenamed+1−37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-bignum.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-boot.nixnew file+39
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc-prim.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/ghc.nixnew file+61
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/integer-gmp.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902-aarch64/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/Win32.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/bytestring.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/ghc-bignum.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/ghc-boot.nixnew file+39
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/ghc-heap.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/ghc.nixnew file+61
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/integer-gmp.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc902/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/Win32.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/bytestring.nixnew file+86
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/deepseq.nixnew file+47
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-bignum.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-boot.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-heap.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc-prim.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/ghc.nixnew file+61
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/integer-gmp.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/pretty.nixnew file+56
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921-aarch64/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/Win32.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/bytestring.nixnew file+86
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/deepseq.nixnew file+47
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/ghc-bignum.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/ghc-boot.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/ghc-heap.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/ghc.nixnew file+61
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/integer-gmp.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/pretty.nixnew file+56
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc921/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/Win32.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/bytestring.nixnew file+68
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/deepseq.nixnew file+47
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-bignum.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-boot.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-heap.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc-prim.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/ghc.nixnew file+60
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/integer-gmp.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/pretty.nixnew file+56
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922-aarch64/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/Win32.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/bytestring.nixnew file+68
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/deepseq.nixnew file+47
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/ghc-bignum.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/ghc-boot.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/ghc-heap.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/ghc.nixnew file+60
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/integer-gmp.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/pretty.nixnew file+56
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc922/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/Win32.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/bytestring.nixnew file+65
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/deepseq.nixnew file+47
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-bignum.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-boot.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-heap.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc-prim.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/ghc.nixnew file+60
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/integer-gmp.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/pretty.nixnew file+56
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923-aarch64/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/Win32.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/bytestring.nixnew file+65
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/deepseq.nixnew file+47
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/ghc-bignum.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/ghc-boot.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/ghc-heap.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/ghc.nixnew file+60
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/integer-gmp.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/pretty.nixnew file+56
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc923/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/Win32.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/bytestring.nixnew file+65
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/deepseq.nixnew file+47
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-bignum.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-boot.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-heap.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc-prim.nixnew file+44
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/ghc.nixnew file+60
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/integer-gmp.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/pretty.nixnew file+56
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924-aarch64/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/Win32.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/base.nixnew file+48
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/bytestring.nixnew file+65
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/deepseq.nixnew file+47
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/ghc-bignum.nixnew file+37
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/ghc-boot.nixnew file+40
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/ghc-heap.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/ghc-prim.nixnew file+43
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/ghc.nixnew file+60
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/ghci.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/hpc.nixnew file+38
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/integer-gmp.nixnew file+35
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/iserv-proxy.nixnew file+45
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/iserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/libiserv.nixnew file+42
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/pretty.nixnew file+56
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/remote-iserv.nixnew file+36
This diff is too big to show here.
materialized/ghc-boot-packages-nix/ghc924/template-haskell.nixnew file+36
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8101/.plan.nix/Win32.nixnew file+155
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+77−39
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/bytestring.nixdeleted−136
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8102/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8102/default.nix+79−41
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8103/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8103/default.nix+79−41
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8104/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8104/default.nix+79−41
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc810420210212/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc810420210212/default.nix+79−41
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/ghc-boot.nixnew file+60
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/ghc.nixnew file+586
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/ghci.nixnew file+71
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/hpc.nixnew file+52
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8105/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8105/default.nixnew file+128
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/ghc-boot.nixnew file+60
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/ghc.nixnew file+586
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/ghci.nixnew file+71
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/hpc.nixnew file+52
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8106/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8106/default.nixnew file+128
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/ghc-boot.nixnew file+60
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/ghc.nixnew file+586
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/ghci.nixnew file+71
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/hpc.nixnew file+52
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8107/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc8107/default.nixnew file+128
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/ghc.nix−4
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc865/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc865/default.nix+79−45
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghc-boot.nixnew file+53
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghc.nixnew file+573
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/ghci.nixnew file+70
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/hpc.nixnew file+51
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc882/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc882/default.nixnew file+127
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/bytestring.nixdeleted−136
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/ghc.nix−4
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc883/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc883/default.nix+78−45
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc884/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc884/.plan.nix/bytestring.nixdeleted−167
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc884/.plan.nix/ghc.nix−4
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc884/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc884/default.nix+78−45
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc901/.plan.nix/Win32.nixnew file+158
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc901/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc901/default.nix+87−46
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc902/.plan.nix/Win32.nixnew file+158
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc902/.plan.nix/ghc-boot.nixnew file+61
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc902/.plan.nix/ghc.nixnew file+572
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc902/.plan.nix/ghci.nixnew file+71
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc902/.plan.nix/hpc.nixnew file+52
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc902/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc902/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc902/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc902/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc902/default.nixnew file+136
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc921/.plan.nix/Win32.nixnew file+158
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc921/.plan.nix/ghc-boot.nixnew file+64
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc921/.plan.nix/ghc.nixnew file+663
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc921/.plan.nix/ghci.nixnew file+70
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc921/.plan.nix/hpc.nixnew file+52
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc921/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc921/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc921/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc921/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc921/default.nixnew file+143
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc922/.plan.nix/Win32.nixnew file+158
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc922/.plan.nix/ghc-boot.nixnew file+64
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc922/.plan.nix/ghc.nixnew file+661
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc922/.plan.nix/ghci.nixnew file+70
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc922/.plan.nix/hpc.nixnew file+52
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc922/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc922/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc922/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc922/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc922/default.nixnew file+138
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc923/.plan.nix/Win32.nixnew file+158
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc923/.plan.nix/ghc-boot.nixnew file+64
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc923/.plan.nix/ghc.nixnew file+661
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc923/.plan.nix/ghci.nixnew file+70
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc923/.plan.nix/hpc.nixnew file+52
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc923/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc923/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc923/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc923/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc923/default.nixnew file+138
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc924/.plan.nix/Win32.nixnew file+158
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc924/.plan.nix/ghc-boot.nixnew file+64
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc924/.plan.nix/ghc.nixnew file+661
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc924/.plan.nix/ghci.nixnew file+70
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc924/.plan.nix/hpc.nixnew file+52
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc924/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc924/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc924/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc924/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/cross/ghc924/default.nixnew file+137
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8101/.plan.nix/Win32.nixnew file+155
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+78−40
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8102/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8102/.plan.nix/bytestring.nixdeleted−136
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8102/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8102/default.nix+80−42
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8103/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8103/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8103/default.nix+80−42
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8104/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8104/.plan.nix/bytestring.nixdeleted−71
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8104/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8104/default.nix+80−42
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/bytestring.nixdeleted−71
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc810420210212/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc810420210212/default.nix+80−42
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8105/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8105/.plan.nix/ghc-boot.nixnew file+60
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8105/.plan.nix/ghc.nixnew file+586
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8105/.plan.nix/ghci.nixnew file+71
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8105/.plan.nix/hpc.nixnew file+52
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8105/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8105/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8105/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8105/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8105/default.nixnew file+129
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8106/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8106/.plan.nix/ghc-boot.nixnew file+60
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8106/.plan.nix/ghc.nixnew file+586
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8106/.plan.nix/ghci.nixnew file+71
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8106/.plan.nix/hpc.nixnew file+52
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8106/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8106/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8106/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8106/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8106/default.nixnew file+129
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8107/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8107/.plan.nix/ghc-boot.nixnew file+60
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8107/.plan.nix/ghc.nixnew file+586
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8107/.plan.nix/ghci.nixnew file+71
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8107/.plan.nix/hpc.nixnew file+52
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8107/.plan.nix/iserv-proxy.nixnew file+55
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8107/.plan.nix/iserv.nixnew file+54
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8107/.plan.nix/libiserv.nixnew file+58
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8107/.plan.nix/remote-iserv.nixnew file+46
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc8107/default.nixnew file+129
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc863/.plan.nix/Win32.nixnew file+155
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc863/.plan.nix/ghc-boot.nixnew file+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−136
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc865/.plan.nix/ghc.nix−4
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc865/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc865/default.nix+79−46
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.nix−4
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc883/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc883/default.nix+79−46
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.nix−4
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc884/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc884/default.nix+79−46
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/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/default/ghc901/default.nix+88−47
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+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghc.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/ghci.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/hpc.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/iserv.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/libiserv.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8101/.plan.nix/remote-iserv.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8101/default.nix+71−38
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/bytestring.nix−136
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8102/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8102/default.nix+73−40
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/bytestring.nix−71
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8103/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8103/default.nix+73−40
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/bytestring.nix−71
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8104/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc8104/default.nix+73−40
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/bytestring.nix−71
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc810420210212/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc810420210212/default.nix+73−40
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/ghc.nix−4
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc865/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc865/default.nix+72−44
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.nix−4
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc883/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc883/default.nix+72−44
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.nix−4
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc884/.plan.nix/iserv-proxy.nix+1−1
This diff is too big to show here.
materialized/ghc-extra-projects/windows/ghc884/default.nix+72−44
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+10−79
This diff is too big to show here.
materialized/ghc8101/cabal-install/default.nix+131−79
This diff is too big to show here.
materialized/ghc8101/nix-tools/default.nix−362
This diff is too big to show here.
materialized/ghc8102/cabal-install/.plan.nix/cabal-install.nix+9−78
This diff is too big to show here.
materialized/ghc8102/cabal-install/default.nix+131−79
This diff is too big to show here.
materialized/ghc8102/nix-tools/.plan.nix/hackage-db.nix+11−1
This diff is too big to show here.
materialized/ghc8102/nix-tools/.plan.nix/nix-tools.nix+1
This diff is too big to show here.
materialized/ghc8102/nix-tools/default.nix+453−297
This diff is too big to show here.
materialized/ghc8103/cabal-install/.plan.nix/cabal-install.nix+9−78
This diff is too big to show here.
materialized/ghc8103/cabal-install/default.nix+131−79
This diff is too big to show here.
materialized/ghc8103/nix-tools/.plan.nix/hackage-db.nix+11−1
This diff is too big to show here.
materialized/ghc8103/nix-tools/.plan.nix/nix-tools.nix+1
This diff is too big to show here.
materialized/ghc8103/nix-tools/default.nix+453−297
This diff is too big to show here.
materialized/ghc8104/cabal-install/.plan.nix/cabal-install.nix+9−78
This diff is too big to show here.
materialized/ghc8104/cabal-install/default.nix+131−79
This diff is too big to show here.
materialized/ghc8104/nix-tools/.plan.nix/hackage-db.nix+11−1
This diff is too big to show here.
materialized/ghc8104/nix-tools/.plan.nix/nix-tools.nix+1
This diff is too big to show here.
materialized/ghc8104/nix-tools/default.nix+453−297
This diff is too big to show here.
materialized/ghc810420210212/cabal-install/.plan.nix/cabal-install.nix+9−78
This diff is too big to show here.
materialized/ghc810420210212/cabal-install/default.nix+131−79
This diff is too big to show here.
materialized/ghc810420210212/nix-tools/.plan.nix/hackage-db.nix+11−1
This diff is too big to show here.
materialized/ghc810420210212/nix-tools/.plan.nix/nix-tools.nix+1
This diff is too big to show here.
materialized/ghc810420210212/nix-tools/default.nix+453−297
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+11−1
This diff is too big to show here.
materialized/ghc8105/nix-tools/.plan.nix/nix-tools.nix+1
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+11−1
This diff is too big to show here.
materialized/ghc8106/nix-tools/.plan.nix/nix-tools.nix+1
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+9−78
This diff is too big to show here.
materialized/ghc865/cabal-install/default.nix+131−79
This diff is too big to show here.
materialized/ghc865/nix-tools/.plan.nix/hackage-db.nix+11−1
This diff is too big to show here.
materialized/ghc865/nix-tools/.plan.nix/nix-tools.nix+1
This diff is too big to show here.
materialized/ghc865/nix-tools/default.nix+445−293
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+9−78
This diff is too big to show here.
materialized/ghc883/cabal-install/default.nix+131−79
This diff is too big to show here.
materialized/ghc883/nix-tools/.plan.nix/hackage-db.nix+11−1
This diff is too big to show here.
materialized/ghc883/nix-tools/.plan.nix/nix-tools.nix+1
This diff is too big to show here.
materialized/ghc883/nix-tools/default.nix+445−293
This diff is too big to show here.
materialized/ghc884/cabal-install/.plan.nix/cabal-install.nix+9−78
This diff is too big to show here.
materialized/ghc884/cabal-install/default.nix+131−79
This diff is too big to show here.
materialized/ghc884/nix-tools/.plan.nix/hackage-db.nix+11−1
This diff is too big to show here.
materialized/ghc884/nix-tools/.plan.nix/nix-tools.nix+1
This diff is too big to show here.
materialized/ghc884/nix-tools/default.nix+445−293
This diff is too big to show here.
materialized/ghc901/cabal-install/.plan.nix/cabal-install.nix+9−78
This diff is too big to show here.
materialized/ghc901/cabal-install/default.nix+131−79
This diff is too big to show here.
materialized/ghc901/nix-tools/default.nix−363
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/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/default.nix+34−16
This diff is too big to show here.
materialized/ghcjs/alex/ghc884/default.nix+34−16
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/default.nix+124−74
This diff is too big to show here.
materialized/ghcjs/cabal/ghc884/default.nix+124−74
This diff is too big to show here.
materialized/ghcjs/ghc8104/.plan.nix/ghcjs-th.nix
This diff is too big to show here.
materialized/ghcjs/ghc8104/.plan.nix/ghcjs.nix
This diff is too big to show here.
materialized/ghcjs/ghc8104/default.nix
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
This diff is too big to show here.
materialized/ghcjs/ghc865/.plan.nix/ghcjs-th.nix
This diff is too big to show here.
materialized/ghcjs/ghc865/.plan.nix/ghcjs.nix
This diff is too big to show here.
materialized/ghcjs/ghc865/.plan.nix/haddock-library-ghcjs.nix
This diff is too big to show here.
materialized/ghcjs/ghc865/.plan.nix/template-haskell-ghcjs.nix
This diff is too big to show here.
materialized/ghcjs/ghc865/default.nix+547−323
This diff is too big to show here.
materialized/ghcjs/ghc884/.plan.nix/ghcjs-th.nix
This diff is too big to show here.
materialized/ghcjs/ghc884/.plan.nix/ghcjs.nix
This diff is too big to show here.
materialized/ghcjs/ghc884/default.nix+495−297
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/default.nix+25−10
This diff is too big to show here.
materialized/ghcjs/happy/ghc884/default.nix+25−10
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−9
This diff is too big to show here.
mkdocs.yml+1−1
This diff is too big to show here.
modules/cabal-project.nix+14−20
This diff is too big to show here.
modules/component-driver.nix+12−6
This diff is too big to show here.
modules/configuration-nix.nix+95−1
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+24−2
This diff is too big to show here.
modules/plan.nix+30−3
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+3−21
This diff is too big to show here.
nix/sources.json−171
This diff is too big to show here.
nix/sources.nix−174
This diff is too big to show here.
overlays/android.nix+28
This diff is too big to show here.
overlays/armv6l-linux.nix+2−1
This diff is too big to show here.
overlays/bootstrap.nix+425−118
This diff is too big to show here.
overlays/default.nix+9−10
This diff is too big to show here.
overlays/emscripten.nix+2−50
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/emscripten-fastcomp.nix−55
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+80−38
This diff is too big to show here.
overlays/ghc.nix+12−8
This diff is too big to show here.
overlays/ghcjs.nix+34−9
This diff is too big to show here.
overlays/hackage-quirks.nix−83
This diff is too big to show here.
overlays/haskell.nix+203−164
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+21−21
This diff is too big to show here.
overlays/musl.nix+9−3
This diff is too big to show here.
overlays/nix-prefetch-git-minimal.nix+14
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+23−12
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/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/external-static-8.10.4.patch+219
This diff is too big to show here.
overlays/patches/ghc/ghc-8.10-3434.patch
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.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.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-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/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+28−42
This diff is too big to show here.
overlays/windows.nix+16−40
This diff is too big to show here.
overlays/wine.nix+10−8
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+6−2
This diff is too big to show here.
release.nix+25−7
This diff is too big to show here.
scripts/check-compiler-materialization/default.nix+40−12
This diff is too big to show here.
scripts/check-hydra.nix+4−3
This diff is too big to show here.
scripts/check-path-support.nix+2−2
This diff is too big to show here.
scripts/options-doc.nix+1−1
This diff is too big to show here.
scripts/update-external.nix+3−3
This diff is too big to show here.
scripts/update-hackage.nix+1−1
This diff is too big to show here.
scripts/update-pins.nix+1−1
This diff is too big to show here.
scripts/update-stackage.nix+1−1
This diff is too big to show here.
shell.nix+1−12
This diff is too big to show here.
snapshots.nix+1−1
This diff is too big to show here.
stackage-src.json+4−4
This diff is too big to show here.
test/buildable/default.nix+2−2
This diff is too big to show here.
test/builder-haddock/.plan.nix/test-haddock.nix+12−43
This diff is too big to show here.
test/builder-haddock/default.nix+4−2
This diff is too big to show here.
test/builder-haddock/pkgs.nix+18−6
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+4−3
This diff is too big to show here.
test/cabal-doctests/default.nix+3−3
This diff is too big to show here.
test/cabal-hpack/default.nix+3−3
This diff is too big to show here.
test/cabal-simple-debug/default.nix+8−3
This diff is too big to show here.
test/cabal-simple-prof/default.nix+7−3
This diff is too big to show here.
test/cabal-simple/default.nix+8−4
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+3−3
This diff is too big to show here.
test/cabal-source-repo/cabal.project+3−1
This diff is too big to show here.
test/cabal-source-repo/default.nix+3−3
This diff is too big to show here.
test/cabal-sublib/default.nix+6−2
This diff is too big to show here.
test/call-cabal-project-to-nix/default.nix+7−2
This diff is too big to show here.
test/call-stack-to-nix/default.nix+4−2
This diff is too big to show here.
test/coverage-golden/default.nix+3−2
This diff is too big to show here.
test/coverage-no-libs/default.nix+3−2
This diff is too big to show here.
test/coverage/default.nix+3−2
This diff is too big to show here.
test/default.nix+48−33
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+3−3
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+6−7
This diff is too big to show here.
test/extra-hackage/external-package-user/cabal.project+6−2
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+5
This diff is too big to show here.
test/ghc-options/cabal.nix+3−3
This diff is too big to show here.
test/ghc-options/stack.nix+10−2
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+3−3
This diff is too big to show here.
test/haskell-language-server/cabal.nix+4−4
This diff is too big to show here.
test/haskell-language-server/stack.nix+9−12
This diff is too big to show here.
test/index-state/default.nix+3−3
This diff is too big to show here.
test/project-flags/cabal.nix+3−3
This diff is too big to show here.
test/project-flags/stack.nix+3−1
This diff is too big to show here.
test/setup-deps/default.nix+6−9
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+4−5
This diff is too big to show here.
test/shell-for-setup-deps/default.nix+6−4
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+14−45
This diff is too big to show here.
test/shell-for/.plan.nix/pkgb.nix+24−55
This diff is too big to show here.
test/shell-for/default.nix+4−2
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+250−164
This diff is too big to show here.
test/snapshots/default.nix+2−2
This diff is too big to show here.
test/stack-local-resolver-subdir/default.nix+3−1
This diff is too big to show here.
test/stack-local-resolver/default.nix+3−1
This diff is too big to show here.
test/stack-remote-resolver/default.nix+3−1
This diff is too big to show here.
test/stack-simple/default.nix+4−2
This diff is too big to show here.
test/stack-simple/pkgs.nix+7−1
This diff is too big to show here.
test/stack-simple/stack-simple.nix+16−47
This diff is too big to show here.
test/stack-source-repo/default.nix+3−1
This diff is too big to show here.
test/sublib-docs/default.nix+6−2
This diff is too big to show here.
test/tests.sh+10−4
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+128−15
This diff is too big to show here.
test/with-packages/.plan.nix/test-with-packages.nix+12−43
This diff is too big to show here.
test/with-packages/default.nix+6−3
This diff is too big to show here.
test/with-packages/pkgs.nix+161−118
This diff is too big to show here.