Des distrib, des distro, des distributions ! échange sur IRC - 08/02/2011 22:10

, par denisb

davux :

pourquoi le plugin brèves doit être dans les extensions et pas dans les plugins ? en fait je me dis que le fait qu’un plugin soit installé par défaut, et le fait qu’il ne soit pas désinstallable, c’est deux choses différentes. pas désinstallable c’est comme pour les paquets Debian dits « système » : les trucs que si tu les enlèves, tu dois confirmer en envoyant un fax en 3 exemplaires co-signés par le préfet, et encore tu te fais engueuler. et installés par défaut, ben c’est une distribution, quoi

_fil_ :

davux, l’idée dans un premier temps c’est de garder le meme périmètre fonctionnel. en pratique on a mis en extension des trucs qu’on va mettre à la poubelle dès que possible : agenda, messagerie, brèves...

davux :

_fil_, je comprends pas ce que tu veux dire sur le périmètre fonctionnel

_fil_ :

l’idée de la branche dev c’était qu’on commençait à évacuer du code en plugins sans préjuger de ce qui resterait à la fin. c’est comme ça que ça a démarré. maintenant on peut passer à l’étape 3.0 directement et zapper cette étape. perso ma préférence irait à un joli système de distribution (et SIMPLE) ; je me fiche bien de garder le périmètre fonctionnel

davux :

il faudrait définir ce qu’est une distribution alors. pour moi c’est le core + un ensemble de plugins livrés avec, et peut-être des pré-réglages, conf de certains plugins, conf du core. la notion qu’un plugin soit désinstallable ou pas, par contre, c’est inhérent à un plugin donné

RastaPopoulos :

le périmètre fonctionnel davux c’était tout simplement celui de SPIP tel qu’il existe depuis le début. le but était de pluginiser mais que la distribution officielle garde les mêmes fonctionnalités par défaut

davux :

mais du coup ça ne nécessite pas que les plugins ne soit pas désinstallables, si ? je comprends pas bien cette obligation en fait

RastaPopoulos :

une distribution c’est un tout cohérent, qu’on veut rendre intouchable pour les webmestres ; une base fixe. le squelette il est fait par rapport à la distribution installée en général ; si tu livres un client, faut qu’il puisse ajouter des fonctionnalités, pourquoi pas, mais pas qu’il puisse casser la base

davux :

pourquoi est-ce que la suppression du plugin brèves par exemple casserait le site ?

RastaPopoulos :

ah mais le plugin brève c’est le choix de la distribution officielle = garder le périmètre du SPIP d’antan

davux :

ok du coup c’est bien deux besoins différents : d’une part, des plugins par défaut, d’autre part des plugins intouchables qui sont pas forcément les mêmes, par exemple le plugin brèves on le veut par défaut pour garder le périmètre fonctionnel, mais on veut pas forcément qu’il soit intouchable

RastaPopoulos :

une distribution peut être un mix des deux. mais c’est au choix de celui qui crée la distribution de définir ce qu’il veut d’intouchable ou pas : par exemple Zpip intouchable

davux :

comment on livre un plugin par défaut sans le rendre intouchable ?

RastaPopoulos :

ça n’existe pas là. ya pas de notion de distribution actuellement c’est du bidouillage ; c’est du svn externals en dur. personne peut faire facilement sa distribution là, à part des fous qui font des scripts bash

davux :

ou alors livrer un répertoire plugins avec des trucs dedans

RastaPopoulos :

moi je dis : suppression définitive du répertoire extensions/ + fichier explicite config/distribution.xml ; un *vrai* système, propre, pas un bidouillage en bash

davux :

+ fichier config/intouchables.xml

RastaPopoulos :

non davux, après c’est la DTD du XML qui doit prévoir plusieurs descriptions : nom de la distribution, plugin par défaut touchables + plugin par défaut intouchables, etc, tout dans le même fichier

davux :

est-ce que la notion d’intouchable serait pas aussi dans certains cas propre au plugin ?

RastaPopoulos :

ben non davux, après c’est le jeu des < necessite >, et là c’est à toi de pas merder quand tu déclares ta distribution

kent11 :

à la fin de l’install on devrait lancer step d’ailleurs

RastaPopoulos :

et kent11 si pas internet ? si intranet ? si en local uniquement ?

davux :

donc le fichier distribution.xml déclarerait quoi comme info ?

kent11 :

non mais il irait chercher dans les plugins les nécessites et donc du coup => pas définis dans intouchables. en gros les dépendances sont là => elles sont activées ; si pas là => erreur en rouge

RastaPopoulos :

ben ce que je viens de dire davux, au minimum : nom de la distribution + plugins touchables + plugins intouchables à intégrer dans le ZIP et à partir de ce XML le ZIP peut se générer + activer les trucs par défaut au démarrage. en fait c’est la suite logique de SVP et STEP