mirror of
https://github.com/ilyakooo0/haskell.nix.git
synced 2024-10-06 04:17:18 +03:00
07df700531
* Add parser combinators to parse SPDX license expressions The most important parser is `compoundExpression` it parses any SPDX license expression into a list of SPDX simple-expressions. The rationale is Nixpkgs' license metadata isn't capable of distinguishing between the AND and OR relationships. License exceptions aren't currently taken into account. * Add tests for the SPDX parser combinators I simply added a file with expressions that are expected to fail to parse or parse successfully. * Add the SPDX license list The SPDX license list as attrsets following the nixpkgs lib.licenses convention. This uses fetchurl which is not ideal because it's not available during pure evaluation. It does not yet include the SPDX exceptions list. * Refactor cabal-licenses.nix to use spdx/licenses.nix The handling of the generic licenses is undecided still. Some have been removed because they have better official identifiers. * Refactor license mapping in builders The common code in the comp- and setup-builders has been extracted and refactored to use the SPDX expression parser. * Use spdx-license-list-data from nixpkgs This conveniently solves the impurity problem with using fetchurl : ) I'm not sure threading `pkgs` through everything to get access to the spdx license list package is the right way to go about this. * hscolour to "LGPL-2.1-only" and remove "LGPL" * Use evalPackages for spdx and move shim to overlay * Better fix for LGPL packages. Co-authored-by: Hamish Mackenzie <Hamish.Mackenzie@iohk.io> |
||
---|---|---|
.. | ||
cabal.nix | ||
licenses.nix | ||
parser.nix | ||
test.nix |