Nixpkgs marking things as broken
is often a bounds issue, and if the package has since been fixed, you can PR .../configuration-hackage2nix/broken.yaml
to unmark it as broken for everyone. PR the haskell-updates
branch, because they batch regenerations of hackage2nix
to avoid too many rebuilds on the main branch.
An easy way to test if a package could be unmarked as broken is to run a command like NIXPKGS_ALLOW_BROKEN=1 nix-build --no-link -A haskellPackages.binary-bits
:
-
binary-bits
fails to build because its base
bound is too tight. If it can be raised you can fix the package and/or ask for a metadata revision on Hackage. The function nixpkgs.haskell.lib.doJailbreak
will also remove many bounds, but in this case binary-bits
fails to compile because it assumes fail
is a member of class Monad
.
-
binary-strict
has bounds issues, and jailbreaking it fails because of missing ByteString
-related functions; I suspect it was never updated.
I don’t know what packages you’d actually use for this, but I hope the nixpkgs/haskell information is at least somewhat useful.