Skip to content

Commit

Permalink
Merge pull request #152408 from NixOS/haskell-updates
Browse files Browse the repository at this point in the history
haskellPackages: update stackage and hackage
  • Loading branch information
cdepillabout authored Jan 5, 2022
2 parents 6b1102d + 312315f commit 4fabdd2
Show file tree
Hide file tree
Showing 17 changed files with 767 additions and 474 deletions.
8 changes: 4 additions & 4 deletions pkgs/data/misc/hackage/pin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"commit": "01a23b49c333c95167338433cd375e24fc60d66d",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/01a23b49c333c95167338433cd375e24fc60d66d.tar.gz",
"sha256": "0mf1pqlg5cj0p0si1vgf5mp5an89yhq0il6v7n58smcqbfdynds5",
"msg": "Update from Hackage at 2021-12-21T13:58:08Z"
"commit": "f1cca49c3c22107b73ce7156ebc7735d7d8d250e",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/f1cca49c3c22107b73ce7156ebc7735d7d8d250e.tar.gz",
"sha256": "0bcfynix3y0w5fhrij241l6sbndfr5h20pnxwqb9sf4h2ag0zlsa",
"msg": "Update from Hackage at 2021-12-28T00:33:48Z"
}
2 changes: 1 addition & 1 deletion pkgs/development/compilers/ghc/8.10.7.nix
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@

, # Whether to disable the large address space allocator
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
}:

assert !enableIntegerSimple -> gmp != null;
Expand Down
2 changes: 1 addition & 1 deletion pkgs/development/compilers/ghc/8.8.4.nix
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@

, # Whether to disable the large address space allocator
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
}:

assert !enableIntegerSimple -> gmp != null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# build-tools
, bootPkgs
, autoconf, automake, coreutils, fetchurl, perl, python3, m4, sphinx
, autoconf, automake, coreutils, fetchurl, perl, python3, m4, sphinx, xattr
, autoSignDarwinBinariesHook
, bash

Expand Down Expand Up @@ -58,7 +58,7 @@

, # Whether to disable the large address space allocator
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
}:

assert !enableIntegerSimple -> gmp != null;
Expand Down Expand Up @@ -165,12 +165,12 @@ assert buildTargetLlvmPackages.llvm == llvmPackages.llvm;
assert stdenv.targetPlatform.isDarwin -> buildTargetLlvmPackages.clang == llvmPackages.clang;

stdenv.mkDerivation (rec {
version = "9.0.1";
version = "9.0.2";
pname = "${targetPrefix}ghc${variantSuffix}";

src = fetchurl {
url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
sha256 = "1y9mi9bq76z04hmggavrn8jwi1gx92bm3zhx6z69ypq6wha068x5";
sha256 = "140e42b96346322d1a39eb17602bcdc76e292028ad4a69286b230bab188a9197";
};

enableParallelBuilding = true;
Expand Down Expand Up @@ -280,6 +280,10 @@ stdenv.mkDerivation (rec {
autoSignDarwinBinariesHook
] ++ lib.optionals enableDocs [
sphinx
] ++ lib.optionals stdenv.isDarwin [
# TODO(@sternenseemann): backport addition of XATTR env var like
# https://gitlab.haskell.org/ghc/ghc/-/merge_requests/6447
xattr
];

# For building runtime libs
Expand Down
2 changes: 1 addition & 1 deletion pkgs/development/compilers/ghc/9.2.1.nix
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@

, # Whether to disable the large address space allocator
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
}:

assert !enableIntegerSimple -> gmp != null;
Expand Down
2 changes: 1 addition & 1 deletion pkgs/development/compilers/ghc/head.nix
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@

, # Whether to disable the large address space allocator
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
}:

assert !enableNativeBignum -> gmp != null;
Expand Down
22 changes: 9 additions & 13 deletions pkgs/development/haskell-modules/configuration-common.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2032,19 +2032,6 @@ self: super: {
assert pkgs.lib.versionOlder self.hspec.version "2.8.2";
doJailbreak super.graphql;

# gtk2hsC2hs fails to build on certain architectures (aarch64, ppc64(le), ...)
# with a linker error. As a workaround, we build gtk2hs-buildtools with -O0
# as suggested in the GHC thread below. An alternative to this could be to use
# -fllvm. I haven't been able to get this to work without linker errors, though.
# See also:
# * https://gitlab.haskell.org/ghc/ghc/-/issues/17203
# * https://github.com/gtk2hs/gtk2hs/issues/305
# * https://github.com/gtk2hs/gtk2hs/issues/279
gtk2hs-buildtools = appendConfigureFlags
(pkgs.lib.optionals (with pkgs.stdenv.hostPlatform; isAarch64 || isPowerPC) [
"--ghc-option=-O0"
]) super.gtk2hs-buildtools;

# https://github.com/ajscholl/basic-cpuid/pull/1
basic-cpuid = appendPatch (pkgs.fetchpatch {
url = "https://github.com/ajscholl/basic-cpuid/commit/2f2bd7a7b53103fb0cf26883f094db9d7659887c.patch";
Expand Down Expand Up @@ -2254,4 +2241,13 @@ self: super: {
sdp4unordered = disableLibraryProfiling super.sdp4unordered;
sdp4vector = disableLibraryProfiling super.sdp4vector;

hie-bios = appendPatches [
# Accounts for a breaking change in GHC 9.0.2 via CPP
(pkgs.fetchpatch {
name = "hie-bios-ghc-9.0.2-compat.patch";
url = "https://github.com/haskell/hie-bios/commit/da0cb23384cc6e9b393792f8f25a3c174a4edafa.patch";
sha256 = "1qj67s93h6pxvdapw1sxy6izwp5y8vjaw67gw3lsnj8gs14fqq4h";
})
] super.hie-bios;

} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
24 changes: 24 additions & 0 deletions pkgs/development/haskell-modules/configuration-darwin.nix
Original file line number Diff line number Diff line change
Expand Up @@ -256,6 +256,30 @@ self: super: ({
] ++ (drv.libraryFrameworkDepends or []);
}) super.streamly_0_8_1_1;

http-client-tls = overrideCabal (drv: {
postPatch = ''
# This comment has been inserted, so the derivation hash changes, forcing
# a rebuild of this derivation which has succeeded to build on Hydra before,
# but apparently been corrupted, causing reverse dependencies to fail.
#
# This workaround can be removed upon the next darwin stdenv rebuild,
# presumably https://github.com/NixOS/nixpkgs/pull/152850 or the next
# full haskellPackages rebuild.
'' + drv.postPatch or "";
}) super.http-client-tls;

foldl = overrideCabal (drv: {
postPatch = ''
# This comment has been inserted, so the derivation hash changes, forcing
# a rebuild of this derivation which has succeeded to build on Hydra before,
# but apparently been corrupted, causing reverse dependencies to fail.
#
# This workaround can be removed upon the next darwin stdenv rebuild,
# presumably https://github.com/NixOS/nixpkgs/pull/152850 or the next
# full haskellPackages rebuild.
'' + drv.postPatch or "";
}) super.foldl;

} // lib.optionalAttrs pkgs.stdenv.isAarch64 { # aarch64-darwin

# https://github.com/fpco/unliftio/issues/87
Expand Down
6 changes: 3 additions & 3 deletions pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix
Original file line number Diff line number Diff line change
Expand Up @@ -121,9 +121,9 @@ self: super: {

# 2021-09-18: ghc-api-compat and ghc-lib-* need >= 9.0.x versions for hls and hlint
ghc-api-compat = doDistribute super.ghc-api-compat_9_0_1;
ghc-lib-parser = self.ghc-lib-parser_9_0_1_20210324;
ghc-lib-parser-ex = self.ghc-lib-parser-ex_9_0_0_4;
ghc-lib = self.ghc-lib_9_0_1_20210324;
ghc-lib-parser = self.ghc-lib-parser_9_0_2_20211226;
ghc-lib-parser-ex = self.ghc-lib-parser-ex_9_0_0_6;
ghc-lib = self.ghc-lib_9_0_2_20211226;

# 2021-09-18: Need semialign >= 1.2 for correct bounds
semialign = super.semialign_1_2_0_1;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2109,6 +2109,7 @@ broken-packages:
- heredocs
- her-lexer
- Hermes
- hermes-json
- herms
- hetero-dict
- heterogeneous-list-literals
Expand Down Expand Up @@ -2869,6 +2870,7 @@ broken-packages:
- libsystemd-daemon
- libtagc
- libxls
- libxlsxwriter-hs
- libxslt
- libyaml-streamly
- lie
Expand Down Expand Up @@ -4383,6 +4385,7 @@ broken-packages:
- servant-streaming
- servant-to-elm
- servant-tracing
- servant-util-beam-pg
- servant-yaml
- servant-zeppelin
- server-generic
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -158,13 +158,13 @@ extra-packages:
- ShellCheck == 0.7.1 # 2021-05-09: haskell-ci 0.12.1 pins this version
- cabal-install-parsers == 0.4.2 # 2021-09-04: needed haskell-ci by until it upgrades to Cabal >= 3.6
- ghc-api-compat == 8.6 # 2021-09-07: preserve for GHC 8.8.4
- ghc-lib == 9.0.1.* # 2021-11-05: Need one GHC 9.0.1 compatible version
- ghc-lib-parser == 9.0.1.* # 2021-11-05: Need one GHC 9.0.1 compatible version
- ghc-lib-parser-ex == 9.0.* # 2021-11-05: Need one GHC 9.0.1 compatible version
- ghc-lib == 9.0.* # 2021-11-05: Need one GHC 9.0.2 compatible version
- ghc-lib-parser == 9.0.* # 2021-11-05: Need one GHC 9.0.2 compatible version
- ghc-lib-parser-ex == 9.0.* # 2021-11-05: Need one GHC 9.0.2 compatible version
- doctest == 0.18.* # 2021-11-19: closest to stackage version for GHC 9.*
- brick == 0.64.* # 2021-12-03: matterhorn depends on brick < 0.65
- path == 0.9.0 # 2021-12-03: path version building with stackage genvalidity and GHC 9.0.1
- ormolu == 0.3.* # 2021-12-03: for HLS with GHC 9.0.1
- path == 0.9.0 # 2021-12-03: path version building with stackage genvalidity and GHC 9.0.2
- ormolu == 0.3.* # 2021-12-03: for HLS with GHC 9.0.2

package-maintainers:
abbradar:
Expand Down Expand Up @@ -429,7 +429,6 @@ unsupported-platforms:
btrfs: [ x86_64-darwin, aarch64-darwin ] # depends on linux
bustle: [ x86_64-darwin, aarch64-darwin ] # uses glibc-specific ptsname_r
charsetdetect: [ aarch64-linux ] # not supported by vendored lib / not configured properly https://github.com/batterseapower/libcharsetdetect/issues/3
crackNum: [ aarch64-linux ] # depends on sbv, which is not supported on aarch64-linux
cut-the-crap: [ x86_64-darwin, aarch64-darwin ]
d3d11binding: [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
DirectSound: [ i686-linux, x86_64-linux, x86_64-darwin, aarch64-darwin, aarch64-linux, armv7l-linux ]
Expand Down Expand Up @@ -459,7 +458,6 @@ unsupported-platforms:
hbro: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
hbro-contrib: [ x86_64-darwin, aarch64-darwin ] # webkitgtk marked broken on darwin
hcwiid: [ x86_64-darwin, aarch64-darwin ]
hevm: [ aarch64-linux ] # depends on sbv, which is not supported on aarch64-linux
HFuse: [ x86_64-darwin, aarch64-darwin ]
hidapi: [ x86_64-darwin, aarch64-darwin ]
hinotify-bytestring: [ x86_64-darwin, aarch64-darwin ]
Expand Down Expand Up @@ -514,7 +512,6 @@ unsupported-platforms:
reflex-localize-dom: [ x86_64-darwin, aarch64-darwin, aarch64-linux ]
rtlsdr: [ x86_64-darwin, aarch64-darwin ]
rubberband: [ x86_64-darwin, aarch64-darwin ]
sbv: [ aarch64-linux ]
scat: [ aarch64-linux, armv7l-linux ] # uses scrypt, which requries x86
scrypt: [ aarch64-linux, armv7l-linux ] # https://github.com/informatikr/scrypt/issues/8
sdl2-mixer: [ x86_64-darwin, aarch64-darwin ]
Expand Down
Loading

0 comments on commit 4fabdd2

Please sign in to comment.