haskell.compiler.ghcjs: remove at 8.10.7
This commit is contained in:
committed by
Wolfgang Walther
parent
9b20b4d9d9
commit
60dfb9bae8
@@ -46,6 +46,8 @@
|
||||
|
||||
- `conduwuit` was removed due to upstream ceasing development and deleting their repository. For existing data, a migration to `matrix-conduit`, `matrix-continuwuity` or `matrix-tuwunel` may be possible.
|
||||
|
||||
- The GHCJS 8.10.7, exposed via `haskell.compiler.ghcjs` and `haskell.compiler.ghcjs810`, has been removed. Downstream users should migrate their projects to the new JavaScript backend of GHC proper which can be used via `pkgsCross.ghcjs` from Nixpkgs.
|
||||
|
||||
- `gnome-keyring` no longer ships with an SSH agent anymore because it has been deprecated upstream. You should use `gcr_4` instead, which provides the same features. More information on why this was done can be found on [the relevant GCR upstream PR](https://gitlab.gnome.org/GNOME/gcr/-/merge_requests/67).
|
||||
|
||||
- `stdenv.mkDerivation` and other derivation builders that use it no longer allow the value of `env` to be anything but an attribute set, for the purpose of setting environment variables that are available to the [builder](https://nix.dev/manual/nix/latest/store/derivation/#builder) process. An environment variable called `env` can still be provided by means of `mkDerivation { env.env = ...; }`, though we recommend to use a more specific name than "env".
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
{
|
||||
haskellLib,
|
||||
fetchpatch,
|
||||
buildPackages,
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (haskellLib)
|
||||
addBuildTools
|
||||
appendConfigureFlag
|
||||
dontHaddock
|
||||
doJailbreak
|
||||
markUnbroken
|
||||
overrideCabal
|
||||
;
|
||||
in
|
||||
self: super: {
|
||||
ghcjs =
|
||||
overrideCabal
|
||||
(drv: {
|
||||
# Jailbreak and patch can be dropped after https://github.com/ghcjs/ghcjs/pull/833
|
||||
jailbreak = true;
|
||||
patches = drv.patches or [ ] ++ [
|
||||
(fetchpatch {
|
||||
name = "ghcjs-aeson-2.0.patch";
|
||||
url = "https://github.com/ghcjs/ghcjs/commit/9ef1f92d740e8503d15d91699f57db147f0474cc.patch";
|
||||
sha256 = "0cgxcy6b5870bv4kj54n3bzcqinh4gl4w4r78dg43h2mblhkzbnj";
|
||||
})
|
||||
];
|
||||
})
|
||||
(
|
||||
super.ghcjs.overrideScope (
|
||||
self: super: {
|
||||
# Allow transformers-compat >= 0.7
|
||||
optparse-applicative = doJailbreak self.optparse-applicative_0_15_1_0;
|
||||
ansi-wl-pprint = self.ansi-wl-pprint_0_6_9;
|
||||
ansi-terminal = self.ansi-terminal_1_0_2;
|
||||
ansi-terminal-types = self.ansi-terminal-types_0_11_5;
|
||||
}
|
||||
)
|
||||
);
|
||||
}
|
||||
@@ -1,70 +0,0 @@
|
||||
{
|
||||
perl,
|
||||
autoconf,
|
||||
automake,
|
||||
python3,
|
||||
gcc,
|
||||
cabal-install,
|
||||
runCommand,
|
||||
fetchpatch,
|
||||
|
||||
ghc,
|
||||
happy,
|
||||
alex,
|
||||
|
||||
ghcjsSrc,
|
||||
version,
|
||||
}:
|
||||
|
||||
runCommand "configured-ghcjs-src"
|
||||
{
|
||||
nativeBuildInputs = [
|
||||
perl
|
||||
autoconf
|
||||
automake
|
||||
python3
|
||||
ghc
|
||||
happy
|
||||
alex
|
||||
cabal-install
|
||||
gcc
|
||||
];
|
||||
|
||||
inherit ghcjsSrc;
|
||||
|
||||
ctimePatch = fetchpatch {
|
||||
name = "ghcjs-base-ctime-64-bit.patch";
|
||||
url = "https://github.com/ghcjs/ghcjs/commit/b7711fbca7c3f43a61f1dba526e6f2a2656ef44c.patch";
|
||||
hash = "sha256-zZ3l8/5gbIGtvu0s2Xl92fEDhkhJ2c2w+5Ql5qkvr3s=";
|
||||
};
|
||||
}
|
||||
''
|
||||
export HOME=$(pwd)
|
||||
mkdir $HOME/.cabal
|
||||
touch $HOME/.cabal/config
|
||||
cp -r "$ghcjsSrc" "$out"
|
||||
chmod -R +w "$out"
|
||||
cd "$out"
|
||||
|
||||
patch -p1 -i "$ctimePatch"
|
||||
|
||||
# TODO: Find a better way to avoid impure version numbers
|
||||
sed -i 's/RELEASE=NO/RELEASE=YES/' ghc/configure.ac
|
||||
|
||||
# These files are needed by ghc-boot package, and these are generated by the
|
||||
# make/hadrian build system when compiling ghc. Since we dont have access to
|
||||
# the generated code of the ghc while it got built, here is a little hack to
|
||||
# generate these again.
|
||||
runhaskell ${./generate_host_version.hs}
|
||||
mkdir -p utils/pkg-cache/ghc/libraries/ghc-boot/dist-install/build/GHC/Platform
|
||||
mv Host.hs utils/pkg-cache/ghc/libraries/ghc-boot/dist-install/build/GHC/Platform/Host.hs
|
||||
mv Version.hs utils/pkg-cache/ghc/libraries/ghc-boot/dist-install/build/GHC/Version.hs
|
||||
|
||||
# The ghcjs has the following hardcoded paths of lib dir in its code. Patching
|
||||
# these to match the path expected by the nixpkgs's generic-builder, etc.
|
||||
sed -i 's/libSubDir = "lib"/libSubDir = "lib\/ghcjs-${version}"/' src-bin/Boot.hs
|
||||
sed -i 's@let libDir = takeDirectory haddockPath </> ".." </> "lib"@let libDir = takeDirectory haddockPath </> ".." </> "lib/ghcjs-${version}"@' src-bin/HaddockDriver.hs
|
||||
|
||||
patchShebangs .
|
||||
./utils/makePackages.sh copy
|
||||
''
|
||||
@@ -1,144 +0,0 @@
|
||||
{
|
||||
stdenv,
|
||||
pkgsHostHost,
|
||||
callPackage,
|
||||
fetchgit,
|
||||
fetchpatch,
|
||||
ghcjsSrcJson ? null,
|
||||
ghcjsSrc ? fetchgit (lib.importJSON ghcjsSrcJson),
|
||||
bootPkgs,
|
||||
stage0,
|
||||
haskellLib,
|
||||
cabal-install,
|
||||
nodejs,
|
||||
makeWrapper,
|
||||
xorg,
|
||||
gmp,
|
||||
pkg-config,
|
||||
gcc,
|
||||
lib,
|
||||
ghcjsDepOverrides ? (_: _: { }),
|
||||
linkFarm,
|
||||
buildPackages,
|
||||
}:
|
||||
|
||||
let
|
||||
passthru = {
|
||||
configuredSrc = callPackage ./configured-ghcjs-src.nix {
|
||||
inherit ghcjsSrc;
|
||||
inherit (bootPkgs) ghc alex;
|
||||
inherit (bootGhcjs) version;
|
||||
happy = bootPkgs.happy_1_19_12;
|
||||
};
|
||||
bootPkgs = bootPkgs.extend (
|
||||
lib.foldr lib.composeExtensions (_: _: { }) [
|
||||
(
|
||||
self: _:
|
||||
import stage0 {
|
||||
inherit (passthru) configuredSrc;
|
||||
inherit (self) callPackage;
|
||||
}
|
||||
)
|
||||
|
||||
(callPackage ./common-overrides.nix {
|
||||
inherit haskellLib fetchpatch buildPackages;
|
||||
})
|
||||
ghcjsDepOverrides
|
||||
]
|
||||
);
|
||||
|
||||
targetPrefix = "";
|
||||
inherit bootGhcjs;
|
||||
inherit (bootGhcjs) version;
|
||||
isGhcjs = true;
|
||||
|
||||
llvmPackages = null;
|
||||
enableShared = true;
|
||||
|
||||
socket-io = pkgsHostHost.nodePackages."socket.io";
|
||||
|
||||
haskellCompilerName = "ghcjs-${bootGhcjs.version}";
|
||||
};
|
||||
|
||||
bootGhcjs = haskellLib.justStaticExecutables passthru.bootPkgs.ghcjs;
|
||||
|
||||
# This provides the stuff we need from the emsdk
|
||||
emsdk = linkFarm "emsdk" [
|
||||
{
|
||||
name = "upstream/bin";
|
||||
path = buildPackages.clang + "/bin";
|
||||
}
|
||||
{
|
||||
name = "upstream/emscripten";
|
||||
path = buildPackages.emscripten + "/bin";
|
||||
}
|
||||
];
|
||||
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = bootGhcjs.name;
|
||||
src = passthru.configuredSrc;
|
||||
nativeBuildInputs = [
|
||||
bootGhcjs
|
||||
passthru.bootPkgs.ghc
|
||||
cabal-install
|
||||
nodejs
|
||||
makeWrapper
|
||||
xorg.lndir
|
||||
gmp
|
||||
pkg-config
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
gcc # https://github.com/ghcjs/ghcjs/issues/663
|
||||
];
|
||||
dontConfigure = true;
|
||||
dontInstall = true;
|
||||
|
||||
# Newer versions of `config.sub` reject the `js-ghcjs` host string, but the
|
||||
# older `config.sub` filed vendored within `ghc` still works
|
||||
dontUpdateAutotoolsGnuConfigScripts = true;
|
||||
|
||||
buildPhase = ''
|
||||
export HOME=$TMP
|
||||
mkdir $HOME/.cabal
|
||||
touch $HOME/.cabal/config
|
||||
cd lib/boot
|
||||
|
||||
export EM_CACHE="$HOME/.emscriptencache"
|
||||
mkdir -p "$EM_CACHE"
|
||||
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/lib/${bootGhcjs.name}
|
||||
lndir ${bootGhcjs}/bin $out/bin
|
||||
chmod -R +w $out/bin
|
||||
rm $out/bin/ghcjs-boot
|
||||
cp ${bootGhcjs}/bin/ghcjs-boot $out/bin
|
||||
rm $out/bin/haddock
|
||||
cp ${bootGhcjs}/bin/haddock $out/bin
|
||||
cp ${bootGhcjs}/bin/private-ghcjs-hsc2hs $out/bin/ghcjs-hsc2hs
|
||||
|
||||
wrapProgram $out/bin/ghcjs-boot --set ghcjs_libexecdir $out/bin
|
||||
|
||||
wrapProgram $out/bin/ghcjs --add-flags "-B$out/lib/${bootGhcjs.name}"
|
||||
wrapProgram $out/bin/haddock --add-flags "-B$out/lib/${bootGhcjs.name}"
|
||||
wrapProgram $out/bin/ghcjs-pkg --add-flags "--global-package-db=$out/lib/${bootGhcjs.name}/package.conf.d"
|
||||
wrapProgram $out/bin/ghcjs-hsc2hs --add-flags "-I$out/lib/${bootGhcjs.name}/include --template=$out/lib/${bootGhcjs.name}/include/template-hsc.h"
|
||||
|
||||
env PATH=$out/bin:$PATH $out/bin/ghcjs-boot --with-emsdk=${emsdk} --no-haddock
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
inherit passthru;
|
||||
|
||||
meta = {
|
||||
platforms = with lib.platforms; linux ++ darwin;
|
||||
|
||||
# Hydra limits jobs to only outputting 1 gigabyte worth of files.
|
||||
# GHCJS outputs over 3 gigabytes.
|
||||
# https://github.com/NixOS/nixpkgs/pull/137066#issuecomment-922335563
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
|
||||
maintainers = with lib.maintainers; [ obsidian-systems-maintenance ];
|
||||
};
|
||||
}
|
||||
@@ -1,54 +0,0 @@
|
||||
-- Generate the Host.hs and Version.hs as done by hadrian/src/Rules/Generate.hs
|
||||
|
||||
import GHC.Platform.Host
|
||||
import GHC.Version
|
||||
|
||||
main = do
|
||||
writeFile "Version.hs" versionHs
|
||||
writeFile "Host.hs" platformHostHs
|
||||
|
||||
-- | Generate @Version.hs@ files.
|
||||
versionHs :: String
|
||||
versionHs = unlines
|
||||
[ "module GHC.Version where"
|
||||
, ""
|
||||
, "import Prelude -- See Note [Why do we import Prelude here?]"
|
||||
, ""
|
||||
, "cProjectGitCommitId :: String"
|
||||
, "cProjectGitCommitId = " ++ show cProjectGitCommitId
|
||||
, ""
|
||||
, "cProjectVersion :: String"
|
||||
, "cProjectVersion = " ++ show cProjectVersion
|
||||
, ""
|
||||
, "cProjectVersionInt :: String"
|
||||
, "cProjectVersionInt = " ++ show cProjectVersionInt
|
||||
, ""
|
||||
, "cProjectPatchLevel :: String"
|
||||
, "cProjectPatchLevel = " ++ show cProjectPatchLevel
|
||||
, ""
|
||||
, "cProjectPatchLevel1 :: String"
|
||||
, "cProjectPatchLevel1 = " ++ show cProjectPatchLevel1
|
||||
, ""
|
||||
, "cProjectPatchLevel2 :: String"
|
||||
, "cProjectPatchLevel2 = " ++ show cProjectPatchLevel2
|
||||
]
|
||||
|
||||
-- | Generate @Platform/Host.hs@ files.
|
||||
platformHostHs :: String
|
||||
platformHostHs = unlines
|
||||
[ "module GHC.Platform.Host where"
|
||||
, ""
|
||||
, "import GHC.Platform"
|
||||
, ""
|
||||
, "cHostPlatformArch :: Arch"
|
||||
, "cHostPlatformArch = " ++ show cHostPlatformArch
|
||||
, ""
|
||||
, "cHostPlatformOS :: OS"
|
||||
, "cHostPlatformOS = " ++ show cHostPlatformOS
|
||||
, ""
|
||||
, "cHostPlatformMini :: PlatformMini"
|
||||
, "cHostPlatformMini = PlatformMini"
|
||||
, " { platformMini_arch = cHostPlatformArch"
|
||||
, " , platformMini_os = cHostPlatformOS"
|
||||
, " }"
|
||||
]
|
||||
@@ -1,6 +0,0 @@
|
||||
{
|
||||
"url": "https://github.com/obsidiansystems/ghcjs",
|
||||
"rev": "9fc935f2c3ba6c33ec62eb83afc9f52a893eb68c",
|
||||
"sha256": "sha256:063dmir39c4i1z8ypnmq86g1x2vhqndmdpzc4hyzsy5jjqcbx6i3",
|
||||
"fetchSubmodules": true
|
||||
}
|
||||
@@ -1,245 +0,0 @@
|
||||
{ callPackage, configuredSrc }:
|
||||
|
||||
{
|
||||
|
||||
ghcjs = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
aeson,
|
||||
alex,
|
||||
array,
|
||||
attoparsec,
|
||||
base,
|
||||
base16-bytestring,
|
||||
base64-bytestring,
|
||||
binary,
|
||||
bytestring,
|
||||
Cabal,
|
||||
containers,
|
||||
cryptohash,
|
||||
data-default,
|
||||
deepseq,
|
||||
directory,
|
||||
executable-path,
|
||||
filepath,
|
||||
ghc-boot,
|
||||
ghc-boot-th,
|
||||
ghc-compact,
|
||||
ghc-heap,
|
||||
ghc-paths,
|
||||
ghci,
|
||||
happy,
|
||||
hashable,
|
||||
hpc,
|
||||
http-types,
|
||||
HUnit,
|
||||
lens,
|
||||
lib,
|
||||
lifted-base,
|
||||
mtl,
|
||||
network,
|
||||
optparse-applicative,
|
||||
parallel,
|
||||
parsec,
|
||||
process,
|
||||
random,
|
||||
safe,
|
||||
shelly,
|
||||
split,
|
||||
stringsearch,
|
||||
syb,
|
||||
tar,
|
||||
template-haskell,
|
||||
terminfo,
|
||||
test-framework,
|
||||
test-framework-hunit,
|
||||
text,
|
||||
time,
|
||||
transformers,
|
||||
unix,
|
||||
unix-compat,
|
||||
unordered-containers,
|
||||
vector,
|
||||
wai,
|
||||
wai-app-static,
|
||||
wai-extra,
|
||||
wai-websockets,
|
||||
warp,
|
||||
webdriver,
|
||||
websockets,
|
||||
wl-pprint-text,
|
||||
xhtml,
|
||||
yaml,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "ghcjs";
|
||||
version = "8.10.7";
|
||||
src = configuredSrc + /.;
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
libraryHaskellDepends = [
|
||||
aeson
|
||||
array
|
||||
attoparsec
|
||||
base
|
||||
base16-bytestring
|
||||
base64-bytestring
|
||||
binary
|
||||
bytestring
|
||||
Cabal
|
||||
containers
|
||||
cryptohash
|
||||
data-default
|
||||
deepseq
|
||||
directory
|
||||
filepath
|
||||
ghc-boot
|
||||
ghc-boot-th
|
||||
ghc-compact
|
||||
ghc-heap
|
||||
ghc-paths
|
||||
ghci
|
||||
hashable
|
||||
hpc
|
||||
lens
|
||||
mtl
|
||||
optparse-applicative
|
||||
parallel
|
||||
parsec
|
||||
process
|
||||
safe
|
||||
split
|
||||
stringsearch
|
||||
syb
|
||||
template-haskell
|
||||
terminfo
|
||||
text
|
||||
time
|
||||
transformers
|
||||
unix
|
||||
unordered-containers
|
||||
vector
|
||||
wl-pprint-text
|
||||
yaml
|
||||
];
|
||||
libraryToolDepends = [
|
||||
alex
|
||||
happy
|
||||
];
|
||||
executableHaskellDepends = [
|
||||
aeson
|
||||
array
|
||||
base
|
||||
binary
|
||||
bytestring
|
||||
Cabal
|
||||
containers
|
||||
deepseq
|
||||
directory
|
||||
executable-path
|
||||
filepath
|
||||
ghc-boot
|
||||
lens
|
||||
mtl
|
||||
optparse-applicative
|
||||
parsec
|
||||
process
|
||||
tar
|
||||
terminfo
|
||||
text
|
||||
time
|
||||
transformers
|
||||
unix
|
||||
unix-compat
|
||||
unordered-containers
|
||||
vector
|
||||
xhtml
|
||||
yaml
|
||||
];
|
||||
testHaskellDepends = [
|
||||
aeson
|
||||
base
|
||||
bytestring
|
||||
data-default
|
||||
deepseq
|
||||
directory
|
||||
filepath
|
||||
http-types
|
||||
HUnit
|
||||
lens
|
||||
lifted-base
|
||||
network
|
||||
optparse-applicative
|
||||
process
|
||||
random
|
||||
shelly
|
||||
test-framework
|
||||
test-framework-hunit
|
||||
text
|
||||
time
|
||||
transformers
|
||||
unordered-containers
|
||||
wai
|
||||
wai-app-static
|
||||
wai-extra
|
||||
wai-websockets
|
||||
warp
|
||||
webdriver
|
||||
websockets
|
||||
yaml
|
||||
];
|
||||
description = "Haskell to JavaScript compiler";
|
||||
license = lib.licenses.mit;
|
||||
}
|
||||
) { };
|
||||
|
||||
ghcjs-th = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
base,
|
||||
binary,
|
||||
bytestring,
|
||||
containers,
|
||||
ghc-prim,
|
||||
ghci,
|
||||
lib,
|
||||
template-haskell,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "ghcjs-th";
|
||||
version = "0.1.0.0";
|
||||
src = configuredSrc + /lib/ghcjs-th;
|
||||
libraryHaskellDepends = [
|
||||
base
|
||||
binary
|
||||
bytestring
|
||||
containers
|
||||
ghc-prim
|
||||
ghci
|
||||
template-haskell
|
||||
];
|
||||
homepage = "https://github.com/ghcjs";
|
||||
license = lib.licenses.mit;
|
||||
}
|
||||
) { };
|
||||
|
||||
ghcjs-prim = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
base,
|
||||
ghc-prim,
|
||||
lib,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "ghcjs-prim";
|
||||
version = "0.1.1.0";
|
||||
src = ./.;
|
||||
libraryHaskellDepends = [
|
||||
base
|
||||
ghc-prim
|
||||
];
|
||||
homepage = "https://github.com/ghcjs";
|
||||
license = lib.licenses.mit;
|
||||
}
|
||||
) { };
|
||||
}
|
||||
@@ -1,87 +0,0 @@
|
||||
{
|
||||
mkDerivation,
|
||||
aeson,
|
||||
array,
|
||||
attoparsec,
|
||||
base,
|
||||
binary,
|
||||
bytestring,
|
||||
containers,
|
||||
deepseq,
|
||||
directory,
|
||||
dlist,
|
||||
fetchFromGitHub,
|
||||
ghc-prim,
|
||||
ghcjs-prim,
|
||||
hashable,
|
||||
HUnit,
|
||||
integer-gmp,
|
||||
primitive,
|
||||
QuickCheck,
|
||||
quickcheck-unicode,
|
||||
random,
|
||||
scientific,
|
||||
test-framework,
|
||||
test-framework-hunit,
|
||||
test-framework-quickcheck2,
|
||||
text,
|
||||
time,
|
||||
transformers,
|
||||
unordered-containers,
|
||||
vector,
|
||||
lib,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "ghcjs-base";
|
||||
version = "0.2.1.0";
|
||||
# This is the release 0.2.1.0, but the hackage release misses test source files,
|
||||
# so lets use github https://github.com/ghcjs/ghcjs-base/issues/132
|
||||
src = fetchFromGitHub {
|
||||
owner = "ghcjs";
|
||||
repo = "ghcjs-base";
|
||||
rev = "fbaae59b05b020e91783df122249095e168df53f";
|
||||
sha256 = "sha256-x6eCAK1Hne0QkV3Loi9YpxbleNHU593E4AO8cbk2vUc=";
|
||||
};
|
||||
libraryHaskellDepends = [
|
||||
aeson
|
||||
attoparsec
|
||||
base
|
||||
binary
|
||||
bytestring
|
||||
containers
|
||||
deepseq
|
||||
dlist
|
||||
ghc-prim
|
||||
ghcjs-prim
|
||||
hashable
|
||||
integer-gmp
|
||||
primitive
|
||||
scientific
|
||||
text
|
||||
time
|
||||
transformers
|
||||
unordered-containers
|
||||
vector
|
||||
];
|
||||
testHaskellDepends = [
|
||||
array
|
||||
base
|
||||
bytestring
|
||||
deepseq
|
||||
directory
|
||||
ghc-prim
|
||||
ghcjs-prim
|
||||
HUnit
|
||||
primitive
|
||||
QuickCheck
|
||||
quickcheck-unicode
|
||||
random
|
||||
test-framework
|
||||
test-framework-hunit
|
||||
test-framework-quickcheck2
|
||||
text
|
||||
];
|
||||
homepage = "https://github.com/ghcjs/ghcjs-base";
|
||||
description = "base library for GHCJS";
|
||||
license = lib.licenses.mit;
|
||||
}
|
||||
@@ -37,7 +37,6 @@ self: super:
|
||||
|
||||
# Similar to https://ghc.haskell.org/trac/ghc/ticket/13062
|
||||
happy = dontCheck super.happy;
|
||||
happy_1_19_12 = doDistribute (dontCheck super.happy_1_19_12);
|
||||
|
||||
# add arm specific library
|
||||
wiringPi = overrideCabal (
|
||||
|
||||
@@ -1831,16 +1831,6 @@ with haskellLib;
|
||||
# https://github.com/biocad/servant-openapi3/issues/30
|
||||
servant-openapi3 = dontCheck super.servant-openapi3;
|
||||
|
||||
# Point hspec 2.7.10 to correct dependencies
|
||||
hspec_2_7_10 = super.hspec_2_7_10.override {
|
||||
hspec-discover = self.hspec-discover_2_7_10;
|
||||
hspec-core = self.hspec-core_2_7_10;
|
||||
};
|
||||
hspec-discover_2_7_10 = super.hspec-discover_2_7_10.override {
|
||||
hspec-meta = self.hspec-meta_2_7_8;
|
||||
};
|
||||
hspec-core_2_7_10 = doJailbreak (dontCheck super.hspec-core_2_7_10);
|
||||
|
||||
# Disable test cases that were broken by insignificant changes in icu 76
|
||||
# https://github.com/haskell/text-icu/issues/108
|
||||
text-icu = overrideCabal (drv: {
|
||||
|
||||
@@ -8,10 +8,7 @@ let
|
||||
in
|
||||
|
||||
self: super: {
|
||||
|
||||
# ghcjs does not use `llvmPackages` and exposes `null` attribute.
|
||||
llvmPackages =
|
||||
if self.ghc.llvmPackages != null then pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages else null;
|
||||
llvmPackages = pkgs.lib.dontRecurseIntoAttrs self.ghc.llvmPackages;
|
||||
|
||||
# Disable GHC 8.10.x core libraries.
|
||||
array = null;
|
||||
|
||||
@@ -1,154 +0,0 @@
|
||||
# GHCJS package fixes
|
||||
#
|
||||
# Please insert new packages *alphabetically*
|
||||
# in the OTHER PACKAGES section.
|
||||
{ pkgs, haskellLib }:
|
||||
|
||||
let
|
||||
removeLibraryHaskellDepends =
|
||||
pnames: depends: builtins.filter (e: !(builtins.elem (e.pname or "") pnames)) depends;
|
||||
in
|
||||
|
||||
with haskellLib;
|
||||
|
||||
self: super:
|
||||
|
||||
## GENERAL SETUP BASE PACKAGES
|
||||
{
|
||||
inherit (self.ghc.bootPkgs)
|
||||
jailbreak-cabal
|
||||
alex
|
||||
happy
|
||||
gtk2hs-buildtools
|
||||
rehoo
|
||||
hoogle
|
||||
;
|
||||
|
||||
# Test suite fails; https://github.com/ghcjs/ghcjs-base/issues/133
|
||||
ghcjs-base = dontCheck (
|
||||
self.callPackage ../compilers/ghcjs/ghcjs-base.nix {
|
||||
fetchFromGitHub = pkgs.buildPackages.fetchFromGitHub;
|
||||
aeson = self.aeson_1_5_6_0;
|
||||
}
|
||||
);
|
||||
|
||||
# Included in ghcjs itself
|
||||
ghcjs-prim = null;
|
||||
|
||||
ghcjs-websockets = markUnbroken super.ghcjs-websockets;
|
||||
|
||||
# GHCJS does not ship with the same core packages as GHC.
|
||||
# https://github.com/ghcjs/ghcjs/issues/676
|
||||
stm = doJailbreak self.stm_2_5_3_1;
|
||||
exceptions = dontCheck self.exceptions_0_10_10;
|
||||
|
||||
## OTHER PACKAGES
|
||||
|
||||
# Runtime exception in tests, missing C API h$realloc
|
||||
base-compat-batteries = dontCheck super.base-compat-batteries;
|
||||
|
||||
# nodejs crashes during test
|
||||
ChasingBottoms = dontCheck super.ChasingBottoms;
|
||||
|
||||
# runs forever
|
||||
text-short = dontCheck super.text-short;
|
||||
|
||||
# doctest doesn't work on ghcjs, but sometimes dontCheck doesn't seem to get rid of the dependency
|
||||
doctest = pkgs.lib.warn "ignoring dependency on doctest" null;
|
||||
|
||||
ghcjs-dom = overrideCabal (drv: {
|
||||
libraryHaskellDepends = with self; [
|
||||
ghcjs-base
|
||||
ghcjs-dom-jsffi
|
||||
text
|
||||
transformers
|
||||
];
|
||||
configureFlags = [
|
||||
"-fjsffi"
|
||||
"-f-webkit"
|
||||
];
|
||||
}) super.ghcjs-dom;
|
||||
|
||||
ghcjs-dom-jsffi = overrideCabal (drv: {
|
||||
libraryHaskellDepends = (drv.libraryHaskellDepends or [ ]) ++ [
|
||||
self.ghcjs-base
|
||||
self.text
|
||||
];
|
||||
broken = false;
|
||||
}) super.ghcjs-dom-jsffi;
|
||||
|
||||
# https://github.com/Deewiant/glob/issues/39
|
||||
Glob = dontCheck super.Glob;
|
||||
|
||||
# Test fails to compile during the hsc2hs stage
|
||||
hashable = dontCheck super.hashable;
|
||||
|
||||
# uses doctest
|
||||
http-types = dontCheck super.http-types;
|
||||
|
||||
jsaddle = overrideCabal (drv: {
|
||||
libraryHaskellDepends = (drv.libraryHaskellDepends or [ ]) ++ [ self.ghcjs-base ];
|
||||
}) super.jsaddle;
|
||||
|
||||
# Tests hang, possibly some issue with tasty and race(async) usage in the nonTerminating tests
|
||||
logict = dontCheck super.logict;
|
||||
|
||||
patch = dontCheck super.patch;
|
||||
|
||||
# TODO: tests hang
|
||||
pcre-light = dontCheck super.pcre-light;
|
||||
|
||||
# Terminal test not supported on ghcjs
|
||||
QuickCheck = dontCheck super.QuickCheck;
|
||||
|
||||
reflex = overrideCabal (drv: {
|
||||
libraryHaskellDepends = (drv.libraryHaskellDepends or [ ]) ++ [ self.ghcjs-base ];
|
||||
}) super.reflex;
|
||||
|
||||
reflex-dom = overrideCabal (drv: {
|
||||
libraryHaskellDepends = removeLibraryHaskellDepends [ "jsaddle-webkit2gtk" ] (
|
||||
drv.libraryHaskellDepends or [ ]
|
||||
);
|
||||
}) super.reflex-dom;
|
||||
|
||||
# https://github.com/dreixel/syb/issues/21
|
||||
syb = dontCheck super.syb;
|
||||
|
||||
# nodejs crashes during test
|
||||
scientific = dontCheck super.scientific;
|
||||
|
||||
# Tests use TH which gives error
|
||||
tasty-quickcheck = dontCheck super.tasty-quickcheck;
|
||||
|
||||
temporary = dontCheck super.temporary;
|
||||
|
||||
# TODO: The tests have a TH error, which has been fixed in ghc
|
||||
# https://gitlab.haskell.org/ghc/ghc/-/issues/15481 but somehow the issue is
|
||||
# still present here https://github.com/glguy/th-abstraction/issues/53
|
||||
th-abstraction = dontCheck super.th-abstraction;
|
||||
|
||||
# Need hedgehog for tests, which fails to compile due to dep on concurrent-output
|
||||
zenc = dontCheck super.zenc;
|
||||
|
||||
hspec = self.hspec_2_7_10;
|
||||
hspec-core = self.hspec-core_2_7_10;
|
||||
hspec-meta = self.hspec-meta_2_7_8;
|
||||
hspec-discover = self.hspec-discover_2_7_10;
|
||||
|
||||
# ReferenceError: h$primop_ShrinkSmallMutableArrayOp_Char is not defined
|
||||
unordered-containers = dontCheck super.unordered-containers;
|
||||
|
||||
# Without this revert, test suites using tasty fail with:
|
||||
# ReferenceError: h$getMonotonicNSec is not defined
|
||||
# https://github.com/UnkindPartition/tasty/pull/345#issuecomment-1538216407
|
||||
tasty = appendPatch (pkgs.fetchpatch {
|
||||
name = "tasty-ghcjs.patch";
|
||||
url = "https://github.com/UnkindPartition/tasty/commit/e692065642fd09b82acccea610ad8f49edd207df.patch";
|
||||
revert = true;
|
||||
relative = "core";
|
||||
hash = "sha256-ryABU2ywkVOEPC/jWv8humT3HaRpCwMYEk+Ux3hhi/M=";
|
||||
}) super.tasty;
|
||||
|
||||
# Tests take unacceptably long.
|
||||
vector = dontCheck super.vector;
|
||||
}
|
||||
@@ -45,12 +45,8 @@ default-package-overrides:
|
||||
|
||||
# keep-sorted start skip_lines=1 case=no numeric=yes
|
||||
extra-packages:
|
||||
- aeson < 2 # required by pantry-0.5.2
|
||||
- algebraic-graphs < 0.7 # 2023-08-14: Needed for building weeder < 2.6.0
|
||||
- ansi-terminal < 1.1 # 2025-02-27: required for ghcjs
|
||||
- ansi-terminal-types == 0.11.5 # 2025-02-27: required for ghcjs
|
||||
- ansi-wl-pprint >= 0.6 && < 0.7 # 2024-03-23: required for ghcjs
|
||||
- apply-refact == 0.9.* # 2022-12-12: needed for GHC < 9.2
|
||||
- ansi-wl-pprint >= 0.6 && < 0.7 # 2025-07-07: used by gren <= 0.5.4
|
||||
- attoparsec == 0.13.* # 2022-02-23: Needed to compile elm for now
|
||||
- Cabal == 3.2.* # Used for packages needing newer Cabal on ghc 8.6 and 8.8
|
||||
- Cabal == 3.10.*
|
||||
@@ -85,7 +81,6 @@ extra-packages:
|
||||
- ghc-tags == 1.5.* # 2023-02-18: preserve for ghc-lib == 9.2.*
|
||||
- ghc-tags == 1.7.* # 2023-02-18: preserve for ghc-lib == 9.6.*
|
||||
- ghc-tags == 1.8.* # 2023-02-18: preserve for ghc-lib == 9.8.*
|
||||
- happy == 1.19.12 # for ghcjs
|
||||
- happy == 1.20.* # for ghc-lib-parser == 9.6.*
|
||||
- hasql < 1.7 # 2025-01-19: Needed for building postgrest
|
||||
- hasql-dynamic-statements < 0.3.1.6 # 2025-01-19: Needed for building postgrest
|
||||
@@ -96,17 +91,12 @@ extra-packages:
|
||||
- hlint == 3.4.1 # 2022-09-21: preserve for ghc 8.10
|
||||
- hlint == 3.6.* # 2025-04-14: needed for hls with ghc-lib-parser 9.6
|
||||
- hnix-store-core < 0.7 # 2023-12-11: required by hnix-store-remote 0.6
|
||||
- hspec < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
|
||||
- hspec-core < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
|
||||
- hspec-discover < 2.8 # 2022-04-07: Needed for tasty-hspec 1.1.6
|
||||
- hspec-megaparsec == 2.2.0 # 2023-11-18: Latest version compatible with ghc 9.0
|
||||
- hspec-meta < 2.8 # 2022-12-07: Needed for elmPackages.elm / hspec-discover
|
||||
- language-javascript == 0.7.0.0 # required by purescript
|
||||
- lsp < 2.5 # 2024-07-08: need for koka
|
||||
- lsp == 2.1.* # 2024-02-28: need for dhall-lsp-server
|
||||
- lsp-types == 2.1.* # 2024-02-28: need for dhall-lsp-server and koka
|
||||
- network-run == 0.4.0 # 2024-10-20: for GHC 9.10/network == 3.1.*
|
||||
- optparse-applicative < 0.16 # needed for niv-0.2.19
|
||||
- ormolu == 0.5.2.0 # 2023-08-08: preserve for ghc 9.0
|
||||
- ormolu == 0.7.2.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
|
||||
- ormolu == 0.7.7.0 # 2025-01-27: for ghc 9.10 compat
|
||||
|
||||
@@ -635,15 +635,9 @@ builtins.intersectAttrs super {
|
||||
tasty = overrideCabal (drv: {
|
||||
libraryHaskellDepends =
|
||||
(drv.libraryHaskellDepends or [ ])
|
||||
++
|
||||
lib.optionals
|
||||
(
|
||||
!(pkgs.stdenv.hostPlatform.isAarch64 || pkgs.stdenv.hostPlatform.isx86_64)
|
||||
|| (self.ghc.isGhcjs or false)
|
||||
)
|
||||
[
|
||||
self.unbounded-delays
|
||||
];
|
||||
++ lib.optionals (!(pkgs.stdenv.hostPlatform.isAarch64 || pkgs.stdenv.hostPlatform.isx86_64)) [
|
||||
self.unbounded-delays
|
||||
];
|
||||
}) super.tasty;
|
||||
|
||||
tasty-discover = overrideCabal (drv: {
|
||||
|
||||
543
pkgs/development/haskell-modules/hackage-packages.nix
generated
543
pkgs/development/haskell-modules/hackage-packages.nix
generated
@@ -53573,121 +53573,6 @@ self: {
|
||||
}
|
||||
) { };
|
||||
|
||||
"aeson_1_5_6_0" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
attoparsec,
|
||||
base,
|
||||
base-compat,
|
||||
base-compat-batteries,
|
||||
base-orphans,
|
||||
base16-bytestring,
|
||||
bytestring,
|
||||
containers,
|
||||
data-fix,
|
||||
deepseq,
|
||||
Diff,
|
||||
directory,
|
||||
dlist,
|
||||
filepath,
|
||||
generic-deriving,
|
||||
ghc-prim,
|
||||
hashable,
|
||||
hashable-time,
|
||||
integer-logarithms,
|
||||
primitive,
|
||||
QuickCheck,
|
||||
quickcheck-instances,
|
||||
scientific,
|
||||
strict,
|
||||
tagged,
|
||||
tasty,
|
||||
tasty-golden,
|
||||
tasty-hunit,
|
||||
tasty-quickcheck,
|
||||
template-haskell,
|
||||
text,
|
||||
th-abstraction,
|
||||
these,
|
||||
time,
|
||||
time-compat,
|
||||
unordered-containers,
|
||||
uuid-types,
|
||||
vector,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "aeson";
|
||||
version = "1.5.6.0";
|
||||
sha256 = "1s5z4bgb5150h6a4cjf5vh8dmyrn6ilh29gh05999v6jwd5w6q83";
|
||||
revision = "7";
|
||||
editedCabalFile = "1qbsyy605hlfh7wfj3q33yx0xmb4n81z6h0y99x7khyxmy0plqbf";
|
||||
libraryHaskellDepends = [
|
||||
attoparsec
|
||||
base
|
||||
base-compat-batteries
|
||||
bytestring
|
||||
containers
|
||||
data-fix
|
||||
deepseq
|
||||
dlist
|
||||
ghc-prim
|
||||
hashable
|
||||
primitive
|
||||
scientific
|
||||
strict
|
||||
tagged
|
||||
template-haskell
|
||||
text
|
||||
th-abstraction
|
||||
these
|
||||
time
|
||||
time-compat
|
||||
unordered-containers
|
||||
uuid-types
|
||||
vector
|
||||
];
|
||||
testHaskellDepends = [
|
||||
attoparsec
|
||||
base
|
||||
base-compat
|
||||
base-orphans
|
||||
base16-bytestring
|
||||
bytestring
|
||||
containers
|
||||
data-fix
|
||||
Diff
|
||||
directory
|
||||
dlist
|
||||
filepath
|
||||
generic-deriving
|
||||
ghc-prim
|
||||
hashable
|
||||
hashable-time
|
||||
integer-logarithms
|
||||
QuickCheck
|
||||
quickcheck-instances
|
||||
scientific
|
||||
strict
|
||||
tagged
|
||||
tasty
|
||||
tasty-golden
|
||||
tasty-hunit
|
||||
tasty-quickcheck
|
||||
template-haskell
|
||||
text
|
||||
these
|
||||
time
|
||||
time-compat
|
||||
unordered-containers
|
||||
uuid-types
|
||||
vector
|
||||
];
|
||||
description = "Fast JSON parsing and encoding";
|
||||
license = lib.licenses.bsd3;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}
|
||||
) { };
|
||||
|
||||
"aeson" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
@@ -76649,30 +76534,6 @@ self: {
|
||||
}
|
||||
) { };
|
||||
|
||||
"ansi-terminal_1_0_2" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
ansi-terminal-types,
|
||||
base,
|
||||
colour,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "ansi-terminal";
|
||||
version = "1.0.2";
|
||||
sha256 = "0d6qm3ph6drim7g81yx46nmgspxsf4nnr2d91fa0fy3cyv5idra6";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
libraryHaskellDepends = [
|
||||
ansi-terminal-types
|
||||
base
|
||||
colour
|
||||
];
|
||||
description = "Simple ANSI terminal support";
|
||||
license = lib.licenses.bsd3;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}
|
||||
) { };
|
||||
|
||||
"ansi-terminal" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
@@ -76778,28 +76639,6 @@ self: {
|
||||
}
|
||||
) { };
|
||||
|
||||
"ansi-terminal-types_0_11_5" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
base,
|
||||
colour,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "ansi-terminal-types";
|
||||
version = "0.11.5";
|
||||
sha256 = "1lgxnhnzgk4mwlnh8zdgx8w8pa4q4n140mvd1880acgli41j6yxz";
|
||||
revision = "1";
|
||||
editedCabalFile = "02mhl78kmjfa0h22khcjdaaxyvanv717rb2mi3l0jiawv7gl117p";
|
||||
libraryHaskellDepends = [
|
||||
base
|
||||
colour
|
||||
];
|
||||
description = "Types and functions used to represent SGR aspects";
|
||||
license = lib.licenses.bsd3;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}
|
||||
) { };
|
||||
|
||||
"ansi-terminal-types" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
@@ -80800,101 +80639,6 @@ self: {
|
||||
}
|
||||
) { };
|
||||
|
||||
"apply-refact_0_9_3_0" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
base,
|
||||
containers,
|
||||
directory,
|
||||
extra,
|
||||
filemanip,
|
||||
filepath,
|
||||
ghc,
|
||||
ghc-boot-th,
|
||||
ghc-exactprint,
|
||||
optparse-applicative,
|
||||
process,
|
||||
refact,
|
||||
silently,
|
||||
syb,
|
||||
tasty,
|
||||
tasty-expected-failure,
|
||||
tasty-golden,
|
||||
transformers,
|
||||
uniplate,
|
||||
unix-compat,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "apply-refact";
|
||||
version = "0.9.3.0";
|
||||
sha256 = "1sn5g71sx8xa4ggyk49m661iip6zrzl65vb87l16l31kf79bbm7w";
|
||||
revision = "1";
|
||||
editedCabalFile = "0hgdjm6ydfc29d922h1cpwrch61r5qchzrw21dz80kdry53qxl5q";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
libraryHaskellDepends = [
|
||||
base
|
||||
containers
|
||||
directory
|
||||
extra
|
||||
filemanip
|
||||
ghc
|
||||
ghc-boot-th
|
||||
ghc-exactprint
|
||||
process
|
||||
refact
|
||||
syb
|
||||
transformers
|
||||
uniplate
|
||||
unix-compat
|
||||
];
|
||||
executableHaskellDepends = [
|
||||
base
|
||||
containers
|
||||
directory
|
||||
extra
|
||||
filemanip
|
||||
filepath
|
||||
ghc
|
||||
ghc-boot-th
|
||||
ghc-exactprint
|
||||
optparse-applicative
|
||||
process
|
||||
refact
|
||||
syb
|
||||
transformers
|
||||
uniplate
|
||||
unix-compat
|
||||
];
|
||||
testHaskellDepends = [
|
||||
base
|
||||
containers
|
||||
directory
|
||||
extra
|
||||
filemanip
|
||||
filepath
|
||||
ghc
|
||||
ghc-boot-th
|
||||
ghc-exactprint
|
||||
optparse-applicative
|
||||
process
|
||||
refact
|
||||
silently
|
||||
syb
|
||||
tasty
|
||||
tasty-expected-failure
|
||||
tasty-golden
|
||||
transformers
|
||||
uniplate
|
||||
unix-compat
|
||||
];
|
||||
description = "Perform refactorings specified by the refact library";
|
||||
license = lib.licenses.bsd3;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
mainProgram = "refactor";
|
||||
}
|
||||
) { };
|
||||
|
||||
"apply-refact" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
@@ -297969,41 +297713,6 @@ self: {
|
||||
}
|
||||
) { };
|
||||
|
||||
"happy_1_19_12" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
array,
|
||||
base,
|
||||
containers,
|
||||
mtl,
|
||||
process,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "happy";
|
||||
version = "1.19.12";
|
||||
sha256 = "03xlmq6qmdx4zvzw8bp33kd9g7yvcq5cz4wg50xilw812kj276pv";
|
||||
revision = "1";
|
||||
editedCabalFile = "13wydw1mmdry4l9r63vxjk4h55ci9hgwzn1a842qqk1m2rb4xiln";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
enableSeparateDataOutput = true;
|
||||
executableHaskellDepends = [
|
||||
array
|
||||
base
|
||||
containers
|
||||
mtl
|
||||
];
|
||||
testHaskellDepends = [
|
||||
base
|
||||
process
|
||||
];
|
||||
description = "Happy is a parser generator for Haskell";
|
||||
license = lib.licenses.bsd2;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
mainProgram = "happy";
|
||||
}
|
||||
) { };
|
||||
|
||||
"happy_1_20_1_1" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
@@ -355226,32 +354935,6 @@ self: {
|
||||
}
|
||||
) { };
|
||||
|
||||
"hspec_2_7_10" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
base,
|
||||
hspec-core,
|
||||
hspec-discover,
|
||||
hspec-expectations,
|
||||
QuickCheck,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "hspec";
|
||||
version = "2.7.10";
|
||||
sha256 = "0z0lwrmrqkglr78n6k2c36n4h68142bh785ys0x4jaibjshvs6rw";
|
||||
libraryHaskellDepends = [
|
||||
base
|
||||
hspec-core
|
||||
hspec-discover
|
||||
hspec-expectations
|
||||
QuickCheck
|
||||
];
|
||||
description = "A Testing Framework for Haskell";
|
||||
license = lib.licenses.mit;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}
|
||||
) { };
|
||||
|
||||
"hspec" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
@@ -355448,90 +355131,6 @@ self: {
|
||||
}
|
||||
) { };
|
||||
|
||||
"hspec-core_2_7_10" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
ansi-terminal,
|
||||
array,
|
||||
base,
|
||||
call-stack,
|
||||
clock,
|
||||
deepseq,
|
||||
directory,
|
||||
filepath,
|
||||
hspec-expectations,
|
||||
hspec-meta,
|
||||
HUnit,
|
||||
process,
|
||||
QuickCheck,
|
||||
quickcheck-io,
|
||||
random,
|
||||
setenv,
|
||||
silently,
|
||||
stm,
|
||||
temporary,
|
||||
tf-random,
|
||||
transformers,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "hspec-core";
|
||||
version = "2.7.10";
|
||||
sha256 = "12k9yp5gznrda449ir60d5wv3xl7nnyffkb5mhfc0svw9f8lxlv1";
|
||||
revision = "2";
|
||||
editedCabalFile = "0l16mgxgapnihrvbwvhbz9i60v5fx68mhpv6zww9b68bdj6cpbsk";
|
||||
libraryHaskellDepends = [
|
||||
ansi-terminal
|
||||
array
|
||||
base
|
||||
call-stack
|
||||
clock
|
||||
deepseq
|
||||
directory
|
||||
filepath
|
||||
hspec-expectations
|
||||
HUnit
|
||||
QuickCheck
|
||||
quickcheck-io
|
||||
random
|
||||
setenv
|
||||
stm
|
||||
tf-random
|
||||
transformers
|
||||
];
|
||||
testHaskellDepends = [
|
||||
ansi-terminal
|
||||
array
|
||||
base
|
||||
call-stack
|
||||
clock
|
||||
deepseq
|
||||
directory
|
||||
filepath
|
||||
hspec-expectations
|
||||
hspec-meta
|
||||
HUnit
|
||||
process
|
||||
QuickCheck
|
||||
quickcheck-io
|
||||
random
|
||||
setenv
|
||||
silently
|
||||
stm
|
||||
temporary
|
||||
tf-random
|
||||
transformers
|
||||
];
|
||||
testToolDepends = [ hspec-meta ];
|
||||
testFlags = [
|
||||
"--skip"
|
||||
"'Test.Hspec.Core.Runner.hspecResult runs specs in parallel'"
|
||||
];
|
||||
description = "A Testing Framework for Haskell";
|
||||
license = lib.licenses.mit;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}
|
||||
) { };
|
||||
|
||||
"hspec-core" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
@@ -355662,47 +355261,6 @@ self: {
|
||||
}
|
||||
) { };
|
||||
|
||||
"hspec-discover_2_7_10" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
base,
|
||||
directory,
|
||||
filepath,
|
||||
hspec-meta,
|
||||
QuickCheck,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "hspec-discover";
|
||||
version = "2.7.10";
|
||||
sha256 = "13yzvd3b679skvs1insk4s0wc4zvmz6hs38kc8q0j6vzqq06smqa";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
libraryHaskellDepends = [
|
||||
base
|
||||
directory
|
||||
filepath
|
||||
];
|
||||
executableHaskellDepends = [
|
||||
base
|
||||
directory
|
||||
filepath
|
||||
];
|
||||
testHaskellDepends = [
|
||||
base
|
||||
directory
|
||||
filepath
|
||||
hspec-meta
|
||||
QuickCheck
|
||||
];
|
||||
testToolDepends = [ hspec-meta ];
|
||||
description = "Automatically discover and run Hspec tests";
|
||||
license = lib.licenses.mit;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
mainProgram = "hspec-discover";
|
||||
maintainers = [ lib.maintainers.maralorn ];
|
||||
}
|
||||
) { };
|
||||
|
||||
"hspec-discover" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
@@ -356400,72 +355958,6 @@ self: {
|
||||
}
|
||||
) { };
|
||||
|
||||
"hspec-meta_2_7_8" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
ansi-terminal,
|
||||
array,
|
||||
base,
|
||||
call-stack,
|
||||
clock,
|
||||
deepseq,
|
||||
directory,
|
||||
filepath,
|
||||
QuickCheck,
|
||||
quickcheck-io,
|
||||
random,
|
||||
setenv,
|
||||
stm,
|
||||
time,
|
||||
transformers,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "hspec-meta";
|
||||
version = "2.7.8";
|
||||
sha256 = "0sfj0n2hy1r8ifysgbcmfdygcd7vyzr13ldkcp0l2ml337f8j0si";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
libraryHaskellDepends = [
|
||||
ansi-terminal
|
||||
array
|
||||
base
|
||||
call-stack
|
||||
clock
|
||||
deepseq
|
||||
directory
|
||||
filepath
|
||||
QuickCheck
|
||||
quickcheck-io
|
||||
random
|
||||
setenv
|
||||
stm
|
||||
time
|
||||
transformers
|
||||
];
|
||||
executableHaskellDepends = [
|
||||
ansi-terminal
|
||||
array
|
||||
base
|
||||
call-stack
|
||||
clock
|
||||
deepseq
|
||||
directory
|
||||
filepath
|
||||
QuickCheck
|
||||
quickcheck-io
|
||||
random
|
||||
setenv
|
||||
stm
|
||||
time
|
||||
transformers
|
||||
];
|
||||
description = "A version of Hspec which is used to test Hspec itself";
|
||||
license = lib.licenses.mit;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
mainProgram = "hspec-meta-discover";
|
||||
}
|
||||
) { };
|
||||
|
||||
"hspec-meta" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
@@ -495263,41 +494755,6 @@ self: {
|
||||
}
|
||||
) { };
|
||||
|
||||
"optparse-applicative_0_15_1_0" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
ansi-wl-pprint,
|
||||
base,
|
||||
bytestring,
|
||||
process,
|
||||
QuickCheck,
|
||||
transformers,
|
||||
transformers-compat,
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "optparse-applicative";
|
||||
version = "0.15.1.0";
|
||||
sha256 = "1ws6y3b3f6hsgv0ff0yp6lw4hba1rps4dnvry3yllng0s5gngcsd";
|
||||
revision = "1";
|
||||
editedCabalFile = "0zmhqkd96v2z1ilhqdkd9z4jgsnsxb8yi2479ind8m5zm9363zr9";
|
||||
libraryHaskellDepends = [
|
||||
ansi-wl-pprint
|
||||
base
|
||||
process
|
||||
transformers
|
||||
transformers-compat
|
||||
];
|
||||
testHaskellDepends = [
|
||||
base
|
||||
bytestring
|
||||
QuickCheck
|
||||
];
|
||||
description = "Utilities and combinators for parsing command line options";
|
||||
license = lib.licenses.bsd3;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}
|
||||
) { };
|
||||
|
||||
"optparse-applicative" = callPackage (
|
||||
{
|
||||
mkDerivation,
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
pkgs,
|
||||
newScope,
|
||||
stdenv,
|
||||
config,
|
||||
}:
|
||||
|
||||
let
|
||||
@@ -25,9 +26,6 @@ let
|
||||
"ghc924Binary"
|
||||
"ghc963Binary"
|
||||
"ghc984Binary"
|
||||
# ghcjs
|
||||
"ghcjs"
|
||||
"ghcjs810"
|
||||
];
|
||||
|
||||
haskellLibUncomposable = import ../development/haskell-modules/lib {
|
||||
@@ -460,13 +458,6 @@ in
|
||||
llvmPackages = pkgs.llvmPackages_18;
|
||||
};
|
||||
|
||||
ghcjs = compiler.ghcjs810;
|
||||
ghcjs810 = callPackage ../development/compilers/ghcjs/8.10 {
|
||||
bootPkgs = bb.packages.ghc810;
|
||||
ghcjsSrcJson = ../development/compilers/ghcjs/8.10/git.json;
|
||||
stage0 = ../development/compilers/ghcjs/8.10/stage0.nix;
|
||||
};
|
||||
|
||||
# The integer-simple attribute set contains all the GHC compilers
|
||||
# build with integer-simple instead of integer-gmp.
|
||||
integer-simple =
|
||||
@@ -495,6 +486,10 @@ in
|
||||
)
|
||||
);
|
||||
}
|
||||
// pkgs.lib.optionalAttrs config.allowAliases {
|
||||
ghcjs = throw "'haskell.compiler.ghcjs' has been removed. Please use 'pkgsCross.ghcjs' instead."; # Added 2025-09-06
|
||||
ghcjs810 = throw "'haskell.compiler.ghcjs810' has been removed. Please use 'pkgsCross.ghcjs' instead."; # Added 2025-09-06
|
||||
}
|
||||
);
|
||||
|
||||
# Default overrides that are applied to all package sets.
|
||||
@@ -647,14 +642,6 @@ in
|
||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.14.x.nix { };
|
||||
};
|
||||
|
||||
ghcjs = packages.ghcjs810;
|
||||
ghcjs810 = callPackage ../development/haskell-modules rec {
|
||||
buildHaskellPackages = ghc.bootPkgs;
|
||||
ghc = bh.compiler.ghcjs810;
|
||||
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.10.x.nix { };
|
||||
packageSetConfig = callPackage ../development/haskell-modules/configuration-ghcjs-8.x.nix { };
|
||||
};
|
||||
|
||||
# The integer-simple attribute set contains package sets for all the GHC compilers
|
||||
# using integer-simple instead of integer-gmp.
|
||||
integer-simple =
|
||||
@@ -687,5 +674,9 @@ in
|
||||
buildHaskellPackages = bh.packages.native-bignum.${name};
|
||||
}
|
||||
);
|
||||
}
|
||||
// pkgs.lib.optionalAttrs config.allowAliases {
|
||||
ghcjs = throw "'haskell.packages.ghcjs' has been removed. Please use 'pkgsCross.ghcjs' instead."; # Added 2025-09-06
|
||||
ghcjs810 = throw "'haskell.packages.ghcjs810' has been removed. Please use 'pkgsCross.ghcjs' instead."; # Added 2025-09-06
|
||||
};
|
||||
}
|
||||
|
||||
@@ -212,7 +212,6 @@ in
|
||||
|
||||
# Javascript
|
||||
ghcjs = mapTestOnCross systems.examples.ghcjs {
|
||||
haskell.packages.ghcjs.hello = nativePlatforms;
|
||||
haskell.packages.native-bignum.ghcHEAD.hello = nativePlatforms;
|
||||
haskellPackages.hello = nativePlatforms;
|
||||
};
|
||||
|
||||
@@ -238,24 +238,7 @@ let
|
||||
jobs = recursiveUpdateMany [
|
||||
(mapTestOn {
|
||||
haskellPackages = packagePlatforms pkgs.haskellPackages;
|
||||
haskell.compiler =
|
||||
packagePlatforms pkgs.haskell.compiler
|
||||
// (lib.genAttrs
|
||||
[
|
||||
"ghcjs"
|
||||
"ghcjs810"
|
||||
]
|
||||
(ghcjsName: {
|
||||
# We can't build ghcjs itself, since it exceeds 3GB (Hydra's output limit) due
|
||||
# to the size of its bundled libs. We can however save users a bit of compile
|
||||
# time by building the bootstrap ghcjs on Hydra. For this reason, we overwrite
|
||||
# the ghcjs attributes in haskell.compiler with a reference to the bootstrap
|
||||
# ghcjs attribute in their bootstrap package set (exposed via passthru) which
|
||||
# would otherwise be ignored by Hydra.
|
||||
bootGhcjs = (packagePlatforms pkgs.haskell.compiler.${ghcjsName}.passthru).bootGhcjs;
|
||||
})
|
||||
);
|
||||
|
||||
haskell.compiler = packagePlatforms pkgs.haskell.compiler;
|
||||
tests.haskell = packagePlatforms pkgs.tests.haskell;
|
||||
|
||||
nixosTests = {
|
||||
@@ -413,9 +396,6 @@ let
|
||||
# remove musl ghc865Binary since it is known to be broken and
|
||||
# causes an evaluation error on darwin.
|
||||
ghc865Binary = { };
|
||||
|
||||
ghcjs = { };
|
||||
ghcjs810 = { };
|
||||
};
|
||||
|
||||
# Get some cache going for MUSL-enabled GHC.
|
||||
|
||||
Reference in New Issue
Block a user