mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-16 23:03:40 +01:00
Merge pull request #209112 from NixOS/haskell-updates
haskellPackages: update stackage and hackage
This commit is contained in:
commit
be313a93bb
12 changed files with 1069 additions and 384 deletions
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"commit": "78541d36393ac3dd0ffa32b4a9af15fecdefb5d1",
|
||||
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/78541d36393ac3dd0ffa32b4a9af15fecdefb5d1.tar.gz",
|
||||
"sha256": "1qwjkjlz9sw1jnsarin6803vj68bfm3iyysfwxaifga5w4dsrqcs",
|
||||
"msg": "Update from Hackage at 2022-12-30T22:03:31Z"
|
||||
"commit": "9f677e1d2267621375d22e3f6c1a25246678be4c",
|
||||
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/9f677e1d2267621375d22e3f6c1a25246678be4c.tar.gz",
|
||||
"sha256": "0y2mbj8dwfgdz5pzdq682clab10xgnqlrfv1najx53yy5jf63pcv",
|
||||
"msg": "Update from Hackage at 2023-01-06T18:29:38Z"
|
||||
}
|
||||
|
|
|
@ -353,6 +353,8 @@ stdenv.mkDerivation ({
|
|||
'';
|
||||
|
||||
${if targetPlatform.isGhcjs then "configureScript" else null} = "emconfigure ./configure";
|
||||
# GHC currently ships an edited config.sub so ghcjs is accepted which we can not rollback
|
||||
${if targetPlatform.isGhcjs then "dontUpdateAutotoolsGnuConfigScripts" else null} = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms = [ "build" "host" ]
|
||||
|
|
|
@ -8,10 +8,10 @@
|
|||
}:
|
||||
mkDerivation {
|
||||
pname = "cabal2nix";
|
||||
version = "unstable-2022-12-08";
|
||||
version = "unstable-2023-01-06";
|
||||
src = fetchzip {
|
||||
url = "https://github.com/NixOS/cabal2nix/archive/021a48f4b4942462154b06fd81429a248638f87f.tar.gz";
|
||||
sha256 = "1is1q5mqi86vzy3ni2959hr95gs9hwd5wiz92hanfli3infg00xc";
|
||||
url = "https://github.com/NixOS/cabal2nix/archive/d24f4eab2352468510fb81e276aab9d62e94b561.tar.gz";
|
||||
sha256 = "16d3mf4d622gns1myx9mwx39sx0l9wndybxn5ik00x0pxnmh7f36";
|
||||
};
|
||||
postUnpack = "sourceRoot+=/cabal2nix; echo source root reset to $sourceRoot";
|
||||
isLibrary = true;
|
||||
|
|
|
@ -66,10 +66,6 @@ self: super: {
|
|||
# > https://github.com/roelvandijk/numerals
|
||||
numerals = doJailbreak (dontCheck super.numerals);
|
||||
|
||||
# Too stricut upper bound on time
|
||||
# https://github.com/acw/rate-limit/issues/9
|
||||
rate-limit = doJailbreak super.rate-limit;
|
||||
|
||||
# This test keeps being aborted because it runs too quietly for too long
|
||||
Lazy-Pbkdf2 = if pkgs.stdenv.isi686 then dontCheck super.Lazy-Pbkdf2 else super.Lazy-Pbkdf2;
|
||||
|
||||
|
@ -478,12 +474,6 @@ self: super: {
|
|||
# https://github.com/kkardzis/curlhs/issues/6
|
||||
curlhs = dontCheck super.curlhs;
|
||||
|
||||
# Too strict upper bounds on bytestring & time
|
||||
# https://github.com/barrucadu/irc-conduit/issues/35
|
||||
irc-conduit = doJailbreak super.irc-conduit;
|
||||
# https://github.com/barrucadu/irc-client/issues/77
|
||||
irc-client = doJailbreak super.irc-client;
|
||||
|
||||
# https://github.com/hvr/token-bucket/issues/3
|
||||
token-bucket = dontCheck super.token-bucket;
|
||||
|
||||
|
@ -654,12 +644,15 @@ self: super: {
|
|||
}) newer;
|
||||
|
||||
# * The standard libraries are compiled separately.
|
||||
# * We need multiple patches from master to fix compilation with
|
||||
# * We need a patch 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.
|
||||
# removed when the next idris release comes around.
|
||||
idris = self.generateOptparseApplicativeCompletions [ "idris" ]
|
||||
(doJailbreak (dontCheck super.idris));
|
||||
(appendPatch (fetchpatch {
|
||||
name = "idris-libffi-0.2.patch";
|
||||
url = "https://github.com/idris-lang/Idris-dev/commit/6d6017f906c5aa95594dba0fd75e7a512f87883a.patch";
|
||||
hash = "sha256-wyLjqCyLh5quHMOwLM5/XjlhylVC7UuahAM79D8+uls=";
|
||||
}) (doJailbreak (dontCheck super.idris)));
|
||||
|
||||
# Too strict bound on hspec
|
||||
# https://github.com/lspitzner/multistate/issues/9#issuecomment-1367853016
|
||||
|
@ -1357,9 +1350,7 @@ self: super: {
|
|||
haskell-language-server = (lib.pipe super.haskell-language-server [
|
||||
dontCheck
|
||||
(disableCabalFlag "stan") # Sorry stan is totally unmaintained and terrible to get to run. It only works on ghc 8.8 or 8.10 anyways …
|
||||
(assert super.hls-call-hierarchy-plugin.version == "1.1.0.0"; disableCabalFlag "callHierarchy") # Disabled temporarily: https://github.com/haskell/haskell-language-server/pull/3431
|
||||
]).overrideScope (lself: lsuper: {
|
||||
hls-call-hierarchy-plugin = null;
|
||||
# For most ghc versions, we overrideScope Cabal in the configuration-ghc-???.nix,
|
||||
# because some packages, like ormolu, need a newer Cabal version.
|
||||
# ghc-paths is special because it depends on Cabal for building
|
||||
|
@ -1977,12 +1968,6 @@ self: super: {
|
|||
"--skip" "/toJsonSerializer/should generate valid JSON/"
|
||||
] ++ drv.testFlags or [];
|
||||
}) super.hschema-aeson;
|
||||
# https://github.com/ssadler/aeson-quick/issues/3
|
||||
aeson-quick = overrideCabal (drv: {
|
||||
testFlags = [
|
||||
"-p" "!/asLens.set/&&!/complex.set/&&!/multipleKeys.set/"
|
||||
] ++ drv.testFlags or [];
|
||||
}) super.aeson-quick;
|
||||
# https://github.com/minio/minio-hs/issues/165
|
||||
minio-hs = overrideCabal (drv: {
|
||||
testFlags = [
|
||||
|
@ -2110,12 +2095,9 @@ self: super: {
|
|||
# https://github.com/zellige/hs-geojson/issues/29
|
||||
geojson = dontCheck super.geojson;
|
||||
|
||||
# Support network >= 3.1.2
|
||||
# https://github.com/erebe/wstunnel/pull/107
|
||||
wstunnel = appendPatch (fetchpatch {
|
||||
url = "https://github.com/erebe/wstunnel/pull/107/commits/47c1f62bdec1dbe77088d9e3ceb6d872f922ce34.patch";
|
||||
sha256 = "sha256-fW5bVbAGQxU/gd9zqgVNclwKraBtUjkKDek7L0c4+O0=";
|
||||
}) super.wstunnel;
|
||||
# Test suite doesn't compile
|
||||
# https://github.com/erebe/wstunnel/issues/145
|
||||
wstunnel = dontCheck super.wstunnel;
|
||||
|
||||
# Test data missing from sdist
|
||||
# https://github.com/ngless-toolkit/ngless/issues/152
|
||||
|
|
|
@ -560,6 +560,7 @@ broken-packages:
|
|||
- cabal-meta
|
||||
- cabal-mon
|
||||
- cabal-nirvana
|
||||
- cabal-plan-bounds
|
||||
- cabal-progdeps
|
||||
- cabalQuery
|
||||
- CabalSearch
|
||||
|
@ -853,6 +854,7 @@ broken-packages:
|
|||
- Conscript
|
||||
- consistent
|
||||
- console-program
|
||||
- constable
|
||||
- const-math-ghc-plugin
|
||||
- constrained
|
||||
- constrained-categories
|
||||
|
@ -2323,7 +2325,6 @@ broken-packages:
|
|||
- HLogger
|
||||
- hlongurl
|
||||
- hls-brittany-plugin
|
||||
- hls-call-hierarchy-plugin
|
||||
- hls-haddock-comments-plugin
|
||||
- hls-selection-range-plugin
|
||||
- hls-stan-plugin
|
||||
|
@ -2661,7 +2662,6 @@ broken-packages:
|
|||
- identifiers
|
||||
- idiii
|
||||
- idna2008
|
||||
- idris
|
||||
- IDynamic
|
||||
- ieee-utils
|
||||
- iexcloud
|
||||
|
@ -4327,6 +4327,7 @@ broken-packages:
|
|||
- rattle
|
||||
- rattletrap
|
||||
- raven-haskell-scotty
|
||||
- raylib-imgui
|
||||
- raz
|
||||
- rbst
|
||||
- rclient
|
||||
|
|
|
@ -192,6 +192,7 @@ dont-distribute-packages:
|
|||
- HROOT-hist
|
||||
- HROOT-io
|
||||
- HROOT-math
|
||||
- HROOT-net
|
||||
- HROOT-tree
|
||||
- HRay
|
||||
- HSGEP
|
||||
|
@ -672,7 +673,10 @@ dont-distribute-packages:
|
|||
- array-forth
|
||||
- arraylist
|
||||
- ascii-cows
|
||||
- ascii-superset_1_2_4_0
|
||||
- ascii-table
|
||||
- ascii-th_1_1_1_0
|
||||
- ascii_1_4_2_0
|
||||
- asic
|
||||
- asil
|
||||
- assert4hs-hspec
|
||||
|
@ -1027,6 +1031,7 @@ dont-distribute-packages:
|
|||
- comfort-array
|
||||
- comfort-array-shape
|
||||
- comfort-fftw
|
||||
- comfort-glpk
|
||||
- commsec
|
||||
- commsec-keyexchange
|
||||
- comonad-random
|
||||
|
@ -1395,6 +1400,7 @@ dont-distribute-packages:
|
|||
- ewe
|
||||
- exference
|
||||
- exinst-aeson
|
||||
- exinst-base
|
||||
- exinst-bytes
|
||||
- exinst-cereal
|
||||
- exinst-deepseq
|
||||
|
|
|
@ -359,6 +359,17 @@ self: super: builtins.intersectAttrs super {
|
|||
preCheck = ''export PATH="$PWD/dist/build/ghcide:$PATH"'';
|
||||
}) super.ghcide;
|
||||
|
||||
# At least on 1.3.4 version on 32-bit architectures tasty requires
|
||||
# unbounded-delays via .cabal file conditions.
|
||||
tasty = overrideCabal (drv: {
|
||||
libraryHaskellDepends =
|
||||
(drv.libraryHaskellDepends or [])
|
||||
++ lib.optionals (!(pkgs.stdenv.hostPlatform.isAarch64
|
||||
|| pkgs.stdenv.hostPlatform.isx86_64)) [
|
||||
self.unbounded-delays
|
||||
];
|
||||
}) super.tasty;
|
||||
|
||||
tasty-discover = overrideCabal (drv: {
|
||||
# Depends on itself for testing
|
||||
preBuild = ''
|
||||
|
@ -800,6 +811,14 @@ self: super: builtins.intersectAttrs super {
|
|||
# time
|
||||
random = dontCheck super.random;
|
||||
|
||||
# https://github.com/Gabriella439/nix-diff/pull/74
|
||||
nix-diff = overrideCabal (drv: {
|
||||
postPatch = ''
|
||||
substituteInPlace src/Nix/Diff/Types.hs \
|
||||
--replace "{-# OPTIONS_GHC -Wno-orphans #-}" "{-# OPTIONS_GHC -Wno-orphans -fconstraint-solver-iterations=0 #-}"
|
||||
'';
|
||||
}) (doJailbreak (dontCheck super.nix-diff));
|
||||
|
||||
# mockery's tests depend on hspec-discover which dependso on mockery for its tests
|
||||
mockery = dontCheck super.mockery;
|
||||
# same for logging-facade
|
||||
|
@ -840,7 +859,11 @@ self: super: builtins.intersectAttrs super {
|
|||
buildTools = drv.buildTools or [ ] ++ [ pkgs.buildPackages.makeWrapper ];
|
||||
postInstall = drv.postInstall or "" + ''
|
||||
wrapProgram "$out/bin/nvfetcher" --prefix 'PATH' ':' "${
|
||||
pkgs.lib.makeBinPath [ pkgs.nvchecker pkgs.nix-prefetch ]
|
||||
pkgs.lib.makeBinPath [
|
||||
pkgs.nvchecker
|
||||
pkgs.nix-prefetch
|
||||
pkgs.nix-prefetch-docker
|
||||
]
|
||||
}"
|
||||
'';
|
||||
}) super.nvfetcher);
|
||||
|
@ -851,7 +874,11 @@ self: super: builtins.intersectAttrs super {
|
|||
(overrideCabal { doCheck = pkgs.postgresql.doCheck; })
|
||||
];
|
||||
|
||||
cachix = super.cachix.override { nix = pkgs.nixVersions.nix_2_10; };
|
||||
cachix = super.cachix.override {
|
||||
nix = pkgs.nixVersions.nix_2_10;
|
||||
fsnotify = super.fsnotify_0_4_1_0;
|
||||
hnix-store-core = super.hnix-store-core_0_6_1_0;
|
||||
};
|
||||
|
||||
hercules-ci-agent = super.hercules-ci-agent.override { nix = pkgs.nixVersions.nix_2_10; };
|
||||
hercules-ci-cnix-expr =
|
||||
|
|
|
@ -11,7 +11,12 @@ let
|
|||
in
|
||||
|
||||
{ pname
|
||||
, dontStrip ? (ghc.isGhcjs or false)
|
||||
# Note that ghc.isGhcjs != stdenv.hostPlatform.isGhcjs.
|
||||
# ghc.isGhcjs implies that we are using ghcjs, a project separate from GHC.
|
||||
# (mere) stdenv.hostPlatform.isGhcjs means that we are using GHC's JavaScript
|
||||
# backend. The latter is a normal cross compilation backend and needs little
|
||||
# special accomodation.
|
||||
, dontStrip ? (ghc.isGhcjs or false || stdenv.hostPlatform.isGhcjs)
|
||||
, version, revision ? null
|
||||
, sha256 ? null
|
||||
, src ? fetchurl { url = "mirror://hackage/${pname}-${version}.tar.gz"; inherit sha256; }
|
||||
|
@ -171,7 +176,7 @@ let
|
|||
# Pass the "wrong" C compiler rather than none at all so packages that just
|
||||
# use the C preproccessor still work, see
|
||||
# https://github.com/haskell/cabal/issues/6466 for details.
|
||||
"--with-gcc=${(if stdenv.hasCC then stdenv else buildPackages.stdenv).cc.targetPrefix}cc"
|
||||
"--with-gcc=${if stdenv.hasCC then "$CC" else "$CC_FOR_BUILD"}"
|
||||
] ++ optionals stdenv.hasCC [
|
||||
"--with-ld=${stdenv.cc.bintools.targetPrefix}ld"
|
||||
"--with-ar=${stdenv.cc.bintools.targetPrefix}ar"
|
||||
|
@ -246,7 +251,10 @@ let
|
|||
allPkgconfigDepends = pkg-configDepends ++ libraryPkgconfigDepends ++ executablePkgconfigDepends ++
|
||||
optionals doCheck testPkgconfigDepends ++ optionals doBenchmark benchmarkPkgconfigDepends;
|
||||
|
||||
depsBuildBuild = [ nativeGhc ];
|
||||
depsBuildBuild = [ nativeGhc ]
|
||||
# CC_FOR_BUILD may be necessary if we have no C preprocessor for the host
|
||||
# platform. See crossCabalFlags above for more details.
|
||||
++ lib.optionals (!stdenv.hasCC) [ buildPackages.stdenv.cc ];
|
||||
collectedToolDepends =
|
||||
buildTools ++ libraryToolDepends ++ executableToolDepends ++
|
||||
optionals doCheck testToolDepends ++
|
||||
|
@ -316,7 +324,9 @@ stdenv.mkDerivation ({
|
|||
inherit src;
|
||||
|
||||
inherit depsBuildBuild nativeBuildInputs;
|
||||
buildInputs = otherBuildInputs ++ optionals (!isLibrary) propagatedBuildInputs;
|
||||
buildInputs = otherBuildInputs ++ optionals (!isLibrary) propagatedBuildInputs
|
||||
# For patchShebangsAuto in fixupPhase
|
||||
++ optionals stdenv.hostPlatform.isGhcjs [ nodejs ];
|
||||
propagatedBuildInputs = optionals isLibrary propagatedBuildInputs;
|
||||
|
||||
LANG = "en_US.UTF-8"; # GHC needs the locale configured during the Haddock phase.
|
||||
|
|
1319
pkgs/development/haskell-modules/hackage-packages.nix
generated
1319
pkgs/development/haskell-modules/hackage-packages.nix
generated
File diff suppressed because it is too large
Load diff
|
@ -14558,10 +14558,13 @@ with pkgs;
|
|||
haskell = callPackage ./haskell-packages.nix { };
|
||||
|
||||
haskellPackages = dontRecurseIntoAttrs
|
||||
# Prefer native-bignum to avoid linking issues with gmp
|
||||
(if stdenv.hostPlatform.isStatic
|
||||
then haskell.packages.native-bignum.ghc92
|
||||
else haskell.packages.ghc92);
|
||||
# JS backend is only available for GHC >= 9.6
|
||||
(if stdenv.hostPlatform.isGhcjs
|
||||
then haskell.packages.native-bignum.ghcHEAD
|
||||
# Prefer native-bignum to avoid linking issues with gmp
|
||||
else if stdenv.hostPlatform.isStatic
|
||||
then haskell.packages.native-bignum.ghc92
|
||||
else haskell.packages.ghc92);
|
||||
|
||||
# haskellPackages.ghc is build->host (it exposes the compiler used to build the
|
||||
# set, similarly to stdenv.cc), but pkgs.ghc should be host->target to be more
|
||||
|
|
|
@ -159,6 +159,8 @@ in
|
|||
/* Javacript */
|
||||
ghcjs = mapTestOnCross lib.systems.examples.ghcjs {
|
||||
haskell.packages.ghcjs.hello = nativePlatforms;
|
||||
haskell.packages.native-bignum.ghcHEAD.hello = nativePlatforms;
|
||||
haskellPackages.hello = nativePlatforms;
|
||||
};
|
||||
|
||||
/* Linux on Raspberrypi */
|
||||
|
|
|
@ -345,6 +345,13 @@ let
|
|||
;
|
||||
};
|
||||
};
|
||||
|
||||
pkgsCross.ghcjs.haskellPackages = {
|
||||
inherit (packagePlatforms pkgs.pkgsCross.ghcjs.haskellPackages)
|
||||
ghc
|
||||
hello
|
||||
;
|
||||
};
|
||||
})
|
||||
(versionedCompilerJobs {
|
||||
# Packages which should be checked on more than the
|
||||
|
|
Loading…
Reference in a new issue