Forum darktable FR

Version complète : Installation des Scripts Lua sous MacOs - Retour d'expérience
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Pages : 1 2
Récemment Pixtolero a posté une vidéo pour expliquer l'installation des scripts Lua sous Linux https://youtu.be/fi-VHbvNrUc 

Bien que cette vidéo concerne Linux j'en ai suivi strictement le déroulement alors que je suis sous Mac.

Je constate que toute la première partie de sa vidéo est strictement compatible avec mon macOs Hight Sierra et cela m'a permis d'implanter tous les scripts Lua.

Sur la fin de la vidéo il indique comment installer la version de Lua 5.2 et là j'ai abandonné de suivre ses explications pensant que la procédure d'installation concernait uniquement l'environnement Lunix, mais peut être à tort !?

J'ai testé quelques scripts dont certains semblent fonctionner, démontrant que Lua... semble bien être installé, mais qu'elle version !?

Tout cela m'amène à me poser les questions suivantes.

- Pourquoi est-il nécessaire de charger Lua5.2 alors qu'il me semble que Lua est installé nativement 'dans' darktable ?

- Peut-on différencier les scripts qui fonctionnent uniquement sur Linux de ceux qui peuvent fonctionner sur les autres OS comme par exemple le fameux 'hello world" mais également le très intéressant "contrib/gimp".

Nota pour le script contrit/gimp je suis parti de la version Gimp 2.8.22. Avec les versions 2.9... je n'y suis pas arrivé mais il faudra que j'essaie de nouveau.

Un grand merci à Pixtoléro qui par sa vidéo m'a permis de progresser dans la compréhension des scripts Lua.
Je ne suis pas spécialiste de cette question, mais je vais répondre quand même avec ce que je peux, en attendant que d'autres rejoignent ce fil.

Lua est un langage de programmation interprété. Quand tu fais un script Lua, il est lu ligne à ligne, traduit en language machine (une purée de binaire) et exécuté. « Installer Lua 5.2 », c'est installer l'interpréteur Lua, qui réalise cette opération. Ce qui est fourni dans darktable, c'est une API Lua, c'est à dire des liens entre les fonctions internes de dt (écrites en C) et le langage Lua, qui te permet d'accéder aux fonctions internes de dt depuis un programme Lua.

A priori, il ne devrait pas à avoir de scripts Lua spécifiques à une plateforme, ils devraient être spécifiques à une version des API utilisées. (à confirmer)
Merci Aurélien pour ta réponse. J'y vois déjà plus clair.
Reste à avoir confirmation d'un développeur.
J'ai fait cette vidéo parce que je ne trouvais pas d'explications "vidéo" d'installation de lua dans darktable en français. J'ai "décortiqué" la vidéo de Juan Luis Fernandez Gallo, j'ai ensuite fait un récapitulatif par écrit pour après l'essayer sur mon ordinateur. La manipulation sur ma distribution (Debian) linux ayant fonctionné j'ai fait une vidéo YouTube en espérant que ça aiderait des francophones. J'ai essayé ensuite de mettre "darktable.css" dans l'ordi sous windows de ma femme, le résultat a été de grosses barres rouges sur le tour de darktable. Je n'ai pas insisté pour le moment. J'ai dans l'idée de faire une vidéo sur le même thème dans windows si je trouve la solution, le bon répertoire.

Concernant apt-get install lua5.2 est-ce utile ou inutile de l'installer pour faire fonctionner Lua, je ne sais pas.

Ma référence :   https://www.youtube.com/watch?v=ri9OLBTnzLc
A 2 minutes il installe lua5.2
La vidéo est présenté par @Pixtolero mais son auteur est @Valmy. le script /contrib/gimp fonctionne parfaitement chez moi avec Gimp 2.9.8 sous Antergos et Linux Mint 18.3.
L'explication d'Aurélien est excellente après tu peux aller voir sur https://www.multimedia4linux.de/index.php un site allemand qui développe des scripts Lua pour darktable (si tu n'es pas germanophone, la traduction en ligne peut d'aider) et aussi une recherche sur https://discuss.pixls.us/c/software/darktable (site américain).
Pour apporter quelques gouttes d'eau au moulin :
Sur mon opensuse 42.3, darktable utilise lua 5.2. Cependant, les Release notes de la version 2.4 de darktable disent explicitement "darktable now uses Lua 5.3" (pas besoin de traduction !)

D'après ce que je viens de lire, il peut y avoir des problèmes de compatibilité entre versions de Lua. Ce serait même une des caractéristiques du langage Lua qui ne garanti pas la rétrocompatibilité. Cependant, les mainteneurs d'opensuse n'offrent pas de paquet Lua 5.3. Les seuls paquets 5.3 disponibles pour cette distribution sont des paquets dits communautaires, c'est à dire compilés par des utilisateurs qui les mettent à la disposition de tous.

Questions :
- Les quelques scripts Lua que j'utilise fonctionnent. Mais est-ce un coup de chance ?
- Pourquoi opensuse ne propose pas de paquet lua 5.3 ?
- Comment le/les mainteneur(s) du paquet darktable s'y prennent-ils pour permettre à dt 2.4.x de fonctionner avec lua 5.2 ?
- Et Dieu dans tout ça ? ;-)
Tout d'abord merci à Valmy qui a réalisé la Vidéo citée dans mon premier message. Smile
Et merci à tous les autres intervenants qui font avancer le sujet.

Pour connaître la version Lua, appelée par dt dans ma configuration macOs Hight Sierra, je me suis fait un petit script* 
et j'ai comme réponse : Lua 5.3 - me voilà fixé !

Pour résumé : je suis sous macOs Hight Sierra avec la version dt 2.4.1 et avec Lua 5.3 et GIMP 2.8 et cela semble bien fonctionner pour le script contrib/gimp.lua d'appel de GIMP  
Il me reste à tester le passage à Gimp 2.9.8. et le bon fonctionnement d'autres scripts.

* J'ai juste remplacé dans le script hello-world, print("Hello-World") par print(_VERSION) - Pas trop compliqué comme script, il y a un début à tout !  Rolleyes
Bonne Nouvelle - Environnement MAC
Je viens de tester avec succès le script/gimp.lua d'appel de GIMP avec la first Release de GIMP 2.10 chargée sur la site de Parta et cela semble bien fonctionner.
(30-03-18, 20:30)Jurande a écrit : [ -> ]Bonne Nouvelle - Environnement MAC
Je viens de tester avec succès le script/gimp.lua d'appel de GIMP avec la first Release de GIMP 2.10 chargée sur la site de Parta et cela semble bien fonctionner.

Comment ça se passe sous Mac ?

Tu as créé le dossier Lua dans .config/darktable
Tu as mis tous les scripts téléchargés sur internet dedans
Tu as créé le fichier texte contenant la mention : require "include_all"
( voir : https://www.youtube.com/watch?v=fi-VHbvNrUc&t=4s )

Et après ?
C'est tout, tu as lancé darktable
Ou tu as installé lua5.2 ou 5.3 ?
Bonjour,
tout d'abord merci à Valmy pour sa vidéo que j'ai suivi à la lettre pour faire mon install. en environnement macos 10.13.3 , dt 242 et gimp 2.8.
"Include all" fonctionne, je vois bien tous les scripts. je n'ai activé que gimp.lua et là une petite différence dans l'export "edit with gimp", le script demande d'indiquer l'emplacement de gimp.app.
L'export se fait bien, gimp s'ouvre sur la photo que je peux modifier. Par contre je n'arrive pas à la ramener dans dt en suivant la video, c'est à dire : fichier/ecraser le tiff, puis fermer gimp, j'ai alors un message disant que le fichier n'est pas enregistré et que les modifs seront perdues avec deux options: annuler et abandonner les modifs. Je clique sur abandonner , comme dans la video me semble-t-il ! mais dans dt l'image modifiée ne revient pas !.
voilà mon retour d'expérience. c'était la première fois que j'ouvrais gimp, il y a certainement quelque chose que je n'ai pas compris.
Edit:
Les images modifiées /gimp ( j'ai fait plusieurs essais! ) existent bien dans le dossier de l'image mère mais ces clones ne sont pas re-importés automatiquement dans dt
Pages : 1 2