Loading pkgs/development/python-modules/blackrenderer/default.nix 0 → 100644 +61 −0 Original line number Diff line number Diff line { lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, setuptools, setuptools-scm, fonttools, uharfbuzz, pycairo, pillow, }: buildPythonPackage rec { pname = "blackrenderer"; version = "0.6.0"; pyproject = true; src = fetchFromGitHub { owner = "BlackFoundryCom"; repo = "black-renderer"; rev = "refs/tags/v${version}"; hash = "sha256-b2W0M32Y4HUyxObjvh0yMUBe5gfcSDXnw1GfhW7hoZk="; }; build-system = [ setuptools setuptools-scm ]; dependencies = [ fonttools uharfbuzz ]; optional-dependencies = { cairo = [ pycairo ]; }; nativeCheckInputs = [ pytestCheckHook pillow ]; disabledTestPaths = [ # Wants None existing fonts "Tests/test_mainprog.py" "Tests/test_glyph_render.py" ]; pythonImportsCheck = [ "blackrenderer" ]; meta = { description = "Renderer for OpenType COLR fonts, with multiple backends"; homepage = "https://github.com/BlackFoundryCom/black-renderer"; changelog = "https://github.com/BlackFoundryCom/black-renderer/releases/tag/v${version}"; license = lib.licenses.asl20; mainProgram = "blackrenderer"; maintainers = with lib.maintainers; [ jopejoe1 ]; }; } pkgs/applications/version-management/bump2version/default.nix→pkgs/development/python-modules/bump2version/default.nix +15 −9 Original line number Diff line number Diff line { lib , buildPythonApplication , fetchFromGitHub , pytestCheckHook , pythonOlder , testfixtures { lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, pythonOlder, setuptools, testfixtures, }: buildPythonApplication rec { buildPythonPackage rec { pname = "bump2version"; version = "1.0.1"; pyproject = true; disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "c4urself"; repo = pname; rev = "v${version}"; repo = "bump2version"; rev = "refs/tags/v${version}"; sha256 = "sha256-j6HKi3jTwSgGBrA8PCJJNg+yQqRMo1aqaLgPGf4KAKU="; }; build-system = [ setuptools ]; nativeCheckInputs = [ pytestCheckHook testfixtures Loading @@ -40,6 +45,7 @@ buildPythonApplication rec { all version strings in your source code by the correct increment. ''; homepage = "https://github.com/c4urself/bump2version"; changelog = "https://github.com/c4urself/bump2version/blob/v${version}/CHANGELOG.md"; license = licenses.mit; maintainers = with maintainers; [ jefflabonte ]; }; Loading pkgs/development/python-modules/bumpfontversion/default.nix 0 → 100644 +53 −0 Original line number Diff line number Diff line { lib, buildPythonPackage, fetchFromGitHub, pythonRelaxDepsHook, poetry-core, fonttools, openstep-plist, ufolib2, glyphslib, bump2version, }: buildPythonPackage rec { pname = "bumpfontversion"; version = "0.4.0"; pyproject = true; src = fetchFromGitHub { owner = "simoncozens"; repo = "bumpfontversion"; rev = "refs/tags/v${version}"; hash = "sha256-qcKZGv/KeeSRBq4SdnuZlurp0CUs40iEQjw9/1LltUg="; }; postPatch = '' substituteInPlace pyproject.toml \ --replace-fail 'poetry>=' 'poetry-core>=' \ --replace-fail 'poetry.masonry.api' 'poetry.core.masonry.api' ''; nativeBuildInputs = [ pythonRelaxDepsHook ]; pythonRelaxDeps = [ "glyphslib" ]; build-system = [ poetry-core ]; dependencies = [ fonttools openstep-plist ufolib2 glyphslib bump2version ]; meta = { description = "Version-bump your font sources"; homepage = "https://github.com/simoncozens/bumpfontversion"; license = lib.licenses.asl20; mainProgram = "bumpfontversion"; maintainers = with lib.maintainers; [ jopejoe1 ]; }; } pkgs/development/python-modules/diffenator2/default.nix 0 → 100644 +95 −0 Original line number Diff line number Diff line { lib, buildPythonPackage, fetchFromGitHub, pythonRelaxDepsHook, pytestCheckHook, poetry-core, poetry-dynamic-versioning, blackrenderer, fonttools, freetype-py, gflanguages, glyphsets, jinja2, ninja, pillow, protobuf, pyahocorasick, python-bidi, selenium, tqdm, uharfbuzz, unicodedata2, youseedee, numpy, }: buildPythonPackage rec { pname = "diffenator2"; version = "0.4.3"; pyproject = true; src = fetchFromGitHub { owner = "googlefonts"; repo = "diffenator2"; rev = "refs/tags/v${version}"; hash = "sha256-zeNcNR14ieY6Inp4kOwIPXd6S+/wFdMFp6wbiqgB/iA="; }; nativeBuildInputs = [ pythonRelaxDepsHook ]; pythonRelaxDeps = [ "protobuf" ]; build-system = [ poetry-core poetry-dynamic-versioning ]; dependencies = [ blackrenderer fonttools freetype-py gflanguages glyphsets jinja2 ninja pillow protobuf pyahocorasick python-bidi selenium tqdm uharfbuzz unicodedata2 youseedee numpy ]; nativeCheckInputs = [ pytestCheckHook ]; disabledTests = [ # requires internet "test_download_google_fonts_family_to_file" "test_download_google_fonts_family_to_bytes" "test_download_google_fonts_family_not_existing" "test_download_latest_github_release" ]; disabledTestPaths = [ # Want the files downloaded by the tests above "tests/test_functional.py" "tests/test_html.py" "tests/test_matcher.py" "tests/test_font.py" ]; meta = { description = "Font comparison tool that will not stop until your fonts are exhaustively compared"; homepage = "https://github.com/googlefonts/diffenator2"; changelog = "https://github.com/googlefonts/diffenator2/releases/tag/v${version}"; license = lib.licenses.asl20; mainProgram = "diffenator2"; maintainers = with lib.maintainers; [ jopejoe1 ]; }; } pkgs/development/python-modules/gftools/default.nix 0 → 100644 +207 −0 Original line number Diff line number Diff line { lib, fetchFromGitHub, buildPythonPackage, pytestCheckHook, setuptools, setuptools-scm, absl-py, afdko, axisregistry, babelfont, beautifulsoup4, black, brotli, bumpfontversion, coreutils, diffenator2, font-v, fontbakery, fontfeatures, fontmake, fonttools, gflanguages, gfsubsets, glyphsets, glyphslib, harfbuzz, jinja2, nanoemoji, networkx, ninja, opentype-feature-freezer, ots-python, packaging, paintcompiler, pillow, protobuf, pycairo, pygit2, pygithub, pytest, pyyaml, requests, rich, ruamel-yaml, skia-pathops, statmake, strictyaml, tabulate, ttfautohint-py, ufomerge, unidecode, vharfbuzz, vttlib, python, }: let fontmake' = python.withPackages (ps: [ ps.fontmake ] ++ ps.fontmake.optional-dependencies.json); fonttools' = python.withPackages (ps: [ ps.fonttools ] ++ ps.fonttools.optional-dependencies.ufo); in buildPythonPackage rec { pname = "gftools"; version = "0.9.68"; pyproject = true; src = fetchFromGitHub { owner = "googlefonts"; repo = "gftools"; rev = "refs/tags/v${version}"; hash = "sha256-xdpfRCtZDxRmrGodXUg8J0T5l5gd7Mvl290BXwNLzvY="; }; postPatch = '' substituteInPlace \ Lib/gftools/builder/operations/{buildTTF,glyphs2ds,buildVariable,buildOTF}.py \ --replace-fail '"fontmake' '"${lib.getExe' fontmake' "fontmake"}' substituteInPlace \ Lib/gftools/builder/operations/instantiateUfo.py \ --replace-fail "'fontmake" "'${lib.getExe' fontmake' "fontmake"}" substituteInPlace \ Lib/gftools/builder/operations/{compress,subspace}.py \ --replace-fail '"fonttools' '"${lib.getExe' fonttools' "fonttools"}' substituteInPlace \ Lib/gftools/builder/operations/hbsubset.py \ --replace-fail '"pyftsubset"' '"${lib.getExe' fonttools' "pyftsubset"}"' \ --replace-fail '"hb-subset"' '"${lib.getExe' harfbuzz "hb-subset"}"' substituteInPlace \ Lib/gftools/builder/operations/autohintOTF.py \ --replace-fail '"otfautohint' '"${lib.getExe' afdko "otfautohint"}' substituteInPlace \ Lib/gftools/builder/operations/paintcompiler.py \ --replace-fail '"paintcompiler' '"${lib.getExe paintcompiler}' substituteInPlace \ Lib/gftools/builder/operations/featureFreeze.py \ --replace-fail '"pyftfeatfreeze' '"${lib.getExe opentype-feature-freezer}' substituteInPlace \ Lib/gftools/builder/operations/copy.py \ --replace-fail '"cp' '"${lib.getExe' coreutils "cp"}' substituteInPlace \ Lib/gftools/builder/operations/{fix,remap,autohint,buildStat,addSubset,remapLayout,buildVTT}.py \ --replace-fail '"gftools' '"${placeholder "out"}/bin/gftools' substituteInPlace \ Lib/gftools/builder/operations/rename.py \ --replace-fail "'gftools" "'${placeholder "out"}t/bin/gftools" ''; pythonRelaxDeps = [ "protobuf" "pygit2" ]; build-system = [ setuptools setuptools-scm ]; dependencies = [ absl-py afdko axisregistry babelfont beautifulsoup4 brotli bumpfontversion font-v fontfeatures fontmake fonttools gflanguages gfsubsets glyphsets glyphslib jinja2 nanoemoji networkx ninja ots-python packaging pillow protobuf pygit2 pygithub pyyaml requests rich ruamel-yaml setuptools skia-pathops statmake strictyaml tabulate ttfautohint-py ufomerge unidecode vharfbuzz vttlib ] ++ fonttools.optional-dependencies.ufo ++ fontmake.optional-dependencies.json; optional-dependencies = { qa = [ diffenator2 fontbakery pycairo ]; test = [ black pytest ]; }; nativeCheckInputs = [ pytestCheckHook ]; disabledTestPaths = [ # Wants none exsiting module "bin/test_args.py" # Requires internet "tests/push/test_items.py" "tests/test_gfgithub.py" "tests/test_usage.py" "tests/push/test_servers.py" # Can't find directory "tests/test_builder.py" "tests/test_dependencies.py" "tests/test_fix.py" ]; pythonImportsCheck = [ "gftools" ]; meta = with lib; { description = "Misc tools for working with the Google Fonts library"; homepage = "https://github.com/googlefonts/gftools"; changelog = "https://github.com/googlefonts/gftools/releases/tag/v${version}"; license = licenses.asl20; mainProgram = "gftools"; maintainers = with maintainers; [ jopejoe1 ]; }; } Loading
pkgs/development/python-modules/blackrenderer/default.nix 0 → 100644 +61 −0 Original line number Diff line number Diff line { lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, setuptools, setuptools-scm, fonttools, uharfbuzz, pycairo, pillow, }: buildPythonPackage rec { pname = "blackrenderer"; version = "0.6.0"; pyproject = true; src = fetchFromGitHub { owner = "BlackFoundryCom"; repo = "black-renderer"; rev = "refs/tags/v${version}"; hash = "sha256-b2W0M32Y4HUyxObjvh0yMUBe5gfcSDXnw1GfhW7hoZk="; }; build-system = [ setuptools setuptools-scm ]; dependencies = [ fonttools uharfbuzz ]; optional-dependencies = { cairo = [ pycairo ]; }; nativeCheckInputs = [ pytestCheckHook pillow ]; disabledTestPaths = [ # Wants None existing fonts "Tests/test_mainprog.py" "Tests/test_glyph_render.py" ]; pythonImportsCheck = [ "blackrenderer" ]; meta = { description = "Renderer for OpenType COLR fonts, with multiple backends"; homepage = "https://github.com/BlackFoundryCom/black-renderer"; changelog = "https://github.com/BlackFoundryCom/black-renderer/releases/tag/v${version}"; license = lib.licenses.asl20; mainProgram = "blackrenderer"; maintainers = with lib.maintainers; [ jopejoe1 ]; }; }
pkgs/applications/version-management/bump2version/default.nix→pkgs/development/python-modules/bump2version/default.nix +15 −9 Original line number Diff line number Diff line { lib , buildPythonApplication , fetchFromGitHub , pytestCheckHook , pythonOlder , testfixtures { lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, pythonOlder, setuptools, testfixtures, }: buildPythonApplication rec { buildPythonPackage rec { pname = "bump2version"; version = "1.0.1"; pyproject = true; disabled = pythonOlder "3.6"; src = fetchFromGitHub { owner = "c4urself"; repo = pname; rev = "v${version}"; repo = "bump2version"; rev = "refs/tags/v${version}"; sha256 = "sha256-j6HKi3jTwSgGBrA8PCJJNg+yQqRMo1aqaLgPGf4KAKU="; }; build-system = [ setuptools ]; nativeCheckInputs = [ pytestCheckHook testfixtures Loading @@ -40,6 +45,7 @@ buildPythonApplication rec { all version strings in your source code by the correct increment. ''; homepage = "https://github.com/c4urself/bump2version"; changelog = "https://github.com/c4urself/bump2version/blob/v${version}/CHANGELOG.md"; license = licenses.mit; maintainers = with maintainers; [ jefflabonte ]; }; Loading
pkgs/development/python-modules/bumpfontversion/default.nix 0 → 100644 +53 −0 Original line number Diff line number Diff line { lib, buildPythonPackage, fetchFromGitHub, pythonRelaxDepsHook, poetry-core, fonttools, openstep-plist, ufolib2, glyphslib, bump2version, }: buildPythonPackage rec { pname = "bumpfontversion"; version = "0.4.0"; pyproject = true; src = fetchFromGitHub { owner = "simoncozens"; repo = "bumpfontversion"; rev = "refs/tags/v${version}"; hash = "sha256-qcKZGv/KeeSRBq4SdnuZlurp0CUs40iEQjw9/1LltUg="; }; postPatch = '' substituteInPlace pyproject.toml \ --replace-fail 'poetry>=' 'poetry-core>=' \ --replace-fail 'poetry.masonry.api' 'poetry.core.masonry.api' ''; nativeBuildInputs = [ pythonRelaxDepsHook ]; pythonRelaxDeps = [ "glyphslib" ]; build-system = [ poetry-core ]; dependencies = [ fonttools openstep-plist ufolib2 glyphslib bump2version ]; meta = { description = "Version-bump your font sources"; homepage = "https://github.com/simoncozens/bumpfontversion"; license = lib.licenses.asl20; mainProgram = "bumpfontversion"; maintainers = with lib.maintainers; [ jopejoe1 ]; }; }
pkgs/development/python-modules/diffenator2/default.nix 0 → 100644 +95 −0 Original line number Diff line number Diff line { lib, buildPythonPackage, fetchFromGitHub, pythonRelaxDepsHook, pytestCheckHook, poetry-core, poetry-dynamic-versioning, blackrenderer, fonttools, freetype-py, gflanguages, glyphsets, jinja2, ninja, pillow, protobuf, pyahocorasick, python-bidi, selenium, tqdm, uharfbuzz, unicodedata2, youseedee, numpy, }: buildPythonPackage rec { pname = "diffenator2"; version = "0.4.3"; pyproject = true; src = fetchFromGitHub { owner = "googlefonts"; repo = "diffenator2"; rev = "refs/tags/v${version}"; hash = "sha256-zeNcNR14ieY6Inp4kOwIPXd6S+/wFdMFp6wbiqgB/iA="; }; nativeBuildInputs = [ pythonRelaxDepsHook ]; pythonRelaxDeps = [ "protobuf" ]; build-system = [ poetry-core poetry-dynamic-versioning ]; dependencies = [ blackrenderer fonttools freetype-py gflanguages glyphsets jinja2 ninja pillow protobuf pyahocorasick python-bidi selenium tqdm uharfbuzz unicodedata2 youseedee numpy ]; nativeCheckInputs = [ pytestCheckHook ]; disabledTests = [ # requires internet "test_download_google_fonts_family_to_file" "test_download_google_fonts_family_to_bytes" "test_download_google_fonts_family_not_existing" "test_download_latest_github_release" ]; disabledTestPaths = [ # Want the files downloaded by the tests above "tests/test_functional.py" "tests/test_html.py" "tests/test_matcher.py" "tests/test_font.py" ]; meta = { description = "Font comparison tool that will not stop until your fonts are exhaustively compared"; homepage = "https://github.com/googlefonts/diffenator2"; changelog = "https://github.com/googlefonts/diffenator2/releases/tag/v${version}"; license = lib.licenses.asl20; mainProgram = "diffenator2"; maintainers = with lib.maintainers; [ jopejoe1 ]; }; }
pkgs/development/python-modules/gftools/default.nix 0 → 100644 +207 −0 Original line number Diff line number Diff line { lib, fetchFromGitHub, buildPythonPackage, pytestCheckHook, setuptools, setuptools-scm, absl-py, afdko, axisregistry, babelfont, beautifulsoup4, black, brotli, bumpfontversion, coreutils, diffenator2, font-v, fontbakery, fontfeatures, fontmake, fonttools, gflanguages, gfsubsets, glyphsets, glyphslib, harfbuzz, jinja2, nanoemoji, networkx, ninja, opentype-feature-freezer, ots-python, packaging, paintcompiler, pillow, protobuf, pycairo, pygit2, pygithub, pytest, pyyaml, requests, rich, ruamel-yaml, skia-pathops, statmake, strictyaml, tabulate, ttfautohint-py, ufomerge, unidecode, vharfbuzz, vttlib, python, }: let fontmake' = python.withPackages (ps: [ ps.fontmake ] ++ ps.fontmake.optional-dependencies.json); fonttools' = python.withPackages (ps: [ ps.fonttools ] ++ ps.fonttools.optional-dependencies.ufo); in buildPythonPackage rec { pname = "gftools"; version = "0.9.68"; pyproject = true; src = fetchFromGitHub { owner = "googlefonts"; repo = "gftools"; rev = "refs/tags/v${version}"; hash = "sha256-xdpfRCtZDxRmrGodXUg8J0T5l5gd7Mvl290BXwNLzvY="; }; postPatch = '' substituteInPlace \ Lib/gftools/builder/operations/{buildTTF,glyphs2ds,buildVariable,buildOTF}.py \ --replace-fail '"fontmake' '"${lib.getExe' fontmake' "fontmake"}' substituteInPlace \ Lib/gftools/builder/operations/instantiateUfo.py \ --replace-fail "'fontmake" "'${lib.getExe' fontmake' "fontmake"}" substituteInPlace \ Lib/gftools/builder/operations/{compress,subspace}.py \ --replace-fail '"fonttools' '"${lib.getExe' fonttools' "fonttools"}' substituteInPlace \ Lib/gftools/builder/operations/hbsubset.py \ --replace-fail '"pyftsubset"' '"${lib.getExe' fonttools' "pyftsubset"}"' \ --replace-fail '"hb-subset"' '"${lib.getExe' harfbuzz "hb-subset"}"' substituteInPlace \ Lib/gftools/builder/operations/autohintOTF.py \ --replace-fail '"otfautohint' '"${lib.getExe' afdko "otfautohint"}' substituteInPlace \ Lib/gftools/builder/operations/paintcompiler.py \ --replace-fail '"paintcompiler' '"${lib.getExe paintcompiler}' substituteInPlace \ Lib/gftools/builder/operations/featureFreeze.py \ --replace-fail '"pyftfeatfreeze' '"${lib.getExe opentype-feature-freezer}' substituteInPlace \ Lib/gftools/builder/operations/copy.py \ --replace-fail '"cp' '"${lib.getExe' coreutils "cp"}' substituteInPlace \ Lib/gftools/builder/operations/{fix,remap,autohint,buildStat,addSubset,remapLayout,buildVTT}.py \ --replace-fail '"gftools' '"${placeholder "out"}/bin/gftools' substituteInPlace \ Lib/gftools/builder/operations/rename.py \ --replace-fail "'gftools" "'${placeholder "out"}t/bin/gftools" ''; pythonRelaxDeps = [ "protobuf" "pygit2" ]; build-system = [ setuptools setuptools-scm ]; dependencies = [ absl-py afdko axisregistry babelfont beautifulsoup4 brotli bumpfontversion font-v fontfeatures fontmake fonttools gflanguages gfsubsets glyphsets glyphslib jinja2 nanoemoji networkx ninja ots-python packaging pillow protobuf pygit2 pygithub pyyaml requests rich ruamel-yaml setuptools skia-pathops statmake strictyaml tabulate ttfautohint-py ufomerge unidecode vharfbuzz vttlib ] ++ fonttools.optional-dependencies.ufo ++ fontmake.optional-dependencies.json; optional-dependencies = { qa = [ diffenator2 fontbakery pycairo ]; test = [ black pytest ]; }; nativeCheckInputs = [ pytestCheckHook ]; disabledTestPaths = [ # Wants none exsiting module "bin/test_args.py" # Requires internet "tests/push/test_items.py" "tests/test_gfgithub.py" "tests/test_usage.py" "tests/push/test_servers.py" # Can't find directory "tests/test_builder.py" "tests/test_dependencies.py" "tests/test_fix.py" ]; pythonImportsCheck = [ "gftools" ]; meta = with lib; { description = "Misc tools for working with the Google Fonts library"; homepage = "https://github.com/googlefonts/gftools"; changelog = "https://github.com/googlefonts/gftools/releases/tag/v${version}"; license = licenses.asl20; mainProgram = "gftools"; maintainers = with maintainers; [ jopejoe1 ]; }; }