Merge pull request #114407 from NixOS/haskell-updates
Update Haskell package set to Stackage Nightly 2021-02-25 (plus other fixes)
This commit is contained in:
commit
8629446fc1
@ -64,7 +64,7 @@ self: super: {
|
|||||||
name = "git-annex-${super.git-annex.version}-src";
|
name = "git-annex-${super.git-annex.version}-src";
|
||||||
url = "git://git-annex.branchable.com/";
|
url = "git://git-annex.branchable.com/";
|
||||||
rev = "refs/tags/" + super.git-annex.version;
|
rev = "refs/tags/" + super.git-annex.version;
|
||||||
sha256 = "1m9jfr5b0qwajwwmvcq02263bmnqgcqvpdr06sdwlfz3sxsjfp8r";
|
sha256 = "1lvl6i3ym7dyg215fkmslf3rnk29hz7f21jn91y1mghrhch7hvhl";
|
||||||
};
|
};
|
||||||
}).override {
|
}).override {
|
||||||
dbus = if pkgs.stdenv.isLinux then self.dbus else null;
|
dbus = if pkgs.stdenv.isLinux then self.dbus else null;
|
||||||
@ -212,31 +212,11 @@ self: super: {
|
|||||||
# base bound
|
# base bound
|
||||||
digit = doJailbreak super.digit;
|
digit = doJailbreak super.digit;
|
||||||
|
|
||||||
# 2020-06-05: HACK: does not pass own build suite - `dontCheck` We should
|
# 2020-06-05: HACK: does not pass own build suite - `dontCheck`
|
||||||
# generate optparse-applicative completions for the hnix executable. Sadly
|
hnix = generateOptparseApplicativeCompletion "hnix" (dontCheck super.hnix);
|
||||||
# building of the executable has been disabled for ghc < 8.10 in hnix.
|
|
||||||
# Generating the completions should be activated again, once we default to
|
|
||||||
# ghc 8.10.
|
|
||||||
hnix = dontCheck (super.hnix.override {
|
|
||||||
|
|
||||||
# 2021-01-07: NOTE: hnix-store-core pinned at ==0.2 in Stackage Nightly.
|
|
||||||
# https://github.com/haskell-nix/hnix-store/issues/104
|
|
||||||
# Until unpin, which may hold off in time due to Stackage maintenence bottleneck
|
|
||||||
# the 0_4_0_0 is used
|
|
||||||
hnix-store-core = self.hnix-store-core_0_4_1_0; # at least 1.7
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
# 2021-01-07: NOTE: hnix-store-core pinned at ==0.2 in Stackage Nightly.
|
|
||||||
# https://github.com/haskell-nix/hnix-store/issues/104
|
|
||||||
# Until unpin, which may hold off in time due to Stackage maintenence bottleneck
|
|
||||||
# the 0_4_0_0 is used
|
|
||||||
hnix-store-remote = (super.hnix-store-remote.override {
|
|
||||||
hnix-store-core = self.hnix-store-core_0_4_1_0; # at least 1.7
|
|
||||||
});
|
|
||||||
|
|
||||||
# https://github.com/haskell-nix/hnix-store/issues/127
|
# https://github.com/haskell-nix/hnix-store/issues/127
|
||||||
hnix-store-core_0_4_1_0 = addTestToolDepend super.hnix-store-core_0_4_1_0 self.tasty-discover;
|
hnix-store-core = addTestToolDepend super.hnix-store-core self.tasty-discover;
|
||||||
|
|
||||||
# Fails for non-obvious reasons while attempting to use doctest.
|
# Fails for non-obvious reasons while attempting to use doctest.
|
||||||
search = dontCheck super.search;
|
search = dontCheck super.search;
|
||||||
@ -684,8 +664,26 @@ self: super: {
|
|||||||
'';
|
'';
|
||||||
});
|
});
|
||||||
|
|
||||||
# The standard libraries are compiled separately.
|
# * The standard libraries are compiled separately.
|
||||||
idris = generateOptparseApplicativeCompletion "idris" (dontCheck super.idris);
|
# * We need multiple patches from master to fix compilation with
|
||||||
|
# updated dependencies (haskeline and megaparsec) which can be
|
||||||
|
# removed when the next idris release (1.3.4 probably) comes
|
||||||
|
# around.
|
||||||
|
idris = generateOptparseApplicativeCompletion "idris"
|
||||||
|
(doJailbreak (dontCheck
|
||||||
|
(appendPatches super.idris [
|
||||||
|
# compatibility with haskeline >= 0.8
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
url = "https://github.com/idris-lang/Idris-dev/commit/89a87cf666eb8b27190c779e72d0d76eadc1bc14.patch";
|
||||||
|
sha256 = "0fv493zlpgjsf57w0sncd4vqfkabfczp3xazjjmqw54m9rsfix35";
|
||||||
|
})
|
||||||
|
# compatibility with megaparsec >= 0.9
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
url = "https://github.com/idris-lang/Idris-dev/commit/6ea9bc913877d765048d7cdb7fc5aec60b196fac.patch";
|
||||||
|
sha256 = "0yms74d1xdxd1c08dnp45nb1ddzq54n6hqgzxx0r494wy614ir8q";
|
||||||
|
})
|
||||||
|
])
|
||||||
|
));
|
||||||
|
|
||||||
# https://github.com/pontarius/pontarius-xmpp/issues/105
|
# https://github.com/pontarius/pontarius-xmpp/issues/105
|
||||||
pontarius-xmpp = dontCheck super.pontarius-xmpp;
|
pontarius-xmpp = dontCheck super.pontarius-xmpp;
|
||||||
@ -845,8 +843,11 @@ self: super: {
|
|||||||
# https://github.com/alphaHeavy/protobuf/issues/34
|
# https://github.com/alphaHeavy/protobuf/issues/34
|
||||||
protobuf = dontCheck super.protobuf;
|
protobuf = dontCheck super.protobuf;
|
||||||
|
|
||||||
# https://github.com/bos/text-icu/issues/32
|
# Is this package still maintained? https://github.com/haskell/text-icu/issues/30
|
||||||
text-icu = dontCheck super.text-icu;
|
text-icu = overrideCabal super.text-icu (drv: {
|
||||||
|
doCheck = false; # https://github.com/bos/text-icu/issues/32
|
||||||
|
configureFlags = ["--ghc-option=-DU_DEFINE_FALSE_AND_TRUE=1"]; # https://github.com/haskell/text-icu/issues/49
|
||||||
|
});
|
||||||
|
|
||||||
# aarch64 and armv7l fixes.
|
# aarch64 and armv7l fixes.
|
||||||
happy = if (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64) then dontCheck super.happy else super.happy; # Similar to https://ghc.haskell.org/trac/ghc/ticket/13062
|
happy = if (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64) then dontCheck super.happy else super.happy; # Similar to https://ghc.haskell.org/trac/ghc/ticket/13062
|
||||||
@ -968,8 +969,10 @@ self: super: {
|
|||||||
# musl fixes
|
# musl fixes
|
||||||
# dontCheck: use of non-standard strptime "%s" which musl doesn't support; only used in test
|
# dontCheck: use of non-standard strptime "%s" which musl doesn't support; only used in test
|
||||||
unix-time = if pkgs.stdenv.hostPlatform.isMusl then dontCheck super.unix-time else super.unix-time;
|
unix-time = if pkgs.stdenv.hostPlatform.isMusl then dontCheck super.unix-time else super.unix-time;
|
||||||
# dontCheck: printf double rounding behavior
|
|
||||||
prettyprinter = if pkgs.stdenv.hostPlatform.isMusl then dontCheck super.prettyprinter else super.prettyprinter;
|
# The test suite runs for 20+ minutes on a very fast machine, which feels kinda disproportionate.
|
||||||
|
prettyprinter = dontCheck super.prettyprinter;
|
||||||
|
brittany = doJailbreak (dontCheck super.brittany); # Outdated upperbound on ghc-exactprint: https://github.com/lspitzner/brittany/issues/342
|
||||||
|
|
||||||
# Fix with Cabal 2.2, https://github.com/guillaume-nargeot/hpc-coveralls/pull/73
|
# Fix with Cabal 2.2, https://github.com/guillaume-nargeot/hpc-coveralls/pull/73
|
||||||
hpc-coveralls = appendPatch super.hpc-coveralls (pkgs.fetchpatch {
|
hpc-coveralls = appendPatch super.hpc-coveralls (pkgs.fetchpatch {
|
||||||
@ -1408,16 +1411,8 @@ self: super: {
|
|||||||
# 2020-11-19: Checks nearly fixed, but still disabled because of flaky tests:
|
# 2020-11-19: Checks nearly fixed, but still disabled because of flaky tests:
|
||||||
# https://github.com/haskell/haskell-language-server/issues/610
|
# https://github.com/haskell/haskell-language-server/issues/610
|
||||||
# https://github.com/haskell/haskell-language-server/issues/611
|
# https://github.com/haskell/haskell-language-server/issues/611
|
||||||
haskell-language-server = overrideCabal (dontCheck super.haskell-language-server) {
|
haskell-language-server = dontCheck super.haskell-language-server;
|
||||||
# 2020-02-19: Override is necessary because of wrong bound on upstream, remove after next hackage update
|
|
||||||
preConfigure = ''
|
|
||||||
substituteInPlace haskell-language-server.cabal --replace "hls-explicit-imports-plugin ==0.1.0.1" "hls-explicit-imports-plugin ==0.1.0.0"
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
# 2021-02-08: Jailbreaking because of
|
|
||||||
# https://github.com/haskell/haskell-language-server/issues/1329
|
|
||||||
hls-tactics-plugin = doJailbreak super.hls-tactics-plugin;
|
|
||||||
# 2021-02-11: Jailbreaking because of syntax error on bound revision
|
# 2021-02-11: Jailbreaking because of syntax error on bound revision
|
||||||
hls-explicit-imports-plugin = doJailbreak super.hls-explicit-imports-plugin;
|
hls-explicit-imports-plugin = doJailbreak super.hls-explicit-imports-plugin;
|
||||||
|
|
||||||
@ -1532,7 +1527,7 @@ self: super: {
|
|||||||
|
|
||||||
# 2020-12-05: http-client is fixed on too old version
|
# 2020-12-05: http-client is fixed on too old version
|
||||||
essence-of-live-coding-warp = super.essence-of-live-coding-warp.override {
|
essence-of-live-coding-warp = super.essence-of-live-coding-warp.override {
|
||||||
http-client = self.http-client_0_7_5;
|
http-client = self.http-client_0_7_6;
|
||||||
};
|
};
|
||||||
|
|
||||||
# 2020-12-06: Restrictive upper bounds w.r.t. pandoc-types (https://github.com/owickstrom/pandoc-include-code/issues/27)
|
# 2020-12-06: Restrictive upper bounds w.r.t. pandoc-types (https://github.com/owickstrom/pandoc-include-code/issues/27)
|
||||||
@ -1591,4 +1586,27 @@ self: super: {
|
|||||||
|
|
||||||
# Overly strict version bounds: https://github.com/Profpatsch/yarn-lock/issues/8
|
# Overly strict version bounds: https://github.com/Profpatsch/yarn-lock/issues/8
|
||||||
yarn-lock = doJailbreak super.yarn-lock;
|
yarn-lock = doJailbreak super.yarn-lock;
|
||||||
|
|
||||||
|
# Dependency to regex-tdfa-text can be removed for later regex-tdfa versions.
|
||||||
|
# Fix protolude compilation error by applying patch from pull-request.
|
||||||
|
# Override can be removed for the next release > 0.8.0.
|
||||||
|
yarn2nix = overrideCabal (super.yarn2nix.override {
|
||||||
|
regex-tdfa-text = null;
|
||||||
|
}) (attrs: {
|
||||||
|
jailbreak = true;
|
||||||
|
# remove dependency on regex-tdfa-text
|
||||||
|
# which has been merged into regex-tdfa
|
||||||
|
postPatch = ''
|
||||||
|
sed -i '/regex-tdfa-text/d' yarn2nix.cabal
|
||||||
|
'';
|
||||||
|
patches = (attrs.patches or []) ++ [
|
||||||
|
# fix a compilation error related to protolude 0.3
|
||||||
|
(pkgs.fetchpatch {
|
||||||
|
url = "https://github.com/Profpatsch/yarn2nix/commit/ca78cf06226819b2e78cb6cdbc157d27afb41532.patch";
|
||||||
|
sha256 = "1vkczwzhxilnp87apyb18nycn834y5nbw4yr1kpwlwhrhalvzw61";
|
||||||
|
includes = [ "*/ResolveLockfile.hs" ];
|
||||||
|
})
|
||||||
|
];
|
||||||
|
});
|
||||||
|
|
||||||
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
|
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
|
||||||
|
@ -42,20 +42,13 @@ self: super: {
|
|||||||
unix = null;
|
unix = null;
|
||||||
xhtml = null;
|
xhtml = null;
|
||||||
|
|
||||||
# The proper 3.2.0.0 release does not compile with ghc-8.10.1, so we take the
|
cabal-install = super.cabal-install.override {
|
||||||
# hitherto unreleased next version from the '3.2' branch of the upstream git
|
Cabal = super.Cabal_3_4_0_0;
|
||||||
# repository for the time being.
|
hackage-security = super.hackage-security.override { Cabal = super.Cabal_3_4_0_0; };
|
||||||
cabal-install = assert super.cabal-install.version == "3.2.0.0";
|
# Usung dontCheck to break test dependency cycles
|
||||||
overrideCabal super.cabal-install (drv: {
|
edit-distance = dontCheck (super.edit-distance.override { random = super.random_1_2_0; });
|
||||||
postUnpack = "sourceRoot+=/cabal-install; echo source root reset to $sourceRoot";
|
random = super.random_1_2_0;
|
||||||
version = "3.2.0.0-git";
|
};
|
||||||
editedCabalFile = null;
|
|
||||||
src = pkgs.fetchgit {
|
|
||||||
url = "git://github.com/haskell/cabal.git";
|
|
||||||
rev = "9bd4cc0591616aeae78e17167338371a2542a475";
|
|
||||||
sha256 = "005q1shh7vqgykkp72hhmswmrfpz761x0q0jqfnl3wqim4xd9dg0";
|
|
||||||
};
|
|
||||||
});
|
|
||||||
|
|
||||||
# Jailbreak to fix the build.
|
# Jailbreak to fix the build.
|
||||||
base-noprelude = doJailbreak super.base-noprelude;
|
base-noprelude = doJailbreak super.base-noprelude;
|
||||||
|
@ -43,19 +43,12 @@ self: super: {
|
|||||||
unix = null;
|
unix = null;
|
||||||
xhtml = null;
|
xhtml = null;
|
||||||
|
|
||||||
# Take the 3.4.x release candidate.
|
# Build cabal-install with the compiler's native Cabal.
|
||||||
cabal-install = assert super.cabal-install.version == "3.2.0.0";
|
cabal-install = (doJailbreak super.cabal-install).override {
|
||||||
overrideCabal (doJailbreak super.cabal-install) (drv: {
|
# Use dontCheck to break test dependency cycles
|
||||||
postUnpack = "sourceRoot+=/cabal-install; echo source root reset to $sourceRoot";
|
edit-distance = dontCheck (super.edit-distance.override { random = super.random_1_2_0; });
|
||||||
version = "cabal-install-3.4.0.0-rc4";
|
random = super.random_1_2_0;
|
||||||
editedCabalFile = null;
|
};
|
||||||
src = pkgs.fetchgit {
|
|
||||||
url = "git://github.com/haskell/cabal.git";
|
|
||||||
rev = "cabal-install-3.4.0.0-rc4";
|
|
||||||
sha256 = "049hllk1d8jid9yg70hmcsdgb0n7hm24p39vavllaahfb0qfimrk";
|
|
||||||
};
|
|
||||||
executableHaskellDepends = drv.executableHaskellDepends ++ [ self.regex-base self.regex-posix ];
|
|
||||||
});
|
|
||||||
|
|
||||||
# Jailbreaks & Version Updates
|
# Jailbreaks & Version Updates
|
||||||
async = doJailbreak super.async;
|
async = doJailbreak super.async;
|
||||||
@ -99,10 +92,6 @@ self: super: {
|
|||||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/language-haskell-extract-0.2.4.patch";
|
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/language-haskell-extract-0.2.4.patch";
|
||||||
sha256 = "0rgzrq0513nlc1vw7nw4km4bcwn4ivxcgi33jly4a7n3c1r32v1f";
|
sha256 = "0rgzrq0513nlc1vw7nw4km4bcwn4ivxcgi33jly4a7n3c1r32v1f";
|
||||||
});
|
});
|
||||||
regex-base = appendPatch (doJailbreak super.regex-base) (pkgs.fetchpatch {
|
|
||||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/regex-base-0.94.0.0.patch";
|
|
||||||
sha256 = "0k5fglbl7nnhn8400c4cpnflxcbj9p3xi5prl9jfmszr31jwdy5d";
|
|
||||||
});
|
|
||||||
|
|
||||||
# The test suite depends on ChasingBottoms, which is broken with ghc-9.0.x.
|
# The test suite depends on ChasingBottoms, which is broken with ghc-9.0.x.
|
||||||
unordered-containers = dontCheck super.unordered-containers;
|
unordered-containers = dontCheck super.unordered-containers;
|
||||||
|
File diff suppressed because it is too large
Load Diff
3227
pkgs/development/haskell-modules/hackage-packages.nix
generated
3227
pkgs/development/haskell-modules/hackage-packages.nix
generated
File diff suppressed because it is too large
Load Diff
@ -155,6 +155,9 @@ stdenv.mkDerivation rec {
|
|||||||
"-DPORT=GTK"
|
"-DPORT=GTK"
|
||||||
"-DUSE_LIBHYPHEN=OFF"
|
"-DUSE_LIBHYPHEN=OFF"
|
||||||
"-DUSE_WPE_RENDERER=OFF"
|
"-DUSE_WPE_RENDERER=OFF"
|
||||||
|
# ensure backward compatibility with the latest version of icu:
|
||||||
|
# http://linuxfromscratch.org/blfs/view/svn/x/webkitgtk.html
|
||||||
|
"-DCMAKE_CXX_FLAGS=-DU_DEFINE_FALSE_AND_TRUE=1"
|
||||||
] ++ optionals stdenv.isDarwin [
|
] ++ optionals stdenv.isDarwin [
|
||||||
"-DENABLE_GRAPHICS_CONTEXT_3D=OFF"
|
"-DENABLE_GRAPHICS_CONTEXT_3D=OFF"
|
||||||
"-DENABLE_GTKDOC=OFF"
|
"-DENABLE_GTKDOC=OFF"
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
{ lib, supportedGhcVersions ? [ "865" "884" "8103" ], stdenv, haskellPackages
|
{ lib, supportedGhcVersions ? [ "865" "884" "8104" ], stdenv, haskellPackages
|
||||||
, haskell }:
|
, haskell }:
|
||||||
#
|
#
|
||||||
# The recommended way to override this package is
|
# The recommended way to override this package is
|
||||||
|
Loading…
Reference in New Issue
Block a user