Subject: Suggestion pour les traits d'union

From: Ben <[email-masked]>
Date: Sat, 25 Feb 2023 14:53:12 +0100

Bonjour, 

J'ai une suggestion d'amélioration pour les traits d'union des mots composés. 

Le problème est que si on les coupe avec --, le trait d'union peut disparaître si lilypond a besoin de serrer. 

Pour éviter cela, j'écris: 

\version "2.25.1"
 
 \relative c' { c4 d e f g } 
 \addlyrics { \lyricmode {  \once \override LyricHyphen.minimum-distance = #1.5 Peut  -- ê -- tre } }

Mais c'est assez lourd comme écriture, ne pourrait-on pas utiliser à la place trois tirets pour la césure, ce qui donnerait: 

\version "2.25.1"
 
 \relative c' { c4 d e f g } 
 \addlyrics { \lyricmode { Peut  --- ê -- tre } }

Merci!

Au plaisir, 

Ben

---

From: Jean Abou Samra <[email-masked]>
Date: Sat, 25 Feb 2023 14:59:14 +0100

>  \addlyrics { \lyricmode { Peut  --- ê -- tre } }

Il y a eu quelques discussions à ce sujet, notamment
[https://gitlab.com/lilypond/lilypond/-/issues/6379#note_1021366686](https://gitlab.com/lilypond/lilypond/-/issues/6379#note_1021366686)

et

[https://gitlab.com/lilypond/lilypond/-/issues/2463](https://gitlab.com/lilypond/lilypond/-/issues/2463)

Comme beaucoup de choses, cela attend qu'un contributeur ait l'énergie et le temps de réfléchir à la meilleure solution et de la justifier...

Cordialement,

Jean

---

From: Ben <[email-masked]>
Date: Sat, 25 Feb 2023 15:24:17 +0100

D'accord, merci!

Pour l'instant, j'ai trouvé plus urgent d'essayer de comprendre pourquoi frescobaldi n'était plus fourni en app sous mac, et je dois avouer que c'est la misère. 

L'installation standard de PyQt foire sous processeur M1, je n'arrive même pas à faire le bête helloword. 

Par contre, en passant par macport et le script mac de frescobaldi, on arrive quand même à un exécutable qui fonctionne sous M1, à l'exception du module web qui n'arrive plus à afficher l'aide lilypond. 

Au plaisir, 

Ben

> Le 25 févr. 2023 à 14:59, Jean Abou Samra <[email-masked]> a écrit :
> 
> Il y a eu quelques discussions à ce sujet, notamment https://gitlab.com/lilypond/lilypond/-/issues/6379#note_1021366686 <https://gitlab.com/lilypond/lilypond/-/issues/6379#note_1021366686>
> et
> 
> https://gitlab.com/lilypond/lilypond/-/issues/2463 <https://gitlab.com/lilypond/lilypond/-/issues/2463>

---

From: Jean Abou Samra <[email-masked]>
Date: Sat, 25 Feb 2023 23:06:01 +0100

Le samedi 25 février 2023 à 15:24 +0100, Ben a écrit :
> L'installation standard de PyQt foire sous processeur M1,

Ça m'étonne vu que PyQt5 est quand même une bibliothèque très largement utilisée.

Par contre, le module python-poppler-qt5, qui a été développé à l'origine pour Frescobaldi, demande d'avoir Poppler, avec en-têtes de développement, et sip, et un compilateur C++, et tout le tintouin, donc je conçois que son installation depuis le PyPI (avec `pip`) puisse être délicate et que passer par MacPorts soit plus simple.

---

From: Jacques Menu <[email-masked]>
Date: Sat, 25 Feb 2023 23:56:47 +0100

Salut Ben,

J’utilise la version de MacPorts sur mon M1 sans problème, et j’ai donc renoncé à compiler Frescobaldi moi-même (je ne l’ai jamais fait en fait).

JM

> Le 25 févr. 2023 à 23:06, Jean Abou Samra <[email-masked]> a écrit :
> 
> Par contre, le module python-poppler-qt5, qui a été développé à l'origine pour Frescobaldi, demande d'avoir Poppler, avec en-têtes de développement, et sip, et un compilateur C++, et tout le tintouin, donc je conçois que son installation depuis le PyPI (avec pip) puisse être délicate et que passer par MacPorts soit plus simple.
>

---

From: Ben <[email-masked]>
Date: Sun, 26 Feb 2023 19:28:07 +0100

Salut JM, 

Oui, avec MacPorts cela fonctionne, mais MacPorts pèse 15 Go, or au prix du Go chez Apple ce n'est pas rien, et l'installation est longue.

Salut Jean, 

pip install PyQt5 ne fonctionne que pour processeur Intel, mais apparement MacPort a réussi à compiler pour M1 une version de PyQt5, je ne sais par contre pas comment la récupérer et l'installer dans un env. 

pip install PyQt6 est disponible pour M1 et j'ai trouvé des retours positifs sur M1, mais cela ne fonctionne pas sur les deux macs où j'ai testés, le helloworld ne trouve pas les librairies Qt.

Donc je suis aussi assez étonné, mais avant d'écrire aux contributeurs de pyqt, il faut que je fasse une clean install de macos, ce que je ne fais qu'une fois par an. 

De même, le fait que le module web fonctionne correctement lorsqu'on lance python3 frescobaldi depuis macos, mais ne fonctionne plus lorsqu'il est freezé dans une .app est perturbant.

Au plaisir, 

Ben

> Le 25 févr. 2023 à 23:56, Jacques Menu <[email-masked]> a écrit :
> 
> Salut Ben,
>

---

From: Jean Abou Samra <[email-masked]>
Date: Sun, 26 Feb 2023 20:15:50 +0100

> pip install PyQt5 ne fonctionne que pour processeur Intel, mais apparement MacPort a réussi à compiler pour M1 une version de PyQt5, je ne sais par contre pas comment la récupérer et l'installer da…

Mais... les programmes compilés pour Intel sont automatiquement émulés via Rosetta lorsqu'ils sont exécutés sous M1, non ? Par conséquent, je ne comprends pas pourquoi `pip install PyQt5` ne fonctionnerait pas sous M1. Je m'attendrais à ce que cela fonctionne, simplement avec des bibliothèques partagées (.so/.dylib) un moins performantes que si elles étaient compilées pour M1. Ou bien je me trompe ?

> pip install PyQt6 est disponible pour M1 et j'ai trouvé des retours positifs sur M1, mais cela ne fonctionne pas sur les deux macs où j'ai testés, le helloworld ne trouve pas les librairies Qt.

Avec quel message d'erreur ?

> Donc je suis aussi assez étonné, mais avant d'écrire aux contributeurs de pyqt, il faut que je fasse une clean install de macos, ce que je ne fais qu'une fois par an. 

Si vous voulez, mais en l'occurrence, je doute que ça résolve le problème. Je regarderais plutôt dans les versions de Python utilisées, emplacements d'installation, etc.

> De même, le fait que le module web fonctionne correctement lorsqu'on lance python3 frescobaldi depuis macos, mais ne fonctionne plus lorsqu'il est freezé dans une .app est perturbant.  

C'est une histoire de résolution dynamique des libraries qui ne fonctionnait pas, mais je n'ai pas encore compris tous les détails.

---

From: Ben <[email-masked]>
Date: Sun, 26 Feb 2023 21:16:48 +0100

> Mais... les programmes compilés pour Intel sont automatiquement émulés via Rosetta lorsqu'ils sont exécutés sous M1, non ? Par conséquent, je ne comprends pas pourquoi pip install PyQt5 ne fonctionnerait pas sous M1. Je m'attendrais à ce que cela fonctionne, simplement avec des bibliothèques partagées (.so/.dylib) un moins performantes que si elles étaient compilées pour M1. Ou bien je me trompe ?
> 
En fait, j'ai lu qu'il fallait lancer le terminal en mode émulation intel pour que cela fonctionne avec rosetta, ce n'est pas automatique.

Si vous regardez les fichiers de pyqt5, la seule version pour macos x est pour x86_64: https://pypi.org/project/PyQt5/#files <https://pypi.org/project/PyQt5/#files>, de ce fait, si je l'installe sans émulation, je reçois une erreur sur pip install PyQt5

 Using cached PyQt5-5.15.9.tar.gz (3.2 MB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... error
  error: subprocess-exited-with-error
  
  × Preparing metadata (pyproject.toml) did not run successfully.
  │ exit code: 1

Par contre, quand j'exécute frescobaldi depuis macports, je n'ai aucun processus de type Intel, et le processus python est bien en M1, donc j'imagine que macport a compilé pyqt5 en M1.

Pour pyqt6, il y a une universal: https://pypi.org/project/PyQt6/#files <https://pypi.org/project/PyQt6/#files>, l'installation fonctionne sans erreur, mais c'est l'exécution du hello world qui foirait…

Car en fait, je viens de trouver le problème…

J'avais bien vérifié tous les noms, les accès, etc, mais le problème était que pff… mon fichier de test s'appelait PyQt6.py dans un dossier PyQt6, ce qui faisait un conflit de nom avec le module… L'erreur bête de débutant. 

Merci pour l'échange, cela m'a donné l'idée!

> C'est une histoire de résolution dynamique des libraries qui ne fonctionnait pas, mais je n'ai pas encore compris tous les détails.
Donc ce serait un bug de py2app? J'ai vu sur le net que cx_freeze aurait moins de problèmes avec les M1…

---

From: Jean Abou Samra <[email-masked]>
Date: Sun, 26 Feb 2023 22:59:19 +0100

> Donc ce serait un bug de py2app? J'ai vu sur le net que cx_freeze aurait moins de problèmes avec les M1… 

Jusqu'ici, personne n'a compris d'où le bug venait précisément.

J'ai essayé moi-même de chercher il y a quelques jours, mais la machine macOS à laquelle j'ai un accès
à distance (gracieusement prêtée par Marnen Laibow-Koser qui la loue) a une version ancienne de macOS (la 10.15) et je n'ai pas les droits de superutilisateur dessus, donc c'était compliqué d'obtenir l'environnement qui va bien.

J'ai dans l'idée qu'on pourrait, plutôt que d'utiliser MacPorts pour python-poppler-qt5, compiler des wheels Python pour cette bibliothèque et ainsi se passer complètement de MacPorts au moment de la construction du .app. Je soupçonne qu'une partie de la complexité vient du fait que le processus prend des bibliothèques partagées compilées avec les idiosyncrasies de MacPorts concernant la résolution et que ce serait plus simple en le faisant dans un environnement Python isolé, semblable à l'environnement que l'on veut créer. Mais je n'ai pas encore essayé et je n'ai strictement aucune idée de la difficulté de la chose.

---

From: Ben <[email-masked]>
Date: Mon, 27 Feb 2023 01:20:43 +0100

D'accord, donc si c'est un problème au niveau de macport, un autre freezer n'y changera rien.

Recréer l'environnement sous 10.15 ne devrait pas être trop compliqué puisque c'est encore de l'intel. Mais après, on aurait une app optimisée pour intel et pas pour M1, alors que le M1 est sorti depuis plus de 2 ans. 

Recréer l'environnement directement pour M1, cela veut dire qu'il faudrait d'abord compiler pyqt5 (et python-poppler-qt5) pour M1. Macport y arrive vraisemblablement, mais si les mainteneurs de pyqt5 ne l'ont pas proposé, c'est peut-être justement parce que cela donne des bugs de ce genre?

Ne serait-ce alors pas plus simple de supprimer la fonctionnalité de l'aide dans le browser pour macos? Pour ma part, je ne l'utilise jamais, j'ai préféré me faire des fragments qui m'ouvrent directement les pdfs. 

Au plaisir, 

Ben

> Le 26 févr. 2023 à 22:59, Jean Abou Samra <[email-masked]> a écrit :
> 
> J'ai essayé moi-même de chercher il y a quelques jours, mais la machine macOS à laquelle j'ai un accès à distance (gracieusement prêtée par Marnen Laibow-Koser qui la loue) a une version ancienne de macOS (la 10.15) et je n'ai pas les droits de superutilisateur dessus, donc c'était compliqué d'obtenir l'environnement qui va bien.
>

---

From: Jean Abou Samra <[email-masked]>
Date: Mon, 27 Feb 2023 06:47:21 +0100

Le lundi 27 février 2023 à 01:20 +0100, Ben a écrit :
> Recréer l'environnement sous 10.15 ne devrait pas être trop compliqué puisque c'est encore de l'intel.

Oui, c'est facile... sauf quand on n'a pas les droits root, comme dans mon cas. (Si je me rappelle bien, le paquet MacPorts qui coince est TeXLive.)

> Mais après, on aurait une app optimisée pour intel et pas pour M1, alors que le M1 est sorti depuis plus de 2 ans.
> 

Déjà, une application qui marche, ce serait un gros progrès. La performance optimale serait un plus, mais c'est à mon sens secondaire en comparaison. À mon avis, le mieux sur le long terme pour préparer la fin du support Intel serait de migrer vers PyQt6.

> Ne serait-ce alors pas plus simple de supprimer la fonctionnalité de l'aide dans le browser pour macos? Pour ma part, je ne l'utilise jamais, j'ai préféré me faire des fragments qui m'ouvrent direc…

C'est exactement ce qui a été fait pour le `.app` miraculé de Frescobaldi 3.1. Je ne sais pas vous dire quels sont les problèmes restants exactement, il faudrait demander à Davide Liessi. C'est lui qui a fourni les .app qu'il a réussi à créer jusqu'ici, mais n'a plus le temps de contribuer activement à Frescobaldi et n'est d'ailleurs même plus sous macOS. Et comme je le disais, je n'ai pas pu recréer moi-même l'environnement dans lequel il le faisait. Or vous êtes le *premier*, à ma connaissance, à vous intéresser à l'aspect technique du problème à part Davide et moi. Donc, quels que soient les progrès que vous arrivez à faire, merci !

(Pour être honnête, je dois admettre que c'est quelque chose qui m'a un peu agacé : des contributeurs sous GNU/Linux se mettent en quatre, via location de machines à distances et autres GitHub actions, pour contourner le caractère propriétaire de macOS et le prix que cela représente, alors que les pourtant nombreux utilisateurs de macOS qui se sont plaints de la situation, heureusement de manière polie et respectueuse en général, seraient les mieux placés pour la résoudre.)

Cordialement,

Jean

---

From: Ben <[email-masked]>
Date: Mon, 27 Feb 2023 12:19:07 +0100

> Le 27 févr. 2023 à 06:47, Jean Abou Samra <[email-masked]> a écrit :
> 

C'est aussi mon sentiment, cela veut dire qu'il faudrait déjà commencer par python-poppler-qt5, est-ce que quelqu'un est dessus?

> C'est exactement ce qui a été fait pour le .app miraculé de Frescobaldi 3.1. Je ne sais pas vous dire quels sont les problèmes restants exactement, il faudrait demander à Davide Liessi. C'est lui qui a fourni les .app qu'il a réussi à créer jusqu'ici, mais n'a plus le temps de contribuer activement à Frescobaldi et n'est d'ailleurs même plus sous macOS. Et comme je le disais, je n'ai pas pu recréer moi-même l'environnement dans lequel il le faisait. Or vous êtes le premier, à ma connaissance, à vous intéresser à l'aspect technique du problème à part Davide et moi. Donc, quels que soient les progrès que vous arrivez à faire, merci !
> 
En fait, quand j'exécute avec le python de macport le script mac-app.py, j'obtiens une app frescobaldi qui se lance sous M1. Les deux seuls bugs gênants que j'ai rencontrés pour l'instant sont le module web de l'aide qui n'affiche plus rien et le bug déjà présent des menus au lancement. Donc si on désactivait le module web et que l'on améliorerait le refresh au lancement de l'app, on pourrait déjà avoir quelque chose de pas trop mal. 

> (Pour être honnête, je dois admettre que c'est quelque chose qui m'a un peu agacé : des contributeurs sous GNU/Linux se mettent en quatre, via location de machines à distances et autres GitHub acti…
Malheureusement pas, car la plupart des mac users est sous mac pour la facilité d'utilisation et ne sait pas utiliser un terminal, leur demander d'installer via macport est déjà un bel exploit. Alors que beaucoup des linuxiens sont déjà plus ou moins des développeurs, ce qui est aussi un choix logique, car développer sous macOS est compliqué: entre le rythme infernal d'un nouvel os par an et les implémentations d'Apple pas complètement standard et peu documentées, on galère vite dès que l'on s'éloigne des outils d'Apple. 

Pour ma part, je peux certainement consacrer quelques heures par semaine à installer un environnement sur mon mac M1, compiler, porter en qt6, etc, c'est juste que je suis débutant avec ces outils (python, qt), donc si je suis encadré, cela peut aller vite, sinon cela ira très lentement…

J'ai aussi régulièrement la possibilité de me procurer des vieux mac minis, voir d'en mettre en ligne avec un accès root à un horaire précis, si quelque développeur veut s'éviter une location.

Au plaisir, 

Ben

---

From: Jacques Menu <[email-masked]>
Date: Mon, 27 Feb 2023 13:18:16 +0100

Bonjour,

Je suis équipé pour compiler et tester un Frescobaldi sur M1 à partir du code source, mais il me faudrait de l’aide du côté de Python, un monde que je ne connais pas et que je n’ai pas le temps de découvrir.

Idéalement, il me faudrait des directives/makefiles/scripts permettant de compiler toutes les dépendances et Fresco lui-même.

JM

> Le 27 févr. 2023 à 12:19, Ben <[email-masked]> a écrit :
> 
> 
> 
>> Le 27 févr. 2023 à 06:47, Jean Abou Samra <[email-masked] <mailto:[email-masked]>> a écrit :
>>

---

From: Ben <[email-masked]>
Date: Mon, 27 Feb 2023 15:04:45 +0100

Bonjour Jacques, 

Merci pour la proposition! 

J'ai renommé le fil en conséquence, et je vais détailler jusqu'où je suis arrivé pour vous permettre (ainsi qu'à d'autres) d'essayer à votre tour.

Pré-requis: frescobaldi doit déjà être installé avec macport

1. Télécharger le code source de frescobaldi en cliquant sur code et download zip

https://github.com/frescobaldi/frescobaldi/tree/v3.2 <https://github.com/frescobaldi/frescobaldi/tree/v3.2>

2. Décompresser frescobaldi-3.2.zip et déplacez-le dans le dossier "Départ" (menu Finder->Aller->Départ ou ⇧⌘H, ou ~)

3. Lancer l'application Terminal, copier-coller les instructions suivantes et valider à chaque fois avec la touche entrée

4. Pour lancer frescobaldi depuis les sources avec le python et les dépendances de macport

/opt/local/Library/Frameworks/Python.framework/Versions/3.10/bin/python3 ~/frescobaldi-3.2/frescobaldi

5. Pour créer ensuite l'exécutable de macos x dans ~/frescobaldi-3.2/macosx/dist/

cd frescobaldi-3.2/macosx
/opt/local/Library/Frameworks/Python.framework/Versions/3.10/bin/python3 -v mac-app.py -v 3.10 -a

A noter que frescobaldi n'est qu'en anglais, si cela vous intéresse, je peux continuer à détailler l'installation des langues, et ensuite comment installer la dernière version de python et faire un helloworld en qt6 dans un environnement. 

Au plaisir, 

Ben

> Le 27 févr. 2023 à 13:18, Jacques Menu <[email-masked]> a écrit :
> 
> Bonjour,
>

---

From: Jean Abou Samra <[email-masked]>
Date: Tue, 28 Feb 2023 23:26:33 +0100

> C'est aussi mon sentiment, cela veut dire qu'il faudrait déjà commencer par python-poppler-qt5, est-ce que quelqu'un est dessus?

Je ne crois pas. Il y a juste un page de bug dans Frescobaldi pour la migration PyQt6 ([https://github.com/frescobaldi/frescobaldi/issues/1407](https://github.com/frescobaldi/frescobaldi/issues/1407)) mais il ne me semble pas avoir entendu parler d'un hypothétique python-poppler-qt6 à ce stade. Il faudrait sans doute passer en revue les diffénces d'API entre [Poppler-Qt5](https://poppler.freedesktop.org/api/qt5/) et [Poppler-Qt6](https://poppler.freedesktop.org/api/qt6/) et mettre à jour les fichiers `.sip`. Je n'ai strictement aucune idée du travail que cela représente.

> En fait, quand j'exécute avec le python de macport le script mac-app.py, j'obtiens une app frescobaldi qui se lance sous M1. Les deux seuls bugs gênants que j'ai rencontrés pour l'instant sont le m…

Waouh ! Je n'y croyais pas du tout. Donc j'ai dû mal comprendre Davide, il a dû simplement ne pas avoir le temps d'essayer du tout. C'est une très bonne nouvelle. Si vous m'envoyez le .app résultant, j'irai l'ajouter sur https://github.com/frescobaldi/frescobaldi/releases/tag/v3.2 et on aura fait un grand pas (ouf !).

> Malheureusement pas, car la plupart des mac users est sous mac pour la facilité d'utilisation et ne sait pas utiliser un terminal, leur demander d'installer via macport est déjà un bel exploit. Alo…

Je vous rejoins sur le fait que beaucoup de gens choisissent macOS pour sa réputation de système simple et qui « juste marche ». Je râle surtout contre son caractère fermé. À titre d'exemple, il y a quelques temps, Frescobaldi était cassé dans Ubuntu 22.04 LTS (plantage immédiat au démarrage) car il n'y avait pas été mis à jour, alors que c'était nécessaire pour la version de Python d'Ubuntu 22.04. Un peu comme pour macOS aujourd'hui, on a eu un flot d'utilisateurs qui avaient encore et toujours le même problème, mais les développeurs d'Ubuntu n'avaient pas l'air d'être au courant, et les utilisateurs d'Ubuntu n'avaient pas l'air de comprendre qu'ils pouvaient parler aux mainteneurs Ubuntu, et que c'étaient eux les interlocuteurs et pas les mainteneurs de Frescobaldi. Pour finir, c'est moi, qui n'utilise pourtant pas (plus) Ubuntu, qui suis allé leur demander de faire la mise à jour avec un peu plus d'insistance. Or, à un moment donné dans leur procédure de mise à jour, il fallait qu'un utilisateur du logiciel teste le correctif. Et c'est là qu'apparaît la différence : même en n'étant pas utilisateur d'Ubuntu moi-même, j'ai ouvert mon gestionnaire QEMU, installé une machine virtuelle Ubuntu 22.04, installé le paquet corrigé, et confirmé que c'était bon.

Avec macOS, le prix est tel que vous comprendrez que je n'ai pas envie de l'investir pour ne presque jamais utiliser la machine. Résultat des courses, une majorité d'utilisateurs de macOS sont peut-être mal placés pour résoudre ces problèmes, mais dans certains cas, ils sont malheureusement les seuls placés...

Je radote, mais il s'est avéré ce week-end que je vais probablement avoir accès à un macOS récent par VNC et avec droits root à travers ma famille, donc ça pourrait s'arranger de mon côté.

> Pour ma part, je peux certainement consacrer quelques heures par semaine à installer un environnement sur mon mac M1, compiler, porter en qt6, etc, c'est juste que je suis débutant avec ces outils…

Merci beaucoup de vous proposer, c'est vraiment précieux. Pour la migration vers PyQt6, il faut vraiment connaître en profondeur Qt et PyQt (et Poppler), donc ce n'est pas vraiment un job pour débutant, mais d'un autre côté, ça n'est pas lié à macOS, tous les contributeurs peuvent y participer. Je pense que ce dont on a besoin surtout, c'est d'une personne à qui on puisse faire appel pour tester des choses, et aussi pour compiler les .app en attendant que cela puisse être fait en CI. Donc je vous invite à vous abonner aux notifications pour le dépôt de Frescobaldi [https://github.com/frescobaldi/frescobaldi](https://github.com/frescobaldi/frescobaldi) avec le bouton « Watch » en haut à droite (après vous être connecté à GitHub), et aussi à envoyer un mail sur la liste Frescobaldi [https://groups.google.com/g/frescobaldi](https://groups.google.com/g/frescobaldi) pour manifester votre intérêt ; ainsi les autres vous repéreront et pourront vous @-mentionner si besoin.

À ce propos, je suis désolé, j'ai oublié de créer une page de bug pour votre problème des menus au démarrage (je devais avoir d'autres chose en tête à ce moment-là). Si vous pouviez le faire sur
[https://github.com/frescobaldi/frescobaldi/issues](https://github.com/frescobaldi/frescobaldi/issues), ce serait super.

> J'ai aussi régulièrement la possibilité de me procurer des vieux mac minis, voir d'en mettre en ligne avec un accès root à un horaire précis, si quelque développeur veut s'éviter une location.

Vous pouvez aussi le signaler sur la liste Frescobaldi.

Cordialement,

Jean

---

From: Jean Abou Samra <[email-masked]>
Date: Tue, 28 Feb 2023 23:31:35 +0100

> /opt/local/Library/Frameworks/Python.framework/Versions/3.10/bin/python3 -v mac-app.py -v 3.10 -a

A priori, il faut ensuite repasser une couche avec `build-dmg.sh`, non ? Sinon, le .app risque de dépendre de fichiers externes, si j'en crois le fichier `INSTALL`.

> A noter que frescobaldi n'est qu'en anglais, si cela vous intéresse, je peux continuer à détailler l'installation des langues, et ensuite comment installer la dernière version de python et faire un…

Si je ne m'abuse, l'installation des langues devrait se faire avec un simple `make -C i18n` (en ayant installé la suite Gettext).

---

From: Ben <[email-masked]>
Date: Tue, 28 Feb 2023 23:55:06 +0100

Le 28 févr. 2023 à 23:26, Jean Abou Samra <[email-masked]> a écrit :
> Je ne crois pas. Il y a juste un page de bug dans Frescobaldi pour la migration PyQt6 (https://github.com/frescobaldi/frescobaldi/issues/1407 <https://github.com/frescobaldi/frescobaldi/issues/1407>) mais il ne me semble pas avoir entendu parler d'un hypothétique python-poppler-qt6 à ce stade. Il faudrait sans doute passer en revue les diffénces d'API entre Poppler-Qt5 <https://poppler.freedesktop.org/api/qt5/> et Poppler-Qt6 <https://poppler.freedesktop.org/api/qt6/> et mettre à jour les fichiers .sip. Je n'ai strictement aucune idée du travail que cela représente.
> 
> 

Est-ce qu'il existe quelque part des tutoriaux ou de la doc un peu détaillée sur comment manipuler sip et faire ce genre de migration?
> Waouh ! Je n'y croyais pas du tout. Donc j'ai dû mal comprendre Davide, il a dû simplement ne pas avoir le temps d'essayer du tout. C'est une très bonne nouvelle. Si vous m'envoyez le .app résultan…
Même avec les bugs du navigateur et des menus? Et puis, il faudrait plutôt générer un dmg qui contienne l'app (je peux le faire manuellement, mais avec un soft, ce serait plus propre).
> Je radote, mais il s'est avéré ce week-end que je vais probablement avoir accès à un macOS récent par VNC et avec droits root à travers ma famille, donc ça pourrait s'arranger de mon côté.
Pour ma part, j'utilise surtout macos professionnellement et pour des software de musique qui n'existent que sur macos. Je n'aime pas non plus le côté fermé et la politique actuelle d'Apple et je suis parfaitement d'accord que ce n'est pas aux linuxiens de devoir payer Apple pour faire du multiplatforme, 
> Merci beaucoup de vous proposer, c'est vraiment précieux. Pour la migration vers PyQt6, il faut vraiment connaître en profondeur Qt et PyQt (et Poppler), donc ce n'est pas vraiment un job pour débutant, mais d'un autre côté, ça n'est pas lié à macOS, tous les contributeurs peuvent y participer. Je pense que ce dont on a besoin surtout, c'est d'une personne à qui on puisse faire appel pour tester des choses, et aussi pour compiler les .app en attendant que cela puisse être fait en CI. Donc je vous invite à vous abonner aux notifications pour le dépôt de Frescobaldi https://github.com/frescobaldi/frescobaldi <https://github.com/frescobaldi/frescobaldi> avec le bouton « Watch » en haut à droite (après vous être connecté à GitHub), et aussi à envoyer un mail sur la liste Frescobaldi https://groups.google.com/g/frescobaldi <https://groups.google.com/g/frescobaldi> pour manifester votre intérêt ; ainsi les autres vous repéreront et pourront vous @-mentionner si besoin.
> 
> À ce propos, je suis désolé, j'ai oublié de créer une page de bug pour votre problème des menus au démarrage (je devais avoir d'autres chose en tête à ce moment-là). Si vous pouviez le faire sur https://github.com/frescobaldi/frescobaldi/issues <https://github.com/frescobaldi/frescobaldi/issues>, ce serait super.
> 
> 
Je vais voir tout cela à l'occasion, merci. 

> Vous pouvez aussi le signaler sur la liste Frescobaldi.
Je n'y manquerai pas. 

Au plaisir, 

Ben

---

From: Jean Abou Samra <[email-masked]>
Date: Wed, 01 Mar 2023 00:13:23 +0100

> Est-ce qu'il existe quelque part des tutoriaux ou de la doc un peu détaillée sur comment manipuler sip et faire ce genre de migration?  

Je ne m'y connais pas très bien. La doc de sip est par ici : [https://www.riverbankcomputing.com/static/Docs/sip/index.html](https://www.riverbankcomputing.com/static/Docs/sip/index.html)

---

From: Jacques Menu <[email-masked]>
Date: Wed, 1 Mar 2023 00:13:33 +0100

Bonjour Ben & Jean,

Laissez-moi un jour ou deux avant de m’occuper de ça, je dois fournir une nouvelle version de MusicFormats avant.

A+!

JM

> Le 28 févr. 2023 à 23:31, Jean Abou Samra <[email-masked]> a écrit :
> 
>> Pour créer ensuite l'exécutable de macos x dans ~/frescobaldi-3.2/macosx/dist/
> A priori, il faut ensuite repasser une couche avec build-dmg.sh, non ? Sinon, le .app risque de dépendre de fichiers externes, si j'en crois le fichier INSTALL.
> 
> Si je ne m'abuse, l'installation des langues devrait se faire avec un simple make -C i18n (en ayant installé la suite Gettext).
>

---

From: Ben <[email-masked]>
Date: Wed, 1 Mar 2023 00:16:32 +0100

> A priori, il faut ensuite repasser une couche avec build-dmg.sh, non ? Sinon, le .app risque de dépendre de fichiers externes, si j'en crois le fichier INSTALL.

En fait, c'est surtout le build-dmg.sh qui ne fonctionne plus, son rôle consistait à:

1. vérifier que la version actuelle des sources est celle de git

2. lancer le script python mac-app.py avec les options pour ne pas dépendre de fichiers externes (c'est donc mac-app.py qui gère cela)

3. ajouter la librairie libqsvg.dylib à l'app générée par mac-app.py, je ne sais pas à quoi elle sert

4. lancer macdeployqt sur l'app créée: c'est peut-être là où il y aurait un problème avec l'app générée par mac-app.py, qui utiliserait peut-être encore des librairies qt dans macport ou ailleurs

5. supprimer le module PyQtWebEngine qui visiblement ferait planter frescobaldi

6. faire un contrôle d'architecture, je ne sais pas pourquoi

7. créer avec le soft appdmg un dmg à partir de l'app générée

> Si je ne m'abuse, l'installation des langues devrait se faire avec un simple make -C i18n (en ayant installé la suite Gettext).
Oui, quelque chose comme cela… Mais si quelqu'un veut aussi essayer, un pas à pas détaillée serait un bon début.

---

From: Jean Abou Samra <[email-masked]>
Date: Wed, 01 Mar 2023 00:19:42 +0100

Le mercredi 01 mars 2023 à 00:16 +0100, Ben a écrit :
> En fait, c'est surtout le build-dmg.sh qui ne fonctionne plus,

Quelle erreur est-ce que vous obtenez ?

Je vous propose de continuer la discussion par ici : [https://github.com/frescobaldi/frescobaldi/issues/1244](https://github.com/frescobaldi/frescobaldi/issues/1244)

---

From: Ben <[email-masked]>
Date: Wed, 1 Mar 2023 01:48:50 +0100

> Le 1 mars 2023 à 00:19, Jean Abou Samra <[email-masked]> a écrit :
> 
> Je vous propose de continuer la discussion par ici : https://github.com/frescobaldi/frescobaldi/issues/1244 <https://github.com/frescobaldi/frescobaldi/issues/1244>Déjà, si je lance le script sans rien changer, il utilise python 3.7 et ne trouve pas les dépendances, car la version python de macport qui fonctionne est la 3.10. 

Si je change python en 3.10, il arrive à créer l'app, mais elle ne se lance pas et le script retourne plusieurs erreurs: 

  File "/Users/benedikt/frescobaldi-3.2/macosx/mac-app.py", line 185, in <module>
    os.remove('{0}/qt.conf'.format(app_resources))
FileNotFoundError: [Errno 2] No such file or directory: 'dist/Frescobaldi.app/Contents/Resources/qt.conf'

…

rm: dist/Frescobaldi.app/Contents/Resources/lib/python3.7/lib-dynload/PyQt5/QtWebEngine*: No such file or directory
	zip warning: dist/Frescobaldi.app/Contents/Resources/lib/python37.zip not found or empty
	zip warning: name not matched: PyQt5/QtWebEngine*

zip error: Nothing to do! (dist/Frescobaldi.app/Contents/Resources/lib/python37.zip)

Error: unknown binary architecture set.
The .app bundle might be broken.

A noter que quand je passe directement par mac-app.py, j'ai aussi l'erreur avec dist/Frescobaldi.app/Contents/Resources/qt.conf', mais l'app se lance sans problème. Il n'y a pas d'alias dans le paquet, mais peut-être que l'app fait quand même appel à des librairies externes, il faudrait la tester sur une machine sans macport et sans python pour être sûr.

Je n'ai pas de compte github, et pour l'instant je n'ai fait qu'exécuter le script mac-app.py depuis le python de macport, je trouve que c'est trop peu pour déranger encore en plus les développeurs de frescobaldi…

---

From: Ben <[email-masked]>
Date: Wed, 1 Mar 2023 02:07:31 +0100

Pas de problème JM, je ne  suis pas pressé, d'autant que cette semaine, je ne pourrai pas faire beaucoup plus.

Au plaisir, 

Ben

> Le 1 mars 2023 à 00:13, Jacques Menu <[email-masked]> a écrit :
> 
> Bonjour Ben & Jean,
>