ebuild repository/fr

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page Ebuild repository and the translation is 48% complete.

Outdated translations are marked like this.
Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎polski • ‎русский • ‎中文(中国大陆)‎ • ‎日本語 • ‎한국어

Warning: Display title "ebuild repository/fr" overrides earlier display title "Dépôt ebuild".

Resources

Un "dépôt ebuild", également appelé "overlay" est une structure arborescente composée de répertoires et de fichiers, utilisée pour enrichir la liste des logiciels disponibles dans le gestionnaire de paquets du système. Un tel dépôt peut contenir des ebuilds pour un ou plusieurs EAPI.

Le dépôt principal sur Gentoo est connu sous le nom de dépôt ebuild Gentoo. Il contient des ebuilds maintenus par les développeurs officiels de Gentoo et les membres de la communauté (à travers le projet Project:Proxy Maintainers). Les administrateurs système peuvent ajouter des dépôts ebuild supplémentaires au système en utilisant divers utilitaires et méthodes décrits ci-dessous.

Dépôts

Un arbre alternative n'est ni plus ni moins qu'un ensemble de fichiers (ebuilds, fichiers de métadonnées principalement). Ils peuvent-être récupérés depuis des dépôts publics (git, CVS, SVN ...) ou-bien téléchargés en tant qu'archives, et décompressés manuellement sur le système. Il est cependant recommandé d'utiliser les dépôts gérés par des tiers confiance, puisqu'installer un nouvel arbre alternatif aura comme incidence que Portage consultera cette nouvelle source avant de décider quel logiciel installer. En cas de compromission du dépot, des packets compromis pourraient alors se retrouver installés sur le système.

L'approche désormais utilisée par défaut pour la gestion de dépôts se passe à travers de /etc/portage/repos.conf qui, comme d'autres emplacements relatifs à Portage, peut être également un répertoire.

Les définitions de dépôt dans /etc/portage/repos.conf/ informe aussi Portage comment le dépôt, s'il le doit, peut être mis à jour. Avec ceci, l'appel de emerge --sync mettra automatiquement à jour les dépôts.

Une méthode dépréciée mais encore supportée consiste à utiliser la variable PORTDIR_OVERLAY dans /etc/portage/make.conf. Cette variable peut pointer vers un ou plusieurs emplacement dont le système de fichiers est celui dans lequel les dépôts sont disponibles.

Pour plus d'information, voir /etc/portage/repos.conf et l'article Portage/Sync.

Priorités

Chaque dépôt ebuild dispose d'une priorité unique. Ceci assure que, dans le cas où une version spécifique serait trouvée dans plusieurs dépôts, la résolutions soit non ambiguë. Les ebuilds des dépôts à une plus haute priorité (par exemple, 60) sont prioritaires par rapport à ceux trouvés dans des dépôts de priorité moindre.

La commande suivante fournit la liste des dépôts ebuilds avec leur priorité (cherchez la chaîne "Repositories") :

user $emerge --info --verbose
user $portageq repos_config /

Le dépôt Gentoo ebuild aura une priorité de -1000, ce qui signifie que tous les autres dépôts ont généralement priorité s'ils reçoivent une priorité supérieure. C'est le comportement par défaut, car les dépôts ebuild sont conçus pour "enrichir" ou "surcharger" le dépôt Gentoo.

Logiciels disponibles

Il existe de nombreux outils pour supporter les arbres alternatifs.

Layman

L'application layman rend plus simple la gestion et la mise à jour de nombreux dépôts ebuild additionnels. C'est une application en ligne de commande à travers laquelle les dépôts ebuild publiques disponibles peuvent être listés, auxquels ont on peut s'abonner ou se désabonner, ainsi que les mettre à jour.

Il supporte la méthode via make.conf aussi bien que celle via repos.conf.

Pour plus d'informations, voir Layman et Project:Portage/Sync#Layman_configuration.

emaint

Voir l'article Synchronisation (projet Portage) et man 1 emaint.

eix

eix-sync est un enrobeur démarrant emerge --sync (qui à son tour démarre emaint sync --auto), suivi par eix-update. Pour davantage de détails, voir l'article Eix et man 1 eix.

eselect-repository

eselect repository maintient les entrées dans /etc/portage/repos.conf pour que Portage puisse y accéder et les synchroniser. Voir l'article Eselect/Repository pour plus de détails.

Utilisation

Émerger un paquet doublon

Lorsque vous travaillez avec des dépôts ebuild, il est possible de rencontrer une situation où plusieurs versions d'un même paquet sont disponibles depuis différents dépôts ebuild. Demandez à Portage d'installer un paquet spécifique à partir d'un dépôt ebuild, lui aussi, spécifique avec la notation :: :

root #emerge --ask category/atom::nom-dépôt

La même notation peut être utilisée pour différentes instructions emerge, y comprit la désinstallation d'un paquet via --depclean.

Bonnes pratiques

Génération du cache

Lorsque de grands dépôts ebuild sont installés, Portage peut mettre un temps très long pour réaliser des opérations telles que la résolution des dépendances. Ceci est dû au fait, qu'en général, les dépôts ebuild ne possèdent pas de cache des méta-données.

Générer un cache de méta-données local en exécutant la commande emerge --regen après synchronisation de vos dépôts ebuild.

root #emaint sync --allrepos
root #( ulimit -n 4096 && emerge --regen )

Soyez vigilants: la commande emerge --regen prend beaucoup de temps, et n'est pas recommandée pour les utilisateurs de rsync; puisque rsync met à jour les caches en utilisant ceux des serveurs (et la plupart des utilisateurs de portage sont utilisateurs de rsync). Si vous utilisez rsync, utilisez simplement emerge --sync (ou eix-sync) pour reconstruire le cache. Normalement, seul les utilisateurs de très gros dépôts alternatifs devraient utiliser emerge --regen.

Masquage des dépôts ebuild installés mais non sûr

Lorsque vous utilisez des dépôts ebuild importants ou des dépôts dont la qualité est soit faible, soit inconnue, il est recommandé de masquer en dur tout le dépôt et n'accepter que des ebuilds spécifiques au cas par cas.

FILE /etc/portage/package.maskMasquer tous les paquets d'un arbre alternatif
*/*::overlay-name

Après cela, démasquer les paquets que vous voulez installer.

FILE /etc/portage/package.unmaskDémasquer un paquet donné dans un arbre alternatif
foo/bar::overlay-name

Voir aussi

Ressources externes