cabal2nix v2.19.0 Release Notes
-
Note that some of the API has also changed in a breaking โฌ๏ธ manner because of the upgrade to
distribution-nixpkgs1.7.0, ๐ see #506.- ๐ Only use
hpackwhen building if no cabal file is found for the package to process. See also #508. - ๐
hackage2nixnow supports arbitrary Nix-style platform tuples inunsupported-platforms(including the newaarch64-darwin) as well as nixpkgs platform groups which are denoted as e. g.platforms.darwinand can be used instead of platform tuples. See also #506. API breaking change: TheIsStringinstance forPlatforminDistribution.Nixpkgs.Haskell.OrphanInstanceshas been removed. - ๐ง The new
hackage2nixsupported-platformsconfiguration field allows prescribing a specific list of platforms to set in the package'splatformsmeta attribute.unsupported-platformsare now translated tobadPlatformsinstead of being subtracted fromplatforms. See also #506 and #560. API Breaking Change forDistribution.Nixpkgs.Haskell.FromCabal.Configuration. cabal2nixwill no longer emit a dependency onwebkitgtk24x-gtk{2,3}if it detects the older 3.0 API of WebKit being used. Nixpkgs hasn't contained this package for a few years now due to security vulnerabilities and the packages still using it on Hackage are unmaintained. If you have a legacy project built with an old version of nixpkgs, either don't upgradecabal2nixor emulate the old behavior using overrides. See also #521.- If the input cabal file declares just a single executable, the
mainProgrammeta attribute will be set in the resulting Nix expression. See also #506 and #557. - If
cabal2nix(orhackage2nix) doesn't recognize the license of a package, it'll still assume that it's free and enable building on Hydra (i. e. use the default value ofhydraPlatforms). This is done because Hackage requires uploaded packages to be open source. You may need to keep this change in mind, however, if you usecabal2nixfor packaging unfree software. See also #520.isFreeLicensehas changed semantically as a result. ๐จ Argument parsing logic in
cabal2nixhas been refactored in #544. API breaking change for the following modules:Cabal2nixDistribution.Nixpkgs.FetchDistribution.Nixpkgs.Haskell.Derivation(removed instance)Distribution.Nixpkgs.Haskell.PackageSourceSpec
โก๏ธ Update handling of Lua bindings to reflect current state upstream. See #527 and #547.
- ๐ Only use