<Précédent | Table des matières | Suivant>
Éléments fournis : le champ Fournit
Ce champ introduit le concept très intéressant de paquet virtuel. Il a de nombreux rôles, mais deux sont d'une importance particulière. Le premier rôle consiste à utiliser un package virtuel pour lui associer un service générique (le package fournit le service). Le second indique qu'un package en remplace complètement un autre et qu'à cet effet, il peut aussi satisfaire les dépendances que l'autre satisferait. Il est ainsi possible de créer un package de substitution sans avoir à utiliser le même nom de package.
Méta-Package et Virtuel Il est essentiel de bien distinguer les méta-paquets des packages virtuels. Le pour-
Forfait mer sont de vrais paquets (y compris de vrais . Deb fichiers), dont le seul but est d'exprimer les dépendances.
Les packages virtuels, cependant, n'existent pas physiquement ; ils ne sont qu'un moyen d'identifier de vrais packages sur la base de critères logiques communs (par exemple, service fourni, ou compatibilité avec un programme standard ou un package préexistant).
Méta-Package et Virtuel Il est essentiel de bien distinguer les méta-paquets des packages virtuels. Le pour-
Forfait mer sont de vrais paquets (y compris de vrais . Deb fichiers), dont le seul but est d'exprimer les dépendances.
Les packages virtuels, cependant, n'existent pas physiquement ; ils ne sont qu'un moyen d'identifier de vrais packages sur la base de critères logiques communs (par exemple, service fourni, ou compatibilité avec un programme standard ou un package préexistant).
Fournir un service Examinons le premier cas plus en détail avec un exemple : tous les serveurs de messagerie, tels que postfix or sendmail sont censés fournir le agent-transport-courrier paquet virtuel. Ainsi, tout package qui a besoin de ce service pour être fonctionnel (par exemple un gestionnaire de liste de diffusion, tel que liste intelligente or sympa) indique simplement dans ses dépendances qu'il nécessite un agent-transport-courrier au lieu de spécifier une liste longue mais incomplète de solutions possibles. De plus, il est inutile d'installer deux serveurs de messagerie sur la même machine, c'est pourquoi chacun de ces packages déclare un conflit avec le agent-transport-courrier paquet virtuel. Un conflit entre un paquet et lui-même est ignoré par le système, mais cette technique interdira l'installation de deux serveurs de messagerie côte à côte.
Interchangeabilité avec un autre package Le permet Ce champ est également intéressant lorsque le contenu d'un package est inclus dans un package plus volumineux. Par exemple, le libdigest-md5-perl Le module Perl était un module optionnel dans Perl 5.6 et a été intégré en standard dans Perl 5.8. Ainsi, le paquet perl a depuis la version 5.8 déclaré Fournit : libdigest-md5-perl afin que les dépendances sur ce paquet soient satisfaites si le système a Perl 5.8 (ou plus récent). Les libdigest-md5-perl package lui-même a été supprimé, car il n'avait plus aucune utilité lorsque les anciennes versions de Perl ont été supprimées.

Figure 8.3 Utilisation d'un champ fournit afin de ne pas rompre les dépendances
Cette fonctionnalité est très utile, car il n'est jamais possible d'anticiper les aléas du développement et il est nécessaire de pouvoir s'adapter aux renommages, et autres remplacements automatiques, des logiciels obsolètes.
Documentation