mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-04-13 12:38:32 +00:00
python3Packages.notobuilder: init at 0-unstable-2024-08-03 (#333709)
This commit is contained in:
commit
eca2693230
61
pkgs/development/python-modules/blackrenderer/default.nix
Normal file
61
pkgs/development/python-modules/blackrenderer/default.nix
Normal file
@ -0,0 +1,61 @@
|
||||
{
|
||||
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 ];
|
||||
};
|
||||
}
|
@ -1,24 +1,29 @@
|
||||
{ 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
|
||||
@ -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 ];
|
||||
};
|
53
pkgs/development/python-modules/bumpfontversion/default.nix
Normal file
53
pkgs/development/python-modules/bumpfontversion/default.nix
Normal file
@ -0,0 +1,53 @@
|
||||
{
|
||||
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 ];
|
||||
};
|
||||
}
|
95
pkgs/development/python-modules/diffenator2/default.nix
Normal file
95
pkgs/development/python-modules/diffenator2/default.nix
Normal file
@ -0,0 +1,95 @@
|
||||
{
|
||||
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 ];
|
||||
};
|
||||
}
|
207
pkgs/development/python-modules/gftools/default.nix
Normal file
207
pkgs/development/python-modules/gftools/default.nix
Normal file
@ -0,0 +1,207 @@
|
||||
{
|
||||
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 ];
|
||||
};
|
||||
}
|
@ -1,19 +1,38 @@
|
||||
{ lib
|
||||
, python3
|
||||
, fetchFromGitHub
|
||||
, resvg
|
||||
, pngquant
|
||||
{
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
buildPythonPackage,
|
||||
pytestCheckHook,
|
||||
setuptools,
|
||||
setuptools-scm,
|
||||
resvg,
|
||||
pngquant,
|
||||
absl-py,
|
||||
fonttools,
|
||||
lxml,
|
||||
ninja,
|
||||
picosvg,
|
||||
pillow,
|
||||
regex,
|
||||
toml,
|
||||
tomlkit,
|
||||
ufo2ft,
|
||||
ufolib2,
|
||||
zopfli,
|
||||
}:
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "nanoemoji";
|
||||
version = "0.15.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "googlefonts";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
repo = "nanoemoji";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-P/lT0PnjTdYzyttICzszu4OL5kj+X8GHZ8doL3tpXQM=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# this is necessary because the tests clear PATH/PYTHONPATH otherwise
|
||||
./test-pythonpath.patch
|
||||
@ -21,17 +40,23 @@ python3.pkgs.buildPythonApplication rec {
|
||||
./fix-test.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = with python3.pkgs; [
|
||||
build-system = [
|
||||
setuptools
|
||||
setuptools-scm
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pngquant
|
||||
resvg
|
||||
];
|
||||
|
||||
# these two packages are just prebuilt wheels containing the respective binaries
|
||||
pythonRemoveDeps = [ "pngquant-cli" "resvg-cli" ];
|
||||
pythonRemoveDeps = [
|
||||
"pngquant-cli"
|
||||
"resvg-cli"
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
dependencies = [
|
||||
absl-py
|
||||
fonttools
|
||||
lxml
|
||||
@ -46,15 +71,19 @@ python3.pkgs.buildPythonApplication rec {
|
||||
zopfli
|
||||
];
|
||||
|
||||
nativeCheckInputs = with python3.pkgs; [
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
|
||||
ninja
|
||||
picosvg
|
||||
];
|
||||
|
||||
makeWrapperArgs = [
|
||||
"--prefix PATH : ${lib.makeBinPath [ pngquant resvg ]}"
|
||||
"--prefix PATH : ${
|
||||
lib.makeBinPath [
|
||||
pngquant
|
||||
resvg
|
||||
]
|
||||
}"
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
@ -65,6 +94,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||
meta = with lib; {
|
||||
description = "Wee tool to build color fonts";
|
||||
homepage = "https://github.com/googlefonts/nanoemoji";
|
||||
changelog = "https://github.com/googlefonts/nanoemoji/releases/tag/v${version}";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ _999eagle ];
|
||||
};
|
71
pkgs/development/python-modules/notobuilder/default.nix
Normal file
71
pkgs/development/python-modules/notobuilder/default.nix
Normal file
@ -0,0 +1,71 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
unstableGitUpdater,
|
||||
setuptools,
|
||||
setuptools-scm,
|
||||
fonttools,
|
||||
ufomerge,
|
||||
fontmake,
|
||||
glyphslib,
|
||||
ttfautohint-py,
|
||||
ufo2ft,
|
||||
gftools,
|
||||
fontbakery,
|
||||
diffenator2,
|
||||
chevron,
|
||||
sh,
|
||||
ninja,
|
||||
}:
|
||||
|
||||
buildPythonPackage {
|
||||
pname = "notobuilder";
|
||||
version = "0-unstable-2024-08-03";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "notofonts";
|
||||
repo = "notobuilder";
|
||||
rev = "d7bcfc8e5c5ee9b273e7b1eeb2dd6d619da68c33";
|
||||
hash = "sha256-1tdHbJixd1s1grGh0enqXhp+u5TEic6/W88X/f8vagM=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace Lib/notobuilder/__main__.py \
|
||||
--replace-fail '"ninja"' '"${lib.getExe ninja}"'
|
||||
'';
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
setuptools-scm
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
fonttools
|
||||
ufomerge
|
||||
fontmake
|
||||
glyphslib
|
||||
ttfautohint-py
|
||||
ufo2ft
|
||||
gftools
|
||||
fontbakery
|
||||
diffenator2
|
||||
chevron
|
||||
sh
|
||||
] ++ gftools.optional-dependencies.qa;
|
||||
|
||||
pythonImportsCheck = [
|
||||
"notobuilder"
|
||||
"notoqa"
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater { };
|
||||
|
||||
meta = {
|
||||
description = "Python module for building Noto fonts";
|
||||
homepage = "https://github.com/notofonts/notobuilder";
|
||||
license = lib.licenses.unfree;
|
||||
maintainers = with lib.maintainers; [ jopejoe1 ];
|
||||
};
|
||||
}
|
@ -0,0 +1,63 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
unstableGitUpdater,
|
||||
pytestCheckHook,
|
||||
fonttools,
|
||||
poetry-core,
|
||||
configparser,
|
||||
biplist,
|
||||
}:
|
||||
|
||||
buildPythonPackage {
|
||||
pname = "opentype-feature-freezer";
|
||||
version = "0-unstable-2022-07-09";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "twardoch";
|
||||
repo = "fonttools-opentype-feature-freezer";
|
||||
rev = "2ae16853bc724c3e377726f81d9fc661d3445827";
|
||||
hash = "sha256-mIWQF9LTVKxIkwHLCTVK1cOuiaduJyX8pyBZ/0RKIVE=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail poetry.masonry.api poetry.core.masonry.api \
|
||||
--replace-fail "poetry>=" "poetry-core>="
|
||||
'';
|
||||
|
||||
build-system = [
|
||||
poetry-core
|
||||
configparser
|
||||
];
|
||||
|
||||
dependencies = [ fonttools ];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
biplist
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
# Wants to check path outside of nix store
|
||||
"src/opentype_feature_freezer/cli.py"
|
||||
# NameError: name 'defines' is not defined
|
||||
"app/dmgbuild_settings.py"
|
||||
# Missing module
|
||||
"app/OTFeatureFreezer.py"
|
||||
# AttributeError: 'types.SimpleNamespace' object has no attribute 'suffix'
|
||||
"tests/test_rename.py"
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater { };
|
||||
|
||||
meta = {
|
||||
description = "Permanently \"apply\" OpenType features to fonts, by remapping their Unicode assignments";
|
||||
homepage = "https://github.com/twardoch/fonttools-opentype-feature-freezer";
|
||||
license = lib.licenses.asl20;
|
||||
mainProgram = "pyftfeatfreeze";
|
||||
maintainers = with lib.maintainers; [ jopejoe1 ];
|
||||
};
|
||||
}
|
41
pkgs/development/python-modules/paintcompiler/default.nix
Normal file
41
pkgs/development/python-modules/paintcompiler/default.nix
Normal file
@ -0,0 +1,41 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
setuptools,
|
||||
fonttools,
|
||||
black,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "paintcompiler";
|
||||
version = "0.3.4";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "simoncozens";
|
||||
repo = "paintcompiler";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-dmVBQUUyFc71zq8fXBQ4ii/llrGdtUCOponCzSeut6g=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
fonttools
|
||||
black
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"paintcompiler"
|
||||
"paintdecompiler"
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Paint compiler for COLRv1 fonts";
|
||||
homepage = "https://github.com/simoncozens/paintcompiler";
|
||||
license = lib.licenses.asl20;
|
||||
mainProgram = "paintcompiler";
|
||||
maintainers = with lib.maintainers; [ jopejoe1 ];
|
||||
};
|
||||
}
|
59
pkgs/development/python-modules/ufomerge/default.nix
Normal file
59
pkgs/development/python-modules/ufomerge/default.nix
Normal file
@ -0,0 +1,59 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
pythonRelaxDepsHook,
|
||||
pytestCheckHook,
|
||||
setuptools,
|
||||
setuptools-scm,
|
||||
fonttools,
|
||||
fontfeatures,
|
||||
ufolib2,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "ufomerge";
|
||||
version = "1.7.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "googlefonts";
|
||||
repo = "ufomerge";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-0izeb2PeGIYbzzQ+/K0Dz/9fVWFcPizQI39X/EQF5bU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pythonRelaxDepsHook ];
|
||||
|
||||
pythonRelaxDeps = [ "fonttools" ];
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
setuptools-scm
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
fonttools
|
||||
ufolib2
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
fontfeatures
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
# Failing due to fonttools being to old
|
||||
"tests/test_layout.py"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "ufomerge" ];
|
||||
|
||||
meta = {
|
||||
description = "Command line utility and Python library that merges two UFO source format fonts into a single file";
|
||||
homepage = "https://github.com/googlefonts/ufomerge";
|
||||
changelog = "https://github.com/googlefonts/ufomerge/releases/tag/v${version}";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = with lib.maintainers; [ jopejoe1 ];
|
||||
};
|
||||
}
|
51
pkgs/development/python-modules/vttlib/default.nix
Normal file
51
pkgs/development/python-modules/vttlib/default.nix
Normal file
@ -0,0 +1,51 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
pytestCheckHook,
|
||||
setuptools,
|
||||
setuptools-scm,
|
||||
fonttools,
|
||||
pyparsing,
|
||||
ufolib2,
|
||||
ufo2ft,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "vttlib";
|
||||
version = "0.12.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "daltonmaag";
|
||||
repo = "vttLib";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-ChsuzeFRQFDYGlAE4TWzE+et7yGLOfha1VqGcOdayOs=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
setuptools-scm
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
fonttools
|
||||
pyparsing
|
||||
ufolib2
|
||||
];
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytestCheckHook
|
||||
ufo2ft
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "vttLib" ];
|
||||
|
||||
meta = {
|
||||
description = "Dump, merge and compile Visual TrueType data in UFO3 with FontTools";
|
||||
homepage = "https://github.com/daltonmaag/vttLib";
|
||||
changelog = "https://github.com/daltonmaag/vttLib/releases/tag/v${version}";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ jopejoe1 ];
|
||||
};
|
||||
}
|
@ -2116,7 +2116,7 @@ with pkgs;
|
||||
|
||||
bitbucket-server-cli = callPackage ../applications/version-management/bitbucket-server-cli { };
|
||||
|
||||
bump2version = python3Packages.callPackage ../applications/version-management/bump2version { };
|
||||
bump2version = with python3Packages; toPythonApplication bump2version;
|
||||
|
||||
cgit = callPackage ../applications/version-management/cgit { };
|
||||
|
||||
@ -9513,7 +9513,7 @@ with pkgs;
|
||||
pythonPackages = python3Packages;
|
||||
};
|
||||
|
||||
nanoemoji = python3Packages.callPackage ../tools/misc/nanoemoji { };
|
||||
nanoemoji = with python3Packages; toPythonApplication nanoemoji;
|
||||
|
||||
nagelfar = callPackage ../development/tools/nagelfar { };
|
||||
|
||||
|
@ -1671,6 +1671,8 @@ self: super: with self; {
|
||||
|
||||
black-macchiato = callPackage ../development/python-modules/black-macchiato { };
|
||||
|
||||
blackrenderer = callPackage ../development/python-modules/blackrenderer { };
|
||||
|
||||
bleach = callPackage ../development/python-modules/bleach { };
|
||||
|
||||
bleach-allowlist = callPackage ../development/python-modules/bleach-allowlist { };
|
||||
@ -1910,6 +1912,10 @@ self: super: with self; {
|
||||
|
||||
buildcatrust = callPackage ../development/python-modules/buildcatrust { };
|
||||
|
||||
bump2version = callPackage ../development/python-modules/bump2version { };
|
||||
|
||||
bumpfontversion = callPackage ../development/python-modules/bumpfontversion { };
|
||||
|
||||
bumps = callPackage ../development/python-modules/bumps { };
|
||||
|
||||
bunch = callPackage ../development/python-modules/bunch { };
|
||||
@ -3142,6 +3148,8 @@ self: super: with self; {
|
||||
|
||||
diff-match-patch = callPackage ../development/python-modules/diff-match-patch { };
|
||||
|
||||
diffenator2 = callPackage ../development/python-modules/diffenator2 { };
|
||||
|
||||
diffimg = callPackage ../development/python-modules/diffimg { };
|
||||
|
||||
diffsync = callPackage ../development/python-modules/diffsync { };
|
||||
@ -5004,6 +5012,8 @@ self: super: with self; {
|
||||
|
||||
gfsubsets = callPackage ../development/python-modules/gfsubsets { };
|
||||
|
||||
gftools = callPackage ../development/python-modules/gftools { };
|
||||
|
||||
gguf = callPackage ../development/python-modules/gguf { };
|
||||
|
||||
ghapi = callPackage ../development/python-modules/ghapi { };
|
||||
@ -8673,6 +8683,8 @@ self: super: with self; {
|
||||
|
||||
nanobind = callPackage ../development/python-modules/nanobind { };
|
||||
|
||||
nanoemoji = callPackage ../development/python-modules/nanoemoji { };
|
||||
|
||||
nanoid = callPackage ../development/python-modules/nanoid { };
|
||||
|
||||
nanoleaf = callPackage ../development/python-modules/nanoleaf { };
|
||||
@ -8983,6 +8995,8 @@ self: super: with self; {
|
||||
inherit (pkgs) notmuch;
|
||||
};
|
||||
|
||||
notobuilder = callPackage ../development/python-modules/notobuilder { };
|
||||
|
||||
nototools = callPackage ../development/python-modules/nototools { };
|
||||
|
||||
notus-scanner = callPackage ../development/python-modules/notus-scanner { };
|
||||
@ -9510,6 +9524,8 @@ self: super: with self; {
|
||||
paho-mqtt_2 = callPackage ../development/python-modules/paho-mqtt/default.nix { };
|
||||
paho-mqtt = paho-mqtt_1;
|
||||
|
||||
paintcompiler = callPackage ../development/python-modules/paintcompiler { };
|
||||
|
||||
palace = callPackage ../development/python-modules/palace { };
|
||||
|
||||
palettable = callPackage ../development/python-modules/palettable { };
|
||||
@ -9846,6 +9862,8 @@ self: super: with self; {
|
||||
|
||||
openapi-core = callPackage ../development/python-modules/openapi-core { };
|
||||
|
||||
opentype-feature-freezer = callPackage ../development/python-modules/opentype-feature-freezer { };
|
||||
|
||||
openusd = callPackage ../development/python-modules/openusd {
|
||||
alembic = pkgs.alembic;
|
||||
};
|
||||
@ -16797,6 +16815,8 @@ self: super: with self; {
|
||||
|
||||
ufolint = callPackage ../development/python-modules/ufolint { };
|
||||
|
||||
ufomerge = callPackage ../development/python-modules/ufomerge { };
|
||||
|
||||
ufonormalizer = callPackage ../development/python-modules/ufonormalizer { };
|
||||
|
||||
ufoprocessor = callPackage ../development/python-modules/ufoprocessor { };
|
||||
@ -17170,6 +17190,8 @@ self: super: with self; {
|
||||
enablePython = true;
|
||||
});
|
||||
|
||||
vttlib = callPackage ../development/python-modules/vttlib { };
|
||||
|
||||
vulcan-api = callPackage ../development/python-modules/vulcan-api { };
|
||||
|
||||
vultr = callPackage ../development/python-modules/vultr { };
|
||||
|
Loading…
Reference in New Issue
Block a user