This removes (some of) the special casing for git-annex which we need to
replicate using overrides. As a first step, we recreate an equivalent
set of overrides to the former gitAnnexHook, the only difference being
that we use the default installPhase over a custom implementation.
A big flaw of the current expression (which was shared by the previous
iteration) is that they ignore the testFlags argument. Unfortunately, we
can't do that without changing the generic builder implementation.
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).
With this hackage2nix knows that libcrypt can no longer be found in
glibc, but needs to be taken from libxcrypt. We can trim down the
overrides accordingly, leaving only the test failure workaround for
crypt-sha512.
We split configuration-hackage2nix.yaml into multiple files. We bump
cabal2nix-unstable to get support for multiple config files in
hackage2nix.
* The file main.yaml is only supposed to be edited by humans.
* The file stackage.yaml is only supposed to be updated by the
update-stackage.sh
* The file broken.yaml can be edited by humans, but probably future
helpers will want to insert broken packages into this file based on
hydra reports.
* The file transitive-broken.yaml is newly introduced to be generated
by regenerate-transitive-broken-packages.sh
regenerate-transitive-broken-packages.sh makes a nix query (in
transitive-broken-packages.nix) which evaluates all haskellPackages
once with and once without "allowBroken" this way it get's a list of
packages which are broken by some transitive dependency, but does not
disable packages which have eval errors not caused by a broken package.