32 opentype-feature-freezer,
59 fontmake' = python.withPackages (ps: [ ps.fontmake ] ++ ps.fontmake.optional-dependencies.json);
60 fonttools' = python.withPackages (ps: [ ps.fonttools ] ++ ps.fonttools.optional-dependencies.ufo);
62 buildPythonPackage rec {
67 src = fetchFromGitHub {
68 owner = "googlefonts";
70 rev = "refs/tags/v${version}";
71 hash = "sha256-AIE2b2BgW4LYtnS76t4vu6B2POmqKgMzLLqRs9K40Gg=";
76 Lib/gftools/builder/operations/{buildTTF,glyphs2ds,buildVariable,buildOTF}.py \
77 --replace-fail '"fontmake' '"${lib.getExe' fontmake' "fontmake"}'
80 Lib/gftools/builder/operations/instantiateUfo.py \
81 --replace-fail "'fontmake" "'${lib.getExe' fontmake' "fontmake"}"
84 Lib/gftools/builder/operations/{compress,subspace}.py \
85 --replace-fail '"fonttools' '"${lib.getExe' fonttools' "fonttools"}'
88 Lib/gftools/builder/operations/hbsubset.py \
89 --replace-fail '"pyftsubset"' '"${lib.getExe' fonttools' "pyftsubset"}"' \
90 --replace-fail '"hb-subset"' '"${lib.getExe' harfbuzz "hb-subset"}"'
93 Lib/gftools/builder/operations/autohintOTF.py \
94 --replace-fail '"otfautohint' '"${lib.getExe' afdko "otfautohint"}'
97 Lib/gftools/builder/operations/paintcompiler.py \
98 --replace-fail '"paintcompiler' '"${lib.getExe paintcompiler}'
101 Lib/gftools/builder/operations/featureFreeze.py \
102 --replace-fail '"pyftfeatfreeze' '"${lib.getExe opentype-feature-freezer}'
105 Lib/gftools/builder/operations/copy.py \
106 --replace-fail '"cp' '"${lib.getExe' coreutils "cp"}'
109 Lib/gftools/builder/operations/{fix,remap,autohint,buildStat,addSubset,remapLayout,buildVTT}.py \
110 --replace-fail '"gftools' '"${placeholder "out"}/bin/gftools'
113 Lib/gftools/builder/operations/rename.py \
114 --replace-fail "'gftools" "'${placeholder "out"}t/bin/gftools"
117 env.PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION = "python";
169 ] ++ fonttools.optional-dependencies.ufo ++ fontmake.optional-dependencies.json;
171 optional-dependencies = {
183 nativeCheckInputs = [ pytestCheckHook ];
185 disabledTestPaths = [
186 # Wants none exsiting module
189 "tests/push/test_items.py"
190 "tests/test_gfgithub.py"
191 "tests/test_usage.py"
192 "tests/push/test_servers.py"
193 # Can't find directory
194 "tests/test_builder.py"
195 "tests/test_dependencies.py"
199 pythonImportsCheck = [ "gftools" ];
202 description = "Misc tools for working with the Google Fonts library";
203 homepage = "https://github.com/googlefonts/gftools";
204 changelog = "https://github.com/googlefonts/gftools/releases/tag/v${version}";
205 license = licenses.asl20;
206 mainProgram = "gftools";
207 maintainers = with maintainers; [ jopejoe1 ];