Les logiciels peuvent avoir des composants optionnels et des composants incompatibles. Les environnements linguistiques et la documentation sont des exemples de composants optionnels. Les binaires SPARC ou x86 et les binaires de débogage et de non-débogage sont des exemples de composants incompatibles.
Dans IPS, les composants optionnels sont appelés des facettes et les composants incompatibles sont appelés des variantes. Les variantes et les facettes apparaissent comme des repères sur des actions IPS.
Les actions représentent les objets d'un système pouvant être installés. Les actions sont décrites dans le fichier manifest d'un package. Chaque action est essentiellement constituée de son nom et d'un attribut clé. Ensemble, elles se rapportent à un objet unique suivant un historique des versions.
Les variantes et les facettes déterminent si une action particulière est sélectionnée ou désélectionnée pour l'installation.
La liste suivante fournit des exemples de repères de facettes et de variantes et leurs valeurs possibles :
Nom |
Valeurs |
---|---|
facet.locale.* |
true, false |
facet.doc.man |
true, false |
facet.doc |
true, false |
facet.devel.* |
true, false |
variant.arch |
sparc, i386, zos |
variant.debug.* |
true, false |
Les actions qui ne sont pas marquées avec des facettes ou des variantes sont incluses.
Une action marquée avec une variante non sélectionnée est exclue. Une action qui est marquée avec une ou plusieurs facettes est exclue si aucune des facettes n'est sélectionnée.
Les repères de variante sont évalués avec l'opérante AND. Si l'un des repères de variante ne correspond pas, l'action n'est pas installée.
Les repères de facette sont évalués avec OU. Si l'un des repères de facette ne correspond pas, l'action n'est pas exclue.
Une seule action peut avoir plusieurs repères de facette et de variante. Un fichier d'en-tête spécifique à une architecture, utilisé par des développeurs, est un exemple de composant à repères multiples de facette et de variante.
Les variantes et les facettes sont définies au niveau de l'image. Une image avec une variante définie sur une propriété particulière peut posséder uniquement des actions qui correspondent à la variante installée. Par exemple, vous ne pouvez pas installer un package x86 sur une image SPARC.
Les administrateurs système peuvent effectuer les opérations suivantes sur les facettes et les variantes :
Affichage de la valeur de toutes les variantes ou facettes définies sur l'image actuelle.
Modification de variantes et facettes sur l'image actuelle. Cette opération entraînera probablement la mise à jour de packages et peut nécessiter un nouvel EI.