Comment nous construisons Ubuntu
NouvellesUbuntu est l’une des distributions Linux les plus sophistiquées disponibles, fusionnant le travail d’une communauté mondiale de contributeurs qui fournissent un large éventail de compétences pour faire d’Ubuntu ce qu’elle est..
Alors que nous profitons tous des fruits d’une nouvelle version d’Ubuntu tous les six mois, de nombreuses personnes ont demandé à l’équipe au fil des ans comment ce large éventail de contributeurs parvient à s’unir pour créer une nouvelle version d’Ubuntu..
Dans cet article, nous allons expliquer comment une nouvelle version d'Ubuntu est créée, quels types de compétences et de talents y sont associés, et quelle structure organisationnelle nous utilisons pour rassembler cet éventail de contributions au sein d'une unité cohérente.
Sorties régulières
Au cœur du projet Ubuntu se trouve l’engagement de publier une nouvelle version tous les six mois. Contrairement à de nombreux projets logiciels qui identifient un ensemble de fonctionnalités principales à intégrer dans une version et qui sont souvent disposés à retarder la publication jusqu'à ce que ces fonctionnalités soient terminées, Ubuntu ne publie jamais en retard. Si une fonctionnalité donnée n'est pas prête à temps pour la publication, nous la supprimons sans retarder la publication..
Cette période de six mois est appelée cycle de publication et est publiée au début d'un nouveau cycle. Par exemple, la version actuelle du développement (Ubuntu 10.10 Maverick Meerkat) a son calendrier publié à l'adresse http://wiki.ubuntu.com/MaverickReleaseSchedule..
Le cycle se décompose en quelques composants clés:
Se fige
Un gel survient lorsqu'un type de développement particulier doit cesser, généralement prêt à être publié. Il existe différents types de gel, tels que le gel d'interface utilisateur (plus de modifications dans les éléments d'interface utilisateur), le gel de chaînes (plus de traductions) et le gel de fonctionnalités (plus de développement de fonctionnalités significatives).
Alphas
Au cours d'un cycle de publication, nous publions un certain nombre de versions instantanées au fur et à mesure de l'évolution de la version. Ces versions alpha sont parfois incomplètes et boguées (en raison de leur nature de travail en progrès), mais fournissent une bonne occasion de cibler des fonctionnalités à leur intention.
Bétas
Les versions bêta sont des versions complètes qui nécessitent de nombreux tests. Nous recommandons souvent la version bêta comme un bon moment pour les testeurs de mettre à niveau, Ubuntu et les problèmes de fichiers.
Libérer le candidat
Une version candidate vient juste avant la version finale et est publiée pour stimuler une dernière partie des tests de la communauté. Ce cycle de six mois et ces différents éléments sont présents dans chaque version, et la communauté est invitée à passer à une nouvelle version de développement dès son ouverture, bien que les utilisateurs habituels veuillent attendre les dernières étapes de développement avant de essayez la nouvelle version.
Tout commence avec Debian
La manière dont nous construisons Ubuntu consiste à extraire le code source de projets open source (appelés en amont) et à le télécharger sur une machine de génération dans le site d'hébergement du projet Launchpad, qui construira un paquet prêt à être installé dans un système Ubuntu. Ces paquetages s’unissent pour former la distribution complète, depuis le noyau qui démarre la machine jusqu’aux applications que vous exécutez..
La première phase du cycle de publication consiste à intégrer de nouvelles versions de composants en amont dans Ubuntu. Pour ce faire, nous importons l’archive complète du paquet Debian et la construisons pour Ubuntu..
Nous utilisons Debian car c’est le moyen le plus efficace de rester à jour avec le code en amont (les responsables Debian conditionnent fréquemment les nouvelles versions en amont, souvent plus rapidement que nous ne le pouvons), et parce que Debian et Ubuntu se ressemblent dans de nombreux façons si leurs corrections de bugs sont souvent des corrections de bugs pour nous aussi.
Avec cet ensemble principal de paquets de Debian importés dans Ubuntu, nous apportons ensuite un ensemble de modifications à de nombreux paquets (appelés correctifs), qui transforment le paquet Debian en un paquet qui ressemble davantage à Ubuntu..
Par exemple, les paquets Debian pour Gnome n'incluent pas beaucoup de modifications, telles que choix de logiciel par défaut, thème par défaut, fonctionnalités de panneau supplémentaires, etc. Tous ces correctifs qui transforment les paquets Debian en paquets Ubuntu sont librement disponibles à l'adresse http: //patches.ubuntu.com.
La prochaine étape consiste à décider du développement de nouvelles fonctionnalités que nous voulons faire et à intégrer ces fonctionnalités dans la nouvelle version de développement Ubuntu. Le Sommet des développeurs Ubuntu Les décisions et les plans concernant les fonctionnalités principales sont définis lors de notre sommet annuel des développeurs Ubuntu, qui se tient deux fois par an. Son emplacement alternent entre les États-Unis et l'Europe..
Le Sommet des développeurs Ubuntu (UDS) est un événement au cours duquel nous envoyons toute notre équipe de développement Ubuntu et parrainons un nombre important de membres de la communauté..
L'événement d'une semaine est divisé en neuf pistes (Bureau, Serveur, Communauté, Mobile, Conception, Fondations, Assurance qualité, Sécurité et Ubuntu sur ARM), chacune ayant un responsable de piste qui programme des sessions pour chaque piste tout au long de la semaine. Ces sessions sont demandées par le personnel de Canonical, les membres de la communauté, etc., et sont conçues pour fournir un lieu de discussion et de planification de fonctionnalités particulières, spécifiquement adaptées à la nouvelle version..
Tout au long de la semaine UDS, une vaste gamme de sujets est discutée, des décisions sont prises, des solutions sont développées et, finalement, ces conclusions sont documentées. Et ainsi, nous passons à la phase de blueprinting.