on iko/ghcjs-patch-master help sign in
Use targetPackages.ncurses for ghc cross compiler (#1513)

We have been disabling terminfo in our GHC builds for cross compilers (windows and musl). This leads to an interesting problem when we `cabal configure` a project that needs `ghc`. The resulting `plan.json` might suggest that we should use the preexisting `ghc`. When it does though it does not include the `flags` needed to build it. One fix would be to default the the `ghc` `terminfo` flag to `false` for cross compilers. It turns out though that the reason we could not get the `terminfo` package to work with our cross compilers was that we were providing the `hostPlatform` `ncursers` when we needed the `targetPlatform` `ncursers`. Fixing that makes the cross compilers more like the native ones. Also stops pinning wine to 5.4 on macOS (pinned version does not work there)

commit2812ae6745dbab5be29bef699fc514a2b7790a55 authorHamish Mackenzie <Hamish.K.Mackenzie@gmail.com> dateSat 11 Jun 2022, 08:37 (4 years ago) parent75b545a
18 files changed+430−42
compiler/ghc/default.nix+11−6 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 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc-pkg/dump-global+38−3 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc-pkg/dump-global+38−3 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc-pkg/dump-global+38−3 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 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 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 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc-pkg/dump-global+38−3 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc-pkg/dump-global+38−3 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc-pkg/dump-global+37−2 materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc-pkg/dump-global+37−2 materialized/ghc-extra-projects/cross/ghc865/default.nix+2−1 materialized/ghc-extra-projects/cross/ghc902/default.nix+1 materialized/ghc-extra-projects/cross/ghc922/default.nix+1 materialized/ghc-extra-projects/cross/ghc923/default.nix+1 overlays/ghc-packages.nix+1−1 overlays/wine.nix+5−4
compiler/ghc/default.nix+11−6
@@ -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
@@ -41,8 +43,9 @@ let self =
4143
4244, enableDWARF ? false
4345
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
46+, enableTerminfo ?
47+ # Terminfo does not work on older ghc cross arm and windows compilers
48+ (!haskell-nix.haskellLib.isCrossTarget || !(stdenv.targetPlatform.isAarch64 || stdenv.targetPlatform.isWindows) || builtins.compareVersions ghc-version "8.10" >= 0)
4649
4750, # Wheter to build in NUMA support
4851 enableNUMA ? true
@@ -144,11 +147,13 @@ let
144147 '';
145148
146149 # Splicer will pull out correct variations
147− libDeps = platform: lib.optional enableTerminfo [ ncurses ncurses.dev ]
150+ libDeps = platform: lib.optional enableTerminfo [ targetPackages.ncurses targetPackages.ncurses.dev ]
148151 ++ [targetLibffi]
149152 ++ lib.optional (!enableIntegerSimple) gmp
150153 ++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv
151− ++ lib.optional (enableNUMA && platform.isLinux && !platform.isAarch32 && !platform.isAndroid) numactl;
154+ ++ lib.optional (enableNUMA && platform.isLinux && !platform.isAarch32 && !platform.isAndroid) numactl
155+ # 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
156+ ++ lib.optional (!enableTerminfo && haskell-nix.haskellLib.isCrossTarget && (stdenv.targetPlatform.isAarch64 || stdenv.targetPlatform.isWindows) && builtins.compareVersions ghc-version "8.10" < 0) ncurses.dev;
152157
153158 toolsForTarget =
154159 if hostPlatform == buildPlatform then
@@ -240,7 +245,7 @@ stdenv.mkDerivation (rec {
240245 # `--with` flags for libraries needed for RTS linker
241246 configureFlags = [
242247 "--datadir=$doc/share/doc/ghc"
243− "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
248+ "--with-curses-includes=${targetPackages.ncurses.dev}/include" "--with-curses-libraries=${targetPackages.ncurses.out}/lib"
244249 ] ++ lib.optionals (targetLibffi != null) ["--with-system-libffi" "--with-ffi-includes=${targetLibffi.dev}/include" "--with-ffi-libraries=${targetLibffi.out}/lib"
245250 ] ++ lib.optional (!enableIntegerSimple) [
246251 "--with-gmp-includes=${targetGmp.dev}/include" "--with-gmp-libraries=${targetGmp.out}/lib"
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
@@ -710,8 +710,8 @@ depends:
710710 containers-0.6.2.1 deepseq-1.4.4.0 directory-1.3.6.0
711711 filepath-1.4.2.1 ghc-boot-8.10.4 ghc-boot-th-8.10.4 ghc-heap-8.10.4
712712 ghci-8.10.4 hpc-0.6.1.0 integer-gmp-1.0.3.0 process-1.6.9.0
713− template-haskell-2.16.0.0 time-1.9.3 transformers-0.5.6.2
714− unix-2.7.2.2
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
715715haddock-interfaces:
716716haddock-html:
717717---
@@ -938,6 +938,7 @@ hidden-modules:
938938 System.Console.Haskeline.Backend.Posix
939939 System.Console.Haskeline.Backend.Posix.Encoder
940940 System.Console.Haskeline.Backend.DumbTerm
941+ System.Console.Haskeline.Backend.Terminfo
941942import-dirs:
942943library-dirs:
943944dynamic-library-dirs:
@@ -946,7 +947,8 @@ hs-libraries: HShaskeline-0.8.0.1
946947depends:
947948 base-4.14.1.0 bytestring-0.10.12.0 containers-0.6.2.1
948949 directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
949− process-1.6.9.0 stm-2.5.0.0 transformers-0.5.6.2 unix-2.7.2.2
950+ process-1.6.9.0 stm-2.5.0.0 terminfo-0.4.1.4 transformers-0.5.6.2
951+ unix-2.7.2.2
950952haddock-interfaces:
951953haddock-html:
952954---
@@ -1255,6 +1257,39 @@ depends:
12551257haddock-interfaces:
12561258haddock-html:
12571259---
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.1.0
1290+haddock-interfaces:
1291+haddock-html:
1292+---
12581293name: text
12591294version: 1.2.4.1
12601295visibility: public
materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.5-x86_64-linux/ghc-pkg/dump-global+38−3
@@ -710,8 +710,8 @@ depends:
710710 containers-0.6.4.1 deepseq-1.4.4.0 directory-1.3.6.0
711711 filepath-1.4.2.1 ghc-boot-8.10.5 ghc-boot-th-8.10.5 ghc-heap-8.10.5
712712 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 time-1.9.3 transformers-0.5.6.2
714− unix-2.7.2.2
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
715715haddock-interfaces:
716716haddock-html:
717717---
@@ -938,6 +938,7 @@ hidden-modules:
938938 System.Console.Haskeline.Backend.Posix
939939 System.Console.Haskeline.Backend.Posix.Encoder
940940 System.Console.Haskeline.Backend.DumbTerm
941+ System.Console.Haskeline.Backend.Terminfo
941942import-dirs:
942943library-dirs:
943944dynamic-library-dirs:
@@ -946,7 +947,8 @@ hs-libraries: HShaskeline-0.8.0.1
946947depends:
947948 base-4.14.2.0 bytestring-0.10.12.0 containers-0.6.4.1
948949 directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
949− process-1.6.9.0 stm-2.5.0.1 transformers-0.5.6.2 unix-2.7.2.2
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
950952haddock-interfaces:
951953haddock-html:
952954---
@@ -1255,6 +1257,39 @@ depends:
12551257haddock-interfaces:
12561258haddock-html:
12571259---
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+---
12581293name: text
12591294version: 1.2.4.1
12601295visibility: public
materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.6-x86_64-linux/ghc-pkg/dump-global+38−3
@@ -710,8 +710,8 @@ depends:
710710 containers-0.6.5.1 deepseq-1.4.4.0 directory-1.3.6.0
711711 filepath-1.4.2.1 ghc-boot-8.10.6 ghc-boot-th-8.10.6 ghc-heap-8.10.6
712712 ghci-8.10.6 hpc-0.6.1.0 integer-gmp-1.0.3.0 process-1.6.13.2
713− template-haskell-2.16.0.0 time-1.9.3 transformers-0.5.6.2
714− unix-2.7.2.2
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
715715haddock-interfaces:
716716haddock-html:
717717---
@@ -938,6 +938,7 @@ hidden-modules:
938938 System.Console.Haskeline.Backend.Posix
939939 System.Console.Haskeline.Backend.Posix.Encoder
940940 System.Console.Haskeline.Backend.DumbTerm
941+ System.Console.Haskeline.Backend.Terminfo
941942import-dirs:
942943library-dirs:
943944dynamic-library-dirs:
@@ -946,7 +947,8 @@ hs-libraries: HShaskeline-0.8.2
946947depends:
947948 base-4.14.3.0 bytestring-0.10.12.0 containers-0.6.5.1
948949 directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
949− process-1.6.13.2 stm-2.5.0.1 transformers-0.5.6.2 unix-2.7.2.2
950+ process-1.6.13.2 stm-2.5.0.1 terminfo-0.4.1.4 transformers-0.5.6.2
951+ unix-2.7.2.2
950952haddock-interfaces:
951953haddock-html:
952954---
@@ -1255,6 +1257,39 @@ depends:
12551257haddock-interfaces:
12561258haddock-html:
12571259---
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.3.0
1290+haddock-interfaces:
1291+haddock-html:
1292+---
12581293name: text
12591294version: 1.2.4.1
12601295visibility: public
materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-8.10.7-x86_64-linux/ghc-pkg/dump-global+38−3
@@ -710,8 +710,8 @@ depends:
710710 containers-0.6.5.1 deepseq-1.4.4.0 directory-1.3.6.0
711711 filepath-1.4.2.1 ghc-boot-8.10.7 ghc-boot-th-8.10.7 ghc-heap-8.10.7
712712 ghci-8.10.7 hpc-0.6.1.0 integer-gmp-1.0.3.0 process-1.6.13.2
713− template-haskell-2.16.0.0 time-1.9.3 transformers-0.5.6.2
714− unix-2.7.2.2
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
715715haddock-interfaces:
716716haddock-html:
717717---
@@ -938,6 +938,7 @@ hidden-modules:
938938 System.Console.Haskeline.Backend.Posix
939939 System.Console.Haskeline.Backend.Posix.Encoder
940940 System.Console.Haskeline.Backend.DumbTerm
941+ System.Console.Haskeline.Backend.Terminfo
941942import-dirs:
942943library-dirs:
943944dynamic-library-dirs:
@@ -946,7 +947,8 @@ hs-libraries: HShaskeline-0.8.2
946947depends:
947948 base-4.14.3.0 bytestring-0.10.12.0 containers-0.6.5.1
948949 directory-1.3.6.0 exceptions-0.10.4 filepath-1.4.2.1
949− process-1.6.13.2 stm-2.5.0.1 transformers-0.5.6.2 unix-2.7.2.2
950+ process-1.6.13.2 stm-2.5.0.1 terminfo-0.4.1.4 transformers-0.5.6.2
951+ unix-2.7.2.2
950952haddock-interfaces:
951953haddock-html:
952954---
@@ -1255,6 +1257,39 @@ depends:
12551257haddock-interfaces:
12561258haddock-html:
12571259---
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.3.0
1290+haddock-interfaces:
1291+haddock-html:
1292+---
12581293name: text
12591294version: 1.2.4.1
12601295visibility: public
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
@@ -602,7 +602,7 @@ depends:
602602 containers-0.6.0.1 deepseq-1.4.4.0 directory-1.3.3.0
603603 filepath-1.4.2.1 ghc-boot-8.6.5 ghc-boot-th-8.6.5 ghc-heap-8.6.5
604604 ghci-8.6.5 hpc-0.6.0.3 process-1.6.5.0 template-haskell-2.14.0.0
605− time-1.8.0.2 transformers-0.5.6.2 unix-2.7.2.2
605+ terminfo-0.4.1.2 time-1.8.0.2 transformers-0.5.6.2 unix-2.7.2.2
606606---
607607name: ghc-boot
608608version: 8.6.5
@@ -786,11 +786,12 @@ hidden-modules: System.Console.Haskeline.Backend
786786 System.Console.Haskeline.Backend.Posix
787787 System.Console.Haskeline.Backend.Posix.Encoder
788788 System.Console.Haskeline.Backend.DumbTerm
789+ System.Console.Haskeline.Backend.Terminfo
789790hs-libraries: HShaskeline-0.7.4.3
790791depends:
791792 base-4.12.0.0 bytestring-0.10.8.2 containers-0.6.0.1
792793 directory-1.3.3.0 filepath-1.4.2.1 process-1.6.5.0 stm-2.5.0.0
793− transformers-0.5.6.2 unix-2.7.2.2
794+ terminfo-0.4.1.2 transformers-0.5.6.2 unix-2.7.2.2
794795---
795796name: hpc
796797version: 0.6.0.3
@@ -1118,6 +1119,34 @@ hs-libraries: HStemplate-haskell-2.14.0.0
11181119depends:
11191120 base-4.12.0.0 ghc-boot-th-8.6.5 pretty-1.1.3.6
11201121---
1122+name: terminfo
1123+version: 0.4.1.2
1124+id: terminfo-0.4.1.2
1125+key: terminfo-0.4.1.2
1126+license: BSD-3-Clause
1127+copyright: (c) Judah Jacobson
1128+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
1129+author: Judah Jacobson
1130+stability: Stable
1131+homepage: https://github.com/judah/terminfo
1132+synopsis: Haskell bindings to the terminfo library.
1133+description:
1134+ This library provides an interface to the terminfo database (via bindings to the
1135+ curses library). <http://en.wikipedia.org/wiki/Terminfo Terminfo> allows POSIX
1136+ systems to interact with a variety of terminals using a standard set of capabilities.
1137+category: User Interfaces
1138+exposed: True
1139+exposed-modules:
1140+ System.Console.Terminfo System.Console.Terminfo.Base
1141+ System.Console.Terminfo.Color System.Console.Terminfo.Cursor
1142+ System.Console.Terminfo.Edit System.Console.Terminfo.Effects
1143+ System.Console.Terminfo.Keys
1144+hs-libraries: HSterminfo-0.4.1.2
1145+extra-libraries:
1146+ tinfo
1147+depends:
1148+ base-4.12.0.0
1149+---
11211150name: text
11221151version: 1.2.3.1
11231152id: text-1.2.3.1
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
@@ -667,8 +667,8 @@ depends:
667667 containers-0.6.2.1 deepseq-1.4.4.0 directory-1.3.6.0
668668 filepath-1.4.2.1 ghc-boot-8.8.4 ghc-boot-th-8.8.4 ghc-heap-8.8.4
669669 ghci-8.8.4 hpc-0.6.0.3 integer-gmp-1.0.2.0 process-1.6.9.0
670− template-haskell-2.15.0.0 time-1.9.3 transformers-0.5.6.2
671− unix-2.7.2.2
670+ template-haskell-2.15.0.0 terminfo-0.4.1.4 time-1.9.3
671+ transformers-0.5.6.2 unix-2.7.2.2
672672haddock-interfaces:
673673haddock-html:
674674---
@@ -894,6 +894,7 @@ hidden-modules:
894894 System.Console.Haskeline.Backend.Posix
895895 System.Console.Haskeline.Backend.Posix.Encoder
896896 System.Console.Haskeline.Backend.DumbTerm
897+ System.Console.Haskeline.Backend.Terminfo
897898import-dirs:
898899library-dirs:
899900dynamic-library-dirs:
@@ -902,7 +903,7 @@ hs-libraries: HShaskeline-0.7.5.0
902903depends:
903904 base-4.13.0.0 bytestring-0.10.10.1 containers-0.6.2.1
904905 directory-1.3.6.0 filepath-1.4.2.1 process-1.6.9.0 stm-2.5.0.0
905− transformers-0.5.6.2 unix-2.7.2.2
906+ terminfo-0.4.1.4 transformers-0.5.6.2 unix-2.7.2.2
906907haddock-interfaces:
907908haddock-html:
908909---
@@ -1210,6 +1211,39 @@ depends: base-4.13.0.0 ghc-boot-th-8.8.4 pretty-1.1.3.6
12101211haddock-interfaces:
12111212haddock-html:
12121213---
1214+name: terminfo
1215+version: 0.4.1.4
1216+visibility: public
1217+id: terminfo-0.4.1.4
1218+key: terminfo-0.4.1.4
1219+license: BSD-3-Clause
1220+copyright: (c) Judah Jacobson
1221+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
1222+author: Judah Jacobson
1223+stability: Stable
1224+homepage: https://github.com/judah/terminfo
1225+synopsis: Haskell bindings to the terminfo library.
1226+description:
1227+ This library provides an interface to the terminfo database (via bindings to the
1228+ curses library). <http://en.wikipedia.org/wiki/Terminfo Terminfo> allows POSIX
1229+ systems to interact with a variety of terminals using a standard set of capabilities.
1230+category: User Interfaces
1231+exposed: True
1232+exposed-modules:
1233+ System.Console.Terminfo System.Console.Terminfo.Base
1234+ System.Console.Terminfo.Color System.Console.Terminfo.Cursor
1235+ System.Console.Terminfo.Edit System.Console.Terminfo.Effects
1236+ System.Console.Terminfo.Keys
1237+import-dirs:
1238+library-dirs:
1239+dynamic-library-dirs:
1240+data-dir:
1241+hs-libraries: HSterminfo-0.4.1.4
1242+extra-libraries: tinfo
1243+depends: base-4.13.0.0
1244+haddock-interfaces:
1245+haddock-html:
1246+---
12131247name: text
12141248version: 1.2.4.0
12151249visibility: public
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
@@ -798,8 +798,8 @@ depends:
798798 containers-0.6.4.1 deepseq-1.4.5.0 directory-1.3.6.1
799799 exceptions-0.10.4 filepath-1.4.2.1 ghc-boot-9.0.1 ghc-boot-th-9.0.1
800800 ghc-heap-9.0.1 ghci-9.0.1 hpc-0.6.1.0 process-1.6.11.0
801− template-haskell-2.17.0.0 time-1.9.3 transformers-0.5.6.2
802− unix-2.7.2.2
801+ template-haskell-2.17.0.0 terminfo-0.4.1.4 time-1.9.3
802+ transformers-0.5.6.2 unix-2.7.2.2
803803haddock-interfaces:
804804haddock-html:
805805---
@@ -1058,6 +1058,7 @@ hidden-modules:
10581058 System.Console.Haskeline.Backend.Posix
10591059 System.Console.Haskeline.Backend.Posix.Encoder
10601060 System.Console.Haskeline.Backend.DumbTerm
1061+ System.Console.Haskeline.Backend.Terminfo
10611062import-dirs:
10621063library-dirs:
10631064dynamic-library-dirs:
@@ -1066,7 +1067,8 @@ hs-libraries: HShaskeline-0.8.1.0
10661067depends:
10671068 base-4.15.0.0 bytestring-0.10.12.1 containers-0.6.4.1
10681069 directory-1.3.6.1 exceptions-0.10.4 filepath-1.4.2.1
1069− process-1.6.11.0 stm-2.5.0.0 transformers-0.5.6.2 unix-2.7.2.2
1070+ process-1.6.11.0 stm-2.5.0.0 terminfo-0.4.1.4 transformers-0.5.6.2
1071+ unix-2.7.2.2
10701072haddock-interfaces:
10711073haddock-html:
10721074---
@@ -1371,6 +1373,39 @@ depends:
13711373haddock-interfaces:
13721374haddock-html:
13731375---
1376+name: terminfo
1377+version: 0.4.1.4
1378+visibility: public
1379+id: terminfo-0.4.1.4
1380+key: terminfo-0.4.1.4
1381+license: BSD-3-Clause
1382+copyright: (c) Judah Jacobson
1383+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
1384+author: Judah Jacobson
1385+stability: Stable
1386+homepage: https://github.com/judah/terminfo
1387+synopsis: Haskell bindings to the terminfo library.
1388+description:
1389+ This library provides an interface to the terminfo database (via bindings to the
1390+ curses library). <http://en.wikipedia.org/wiki/Terminfo Terminfo> allows POSIX
1391+ systems to interact with a variety of terminals using a standard set of capabilities.
1392+category: User Interfaces
1393+exposed: True
1394+exposed-modules:
1395+ System.Console.Terminfo System.Console.Terminfo.Base
1396+ System.Console.Terminfo.Color System.Console.Terminfo.Cursor
1397+ System.Console.Terminfo.Edit System.Console.Terminfo.Effects
1398+ System.Console.Terminfo.Keys
1399+import-dirs:
1400+library-dirs:
1401+dynamic-library-dirs:
1402+data-dir:
1403+hs-libraries: HSterminfo-0.4.1.4
1404+extra-libraries: tinfo
1405+depends: base-4.15.0.0
1406+haddock-interfaces:
1407+haddock-html:
1408+---
13741409name: text
13751410version: 1.2.4.1
13761411visibility: public
materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.0.2-x86_64-linux/ghc-pkg/dump-global+38−3
@@ -798,8 +798,8 @@ depends:
798798 containers-0.6.4.1 deepseq-1.4.5.0 directory-1.3.6.2
799799 exceptions-0.10.4 filepath-1.4.2.1 ghc-boot-9.0.2 ghc-boot-th-9.0.2
800800 ghc-heap-9.0.2 ghci-9.0.2 hpc-0.6.1.0 process-1.6.13.2
801− template-haskell-2.17.0.0 time-1.9.3 transformers-0.5.6.2
802− unix-2.7.2.2
801+ template-haskell-2.17.0.0 terminfo-0.4.1.5 time-1.9.3
802+ transformers-0.5.6.2 unix-2.7.2.2
803803haddock-interfaces:
804804haddock-html:
805805---
@@ -1062,6 +1062,7 @@ hidden-modules:
10621062 System.Console.Haskeline.Backend.Posix
10631063 System.Console.Haskeline.Backend.Posix.Encoder
10641064 System.Console.Haskeline.Backend.DumbTerm
1065+ System.Console.Haskeline.Backend.Terminfo
10651066import-dirs:
10661067library-dirs:
10671068dynamic-library-dirs:
@@ -1070,7 +1071,8 @@ hs-libraries: HShaskeline-0.8.2
10701071depends:
10711072 base-4.15.1.0 bytestring-0.10.12.1 containers-0.6.4.1
10721073 directory-1.3.6.2 exceptions-0.10.4 filepath-1.4.2.1
1073− process-1.6.13.2 stm-2.5.0.0 transformers-0.5.6.2 unix-2.7.2.2
1074+ process-1.6.13.2 stm-2.5.0.0 terminfo-0.4.1.5 transformers-0.5.6.2
1075+ unix-2.7.2.2
10741076haddock-interfaces:
10751077haddock-html:
10761078---
@@ -1378,6 +1380,39 @@ depends:
13781380haddock-interfaces:
13791381haddock-html:
13801382---
1383+name: terminfo
1384+version: 0.4.1.5
1385+visibility: public
1386+id: terminfo-0.4.1.5
1387+key: terminfo-0.4.1.5
1388+license: BSD-3-Clause
1389+copyright: (c) Judah Jacobson
1390+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
1391+author: Judah Jacobson
1392+stability: Stable
1393+homepage: https://github.com/judah/terminfo
1394+synopsis: Haskell bindings to the terminfo library.
1395+description:
1396+ This library provides an interface to the terminfo database (via bindings to the
1397+ curses library). <http://en.wikipedia.org/wiki/Terminfo Terminfo> allows POSIX
1398+ systems to interact with a variety of terminals using a standard set of capabilities.
1399+category: User Interfaces
1400+exposed: True
1401+exposed-modules:
1402+ System.Console.Terminfo System.Console.Terminfo.Base
1403+ System.Console.Terminfo.Color System.Console.Terminfo.Cursor
1404+ System.Console.Terminfo.Edit System.Console.Terminfo.Effects
1405+ System.Console.Terminfo.Keys
1406+import-dirs:
1407+library-dirs:
1408+dynamic-library-dirs:
1409+data-dir:
1410+hs-libraries: HSterminfo-0.4.1.5
1411+extra-libraries: tinfo
1412+depends: base-4.15.1.0
1413+haddock-interfaces:
1414+haddock-html:
1415+---
13811416name: text
13821417version: 1.2.5.0
13831418visibility: public
materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.1-x86_64-linux/ghc-pkg/dump-global+38−3
@@ -848,8 +848,8 @@ depends:
848848 containers-0.6.5.1 deepseq-1.4.6.0 directory-1.3.6.2
849849 exceptions-0.10.4 filepath-1.4.2.1 ghc-boot-9.2.1 ghc-heap-9.2.1
850850 ghci-9.2.1 hpc-0.6.1.0 parsec-3.1.14.0 process-1.6.13.2
851− template-haskell-2.18.0.0 time-1.11.1.1 transformers-0.5.6.2
852− unix-2.7.2.2
851+ template-haskell-2.18.0.0 terminfo-0.4.1.5 time-1.11.1.1
852+ transformers-0.5.6.2 unix-2.7.2.2
853853haddock-interfaces:
854854haddock-html:
855855---
@@ -1120,6 +1120,7 @@ hidden-modules:
11201120 System.Console.Haskeline.Backend.Posix
11211121 System.Console.Haskeline.Backend.Posix.Encoder
11221122 System.Console.Haskeline.Backend.DumbTerm
1123+ System.Console.Haskeline.Backend.Terminfo
11231124import-dirs:
11241125library-dirs:
11251126dynamic-library-dirs:
@@ -1128,7 +1129,8 @@ hs-libraries: HShaskeline-0.8.2
11281129depends:
11291130 base-4.16.0.0 bytestring-0.11.1.0 containers-0.6.5.1
11301131 directory-1.3.6.2 exceptions-0.10.4 filepath-1.4.2.1
1131− process-1.6.13.2 stm-2.5.0.0 transformers-0.5.6.2 unix-2.7.2.2
1132+ process-1.6.13.2 stm-2.5.0.0 terminfo-0.4.1.5 transformers-0.5.6.2
1133+ unix-2.7.2.2
11321134haddock-interfaces:
11331135haddock-html:
11341136---
@@ -1436,6 +1438,39 @@ depends:
14361438haddock-interfaces:
14371439haddock-html:
14381440---
1441+name: terminfo
1442+version: 0.4.1.5
1443+visibility: public
1444+id: terminfo-0.4.1.5
1445+key: terminfo-0.4.1.5
1446+license: BSD-3-Clause
1447+copyright: (c) Judah Jacobson
1448+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
1449+author: Judah Jacobson
1450+stability: Stable
1451+homepage: https://github.com/judah/terminfo
1452+synopsis: Haskell bindings to the terminfo library.
1453+description:
1454+ This library provides an interface to the terminfo database (via bindings to the
1455+ curses library). <http://en.wikipedia.org/wiki/Terminfo Terminfo> allows POSIX
1456+ systems to interact with a variety of terminals using a standard set of capabilities.
1457+category: User Interfaces
1458+exposed: True
1459+exposed-modules:
1460+ System.Console.Terminfo System.Console.Terminfo.Base
1461+ System.Console.Terminfo.Color System.Console.Terminfo.Cursor
1462+ System.Console.Terminfo.Edit System.Console.Terminfo.Effects
1463+ System.Console.Terminfo.Keys
1464+import-dirs:
1465+library-dirs:
1466+dynamic-library-dirs:
1467+data-dir:
1468+hs-libraries: HSterminfo-0.4.1.5
1469+extra-libraries: tinfo
1470+depends: base-4.16.0.0
1471+haddock-interfaces:
1472+haddock-html:
1473+---
14391474name: text
14401475version: 1.2.5.0
14411476visibility: public
materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.2-x86_64-linux/ghc-pkg/dump-global+37−2
@@ -854,7 +854,7 @@ depends:
854854 containers-0.6.5.1 deepseq-1.4.6.1 directory-1.3.6.2
855855 exceptions-0.10.4 filepath-1.4.2.2 ghc-boot-9.2.2 ghc-heap-9.2.2
856856 ghci-9.2.2 hpc-0.6.1.0 process-1.6.13.2 template-haskell-2.18.0.0
857− time-1.11.1.1 transformers-0.5.6.2 unix-2.7.2.2
857+ terminfo-0.4.1.5 time-1.11.1.1 transformers-0.5.6.2 unix-2.7.2.2
858858haddock-interfaces:
859859haddock-html:
860860---
@@ -1127,6 +1127,7 @@ hidden-modules:
11271127 System.Console.Haskeline.Backend.Posix
11281128 System.Console.Haskeline.Backend.Posix.Encoder
11291129 System.Console.Haskeline.Backend.DumbTerm
1130+ System.Console.Haskeline.Backend.Terminfo
11301131import-dirs:
11311132library-dirs:
11321133dynamic-library-dirs:
@@ -1135,7 +1136,8 @@ hs-libraries: HShaskeline-0.8.2
11351136depends:
11361137 base-4.16.1.0 bytestring-0.11.3.0 containers-0.6.5.1
11371138 directory-1.3.6.2 exceptions-0.10.4 filepath-1.4.2.2
1138− process-1.6.13.2 stm-2.5.0.2 transformers-0.5.6.2 unix-2.7.2.2
1139+ process-1.6.13.2 stm-2.5.0.2 terminfo-0.4.1.5 transformers-0.5.6.2
1140+ unix-2.7.2.2
11391141haddock-interfaces:
11401142haddock-html:
11411143---
@@ -1444,6 +1446,39 @@ depends:
14441446haddock-interfaces:
14451447haddock-html:
14461448---
1449+name: terminfo
1450+version: 0.4.1.5
1451+visibility: public
1452+id: terminfo-0.4.1.5
1453+key: terminfo-0.4.1.5
1454+license: BSD-3-Clause
1455+copyright: (c) Judah Jacobson
1456+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
1457+author: Judah Jacobson
1458+stability: Stable
1459+homepage: https://github.com/judah/terminfo
1460+synopsis: Haskell bindings to the terminfo library.
1461+description:
1462+ This library provides an interface to the terminfo database (via bindings to the
1463+ curses library). <http://en.wikipedia.org/wiki/Terminfo Terminfo> allows POSIX
1464+ systems to interact with a variety of terminals using a standard set of capabilities.
1465+category: User Interfaces
1466+exposed: True
1467+exposed-modules:
1468+ System.Console.Terminfo System.Console.Terminfo.Base
1469+ System.Console.Terminfo.Color System.Console.Terminfo.Cursor
1470+ System.Console.Terminfo.Edit System.Console.Terminfo.Effects
1471+ System.Console.Terminfo.Keys
1472+import-dirs:
1473+library-dirs:
1474+dynamic-library-dirs:
1475+data-dir:
1476+hs-libraries: HSterminfo-0.4.1.5
1477+extra-libraries: tinfo
1478+depends: base-4.16.1.0
1479+haddock-interfaces:
1480+haddock-html:
1481+---
14471482name: text
14481483version: 1.2.5.0
14491484visibility: public
materialized/dummy-ghc/x86_64-unknown-linux-musl-x86_64-unknown-linux-musl-ghc-9.2.3-x86_64-linux/ghc-pkg/dump-global+37−2
@@ -855,7 +855,7 @@ depends:
855855 containers-0.6.5.1 deepseq-1.4.6.1 directory-1.3.6.2
856856 exceptions-0.10.4 filepath-1.4.2.2 ghc-boot-9.2.3 ghc-heap-9.2.3
857857 ghci-9.2.3 hpc-0.6.1.0 process-1.6.13.2 template-haskell-2.18.0.0
858− time-1.11.1.1 transformers-0.5.6.2 unix-2.7.2.2
858+ terminfo-0.4.1.5 time-1.11.1.1 transformers-0.5.6.2 unix-2.7.2.2
859859haddock-interfaces:
860860haddock-html:
861861---
@@ -1127,6 +1127,7 @@ hidden-modules:
11271127 System.Console.Haskeline.Backend.Posix
11281128 System.Console.Haskeline.Backend.Posix.Encoder
11291129 System.Console.Haskeline.Backend.DumbTerm
1130+ System.Console.Haskeline.Backend.Terminfo
11301131import-dirs:
11311132library-dirs:
11321133dynamic-library-dirs:
@@ -1135,7 +1136,8 @@ hs-libraries: HShaskeline-0.8.2
11351136depends:
11361137 base-4.16.2.0 bytestring-0.11.3.1 containers-0.6.5.1
11371138 directory-1.3.6.2 exceptions-0.10.4 filepath-1.4.2.2
1138− process-1.6.13.2 stm-2.5.0.2 transformers-0.5.6.2 unix-2.7.2.2
1139+ process-1.6.13.2 stm-2.5.0.2 terminfo-0.4.1.5 transformers-0.5.6.2
1140+ unix-2.7.2.2
11391141haddock-interfaces:
11401142haddock-html:
11411143---
@@ -1444,6 +1446,39 @@ depends:
14441446haddock-interfaces:
14451447haddock-html:
14461448---
1449+name: terminfo
1450+version: 0.4.1.5
1451+visibility: public
1452+id: terminfo-0.4.1.5
1453+key: terminfo-0.4.1.5
1454+license: BSD-3-Clause
1455+copyright: (c) Judah Jacobson
1456+maintainer: Judah Jacobson <judah.jacobson@gmail.com>
1457+author: Judah Jacobson
1458+stability: Stable
1459+homepage: https://github.com/judah/terminfo
1460+synopsis: Haskell bindings to the terminfo library.
1461+description:
1462+ This library provides an interface to the terminfo database (via bindings to the
1463+ curses library). <http://en.wikipedia.org/wiki/Terminfo Terminfo> allows POSIX
1464+ systems to interact with a variety of terminals using a standard set of capabilities.
1465+category: User Interfaces
1466+exposed: True
1467+exposed-modules:
1468+ System.Console.Terminfo System.Console.Terminfo.Base
1469+ System.Console.Terminfo.Color System.Console.Terminfo.Cursor
1470+ System.Console.Terminfo.Edit System.Console.Terminfo.Effects
1471+ System.Console.Terminfo.Keys
1472+import-dirs:
1473+library-dirs:
1474+dynamic-library-dirs:
1475+data-dir:
1476+hs-libraries: HSterminfo-0.4.1.5
1477+extra-libraries: tinfo
1478+depends: base-4.16.2.0
1479+haddock-interfaces:
1480+haddock-html:
1481+---
14471482name: text
14481483version: 1.2.5.0
14491484visibility: public
materialized/ghc-extra-projects/cross/ghc865/default.nix+2−1
@@ -7,7 +7,7 @@
77 "network".revision = (((hackage."network")."2.8.0.1").revisions).default;
88 "bytestring".revision = (((hackage."bytestring")."0.10.8.2").revisions).default;
99 "filepath".revision = (((hackage."filepath")."1.4.2.1").revisions).default;
10− "terminfo".revision = (((hackage."terminfo")."0.4.1.5").revisions).default;
10+ "terminfo".revision = (((hackage."terminfo")."0.4.1.2").revisions).default;
1111 "ghc-heap".revision = (((hackage."ghc-heap")."8.6.5").revisions).default;
1212 "ghc-prim".revision = (((hackage."ghc-prim")."0.5.3").revisions).default;
1313 "ghc-boot-th".revision = (((hackage."ghc-boot-th")."8.6.5").revisions).default;
@@ -32,6 +32,7 @@
3232 "array" = "0.5.3.0";
3333 "bytestring" = "0.10.8.2";
3434 "filepath" = "1.4.2.1";
35+ "terminfo" = "0.4.1.2";
3536 "ghc-heap" = "8.6.5";
3637 "ghc-prim" = "0.5.3";
3738 "ghc-boot-th" = "8.6.5";
materialized/ghc-extra-projects/cross/ghc902/default.nix+1
@@ -37,6 +37,7 @@
3737 "bytestring" = "0.10.12.1";
3838 "filepath" = "1.4.2.1";
3939 "stm" = "2.5.0.0";
40+ "terminfo" = "0.4.1.5";
4041 "ghc-heap" = "9.0.2";
4142 "ghc-prim" = "0.7.0";
4243 "ghc-boot-th" = "9.0.2";
materialized/ghc-extra-projects/cross/ghc922/default.nix+1
@@ -37,6 +37,7 @@
3737 "bytestring" = "0.11.3.0";
3838 "filepath" = "1.4.2.2";
3939 "stm" = "2.5.0.2";
40+ "terminfo" = "0.4.1.5";
4041 "ghc-heap" = "9.2.2";
4142 "ghc-prim" = "0.8.0";
4243 "ghc-boot-th" = "9.2.2";
materialized/ghc-extra-projects/cross/ghc923/default.nix+1
@@ -37,6 +37,7 @@
3737 "bytestring" = "0.11.3.1";
3838 "filepath" = "1.4.2.2";
3939 "stm" = "2.5.0.2";
40+ "terminfo" = "0.4.1.5";
4041 "ghc-heap" = "9.2.3";
4142 "ghc-prim" = "0.8.0";
4243 "ghc-boot-th" = "9.2.3";
overlays/ghc-packages.nix+1−1
@@ -88,7 +88,7 @@ let
8888 then "windows"
8989 else if final.stdenv.hostPlatform.isGhcjs
9090 then "ghcjs"
91− else if final.stdenv.buildPlatform != final.stdenv.hostPlatform
91+ else if final.haskell-nix.haskellLib.isCrossHost
9292 then "cross"
9393 else "default";
9494
overlays/wine.nix+5−4
@@ -1,8 +1,9 @@
1−# fix wine at 3.0.2; the 4.x branch breaks windows cross compilation.
2−# this will inevitably replace *any* wine version. Thus this might not
3−# really be what we ultimately want.
1+# fix wine at 5.4; later versions build with ucrt and this can break TH code (for instance accessing
2+# files from TH code) for GHC built with msvcrt (ghc<9.6).
3+# This will inevitably replace *any* wine version. Thus this might not really be what we ultimately want.
4+# Wine 5.4 does not build on macOS so that is not pinned and TH code will probably break.
45final: prev:
5−{
6+prev.lib.optionalAttrs (!prev.stdenv.hostPlatform.isDarwin) {
67 winePackages = prev.winePackages // {
78 minimal = prev.winePackages.minimal.overrideAttrs (oldAttrs: {
89 name = "wine-5.4";