according https://hydra.nixos.org/build/233205149 the first broken
build of llvm-hs was in 2022-02-18 09:30:43. unpin llvm_9 so LLVM9 can
be removed from nixpkgs
Sorry, this is a bit of a draw the rest of the owl commit. Upgraded
where sensible/possible, all jailbreaks note the bounds issues which are
luckily relatively boring (base and friends).
Removed overrides are mostly stale overrides from configuration-head.nix
that don't work anymore and make little sense with the current package
set anyways.
For GHC 9.6 and 9.8 we can use the Cabal library bundled with GHC since
it matches the requested version. This can prevent inconsistent
dependencies later in e.g. haskell-language-server.
For lower versions we may need to jailbreak and downgrade Cabal to which
upstream seems to be open:
> We need to pin a single major version of Cabal here because the main
> reason we use Cabal is for its list of extensions. Later versions have
> strictly more extensions, and we'll have missing patterns if we try to
> support more than one major version. If this causes problems in
> practice let's revisit this decision and come up with another
> approach.
Alternatively, hls-stan-plugin can be disabled.
dhall suddenly appeared in Stackage LTS 21 at 1.41.* which we don't
necessarily want, as we were using 1.42.* before. It is much easier to
revert this downgrade due to other packages (not in Stackage LTS) we are
shipping, like dhall-nix, dhall-nixpkgs and hnix.
pandoc: install man pages from pandoc-cli tarball
The pandoc man pages moved from pandoc to pandoc-cli, so we need to
install them elsewhere. The install script for this was emitted by
cabal2nix which we now stop doing for pandoc >= 3.1.10 (so
haskellPackages.pandoc still has man pages). Instead we manually add an
override where it matters to us, namely
pkgs.pandoc (haskellPackages.pandoc-cli is lacking them now, not sure if
we need to care).
This commit has been generated by maintainers/scripts/haskell/update-stackage.sh
and maintainers/scripts/haskell/regenerate-hackage-packages.sh.
Add capability to update to an out of date solver in update-stackage.sh.
This reverts commit 2e7f09c390.
Reason for revert: Due to all-cabal-hashes not updating, we can't at the
moment get a more up to date hackage database the normal way. Let's
revert to the old state, so we can keep working on what we have until a
more up to date snapshot is available.
We're opting for the strategy of providing the most up to date version
llvm-ffi supports which works out well enough, as nixpkgs also tries to
be quite up to date with its LLVM version (and also uses LLVM 16 as the
default).
Files like `pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix`
assume `ghc` always has an `llvmPackages` attribue. Let's expose `null`
value from `ghcjs` to allow it's propagation.
This fixes package evaluation for `ghcjs` packages.
In https://github.com/NixOS/nixpkgs/pull/278074 I removed `exception`
completely. But `nixpkgs` has a version of `exceptions we could use.
Let's enable that instead.
Co-authored-by: Dennis Gosnell <cdep.illabout@gmail.com>