Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 fetchFromGitHub,
3 lib,
4 bash,
5 python3Packages,
6}:
7
8python3Packages.buildPythonApplication rec {
9 pname = "nototools";
10 version = "0.2.20";
11 pyproject = true;
12
13 src = fetchFromGitHub {
14 owner = "googlefonts";
15 repo = "nototools";
16 tag = "v${version}";
17 sha256 = "sha256-id4UhyWOFHrtmBZHhnaY2jHDIK0s7rcGBpg4QsBTLKs=";
18 };
19
20 build-system = with python3Packages; [
21 setuptools
22 setuptools-scm
23 ];
24
25 pythonRemoveDeps = [
26 # https://github.com/notofonts/nototools/pull/901
27 "typed-ast"
28 ];
29
30 dependencies = with python3Packages; [
31 afdko
32 appdirs
33 attrs
34 booleanoperations
35 brotlipy
36 click
37 defcon
38 fontmath
39 fontparts
40 fontpens
41 fonttools
42 lxml
43 mutatormath
44 pathspec
45 psautohint
46 pyclipper
47 pytz
48 regex
49 scour
50 toml
51 ufonormalizer
52 ufoprocessor
53 unicodedata2
54 zopfli
55 ];
56
57 nativeCheckInputs = [
58 python3Packages.pillow
59 python3Packages.six
60 bash
61 ];
62
63 checkPhase = ''
64 patchShebangs tests/
65 cd tests
66 rm gpos_diff_test.py # needs ttxn?
67 ./run_tests
68 '';
69
70 postInstall = ''
71 cp -r third_party $out
72 '';
73
74 pythonImportsCheck = [ "nototools" ];
75
76 meta = with lib; {
77 description = "Noto fonts support tools and scripts plus web site generation";
78 homepage = "https://github.com/googlefonts/nototools";
79 license = licenses.asl20;
80 maintainers = [ ];
81 };
82}