Développeurs : pourquoi Debian modifie parfois vos sources

Suite à certains commentaires sur LinuxFR qui attaquaient le travail des responsables Debian chargés de la maintenance d’applications qui sont fournies sous forme de paquets, j’ai pensé qu’une petite mise au point (et accessoiremment le point de vue d’un de ces responsables :) ) pourrait vous intéresser.
Les développeurs des applications que l’on retrouve dans l’archive officielle ne sont souvent pas des administrateurs système chevronnés. Il se peut même qu’en programmation ils soient des débutants qui ont produit un projet qui tient bien la route et rencontre le succès (je le souhaite à tous ceux qui voudraient tenter l’aventure) dès le premier essai. Mais dans ce cas il est évident et bien compréhensible qu’ils ignorent certains aspects système et sécurité qui pourtant sont très importants lorsqu’on incorpore son logiciel dans une distribution. Le responsable/développeur Debian qui va produire le paquet Debian de l’application va, lui, voir ces défauts apparaître comme le nez au milieu de la figure.
La responsabilité du responsable/développeur Debian est également engagé car c’est lui qui prend la responsabilité d’inclure le logiciel dans la distribution. Le programme contenu dans le paquet peut donc nécessiter des modifications pour correctement s’insérer au sein de la collection des 39000 paquets proposés par Debian à ce jour. Ces modifications permettent d’adapter le logiciel au fonctionnement de Debian afin, par exemple, de vous assurer que votre logiciel sera correctement mis à jour quand trois ans plus tard vous aurez l’idée de le mettre à jour. N’oublions pas également de signaler que ce même responsable fournira du support à tous ceux qui lui signalent un problème gratuitement et bien souvent sur son temps libre.
Oui un individu qui code dans son coin et qui pond un programme a le plus souvent besoin de conseils pour bien s’insérer au niveau système. C’est pour ça que easy_install/pip/rubygem/cpan sont des logiciels d’installation automatisée qui rendent des services mais restent du quick&dirty pour les développeurs pressés sur des bécanes de développement. Aptitude quant à lui assure que tous vos programmes seront mis à jour lorsque votre distribution évolue. C’est un paramètre dont le développeur se fiche, mais pas l’administrateur système qui maintient le système pendant 3 ou 5 ans quand le développeur est parti sur d’autres projets.
Il est évident que chez Debian, on fait énormément confiance aux développeurs. Il y a juste des paramètres qu’ils ne connaissent pas au début et qu’on va lui communiquer pour que l’application et le paquet Debian évoluent pour le mieux. Tout le monde est gagnant à ce qu’un programme s’exécute bien sur un système, projet amont et la distribution en question.
Ce processus d’adaptation du code source du projet amont à Debian n’est pas automatisable. Trop de paramètres entrent en jeu. Et qui dit intervention humaine dit erreur possible, inutile de se voiler la face. D’un autre côté dans l’extrême majorité des cas, tout se passe pour le mieux pour les deux parties. Les patchs crées par le responsable Debian sont bien souvent proposés au projet amont qui peut décider de les intégrer. L’univers du libre permet cette fructueuse collaboration. J’entretiens moi-même d’excellents rapports avec les projets amonts des paquets que je maintiens et suis à leur écoute autant que faire se peut.

Vus : 411
Publié par Carl Chenet : 277