diff options
Diffstat (limited to 'pkgs/development/python-modules/ufolib2/default.nix')
-rw-r--r-- | pkgs/development/python-modules/ufolib2/default.nix | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/pkgs/development/python-modules/ufolib2/default.nix b/pkgs/development/python-modules/ufolib2/default.nix new file mode 100644 index 000000000000..5712b150569e --- /dev/null +++ b/pkgs/development/python-modules/ufolib2/default.nix @@ -0,0 +1,55 @@ +{ lib +, buildPythonPackage +, fetchPypi +, attrs +, fonttools +, pytestCheckHook +, setuptools-scm + +# optionals +, cattrs +, lxml +, orjson +, msgpack +}: + +buildPythonPackage rec { + pname = "ufolib2"; + version = "0.16.0"; + format = "pyproject"; + + src = fetchPypi { + pname = "ufoLib2"; + inherit version; + hash = "sha256-SfDcf3LMrP5/rv4NU9N5cdRWZNiwVj7zaVb6e/pVor0="; + }; + + nativeBuildInputs = [ + setuptools-scm + ]; + + propagatedBuildInputs = [ + attrs + fonttools + ] ++ fonttools.optional-dependencies.ufo; + + passthru.optional-dependencies = { + lxml = [ lxml ]; + converters = [ cattrs ]; + json = [ cattrs orjson ]; + msgpack = [ cattrs msgpack ]; + }; + + nativeCheckInputs = [ + pytestCheckHook + ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies); + + pythonImportsCheck = [ "ufoLib2" ]; + + meta = with lib; { + description = "Library to deal with UFO font sources"; + homepage = "https://github.com/fonttools/ufoLib2"; + license = licenses.mit; + maintainers = with maintainers; [ ]; + }; +} |