Provided by: debhelper_13.24.2ubuntu1_all 

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
-DITEM=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> ».
13.24.2ubuntu1 2025-05-22 DH_INSTALLDEB(1)