Something went wrong. Try again.
What happens if I push all of nixpkgs
Something went wrong. Try again.
1.8 kB · 74 lines
Nix
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475{ lib, buildPythonPackage, fetchFromGitHub, fetchpatch2, pytestCheckHook, fontmath, fonttools, glyphslib, setuptools, setuptools-scm, skia-pathops, ttfautohint-py, ufo2ft, ufolib2,}:
buildPythonPackage rec { pname = "fontmake"; version = "3.10.0"; pyproject = true;
src = fetchFromGitHub { owner = "googlefonts"; repo = "fontmake"; tag = "v${version}"; hash = "sha256-ZlK8QyZ5cIEphFiZXMV/Z5pL9H62X2UwLBtpwLGpUMQ="; };
patches = [ # Update to FontTools 4.55 and glyphsLib 6.9.5 # https://github.com/googlefonts/fontmake/pull/1133 (fetchpatch2 { url = "https://github.com/googlefonts/fontmake/commit/ca96d25faa67638930ddc7f9bd1ab218a76caf22.patch"; includes = [ "tests/test_main.py" ]; hash = "sha256-vz+KeWiGCpUdX5HaXDdyyUCbuMkIylB364j6cD7xR1E="; }) ];
build-system = [ setuptools setuptools-scm ];
dependencies = [ fontmath fonttools glyphslib ufo2ft ufolib2 ] ++ fonttools.optional-dependencies.ufo ++ fonttools.optional-dependencies.lxml ++ fonttools.optional-dependencies.unicode;
optional-dependencies = { pathops = [ skia-pathops ]; autohint = [ ttfautohint-py ]; json = ufolib2.optional-dependencies.json; repacker = fonttools.optional-dependencies.repacker; };
nativeCheckInputs = [ pytestCheckHook ] ++ optional-dependencies.autohint;
pythonImportsCheck = [ "fontmake" ];
meta = { description = "Compiles fonts from various sources (.glyphs, .ufo, designspace) into binaries formats (.otf, .ttf)"; homepage = "https://github.com/googlefonts/fontmake"; changelog = "https://github.com/googlefonts/fontmake/releases/tag/${src.tag}"; license = lib.licenses.asl20; maintainers = [ lib.maintainers.BarinovMaxim ]; };}