Описание проблемы
Один из импортированных модулей - только macOS?
Ожидаемое поведение
Может быть, вместо этого можно было бы запустить печать на не macOS?
Воспроизводить
Сделайте это в Linux
Окружающая среда (просьба заполнить следующую информацию):
Спасибо, что нашли время написать вопрос, @alexmyczko!
Быстрый вопрос: вы полностью не можете запустить сборку из-за зависимости только от Mac, или вы не можете использовать параметр --pync
для получения уведомления о завершении сборки? Я попытался сделать это опцией, чтобы это не мешало сборке в других ОС, но, возможно, я сделал это неправильно.
ну с чего начать. Я пытаюсь построить без venv, но тогда существует множество требований, которые не упаковываются для сборки. Теперь я пытаюсь создать его с помощью ufo2otg / ufo2glyphs и / или fontmake, но и там тоже не получается (я не хочу создавать часть vf)
Хм, да, это довольно сложный проект. В основном, если честно, я настраиваю его на создание, пока я работаю над завершением.
Есть ли какая-то причина, по которой вы хотите построить это самостоятельно? Есть ли какая-то причина, по которой вы не хотите использовать венв?
есть так много требований, которые не упакованы для сборки
Извините! Пропустил ли я что-нибудь в readme или есть что-то конкретное, что вы могли бы предложить изменить, чтобы облегчить сборку для кого-то в Linux?
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=944202
кто-то просит его для debian, и мы строим все из исходников (если возможно). ubuntu, raspbian получите бесплатную копию.
Хорошо, спасибо за эту деталь!
Подойдут ли для этой цели шрифты в официальных выпусках ?
Теоретически да, но предпочтительные строятся из исходников (и это то, что я тоже хотел бы сделать), если возможно - извините, я еще не ответил на другие вопросы (но постараюсь добраться до этого как можно скорее)
С помощью какого программного обеспечения вы разрабатываете шрифт? У вас случайно нет .glyphs?
Я еще не ответил на другие вопросы (но постараюсь ответить как можно скорее)
Все хорошо, без спешки. Да, я был бы рад, если это сработает для вас, и признателен, если у вас есть какие-либо предложения о том, как я могу улучшить документацию по сборке для пользователей Linux. Мне очень любопытно, будут ли работать venv & requirements ... насколько мне известно, pync - это единственное, что требует macOS, но это совершенно необязательно (для меня это просто удобство, так что я могу работать в многозадачном режиме во время довольно длинной сборки процесс). Насколько мне известно, все остальные зависимости сборки кроссплатформенны.
Если вы хотите сгенерировать файлы woff2, вам, вероятно, потребуется установить woff2_compress отдельно.
С помощью какого программного обеспечения вы разрабатываете шрифт? У вас случайно нет .glyphs?
Я использовал для этого RoboFont, так как предпочитаю формат UFO для управления версиями и некоторые расширения в экосистеме RoboFont. Основная сборка подготавливает чистые исходники (избавляется от глифов, которые являются экспериментами / эскизами), затем использует AFDKO для создания статических шрифтов и FontMake для создания переменного шрифта.
Мне сложно решить, что хуже / лучше, robofonts или fontship / npm: https://github.com/be5invis/Iosevka/issues/715
@alexmyczko Я не уверен, что вы думаете о Fontship, но не бросайте это в одну корзину с npm
(хаос, и не совсем подходит для того, чтобы быть системой сборки для проектов, отличных от JS) или robofonts
(проприетарный). Fontship - это просто удобный инструмент и способ заставить все инструменты сборки с открытым исходным кодом работать вместе, не изобретая каждый раз колесо. Под капотом он просто использует fontmake
, psautomint
и woff2_compress
и многие другие подобные инструменты, связанные вместе с помощью GNU Make для создания целей. Он должен быть достаточно дружественным к философии Debian. Это также еще не совсем подходит для замены этого шрифта. Но почему вы стучитесь в цепочку сборки этого проекта с открытым исходным кодом и открытые исходные коды только потому, что автор работает с этими источниками в Robo Font?
не хотел показаться грубым или случайным, но ваш ответ прояснил несколько вещей, так что спасибо вам за это.
Ага, мое использование RoboFont делает его более дружественным к открытым исходным кодом, чем проект, использующий GlyphsApp (даже если в вашем конкретном случае это немного неудобно - извините, что это так прямо сейчас!).
В любом случае, существуют инструменты, которые могут обрабатывать исходные коды и создавать их.
Я закрываю этот вопрос, но если у вас есть какие-либо нерешенные конкретные вопросы или блокировщики сборки, не стесняйтесь добавлять дополнительные комментарии или открывать новые проблемы с конкретной проблемой.
Спасибо!
Кроме того, я предполагаю, что вы это уже видели, но в readme есть довольно конкретные инструкции по сборке. По сути:
--pync
)version=1.066 # (replace version number)
python build.py --statfiles --version $version
python build.py --static --version $version
Сообщите мне, если у вас есть какие-либо ошибки блокировки из-за Pync, и я могу либо удалить их, либо попытаться убедиться, что они не активированы за пределами сред Mac.
не знаю, чего сейчас не хватает ...
python3 build.py --static --version $version
🏗 Initial OTF building
Traceback (most recent call last):--------------------| 0.0% Complete
File "build.py", line 83, in <module>
build_static(files["cff"], files["ttf"], out)
File "/var/www/debian/fonts-recursive/fonts-recursive-1.066+dfsg/mastering/build_static.py", line 7
59, in build_static
makeSFNT(cff_root, d)
File "/var/www/debian/fonts-recursive/fonts-recursive-1.066+dfsg/mastering/build_static.py", line 6
89, in makeSFNT
run = subprocess.run(args,
File "/usr/lib/python3.8/subprocess.py", line 489, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.8/subprocess.py", line 854, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1702, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'makeotf'
@alexmyczko makeotf
является частью AFDKO, которая указана в файле требований.