Gentoo Linux

Cet article a été écrit il y a longtemps. Il est laissé à des fins historiques mais ne doit pas servir de référentiel.

Vous en avez marre des distributions qui vous fournissent des tas de logiciels dont vous n’avez pas besoin ? Vous avez essayé plusieurs distributions Linux et vous trouvez qu’elles se ressemblent toutes ? Essayez donc Gentoo Linux !

Si vous êtes curieux ou voulez essayer une nouvelle distribution, cet article a pour but de vous y introduire.


Qu’est-ce que Gentoo Linux ?

Histoire de Gentoo

Gentoo Linux, que j’abrégerai désormais Gentoo (prononcez Djentou), est une distribution gratuite et libre basée sur GNU/Linux née en 1999 sous le nom de Enoch. Daniel Robbins, son créateur, entend créer une distribution sans paquets précompilés et avec un minimum de paquets de base déjà installés.

Après quelques améliorations sur la compilation, la distribution fut très peu de temps ensuite, renommée en Gentoo Linux. Pour la petite histoire, vous savez certainement que la mascotte de Linux est un manchot, Tux. Le nom Gentoo vient du nom du manchot le plus rapide (connu sous le nom de manchot papou en français), évoquant ainsi la rapidité de cette distribution.

Les caractéristiques principales de cette distribution sont ses performances extrêmes optimisées selon le matériel, sa haute possibilité de configuration, son nombre de paquets à disposition, sa documentation et sa communauté.

Gentoo supporte de nombreuses architectures et est une des rares distributions pouvant cibler l’optique que vous prévoyez pour votre ordinateur : souhaitez-vous vous en servir pour jouer ? pour faire de la bureautique ? ou encore pour installer un serveur web ?

La philosophie de Gentoo veut donc vous permettre de concevoir votre système comme vous l’imaginez, et profitez des logiciels que seul vous avez décidé d’installer, et éviter les logiciels imposés par les distributions Linux. La compilation vous laisse de grandes opportunités sur les options du logiciel désiré. C’est donc la perfection, l’idéal que Gentoo cherche à atteindre avec des outils qui s’adaptent aux besoins de chaque utilisateur.

 

Portage, le cœur de Gentoo

Comme les distributions les plus connues, Gentoo a également son propre gestionnaire de paquets, appelé Portage.

À la différence d’Ubuntu avec dpkg, par exemple, ce sont les codes sources des programmes (et les binaires quand ceux-ci ne sont pas libres) que l’on trouve dans Portage.

Comme un exemple vaut mieux qu’un grand discours, voici une commande qui installe le logiciel KSudoku sur Ubuntu/Debian :

# apt-get install ksudoku

et la même commande pour Gentoo :

# emerge ksudoku

C’est tout. C’est Portage qui s’occupe de la compilation après ça, à l’aide d’un script ebuild qui automatise la compilation. Si vous n’aimez pas la console, notez que, comme pour Ubuntu, vous pouvez installer par la suite une application graphique pour gérer vos paquets ;)

 

La mascotte de Gentoo, Larry the Cow

« Larry the Cow était assez déçu de Linux. Les distributions à la mode lui semblaient toutes se ressembler et proposer toujours les mêmes choses. Rien de nouveau, jamais rien d’innovant. Puis Larry a essayé Gentoo. Et ça l’a impressionné. Il y trouva un système dans le style des ports de BSD avec un tas de fonctionnalités poussées. Il y découvrit un large choix de paquets à jour — pouvant être auto-compilés à l’aide des options d’optimisation et de la fonctionnalité de compilation — et uniquement ce qu’il souhaitait installer, plutôt que ce que n’importe quelle distribution aurait choisi pour lui à sa place. Larry the Cow avait alors le contrôle sur son ordinateur. Et il apprécia. »


La gestion des paquets sous Gentoo

Installation

Je vous avais dit que Gentoo a comme esprit de pouvoir être configurable, voyons ce que la commande de tout à l’heure a retourné dans mon cas :

# emerge -a ksudoku

 

Image manquante

L’option -a (--ask) ajoutée demande confirmation avant installation…

Détaillons chaque partie :

  • La première colonne : ebuild. Le ebuild est un script bash destiné à Portage. Il contient toutes les informations nécessaires pour automatiser l’installation et la compilation de programmes.
  • Le N signifie New. Portage m’informe que je vais installer ces paquets (il peut y avoir d’autres valeurs comme U (Update), R (Rebuild), D (Downgrade) à cet endroit).
  • La ligne en gras est le programme que je m’apprête à installer, les autres lignes sont les dépendances requises par le programme, elles sont installées automatiquement car elles sont nécessaires pour faire fonctionner KSudoku. Il s’agit généralement de bibliothèques (library), ça fonctionne pareil sous Ubuntu/Debian.
  • Maintenant, le plus intéressant, vous pouvez voir un USE="<des valeurs>" en fin de ligne de chaque programme. Mais qu’est-ce donc ?

 

La variable USE

Nous avons vu précédemment que Gentoo vous permettait de choisir les logiciels que vous souhaitiez en fonction de l’utilisation que vous voulez en faire. Mais ce n’est pas tout. Dans les logiciels eux-mêmes, il y a des fonctionnalités dont vous ne vous servez pas.

Prenons un exemple concret : si vous utilisez le gestionnaire de bureau Gnome, pourquoi vous encombrer du support du bureau KDE ? Les logiciels fonctionnent très bien avec Gnome…

Autre exemple : vous ne vous servez pas du multi-écran ? Inutile alors d’ajouter son support…

À l’aide de la variable USE vous activez et désactivez les fonctionnalités des logiciels, Portage se charge ensuite de compiler vos paquets avec uniquement ce que vous voulez (grâce au fameux ebuild).

 

Alors comment cela fonctionne-t-il ? À l’aide de mots-clés (flag) séparés par une espace, comme le montre l’image un peu plus haut. Ainsi, dans mon cas, avec le mot-clé handbook, je demande à ce que le manuel du logiciel soit installé avec KSudoku.

Il existe de nombreux mots-clés et ce serait trop long de choisir les mots-clés pour chaque paquet, donc la plupart des logiciels activent par défaut les fonctionnalités élémentaires (un lecteur vidéo aura par exemple le support de nombreux codecs audio et vidéo) mais si vous ne voulez pas le codec audio du mp3, vous pouvez toujours l’enlever en ajoutant un - devant, par exemple -mp3 pour ne pas avoir ce support.

 

Où sont placés ces mots-clés ? Vous connaissez la variable d’environnement PATH, elle contient des chemins séparés par des : pour indiquer où chercher les exécutables. USE est également une variable d’environnement, dont les mots-clés sont séparés par une espace dans notre cas. Vous avez le choix entre utiliser la variable USE globale (tous les logiciels ayant un mot-clé handbook verront leur manuel installé, par exemple), ou une variable USE locale, propre à chaque logiciel. Il est fortement conseillé de combiner les deux, mais vous aurez le temps de voir ça plus en détails si vous décidez d’installer Gentoo.


Méthodes d’installation

À venir.


Récapitulatif

Voici un tableau récapitulatif des avantages et inconvénients de Gentoo, par rapport à une distribution telle qu’Ubuntu.

Avantages Inconvénients
  • Performante : adaptée au matériel
  • Flexible : adaptée à ce que vous voulez en faire
  • Configurable : possibilité d’ajouter et supprimer des options en toute simplicité
  • Stable : Gentoo n’a pas de versions tous les X temps. Les logiciels sortent uniquement quand ils sont jugés stables, vous proposant ainsi des mises à jour progressives plutôt que plusieurs d’un coup.
  • Documentation d’installation : très complète
  • Communauté importante
  • Installation longue : l’installation du système peut prendre plusieurs jours la première fois
  • Ligne de commande : il faut en connaître les bases et être à l’aise avec
  • Maîtrise de l’anglais : un minimum de compréhension de l’anglais est parfois bien nécessaire
  • Connaître son matériel : c’est un + non-négligeable, il vous fera gagner du temps au démarrage de votre ordinateur (saute l’étape de détection du matériel)

Vous avez maintenant vu ce qui fait la force de cette distribution. Si vous sentez qu’elle vous intéresse, consultez la documentation officielle pour la suite des opérations d’installation.

Cet article est sous licence BY-SA. Il s’inspire de quelques pages du site officiel de Gentoo.