GNOME
En 1996, Miguel de Icaza se lance dans une aventure qui va transformer le paysage des systèmes libres : créer un environnement de bureau graphique complet pour GNU/Linux. Le projet GNOME (GNU Network Object Model Environment) répond alors à une frustration bien réelle. Les systèmes UNIX tournaient sans problème sur les serveurs, mais leur interface utilisateur restait rudimentaire. Comment espérer séduire le grand public avec des outils aussi austères ?
La situation se complique avec l’émergence de KDE, qui repose sur Qt, une bibliothèque dont la licence heurte les principes du logiciel libre. La communauté se trouve face à un dilemme : faut-il recréer Qt en version libre ou partir sur autre chose ? L’équipe de GNOME tranche pour la seconde option. Émuler une API existante leur semble une impasse, comme le montrent les difficultés de projets tels que GNUstep, Wine ou LessTif.
Le choix se porte sur Gtk+, une bibliothèque graphique née pour les besoins de GIMP, le logiciel de retouche d’images développé par Peter Mattis et Spencer Kimball. Écrite en C mais pensée objet, Gtk+ offre des bases solides. Autour d’elle viennent se greffer des composants comme Gdk Imlib pour gérer les images ou VFS pour manipuler les fichiers.
Les débuts du projet reflètent l’esprit du libre : discussions ouvertes sur des listes de diffusion, code source partagé via CVS, accès direct au dépôt pour les contributeurs qui ont fait leurs preuves. La version 0.0 sort en août 1997. Mars 1999 voit arriver la 1.0, aussitôt adoptée par Red Hat Linux comme environnement par défaut.
GNOME se construit de manière modulaire. Des bibliothèques comme libgnome ou libgnomeui côtoient des applications de base et des outils de développement. Cette organisation donne de la souplesse car chacun travaille sur son composant sans marcher sur les pieds du voisin. L’interface suit des règles de style strictes pour garantir une cohérence d’ensemble.
Dès le départ, l’internationalisation compte parmi les priorités. Le système GNU gettext traduit les interfaces dans de nombreuses langues. GNOME devient accessible aux utilisateurs du monde entier, bien au-delà de la sphère anglophone.
L’année 1999 voit naître deux entreprises autour du projet : Eazel et Ximian, cette dernière fondée par Miguel de Icaza. Eazel développe Nautilus, le gestionnaire de fichiers, mais ferme boutique en 2001. Ximian connaît un meilleur sort en proposant une version enrichie de GNOME et des outils comme Evolution, avant que Novell ne la rachète en 2003.
Un cap se franchit en 2000 avec la création de la GNOME Foundation. Cette structure vient coordonner les efforts des différents acteurs et préserver les objectifs initiaux. La fondation associe un conseil d’administration élu démocratiquement et un conseil consultatif qui réunit entreprises et organisations à but non lucratif.
Cette année, Sun Microsystems fait un choix remarqué : GNOME remplace CDE sur Solaris. Le projet gagne ses lettres de noblesse dans le monde professionnel. Sun va plus loin en créant un laboratoire dédié à l’accessibilité, ouvrant l’environnement aux personnes en situation de handicap.
L’architecture technique s’appuie sur CORBA (Common Object Request Broker Architecture) pour faire communiquer les composants entre eux. Cette technologie autorise l’interaction entre applications écrites dans des langages différents. Les développeurs créent ORBit, une version allégée de CORBA taillée pour les besoins de GNOME.
Le projet encourage l’utilisation de langages de script comme Scheme et Perl. Cette ouverture simplifie la personnalisation des applications et leur automatisation. Le jeu de cartes GNOME exploite Scheme pour définir les règles des différentes variantes de solitaire.
Red Hat s’impose comme contributeur de poids, notamment via son laboratoire de recherche avancée. L’entreprise met en place une compilation quotidienne qui améliore la qualité du code en détectant vite les problèmes. Novell, Collabora et Intel apportent aussi leur pierre à l’édifice.
GNOME instaure un cycle de développement rigoureux avec des versions majeures tous les six mois. Ce rythme soutenu et innovant pour l’époque prévoit des phases de gel progressif : d’abord les fonctionnalités, puis l’interface, enfin les traductions. Cette méthode stabilise les versions sans précipitation.
La version 2.0 de 2002 consolide l’architecture du projet. Elle améliore l’intégration des composants et harmonise davantage l’interface. Les versions suivantes poursuivent ce travail de cohérence tout en ajoutant de nouvelles possibilités.
GNOME montre qu’un projet libre sert à rassembler des bénévoles et des entreprises autour d’objectifs communs. Sa gouvernance équilibrée, qui mêle démocratie communautaire et participation des acteurs économiques, inspire d’autres initiatives. Le projet prouve qu’une alternative libre aux environnements propriétaires peut atteindre un niveau professionnel, tant en qualité qu’en fonctionnalités.