Merge pull request #266650 from NixOS/haskell-updates

haskellPackages: update stackage and hackage
This commit is contained in:
Ellie Hermaszewska 2023-11-20 14:55:43 +08:00 committed by GitHub
commit 3fb937a1e9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
33 changed files with 3130 additions and 1782 deletions

View File

@ -0,0 +1,38 @@
{
callPackage,
lib,
haskell,
haskellPackages,
}:
let
hsPkg = haskellPackages.changelog-d;
addCompletions = haskellPackages.generateOptparseApplicativeCompletions ["changelog-d"];
haskellModifications =
lib.flip lib.pipe [
addCompletions
haskell.lib.justStaticExecutables
];
mkDerivationOverrides = finalAttrs: oldAttrs: {
version = oldAttrs.version + "-git-${lib.strings.substring 0 7 oldAttrs.src.rev}";
# nix-shell ./maintainers/scripts/update.nix --argstr package changelog-d
passthru.updateScript = lib.getExe (callPackage ./updateScript.nix { });
# nix-build -A changelog-d.tests
passthru.tests = {
basic = callPackage ./tests/basic.nix { changelog-d = finalAttrs.finalPackage; };
};
meta = oldAttrs.meta // {
homepage = "https://codeberg.org/fgaz/changelog-d";
maintainers = [ lib.maintainers.roberth ];
};
};
in
(haskellModifications hsPkg).overrideAttrs mkDerivationOverrides

View File

@ -0,0 +1,25 @@
{ runCommand, changelog-d }:
runCommand "changelog-d-basic-test" {
nativeBuildInputs = [ changelog-d ];
} ''
mkdir changelogs
cat > changelogs/config <<EOF
organization: NixOS
repository: boondoggle
EOF
cat > changelogs/a <<EOF
synopsis: Support numbers with incrementing base-10 digits
issues: #1234
description: {
This didn't work before.
}
EOF
changelog-d changelogs >$out
cat -n $out
echo Checking the generated output
set -x
grep -F 'Support numbers with incrementing base-10 digits' $out >/dev/null
grep -F 'https://github.com/NixOS/boondoggle/issues/1234' $out >/dev/null
set +x
''

View File

@ -0,0 +1,12 @@
{ writeShellApplication, cabal2nix }:
writeShellApplication {
name = "update-changelog-d";
runtimeInputs = [
cabal2nix
];
text = ''
cd pkgs/development/misc/haskell/changelog-d
cabal2nix https://codeberg.org/fgaz/changelog-d >default.nix
'';
}

View File

@ -1,6 +1,6 @@
{
"commit": "49d09494dd24eae895fe1260e2c26157f740e451",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/49d09494dd24eae895fe1260e2c26157f740e451.tar.gz",
"sha256": "1f0m4wni61v6679ya0mb9mw3vxhak9yvjxjm6wfs7wryayb4i5ba",
"msg": "Update from Hackage at 2023-10-21T19:49:07Z"
"commit": "f4111a737432472002a38495b14b930255705d6a",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/f4111a737432472002a38495b14b930255705d6a.tar.gz",
"sha256": "0q1nhk821fdwxmidsd9mnd77ml4c05f7rnmd80g4s876s65ldi5q",
"msg": "Update from Hackage at 2023-11-10T11:27:19Z"
}

View File

@ -194,6 +194,7 @@ stdenv.mkDerivation (rec {
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
# fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482
(fetchpatch {

View File

@ -194,6 +194,7 @@ stdenv.mkDerivation (rec {
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
# fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482
(fetchpatch {

View File

@ -194,6 +194,7 @@ stdenv.mkDerivation (rec {
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
# fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482
(fetchpatch {

View File

@ -194,6 +194,7 @@ stdenv.mkDerivation (rec {
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
# fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482
(fetchpatch {

View File

@ -194,6 +194,7 @@ stdenv.mkDerivation (rec {
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
# fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482
(fetchpatch {

View File

@ -194,6 +194,7 @@ stdenv.mkDerivation (rec {
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
# fix hyperlinked haddock sources: https://github.com/haskell/haddock/pull/1482
(fetchpatch {

View File

@ -205,6 +205,7 @@ stdenv.mkDerivation (rec {
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
# Prevent the paths module from emitting symbols that we don't use

View File

@ -205,6 +205,7 @@ stdenv.mkDerivation (rec {
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
# Prevent the paths module from emitting symbols that we don't use

View File

@ -205,6 +205,7 @@ stdenv.mkDerivation (rec {
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
# Prevent the paths module from emitting symbols that we don't use

View File

@ -205,6 +205,8 @@ stdenv.mkDerivation (rec {
url = "https://gitlab.haskell.org/ghc/ghc/-/commit/10e94a556b4f90769b7fd718b9790d58ae566600.patch";
sha256 = "0kmhfamr16w8gch0lgln2912r8aryjky1hfcda3jkcwa5cdzgjdv";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
# Prevent the paths module from emitting symbols that we don't use

View File

@ -197,6 +197,8 @@ stdenv.mkDerivation (rec {
extraPrefix = "libraries/Cabal/";
sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
# Work around a type not being defined when including Rts.h in bytestring's cbits

View File

@ -197,6 +197,8 @@ stdenv.mkDerivation (rec {
extraPrefix = "libraries/Cabal/";
sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
# Prevent the paths module from emitting symbols that we don't use

View File

@ -0,0 +1,391 @@
# DO NOT port this expression to hadrian. It is not possible to build a GHC
# cross compiler with 9.4.* and hadrian.
{ lib, stdenv, pkgsBuildTarget, pkgsHostTarget, targetPackages
# build-tools
, bootPkgs
, autoconf, automake, coreutils, fetchpatch, fetchurl, perl, python3, m4, sphinx
, xattr, autoSignDarwinBinariesHook
, bash
, libiconv ? null, ncurses
, glibcLocales ? null
, # GHC can be built with system libffi or a bundled one.
libffi ? null
, useLLVM ? !(stdenv.targetPlatform.isx86
|| stdenv.targetPlatform.isPower
|| stdenv.targetPlatform.isSparc
|| stdenv.targetPlatform.isAarch64)
, # LLVM is conceptually a run-time-only dependency, but for
# non-x86, we need LLVM to bootstrap later stages, so it becomes a
# build-time dependency too.
buildTargetLlvmPackages, llvmPackages
, # If enabled, GHC will be built with the GPL-free but slightly slower native
# bignum backend instead of the faster but GPLed gmp backend.
enableNativeBignum ? !(lib.meta.availableOn stdenv.hostPlatform gmp
&& lib.meta.availableOn stdenv.targetPlatform gmp)
, gmp
, # If enabled, use -fPIC when compiling static libs.
enableRelocatedStaticLibs ? stdenv.targetPlatform != stdenv.hostPlatform
, enableProfiledLibs ? true
, # Whether to build dynamic libs for the standard library (on the target
# platform). Static libs are always built.
enableShared ? with stdenv.targetPlatform; !isWindows && !useiOSPrebuilt && !isStatic
, # Whether to build terminfo.
enableTerminfo ? !stdenv.targetPlatform.isWindows
, # What flavour to build. An empty string indicates no
# specific flavour and falls back to ghc default values.
ghcFlavour ? lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
(if useLLVM then "perf-cross" else "perf-cross-ncg")
, # Whether to build sphinx documentation.
enableDocs ? (
# Docs disabled for musl and cross because it's a large task to keep
# all `sphinx` dependencies building in those environments.
# `sphinx` pulls in among others:
# Ruby, Python, Perl, Rust, OpenGL, Xorg, gtk, LLVM.
(stdenv.targetPlatform == stdenv.hostPlatform)
&& !stdenv.hostPlatform.isMusl
)
, enableHaddockProgram ?
# Disabled for cross; see note [HADDOCK_DOCS].
(stdenv.targetPlatform == stdenv.hostPlatform)
, # Whether to disable the large address space allocator
# necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
disableLargeAddressSpace ? stdenv.targetPlatform.isiOS
}:
assert !enableNativeBignum -> gmp != null;
# Cross cannot currently build the `haddock` program for silly reasons,
# see note [HADDOCK_DOCS].
assert (stdenv.targetPlatform != stdenv.hostPlatform) -> !enableHaddockProgram;
let
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
inherit (bootPkgs) ghc;
# TODO(@Ericson2314) Make unconditional
targetPrefix = lib.optionalString
(targetPlatform != hostPlatform)
"${targetPlatform.config}-";
buildMK = ''
BuildFlavour = ${ghcFlavour}
ifneq \"\$(BuildFlavour)\" \"\"
include mk/flavours/\$(BuildFlavour).mk
endif
BUILD_SPHINX_HTML = ${if enableDocs then "YES" else "NO"}
BUILD_SPHINX_PDF = NO
'' +
# Note [HADDOCK_DOCS]:
# Unfortunately currently `HADDOCK_DOCS` controls both whether the `haddock`
# program is built (which we generally always want to have a complete GHC install)
# and whether it is run on the GHC sources to generate hyperlinked source code
# (which is impossible for cross-compilation); see:
# https://gitlab.haskell.org/ghc/ghc/-/issues/20077
# This implies that currently a cross-compiled GHC will never have a `haddock`
# program, so it can never generate haddocks for any packages.
# If this is solved in the future, we'd like to unconditionally
# build the haddock program (removing the `enableHaddockProgram` option).
''
HADDOCK_DOCS = ${if enableHaddockProgram then "YES" else "NO"}
# Build haddocks for boot packages with hyperlinking
EXTRA_HADDOCK_OPTS += --hyperlinked-source --quickjump
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
BIGNUM_BACKEND = ${if enableNativeBignum then "native" else "gmp"}
'' + lib.optionalString (targetPlatform != hostPlatform) ''
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
'' + lib.optionalString (!enableProfiledLibs) ''
GhcLibWays = "v dyn"
'' +
# -fexternal-dynamic-refs apparently (because it's not clear from the documentation)
# makes the GHC RTS able to load static libraries, which may be needed for TemplateHaskell.
# This solution was described in https://www.tweag.io/blog/2020-09-30-bazel-static-haskell
lib.optionalString enableRelocatedStaticLibs ''
GhcLibHcOpts += -fPIC -fexternal-dynamic-refs
GhcRtsHcOpts += -fPIC -fexternal-dynamic-refs
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
EXTRA_CC_OPTS += -std=gnu99
'';
# Splicer will pull out correct variations
libDeps = platform: lib.optional enableTerminfo ncurses
++ [libffi]
++ lib.optional (!enableNativeBignum) gmp
++ lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
# TODO(@sternenseemann): is buildTarget LLVM unnecessary?
# GHC doesn't seem to have {LLC,OPT}_HOST
toolsForTarget = [
pkgsBuildTarget.targetPackages.stdenv.cc
] ++ lib.optional useLLVM buildTargetLlvmPackages.llvm;
targetCC = builtins.head toolsForTarget;
# Sometimes we have to dispatch between the bintools wrapper and the unwrapped
# derivation for certain tools depending on the platform.
bintoolsFor = {
# GHC needs install_name_tool on all darwin platforms. On aarch64-darwin it is
# part of the bintools wrapper (due to codesigning requirements), but not on
# x86_64-darwin.
install_name_tool =
if stdenv.targetPlatform.isAarch64
then targetCC.bintools
else targetCC.bintools.bintools;
# Same goes for strip.
strip =
# TODO(@sternenseemann): also use wrapper if linker == "bfd" or "gold"
if stdenv.targetPlatform.isAarch64 && stdenv.targetPlatform.isDarwin
then targetCC.bintools
else targetCC.bintools.bintools;
};
# Use gold either following the default, or to avoid the BFD linker due to some bugs / perf issues.
# But we cannot avoid BFD when using musl libc due to https://sourceware.org/bugzilla/show_bug.cgi?id=23856
# see #84670 and #49071 for more background.
useLdGold = targetPlatform.linker == "gold" ||
(targetPlatform.linker == "bfd" && (targetCC.bintools.bintools.hasGold or false) && !targetPlatform.isMusl);
# 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
# C compiler, bintools and LLVM are used at build time, but will also leak into
# the resulting GHC's settings file and used at runtime. This means that we are
# currently only able to build GHC if hostPlatform == buildPlatform.
assert targetCC == pkgsHostTarget.targetPackages.stdenv.cc;
assert buildTargetLlvmPackages.llvm == llvmPackages.llvm;
assert stdenv.targetPlatform.isDarwin -> buildTargetLlvmPackages.clang == llvmPackages.clang;
stdenv.mkDerivation (rec {
version = "9.4.8";
pname = "${targetPrefix}ghc${variantSuffix}";
src = fetchurl {
url = "https://downloads.haskell.org/ghc/${version}/ghc-${version}-src.tar.xz";
sha256 = "0bf407eb67fe3e3c24b0f4c8dea8cb63e07f63ca0f76cf2058565143507ab85e";
};
enableParallelBuilding = true;
outputs = [ "out" "doc" ];
patches = [
# Don't generate code that doesn't compile when --enable-relocatable is passed to Setup.hs
# Can be removed if the Cabal library included with ghc backports the linked fix
(fetchpatch {
url = "https://github.com/haskell/cabal/commit/6c796218c92f93c95e94d5ec2d077f6956f68e98.patch";
stripLen = 1;
extraPrefix = "libraries/Cabal/";
sha256 = "sha256-yRQ6YmMiwBwiYseC5BsrEtDgFbWvst+maGgDtdD0vAY=";
})
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
./docs-sphinx-7.patch
] ++ lib.optionals (stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64) [
# Prevent the paths module from emitting symbols that we don't use
# when building with separate outputs.
#
# These cause problems as they're not eliminated by GHC's dead code
# elimination on aarch64-darwin. (see
# https://github.com/NixOS/nixpkgs/issues/140774 for details).
./Cabal-3.6-3.8-paths-fix-cycle-aarch64-darwin.patch
];
postPatch = "patchShebangs .";
# GHC needs the locale configured during the Haddock phase.
LANG = "en_US.UTF-8";
# GHC is a bit confused on its cross terminology.
# TODO(@sternenseemann): investigate coreutils dependencies and pass absolute paths
preConfigure = ''
for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
export "''${env#TARGET_}=''${!env}"
done
# GHC is a bit confused on its cross terminology, as these would normally be
# the *host* tools.
export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
export CXX="${targetCC}/bin/${targetCC.targetPrefix}c++"
# Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${lib.optionalString useLdGold ".gold"}"
export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
export STRIP="${bintoolsFor.strip}/bin/${bintoolsFor.strip.targetPrefix}strip"
'' + lib.optionalString (stdenv.targetPlatform.linker == "cctools") ''
export OTOOL="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}otool"
export INSTALL_NAME_TOOL="${bintoolsFor.install_name_tool}/bin/${bintoolsFor.install_name_tool.targetPrefix}install_name_tool"
'' + lib.optionalString useLLVM ''
export LLC="${lib.getBin buildTargetLlvmPackages.llvm}/bin/llc"
export OPT="${lib.getBin buildTargetLlvmPackages.llvm}/bin/opt"
'' + lib.optionalString (useLLVM && stdenv.targetPlatform.isDarwin) ''
# LLVM backend on Darwin needs clang: https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/codegens.html#llvm-code-generator-fllvm
export CLANG="${buildTargetLlvmPackages.clang}/bin/${buildTargetLlvmPackages.clang.targetPrefix}clang"
'' + ''
echo -n "${buildMK}" > mk/build.mk
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
'' + lib.optionalString (stdenv.isLinux && hostPlatform.libc == "glibc") ''
export LOCALE_ARCHIVE="${glibcLocales}/lib/locale/locale-archive"
'' + lib.optionalString (!stdenv.isDarwin) ''
export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
'' + lib.optionalString stdenv.isDarwin ''
export NIX_LDFLAGS+=" -no_dtrace_dof"
# GHC tries the host xattr /usr/bin/xattr by default which fails since it expects python to be 2.7
export XATTR=${lib.getBin xattr}/bin/xattr
'' + lib.optionalString targetPlatform.useAndroidPrebuilt ''
sed -i -e '5i ,("armv7a-unknown-linux-androideabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "cortex-a8", ""))' llvm-targets
'' + lib.optionalString targetPlatform.isMusl ''
echo "patching llvm-targets for musl targets..."
echo "Cloning these existing '*-linux-gnu*' targets:"
grep linux-gnu llvm-targets | sed 's/^/ /'
echo "(go go gadget sed)"
sed -i 's,\(^.*linux-\)gnu\(.*\)$,\0\n\1musl\2,' llvm-targets
echo "llvm-targets now contains these '*-linux-musl*' targets:"
grep linux-musl llvm-targets | sed 's/^/ /'
echo "And now patching to preserve '-musleabi' as done with '-gnueabi'"
# (aclocal.m4 is actual source, but patch configure as well since we don't re-gen)
for x in configure aclocal.m4; do
substituteInPlace $x \
--replace '*-android*|*-gnueabi*)' \
'*-android*|*-gnueabi*|*-musleabi*)'
done
''
# HACK: allow bootstrapping with GHC 8.10 which works fine, as we don't have
# binary 9.0 packaged. Bootstrapping with 9.2 is broken without hadrian.
+ ''
substituteInPlace configure --replace \
'MinBootGhcVersion="9.0"' \
'MinBootGhcVersion="8.10"'
'';
# TODO(@Ericson2314): Always pass "--target" and always prefix.
configurePlatforms = [ "build" "host" ]
++ lib.optional (targetPlatform != hostPlatform) "target";
# `--with` flags for libraries needed for RTS linker
configureFlags = [
"--datadir=$doc/share/doc/ghc"
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
] ++ lib.optionals (libffi != null) [
"--with-system-libffi"
"--with-ffi-includes=${targetPackages.libffi.dev}/include"
"--with-ffi-libraries=${targetPackages.libffi.out}/lib"
] ++ lib.optionals (targetPlatform == hostPlatform && !enableNativeBignum) [
"--with-gmp-includes=${targetPackages.gmp.dev}/include"
"--with-gmp-libraries=${targetPackages.gmp.out}/lib"
] ++ lib.optionals (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
"--with-iconv-includes=${libiconv}/include"
"--with-iconv-libraries=${libiconv}/lib"
] ++ lib.optionals (targetPlatform != hostPlatform) [
"--enable-bootstrap-with-devel-snapshot"
] ++ lib.optionals useLdGold [
"CFLAGS=-fuse-ld=gold"
"CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
"CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
] ++ lib.optionals (disableLargeAddressSpace) [
"--disable-large-address-space"
];
# Make sure we never relax`$PATH` and hooks support for compatibility.
strictDeps = true;
# Dont add -liconv to LDFLAGS automatically so that GHC will add it itself.
dontAddExtraLibs = true;
nativeBuildInputs = [
perl autoconf automake m4 python3
ghc bootPkgs.alex bootPkgs.happy bootPkgs.hscolour
] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
autoSignDarwinBinariesHook
] ++ lib.optionals enableDocs [
sphinx
];
# For building runtime libs
depsBuildTarget = toolsForTarget;
buildInputs = [ perl bash ] ++ (libDeps hostPlatform);
depsTargetTarget = map lib.getDev (libDeps targetPlatform);
depsTargetTargetPropagated = map (lib.getOutput "out") (libDeps targetPlatform);
# required, because otherwise all symbols from HSffi.o are stripped, and
# that in turn causes GHCi to abort
stripDebugFlags = [ "-S" ] ++ lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
checkTarget = "test";
hardeningDisable =
[ "format" ]
# In nixpkgs, musl based builds currently enable `pie` hardening by default
# (see `defaultHardeningFlags` in `make-derivation.nix`).
# But GHC cannot currently produce outputs that are ready for `-pie` linking.
# Thus, disable `pie` hardening, otherwise `recompile with -fPIE` errors appear.
# See:
# * https://github.com/NixOS/nixpkgs/issues/129247
# * https://gitlab.haskell.org/ghc/ghc/-/issues/19580
++ lib.optional stdenv.targetPlatform.isMusl "pie";
# big-parallel allows us to build with more than 2 cores on
# Hydra which already warrants a significant speedup
requiredSystemFeatures = [ "big-parallel" ];
postInstall = ''
# Install the bash completion file.
install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
'';
passthru = {
inherit bootPkgs targetPrefix;
inherit llvmPackages;
inherit enableShared;
# This is used by the haskell builder to query
# the presence of the haddock program.
hasHaddock = enableHaddockProgram;
# Our Cabal compiler name
haskellCompilerName = "ghc-${version}";
};
meta = {
homepage = "http://haskell.org/ghc";
description = "The Glasgow Haskell Compiler";
maintainers = with lib.maintainers; [
guibou
] ++ lib.teams.haskell.members;
timeout = 24 * 3600;
inherit (ghc.meta) license platforms;
};
} // lib.optionalAttrs targetPlatform.useAndroidPrebuilt {
dontStrip = true;
dontPatchELF = true;
noAuditTmpdir = true;
})

View File

@ -267,6 +267,7 @@ stdenv.mkDerivation ({
enableParallelBuilding = true;
patches = [
# Fix docs build with Sphinx >= 7 https://gitlab.haskell.org/ghc/ghc/-/issues/24129
(if lib.versionAtLeast version "9.8"
then ./docs-sphinx-7-ghc98.patch
else ./docs-sphinx-7.patch )

View File

@ -20,7 +20,7 @@ with haskellLib;
self: super: {
# Make sure that Cabal 3.10.* can be built as-is
Cabal_3_10_2_0 = doDistribute (super.Cabal_3_10_2_0.override ({
Cabal_3_10_2_1 = doDistribute (super.Cabal_3_10_2_1.override ({
Cabal-syntax = self.Cabal-syntax_3_10_2_0;
} // lib.optionalAttrs (lib.versionOlder self.ghc.version "9.2.5") {
# Use process core package when possible
@ -35,11 +35,11 @@ self: super: {
cabalInstallOverlay = cself: csuper:
{
# Needs to be upgraded compared to Stackage LTS 21
cabal-install-solver = cself.cabal-install-solver_3_10_1_0;
cabal-install-solver = cself.cabal-install-solver_3_10_2_1;
# Needs to be downgraded compared to Stackage LTS 21
resolv = cself.resolv_0_1_2_0;
} // lib.optionalAttrs (lib.versionOlder self.ghc.version "9.6") {
Cabal = cself.Cabal_3_10_2_0;
Cabal = cself.Cabal_3_10_2_1;
Cabal-syntax = cself.Cabal-syntax_3_10_2_0;
} // lib.optionalAttrs (lib.versionOlder self.ghc.version "9.4") {
# We need at least directory >= 1.3.7.0. Using the latest version
@ -57,15 +57,15 @@ self: super: {
# not solvable short of recompiling GHC. Instead of adding
# allowInconsistentDependencies for all reverse dependencies of hspec-core,
# just upgrade to an hspec version without the offending dependency.
hspec-core = cself.hspec-core_2_11_6;
hspec-discover = cself.hspec-discover_2_11_6;
hspec = cself.hspec_2_11_6;
hspec-core = cself.hspec-core_2_11_7;
hspec-discover = cself.hspec-discover_2_11_7;
hspec = cself.hspec_2_11_7;
# hspec-discover and hspec-core depend on hspec-meta for testing which
# we need to avoid since it depends on ghc as well. Since hspec*_2_11*
# are overridden to take the versioned attributes as inputs, we need
# to make sure to override the versioned attribute with this fix.
hspec-discover_2_11_6 = dontCheck csuper.hspec-discover_2_11_6;
hspec-discover_2_11_7 = dontCheck csuper.hspec-discover_2_11_7;
# Prevent dependency on doctest which causes an inconsistent dependency
# due to depending on ghc which depends on directory etc.
@ -194,7 +194,7 @@ self: super: {
# 2023-08-09: Jailbreak because of vector < 0.13
# 2023-11-09: don't check because of https://github.com/tweag/monad-bayes/pull/326
monad-bayes = dontCheck (doJailbreak (super.monad-bayes.override {
hspec = self.hspec_2_11_6;
hspec = self.hspec_2_11_7;
}));
# Disable tests failing on odd floating point numbers generated by QuickCheck 2.14.3
@ -295,7 +295,7 @@ self: super: {
# Overriding the version pandoc dependency uses as the latest release has version bounds
# defined as >= 3.1 && < 3.2, can be removed once pandoc gets bumped by Stackage.
patat = super.patat.override { pandoc = self.pandoc_3_1_8; };
patat = super.patat.override { pandoc = self.pandoc_3_1_9; };
# http2 also overridden in all-packages.nix for mailctl.
# twain is currently only used by mailctl, so the .overrideScope shouldn't
@ -498,7 +498,7 @@ self: super: {
structures = dontCheck super.structures;
# Requires alex >= 3.4
jacinda = super.jacinda.override { alex = self.alex_3_4_0_0; };
jacinda = super.jacinda.override { alex = self.alex_3_4_0_1; };
# Disable test suites to fix the build.
acme-year = dontCheck super.acme-year; # http://hydra.cryp.to/build/497858/log/raw
@ -1046,13 +1046,19 @@ self: super: {
# test suite requires git and does a bunch of git operations
restless-git = dontCheck super.restless-git;
# requires git at test-time *and* runtime, but we'll just rely on users to
# bring their own git at runtime. Additionally, sensei passes `-package
# hspec-meta` to GHC in the tests, but doesn't depend on it itself.
sensei = overrideCabal (drv: {
# patch out a flaky test that depends on output from hspec >= v2.11.7.
# https://github.com/hspec/sensei/issues/125
sensei = appendPatch (fetchpatch {
url = "https://github.com/hspec/sensei/commit/5c11026fa48e13ea1c351ab882765eb0966f2e97.patch";
hash = "sha256-eUCDvypj2bxTRnHLzrcembLMKHg5c3W3quNfclBDsso=";
}) (overrideCabal (drv: {
# sensei passes `-package hspec-meta` to GHC in the tests, but doesn't
# depend on it itself.
testHaskellDepends = drv.testHaskellDepends or [] ++ [ self.hspec-meta ];
# requires git at test-time *and* runtime, but we'll just rely on users to
# bring their own git at runtime.
testToolDepends = drv.testToolDepends or [] ++ [ pkgs.git ];
}) super.sensei;
}) super.sensei);
# Depends on broken fluid.
fluid-idl-http-client = markBroken super.fluid-idl-http-client;
@ -1176,7 +1182,7 @@ self: super: {
# stack-2.13.1 requires a bunch of the latest packages.
(drv: drv.overrideScope (hfinal: hprev: {
ansi-terminal = hprev.ansi-terminal_1_0; # needs ansi-terminal >= 1.0
crypton = hprev.crypton_0_33; # needs crypton >= 0.33
crypton = hprev.crypton_0_34; # needs crypton >= 0.33
hedgehog = doJailbreak hprev.hedgehog; # has too strict version bound for ansi-terminal
hpack = hprev.hpack_0_36_0; # needs hpack == 0.36.0
http-client-tls = hprev.http-client-tls_0_3_6_3; # needs http-client-tls >= 0.3.6.2
@ -1671,19 +1677,19 @@ self: super: {
servant-openapi3 = dontCheck super.servant-openapi3;
# Give latest hspec correct dependency versions without overrideScope
hspec_2_11_6 = doDistribute (super.hspec_2_11_6.override {
hspec-discover = self.hspec-discover_2_11_6;
hspec-core = self.hspec-core_2_11_6;
hspec_2_11_7 = doDistribute (super.hspec_2_11_7.override {
hspec-discover = self.hspec-discover_2_11_7;
hspec-core = self.hspec-core_2_11_7;
});
hspec-meta_2_11_6 = doDistribute (super.hspec-meta_2_11_6.override {
hspec-meta_2_11_7 = doDistribute (super.hspec-meta_2_11_7.override {
hspec-expectations = self.hspec-expectations_0_8_4;
});
hspec-discover_2_11_6 = doDistribute (super.hspec-discover_2_11_6.override {
hspec-meta = self.hspec-meta_2_11_6;
hspec-discover_2_11_7 = doDistribute (super.hspec-discover_2_11_7.override {
hspec-meta = self.hspec-meta_2_11_7;
});
# Need to disable tests to prevent an infinite recursion if hspec-core_2_11_6
# Need to disable tests to prevent an infinite recursion if hspec-core_2_11_7
# is overlayed to hspec-core.
hspec-core_2_11_6 = doDistribute (dontCheck (super.hspec-core_2_11_6.override {
hspec-core_2_11_7 = doDistribute (dontCheck (super.hspec-core_2_11_7.override {
hspec-expectations = self.hspec-expectations_0_8_4;
}));
@ -1841,7 +1847,7 @@ self: super: {
inherit (let
pandoc-cli-overlay = self: super: {
# pandoc-cli requires pandoc >= 3.1
pandoc = self.pandoc_3_1_8;
pandoc = self.pandoc_3_1_9;
# pandoc depends on http-client-tls, which only starts depending
# on crypton-connection in http-client-tls-0.3.6.2.
@ -1853,11 +1859,11 @@ self: super: {
};
in {
pandoc-cli = super.pandoc-cli.overrideScope pandoc-cli-overlay;
pandoc_3_1_8 = doDistribute (super.pandoc_3_1_8.overrideScope pandoc-cli-overlay);
pandoc_3_1_9 = doDistribute (super.pandoc_3_1_9.overrideScope pandoc-cli-overlay);
pandoc-lua-engine = super.pandoc-lua-engine.overrideScope pandoc-cli-overlay;
})
pandoc-cli
pandoc_3_1_8
pandoc_3_1_9
pandoc-lua-engine
;
@ -2685,4 +2691,26 @@ self: super: {
sdl2-gfx = overrideCabal { __propagatePkgConfigDepends = false; } super.sdl2-gfx;
sdl2-ttf = overrideCabal { __onlyPropagateKnownPkgConfigModules = true; } super.sdl2-ttf;
# Needs git for compile-time insertion of commit hash into --version string.
kmonad = overrideCabal (drv: {
libraryToolDepends = (drv.libraryToolDepends or []) ++ [pkgs.buildPackages.git];
}) super.kmonad;
# Both of these need specific versions of ghc-lib-parser, the minor releases
# seem to be tied.
ghc-syntax-highlighter_0_0_10_0 = super.ghc-syntax-highlighter_0_0_10_0.overrideScope(self: super: {
ghc-lib-parser = self.ghc-lib-parser_9_6_3_20231014;
});
ghc-syntax-highlighter_0_0_11_0 = super.ghc-syntax-highlighter_0_0_11_0.overrideScope(self: super: {
ghc-lib-parser = self.ghc-lib-parser_9_8_1_20231009;
});
# Needs a matching version of ipython-kernel and a
# ghc-syntax-highlighter compatible with a newer ghc-lib-parser it
# transitively pulls in
ihaskell = super.ihaskell.overrideScope (self: super: {
ipython-kernel = self.ipython-kernel_0_11_0_0;
ghc-syntax-highlighter = self.ghc-syntax-highlighter_0_0_10_0;
});
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super

View File

@ -125,6 +125,9 @@ self: super: {
algebraic-graphs = dontCheck self.algebraic-graphs_0_6_1;
});
# Overly-strict bounds introducted by a revision in version 0.3.2.
text-metrics = doJailbreak super.text-metrics;
# OneTuple needs hashable (instead of ghc-prim) and foldable1-classes-compat for GHC < 9
OneTuple = addBuildDepends [
self.foldable1-classes-compat

View File

@ -148,6 +148,9 @@ self: super: {
# has a restrictive lower bound on Cabal
fourmolu = doJailbreak super.fourmolu;
# Overly-strict bounds introducted by a revision in version 0.3.2.
text-metrics = doJailbreak super.text-metrics;
# OneTuple needs hashable (instead of ghc-prim) and foldable1-classes-compat for GHC < 9
OneTuple = addBuildDepends [
self.foldable1-classes-compat

View File

@ -171,4 +171,6 @@ self: super: {
# Requires GHC < 9.4
ghc-source-gen = doDistribute (unmarkBroken super.ghc-source-gen);
hspec-megaparsec = super.hspec-megaparsec_2_2_0;
}

View File

@ -67,14 +67,14 @@ self: super: {
doctest = doDistribute super.doctest_0_22_2;
http-api-data = doDistribute self.http-api-data_0_6; # allows base >= 4.18
some = doDistribute self.some_1_0_5;
some = doDistribute self.some_1_0_6;
th-abstraction = doDistribute self.th-abstraction_0_6_0_0;
th-desugar = doDistribute self.th-desugar_1_15;
th-desugar = doDistribute self.th-desugar_1_16;
semigroupoids = doDistribute self.semigroupoids_6_0_0_1;
bifunctors = doDistribute self.bifunctors_5_6_1;
base-compat = doDistribute self.base-compat_0_13_1;
base-compat-batteries = doDistribute self.base-compat-batteries_0_13_1;
fgl = doDistribute self.fgl_5_8_1_1;
fgl = doDistribute self.fgl_5_8_2_0;
# Because we bumped the version of th-abstraction above.^
aeson = doJailbreak super.aeson;

View File

@ -363,6 +363,7 @@ broken-packages:
- bech32 # failure in job https://hydra.nixos.org/build/233194823 at 2023-09-02
- bed-and-breakfast # failure in job https://hydra.nixos.org/build/233221152 at 2023-09-02
- Befunge93 # failure in job https://hydra.nixos.org/build/233226751 at 2023-09-02
- benc # failure in job https://hydra.nixos.org/build/241434046 at 2023-11-19
- bench-graph # failure in job https://hydra.nixos.org/build/233239830 at 2023-09-02
- BenchmarkHistory # failure in job https://hydra.nixos.org/build/233213179 at 2023-09-02
- bench-show # failure in job https://hydra.nixos.org/build/233245858 at 2023-09-02
@ -955,6 +956,7 @@ broken-packages:
- courier # failure in job https://hydra.nixos.org/build/233215760 at 2023-09-02
- court # failure in job https://hydra.nixos.org/build/233192047 at 2023-09-02
- coverage # failure in job https://hydra.nixos.org/build/233199365 at 2023-09-02
- cozo-hs # failure in job https://hydra.nixos.org/build/241432654 at 2023-11-19
- cparsing # failure in job https://hydra.nixos.org/build/233192377 at 2023-09-02
- cpio-conduit # failure in job https://hydra.nixos.org/build/233220518 at 2023-09-02
- cplusplus-th # failure in job https://hydra.nixos.org/build/233204461 at 2023-09-02
@ -1355,6 +1357,7 @@ broken-packages:
- ec2-unikernel # failure in updateAutotoolsGnuConfigScriptsPhase in job https://hydra.nixos.org/build/237245061 at 2023-10-21
- eccrypto-ed25519-bindings # failure in job https://hydra.nixos.org/build/233217399 at 2023-09-02
- ecma262 # failure in job https://hydra.nixos.org/build/233260026 at 2023-09-02
- ecta # failure in job https://hydra.nixos.org/build/241421274 at 2023-11-19
- ecta-plugin # failure in job https://hydra.nixos.org/build/233224764 at 2023-09-02
- ecu # failure in job https://hydra.nixos.org/build/233230797 at 2023-09-02
- eddie # failure in job https://hydra.nixos.org/build/233254499 at 2023-09-02
@ -1676,6 +1679,8 @@ broken-packages:
- fractals # failure in job https://hydra.nixos.org/build/233205969 at 2023-09-02
- fraction # failure in job https://hydra.nixos.org/build/233204186 at 2023-09-02
- frag # failure in job https://hydra.nixos.org/build/234458411 at 2023-09-13
- Frames-beam # failure in job https://hydra.nixos.org/build/241429730 at 2023-11-19
- Frames-streamly # failure in job https://hydra.nixos.org/build/241420906 at 2023-11-19
- franchise # failure in job https://hydra.nixos.org/build/233256790 at 2023-09-02
- fraxl # failure in job https://hydra.nixos.org/build/233219345 at 2023-09-02
- freddy # failure in job https://hydra.nixos.org/build/233208999 at 2023-09-02
@ -1934,6 +1939,7 @@ broken-packages:
- googlepolyline # failure in job https://hydra.nixos.org/build/233209674 at 2023-09-02
- google-search # failure in job https://hydra.nixos.org/build/233214524 at 2023-09-02
- google-server-api # failure in job https://hydra.nixos.org/build/233218521 at 2023-09-02
- google-static-maps # failure in job https://hydra.nixos.org/build/241418035 at 2023-11-19
- google-translate # failure in job https://hydra.nixos.org/build/233234076 at 2023-09-02
- gopherbot # failure in job https://hydra.nixos.org/build/233207680 at 2023-09-02
- gopro-plus # failure in job https://hydra.nixos.org/build/233225073 at 2023-09-02
@ -2178,6 +2184,7 @@ broken-packages:
- haskell-rules # failure in job https://hydra.nixos.org/build/233225854 at 2023-09-02
- haskellscrabble # failure in job https://hydra.nixos.org/build/233251248 at 2023-09-02
- haskellscript # failure in job https://hydra.nixos.org/build/233193435 at 2023-09-02
- haskell-snake # failure in job https://hydra.nixos.org/build/241433525 at 2023-11-19
- haskell-spacegoo # failure in job https://hydra.nixos.org/build/233206108 at 2023-09-02
- haskell-src-exts-prisms # failure in job https://hydra.nixos.org/build/233197742 at 2023-09-02
- haskell-src-exts-qq # failure in job https://hydra.nixos.org/build/233234764 at 2023-09-02
@ -2791,12 +2798,11 @@ broken-packages:
- ignore # failure in job https://hydra.nixos.org/build/233238874 at 2023-09-02
- igraph # failure in job https://hydra.nixos.org/build/233192875 at 2023-09-02
- ihaskell-charts # failure in job https://hydra.nixos.org/build/233193328 at 2023-09-02
- ihaskell-diagrams # failure in job https://hydra.nixos.org/build/233230959 at 2023-09-02
- ihaskell-gnuplot # failure in job https://hydra.nixos.org/build/233223675 at 2023-09-02
- ihaskell-graphviz # failure in job https://hydra.nixos.org/build/233200671 at 2023-09-02
- ihaskell-hvega # failure in job https://hydra.nixos.org/build/241514418 at 2023-11-20
- ihaskell-parsec # failure in job https://hydra.nixos.org/build/233244271 at 2023-09-02
- ihaskell-plot # failure in job https://hydra.nixos.org/build/233255936 at 2023-09-02
- ihaskell-widgets # failure in job https://hydra.nixos.org/build/233198849 at 2023-09-02
- ihp-hsx # failure in job https://hydra.nixos.org/build/233211401 at 2023-09-02
- illuminate # failure in job https://hydra.nixos.org/build/233219478 at 2023-09-02
- imagemagick # failure in job https://hydra.nixos.org/build/233598237 at 2023-09-02
@ -2981,6 +2987,7 @@ broken-packages:
- json-qq # failure in job https://hydra.nixos.org/build/233196259 at 2023-09-02
- jsonresume # failure in job https://hydra.nixos.org/build/233202350 at 2023-09-02
- jsonrpc-conduit # failure in job https://hydra.nixos.org/build/233195089 at 2023-09-02
- json-rpc # failure in job https://hydra.nixos.org/build/241430941 at 2023-11-19
- json-rpc-generic # failure in job https://hydra.nixos.org/build/233201371 at 2023-09-02
- json-rpc-server # failure in job https://hydra.nixos.org/build/233201284 at 2023-09-02
- jsonrpc-tinyclient # failure in job https://hydra.nixos.org/build/233214174 at 2023-09-02
@ -3049,7 +3056,6 @@ broken-packages:
- kind-integer # failure in job https://hydra.nixos.org/build/233250066 at 2023-09-02
- kleene-list # failure in job https://hydra.nixos.org/build/233237651 at 2023-09-02
- kmn-programming # failure in job https://hydra.nixos.org/build/233258328 at 2023-09-02
- kmonad # failure in job https://hydra.nixos.org/build/233239997 at 2023-09-02
- kmp-dfa # failure in job https://hydra.nixos.org/build/233237266 at 2023-09-02
- knots # failure in job https://hydra.nixos.org/build/233209153 at 2023-09-02
- koellner-phonetic # failure in job https://hydra.nixos.org/build/233217750 at 2023-09-02
@ -3096,6 +3102,7 @@ broken-packages:
- lambdatwit # failure in job https://hydra.nixos.org/build/233219603 at 2023-09-02
- Lambdaya # failure in job https://hydra.nixos.org/build/233227702 at 2023-09-02
- lame # failure in job https://hydra.nixos.org/build/233250932 at 2023-09-02
- laminar # failure in job https://hydra.nixos.org/build/241426331 at 2023-11-19
- language-asn # failure in job https://hydra.nixos.org/build/233227929 at 2023-09-02
- language-c-comments # failure in job https://hydra.nixos.org/build/233234112 at 2023-09-02
- language-c-inline # failure in job https://hydra.nixos.org/build/233245990 at 2023-09-02
@ -3257,6 +3264,7 @@ broken-packages:
- listlike-instances # failure in job https://hydra.nixos.org/build/233238303 at 2023-09-02
- list-mux # failure in job https://hydra.nixos.org/build/233206407 at 2023-09-02
- list-prompt # failure in job https://hydra.nixos.org/build/233235855 at 2023-09-02
- list-shuffle # failure in job https://hydra.nixos.org/build/241416196 at 2023-11-19
- list-t-http-client # failure in job https://hydra.nixos.org/build/233239262 at 2023-09-02
- list-t-libcurl # failure in job https://hydra.nixos.org/build/233237389 at 2023-09-02
- list-tries # failure in job https://hydra.nixos.org/build/233250041 at 2023-09-02
@ -3379,6 +3387,7 @@ broken-packages:
- mapalgebra # failure in job https://hydra.nixos.org/build/233215542 at 2023-09-02
- map-exts # failure in job https://hydra.nixos.org/build/233247423 at 2023-09-02
- Mapping # failure in job https://hydra.nixos.org/build/233248158 at 2023-09-02
- mappings # failure in job https://hydra.nixos.org/build/241435621 at 2023-11-19
- mappy # failure in job https://hydra.nixos.org/build/233250202 at 2023-09-02
- map-reduce-folds # failure in job https://hydra.nixos.org/build/233245163 at 2023-09-02
- MapWith # failure in job https://hydra.nixos.org/build/233237146 at 2023-09-02
@ -3607,6 +3616,7 @@ broken-packages:
- motor-reflection # failure in job https://hydra.nixos.org/build/233247530 at 2023-09-02
- mount # failure in job https://hydra.nixos.org/build/233220302 at 2023-09-02
- movie-monad # failure in job https://hydra.nixos.org/build/233215402 at 2023-09-02
- mpd-current-json # failure in job https://hydra.nixos.org/build/241424468 at 2023-11-19
- mpppc # failure in job https://hydra.nixos.org/build/233223008 at 2023-09-02
- mpris # failure in job https://hydra.nixos.org/build/233259241 at 2023-09-02
- mpvguihs # failure in job https://hydra.nixos.org/build/233196650 at 2023-09-02
@ -3930,6 +3940,7 @@ broken-packages:
- orion-hs # failure in job https://hydra.nixos.org/build/233210586 at 2023-09-02
- orizentic # failure in job https://hydra.nixos.org/build/233197904 at 2023-09-02
- OrPatterns # failure in job https://hydra.nixos.org/build/233191538 at 2023-09-02
- orville-postgresql # failure in job https://hydra.nixos.org/build/241433010 at 2023-11-19
- ory-hydra-client # failure in job https://hydra.nixos.org/build/233197456 at 2023-09-02
- ory-kratos # failure in job https://hydra.nixos.org/build/233191249 at 2023-09-02
- osc # failure in job https://hydra.nixos.org/build/233250062 at 2023-09-02
@ -4192,6 +4203,7 @@ broken-packages:
- platinum-parsing # failure in job https://hydra.nixos.org/build/233225071 at 2023-09-02
- PlayingCards # failure in job https://hydra.nixos.org/build/233239100 at 2023-09-02
- playlists # failure in job https://hydra.nixos.org/build/233240151 at 2023-09-02
- plex # failure in job https://hydra.nixos.org/build/241435308 at 2023-11-19
- plist-buddy # failure in job https://hydra.nixos.org/build/233199181 at 2023-09-02
- plist # failure in job https://hydra.nixos.org/build/233233906 at 2023-09-02
- plivo # failure in job https://hydra.nixos.org/build/233256647 at 2023-09-02
@ -4626,7 +4638,6 @@ broken-packages:
- reify # failure in job https://hydra.nixos.org/build/233247509 at 2023-09-02
- relacion # failure in job https://hydra.nixos.org/build/233241624 at 2023-09-02
- relation # failure in job https://hydra.nixos.org/build/233244581 at 2023-09-02
- releaser # failure in job https://hydra.nixos.org/build/233239420 at 2023-09-02
- relevant-time # failure in job https://hydra.nixos.org/build/233190794 at 2023-09-02
- reload # failure in job https://hydra.nixos.org/build/233212925 at 2023-09-02
- remark # failure in job https://hydra.nixos.org/build/233240981 at 2023-09-02
@ -5892,6 +5903,7 @@ broken-packages:
- vty-examples # failure in job https://hydra.nixos.org/build/233235872 at 2023-09-02
- vty-menu # failure in job https://hydra.nixos.org/build/233232391 at 2023-09-02
- vty-ui # failure in job https://hydra.nixos.org/build/233200900 at 2023-09-02
- vty-unix # failure in job https://hydra.nixos.org/build/241443107 at 2023-11-19
- wacom-daemon # failure in job https://hydra.nixos.org/build/233213077 at 2023-09-02
- waddle # failure in job https://hydra.nixos.org/build/233239973 at 2023-09-02
- wai-git-http # failure in job https://hydra.nixos.org/build/233191513 at 2023-09-02

View File

@ -106,6 +106,7 @@ extra-packages:
- ghc-lib-parser-ex == 9.2.* # 2022-07-13: preserve for GHC 9.2
- ghc-lib-parser-ex == 9.4.* # 2023-03-17: preserve for GHC 9.4
- ghc-lib-parser-ex == 9.6.* # 2023-10-24: preserve for GHC 9.6
- ghc-syntax-highlighter == 0.0.10.* # 2023-11-20:
- gi-soup == 2.4.28 # 2023-04-05: the last version to support libsoup-2.4 (and thus be compatible with our other gi- packages)
- haddock == 2.23.* # required on GHC < 8.10.x
- haddock-api == 2.23.* # required on GHC < 8.10.x
@ -117,6 +118,7 @@ extra-packages:
- 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, needed for HLS
- hspec-meta < 2.8 # 2022-12-07: Needed for elmPackages.elm / hspec-discover
- hspec-golden == 0.1.* # 2022-04-07: Needed for elm-format
- http2 < 3.3 # 2023-08-24: Needed for twain <https://github.com/alexmingoia/twain/issues/5>
@ -130,7 +132,9 @@ extra-packages:
- network == 2.6.3.1 # required by pkgs/games/hedgewars/default.nix, 2020-11-15
- optparse-applicative < 0.16 # needed for niv-0.2.19
- fourmolu == 0.11.* # 2023-10-22: for hls on ghc 9.0
- fourmolu == 0.14.0.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
- ormolu == 0.5.2.0 # 2023-08-08: for hls on ghc 9.0 and 9.2
- ormolu == 0.7.2.0 # 2023-11-13: for ghc-lib-parser 9.6 compat
- pantry == 0.5.2.1 # needed for stack-2.7.3
- path == 0.9.0 # 2021-12-03: path version building with stackage genvalidity and GHC 9.0.2
- resolv < 0.2 # required to build cabal-install-3.10.1.0 with Stackage LTS 21
@ -669,6 +673,7 @@ unsupported-platforms:
netlink: [ platforms.darwin ]
notifications-tray-icon: [ platforms.darwin ] # depends on gi-dbusmenu
oculus: [ platforms.darwin ]
ostree-pin: [ platforms.darwin ] # depends on gi-ostree
pam: [ platforms.darwin ]
parport: [ platforms.darwin ]
persist-state: [ aarch64-linux, armv7l-linux ] # https://github.com/minad/persist-state/blob/6fd68c0b8b93dec78218f6d5a1f4fa06ced4e896/src/Data/PersistState.hs#L122-L128
@ -681,6 +686,7 @@ unsupported-platforms:
reflex-dom-fragment-shader-canvas: [ platforms.darwin, aarch64-linux ]
reflex-dom: [ platforms.darwin ]
reflex-localize-dom: [ platforms.darwin, aarch64-linux ]
rsi-break: [ platforms.darwin ] # depends on monomer
rtlsdr: [ platforms.darwin ]
rubberband: [ platforms.darwin ]
SDL-mixer: [ platforms.darwin ] # depends on mesa
@ -777,6 +783,7 @@ supported-platforms:
systemd-api: [ platforms.linux ]
tasty-papi: [ platforms.linux ] # limited by pkgs.papi
udev: [ platforms.linux ]
vty-windows: [ platforms.windows ] # depends on Win32
Win32-console: [ platforms.windows ]
Win32-dhcp-server: [ platforms.windows ]
Win32-errors: [ platforms.windows ]

View File

@ -1,4 +1,4 @@
# Stackage LTS 21.16
# Stackage LTS 21.19
# This file is auto-generated by
# maintainers/scripts/haskell/update-stackage.sh
default-package-overrides:
@ -134,7 +134,7 @@ default-package-overrides:
- aws-xray-client-wai ==0.1.0.2
- backtracking ==0.1.0
- bank-holidays-england ==0.2.0.9
- barbies ==2.0.4.0
- barbies ==2.0.5.0
- base16 ==0.3.2.1
- base16-bytestring ==1.0.2.0
- base32 ==0.3.1.0
@ -161,7 +161,7 @@ default-package-overrides:
- bech32 ==1.1.3
- bech32-th ==1.1.1
- bench ==1.0.12
- benchpress ==0.2.2.22
- benchpress ==0.2.2.23
- bencode ==0.6.1.1
- bencoding ==0.4.5.4
- benri-hspec ==0.1.0.1
@ -267,14 +267,14 @@ default-package-overrides:
- bytestring-mmap ==0.2.2
- bytestring-strict-builder ==0.4.5.7
- bytestring-to-vector ==0.3.0.1
- bytestring-tree-builder ==0.2.7.10
- bytestring-tree-builder ==0.2.7.11
- bytestring-trie ==0.2.7.2
- bz2 ==1.0.1.0
- bzlib-conduit ==0.3.0.2
- c14n ==0.1.0.3
- c2hs ==0.28.8
- cabal2spec ==2.7.0
- cabal-appimage ==0.4.0.1
- cabal-appimage ==0.4.0.2
- cabal-clean ==0.2.20230609
- cabal-doctest ==1.0.9
- cabal-file ==0.1.1
@ -319,13 +319,13 @@ default-package-overrides:
- character-cases ==0.1.0.6
- charset ==0.3.10
- charsetdetect-ae ==1.1.0.4
- Chart ==1.9.4
- Chart-diagrams ==1.9.4
- Chart ==1.9.5
- Chart-diagrams ==1.9.5.1
- ChasingBottoms ==1.3.1.12
- check-email ==1.0.2
- checkers ==0.6.0
- checksum ==0.0.0.1
- chimera ==0.3.3.0
- chimera ==0.3.4.0
- choice ==0.2.3
- chronologique ==0.3.1.3
- chronos ==1.1.5.1
@ -356,7 +356,7 @@ default-package-overrides:
- cointracking-imports ==0.1.0.2
- collect-errors ==0.1.5.0
- co-log-concurrent ==0.5.1.0
- co-log-core ==0.3.2.0
- co-log-core ==0.3.2.1
- colonnade ==1.2.0.2
- Color ==0.3.3
- colorful-monoids ==0.2.1.3
@ -371,15 +371,15 @@ default-package-overrides:
- comfort-fftw ==0.0.0.1
- comfort-glpk ==0.1
- comfort-graph ==0.0.4
- commonmark ==0.2.3
- commonmark-extensions ==0.2.3.6
- commonmark ==0.2.4
- commonmark-extensions ==0.2.4
- commonmark-pandoc ==0.2.1.3
- commutative ==0.0.2
- commutative-semigroups ==0.1.0.1
- comonad ==5.0.8
- comonad-extras ==4.0.1
- compactmap ==0.1.4.3
- compdata ==0.13.0
- compdata ==0.13.1
- compensated ==0.8.3
- compiler-warnings ==0.1.0
- componentm ==0.0.0.2
@ -422,7 +422,7 @@ default-package-overrides:
- context-wai-middleware ==0.2.0.2
- contiguous ==0.6.3.0
- contravariant ==1.5.5
- contravariant-extras ==0.3.5.3
- contravariant-extras ==0.3.5.4
- control-bool ==0.2.1
- control-dsl ==0.2.1.3
- control-monad-free ==0.6.2
@ -587,7 +587,7 @@ default-package-overrides:
- digits ==0.3.1
- di-handle ==1.0.1
- dimensional ==1.5
- di-monad ==1.3.2
- di-monad ==1.3.5
- directory-tree ==0.12.1
- direct-sqlite ==2.3.28
- dirichlet ==0.1.0.7
@ -614,7 +614,7 @@ default-package-overrides:
- doctest-exitcode-stdio ==0.0
- doctest-extract ==0.1.1.1
- doctest-lib ==0.1
- doctest-parallel ==0.3.0.1
- doctest-parallel ==0.3.1
- doldol ==0.4.1.2
- do-list ==1.0.1
- domain ==0.1.1.4
@ -701,7 +701,7 @@ default-package-overrides:
- errors ==2.3.0
- errors-ext ==0.4.2
- ersatz ==0.4.13
- esqueleto ==3.5.10.3
- esqueleto ==3.5.11.0
- event-list ==0.1.2.1
- eventstore ==1.4.2
- every ==0.0.1
@ -778,7 +778,7 @@ default-package-overrides:
- fixed-vector ==1.2.2.1
- fixed-vector-hetero ==0.6.1.1
- fix-whitespace ==0.0.11
- flac ==0.2.0
- flac ==0.2.1
- flac-picture ==0.1.2
- flags-applicative ==0.1.0.3
- flat ==0.6
@ -791,7 +791,7 @@ default-package-overrides:
- fmlist ==0.9.4
- fmt ==0.6.3.0
- fn ==0.3.0.2
- focus ==1.0.3.1
- focus ==1.0.3.2
- focuslist ==0.1.1.0
- foldable1-classes-compat ==0.1
- fold-debounce ==0.2.0.11
@ -936,7 +936,7 @@ default-package-overrides:
- github-rest ==1.1.4
- github-types ==0.2.1
- github-webhooks ==0.17.0
- gitlab-haskell ==1.0.0.1
- gitlab-haskell ==1.0.0.3
- gitlib ==3.1.3
- gitrev ==1.3.1
- gi-vte ==2.91.31
@ -1021,7 +1021,7 @@ default-package-overrides:
- haskoin-node ==0.18.1
- haskoin-store-data ==0.65.5
- hasktags ==0.72.0
- hasql ==1.6.3.2
- hasql ==1.6.3.3
- hasql-dynamic-statements ==0.3.1.2
- hasql-implicits ==0.1.1
- hasql-interpolate ==0.1.0.4
@ -1056,7 +1056,7 @@ default-package-overrides:
- hedgehog-quickcheck ==0.1.1
- hedis ==0.15.2
- hedn ==0.3.0.4
- heist ==1.1.1.1
- heist ==1.1.1.2
- here ==1.2.14
- heredoc ==0.2.0.0
- heterocephalus ==1.0.5.7
@ -1075,11 +1075,11 @@ default-package-overrides:
- hindent ==6.0.0
- hinfo ==0.0.3.0
- hinotify ==0.4.1
- hint ==0.9.0.7
- hint ==0.9.0.8
- histogram-fill ==0.9.1.0
- hjsmin ==0.2.1
- hkd-default ==1.1.0.0
- hkgr ==0.4.3.1
- hkgr ==0.4.3.2
- hledger ==1.30.1
- hledger-interest ==1.6.6
- hledger-lib ==1.30
@ -1116,7 +1116,7 @@ default-package-overrides:
- hpp ==0.6.5
- hpqtypes ==1.11.1.1
- hpqtypes-extras ==1.16.4.4
- hreader ==1.1.0
- hreader ==1.1.1
- hreader-lens ==0.1.3.0
- hruby ==0.5.0.0
- hsass ==0.8.0
@ -1167,7 +1167,7 @@ default-package-overrides:
- hspec-hedgehog ==0.0.1.2
- hspec-junit-formatter ==1.1.0.2
- hspec-leancheck ==0.0.6
- hspec-megaparsec ==2.2.0
- hspec-megaparsec ==2.2.1
- hspec-meta ==2.10.5
- hspec-parsec ==0
- hspec-smallcheck ==0.5.3
@ -1181,10 +1181,10 @@ default-package-overrides:
- HSvm ==0.1.1.3.25
- hsx2hs ==0.14.1.11
- hsx-jmacro ==7.3.8.2
- HsYAML ==0.2.1.2
- HsYAML ==0.2.1.3
- HsYAML-aeson ==0.2.0.1
- hsyslog ==5.0.2
- htaglib ==1.2.0
- htaglib ==1.2.1
- HTF ==0.15.0.1
- html ==1.0.1.2
- html-conduit ==1.3.2.2
@ -1197,7 +1197,7 @@ default-package-overrides:
- HTTP ==4000.4.1
- http-api-data ==0.5
- http-api-data-qq ==0.1.0.0
- http-client ==0.7.14
- http-client ==0.7.15
- http-client-openssl ==0.3.3
- http-client-overrides ==0.1.1.0
- http-client-restricted ==0.0.5
@ -1208,12 +1208,12 @@ default-package-overrides:
- http-directory ==0.1.10
- http-download ==0.2.0.0
- httpd-shed ==0.4.1.1
- http-io-streams ==0.1.6.2
- http-io-streams ==0.1.6.3
- http-link-header ==1.2.1
- http-media ==0.8.1.1
- http-query ==0.1.3
- http-reverse-proxy ==0.6.0.1
- http-streams ==0.8.9.8
- http-streams ==0.8.9.9
- http-types ==0.12.3
- human-readable-duration ==0.2.1.4
- HUnit ==1.6.2.0
@ -1333,7 +1333,7 @@ default-package-overrides:
- iso639 ==0.1.0.3
- iso8601-time ==0.1.5
- isocline ==1.0.9
- isomorphism-class ==0.1.0.10
- isomorphism-class ==0.1.0.11
- iterable ==3.0
- ix-shapable ==0.1.0
- jack ==0.7.2.2
@ -1342,7 +1342,7 @@ default-package-overrides:
- jira-wiki-markup ==1.5.1
- jl ==0.1.0
- jmacro ==0.6.18
- jose ==0.10
- jose ==0.10.0.1
- jose-jwt ==0.9.6
- journalctl-stream ==0.6.0.5
- js-chart ==2.9.4.1
@ -1388,14 +1388,14 @@ default-package-overrides:
- krank ==0.3.0
- labels ==0.3.3
- lackey ==2.0.0.6
- LambdaHack ==0.11.0.0
- lame ==0.2.1
- LambdaHack ==0.11.0.1
- lame ==0.2.2
- language-avro ==0.1.4.0
- language-bash ==0.9.2
- language-c ==0.9.2
- language-c-quote ==0.13.0.1
- language-docker ==12.1.0
- language-dot ==0.1.1
- language-dot ==0.1.2
- language-glsl ==0.3.0
- language-java ==0.2.9
- language-javascript ==0.7.1.0
@ -1515,7 +1515,7 @@ default-package-overrides:
- matchable ==0.1.2.1
- mathexpr ==0.3.1.0
- math-extras ==0.1.1.0
- math-functions ==0.3.4.2
- math-functions ==0.3.4.3
- mathlist ==0.2.0.0
- matplotlib ==0.7.7
- matrices ==0.5.0
@ -1562,7 +1562,7 @@ default-package-overrides:
- mighty-metropolis ==2.0.0
- mime-mail ==0.5.1
- mime-mail-ses ==0.4.3
- mime-types ==0.1.1.0
- mime-types ==0.1.2.0
- minimal-configuration ==0.1.4
- minimorph ==0.3.0.1
- minio-hs ==1.7.0
@ -1619,7 +1619,7 @@ default-package-overrides:
- mongoDB ==2.7.1.2
- monoidal-containers ==0.6.4.0
- monoid-extras ==0.6.2
- monoid-subclasses ==1.2.4
- monoid-subclasses ==1.2.4.1
- monoid-transformer ==0.0.4
- mono-traversable ==1.0.15.3
- mono-traversable-instances ==0.1.1.0
@ -1823,7 +1823,7 @@ default-package-overrides:
- password ==3.0.2.1
- password-instances ==3.0.0.0
- password-types ==1.0.0.0
- path ==0.9.2
- path ==0.9.5
- path-binary-instance ==0.1.0.1
- path-dhall-instance ==0.2.1.0
- path-extensions ==0.1.1.0
@ -1848,7 +1848,7 @@ default-package-overrides:
- pdf-toolbox-content ==0.1.1
- pdf-toolbox-core ==0.1.1
- pdf-toolbox-document ==0.1.2
- peano ==0.1.0.1
- peano ==0.1.0.2
- pedersen-commitment ==0.2.0
- pem ==0.2.4
- percent-format ==0.0.4
@ -1921,7 +1921,7 @@ default-package-overrides:
- posix-pty ==0.2.2
- possibly ==1.0.0.0
- postgres-options ==0.2.1.0
- postgresql-binary ==0.13.1
- postgresql-binary ==0.13.1.1
- postgresql-libpq ==0.9.5.0
- postgresql-libpq-notify ==0.2.0.0
- postgresql-migration ==0.2.1.7
@ -1956,7 +1956,7 @@ default-package-overrides:
- primes ==0.2.1.0
- primitive ==0.8.0.0
- primitive-addr ==0.1.0.2
- primitive-extras ==0.10.1.8
- primitive-extras ==0.10.1.10
- primitive-offset ==0.2.0.0
- primitive-unaligned ==0.1.1.2
- primitive-unlifted ==0.1.3.1
@ -1985,17 +1985,17 @@ default-package-overrides:
- proxied ==0.3.1
- psql-helpers ==0.1.0.0
- PSQueue ==1.2.0
- psqueues ==0.2.7.3
- psqueues ==0.2.8.0
- pthread ==0.2.1
- ptr ==0.16.8.4
- ptr-poker ==0.1.2.13
- pulse-simple ==0.1.14
- pureMD5 ==2.1.4
- purescript-bridge ==0.15.0.0
- pusher-http-haskell ==2.1.0.16
- pusher-http-haskell ==2.1.0.17
- pvar ==1.0.0.0
- pwstore-fast ==2.4.4
- PyF ==0.11.1.1
- PyF ==0.11.2.1
- qchas ==1.1.0.1
- qm-interpolated-string ==0.3.1.0
- qrcode-core ==0.9.9
@ -2048,7 +2048,7 @@ default-package-overrides:
- ratio-int ==0.1.2
- rattle ==0.2
- rattletrap ==12.0.3
- Rattus ==0.5.1
- Rattus ==0.5.1.1
- rawfilepath ==1.0.1
- rawstring-qm ==0.2.3.0
- raw-strings-qq ==1.1
@ -2067,7 +2067,7 @@ default-package-overrides:
- rec-def ==0.2.2
- record-dot-preprocessor ==0.2.16
- record-hasfield ==1.0
- recursion-schemes ==5.2.2.4
- recursion-schemes ==5.2.2.5
- recv ==0.1.0
- redact ==0.5.0.0
- reddit-scrape ==0.0.1
@ -2284,7 +2284,7 @@ default-package-overrides:
- simple-expr ==0.1.1.0
- simple-media-timestamp ==0.2.1.0
- simple-media-timestamp-attoparsec ==0.1.0.0
- simple-prompt ==0.2.1
- simple-prompt ==0.2.2
- simple-reflect ==0.3.3
- simple-sendfile ==0.2.32
- simple-session ==2.0.0
@ -2299,7 +2299,7 @@ default-package-overrides:
- singletons-th ==3.1.1
- Sit ==0.2022.3.18
- sitemap-gen ==0.1.0.0
- size-based ==0.1.3.1
- size-based ==0.1.3.2
- sized ==1.1.0.0
- skein ==1.0.9.4
- skews ==0.1.0.3
@ -2311,7 +2311,7 @@ default-package-overrides:
- skylighting-format-context ==0.1.0.2
- skylighting-format-latex ==0.1
- slack-progressbar ==0.1.0.1
- slave-thread ==1.1.0.2
- slave-thread ==1.1.0.3
- slick ==1.2.1.0
- slist ==0.2.1.0
- slynx ==0.7.2.2
@ -2376,10 +2376,10 @@ default-package-overrides:
- stitch ==0.6.0.0
- stm-chans ==3.0.0.9
- stm-conduit ==4.0.1
- stm-containers ==1.2.0.2
- stm-containers ==1.2.0.3
- stm-delay ==0.1.1.1
- stm-extras ==0.1.0.3
- stm-hamt ==1.2.0.13
- stm-hamt ==1.2.0.14
- stm-lifted ==2.5.0.0
- STMonadTrans ==0.4.7
- stm-split ==0.0.2.1
@ -2410,7 +2410,7 @@ default-package-overrides:
- strict-concurrency ==0.2.4.3
- strict-lens ==0.4.0.3
- strict-list ==0.1.7.2
- strict-tuple ==0.1.5.2
- strict-tuple ==0.1.5.3
- strict-wrapper ==0.0.0.0
- stringable ==0.1.3
- stringbuilder ==0.5.1
@ -2512,7 +2512,7 @@ default-package-overrides:
- tasty-program ==1.1.0
- tasty-quickcheck ==0.10.2
- tasty-rerun ==1.1.19
- tasty-silver ==3.3.1.2
- tasty-silver ==3.3.1.3
- tasty-smallcheck ==0.8.2
- tasty-tap ==0.1.0
- tasty-th ==0.1.7
@ -2523,17 +2523,17 @@ default-package-overrides:
- teardown ==0.5.0.1
- telegram-bot-api ==6.7.1
- telegram-bot-simple ==0.12
- template-haskell-compat-v0208 ==0.1.9.2
- template-haskell-compat-v0208 ==0.1.9.3
- temporary ==1.3
- temporary-rc ==1.2.0.3
- temporary-resourcet ==0.1.0.1
- tensorflow-test ==0.1.0.0
- tensors ==0.1.5
- termbox ==1.1.0.1
- termbox ==1.1.0.2
- termbox-banana ==1.0.0
- termbox-bindings-c ==0.1.0
- termbox-bindings-hs ==0.1.0
- termbox-tea ==0.1.0
- termbox-tea ==0.1.0.1
- terminal-progress-bar ==0.4.2
- terminal-size ==0.3.4
- termonad ==4.5.0.0
@ -2545,7 +2545,7 @@ default-package-overrides:
- test-fun ==0.1.0.0
- testing-feat ==1.1.1.1
- testing-type-modifiers ==0.1.0.1
- texmath ==0.12.8.3
- texmath ==0.12.8.4
- text-ansi ==0.2.1.1
- text-binary ==0.2.1.1
- text-builder ==0.6.7
@ -2789,7 +2789,7 @@ default-package-overrides:
- vector-stream ==0.1.0.0
- vector-th-unbox ==0.2.2
- verbosity ==0.4.0.0
- versions ==6.0.2
- versions ==6.0.3
- vformat ==0.14.1.0
- vformat-time ==0.1.0.0
- ViennaRNAParser ==1.3.3
@ -2834,7 +2834,7 @@ default-package-overrides:
- warp ==3.3.25
- warp-tls ==3.3.6
- warp-tls-uid ==0.2.0.6
- wave ==0.2.0
- wave ==0.2.1
- wcwidth ==0.0.2
- webdriver ==0.11.0.0
- webex-teams-api ==0.2.0.1
@ -2852,7 +2852,7 @@ default-package-overrides:
- websockets ==0.12.7.3
- weigh ==0.0.16
- welford-online-mean-variance ==0.2.0.0
- wide-word ==0.1.5.0
- wide-word ==0.1.6.0
- Win32-notify ==0.3.0.3
- windns ==0.1.0.1
- witch ==1.2.0.2
@ -2925,10 +2925,10 @@ default-package-overrides:
- yesod-auth ==1.6.11.2
- yesod-auth-basic ==0.1.0.3
- yesod-auth-hashdb ==1.7.1.7
- yesod-auth-oauth2 ==0.7.1.1
- yesod-auth-oauth2 ==0.7.1.2
- yesod-auth-oidc ==0.1.4
- yesod-bin ==1.6.2.2
- yesod-core ==1.6.24.5
- yesod-core ==1.6.25.0
- yesod-eventsource ==1.6.0.1
- yesod-fb ==0.6.1
- yesod-form ==1.7.6

View File

@ -121,11 +121,8 @@ dont-distribute-packages:
- Forestry
- FormalGrammars
- Foster
- Frames
- Frames-beam
- Frames-dsv
- Frames-map-reduce
- Frames-streamly
- Frank
- GLFW-OGL
- GLFW-task
@ -706,6 +703,7 @@ dont-distribute-packages:
- borel
- both
- breakout
- brick_2_1_1
- bricks
- bricks-internal-test
- bricks-parsec
@ -1019,6 +1017,8 @@ dont-distribute-packages:
- curryer-rpc
- cv-combinators
- cypher
- dahdit-network
- dahdit-test
- daino
- dapi
- darcs-benchmark
@ -1726,6 +1726,7 @@ dont-distribute-packages:
- gogol-youtube-reporting
- google-drive
- google-mail-filters
- google-maps-geocoding
- googleplus
- gore-and-ash-actor
- gore-and-ash-async
@ -2031,7 +2032,7 @@ dont-distribute-packages:
- hesql
- heterolist
- hetzner
- hetzner_0_5_0_0
- hetzner_0_6_0_0
- hevolisa
- hevolisa-dph
- hexpat-conduit
@ -2173,6 +2174,9 @@ dont-distribute-packages:
- hsql-odbc
- hsql-postgresql
- hsql-sqlite3
- hsqml-datamodel-vinyl
- hsqml-demo-morris
- hsqml-morris
- hsreadability
- hssqlppp-th
- hstar
@ -2678,6 +2682,12 @@ dont-distribute-packages:
- micro-gateway
- microformats2-types
- midimory
- mig
- mig-client
- mig-extra
- mig-server
- mig-swagger-ui
- mig-wai
- mighttpd
- minecraft-data
- minesweeper
@ -2810,6 +2820,7 @@ dont-distribute-packages:
- named-servant-client
- named-servant-server
- nanq
- national-australia-bank
- nats-queue
- natural-number
- nemesis-titan
@ -3504,6 +3515,7 @@ dont-distribute-packages:
- selda-sqlite
- selenium-server
- semantic-source
- semantic-version
- semi-iso
- semialign-extras
- semiring
@ -4103,6 +4115,7 @@ dont-distribute-packages:
- voicebase
- vorbiscomment
- vpq
- vty-crossplatform
- vty-ui-extras
- waargonaut
- wahsp

File diff suppressed because it is too large Load Diff

View File

@ -1,30 +0,0 @@
{ mkDerivation, base, bytestring, cabal-install-parsers
, Cabal-syntax, containers, directory, fetchgit, filepath
, generic-lens-lite, lib, mtl, optparse-applicative, parsec, pretty
, regex-applicative
}:
mkDerivation {
pname = "changelog-d";
version = "0.1";
src = fetchgit {
url = "https://codeberg.org/fgaz/changelog-d";
sha256 = "0r0gr3bl88am9jivic3i8lfi9l5v1dj7xx4fvw6hhy3wdx7z50z7";
rev = "2816ddb78cec8b7fa4462c25028437ebfe3ad314";
fetchSubmodules = true;
};
isLibrary = false;
isExecutable = true;
libraryHaskellDepends = [
base bytestring cabal-install-parsers Cabal-syntax containers
directory filepath generic-lens-lite mtl parsec pretty
regex-applicative
];
executableHaskellDepends = [
base bytestring Cabal-syntax directory filepath
optparse-applicative
];
doHaddock = false;
description = "Concatenate changelog entries into a single one";
license = lib.licenses.gpl3Plus;
mainProgram = "changelog-d";
}

View File

@ -1,51 +1,30 @@
{ callPackage
, lib
, pkgs
{ mkDerivation, base, bytestring, cabal-install-parsers
, Cabal-syntax, containers, directory, fetchgit, filepath
, generic-lens-lite, lib, mtl, optparse-applicative, parsec, pretty
, regex-applicative
}:
(callPackage ./changelog-d.nix { }).overrideAttrs (finalAttrs: oldAttrs: {
version = oldAttrs.version + "-git-${lib.strings.substring 0 7 oldAttrs.src.rev}";
passthru.updateScript = lib.getExe (pkgs.writeShellApplication {
name = "update-changelog-d";
runtimeInputs = [
pkgs.cabal2nix
];
text = ''
cd pkgs/development/misc/haskell/changelog-d
cabal2nix https://codeberg.org/fgaz/changelog-d >changelog-d.nix
'';
});
passthru.tests = {
basic = pkgs.runCommand "changelog-d-basic-test" {
nativeBuildInputs = [ finalAttrs.finalPackage ];
} ''
mkdir changelogs
cat > changelogs/config <<EOF
organization: NixOS
repository: boondoggle
EOF
cat > changelogs/a <<EOF
synopsis: Support numbers with incrementing base-10 digits
issues: #1234
description: {
This didn't work before.
}
EOF
changelog-d changelogs >$out
cat -n $out
echo Checking the generated output
set -x
grep -F 'Support numbers with incrementing base-10 digits' $out >/dev/null
grep -F 'https://github.com/NixOS/boondoggle/issues/1234' $out >/dev/null
set +x
'';
mkDerivation {
pname = "changelog-d";
version = "0.1";
src = fetchgit {
url = "https://codeberg.org/fgaz/changelog-d";
sha256 = "0r0gr3bl88am9jivic3i8lfi9l5v1dj7xx4fvw6hhy3wdx7z50z7";
rev = "2816ddb78cec8b7fa4462c25028437ebfe3ad314";
fetchSubmodules = true;
};
meta = oldAttrs.meta // {
homepage = "https://codeberg.org/fgaz/changelog-d";
maintainers = [ lib.maintainers.roberth ];
};
})
isLibrary = false;
isExecutable = true;
libraryHaskellDepends = [
base bytestring cabal-install-parsers Cabal-syntax containers
directory filepath generic-lens-lite mtl parsec pretty
regex-applicative
];
executableHaskellDepends = [
base bytestring Cabal-syntax directory filepath
optparse-applicative
];
doHaddock = false;
description = "Concatenate changelog entries into a single one";
license = lib.licenses.gpl3Plus;
mainProgram = "changelog-d";
}

View File

@ -34,7 +34,7 @@ in
-t ${haskellPackages.warp} \
$out/bin/pandoc
remove-references-to \
-t ${haskellPackages.pandoc_3_1_8} \
-t ${haskellPackages.pandoc_3_1_9} \
$out/bin/pandoc
'' + lib.optionalString (stdenv.buildPlatform == stdenv.hostPlatform) ''
mkdir -p $out/share/bash-completion/completions
@ -48,5 +48,5 @@ in
# lead to a transitive runtime dependency on the whole GHC distribution.
# This should ideally be fixed in haskellPackages (or even Cabal),
# but a minimal pandoc is important enough to patch it manually.
disallowedReferences = [ haskellPackages.pandoc-types haskellPackages.warp haskellPackages.pandoc_3_1_8 ];
disallowedReferences = [ haskellPackages.pandoc-types haskellPackages.warp haskellPackages.pandoc_3_1_9 ];
})

View File

@ -1,37 +1,12 @@
{ buildPackages, pkgsBuildTarget, pkgs, newScope, stdenv }:
let
# These are attributes in compiler and packages that don't support integer-simple.
integerSimpleExcludes = [
"ghc865Binary"
"ghc8102Binary"
"ghc8107Binary"
"ghc924Binary"
"ghcjs"
"ghcjs810"
"integer-simple"
"native-bignum"
"ghc902"
"ghc90"
"ghc924"
"ghc925"
"ghc926"
"ghc927"
"ghc928"
"ghc92"
"ghc942"
"ghc943"
"ghc944"
"ghc945"
"ghc946"
"ghc947"
"ghc94"
"ghc96"
"ghc962"
"ghc963"
"ghc981"
"ghc98"
"ghcHEAD"
# These are attributes in compiler that support integer-simple.
integerSimpleIncludes = [
"ghc88"
"ghc884"
"ghc810"
"ghc8107"
];
nativeBignumIncludes = [
@ -50,6 +25,7 @@ let
"ghc945"
"ghc946"
"ghc947"
"ghc948"
"ghc96"
"ghc962"
"ghc963"
@ -363,7 +339,31 @@ in {
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
llvmPackages = pkgs.llvmPackages_12;
};
ghc94 = compiler.ghc947;
ghc948 = callPackage ../development/compilers/ghc/9.4.8.nix {
bootPkgs =
# Building with 9.2 is broken due to
# https://gitlab.haskell.org/ghc/ghc/-/issues/21914
# Use 8.10 as a workaround where possible to keep bootstrap path short.
# On ARM text won't build with GHC 8.10.*
if stdenv.hostPlatform.isAarch then
# TODO(@sternenseemann): package bindist
packages.ghc902
# No suitable bindists for powerpc64le
else if stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian then
packages.ghc902
else
packages.ghc8107Binary;
inherit (buildPackages.python3Packages) sphinx;
# Need to use apple's patched xattr until
# https://github.com/xattr/xattr/issues/44 and
# https://github.com/xattr/xattr/issues/55 are solved.
inherit (buildPackages.darwin) xattr autoSignDarwinBinariesHook;
# Support range >= 10 && < 14
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
llvmPackages = pkgs.llvmPackages_12;
};
ghc94 = compiler.ghc948;
ghc962 = callPackage ../development/compilers/ghc/9.6.2.nix {
bootPkgs =
# For GHC 9.2 no armv7l bindists are available.
@ -437,7 +437,7 @@ in {
# build with integer-simple instead of integer-gmp.
integer-simple = let
integerSimpleGhcNames = pkgs.lib.filter
(name: ! builtins.elem name integerSimpleExcludes)
(name: builtins.elem name integerSimpleIncludes)
(pkgs.lib.attrNames compiler);
in pkgs.recurseIntoAttrs (pkgs.lib.genAttrs
integerSimpleGhcNames
@ -558,7 +558,12 @@ in {
ghc = bh.compiler.ghc947;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
};
ghc94 = packages.ghc947;
ghc948 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghc948;
ghc = bh.compiler.ghc948;
compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { };
};
ghc94 = packages.ghc948;
ghc962 = callPackage ../development/haskell-modules {
buildHaskellPackages = bh.packages.ghc962;
ghc = bh.compiler.ghc962;
@ -595,7 +600,7 @@ in {
integer-simple =
let
integerSimpleGhcNames = pkgs.lib.filter
(name: ! builtins.elem name integerSimpleExcludes)
(name: builtins.elem name integerSimpleIncludes)
(pkgs.lib.attrNames packages);
in
pkgs.lib.genAttrs integerSimpleGhcNames

View File

@ -487,7 +487,7 @@ let
cabal-install = lib.subtractLists [
compilerNames.ghc981
] released;
Cabal_3_10_2_0 = lib.subtractLists [
Cabal_3_10_2_1 = lib.subtractLists [
compilerNames.ghc981
] released;
Cabal-syntax_3_10_1_0 = lib.subtractLists [