website logo
Auteur
avatar
BeChris

Forum » » Développement » » Développeur débutant sur MorphOS


Post� : 22-05-2021 16:42 icone du post

Bonjour les gars.

@Papiosaur : oui effectivement je viens d'essayer Grunch.
Je sais que les goûts et les couleurs ... mais je ne suis pas forcément fan de l'ergonomie de l'outil.
En plus, comme tu l'indiques, je le trouve très très lent pour télécharger les fichiers de bases de données (pourtant j'ai la fibre).
Ca doit peut-être venir des capacité du Mac Mini mais ça vient sûrement aussi du fait les fichiers de base de données semblent assez volumineux pour certains.
Dommage qu'il n'ai pas passé à les stocker sous forme compressée.
Et puis je persiste et signe : une seule personne semble s'occuper de l'outil est il n'est pas open source.
Du coup tout le monde est obligé de l'utiliser tel qu'il est et si t'es pas content ou que le développeur ne veut pas intégrer tes demandes d'évolutions tu es marron.
C'est pour ça que je crois qu'un outil en open source à sûrement plus de chance de s'en sortir.

Ensuite, comme tu le dis également, je pense qu'un scan du système pour savoir ce qui est installé semble compliqué (vu qu'il n'y pas de chemin d'installation "standard" comme sous Linux par exemple).

@ze_bucheron:
En fait l'outil servirait effectivement:

  • Pour les utilisateur : permettre l'installation/mise à jour/désinstallation de logiciels et de leurs dépendances (c'est déjà ce que fait Grunch si je ne me trompe pas)

  • Pour les développeurs : permettre de spécifier quelles sont les dépendances permettant la compilation d'un logiciel (par exemple indiquer que OpenTTD a besoin des fichiers de développement de la SDL2 en version 2.0.14, que GrimoriumPDF a besoin du compilateur de Hollywood en version 8 + le plugin Hollywood Polybios en version 1.3)
    Grunch ne couvre pas ce besoin (si je ne me trompe toujours pas) si cher aux développeurs d'après moi



Concernant l'écriture des fichiers de recettes, le développeur devrait effectivement écrire son fichier de recette.
Ça peut être quelqu'un d'autre mais il est vrai que le développeur est le mieux placé pour ça.
C'est du boulot en plus mais ça lui facilite la vie sur le moyen/long terme : il indique une seule fois les fichiers de développement dont il a besoin (fichiers !!!!include!!!!s de la SDL2 par exemple) et les commandes à lancer pour construire son logiciel (lancer make par exemple) et ampkg s'occupe du reste.
Ce qui est bien dans cette approche c'est que si un autre développeur veut donner un coup de main, il n'a pas à se demander:

  • Qu'est-ce que je dois installer sur mon système pour pouvoir compiler ce logiciel

  • Quelles sont les commandes à lancer pour compiler ce logiciel

  • Comment est-ce que je l'installe pour ensuite pouvoir le tester



Et effectivement, pour les logiciels existants, n'importe qui devrait pouvoir écrire des fichiers de recette.
Vous avez dû voir que je privilégie le format JSON car c'est facilement analysable avec Hollywood ou Python ou autre.
Mais je pensais aussi que ampkg pourrait proposer une interface graphique facilitant l'écriture de ces fichiers.
Pour le côté facile à soumettre ta remarque me fais penser que j'ai pensé à un truc un peu compliqué.
Je suis bien sûr prêt à revoir ce à quoi j'avais pensé pour le rendre plus facile d'accès au simples utilisateurs qui voudraient écrire des recettes.
Pour rendre la publication de recette fluide, ampkg pourrait permettre, par un simple appui bouton l'envoie d'un fichier de recette.

Pour le reste de vos remarques concernant les fichiers d'installation j'ai du coup peur d'être passé à côté d'un "détail" d'importance.
Mais en fait je suis un peu partagé quant au lancement des Installer:
Je m'explique : ampkg doit connaitre exactement quels sont les fichiers qui composent un paquet logiciel (et aussi où ils sont installés).
Ceci pour pouvoir mettre à jour ces mêmes fichiers en cas de mise à jour du paquet ou pouvoir les effacer en cas de désinstallation du paquet.
Si je lance l'Installer je ne suis pas sûr de pouvoir détecter ce que cet Installer fait et ainsi détecter quel(s) fichier(s) il a copié et où.
C'est pour ça que dans les fichiers recette il y a une section INSTALL qui permet d'indiquer quel(s) fichier(s) doivent être installés et où.
Du coup ampkg garde la maîtrise.
D'un autre côté ça n'est peut-être pas très Amiga "friendly" de ne pas utiliser les Installer.
De toutes façons il n'y a pas de recette magique et il faudra faire des concessions.
Concernant la détection de l'Altivec ou autre (effectuée par les scripts d'Install ?), on pourrait très bien imaginer intégrer ce genre de fonctionnalités dans ampkg directement et enrichir les fichiers de recettes pour que certaines actions ne soit réalisées que dans certaines conditions (par exemple : installation d'un binaire si Altivec, un autre binaire sinon).

De plus, vous êtes peut-être passé à côté de ce "détails", mais je pensais qu'en fait ampkg aurait son propre format de fichier paquet.
Concrètement ce que ça donne pour un logiciel existant (sous forme de lha très souvent) : vous avez compris qu'il faudra un fichier de recette pour "packager" ce logiciel.
Mais en fait ampkg générera son propre format de fichier installable en faisant l'extraction du .lha et en incluant seulement ce qui est indiqué dans la section PACKAGED du fichier de recette.
Au moment de l'installation sur l'ordi de l'utilisateur c'est seulement ce qu'il y a dans la section INSTALL qui sera installé (et aussi ce qui est dans la section INSTALL_DEV si l'utilisateur veut également les fichiers utiles au développement d'applications comme les !include!s ou les librairies statiques).

Il n'est pas très facile par écrit d'expliquer tout ça et de se rendre compte si je n'ai pas oublié d'autres choses.

Ça vous dirait de se faire une petite session en visio un de ces jours en fonction de vos dispos?
Sûrement qu'en quelques minutes de conversation on se comprendra mieux qu'avec des dizaines de lignes de texte :wink:
J'aime bien Google Meet car ça fonctionne avec un simple navigateur (sûrement Chrome de préférence).
 Message édité par : BeChris / 22-05-2021 19:29
 Message édité par : BeChris / 22-05-2021 19:34
 Message édité par : BeChris / 22-05-2021 19:41

Cet article provient de Meta-MorphOS
https://www.meta-morphos.org/viewtopic.php?topic=2209&forum=52