Gentoo Logo

1.  Utiliser un sous-ensemble de l'arbre Portage

Exclure des paquets ou des catégories

Vous pouvez mettre certains paquets ou certaines catégories à jour et en ignorer d'autres. Portage fait exclure ces catégories ou paquets par la commande rsync qu'il utilise pour l'action emerge --sync.

Dans /etc/make.conf, la variable PORTAGE_RSYNC_EXTRA_OPTS doit définir le nom du fichier qui contient les filtres d'exclusion.

Exemple de code 1.1 : Définir le fichier qui contient les filtres d'exclusion dans /etc/make.conf

PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes"

Exemple de code 1.1 : Exclure tous les jeux dans /etc/portage/rsync_excludes

games-*/*

Veuillez remarquer que cela peut causer des problèmes dans la gestion des dépendances puisque de nouveaux paquets pourraient dépendre de paquets que vous avez exclus.

1.  Ajouter des ebuilds non officiels

Définir un répertoire superposé

Portage peut utiliser des ebuilds qui ne se trouvent pas dans l'arbre Portage de Gentoo. Pour cela, créez un répertoire, par exemple /usr/local/portage, dans lequel vous pourrez copier des ebuilds d'origines diverses. Vous devrez utiliser la même structure que pour l'arbre officiel.

Ensuite, définissez la variable PORTDIR_OVERLAY dans le fichier /etc/make.conf et attribuez-lui le nom du répertoire que vous avez créé. Portage utilisera alors les ebuilds qui se trouvent dans ce répertoire, mais ne les modifiera pas lors de l'opération de synchronisation emerge --sync.

Utiliser plusieurs sur-couches

Les utilisateurs avancés ont parfois besoin de conserver plusieurs répertoires superposés, par exemple pour des ebuilds en test ou des arbres d'origines diverses. Le paquet app-portage/gentoolkit-dev contient l'outil gensync qui permet de maintenir ces répertoires à jour.

L'outil gensync permet de mettre tous les répertoires superposés à jour en une seule opération. À chaque répertoire doit correrspondre un fichier .syncsource dans le répertoire /etc/gensync/ qui contient son nom, son emplacement, son identifiant, etc.

Supposons que vous avez deux répertoires superposés appelés java (pour vos développements d'ebuils java) et entapps (pour les ebuilds utilisés dans votre entreprise). Vous pouvez mettre vos répertoires à jour avec la commande suivante :

Exemple de code 1.1 : Mettre vos répertoires Portage superposés à jour avec gensync

# gensync java entapps

1.  Paquets gérés hors de Portage

Utiliser Portage avec des paquets gérés manuellement

Dans certains cas, vous voudrez peut-être configurer, installer et maintenir des paquets vous-même sans que Portage ne s'en mêle même si le paquet est disponible dans l'arbre Portage. Des cas typiques sont le noyau et les pilotes nvidia. Vous pouvez configurer Portage pour qu'il sache que certains paquets ont été installés manuellement. On appelle cela « injecter un paquet » et cela se fait grâce au fichier /etc/portage/profile/package.provided.

Par exemple, pour informer Portage que vous avez installé le noyau gentoo-sources-2.6.11.6 manuellement, ajoutez la ligne suivante au fichier /etc/portage/profile/package.provided :

Exemple de code 1.1 : Une ligne dans package.provided

sys-kernel/gentoo-sources-2.6.11.6

Dernière mise à jour le 26 février 2007

Une version originale plus récente datée du 13 juillet 2010 existe.

Résumé : Dans « Utiliser un sous-ensemble de l'arbre Portage », vous trouverez quelques trucs et astuces pour gérer votre propre arbre Portage, ne synchroniser que les catégories de votre choix, insérer des paquets et un peu plus encore.

Donate to support our development efforts.

Copyright 2001-2012 Gentoo Foundation, Inc. Questions, Comments? Contact us.