Structure et administration du projet GNU
Version 1.0.1
par Brandon Invergo et Richard StallmanLe projet GNU développe et maintient le système d'exploitation GNU. Grâce à ce travail et aux activités annexes, il défend et promeut la liberté du logiciel, fondement philosophique du mouvement du logiciel libre.
Un système d'exploitation est fait de nombreux composants logiciels qui, ensemble, permettent à l'ordinateur d'effectuer des tâches utiles. Il comprend du code pour les fonctionnalités de bas niveau, comme le noyau et les pilotes, les bibliothèques système et aussi les programmes (utilitaires, outils, applications et jeux) que les utilisateurs exécutent explicitement. Le système d'exploitation GNU comprend des logiciels balayant tout ce spectre. Beaucoup d'entre eux sont développés et publiés par le projet GNU lui-même ; ce sont les « paquets GNU ». Le système GNU comprend également des composants qui sont des programmes libres publiés par d'autres développeurs, à l'extérieur du projet GNU.
De même que les programmes composant un système d'exploitation doivent fonctionner ensemble de manière cohérente, le projet GNU doit fonctionner de manière cohérente. La majeure partie de son travail consiste dans le développement de programmes particuliers, mais ces programmes ne sont pas des projets indépendants ; ils doivent s'accorder parfaitement entre eux pour que le système GNU soit tel que nous le souhaitons. C'est pourquoi nous avons structuré ce projet au cours des décennies. Rien de tout cela n'est nouveau, mais c'est la première fois que nous rassemblons tous ces renseignements en un seul endroit.
La Free Software Foundation fournit de l'assistance au projet GNU dans de nombreux domaines (infrastructure, services). Leur fonctionnement sort du cadre de ce document.
Structure du développement logiciel
L'essentiel de l'activité du projet GNU consiste à développer des logiciels. Voici comment ce développement est structuré.
Le Chef GNUisance
Le projet GNU est dirigé par le Chef GNUisance, Richard Stallman, fondateur du projet. Le Chef GNUisance est en principe responsable de toutes les décisions significatives, concernant en particulier la philosophie et les standards de l'ensemble, et c'est sous sa direction que le projet les met en application. Le Chef GNUisance donne l'agrément du projet aux nouveaux logiciels GNU, ou parfois en déclasse un quand cela est nécessaire. Il nomme également leurs mainteneurs.
En pratique, le Chef GNUisance délègue beaucoup de ces décisions et la plupart des tâches à d'autres. Il n'intervient que rarement dans les détails du développement d'un logiciel GNU, et dans la plupart des cas il s'agit d'une suggestion.
Assistants GNUisances
Cette équipe, résidant à <maintainers@gnu.org>, est le contact primaire des mainteneurs de logiciel GNU. Elle conserve la trace des activités de développement de l'ensemble du projet, garantit les délais de publication, vérifie que les mainteneurs suivent la philosophie et les directives de GNU et résolvent les conflits qui pourraient surgir. Elle intervient également lorsqu'un mainteneur démissione ou qu'un nouveau bénévole se présente pour reprendre un logiciel existant (auquel cas elle peut nommer le nouveau mainteneur au nom du Chef GNUisance).
De nouveaux membres sont recrutés en cas de besoin parmi les bénévoles de GNU. Quoi qu'il en soit, une aide est toujours bienvenue pour des tâches spécifiques ; les bénévoles de GNU que cela intéresse sont invités à nous contacter.
Mainteneurs de logiciels
Chaque logiciel GNU a des mainteneurs attitrés, nommés par le Chef GNUisance ou ses assistants. Les mainteneurs sont responsables devant le Chef GNUisance, sous l'autorité duquel ils sont nommés et, exceptionnellement, renvoyés ; ils sont chargés de développer leurs logiciels pour le compte du projet GNU.
La désignation initiale des mainteneurs est faite quand un programme est agréé en tant que logiciel GNU. Ils font normalement partie des développeurs principaux qui ont accepté d'en faire un logiciel GNU.
Au cours du temps, les mainteneurs donnent parfois leur démission. Dans certains cas, il n'y en a qu'un et le logiciel est laissé à l'abandon. Le Chef GNUisance délègue habituellement la recherche et la nomination de nouveaux mainteneurs à ses assistants. Voir la liste des paquets actuellement laissés à l'abandon. Nous demandons aux anciens mainteneurs de recommander des personnes susceptibles de leur succéder et nous examinons favorablement ces suggestions.
Les mainteneurs d'un logiciel recrutent souvent d'autres personnes pour contribuer à son développement et leur délèguent certaines décisions techniques. Toutefois, les mainteneurs gardent autorité sur l'ensemble du logiciel pour rester en mesure d'exercer leurs responsabilités vis-à-vis du projet GNU.
La responsabilité principale d'un mainteneur est de bien faire le travail concret de développement et de maintenance du programme, en accord avec la philosophie, la mission, les politiques et les décisions générales du projet GNU. Les mainteneurs doivent aussi s'assurer que leurs paquets s'intègrent bien à l'ensemble du système GNU. Pour en savoir plus, renseignez-vous sur les devoirs de base d'un mainteneur et les spécificités des programmes GNU.
En général, les mainteneurs déterminent les directions techniques qu'empruntent les logiciels, et donc prennent les décisions quotidiennes les concernant . De même, les mainteneurs de plusieurs logiciels peuvent coopérer pour s'assurer que leurs paquets fonctionnent bien l'un avec l'autre, et nous les encourageons à le faire. En de rares occasions, le Chef GNUisance prendra une décision concernant directement un ou plusieurs paquets GNU. Les mainteneurs de ces logiciels ont la responsabilité de mettre en œuvre la décision pour le compte du projet GNU.
On peut trouver des renseignements plus complets sur les responsabilités particulières des mainteneurs, ainsi que de la documentation technique sur la maintenance des logiciels GNU dans Information for Maintainers of GNU Software (Information pour les mainteneurs de logiciels GNU) et GNU Coding Standards (Standards GNU de codage).
Nous n'exigeons pas des mainteneurs de logiciels GNU qu'ils soient d'accord avec notre philosophie ou approuvent nos politiques, seulement qu'ils les suivent. Les mainteneurs et les contributeurs doivent mettre en œuvre notre philosophie, nos politiques et, occasionnellement, certaines décisions particulières, dans leur travail avec les logiciels GNU.
Assistance au développement des logiciels GNU
Plusieurs équipes fournissent de l'assistance au développement et à la gestion des logiciels GNU dans divers domaines. La plupart de ces équipes ont un coordinateur, et sauf indication contraire ce dernier est sous l'autorité du Chef GNUisance. En cas de doute, vous pouvez prendre conseil auprès des coordinateurs des bénévoles de GNU.
Évaluation des logiciels
L'équipe d'évaluation des logiciels, <gnueval@gnu.org>, évalue les logiciels proposés à GNU. Cela implique un examen minutieux de leurs fonctionnalités, ainsi que des questions pertinentes ayant trait à la liberté du logiciel et à l'intégration du programme à l'ensemble du projet GNU.
De nouveaux membres sont recrutés en cas de besoin parmi les bénévoles de GNU. Une expérience préalable de l'évaluation des logiciels non GNU sur Savannah est préférable.
Évaluation de la sécurité des logiciels
L'équipe d'évaluation de la sécurité des logiciels, <gnueval-security@gnu.org>, travaille avec l'équipe d'évaluation des logiciels. Elle détermine si la sécurité des logiciels proposés à GNU pose problème.
Les nouveaux membres sont recrutés en cas de besoin parmi les bénévoles de GNU.
Équipe de sécurité
L'équipe de sécurité aide à résoudre dans les plus brefs délais les bogues affectant la sécurité. Si le mainteneur d'un logiciel GNU laisse sans réponse un rapport concernant une faille de sécurité, le rapporteur peut faire remonter le problème à l'équipe de sécurité. Si cette dernière décide que le problème est urgent, elle peut développer un correctif et publier une version corrigée du logiciel. Les mainteneurs peuvent aussi demander conseil à cette équipe sur la sécurisation de leurs logiciels.
Les nouveaux membres sont recrutés en cas de besoin parmi les bénévoles de GNU.
Testeurs de plateformes
Les bénévoles de la liste de discussion platform-testers@gnu.org essaient les logiciels GNU sur différentes plateformes matérielles pour s'assurer qu'ils fonctionnent correctement.
Les nouveaux bénévoles sont les bienvenus.
Mentors
Les mentors GNU, <mentors@gnu.org>, proposent des conseils aux nouveaux mainteneurs de logiciels.
Nous demandons à des mainteneurs GNU chevronnés de les rejoindre.
Relecteurs
Il existe une liste de relecteurs susceptibles d'aider les mainteneurs de logiciels GNU à relire leurs textes en anglais. Pour solliciter une relecture, écrivez à <proofreaders@gnu.org>.
Autres équipes et services
Plusieurs autres équipes facilitent ou gèrent les opérations quotidiennes au sein du projet GNU, ou poursuivent des objectifs particulier du projet.
Comité consultatif de GNU
Le comité consultatif de GNU (GAC) a pour fonction de conseiller le Chef GNUisance, qui en nomme les membres. Le comité consultatif contrôle la santé du projet GNU au nom du Chef GNUisance et soumet les problèmes potentiels à discussion.
Savannah Hackers
Savannah est la forge logicielle du projet GNU. Elle héberge entre autres les dépôts de code, les outils de signalement de bogues et les interfaces des listes de discussion. Savannah est gérée par les Savannah Hackers. Ils assurent le fonctionnement continu de la forge et l'hébergement approprié des logiciels GNU sur ce service, et évaluent les logiciels non GNU qui demandent à y être hébergés.
Les nouveaux bénévoles sont les bienvenus.
Webmestres
Les webmestres de GNU assurent l'entretien et la mise à jour des pages web hébergées à https://www.gnu.org.
Les webmestres répondent aux différentes questions posées par le public au sujet des logiciels libres et des licences (quand la réponse est sans ambiguïté). Ils font un préfiltrage des demandes d'évaluation des distributions, évaluent les personnes qui voudraient devenir webmestres et mettent à jour la liste des miroirs.
Le groupe des webmestres est dirigé par le webmestre en chef, qui rend compte au Chef GNUisance. Les nouveaux bénévoles sont les bienvenus. Voir le Quiz des webmestres bénévoles.
Traducteurs web
Chaque langue a son équipe de traduction dirigée par un coordinateur. Consultez le Guide de traduction des pages web de www.gnu.org pour en savoir plus. Les coordinateurs rendent compte de leur activité au responsable des traductions de GNU qui, lui, rend compte au Chef GNUisance.
Nettoyeurs de liste
Un système semi-automatique, listhelper, gère les pourriels envoyés aux listes GNU. La plupart des pourriels sont arrêtés par des filtres, mais des modérateurs humains sont également disponibles pour contrôler la file de messages censés ne pas être des pourriels.
Les nouveaux membres sont recrutés en cas de besoin parmi les bénévoles de GNU.
Coordinateurs des bénévoles de GNU
Les coordinateurs des bénévoles de GNU, <gvc@gnu.org<, aident les nouveaux bénévoles à s'orienter dans le projet GNU vers des activités qui leur conviennent.
Les nouveaux coordinateurs sont les bienvenus, mais une expérience préalable de bénévolat au sein du projet GNU (et donc une connaissance étendue du projet) est vivement recommandée.
Équipe Éducation de GNU
L'Équipe Éducation encourage l'adoption du système d'exploitation GNU en environnement éducatif. Elle évalue également les écoles et s'entretient avec les administrateurs scolaires.
Les nouveaux bénévoles sont les bienvenus.
Groupe des standards GNU
Ce groupe évalue les propositions de mise à jour des standards GNU de codage. Tout le monde peut faire des propositions sur la liste de diffusion bug-standards. Le groupe en discute pour évaluer tous ses tenants et aboutissants, puis présente la proposition accompagnée d'une recommandation au Chef GNUisance, qui prend la décision finale. Le groupe est également responsable de l'installation des modifications dans le document ainsi que de sa mise à jour sur le web.
De nouveaux membres sont recrutés en cas de besoin parmi les bénévoles de GNU.
Correction des erreurs
Si des erreurs ou des omissions dans la description de la structure existante sont découvertes, ce qui est possible puisqu'il n'y a eu aucune documentation centralisée auparavant, nous mettrons à jour ce document, aussi bien dans sa version Org que sa version HTML en incrémentant le troisième chiffre du numéro de version. Les versions anciennes seront conservées dans un sous-dossier.
Modifications futures de la structure administrative
Les modifications de la structure administrative du projet GNU sont décidées par le Chef GNUisance après avoir consulté les contributeurs de GNU, en général sur les listes de discussion appropriées du projet. L'objectif de ces consultations est d'examiner les alternatives possibles et d'anticiper les effets positifs ou négatifs que ces modifications pourraient avoir, de manière à prendre des décisions judicieuses.
Pour indiquer les modifications adoptées, ce document sera mis à jour, aussi bien dans sa version Org que sa version HTML (voir section précédente), en incrémentant le premier ou le second chiffre du numéro de version.
Une version de ce document au format Org est également disponible.