Merge pull request #138596 from NixOS/haskell-updates

haskellPackages: update stackage and hackage
This commit is contained in:
sterni 2021-09-29 23:24:50 +02:00 committed by GitHub
commit 53432e913b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
28 changed files with 1133 additions and 397 deletions

View file

@ -437,7 +437,7 @@ printBuildSummary
<> Text.pack (formatTime defaultTimeLocale "%Y-%m-%d %H:%M UTC" fetchTime)
<> "*"
]
brokenLine (name, rdeps) = "[" <> name <> "](https://search.nixos.org/packages?channel=unstable&show=haskellPackages." <> name <> "&query=haskellPackages." <> name <> ") :arrow_heading_up: " <> Text.pack (show rdeps)
brokenLine (name, rdeps) = "[" <> name <> "](https://packdeps.haskellers.com/reverse/" <> name <> ") :arrow_heading_up: " <> Text.pack (show rdeps) <> " "
numSummary = statusToNumSummary summary
jobsByState predicate = Map.filter (predicate . worstState) summary
worstState = foldl' min Success . fmap state . summaryBuilds
@ -464,8 +464,8 @@ printBuildSummary
if' (isNothing mergeableJob) "No `mergeable` job found." <>
if' (isNothing maintainedJob) "No `maintained` job found." <>
if' (Unfinished > maybe Success worstState mergeableJob) "`mergeable` jobset failed." <>
if' (outstandingJobs (Platform "x86_64-linux") > 100) "Too much outstanding jobs on x86_64-linux." <>
if' (outstandingJobs (Platform "aarch64-linux") > 100) "Too much outstanding jobs on aarch64-linux."
if' (outstandingJobs (Platform "x86_64-linux") > 100) "Too many outstanding jobs on x86_64-linux." <>
if' (outstandingJobs (Platform "aarch64-linux") > 100) "Too many outstanding jobs on aarch64-linux."
if' p e = if p then [e] else mempty
outstandingJobs platform | Table m <- numSummary = Map.findWithDefault 0 (platform, Unfinished) m
maintainedJob = Map.lookup "maintained" summary

View file

@ -75,6 +75,10 @@ fi
echo "Merging https://github.com/NixOS/nixpkgs/pull/${curr_haskell_updates_pr_num}..."
gh pr merge --repo NixOS/nixpkgs --merge "$curr_haskell_updates_pr_num"
# Update the list of Haskell package versions in NixOS on Hackage.
echo "Updating list of Haskell package versions in NixOS on Hackage..."
./maintainers/scripts/haskell/upload-nixos-package-list-to-hackage.sh
# Update stackage, Hackage hashes, and regenerate Haskell package set
echo "Updating Stackage..."
./maintainers/scripts/haskell/update-stackage.sh --do-commit
@ -84,7 +88,7 @@ echo "Regenerating Hackage packages..."
./maintainers/scripts/haskell/regenerate-hackage-packages.sh --do-commit
# Push these new commits to the haskell-updates branch
echo "Pushing commits just created to the haskell-updates branch"
echo "Pushing commits just created to the remote haskell-updates branch..."
git push
# Open new PR
@ -93,7 +97,7 @@ new_pr_body=$(cat <<EOF
This PR is the regular merge of the \`haskell-updates\` branch into \`master\`.
This branch is being continually built and tested by hydra at https://hydra.nixos.org/jobset/nixpkgs/haskell-updates.
This branch is being continually built and tested by hydra at https://hydra.nixos.org/jobset/nixpkgs/haskell-updates. You may be able to find an up-to-date Hydra build report at [cdepillabout/nix-haskell-updates-status](https://github.com/cdepillabout/nix-haskell-updates-status).
We roughly aim to merge these \`haskell-updates\` PRs at least once every two weeks. See the @NixOS/haskell [team calendar](https://cloud.maralorn.de/apps/calendar/p/Mw5WLnzsP7fC4Zky) for who is currently in charge of this branch.
@ -114,5 +118,5 @@ This is the follow-up to #${curr_haskell_updates_pr_num}. Come to [#haskell:nixo
EOF
)
echo "Opening a PR for the next haskell-updates merge cycle"
echo "Opening a PR for the next haskell-updates merge cycle..."
gh pr create --repo NixOS/nixpkgs --base master --head haskell-updates --title "haskellPackages: update stackage and hackage" --body "$new_pr_body"

View file

@ -19,3 +19,4 @@ package_list="$(nix-build -A haskell.package-list)/nixos-hackage-packages.csv"
username=$(grep "^username:" ~/.cabal/config | sed "s/^username: //")
password_command=$(grep "^password-command:" ~/.cabal/config | sed "s/^password-command: //")
curl -u "$username:$($password_command | head -n1)" --digest -H "Content-type: text/csv" -T "$package_list" http://hackage.haskell.org/distro/NixOS/packages.csv
echo

View file

@ -1,6 +1,6 @@
{
"commit": "6b93e40198f31ac2a9d52e4f3ce90f22f1e9e6f9",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/6b93e40198f31ac2a9d52e4f3ce90f22f1e9e6f9.tar.gz",
"sha256": "1zs9d0h55q6lj3v0d0n19yxl58lhn07lmnw2j5k2y8zbx3pcqi8l",
"msg": "Update from Hackage at 2021-09-17T18:08:40Z"
"commit": "e0bd041989865809059f6039125dfb93cb075f72",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/e0bd041989865809059f6039125dfb93cb075f72.tar.gz",
"sha256": "1fpm2kawxlias5xxmiara6224akgii0mnwnlyklc8szflv9cbs17",
"msg": "Update from Hackage at 2021-09-19T21:23:33Z"
}

View file

@ -40,12 +40,14 @@ let
# nixpkgs uses for the respective system.
defaultLibc = {
i686-linux = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
sha256 = "0bvwisl4w0z5z8z0da10m9sv0mhm9na2qm43qxr8zl23mn32mblx";
};
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
# The i686-linux bindist provided by GHC HQ is currently built on Debian 9,
# which link it against `libtinfo.so.5` (ncurses 5).
# Other bindists are linked `libtinfo.so.6` (ncurses 6).
@ -53,43 +55,51 @@ let
];
};
x86_64-linux = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-deb10-linux.tar.xz";
sha256 = "0chnzy9j23b2wa8clx5arwz8wnjfxyjmz9qkj548z14cqf13slcl";
};
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
];
};
armv7l-linux = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-armv7-deb10-linux.tar.xz";
sha256 = "1j41cq5d3rmlgz7hzw8f908fs79gc5mn3q5wz277lk8zdf19g75v";
};
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
];
};
aarch64-linux = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-deb10-linux.tar.xz";
sha256 = "14smwl3741ixnbgi0l51a7kh7xjkiannfqx15b72svky0y4l3wjw";
};
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
{ nixPackage = numactl; fileToCheckFor = null; }
];
};
x86_64-darwin = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
sha256 = "1hngyq14l4f950hzhh2d204ca2gfc98pc9xdasxihzqd1jq75dzd";
};
exePathForLibraryCheck = null; # we don't have a library check for darwin yet
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = null; }
{ nixPackage = libiconv; fileToCheckFor = null; }
];
@ -98,12 +108,14 @@ let
# Binary distributions for the musl libc for the respective system.
musl = {
x86_64-linux = {
variantSuffix = "-musl";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-alpine3.10-linux-integer-simple.tar.xz";
sha256 = "0xpcbyaxqyhbl6f0i3s4rp2jm67nqpkfh2qlbj3i2fiaix89ml0l";
};
exePathForLibraryCheck = "bin/ghc";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
# In contrast to glibc builds, the musl-bindist uses `libncursesw.so.*`
# instead of `libtinfo.so.*.`
{ nixPackage = ncurses6; fileToCheckFor = "libncursesw.so.6"; }
@ -121,11 +133,8 @@ let
libPath =
lib.makeLibraryPath (
[
gmp
]
# Add arch-specific libraries.
++ map ({ nixPackage, ... }: nixPackage) binDistUsed.archSpecificLibraries
map ({ nixPackage, ... }: nixPackage) binDistUsed.archSpecificLibraries
);
libEnvVar = lib.optionalString stdenv.hostPlatform.isDarwin "DY"
@ -135,11 +144,16 @@ in
stdenv.mkDerivation rec {
inherit version;
name = "ghc-${version}-binary";
pname = "ghc-binary${binDistUsed.variantSuffix}";
src = fetchurl binDistUsed.src;
# Note that for GHC 8.10 versions <= 8.10.5, the GHC HQ musl bindist
# has a `gmp` dependency:
# https://gitlab.haskell.org/ghc/ghc/-/commit/8306501020cd66f683ad9c215fa8e16c2d62357d
# Related nixpkgs issues:
# * https://github.com/NixOS/nixpkgs/pull/130441#issuecomment-922452843
nativeBuildInputs = [ perl ];
propagatedBuildInputs =
lib.optionals useLLVM [ llvmPackages.llvm ]
@ -147,6 +161,9 @@ stdenv.mkDerivation rec {
# libgmp is (see not [musl bindists have no .buildinfo]), we need
# to propagate `gmp`, otherwise programs built by this ghc will
# fail linking with `cannot find -lgmp` errors.
# Concrete cases are listed in:
# https://github.com/NixOS/nixpkgs/pull/130441#issuecomment-922459988
#
# Also, as of writing, the release pages of musl bindists claim
# that they use `integer-simple` and do not require `gmp`; however
# that is incorrect, so `gmp` is required until a release has been
@ -154,6 +171,12 @@ stdenv.mkDerivation rec {
# (Note that for packaging the `-binary` compiler, nixpkgs does not care
# about whether or not `gmp` is used; this comment is just here to explain
# why the `gmp` dependency exists despite what the release page says.)
#
# For GHC >= 8.10.6, `gmp` was switched out for `integer-simple`
# (https://gitlab.haskell.org/ghc/ghc/-/commit/8306501020cd66f683ad9c215fa8e16c2d62357d),
# fixing the above-mentioned release issue,
# and for GHC >= 9.* it is not clear as of writing whether that switch
# will be made there too.
++ lib.optionals stdenv.hostPlatform.isMusl [ gmp ]; # musl bindist needs this
# Set LD_LIBRARY_PATH or equivalent so that the programs running as part

View file

@ -41,12 +41,14 @@ let
# nixpkgs uses for the respective system.
defaultLibc = {
i686-linux = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
sha256 = "fbfc1ef194f4e7a4c0da8c11cc69b17458a4b928b609b3622c97acc4acd5c5ab";
};
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
# The i686-linux bindist provided by GHC HQ is currently built on Debian 9,
# which link it against `libtinfo.so.5` (ncurses 5).
# Other bindists are linked `libtinfo.so.6` (ncurses 6).
@ -54,54 +56,64 @@ let
];
};
x86_64-linux = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-deb10-linux.tar.xz";
sha256 = "a13719bca87a0d3ac0c7d4157a4e60887009a7f1a8dbe95c4759ec413e086d30";
};
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
];
};
armv7l-linux = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-armv7-deb10-linux.tar.xz";
sha256 = "3949c31bdf7d3b4afb765ea8246bca4ca9707c5d988d9961a244f0da100956a2";
};
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
];
};
aarch64-linux = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-deb10-linux.tar.xz";
sha256 = "fad2417f9b295233bf8ade79c0e6140896359e87be46cb61cd1d35863d9d0e55";
};
exePathForLibraryCheck = "ghc/stage2/build/tmp/ghc-stage2";
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = "libtinfo.so.6"; }
{ nixPackage = numactl; fileToCheckFor = null; }
];
};
x86_64-darwin = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
sha256 = "287db0f9c338c9f53123bfa8731b0996803ee50f6ee847fe388092e5e5132047";
};
exePathForLibraryCheck = null; # we don't have a library check for darwin yet
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = null; }
{ nixPackage = libiconv; fileToCheckFor = null; }
];
};
aarch64-darwin = {
variantSuffix = "";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-aarch64-apple-darwin.tar.xz";
sha256 = "dc469fc3c35fd2a33a5a575ffce87f13de7b98c2d349a41002e200a56d9bba1c";
};
exePathForLibraryCheck = null; # we don't have a library check for darwin yet
archSpecificLibraries = [
{ nixPackage = gmp; fileToCheckFor = null; }
{ nixPackage = ncurses6; fileToCheckFor = null; }
{ nixPackage = libiconv; fileToCheckFor = null; }
];
@ -110,12 +122,15 @@ let
# Binary distributions for the musl libc for the respective system.
musl = {
x86_64-linux = {
variantSuffix = "-musl-integer-simple";
src = {
url = "${downloadsUrl}/${version}/ghc-${version}-x86_64-alpine3.10-linux-integer-simple.tar.xz";
sha256 = "16903df850ef73d5246f2ff169cbf57ecab76c2ac5acfa9928934282cfad575c";
};
exePathForLibraryCheck = "bin/ghc";
archSpecificLibraries = [
# No `gmp` here, since this is an `integer-simple` bindist.
# In contrast to glibc builds, the musl-bindist uses `libncursesw.so.*`
# instead of `libtinfo.so.*.`
{ nixPackage = ncurses6; fileToCheckFor = "libncursesw.so.6"; }
@ -133,11 +148,8 @@ let
libPath =
lib.makeLibraryPath (
[
gmp
]
# Add arch-specific libraries.
++ map ({ nixPackage, ... }: nixPackage) binDistUsed.archSpecificLibraries
map ({ nixPackage, ... }: nixPackage) binDistUsed.archSpecificLibraries
);
libEnvVar = lib.optionalString stdenv.hostPlatform.isDarwin "DY"
@ -147,26 +159,25 @@ in
stdenv.mkDerivation rec {
inherit version;
name = "ghc-${version}-binary";
pname = "ghc-binary${binDistUsed.variantSuffix}";
src = fetchurl binDistUsed.src;
# Note that for GHC 8.10 versions >= 8.10.6, the GHC HQ musl bindist
# uses `integer-simple` and has no `gmp` dependency:
# https://gitlab.haskell.org/ghc/ghc/-/commit/8306501020cd66f683ad9c215fa8e16c2d62357d
# Related nixpkgs issues:
# * https://github.com/NixOS/nixpkgs/pull/130441#issuecomment-922452843
# TODO: When this file is copied to `ghc-9.*-binary.nix`, determine whether
# the GHC 9 branch also switched from `gmp` to `integer-simple` via the
# currently-open issue:
# https://gitlab.haskell.org/ghc/ghc/-/issues/20059
# and update this comment accordingly.
nativeBuildInputs = [ perl ];
propagatedBuildInputs =
lib.optionals useLLVM [ llvmPackages.llvm ]
# Because musl bindists currently provide no way to tell where
# libgmp is (see not [musl bindists have no .buildinfo]), we need
# to propagate `gmp`, otherwise programs built by this ghc will
# fail linking with `cannot find -lgmp` errors.
# Also, as of writing, the release pages of musl bindists claim
# that they use `integer-simple` and do not require `gmp`; however
# that is incorrect, so `gmp` is required until a release has been
# made that includes https://gitlab.haskell.org/ghc/ghc/-/issues/20059.
# (Note that for packaging the `-binary` compiler, nixpkgs does not care
# about whether or not `gmp` is used; this comment is just here to explain
# why the `gmp` dependency exists despite what the release page says.)
++ lib.optionals stdenv.hostPlatform.isMusl [ gmp ]; # musl bindist needs this
;
# Set LD_LIBRARY_PATH or equivalent so that the programs running as part
# of the bindist installer can find the libraries they expect.
@ -227,9 +238,9 @@ stdenv.mkDerivation rec {
patchShebangs ghc-${version}/configure
'' +
# We have to patch the GMP paths for the integer-gmp package.
# Note [musl bindists have no .buildinfo]
# Note that musl bindists do not contain them; unclear if that's intended;
# Note that musl bindists do not contain them,
# see: https://gitlab.haskell.org/ghc/ghc/-/issues/20073#note_363231
# However, musl bindists >= 8.10.6 use `integer-simple`, not `gmp`.
''
find . -name integer-gmp.buildinfo \
-exec sed -i "s@extra-lib-dirs: @extra-lib-dirs: ${gmp.out}/lib@" {} \;

View file

@ -141,10 +141,16 @@ let
targetPackages.stdenv.cc.bintools.bintools
];
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
variantSuffix = lib.concatStrings [
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
(lib.optionalString enableIntegerSimple "-integer-simple")
];
in
stdenv.mkDerivation (rec {
version = "8.10.7";
name = "${targetPrefix}ghc-${version}";
pname = "${targetPrefix}ghc${variantSuffix}";
src = fetchurl {
url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
@ -341,10 +347,6 @@ stdenv.mkDerivation (rec {
] ++ lib.teams.haskell.members;
timeout = 24 * 3600;
inherit (ghc.meta) license platforms;
# integer-simple builds are broken when GHC links against musl.
# See https://github.com/NixOS/nixpkgs/pull/129606#issuecomment-881323743.
broken = enableIntegerSimple && hostPlatform.isMusl;
};
} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt {

View file

@ -34,8 +34,7 @@ in
stdenv.mkDerivation rec {
version = "8.6.5";
name = "ghc-${version}-binary";
pname = "ghc-binary";
# https://downloads.haskell.org/~ghc/8.6.5/
src = fetchurl ({

View file

@ -149,10 +149,16 @@ let
targetPackages.stdenv.cc.bintools.bintools
];
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
variantSuffix = lib.concatStrings [
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
(lib.optionalString enableIntegerSimple "-integer-simple")
];
in
stdenv.mkDerivation (rec {
version = "8.8.4";
name = "${targetPrefix}ghc-${version}";
pname = "${targetPrefix}ghc${variantSuffix}";
src = fetchurl {
url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
@ -340,10 +346,11 @@ stdenv.mkDerivation (rec {
] ++ lib.teams.haskell.members;
timeout = 24 * 3600;
inherit (ghc.meta) license platforms;
# integer-simple builds are broken when GHC links against musl.
# See https://github.com/NixOS/nixpkgs/pull/129606#issuecomment-881323743.
broken = enableIntegerSimple && hostPlatform.isMusl;
# integer-simple builds are broken with musl when bootstrapping using
# GHC 8.10.2 and below, however it is not possible to reverse bootstrap
# GHC 8.8.4 with GHC 8.10.7.
# See https://github.com/NixOS/nixpkgs/pull/138523#issuecomment-927339953
broken = hostPlatform.isMusl && enableIntegerSimple;
};
dontStrip = (targetPlatform.useAndroidPrebuilt || targetPlatform.isWasm);

View file

@ -135,10 +135,16 @@ let
targetPackages.stdenv.cc.bintools.bintools
];
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
variantSuffix = lib.concatStrings [
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
(lib.optionalString enableIntegerSimple "-integer-simple")
];
in
stdenv.mkDerivation (rec {
version = "9.0.1";
name = "${targetPrefix}ghc-${version}";
pname = "${targetPrefix}ghc${variantSuffix}";
src = fetchurl {
url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
@ -303,10 +309,6 @@ stdenv.mkDerivation (rec {
] ++ lib.teams.haskell.members;
timeout = 24 * 3600;
inherit (ghc.meta) license platforms;
# integer-simple builds are broken when GHC links against musl.
# See https://github.com/NixOS/nixpkgs/pull/129606#issuecomment-881323743.
broken = enableIntegerSimple && hostPlatform.isMusl;
};
} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt {

View file

@ -2,7 +2,7 @@
# build-tools
, bootPkgs
, autoconf, automake, coreutils, fetchurl, perl, python3, m4, sphinx, xattr
, autoconf, automake, coreutils, fetchurl, fetchpatch, perl, python3, m4, sphinx, xattr
, bash
, libiconv ? null, ncurses
@ -134,16 +134,32 @@ let
targetPackages.stdenv.cc.bintools.bintools
];
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
variantSuffix = lib.concatStrings [
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
(lib.optionalString enableIntegerSimple "-integer-simple")
];
in
stdenv.mkDerivation (rec {
version = "9.2.0.20210821";
name = "${targetPrefix}ghc-${version}";
pname = "${targetPrefix}ghc${variantSuffix}";
src = fetchurl {
url = "https://downloads.haskell.org/ghc/9.2.1-rc1/ghc-${version}-src.tar.xz";
sha256 = "1q2pppxv2avhykyxvyq72r5p97rkkiqp19b77yhp85ralbcp4ivw";
};
patches = [
# picked from release branch, remove with the next release candidate,
# see https://gitlab.haskell.org/ghc/ghc/-/issues/19950#note_373726
(fetchpatch {
name = "fix-darwin-link-failure.patch";
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/77456387025ca74299ecc70621cbdb62b1b6ffc9.patch";
sha256 = "1g8smrn7hj8cbp9fhrylvmrb15s0xd8lhdgxqnx0asnd4az82gj8";
})
];
enableParallelBuilding = true;
outputs = [ "out" "doc" ];
@ -306,14 +322,6 @@ stdenv.mkDerivation (rec {
] ++ lib.teams.haskell.members;
timeout = 24 * 3600;
inherit (ghc.meta) license platforms;
# integer-simple builds are broken when GHC links against musl.
# See https://github.com/NixOS/nixpkgs/pull/129606#issuecomment-881323743.
# Linker failure on macOS:
# https://gitlab.haskell.org/ghc/ghc/-/issues/19950#note_373726
broken = (enableIntegerSimple && hostPlatform.isMusl)
|| stdenv.hostPlatform.isDarwin;
hydraPlatforms = lib.remove "x86_64-darwin" ghc.meta.platforms;
};
} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt {

View file

@ -145,11 +145,17 @@ let
targetPackages.stdenv.cc.bintools.bintools
];
# Makes debugging easier to see which variant is at play in `nix-store -q --tree`.
variantSuffix = lib.concatStrings [
(lib.optionalString stdenv.hostPlatform.isMusl "-musl")
(lib.optionalString enableNativeBignum "-native-bignum")
];
in
stdenv.mkDerivation (rec {
inherit version;
inherit (src) rev;
name = "${targetPrefix}ghc-${version}";
pname = "${targetPrefix}ghc${variantSuffix}";
src = fetchgit {
url = "https://gitlab.haskell.org/ghc/ghc.git/";

View file

@ -206,13 +206,33 @@ opening the next one. When you want to merge the currently open
script uses the `gh` command to merge the current PR and open a new one.
You should only need to do this once.
This command can be used to authenticate:
```console
$ gh auth login
```
This command can be used to confirm that you have already authenticated:
```console
$ gh auth status
```
1. Make sure you have setup your `~/.cabal/config` file for authentication
for uploading the NixOS package versions to Hackage. See the following
section for details on how to do this.
1. Make sure you have correctly marked packages broken. One of the previous
sections explains how to do this.
In short:
```console
$ ./maintainers/scripts/haskell/hydra-report.hs get-report
$ ./maintainers/scripts/haskell/hydra-report.hs mark-broken-list
$ ./maintainers/scripts/haskell/mark-broken.sh --do-commit
```
1. Merge `master` into `haskell-updates` and make sure to push to the
`haskell-updates` branch. (This can be skipped if `master` has recently
been merged into `haskell-updates`.)
@ -238,6 +258,8 @@ opening the next one. When you want to merge the currently open
1. Merges the currently open `haskell-updates` PR.
1. Updates the version of Haskell packages in NixOS on Hackage.
1. Updates Stackage and Hackage snapshots. Regenerates the Haskell package set.
1. Pushes the commits updating Stackage and Hackage and opens a new

View file

@ -8,10 +8,10 @@
}:
mkDerivation {
pname = "cabal2nix";
version = "unstable-2021-08-27";
version = "unstable-2021-09-28";
src = fetchzip {
url = "https://github.com/NixOS/cabal2nix/archive/05b1b404e20eb6252f93c821d4d7974ab7277d90.tar.gz";
sha256 = "03zvp3wwqph9niadgbvkfcqabafgyhnw12r09cw23hm69hsb64d5";
url = "https://github.com/NixOS/cabal2nix/archive/b4d893ed1a7a66b0046dd8a48f62b81de670ab02.tar.gz";
sha256 = "0xl5a0gfxrqz8pkx43zrj84xvcg15723lgvirxdcvc4zqa732zjg";
};
isLibrary = true;
isExecutable = true;

View file

@ -605,6 +605,25 @@ self: super: {
'';
});
d-bus = let
# The latest release on hackage is missing necessary patches for recent compilers
# https://github.com/Philonous/d-bus/issues/24
newer = overrideSrc super.d-bus {
version = "unstable-2021-01-08";
src = pkgs.fetchFromGitHub {
owner = "Philonous";
repo = "d-bus";
rev = "fb8a948a3b9d51db618454328dbe18fb1f313c70";
hash = "sha256-R7/+okb6t9DAkPVUV70QdYJW8vRcvBdz4zKJT13jb3A=";
};
};
# Add now required extension on recent compilers.
# https://github.com/Philonous/d-bus/pull/23
in appendPatch newer (pkgs.fetchpatch {
url = "https://github.com/Philonous/d-bus/commit/e5f37900a3a301c41d98bdaa134754894c705681.patch";
sha256 = "6rQ7H9t483sJe1x95yLPAZ0BKTaRjgqQvvrQv7HkJRE=";
});
# * The standard libraries are compiled separately.
# * We need multiple patches from master to fix compilation with
# updated dependencies (haskeline and megaparsec) which can be
@ -777,7 +796,13 @@ self: super: {
# https://github.com/haskell-hvr/cryptohash-sha256/issues/11
# Jailbreak is necessary to break out of tasty < 1.x dependency.
cryptohash-sha256 = markUnbroken (doJailbreak super.cryptohash-sha256);
# hackage2nix generates this as a broken package due to the (fake) dependency
# missing from hackage, so we need to fix the meta attribute set.
cryptohash-sha256 = overrideCabal super.cryptohash-sha256 (drv: {
jailbreak = true;
broken = false;
hydraPlatforms = pkgs.lib.platforms.all;
});
# The test suite has all kinds of out-dated dependencies, so it feels easier
# to just disable it.
@ -1148,6 +1173,15 @@ self: super: {
sha256 = "097wqn8hxsr50b9mhndg5pjim5jma2ym4ylpibakmmb5m98n17zp";
});
# Pick patch from 1.6.0 which allows compilation with doctest 0.18
polysemy = appendPatches super.polysemy [
(pkgs.fetchpatch {
name = "allow-doctest-0.18.patch";
url = "https://github.com/polysemy-research/polysemy/commit/dbcf851eb69395ce3143ecf2dd616dcad953a339.patch";
sha256 = "1qf5pghc8p1glwaadkr95x12d74vhb98mg8dqwilyxbc6gq763w2";
})
];
# polysemy-plugin 0.2.5.0 has constraint ghc-tcplugins-extra (==0.3.*)
# This upstream issue is relevant:
# https://github.com/polysemy-research/polysemy/issues/322
@ -1231,6 +1265,12 @@ self: super: {
gi-cairo-render = doJailbreak super.gi-cairo-render;
gi-cairo-connector = doJailbreak super.gi-cairo-connector;
# Remove when https://github.com/gtk2hs/svgcairo/pull/10 gets merged.
svgcairo = appendPatch super.svgcairo (pkgs.fetchpatch {
url = "https://github.com/gtk2hs/svgcairo/commit/df6c6172b52ecbd32007529d86ba9913ba001306.patch";
sha256 = "128qrns56y139vfzg1rbyqfi2xn8gxsmpnxv3zqf4v5spsnprxwh";
});
# Missing -Iinclude parameter to doc-tests (pull has been accepted, so should be resolved when 0.5.3 released)
# https://github.com/lehins/massiv/pull/104
massiv = dontCheck super.massiv;
@ -1272,7 +1312,7 @@ self: super: {
})) (drv: {
patches = [ ./patches/graphql-engine-mapkeys.patch ];
doHaddock = false;
version = "2.0.7";
version = "2.0.9";
});
hasura-ekg-core = super.hasura-ekg-core.overrideScope (self: super: {
hspec = dontCheck self.hspec_2_8_3;
@ -1939,4 +1979,12 @@ EOT
# 2021-09-18: https://github.com/haskell/haskell-language-server/issues/2205
hls-stylish-haskell-plugin = doJailbreak super.hls-stylish-haskell-plugin;
# 2021-09-29: unnecessary lower bound on generic-lens
hw-ip = assert pkgs.lib.versionOlder self.generic-lens.version "2.2.0.0";
doJailbreak super.hw-ip;
hw-eliasfano = assert pkgs.lib.versionOlder self.generic-lens.version "2.2.0.0";
doJailbreak super.hw-eliasfano;
hw-xml = assert pkgs.lib.versionOlder self.generic-lens.version "2.2.0.0";
doJailbreak super.hw-xml;
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super

View file

@ -58,7 +58,6 @@ self: super: {
dec = doJailbreak super.dec;
ed25519 = doJailbreak super.ed25519;
hackage-security = doJailbreak super.hackage-security;
hashable = overrideCabal (doJailbreak (dontCheck super.hashable)) (drv: { postPatch = "sed -i -e 's,integer-gmp .*<1.1,integer-gmp < 2,' hashable.cabal"; });
hashable-time = doJailbreak super.hashable-time;
HTTP = overrideCabal (doJailbreak super.HTTP) (drv: { postPatch = "sed -i -e 's,! Socket,!Socket,' Network/TCP.hs"; });
integer-logarithms = overrideCabal (doJailbreak super.integer-logarithms) (drv: { postPatch = "sed -i -e 's,integer-gmp <1.1,integer-gmp < 2,' integer-logarithms.cabal"; });
@ -69,6 +68,7 @@ self: super: {
resolv = doJailbreak super.resolv;
singleton-bool = doJailbreak super.singleton-bool;
split = doJailbreak super.split;
splitmix = doJailbreak super.splitmix;
tar = doJailbreak super.tar;
time-compat = doJailbreak super.time-compat;
vector = doJailbreak (dontCheck super.vector);
@ -87,7 +87,11 @@ self: super: {
sha256 = "0rgzrq0513nlc1vw7nw4km4bcwn4ivxcgi33jly4a7n3c1r32v1f";
});
# The test suite depends on ChasingBottoms, which is broken with ghc-9.0.x.
# 1.3.0 (on stackage) defines instances for the Option-type, which has been removed from base in GHC 9.2.x
# Tests fail because random hasn't been updated for GHC 9.2.x
hashable = dontCheck super.hashable_1_3_3_0;
# Tests fail because random hasn't been updated for GHC 9.2.x
unordered-containers = dontCheck super.unordered-containers;
# The test suite seems pretty broken.

View file

@ -3,6 +3,7 @@ broken-packages:
- 3d-graphics-examples
- 3dmodels
- AAI
- abacate
- abcnotation
- abeson
- abides
@ -32,6 +33,7 @@ broken-packages:
- acme-hq9plus
- acme-http
- acme-inator
- acme-io
- acme-kitchen-sink
- acme-left-pad
- acme-memorandom
@ -69,6 +71,7 @@ broken-packages:
- aern2-mp
- AERN-Basics
- aeson-applicative
- aeson-bson
- aeson-decode
- aeson-diff-generic
- aeson-filthy
@ -89,6 +92,7 @@ broken-packages:
- affection
- affine-invariant-ensemble-mcmc
- Agata
- Agda-executable
- agda-language-server
- agda-snippets
- agda-unused
@ -113,11 +117,13 @@ broken-packages:
- align-text
- ally-invest
- alphachar
- alpino-tools
- alsa
- alsa-midi
- altcomposition
- alternative-extra
- alternative-io
- altfloat
- alto
- alure
- amazon-emailer
@ -234,6 +240,7 @@ broken-packages:
- AttoBencode
- atto-lisp
- attomail
- attoparsec-csv
- attoparsec-text
- attoparsec-trans
- attosplit
@ -251,6 +258,7 @@ broken-packages:
- autonix-deps
- autopack
- avatar-generator
- aviation-cessna172-diagrams
- avl-static
- avr-shake
- awesome-prelude
@ -285,9 +293,11 @@ broken-packages:
- barchart
- barcodes-code128
- barecheck
- barley
- barrie
- barrier
- barrier-monad
- base58address
- base62
- base64-conduit
- base-compat-migrate
@ -295,6 +305,7 @@ broken-packages:
- base-feature-macros
- base-generics
- base-io-access
- basen
- basex-client
- basic
- basic-sop
@ -374,6 +385,7 @@ broken-packages:
- bind-marshal
- bindynamic
- binembed
- binsm
- bio
- BiobaseNewick
- biocore
@ -403,6 +415,7 @@ broken-packages:
- blaze-json
- blazeT
- blaze-textual-native
- ble
- bliplib
- blockchain
- blockhash
@ -431,6 +444,7 @@ broken-packages:
- bottom
- bounded-array
- bound-extras
- box
- braid
- brain-bleep
- Bravo
@ -567,6 +581,8 @@ broken-packages:
- Cascade
- cascading
- caseof
- casr-logbook
- casr-logbook-types
- Cassava
- cassava-conduit
- cassava-records
@ -581,6 +597,7 @@ broken-packages:
- cautious-gen
- cayene-lpp
- cayley-client
- cblrepo
- CCA
- CC-delcont-cxe
- CC-delcont-exc
@ -744,6 +761,7 @@ broken-packages:
- composition-tree
- comprehensions-ghc
- compressed
- compression
- compstrat
- comptrans
- computational-geometry
@ -848,6 +866,7 @@ broken-packages:
- crc16
- crdt-event-fold
- creatur
- credentials
- credential-store
- critbit
- criterion-compare
@ -889,6 +908,7 @@ broken-packages:
- CurryDB
- curryer-rpc
- curry-frontend
- curryrs
- curves
- custom-prelude
- CV
@ -906,6 +926,7 @@ broken-packages:
- darcs-monitor
- darkplaces-rcon
- darkplaces-text
- data-accessor-monadLib
- data-accessor-monads-tf
- data-aviary
- data-base
@ -968,7 +989,6 @@ broken-packages:
- dbmigrations-mysql
- dbmigrations-postgresql
- dbmigrations-sqlite
- d-bus
- DBus
- dbus-core
- dbus-qq
@ -992,6 +1012,7 @@ broken-packages:
- deepseq-magic
- deepseq-th
- deep-transformations
- definitive-base
- deka
- Delta-Lambda
- delude
@ -1047,6 +1068,7 @@ broken-packages:
- diffcabal
- differential
- DifferentialEvolution
- diff-gestalt
- diffmap
- difftodo
- digestive-bootstrap
@ -1059,7 +1081,6 @@ broken-packages:
- digits
- DimensionalHash
- dimensional-tf
- diohsc
- diophantine
- direct-binary-files
- directed-cubical
@ -1165,6 +1186,7 @@ broken-packages:
- dzen-dhall
- dzen-utils
- each
- eager-sockets
- earclipper
- early
- easy-api
@ -1185,6 +1207,7 @@ broken-packages:
- edit-lenses
- editline
- effect-handlers
- effective-aspects
- effect-monad
- effect-stack
- effin
@ -1210,6 +1233,7 @@ broken-packages:
- elision
- elm-street
- elm-websocket
- elocrypt
- emacs-module
- emailaddress
- email-header
@ -1264,6 +1288,7 @@ broken-packages:
- estimators
- EstProgress
- Etage
- etcd
- eternal
- ethereum-rlp
- euphoria
@ -1456,6 +1481,7 @@ broken-packages:
- fpco-api
- FPretty
- fptest
- fquery
- Fractaler
- fractals
- fraction
@ -1580,6 +1606,7 @@ broken-packages:
- GeocoderOpenCage
- geodetics
- geodetic-types
- GeoIp
- geojson-types
- geom2d
- GeomPredicates-SSE
@ -1599,6 +1626,7 @@ broken-packages:
- ghc-events-analyze
- ghc-events-parallel
- ghc-generic-instances
- ghc-hotswap
- ghci-diagrams
- ghci-haskeline
- ghci-history-parser
@ -1627,6 +1655,7 @@ broken-packages:
- ghc-tcplugin-api
- ghc-time-alloc-prof
- ghc-usage
- ghc-vis
- gh-labeler
- giak
- Gifcurry
@ -1687,6 +1716,7 @@ broken-packages:
- gochan
- godot-haskell
- gofer-prelude
- gogol-core
- gooey
- google-cloud
- GoogleCodeJam
@ -1729,11 +1759,14 @@ broken-packages:
- graql
- grasp
- gray-code
- graylog
- greencard
- greg-client
- gremlin-haskell
- Grempa
- grenade
- greplicate
- gridfs
- grm
- groot
- gross
@ -1749,6 +1782,7 @@ broken-packages:
- gstreamer
- GTALib
- gtfs-realtime
- gtk2hs-cast-th
- gtk2hs-hello
- gtk2hs-rpn
- gtk3-mac-integration
@ -1805,6 +1839,7 @@ broken-packages:
- hakyll-contrib
- hakyll-contrib-csv
- hakyll-contrib-elm
- hakyll-contrib-i18n
- hakyll-contrib-links
- hakyll-dhall
- hakyll-dir-list
@ -1856,6 +1891,7 @@ broken-packages:
- HaPy
- haquery
- harchive
- HARM
- haroonga
- harpy
- harvest-api
@ -1875,6 +1911,8 @@ broken-packages:
- hashtables-plus
- hasim
- hask
- haskades
- haskanoid
- haskbot-core
- haskeline-class
- haskelisp
@ -1962,6 +2000,7 @@ broken-packages:
- hastache
- haste
- haste-prim
- hat
- hatex-guide
- hats
- hatt
@ -2064,6 +2103,8 @@ broken-packages:
- hfractal
- HFrequencyQueue
- hfusion
- HGamer3D
- HGamer3D-Data
- hg-buildpackage
- hgdbmi
- HGE2D
@ -2162,6 +2203,7 @@ broken-packages:
- hmumps
- hnetcdf
- hnn
- hnop
- hoauth
- hobbes
- hocilib
@ -2169,6 +2211,7 @@ broken-packages:
- hodatime
- HODE
- hoe
- hofix-mtl
- hog
- hogg
- hois
@ -2459,6 +2502,7 @@ broken-packages:
- ihaskell-parsec
- ihaskell-widgets
- illuminate
- imagemagick
- imagepaste
- imapget
- imgur
@ -2499,6 +2543,8 @@ broken-packages:
- integreat
- intel-aes
- intensional-datatys
- interleavableGen
- interleavableIO
- interlude-l
- internetmarke
- intero
@ -2580,6 +2626,7 @@ broken-packages:
- join-api
- joinlist
- jonathanscard
- jort
- jpeg
- jsaddle-hello
- jsaddle-wkwebview
@ -2598,6 +2645,7 @@ broken-packages:
- json-pointer-hasql
- json-pointy
- json-python
- json-qq
- jsonresume
- json-rpc-client
- json-schema
@ -2638,6 +2686,7 @@ broken-packages:
- kd-tree
- keccak
- keera-hails-reactivevalues
- keiretsu
- kempe
- kerry
- Ketchup
@ -2650,6 +2699,7 @@ broken-packages:
- kmonad
- kmp-dfa
- koellner-phonetic
- Konf
- kontra-config
- kparams
- kraken
@ -2669,6 +2719,7 @@ broken-packages:
- lambda2js
- lambdaBase
- lambdabot-utils
- lambdabot-xmpp
- lambda-bridge
- lambda-canvas
- lambdacms-core
@ -2711,6 +2762,7 @@ broken-packages:
- language-vhdl
- language-webidl
- lapack-ffi
- LargeCardinalHierarchy
- Lastik
- latest-npm-version
- latex-formulae-image
@ -2728,6 +2780,7 @@ broken-packages:
- lazyset
- LazyVault
- l-bfgs-b
- lcs
- lda
- ldif
- ld-intervals
@ -2981,6 +3034,7 @@ broken-packages:
- mega-sdist
- mellon-core
- melody
- memcached
- memcached-binary
- memcache-haskell
- memis
@ -3024,6 +3078,7 @@ broken-packages:
- miku
- milena
- mime-directory
- MiniAgda
- miniforth
- minilens
- minilight
@ -3148,6 +3203,7 @@ broken-packages:
- mtp
- MuCheck
- mud
- mudbath
- muesli
- mu-graphql
- mulang
@ -3172,6 +3228,7 @@ broken-packages:
- musicScroll
- music-util
- musicxml
- mustache2hs
- mustache-haskell
- mvar-lock
- mvc
@ -3194,6 +3251,7 @@ broken-packages:
- named-servant-server
- named-sop
- namelist
- nanoAgda
- nanocurses
- nano-hmac
- nano-md5
@ -3204,6 +3262,7 @@ broken-packages:
- nanovg-simple
- nanq
- naperian
- Naperian
- naqsha
- narc
- nationstates
@ -3243,6 +3302,7 @@ broken-packages:
- network-bitcoin
- network-builder
- network-bytestring
- network-dbus
- network-dns
- networked-game
- network-house
@ -3291,6 +3351,7 @@ broken-packages:
- nlp-scores
- nm
- NMap
- nme
- nntp
- noether
- nofib-analyse
@ -3300,6 +3361,7 @@ broken-packages:
- NonEmpty
- nonempty-lift
- non-empty-zipper
- noodle
- no-role-annots
- notcpp
- not-gloss-examples
@ -3348,6 +3410,7 @@ broken-packages:
- OGL
- ogmarkup
- oi
- old-version
- om-actor
- omaketex
- ombra
@ -3381,12 +3444,17 @@ broken-packages:
- OpenCL
- OpenCLRaw
- OpenCLWrappers
- opencog-atomspace
- opencv-raw
- opendatatable
- openexchangerates
- openflow
- opengles
- OpenGLRaw21
- open-haddock
- openid-connect
- open-pandoc
- openpgp
- open-signals
- opensoundcontrol-ht
- openssh-protocol
@ -3448,6 +3516,7 @@ broken-packages:
- pacman-memcache
- pads-haskell
- pagarme
- pagerduty
- pagure-hook-receiver
- Paillier
- palette
@ -3592,6 +3661,7 @@ broken-packages:
- phasechange
- phaser
- phoityne
- phone-metadata
- phone-numbers
- phone-push
- phonetic-languages-plus
@ -3653,6 +3723,7 @@ broken-packages:
- plex
- plist
- plist-buddy
- plivo
- plot-gtk
- plot-gtk3
- plot-gtk-ui
@ -3678,14 +3749,16 @@ broken-packages:
- poly-cont
- poly-control
- polydata-core
- polynom
- polynomial
- polysemy
- polysemy-plugin
- polysemy-zoo
- polytypeable
- pomaps
- pomohoro
- ponder
- pong-server
- pontarius-xpmn
- pool
- pool-conduit
- pop3-client
@ -3702,6 +3775,7 @@ broken-packages:
- posplyu
- postcodes
- postgres-embedded
- PostgreSQL
- postgresql-lo-stream
- postgresql-named
- postgresql-resilient
@ -3728,6 +3802,7 @@ broken-packages:
- pqc
- praglude
- preamble
- precis
- precursor
- predicate-class
- predicate-typed
@ -3817,6 +3892,7 @@ broken-packages:
- pubsub
- pugixml
- pugs-DrIFT
- pugs-HsSyck
- PUH-Project
- Pup-Events-Server
- pure-io
@ -3844,6 +3920,7 @@ broken-packages:
- qnap-decrypt
- qr-imager
- qsem
- qt
- QuadEdge
- QuadTree
- quantfin
@ -3852,6 +3929,7 @@ broken-packages:
- quarantimer
- qudb
- quenya-verb
- querystring-pickle
- questioner
- QuickAnnotate
- quickbooks
@ -4002,6 +4080,7 @@ broken-packages:
- remote
- remote-debugger
- remote-monad
- reorderable
- reorder-expression
- repa-algorithms
- repa-bytestring
@ -4030,6 +4109,7 @@ broken-packages:
- resource-embed
- restartable
- restyle
- resumable-exceptions
- rethinkdb
- rethinkdb-client-driver
- rethinkdb-wereHamster
@ -4041,6 +4121,8 @@ broken-packages:
- rfc
- rfc-prelude
- rhbzquery
- riak
- riak-protobuf-lens
- ribbit
- ribosome
- RichConditional
@ -4158,12 +4240,14 @@ broken-packages:
- ScratchFs
- script-monad
- scrobble
- scrz
- scythe
- scyther-proof
- sdl2-cairo-image
- sdl2-compositor
- sdl2-fps
- sdr
- seacat
- seakale
- sec
- secdh
@ -4259,6 +4343,7 @@ broken-packages:
- setters
- set-with
- sexp
- sexpresso
- sexpr-parser
- sext
- SFML
@ -4270,6 +4355,7 @@ broken-packages:
- sh2md
- shade
- shadower
- shady-gen
- shake-bindist
- shakebook
- shake-cabal
@ -4316,7 +4402,9 @@ broken-packages:
- simple-css
- simple-download
- simple-eval
- simple-form
- simple-genetic-algorithm
- SimpleH
- simple-index
- simpleirc
- simple-logging
@ -4345,6 +4433,7 @@ broken-packages:
- singnal
- singular-factory
- sink
- Sit
- sitepipe
- sixfiguregroup
- sized-grid
@ -4417,6 +4506,7 @@ broken-packages:
- snaplet-ses-html
- snaplet-sqlite-simple
- snaplet-typed-sessions
- snap-predicates
- snappy-conduit
- snap-routes
- snap-stream
@ -4555,6 +4645,7 @@ broken-packages:
- Strafunski-ATermLib
- Strafunski-StrategyLib
- StrappedTemplates
- StrategyLib
- stratum-tool
- stratux-types
- stream
@ -4623,7 +4714,6 @@ broken-packages:
- SVD2HS
- svfactor
- svg-builder-fork
- svgcairo
- svgutils
- svm-light-utils
- svm-simple
@ -4639,6 +4729,12 @@ broken-packages:
- syb-extras
- SybWidget
- syb-with-class-instances-text
- sydtest-aeson
- sydtest-hedis
- sydtest-mongo
- sydtest-persistent-postgresql
- sydtest-rabbitmq
- sydtest-yesod
- syfco
- sym
- symantic
@ -4750,6 +4846,7 @@ broken-packages:
- testpack
- testpattern
- test-pkg
- testPkg
- testrunner
- test-sandbox
- test-shouldbe
@ -4923,7 +5020,9 @@ broken-packages:
- tropical
- tropical-geometry
- true-name
- trust-chain
- tsession
- tslib
- tsparse
- tsp-viz
- tsuntsun
@ -4946,6 +5045,7 @@ broken-packages:
- twilio
- twine
- twirp
- twisty
- twitter
- twitter-feed
- tx
@ -4983,6 +5083,7 @@ broken-packages:
- type-unary
- typograffiti
- tyro
- uAgda
- uberlast
- ucam-webauth-types
- ucd
@ -5216,6 +5317,7 @@ broken-packages:
- webshow
- websockets-rpc
- webwire
- wedged
- WEditor
- weekdaze
- weighted-regexp
@ -5246,6 +5348,7 @@ broken-packages:
- wol
- word2vec-model
- wordify
- Wordlint
- wordlist
- WordNet
- WordNet-ghc74
@ -5293,6 +5396,7 @@ broken-packages:
- xlsx-templater
- xml2json
- xml-conduit-decode
- xml-conduit-parse
- xml-conduit-selectors
- xml-conduit-stylist
- xml-html-conduit-lens
@ -5328,6 +5432,7 @@ broken-packages:
- yall
- yam-app
- yam-config
- yamlkeysdiff
- yaml-pretty-extras
- YamlReference
- yaml-rpc
@ -5410,6 +5515,7 @@ broken-packages:
- Yogurt
- yst
- yu-core
- yuiGrid
- yu-tool
- yxdb-utils
- z3-encoding
@ -5436,6 +5542,7 @@ broken-packages:
- zm
- ZMachine
- zmidi-score
- zmqat
- zoneinfo
- zoom
- zoom-refs

View file

@ -1,6 +1,6 @@
# pkgs/development/haskell-modules/configuration-hackage2nix.yaml
compiler: ghc-8.10.4
compiler: ghc-8.10.7
core-packages:
- array-0.5.4.0
@ -150,6 +150,21 @@ package-maintainers:
domenkozar:
- cachix
- cachix-api
dschrempf:
- circular
- covariance
- dirichlet
- elynx
- elynx-markov
- elynx-nexus
- elynx-seq
- elynx-tools
- elynx-tree
- glasso
- mcmc
- pava
- slynx
- tlynx
expipiplus1:
- VulkanMemoryAllocator
- autoapply
@ -224,28 +239,35 @@ package-maintainers:
- mattermost-api-qc
- Unique
maralorn:
- arbtt
- cabal-fmt
- generic-optics
- ghcup
- ghcid
- ghcide
- haskell-language-server
- hedgehog
- hlint
- hmatrix
- hspec-discover
- iCalendar
- matrix-client
- neuron
- optics
- paths
- postgresql-simple
- reflex-dom
- releaser
- replace-megaparsec
- req
- shake-bench
- shh
- shh-extras
- snap
- stm-containers
- streamly
- taskwarrior
- tz
- weeder
- witch
ncfavier:
- lambdabot
@ -395,8 +417,10 @@ unsupported-platforms:
HQu: [ aarch64-linux, armv7l-linux ] # unsupported by vendored C++ library, TODO: explicitly list supported platforms
HSoM: [ x86_64-darwin, aarch64-darwin ]
iwlib: [ x86_64-darwin, aarch64-darwin ]
Jazzkell: [ x86_64-darwin, aarch64-darwin ] # depends on Euterpea
jsaddle-webkit2gtk: [ x86_64-darwin, aarch64-darwin ]
kqueue: [ x86_64-linux, aarch64-linux, i686-linux, armv7l-linux ] # BSD / Darwin only API
Kulitta: [ x86_64-darwin, aarch64-darwin ] # depends on Euterpea
LambdaHack: [ x86_64-darwin, aarch64-darwin ]
large-hashable: [ aarch64-linux ] # https://github.com/factisresearch/large-hashable/issues/17
libmodbus: [ x86_64-darwin, aarch64-darwin ]

View file

@ -136,6 +136,7 @@ dont-distribute-packages:
- GrammarProducts
- GraphHammer
- GraphHammer-examples
- Grow
- GrowlNotify
- Gtk2hsGenerics
- GtkGLTV
@ -147,8 +148,22 @@ dont-distribute-packages:
- HAppS-Server
- HAppS-State
- HGamer3D-API
- HGamer3D-Audio
- HGamer3D-Bullet-Binding
- HGamer3D-CAudio-Binding
- HGamer3D-CEGUI-Binding
- HGamer3D-Common
- HGamer3D-Enet-Binding
- HGamer3D-GUI
- HGamer3D-Graphics3D
- HGamer3D-InputSystem
- HGamer3D-Network
- HGamer3D-OIS-Binding
- HGamer3D-Ogre-Binding
- HGamer3D-SDL2-Binding
- HGamer3D-SFML-Binding
- HGamer3D-WinEvent
- HGamer3D-Wire
- HJScript
- HLearn-algebra
- HLearn-approximation
@ -156,6 +171,7 @@ dont-distribute-packages:
- HLearn-datastructures
- HLearn-distributions
- HNM
- HPhone
- HPlot
- HPong
- HROOT
@ -445,7 +461,6 @@ dont-distribute-packages:
- apotiki
- approx-rand-test
- arbor-monad-metric-datadog
- arch-hs
- archlinux-web
- arduino-copilot
- arff
@ -474,6 +489,7 @@ dont-distribute-packages:
- atuin
- audiovisual
- aura
- aura_3_2_6
- authoring
- autonix-deps-kf5
- avers
@ -582,7 +598,6 @@ dont-distribute-packages:
- blatex
- blaze-builder-enumerator
- blaze-colonnade
- ble
- blink1
- blip
- blogination
@ -602,6 +617,8 @@ dont-distribute-packages:
- boots-web
- borel
- bowntz
- box-csv
- box-socket
- breakout
- bricks
- bricks-internal-test
@ -659,6 +676,13 @@ dont-distribute-packages:
- casadi-bindings-ipopt-interface
- casadi-bindings-snopt-interface
- cash
- casr-logbook-html
- casr-logbook-meta
- casr-logbook-meta-html
- casr-logbook-reports
- casr-logbook-reports-html
- casr-logbook-reports-meta
- casr-logbook-reports-meta-html
- cassandra-cql
- cassandra-thrift
- cassy
@ -698,6 +722,7 @@ dont-distribute-packages:
- chromatin
- chronos_1_1_3
- chu2
- chuchu
- chunks
- ciphersaber2
- citation-resolve
@ -824,6 +849,7 @@ dont-distribute-packages:
- craftwerk-cairo
- craftwerk-gtk
- craze
- credentials-cli
- crf-chain1
- crf-chain1-constrained
- crf-chain2-generic
@ -897,7 +923,11 @@ dont-distribute-packages:
- deeplearning-hs
- deepzoom
- defargs
- definitive-filesystem
- definitive-graphics
- definitive-parser
- definitive-reactive
- definitive-sound
- deka-tests
- delaunay
- delicious
@ -917,7 +947,6 @@ dont-distribute-packages:
- dewdrop
- dfinity-radix-tree
- dhall-docs
- di-polysemy
- dia-functions
- diagrams-haddock
- diagrams-html5
@ -1194,7 +1223,6 @@ dont-distribute-packages:
- ghc-instances
- ghc-mod
- ghc-tags-plugin
- ghc-vis
- ghci-pretty
- ghcjs-hplay
- ght
@ -1235,6 +1263,188 @@ dont-distribute-packages:
- goal-probability
- goal-simulation
- goat
- gogol
- gogol-abusiveexperiencereport
- gogol-acceleratedmobilepageurl
- gogol-accessapproval
- gogol-accesscontextmanager
- gogol-adexchange-buyer
- gogol-adexchange-seller
- gogol-adexchangebuyer2
- gogol-adexperiencereport
- gogol-admin-datatransfer
- gogol-admin-directory
- gogol-admin-emailmigration
- gogol-admin-reports
- gogol-adsense
- gogol-adsense-host
- gogol-affiliates
- gogol-alertcenter
- gogol-analytics
- gogol-analyticsreporting
- gogol-android-enterprise
- gogol-android-publisher
- gogol-androiddeviceprovisioning
- gogol-androidmanagement
- gogol-appengine
- gogol-apps-activity
- gogol-apps-calendar
- gogol-apps-licensing
- gogol-apps-reseller
- gogol-apps-tasks
- gogol-appstate
- gogol-autoscaler
- gogol-bigquery
- gogol-bigquerydatatransfer
- gogol-bigtableadmin
- gogol-billing
- gogol-binaryauthorization
- gogol-blogger
- gogol-books
- gogol-chat
- gogol-civicinfo
- gogol-classroom
- gogol-cloudasset
- gogol-clouderrorreporting
- gogol-cloudfunctions
- gogol-cloudidentity
- gogol-cloudiot
- gogol-cloudkms
- gogol-cloudmonitoring
- gogol-cloudprivatecatalog
- gogol-cloudprivatecatalogproducer
- gogol-cloudprofiler
- gogol-cloudscheduler
- gogol-cloudsearch
- gogol-cloudshell
- gogol-cloudtasks
- gogol-cloudtrace
- gogol-commentanalyzer
- gogol-composer
- gogol-compute
- gogol-consumersurveys
- gogol-container
- gogol-containeranalysis
- gogol-containerbuilder
- gogol-customsearch
- gogol-dataflow
- gogol-datafusion
- gogol-dataproc
- gogol-datastore
- gogol-debugger
- gogol-deploymentmanager
- gogol-dfareporting
- gogol-dialogflow
- gogol-digitalassetlinks
- gogol-discovery
- gogol-dlp
- gogol-dns
- gogol-docs
- gogol-doubleclick-bids
- gogol-doubleclick-search
- gogol-drive
- gogol-driveactivity
- gogol-factchecktools
- gogol-file
- gogol-firebase-dynamiclinks
- gogol-firebase-rules
- gogol-firebasehosting
- gogol-firebaseremoteconfig
- gogol-firestore
- gogol-fitness
- gogol-fonts
- gogol-freebasesearch
- gogol-fusiontables
- gogol-games
- gogol-games-configuration
- gogol-games-management
- gogol-genomics
- gogol-gmail
- gogol-groups-migration
- gogol-groups-settings
- gogol-healthcare
- gogol-iam
- gogol-iamcredentials
- gogol-iap
- gogol-identity-toolkit
- gogol-indexing
- gogol-jobs
- gogol-kgsearch
- gogol-language
- gogol-latencytest
- gogol-libraryagent
- gogol-logging
- gogol-manufacturers
- gogol-maps-coordinate
- gogol-maps-engine
- gogol-mirror
- gogol-ml
- gogol-monitoring
- gogol-oauth2
- gogol-oslogin
- gogol-pagespeed
- gogol-partners
- gogol-people
- gogol-photoslibrary
- gogol-play-moviespartner
- gogol-playcustomapp
- gogol-plus
- gogol-plus-domains
- gogol-poly
- gogol-prediction
- gogol-proximitybeacon
- gogol-pubsub
- gogol-qpxexpress
- gogol-redis
- gogol-remotebuildexecution
- gogol-replicapool
- gogol-replicapool-updater
- gogol-resourcemanager
- gogol-resourceviews
- gogol-run
- gogol-runtimeconfig
- gogol-safebrowsing
- gogol-script
- gogol-searchconsole
- gogol-securitycenter
- gogol-servicebroker
- gogol-serviceconsumermanagement
- gogol-servicecontrol
- gogol-servicemanagement
- gogol-servicenetworking
- gogol-serviceusage
- gogol-serviceuser
- gogol-sheets
- gogol-shopping-content
- gogol-siteverification
- gogol-slides
- gogol-sourcerepo
- gogol-spanner
- gogol-spectrum
- gogol-speech
- gogol-sqladmin
- gogol-storage
- gogol-storage-transfer
- gogol-streetviewpublish
- gogol-surveys
- gogol-tagmanager
- gogol-taskqueue
- gogol-testing
- gogol-texttospeech
- gogol-toolresults
- gogol-tpu
- gogol-tracing
- gogol-translate
- gogol-urlshortener
- gogol-useraccounts
- gogol-vault
- gogol-videointelligence
- gogol-vision
- gogol-webmaster-tools
- gogol-websecurityscanner
- gogol-youtube
- gogol-youtube-analytics
- gogol-youtube-reporting
- google-drive
- google-mail-filters
- google-maps-geocoding
@ -1288,6 +1498,7 @@ dont-distribute-packages:
- gtk-serialized-event
- gtk2hs-cast-glade
- gtk2hs-cast-gnomevfs
- gtk2hs-cast-gtk
- gtk2hs-cast-gtkglext
- gtk2hs-cast-gtksourceview2
- gtkimageview
@ -1691,6 +1902,7 @@ dont-distribute-packages:
- hylotab
- hyloutils
- hyperpublic
- iException
- ice40-prim
- ide-backend
- ide-backend-common
@ -1789,6 +2001,7 @@ dont-distribute-packages:
- jobs-ui
- join
- jot
- jsc
- jsmw
- json-ast-json-encoder
- json-autotype
@ -1867,6 +2080,7 @@ dont-distribute-packages:
- lambdaFeed
- lambdaLit
- lambdabot-zulip
- lambdacat
- lambdacms-media
- lambdacube
- lambdacube-bullet
@ -2027,7 +2241,9 @@ dont-distribute-packages:
- majordomo
- majority
- manatee
- manatee-all
- manatee-anything
- manatee-browser
- manatee-core
- manatee-curl
- manatee-editor
@ -2037,6 +2253,7 @@ dont-distribute-packages:
- manatee-mplayer
- manatee-pdfviewer
- manatee-processmanager
- manatee-reader
- manatee-template
- manatee-terminal
- manatee-welcome
@ -2239,6 +2456,7 @@ dont-distribute-packages:
- online-csv
- open-adt-tutorial
- open-union
- openpgp-Crypto
- openpgp-crypto-api
- openssh-github-keys
- opentracing-jaeger
@ -2342,36 +2560,12 @@ dont-distribute-packages:
- polh-lexicon
- polydata
- polysemy-RandomFu
- polysemy-chronos
- polysemy-conc
- polysemy-extra
- polysemy-fs
- polysemy-fskvstore
- polysemy-http
- polysemy-keyed-state
- polysemy-kvstore
- polysemy-kvstore-jsonfile
- polysemy-log
- polysemy-log-co
- polysemy-log-di
- polysemy-methodology
- polysemy-methodology-co-log
- polysemy-methodology-composite
- polysemy-mocks
- polysemy-optics
- polysemy-path
- polysemy-plugin
- polysemy-plugin_0_4_0_0
- polysemy-readline
- polysemy-req
- polysemy-resume
- polysemy-several
- polysemy-socket
- polysemy-test
- polysemy-time
- polysemy-uncontrolled
- polysemy-video
- polysemy-vinyl
- polysemy-webserver
- polyseq
- polytypeable-utils
@ -2607,6 +2801,7 @@ dont-distribute-packages:
- rio-process-pool
- riot
- ripple
- ripple-federation
- risc-v
- rivet
- rlwe-challenges
@ -2738,6 +2933,7 @@ dont-distribute-packages:
- sgf
- sgrep
- sha1
- shady-graphics
- shake-ats
- shake-minify-css
- shaker
@ -2840,6 +3036,7 @@ dont-distribute-packages:
- sphero
- sphinx-cli
- spice
- spike
- spline3
- splines
- sprinkles
@ -2913,6 +3110,7 @@ dont-distribute-packages:
- swapper
- sweet-egison
- switch
- sydtest-amqp
- sylvia
- sym-plot
- symantic-atom
@ -2971,6 +3169,7 @@ dont-distribute-packages:
- test-sandbox-quickcheck
- test-simple
- testbench
- text-json-qq
- text-plus
- text-trie
- text-xml-generic
@ -3178,6 +3377,7 @@ dont-distribute-packages:
- wavy
- web-mongrel2
- web-page
- web-rep
- web-routes-regular
- web-routing
- web3

View file

@ -140,10 +140,6 @@ self: super: builtins.intersectAttrs super {
# Add necessary reference to gtk3 package
gi-dbusmenugtk3 = addPkgconfigDepend super.gi-dbusmenugtk3 pkgs.gtk3;
# Need WebkitGTK, not just webkit.
webkit = super.webkit.override { webkit = pkgs.webkitgtk24x-gtk2; };
websnap = super.websnap.override { webkit = pkgs.webkitgtk24x-gtk3; };
hs-mesos = overrideCabal super.hs-mesos (drv: {
# Pass _only_ mesos; the correct protobuf is propagated.
extraLibraries = [ pkgs.mesos ];
@ -212,7 +208,19 @@ self: super: builtins.intersectAttrs super {
mime-mail = appendConfigureFlag super.mime-mail "--ghc-option=-DMIME_MAIL_SENDMAIL_PATH=\"sendmail\"";
# Help the test suite find system timezone data.
tz = overrideCabal super.tz (drv: { preConfigure = "export TZDIR=${pkgs.tzdata}/share/zoneinfo"; });
tz = overrideCabal super.tz (drv: {
preConfigure = "export TZDIR=${pkgs.tzdata}/share/zoneinfo";
patches = [
# Fix tests failing with libSystem, musl etc. due to a lack of
# support for glibc's non-POSIX TZDIR environment variable.
# https://github.com/nilcons/haskell-tz/pull/29
(pkgs.fetchpatch {
name = "support-non-glibc-tzset.patch";
url = "https://github.com/sternenseemann/haskell-tz/commit/64928f1a50a1a276a718491ae3eeef63abcdb393.patch";
sha256 = "1f53w8k1vpy39hzalyykpvm946ykkarj2714w988jdp4c2c4l4cf";
})
] ++ (drv.patches or []);
});
# Nix-specific workaround
xmonad = appendPatch (dontCheck super.xmonad) ./patches/xmonad-nix.patch;
@ -824,6 +832,12 @@ self: super: builtins.intersectAttrs super {
export HOME=$TMPDIR/home
'';
});
hls-rename-plugin = overrideCabal super.hls-rename-plugin (drv: {
testToolDepends = [ pkgs.git ];
preCheck = ''
export HOME=$TMPDIR/home
'' + (drv.preCheck or "");
});
hls-splice-plugin = overrideCabal super.hls-splice-plugin (drv: {
testToolDepends = [ pkgs.git ];
preCheck = ''

File diff suppressed because it is too large Load diff

View file

@ -3,35 +3,37 @@
{ mkDerivation, aeson, aeson-casing, ansi-wl-pprint, asn1-encoding
, asn1-types, async, attoparsec, attoparsec-iso8601, auto-update
, base, base16-bytestring, base64-bytestring, binary, byteorder
, bytestring, case-insensitive, ci-info, containers, cron
, cryptonite, data-has, deepseq, dependent-map, dependent-sum
, directory, ekg-core, ekg-json, exceptions, fast-logger, fetchgit
, file-embed, filepath, ghc-heap-view, graphql-parser, hashable
, hashable-time, hspec, hspec-core, hspec-expectations
, hspec-expectations-lifted, http-api-data, http-client
, http-client-tls, http-conduit, http-types, immortal
, insert-ordered-containers, jose, kan-extensions, lens, lens-aeson
, lib, lifted-async, lifted-base, list-t, memory, mime-types
, mmorph, monad-control, monad-loops, monad-validate, mtl, mustache
, mysql, mysql-simple, natural-transformation, network, network-uri
, odbc, optparse-applicative, pem, pg-client, postgresql-binary
, bytestring, case-insensitive, ci-info, connection, containers
, cron, cryptonite, data-default-class, data-has, deepseq
, dependent-map, dependent-sum, directory, ekg-core, ekg-json
, exceptions, fast-logger, fetchgit, file-embed, filepath
, ghc-heap-view, graphql-parser, hashable, hashable-time, hspec
, hspec-core, hspec-expectations, hspec-expectations-lifted
, http-api-data, http-client, http-client-tls, http-conduit
, http-types, immortal, insert-ordered-containers, jose
, kan-extensions, lens, lens-aeson, lib, lifted-async, lifted-base
, list-t, memory, mime-types, mmorph, monad-control, monad-loops
, monad-validate, mtl, mustache, mysql, mysql-simple
, natural-transformation, network, network-uri, odbc
, optparse-applicative, pem, pg-client, postgresql-binary
, postgresql-libpq, pretty-simple, process, profunctors, psqueues
, QuickCheck, quickcheck-instances, random, regex-tdfa
, resource-pool, retry, safe, safe-exceptions, scientific
, semialign, semigroups, semver, shakespeare, some, split
, Spock-core, stm, stm-containers, tagged, template-haskell, text
, text-builder, text-conversions, these, time, transformers
, text-builder, text-conversions, these, time, tls, transformers
, transformers-base, unix, unordered-containers, uri-encode
, utf8-string, uuid, validation, vector, vector-instances, wai
, warp, websockets, wreq, x509, x509-store, yaml, zlib
, warp, websockets, wreq, x509, x509-store, x509-system
, x509-validation, yaml, zlib
}:
mkDerivation {
pname = "graphql-engine";
version = "1.0.0";
src = fetchgit {
url = "https://github.com/hasura/graphql-engine.git";
sha256 = "04s8rczvm0l5dbh14g2vav2wbqb4fg51471fncqf36s59img14b7";
rev = "cf6f3edc1f6df7843dfb91be6dcb0fd7cc94d133";
sha256 = "0ky23f700pmzb6anx44xzh6dixixmn7kq1ypj0yy4kqiqzqdb2dg";
rev = "7c35ffb36561214390d0d545d418746f29a29ba4";
fetchSubmodules = true;
};
postUnpack = "sourceRoot+=/server; echo source root reset to $sourceRoot";
@ -41,23 +43,24 @@ mkDerivation {
aeson aeson-casing ansi-wl-pprint asn1-encoding asn1-types async
attoparsec attoparsec-iso8601 auto-update base base16-bytestring
base64-bytestring binary byteorder bytestring case-insensitive
ci-info containers cron cryptonite data-has deepseq dependent-map
dependent-sum directory ekg-core ekg-json exceptions fast-logger
file-embed filepath ghc-heap-view graphql-parser hashable
hashable-time http-api-data http-client http-client-tls
http-conduit http-types immortal insert-ordered-containers jose
kan-extensions lens lens-aeson lifted-async lifted-base list-t
memory mime-types mmorph monad-control monad-loops monad-validate
mtl mustache mysql mysql-simple network network-uri odbc
optparse-applicative pem pg-client postgresql-binary
postgresql-libpq pretty-simple process profunctors psqueues
QuickCheck quickcheck-instances random regex-tdfa resource-pool
retry safe-exceptions scientific semialign semigroups semver
shakespeare some split Spock-core stm stm-containers tagged
template-haskell text text-builder text-conversions these time
transformers transformers-base unix unordered-containers uri-encode
utf8-string uuid validation vector vector-instances wai warp
websockets wreq x509 x509-store yaml zlib
ci-info connection containers cron cryptonite data-default-class
data-has deepseq dependent-map dependent-sum directory ekg-core
ekg-json exceptions fast-logger file-embed filepath ghc-heap-view
graphql-parser hashable hashable-time http-api-data http-client
http-client-tls http-conduit http-types immortal
insert-ordered-containers jose kan-extensions lens lens-aeson
lifted-async lifted-base list-t memory mime-types mmorph
monad-control monad-loops monad-validate mtl mustache mysql
mysql-simple network network-uri odbc optparse-applicative pem
pg-client postgresql-binary postgresql-libpq pretty-simple process
profunctors psqueues QuickCheck quickcheck-instances random
regex-tdfa resource-pool retry safe-exceptions scientific semialign
semigroups semver shakespeare some split Spock-core stm
stm-containers tagged template-haskell text text-builder
text-conversions these time tls transformers transformers-base unix
unordered-containers uri-encode utf8-string uuid validation vector
vector-instances wai warp websockets wreq x509 x509-store
x509-system x509-validation yaml zlib
];
executableHaskellDepends = [
base bytestring ekg-core kan-extensions pg-client text

View file

@ -10,8 +10,8 @@ mkDerivation {
version = "0.2.0.0";
src = fetchgit {
url = "https://github.com/hasura/graphql-parser-hs.git";
sha256 = "015b1h475k8wmhm9hkrvyxr985x7d8yc0xgcdqj7vmziixvfwwwj";
rev = "79beb0e85e00422a8a15318c0bc573765fc7b246";
sha256 = "0zqrh7y0cjjrscsw2hmyhdcm4nzvb5pw394pcxk8q19xx13jp9xd";
rev = "43562a5b7b41d380e3e31732b48637702e5aa97d";
fetchSubmodules = true;
};
libraryHaskellDepends = [

View file

@ -13,8 +13,8 @@ mkDerivation {
version = "0.1.0";
src = fetchgit {
url = "https://github.com/hasura/pg-client-hs.git";
sha256 = "1y79s3ai4h82szpm1j5n5ygybqr7cza9l0raxf39vgn66jhy1jd2";
rev = "92975d0f8f933c8d06913dc97af259253bf7fb5f";
sha256 = "00h9hskv3p4mg35php5wsr2d2rjahcv29rqidb2lxl11r05psr4m";
rev = "5e8a2d7ebe8b96518e5a70f4d61be2550eaa4e70";
fetchSubmodules = true;
};
setupHaskellDepends = [ base Cabal ];

View file

@ -8,8 +8,8 @@ mkDerivation {
version = "0.2.3.2";
src = fetchgit {
url = "https://github.com/hasura/pool.git";
sha256 = "00q1fxh72fgjwl1pi3lnp4xg8f3kfm6q12gs9scinwbymfgzarms";
rev = "bc4c3f739a8fb8ec4444336a34662895831c9acf";
sha256 = "02wa32fl5wq5fk59id54xmxiqjl564r4rhsc79xsgf2j2spj0v94";
rev = "dc56753338e7b61220a09bed0469c6dcc5e9fb52";
fetchSubmodules = true;
};
libraryHaskellDepends = [

View file

@ -9,7 +9,7 @@ buildGoModule rec {
subPackages = [ "cmd/hasura" ];
vendorSha256 = "1pkc9bh5s2vqnpkmnm91zaihh98b3drhiv4lcpi98rhln8r52b1k";
vendorSha256 = "0c0zn3a3bq3g13zj1b7hz1gfd9mcc5wlch80vjgp31vgm23vvd8d";
doCheck = false;

View file

@ -71,12 +71,10 @@ in {
};
ghc884 = callPackage ../development/compilers/ghc/8.8.4.nix {
# the oldest ghc with aarch64-darwin support is 8.10.5
bootPkgs = if stdenv.isDarwin && stdenv.isAarch64 then
packages.ghc8107BinaryMinimal
bootPkgs =
# aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
# Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them
else if stdenv.isAarch64 || stdenv.targetPlatform.isMusl then
if stdenv.isAarch64 || stdenv.hostPlatform.isMusl then
packages.ghc8102BinaryMinimal
else
packages.ghc865Binary;
@ -85,15 +83,14 @@ in {
llvmPackages = pkgs.llvmPackages_7;
};
ghc8107 = callPackage ../development/compilers/ghc/8.10.7.nix {
# the oldest ghc with aarch64-darwin support is 8.10.5
bootPkgs = if stdenv.isDarwin && stdenv.isAarch64 then
packages.ghc8107BinaryMinimal
bootPkgs =
# aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
# the oldest ghc with aarch64-darwin support is 8.10.5
# Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them
else if stdenv.isAarch64 || stdenv.isAarch32 || stdenv.targetPlatform.isMusl then
packages.ghc8102BinaryMinimal
if stdenv.isAarch64 || stdenv.isAarch32 then
packages.ghc8107BinaryMinimal
else
packages.ghc865Binary;
packages.ghc8107Binary;
inherit (buildPackages.python3Packages) sphinx;
# Need to use apple's patched xattr until
# https://github.com/xattr/xattr/issues/44 and
@ -103,24 +100,24 @@ in {
llvmPackages = pkgs.llvmPackages_9;
};
ghc901 = callPackage ../development/compilers/ghc/9.0.1.nix {
bootPkgs =
# aarch64 ghc8107Binary exceeds max output size on hydra
# the oldest ghc with aarch64-darwin support is 8.10.5
bootPkgs = if stdenv.isDarwin && stdenv.isAarch64 then
if stdenv.isAarch64 || stdenv.isAarch32 then
packages.ghc8107BinaryMinimal
# aarch64 ghc8102Binary exceeds max output size on hydra
else if stdenv.isAarch64 || stdenv.isAarch32 then
packages.ghc8102BinaryMinimal
else
packages.ghc8102Binary;
packages.ghc8107Binary;
inherit (buildPackages.python3Packages) sphinx;
buildLlvmPackages = buildPackages.llvmPackages_10;
llvmPackages = pkgs.llvmPackages_10;
};
ghc921 = callPackage ../development/compilers/ghc/9.2.1.nix {
# aarch64 ghc8102Binary exceeds max output size on hydra
bootPkgs = if stdenv.isAarch64 || stdenv.isAarch32 then
packages.ghc8102BinaryMinimal
bootPkgs =
# aarch64 ghc8107Binary exceeds max output size on hydra
if stdenv.isAarch64 || stdenv.isAarch32 then
packages.ghc8107BinaryMinimal
else
packages.ghc8102Binary;
packages.ghc8107Binary;
inherit (buildPackages.python3Packages) sphinx;
# Need to use apple's patched xattr until
# https://github.com/xattr/xattr/issues/44 and

View file

@ -243,18 +243,19 @@ let
elmPackages.elm = pkgsPlatforms.elmPackages.elm;
# GHCs linked to musl.
pkgsMusl.haskell.compiler = packagePlatforms pkgs.pkgsMusl.haskell.compiler // {
pkgsMusl.haskell.compiler = lib.recursiveUpdate
(packagePlatforms pkgs.pkgsMusl.haskell.compiler)
{
# remove musl ghc865Binary since it is known to be broken and
# causes an evaluation error on darwin.
# TODO: remove ghc865Binary altogether and use ghc8102Binary
ghc865Binary = {};
# remove integer-simple because it appears to be broken with
# musl and non-static-linking.
integer-simple = {};
ghcjs = {};
ghcjs810 = {};
# Can't be built with musl, see meta.broken comment in the drv
integer-simple.ghc884 = {};
};
# Get some cache going for MUSL-enabled GHC.
@ -380,9 +381,16 @@ let
};
constituents = accumulateDerivations [
jobs.pkgsMusl.haskell.compiler.ghc8102Binary
jobs.pkgsMusl.haskell.compiler.ghc8107Binary
jobs.pkgsMusl.haskell.compiler.ghc884
jobs.pkgsMusl.haskell.compiler.ghc8107
jobs.pkgsMusl.haskell.compiler.ghc901
jobs.pkgsMusl.haskell.compiler.ghc921
jobs.pkgsMusl.haskell.compiler.ghcHEAD
jobs.pkgsMusl.haskell.compiler.integer-simple.ghc8107
jobs.pkgsMusl.haskell.compiler.integer-simple.ghc901
jobs.pkgsMusl.haskell.compiler.integer-simple.ghc921
jobs.pkgsMusl.haskell.compiler.native-bignum.ghcHEAD
];
};