La distribution Gentoo Linux est basée sur le système de package dit Portage. Il est conçu pour être modulaire, portable, facile à maintenir, flexible et optimisé pour la machine de l’utilisateur. Les paquets sont normalement construits à partir du code source continuant la tradition de la portabilité, cependant pour certaine raison certains gros logiciels sont aussi disponible en binaire précompilés pour différentes architectures.
Historique :
Gentoo a été initialement crée par Daniel Robbins sus le nom de Enoch Linux distribution. L’objectif était de créer une distribution qui était construite à partir du code source, optimisée pour le matériel, qui inclut uniquement les programmes nécessaire et qui permet de diminuer la charge de maintenance grâce à des scripts. La première version fut distribuée en décembre 1999.Cependant la phase de compilation révéla des problèmes avec le compilateur GNU gcc, du coup Daniel Robbins et d’autres contributeurs expérimentèrent la version « forked » de gcc et trouvèrent une version qui permettait d’accroitre la vitesse de 10à 200% par rapport à la branche officielle de gcc. C’est à partir de ce moment que Enoch se fit une réputation de rapidité qui fut à la source du changement de nom pour Gentoo Linux (Gentoo est l’espèce de pinguin qui nage le plus vite ) . Ces modifications intégrèrent plus tard la branche officiel de gcc et d’autres distributions linux purent bénéficier de cette augmentation de vitesse
Après des problèmes sur un bug sur son propre système Robbins arrété la développement et changea pour FreeBSD pendant plusieurs mois, il dira plus tard » J’ai décidé d’ajouté certaines fonctions de FreeBSD pour faire du sytème d’autobuild (maintenant appelé portage) une réelle nouvelle génération de systeme portables.
Gentoo Linux 1.0 fut annoncé le 31 mars 2002.
Robbins voulait que Gentoo Linux devienne un projet commercial réussit mais trouva un business modele difficile à porter à terme. En 2004 il créa l’organisation non lucrative Gentoo Foundation et transféra tous les copyright à celle ci et démissionna du poste d’architecte en chef du projet.
Il s’en suivi suite à une élection la mise en place de 5 membres annoncés en 2006 avec aussi 7 membres subsidiaires. Ils furent élus par 117 développeurs actifs de Gentoo.
Portabilité
Bien que originellement conçue pour l’architecture x86 elle a été portée sous bien d’autres et fonctionne actuellement sous x86, x86-64, IA-64, PA-RISC; PowerPC, PowerPC 970, SPARC64, MIPS, DEC Alpha, System Z/s390, PS3 .
Il y a même un projet Gentoo pour Mac OS X qui permet aux utilisateurs de Mac OS X d’utiliser le système Portage pour installer des paquets similaire à ce que propose Fink avec des paquets précompilés.
Portage
Portage est le système de management de paquets Gentoo. Il est similaire dans l’idée au BSD ports collections: la concept original est basé sur le système FreeBSD ports. Cependant l’arbre Portage ne contient pas les répertoires des Makefiles, mais utilise à la place des ebuilds bash sscrips qui décrivent des fonctions séparées pour télécharger, configurer, make et installer ou supprimer un paquet et d’autres fonctions additionnelles qui peuvent être utilisées pour installer l’environnement nécessaire pour un paquet.
Portage est aussi le nom de l’utilitaire par défaut de management des paquets. Ce paquet fournit de nombreux scripts, dont l’utilitaire emerge qui est écrit en Python et qui peut être utilisé par les utilisateurs avec droits pour inspecter et modifier l’ensemble des paquets installés sur un sytème Gentoo. Emerge fonctionne d’une façon similaire à ce que l’on trouve dans les autres collections portable, en entrant dans un répertoire dans l’arbre et utilisant alors emerge au lieu de make)pour réaliser les opérations de management des paquets. Il lit maintenant les informations depuis le fichier /etc/make.conf pour déterminer ou est l’arbre de Portage.
Installation
La façon la plus simple d’installer une Gentoo est d’utiliser les Gentoo Live CD ou bien comme je l’ai fait avec une clé USB crée avec Unetbootin sur laquelle on boot.
Ensuite on procède à l’installation en suivant le Gentoo Handbook disponible sur le site officiel Gentoo . http://www.gentoo.org/doc/fr/index.xml
Lors de l’installation d’une Gentoo vous aurez notamment à compiler votre noyau et ainsi avoir un noyau optimisé dès cette étape pour votre matériel.
Naturellement rien que par ce fait d’avoir à recompiler son noyau l’installation d’une Gentoo prend un certain temps, les autres paquets de logiciels sont eux même compilés lors de l’installation ce qui est plus lent que de télécharger des binaires précompilés comme c’est le cas pour une Debian ou Ubuntu par exemple. L’installation de gros paquets comme Gnome ou OpenOffice peuvent prendre du coup pas mal de temps mais la rapidité qui en résulte par la suite est trés remarquable.
Avantages
- Des dépendances souples :
- Comme les paquets sont compilés à partir de la source, les dépendances entre les paquets sont plus flexibles que sur les autres distributions binaires et peuvent être explicitement activé ou désactivé dans la pluspart des cas. les distributions binaires offrent généralement cette flexibilité en offrant plusieurs version d’un meme paquet sous différents alias ou bien en séparant les paquets en composant plus modulaires. Comme le nombre de configurations possibles augmente de façon combinatoire avec le nombre d’options de compilations il n’est pas possible de stocker les binaires pour toutes. Gentoo est la seule à offrir une grande variété d’options de compilation que ne peuvent de fait pas offrir les autres distributions.
- Les paquets les plus récents :
- En synchronisant régulièrement leur arbre de portage, les utilisateurs de Gentoo sont à même d’utiliser les paquets les plus récents disponibles, plutot que de rester figé à une date particulière de release. Cela est le fruit du fait que les logiciels sont disponibles sont disponibles immédiatement sans le système de management de paquet dont ont besoin les autres distributions en particulier celles qui sont fixées à une release particulière. Cela a aussi naturellement sa contrepartie quand on update un système Gentoo aucune garantie n’est fait sur la compatibilité arrière des autres paquets chose que font les autres distributions qui font uniquement une intégration partielle de nouveautés dans une release pour assurer cette compatibilité.