Recursive: Construire à partir des sources sous Linux

Créé le 1 nov. 2020  ·  14Commentaires  ·  Source: arrowtype/recursive

Description du problème
L'un des modules importés est uniquement macOS ?

Comportement prévisible
Peut-être qu'une impression sur non macOS pourrait être exécutée à la place ?

Reproduire
Construisez-le sur Linux

Environnement (veuillez compléter les informations suivantes) :

  • OS : Debian GNU/Linux sid sur amd64
  • Navigateur : n/a
  • Polices : dernière version

Tous les 14 commentaires

Merci d'avoir pris le temps d'écrire un problème, @alexmyczko !

Question rapide : êtes-vous complètement incapable d'exécuter la version en raison de la dépendance uniquement pour mac, ou ne pouvez-vous pas utiliser l'option --pync pour recevoir une notification pour les achèvements de la construction ? J'ai essayé d'en faire une option afin que cela ne perturbe pas la construction sur d'autres systèmes d'exploitation, mais je l'ai peut-être mal fait.

bien par où commencer. J'essaie de construire sans venv, mais il y a tellement d'exigences non emballées pour construire. j'essaie maintenant de le faire construire avec ufo2otg/ufo2glyphs et/ou fontmake mais continue d'échouer là aussi (je ne veux pas construire la partie vf)

Hmm, oui, c'est un projet un peu complexe à construire. La plupart du temps, pour être honnête, il est configuré pour moi de construire pendant que je travaille à finir les choses.

Y a-t-il une raison pour laquelle vous voulez le construire vous-même ? Y a-t-il une raison pour laquelle vous voulez éviter d'utiliser venv ?

il y a tellement d'exigences non emballées pour construire

Désolé! Ai-je oublié quelque chose dans le fichier readme, ou y a-t-il quelque chose de spécifique que vous pourriez suggérer d'ajuster pour faciliter la construction pour quelqu'un sur Linux ?

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=944202

quelqu'un le demande pour debian, et nous construisons tout à partir des sources (si possible). Ubuntu, Raspbian obtenez une copie gratuite.

Super, merci pour ce détail !

Les polices des versions officielles pourraient-elles fonctionner à cette fin ?

Théoriquement oui, mais les préférés sont construits à partir de la source (et c'est ce que j'aimerais aussi faire) si possible - désolé de n'avoir pas encore répondu aux autres questions (mais j'essaierai d'y arriver dès que possible)

Avec quel logiciel concevez-vous la police ? Avez-vous des .glyphs par hasard ?

Je n'ai pas encore répondu aux autres questions (mais j'essaierai d'y arriver dès que possible)

Tout va bien, pas de précipitation. Oui, je serais heureux que cela fonctionne pour vous, et reconnaissant si vous avez des suggestions sur la façon dont je peux améliorer la documentation de build pour les utilisateurs de Linux. Je suis très curieux de savoir si le venv et les exigences fonctionneront ... à ma connaissance, pync est la seule chose qui nécessite macOS, mais c'est totalement facultatif (juste une chose pratique pour moi, donc je peux effectuer plusieurs tâches pendant la construction un peu longue traiter). Pour autant que je sache, toutes les autres dépendances de build sont multiplateformes.

Si vous souhaitez générer des fichiers woff2, vous devrez probablement installer woff2_compress séparément.

Avec quel logiciel concevez-vous la police ? Avez-vous des .glyphs par hasard ?

J'ai utilisé RoboFont pour cela, car je préfère le format UFO pour le contrôle de source et certaines des extensions de l'écosystème RoboFont. La version principale prépare les sources propres (se débarrassant des glyphes qui sont des expériences/dessins), puis utilise AFDKO pour créer des polices statiques et FontMake pour créer la police variable.

j'ai du mal à décider ce qui est pire/mieux, robofonts ou fontship/npm : https://github.com/be5invis/Iosevka/issues/715

@alexmyczko Je ne sais pas ce qu'est votre boeuf avec Fontship, mais ne le rangez pas dans le même seau que npm (chaos, et pas vraiment adapté pour être un système de construction pour des projets non JS) ou robofonts (propriétaire). Fontship est juste un cli pratique et un moyen de faire fonctionner ensemble tous les éléments de la chaîne d'outils de construction open source sans réinventer la roue à chaque fois. Sous le capot, il utilise simplement fontmake , psautomint , et woff2_compress et de nombreux autres outils similaires liés ensemble à l'aide de GNU Make pour créer des cibles. Cela devrait être assez convivial pour la philosophie Debian. Ce n'est pas encore tout à

Je ne voulais pas être impoli ou frapper au hasard, mais votre réponse a clarifié certaines choses, alors merci pour cela.

Oui, mon utilisation de RoboFont rend cela un peu plus open source qu'un projet qui utilise GlyphsApp (même si dans votre cas particulier, c'est légèrement gênant - désolé c'est le cas en ce moment !).

Dans tous les cas, cependant, il existe des outils qui peuvent gérer les sources et les construire.

Je ferme ce problème, mais si vous avez des questions spécifiques en suspens ou des bloqueurs de build, n'hésitez pas à ajouter d'autres commentaires ou à ouvrir de nouveaux problèmes avec le problème spécifique.

Merci!

De plus, je suppose que vous avez déjà vu cela, mais le fichier readme comprend des instructions assez spécifiques pour la construction. Essentiellement:

  1. Installer les dépendances
  2. Exécuter les scripts de préparation
  3. Exécutez le build (mais n'utilisez pas l'option --pync )
version=1.066 # (replace version number)
python build.py --statfiles --version $version
python build.py --static --version $version

Faites-moi savoir si vous rencontrez des erreurs de blocage dues à Pync, et je peux soit le supprimer, soit essayer de m'assurer qu'il n'est pas activé en dehors des environnements Mac.

aucune idée de ce qui manque maintenant...

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 fait partie de l'AFDKO, qui est répertorié dans le fichier des exigences.

Cette page vous a été utile?
0 / 5 - 0 notes