Guide du développeur pour l'empaquetage d'applications

Mots clés de prise en charge des packages d'archive de classe

Pour prendre en charge ce nouveau format d'archive de classe, trois nouvelles interfaces représentées par des mots clés ont une signification particulière dans le fichier pkginfo. Ces mots clés sont utilisés pour désigner les classes requérant un traitement particulier. Le format de la déclaration de chaque mot clé est le suivant : keyword=class1[class2 class3 ...]. Chaque valeur de mot clé est définie dans le tableau suivant :

Mot-clé 

Description 

PKG_SRC_NOVERIFY

Ce mot clé indique à pkgadd de ne pas vérifier l'existence ni les propriétés des fichiers figurant dans les répertoires reloc ou root du package fourni s'ils appartiennent à une classe nommée. Il est obligatoire pour toutes les classes archivées car ces fichiers ne se trouvent plus dans un répertoire reloc ni un répertoire root. Il s'agit de fichiers au format privé stockés dans le répertoire archive.

PKG_DST_QKVERIFY

Les fichiers appartenant à ces classes sont vérifiés après l'installation à l'aide d'un algorithme rapide ne nécessitant pas ou peu de données. Cette vérification rapide définit en premier lieu les attributs de chaque fichier puis vérifie que l'opération s'est déroulée correctement. Un test est ensuite effectué pour comparer la taille du fichier et le temps de modification au fichier pkgmap. Aucune somme de contrôle n'est effectuée et la reprise sur erreur est moins efficace que celle offerte par le mécanisme de vérification standard. Dans l'éventualité d'une coupure de courant ou d'une défaillance du disque pendant l'installation, le fichier contenu risque de ne pas concorder avec les fichiers installés. Cette incohérence peut toujours être résolue avec pkgrm.

PKG_CAS_PASSRELATIVE

Le script d'action de classe de l'installation reçoit en général de la part du fichier stdin une liste de paires source/destination lui indiquant quels fichiers installer. Les classes attribuées à PKG_CAS_PASSRELATIVE ne reçoivent pas ces paires source/destination. Elles reçoivent à la place une seule liste dont la première entrée correspond à l'emplacement du package source et les autres correspondent aux chemins de destination. Ceci sert spécifiquement à simplifier l'extraction d'une archive. À partir de l'emplacement du package source, vous pouvez trouver l'archive dans le répertoire archive. Les chemins de destination sont ensuite transmis à la fonction chargée d'extraire le contenu de l'archive. Chaque chemin de destination fourni est absolu ou relatif au répertoire de base selon que son emplacement d'origine se trouve dans root ou dans reloc. Lorsque cette option est sélectionnée, il peut être difficile d'utiliser des chemins relatifs et des chemins absolus dans une même classe.

Un script d'action de classe est nécessaire pour chaque classe archivée. Il s'agit d'un fichier contenant des commandes Bourne shell qui est exécuté par pkgadd pour installer les fichiers à partir de l'archive. Si un script d'action de classe est détecté dans le répertoire install du package, pkgadd délègue toute la responsabilité de l'installation au script. Le script d'action de classe est exécuté avec les droits d'accès à root et peut placer ses fichiers à tout endroit du système cible.


Remarque –

Le seul mot clé essentiel à l'implémentation d'un package d'archive de classe est PKG_SRC_NOVERIFY. Les autres peuvent être utilisés pour accélérer l'installation ou conserver le code.