Man page - dh_installdeb(1)

Packages contains this manual

Available languages:

en fr pt de

Manual

DH_INSTALLDEB

NOM
SYNOPSIS
DESCRIPTION
FICHIERS
OPTIONS
SUBSTITUTION DANS LES SCRIPTS DU RESPONSABLE
Restrictions dans les noms d’item
VOIR AUSSI
AUTEUR
TRADUCTION

NOM

dh_installdeb – Installer des fichiers dans le rĂ©pertoire DEBIAN

SYNOPSIS

dh_installdeb [ options_de_debhelper ]

DESCRIPTION

dh_installdeb est le programme de la suite debhelper chargĂ© de l’installation des fichiers dans le rĂ©pertoire DEBIAN du rĂ©pertoire de construction du paquet ainsi que du rĂ©glage correct des droits sur ces fichiers.

FICHIERS

paquet .postinst
paquet
.preinst
paquet
.postrm
paquet
.prerm

Ces scripts de maintenance sont installés dans le répertoire DEBIAN .

dh_installdeb rĂ©alisera la substitution des items connus du format #TOKEN# . En gĂ©nĂ©ral, les scripts voudront inclure l’item #DEBHELPER# pour bĂ©nĂ©ficier des scripts de l’interprĂ©teur de commandes gĂ©nĂ©rĂ©s par les commandes debhelper (y compris ceux de dh_installdeb quand il traite les fichiers paquet .maintscript).

L’item #DEBHELPER# devrait ĂȘtre placĂ© sur sa ligne propre parce qu’il est souvent remplacĂ© par un script multiligne de l’interprĂ©teur de commandes.

paquet .triggers
paquet
.shlibs

Ces fichiers de contrÎle sont installés dans le répertoire DEBIAN .

Veuillez noter que paquet .shlibs est uniquement installé si le niveau de compatibilité est 9 ou inférieur. En version 10, veuillez utiliser dh_makeshlibs (1).

paquet .conffiles

Ce fichier sera installĂ© dans le rĂ©pertoire DEBIAN . Le fichier fourni sera enrichi par debhelper pour inclure les conffiles dĂ©tectĂ©s automatiquement par debhelper (le responsable ne devrait rien lister ici parce que debhelper suppose qu’il peut gĂ©rer cette partie).

Ce fichier est principalement utile pour utiliser des entrées « spéciales » telles que la fonction remove-on-upgrade de dpkg.

paquet .maintscript

Les lignes de ce fichier correspondent Ă  des commandes et leurs paramĂštres de dpkg-maintscript-helper (1). « maint-script-parameters » ne devrait pas ĂȘtre inclus car debhelper l’ajoutera automatiquement.

Exemple :

# Correct
rm_conffile /etc/obsolete.conf 0.2˜ toto
# INCORRECT
rm_conffile /etc/obsolete.conf 0.2˜ toto -- "$@"

Dans les niveaux de compatibilité 10 ou suivants, tous les mĂ©tacaractĂšres de l’interprĂ©teur de commandes seront protĂ©gĂ©s, aussi du code arbitraire d’interprĂ©teur de commandes ne peut pas ĂȘtre insĂ©rĂ© ici. Par exemple, une ligne comme "mv_conffile /etc/oldconffile /etc/newconffile" insĂ©rera des extraits du script de maintenance dans tous les scripts de maintenance, suffisant pour dĂ©placer le fichier conffile .

L’intention Ă©tait aussi d’échapper les mĂ©tacaractĂšres du shell dans les modes prĂ©cĂ©dents. Cependant, cela ne fonctionnait pas correctement et il Ă©tait possible d’embarquer du code shell arbitraire dans les modes prĂ©cĂ©dents.

L’outil dh_installdeb effectuera quelques validations basiques sur certaines commandes listĂ©es dans ce fichier pour Ă©viter les erreurs habituelles. Cette validation renvoie un avertissement depuis la version 10, et une erreur en version 12.

LĂ  oĂč cela est possible, dh_installdeb peut choisir de réécrire certaines ou toutes les entrĂ©es avec des fonctionnalitĂ©s Ă©quivalentes prises en charge dans dpkg sans dĂ©pendre des scripts du responsable Ă  son grĂ© (les exemples incluent la réécriture de rm_conffile en remove-on-upgrade de dpkg). L’exigence minimale pour activer cette fonctionnalitĂ© est que debhelper soit exĂ©cutĂ© dans le niveau de compatibilité 10 ou ultĂ©rieur.

Les variables de substitution sont prises en charge dans les niveaux de compatibilité 13 et ultérieurs comme documenté dans debhelper (7).

OPTIONS

-D ITEM=VALEUR , --define ITEM=VALEUR

DĂ©finit les items qui doivent ĂȘtre remplacĂ©s dans les scripts du responsable quand ils sont créés. Veuillez noter que les contraintes dĂ©crites dans "Restrictions dans les noms d’item" s’appliquent aussi aux items dĂ©finis en ligne de commande. Les noms d’item non valables dĂ©clencheront une erreur.

Dans un cas simple, ce paramÚtre fera que # ITEM # sera remplacé par VALEUR . Si VALEUR commence par un signe @ littéral, alors VALEUR est censé pointer vers un fichier contenant la valeur réelle à insérer.

Un item déclaré de façon explicite avec ce paramÚtre remplacera les items internes.

Exemples de tests pour aider à mieux comprendre :

cat >> debian/postinst <<EOF
#SIMPLE#
#FILEBASED#
EOF
echo -n "valeur_complexe" > un_fichier
dh_installdeb --define SIMPLE=direct --define FILEBASED=@un_fichier

Dans cet exemple, #SIMPLE# sera développé en direct et #FILEBASED# sera développé en valeur_complexe .

Il est aussi possible de fixer des valeurs spĂ©cifiques Ă  un paquet pour un item donnĂ©. Cela est utilisĂ© quand dh_installdeb agit sur plusieurs paquets qui ont besoin de valeurs distinctes pour le mĂȘme item. Cela est obtenu en prĂ©fixant le nom de l’item par pkg. nom-paquet . .

Cela peut ĂȘtre utilisĂ© comme dans l’exemple suivant :

cat >> debian/toto.postinst <<EOF
# Script pour #PACKAGE#
#TOKEN#
EOF
cat >> debian/titi.postinst <<EOF
# Script pour #PACKAGE#
#TOKEN#
EOF
cat >> debian/truc.postinst <<EOF
# Script pour #PACKAGE#
#TOKEN#
EOF
dh_installdeb -ptoto -ptiti -ptruc --define TOKEN=default --define pkg.titi.TOKEN=valeur-unique-titi \
--define pkg.truc.TOKEN=valeur-unique-truc

Dans cet exemple, #TOKEN# sera développé en default dans debian/toto.postinst , en valeur-unique-titi dans debian/titi.postinst et en valeur-unique-truc dans debian/truc.postinst .

Notez que les items de #pkg.*# seront visibles dans tous les scripts actifs. Par exemple, il est possible de faire référence à #pkg.titi.TOKEN# dans debian/toto.postinst et il sera remplacé par valeur-unique-titi .

SUBSTITUTION DANS LES SCRIPTS DU RESPONSABLE

dh_installdeb remplacera automatiquement les items suivants dans un script fourni par le responsable (s’il n’est pas remplacĂ© au moyen de -D ou --define ) :
#DEBHELPER#

Cet item est par dĂ©faut remplacĂ© par les lignes de code gĂ©nĂ©rĂ©es par les commandes de debhelper. Cela comprend les lignes de code gĂ©nĂ©rĂ©es par dh_installdeb Ă  partir du fichier paquet .maintscript (s’il est prĂ©sent).

#DEB_HOST_ NOM #, #DEB_BUILD_ NOM #, #DEB_TARGET_ NOM #

Ces items sont remplacĂ©s par leur variable respective venant de dpkg-architecture (1). Dans presque tous les cas, vous voudrez utiliser la variante #DEB_HOST_ NOM dans un script pour vous assurer d’obtenir la valeur correcte lors d’une construction croisĂ©e.

Dans un souci de qualité, les items avec ce motif qui ne correspondent pas à une variable de dpkg-architecture (1) seront laissés tels quels.

#ENV. NOM #

Les items de cette forme seront remplacĂ©s par la valeur de la variable d’environnement correspondante. Si la variable d’environnement n’est pas dĂ©finie, l’item est remplacĂ© par une chaĂźne vide.

Notez qu’il y a des restrictions sur les noms pouvant ĂȘtre utilisĂ©s voir "Restrictions dans les noms d’item").

#PACKAGE#

Cet item est remplacé par défaut par le nom du paquet qui contiendra le script réel.

Restrictions dans les noms d’item

Tous les items destinĂ©s Ă  ĂȘtre remplacĂ©s doivent correspondre Ă  l’expression rationnelle : #[A-Za-z0-9_.+]+#

Les items qui ne correspondent pas Ă  cette expression rationnelle seront ignorĂ©s silencieusement s’ils sont prĂ©sents dans un modĂšle de script. Les noms d’item non valables passĂ©s Ă  -D ou --define feront que dh_installdeb rejettera la commande avec une erreur dans la plupart des cas.

VOIR AUSSI

debhelper (7)

Ce programme fait partie de debhelper.

AUTEUR

Joey Hess <joeyh@debian.org>

TRADUCTION

Cette traduction est maintenue Ă  l’aide de l’outil po4a <URL:http://po4a.alioth.debian.org/> par l’équipe francophone de traduction de Debian.

Veuillez signaler toute erreur de traduction en écrivant à <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le paquet debhelper.

Vous pouvez toujours avoir accÚs à la version anglaise de ce document en utilisant la commande « man -L C <section> <page_de_man> ».