1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, fonttools
5, openstep-plist
6, ufoLib2
7, pytestCheckHook
8, unicodedata2
9, setuptools-scm
10, ufonormalizer
11, xmldiff
12, defcon
13, ufo2ft
14, skia-pathops
15}:
16
17buildPythonPackage rec {
18 pname = "glyphslib";
19 version = "6.2.2";
20
21 format = "pyproject";
22
23 src = fetchFromGitHub {
24 owner = "googlefonts";
25 repo = "glyphsLib";
26 rev = "refs/tags/v${version}";
27 hash = "sha256-JY1Gs2RTjp7eCwyK9ZI2OpqExxYR8unt4DcjarXWiZk=";
28 };
29
30 SETUPTOOLS_SCM_PRETEND_VERSION = version;
31
32 nativeBuildInputs = [ setuptools-scm ];
33
34 propagatedBuildInputs = [
35 fonttools
36 openstep-plist
37 ufoLib2
38 unicodedata2
39 ufonormalizer
40 xmldiff
41 defcon
42 ufo2ft
43 skia-pathops
44 ];
45
46 nativeCheckInputs = [ pytestCheckHook ];
47
48 pythonImportsCheck = [ "glyphsLib" ];
49
50 disabledTestPaths = [
51 "tests/builder/designspace_gen_test.py" # this test tries to use non-existent font "CoolFoundry Examplary Serif"
52 "tests/builder/interpolation_test.py" # this test tries to use a font that previous test should made
53 ];
54
55 meta = {
56 description = "Bridge from Glyphs source files (.glyphs) to UFOs and Designspace files via defcon and designspaceLib";
57 homepage = "https://github.com/googlefonts/glyphsLib";
58 license = lib.licenses.asl20;
59 maintainers = [ lib.maintainers.BarinovMaxim ];
60 };
61}
62