Rechercher une page de manuel
rpmrebuild_plugins
Langue: fr
Version: 145602 (fedora - 04/07/09)
Section: 1 (Commandes utilisateur)
Sommaire
NAME
rpmrebuild_plugins - système de greffons (plugins) pour étendre les fonctions de rpmrebuild.SYNOPSIS
rpmrebuild [non-plugins-option] [plugins-option] <packagename>DESCRIPTION
rpmrebuild essaie de reconstruire le package rpm le plus proche de l'original possible.dans certains cas, cela ne correspond pas au besoins de modification des rpm, il faut utiliser pour cela les plugins.
RPMREBUILD SANS PLUGINS
Sans plugin, le processus de construction est le suivant :- interrogation -
- interrogation de la base rpm sur le package à reconstruire, découpée en plusieurs sections.
- concaténation -
- création du fichier specfile à partir des sections recupérées.
- construction -
- fabrication du fichier rpm à partir du fichier specfile.
RPMREBUILD AVEC PLUGINS
Quand on utilise des plugin, le processus devient :- interrogation -
- interrogation de la base rpm sur le package à reconstruire, découpée en plusieurs sections.
- modification des sections -
- applique les filtres ou edite les sections spécifiées.
- concaténation -
- création du fichier specfile à partir des sections récupérées.
- modification globale -
- applique les filtre ou edite le fichier specfile.
- construction -
- fabrication du fichier rpm à partir du fichier specfile.
SECTION DU SPECFILE
L'interrogation récupère les sections suivantes :
preamble
conflicts
obsoletes
provides
requires
description
files
triggers
pre
post
preun
postun
verifyscript
changelog
CONCATENATION DU SPECFILE
crée le fichier specfile complet à partir des sections précédentes. Les étapes sont :ajouter les tags AutoReq / AutoProv
ajouter le tag BuildRoot
ajouter quelques définitions pour ajuster le comportement de rpm
doubles les '%', afin d'eviter que rpm ne les interprète comme des macros.
ajouter '%description' avant la section description
ajouter '%files' avant la section des fichiers
ajouter '%changelog' avant la section des changements ( changelog )
LES TYPES DE PLUGINS
la fabrication de package utilise deux entrées : un fichier specfile, et des fichiers dans l'arborescence buildroot. Il y a donc deux types de plugins :- - ceux qui modifient le fichier specfile (example : demo.plug).
- - ceux qui modifient les fichiers (dans buildroot) (example : demofiles.plug).
INTERFACE DES PLUGIN
Les plugin sont exécuté après les interrogations rpm et avant la fabrication du package, dans l'ordre spécifié dans la ligne de commande.- Code de sortie
- Les plugin doivent se terminer avec un code de sortie 0 en cas de succès, n'importe quelle autre valeur en cas d'echec.
- Variables d'environment
- Les plugins utilisent les variables suivantes:
-
- RPMREBUILD_TMPDIR
- répertoire des fichiers temporaires. il sera supprimé par rpmrebuild en fin de travail.
- RPMREBUILD_PLUGINS_DIR
- répertoire des plugins.
- RPMREBUILD_COMMENT_MISSING
- Si positionné à 'yes' (oui), les fichier manquants sont commentés dans le fichier specfile.
- RPMREBUILD_PUG_FROM_FS
- Si positionné à 'yes' (oui), les permissions, le proprietaire (uid), le groupe (gid) sont identiques à ceux des fichiers installés, sinon ils sont ceux enregistrés dans la base rpm.
- RPMREBUILD_WARNING
- Si positionné à 'yes' (oui), produit des avertissement si des fichiers contiennent des caractères d'expension (* ? ).
- PATH
- Il est positionné à $RPMREBUILD_PLUGINS_DIR:$PATH
- LONG_OPTION
- contient le nom de l'option (sans --) qui a déclenché le plugin.
- RPM_BUILD_ROOT
- Pour les plugins qui modifient les fichiers, est positionné à buildroot. Pour les autres : vide.
-
- stdin and stdout
- les plugins qui modifient le fichier specfile (option --spec-hange-*)lisent le specfile sur stdin et écrivent le résultat sur stdout. stdout.
EXEMPLES DE PLUGINS
Plusieurs plugins sont fournis à titre d'exemples :- demofiles.plug (change-files) : un plugin de "démo" pour montrer ce que l'on peut faire sur les fichiers
- demo.plug (change-spec-*) : un plugin de "démo", pour montrer ce que l'on peut faire sur le fichier spec
- uniq.plug (change-spec) : un "vrai" plugin pour trier les lignes et éliminer les doublons sur certaines sections (require, provide ... )
- file2pacDep.plug (change-spec-requires) : un "vrai" plugin pour convertir les dependances vers des fichiers en dependances vers des packages
- nodoc.plug (change-spec-files) : un "vrai" plugin pour supprimer la documentation d'un package
- set_tag.plug (change-spec-preamble) : un "vrai" plugin pour modifier la valeur d'un tag du fichier de spec
PLUGINS' CONVENTION DE NOMMAGE DES PAGES MAN
Si vous écrivez des plugin, vous êtes encouragés à suffixer les pages de manuel en .1rrp, afin que la commande 'man -k rrp' fournisse la liste des plugins pour rpmrebuild installés. Attention, la commande makewhatis doit être lancé pour que les nouvelles pages soient prises en compte.AUTHORS
Eric Gerbier <gerbier@users.sourceforge.net>
Valery Reznic <valery_reznic@users.sourceforge.net>
- See <URL:http://rpmrebuild.sourceforge.net/>.
SEE ALSO
rpm(8), rpmbuild(8), rpmrebuild(1), demofiles.plug(1), demo.plug(1), nodoc.plug(1), uniq.plug(1), file2pacDep.plug(1), set_tag.plug(1), 'man -k rrp' pour la doc sur les plugins fournis.
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre