Je pense qu'il faudrait créer des *modules indépendants* correspondant aux types de médias : Audio, Image, Texte, Video (c'est la liste de types gérés par emballe_medias). On installerait donc tout ou partie de ces quatre modules, en plus d'un noyau qui serait mediaspip_core. Ce n'est pas encore clair pour moi si c'est possible, c'est à dire si on peut vraiment faire des modules indépendants selon les types de médias, ou s'il y a des intrications entre les types de médias. A noter : il y a aussi des dépendances entre types de documents (texte nécessite image, video nécessite image et audio). Pour les plugins SPIP, je pense qu'il faut : 1. retirer tout le code relatif aux types de médias dans mediaspip_core, mediaspip_config et mediaspip_init 2a. créer quatre nouveaux plugins : mediaspip_audio, mediaspip_image, mediaspip_texte, mediaspip_video, qui extendraient ces trois plugins de base 2b. (alternative) créer pour chacun des trois plugins de base, quatre nouveaux plugins, par exemple pour étendre mediaspip_core : mediaspip_core_audio, mediaspip_core_image, mediaspip_core_texte, mediaspip_core_video. ça risque de faire beaucoup au final, mais ça préserve mieux la distinction entre core, config et init. Pour le script d'installation, je pense que la solution la plus simple est d'ajouter des options à la commande d'installation, par exemple : "--no-audio", "--no-image", "--no-texte", "--no-video", permettant de choisir quels modules ne pas installer (c'est à dire : quels plugins de SPIP et quelles librairies système). J'ai recensé les dépendances selon le type de média : -* Module "audio" : -** autre module : aucun -** apt-get : libmp3lame-dev libaacplus-dev libopencore-amrnb-dev libopencore-amrwb-dev librtmp-dev libfaac-dev libfaad-dev libmodplug-dev libgsm1-dev libspeex-dev libvorbis-dev libtwolame-dev flac vorbis-tools -** libs compilées : libopus ffmpeg mediainfo -** plugins : podcast -** plugins-dist : getid3, mediaspip_player, spipmotion, emballe_medias_spipmotion -* Module "image" : -** autres modules : aucun -** apt-get : php5-imagick php5-gd libopenjpeg-dev imagemagick pngnq optipng libjpeg-progs -** libs compilées : xmp_php -** plugins : legendes, metadonnees_photo, smush, xmp_php -** plugins-dist : doc2img, emballe_medias_doc2img, fonctions_images -* Module "texte" : -** autres modules : "image" -** apt-get : xpdf poppler-utils catdoc -** libs compilées : aucune -** plugins : fulltext, epub_reader, pdfjs, podcast -** plugins-dist : aucun -* Module "video" : -** autres modules : "image" et "audio" -** apt-get : libvpx-dev libtheora-dev libxvidcore-dev libschroedinger-dev libass-dev -** libs compilées : x264 flvtool -** plugins : aucun -** plugins-dist : aucun -* core -** apt-get : build-essential curl subversion git-core checkinstall libcxxtools-dev yasm scons libboost-dev zlib1g-dev unzip apache2.2-common mysql-server php5-dev php5-mysql php-pear php5-curl libapache2-mod-php5 texi2html -** lib : aucune -** plugins : ancres_douces, bigbrother, calendrier_mini, cextras2, cextras2_interface, criteres_suivant_precedent, diogene_geo, diogene_mots, diogene_notation, diogene_spipicious, gis, google_analytics, googleplus1, gravatar, inscription3, memoization, mesfavoris, microblog, minibando, multilang, notation, nuage, oembed, openid, opensearch, pages, piecon, polyhierarchie, porte_plume_documents, recommander, saveauto, signalement, socialtags, skel_mediablog, sparkstats, spip_piwik_2_0, spip-bonux, spipicious_jquery, verifier, yaml, zeroclipboard -** plugins-dist : auteurs_syndic, comments, contact, crayons, diogene, diogene_gerer_auteurs, diogene_licence, emballe_medias, embed_code, facd, facteur, jquery_file_upload, licence, mediaspip_config, mediaspip_core, mediaspip_init, menus, nospam, notifications, palette, saisies, selecteur_generique, swfupload, z-core, zen-garden, zpip-dist Je n'ai pas vérifié pour quel type de médias l'ajout de debian-multimedia est nécessaire, j'imagine que pour audio et video. Enfin, au niveau du suivi de version, je pense qu'il faut : -* créer une branche dédiée ("minidist" ?) pour chacun des trois plugins mediaspip_config, mediaspip_core, mediaspip_init -* créer sur la zone les nouveaux plugins, selon le choix entre 2a ou 2b, avec juste une branche "minidist" et pas de "trunk" pour l'instant -* créer une branche "minidist" sur les scripts d'installation de mediaspip (MediaSPIP/scripts/). Dites moi ce que vous en pensez.