Manuel d'utilisation d'eselect Ciaran McCreesh Danny van Dyk Shyam Mani Bertrand Coppa Ce document est un guide de référence complet pour les utilisateurs de l'outil eselect. 1.0.251 2006-02-12 Introduction
Un rapide apperçu

eselect est un outil de configuration et d'administration pour les systèmes Gentoo. Il agit directement sur le comportement du système et doit donc être utilisé avec précautions par l'administrateur système. eselect est une structure modulaire pour écrire des utilitaires de configuration. Cette structure est constituée de&nbps;:

  • un programme principal appelé eselect.
  • divers modules (fichiers *.eselect) qui s'occupent de différentes tâches.
  • plusieurs bibliothèques qui aident à assurer un comportement cohérent et simplifie la création de nouveaux modules.

Un module fournit plusieurs actions. Il y a habituellement deux types d'actions : soit on affiche des informations (list et show sont assez usuelles), soit on met à jour le système d'une manière ou d'une autre (par exemple, set et update.) Chaque module dispose aussi des actions help et usage qui expliquent comment utiliser le module.

Certains modules installent des liens symboliques vers le programme principal. eselect gère ceci de façon intelligente. Par exemple, il fait l'association entre profile-config list et eselect profile list.
Avantages pour les utilisateurs et les administrateurs système

Pour les utilisateurs et les administrateurs système, des outils qui ont été écrits sous forme de modules eselect offrent de nombreux avantages par rapport à l'approche traditionnelle « d'écrire chaque outil à partir de rien » :

  • Les modules d'eselect disposent d'une interface utilisateur cohérente - Grâce à la structure d'actions d'eselect, il n'est plus nécessaire de retenir ou de retrouver des dizaines d'options de type -x pour chaque outil. Le formatage de la sortie des modules est aussi conforme à un standard.
  • Format d'aide cohérent - Tous les modules disposent d'une documentation facilement accessible via les actions help et usage.
  • Appelation cohérente des outils - Ce n'est pas la peine de retenir des dizaines de truc-config ou update-machin. Pour voir une liste des outils disponibles, il suffit de lancer eselect sans argument. Bien entendu, les outils du style truc-config sont toujours accessibles (par liens symboliques) si vous préférez.
  • Support garanti de $ROOT - Pour ceux d'entre vous utilisant $ROOT, vous n'aurez pas à vous préoccuper de savoir si tel outil le gère. Le support de $ROOT est obligatoire pour tous les modules eselect.
Avantages pour les développeurs et les mainteneurs de paquets

Écrire votre outil sous forme d'un module eselect plutot qu'en partant de zero vous apporte divers avantages :

  • Temps de développement raccourci - Le plus gros du travail a déjà été fait. eselect fournit une série de bibliothèques pour les taches communes et le programme principal eselect gère le plus dur pour vous. Tout ce qu'il vous faut faire, c'est fournir les actions et toute fonction particulière dont vous avez besoin.
  • Actions automatiques - Les actions help et usage sont générées automatiquement à partir de vos actions, il n'est donc pas nécessaire de perdre son temps à se soucier de les maintenir à jour.
  • Comportement cohérent et facile - Comme la gestion de la ligne de commande et l'entrée/sortie est divisé dans les fonctions de bibliothèques, écrire un module « standard » qui se comporte de façon cohérente avec les autres outils est vraiment simple.
  • Format familier - Pour les développeurs Gentoo, le format de module eselect va vite leur sembler familier. C'est un fichier bash avec une structure très similaire à celle des ebuilds.
Utiliser eselect
Utilisation

eselect doit être invoqué de la manière suivante :

# eselect [<global options>] <module> <action> <options>

eselect dispose d'une appelation cohérente des actions dans la plupart de ces modules. Il n'y a qu'une option globale pour le moment, --no-color, qui demande à eselect de ne plus envoyer de sortie en couleur comme par défaut. Voici les noms d'action standards. Chaque module peut fournir une partie de ces actions :

  • help - affiche l'écran d'aide du module.
  • usage - affiche les informations sur comment invoquer les actions du module.Print information on how to invoke the modules actions.
  • version - affiche la version du module et autres informations utiles.
  • list - affiche les options disponibles.
  • show - affiche la ou les configuration(s) active.
  • set - choisit une des options offertes par list.
  • enable - active une des fonctionnalités spécifiques du module.
  • disable - désactive une des fonctionnalités spécifiques du module.
  • update - idem set, mais selectionne automatiquement une option plutôt que de la prendre en paramètre.
  • scan - récupère des informations sur le système et les conserve pour un usage futur du module.

Une session typique ressemblera à ceci pour la plupart des modules :

(Trouver les options disponibles pour un module)
# eselect <module> list
These selections are available:
	[1]<first>
	[2]<second>
(Activer une option)
# eselect <module> set <first>
(Afficher la configuration actuelle)
# eselect <module> show
Active Selection:
	<item1>

En général, vous pouvez activer les objets par nom ou par numéro.