1rpmrebuild_plugins(1)              rpm tools             rpmrebuild_plugins(1)
2
3
4

NAME

6       rpmrebuild_plugins - is an engine to expand rpmrebuild functionality.
7

SYNOPSIS

9       rpmrebuild [non-plugins-option] [plugins-option] <packagename>
10       or
11       rpm --rpmrebuild [non-plugins-option] [plugins-option] <packagename>
12

DESCRIPTION

14       rpmrebuild  itself  try  to  do it's best to reconstruct rpm package as
15       close to original as possible.
16
17       rpmrebuild plugins's aim is opposite - somehow change rebuilded rpm.
18

RPMREBUILD WITHOUT PLUGINS

20       Without plugins process of rpm rebuilding looks like:
21
22       query -
23              Query rpm to be rebuilded for the different pieces  of  informa‐
24              tion.
25
26       concatenate -
27              Create from these pieces specfile.
28
29       build -
30              Use specfile to build rpm.
31

RPMREBUILD WITH PLUGINS

33       With plugins process of rpm rebuilding looks like:
34
35       query -
36              Query  rpm  to be rebuilded for the different pieces of informa‐
37              tion.
38
39       change parts -
40              Change parts of the spec created by query.
41
42       concatenate -
43              Create specfile from the pieces.
44
45       change whole -
46              Change concatenated specfile.
47
48       build -
49              use specfile to build rpm.
50

SPECFILE PIECES

52       Query" queries for the following information:
53              preamble
54              conflicts
55              obsoletes
56              provides
57              requires
58              description
59              files
60              triggers
61              pre
62              post
63              preun
64              postun
65              verifyscript
66              changelog
67

SPECFILE CONCATENATION

69       Concatenate" create 'full' specfile from the pieces.  It do following:
70
71       add AutoReq / AutoProv tags
72       add BuildRoot tag
73       add some defines to adjust rpm's behaviour.
74       double all '%' - it'll prevent rpm from attempting expand %something as
75       macro.
76       add '%description' before description
77       add '%files' before files
78       add '%changelog' before changelog
79

PLUGINS TYPES

81       rpm building (or rebuilding) process has two inputs: specfile and pack‐
82       age's files under buildroot directory. So, there are two plugins type:
83
84       - for specfile modification.
85
86       - for files (under buildroot) modification.
87

PLUGIN'S INTERFACE

89       Plugins are executed AFTER rpm package is queried and BEFORE new  pack‐
90       age is rebuilded in the order specified on the command line.
91
92       Exit status
93              Any  plugin  should exit with status 0 on success, and any other
94              value on failure.   Failed  plugin  will  immediately  terminate
95              whole rpmrebuild.
96
97       Environment variables
98              all plugins get following environment variables:
99
100              RPMREBUILD_TMPDIR
101                     directory  for plugin's temporaries files. plugin no need
102                     remove this directory - rpmrebuild will care.
103
104              RPMREBUILD_PLUGINS_DIR
105                     directory with plugins.
106
107              RPMREBUILD_COMMENT_MISSING
108                     if 'yes' missing files commented in the 'files'  part  of
109                     specfile
110
111              RPMREBUILD_PUG_FROM_FS
112                     if 'yes' permission owner and group in the part file were
113                     taken from filesystem, otherwise - from rpm's database.
114
115              RPMREBUILD_WARNING
116                     if 'yes' rpmrebuild will produce  warning  for  filenames
117                     with glob characters.
118
119              PATH   This variable is set to $RPMREBUILD_PLUGINS_DIR:$PATH
120
121              LONG_OPTION
122                     Contains  long  option  (without  --)  which  was used to
123                     invoke plugin.
124
125              RPM_BUILD_ROOT
126                     For plugins modifying files under buildroot set to build‐
127                     root.  For other plugins - empty.
128
129       stdin and stdout
130              Plugins for specfile modification (i.e., invoked with --spec-got
131              "source" spec file from stdin and have to write  resulting  spec
132              file to stdout.
133

PLUGIN'S EXAMPLES

135       Three plugins are given as examples :
136
137       demo.plug: a "dummy" plugin to show how plugins works
138
139       uniq.plug: a very simple plugin to sort and clean duplicate spec lines
140
141       file2pacDep.plug: a "real" plugin to convert file dependencies to pack‐
142       age dependencies
143
144       nodoc.plug : a plugin to remove documentation from a package
145

PLUGINS' MANPAGES FILENAME CONVENTION

147       If you are going to write plugin (and manpage  for  it)  it's  strongly
148       recommended than manpage's file looks like name.1rrp - this way command
149       'man -k rrp' will provide list of all rpmrebuild's  plugins  installed.
150       Please  note, that makewhatis should be run before newly installed man‐
151       pages will be available for 'man -k rrp'
152

AUTHORS

154       Eric Gerbier <gerbier@users.sourceforge.net>
155       Valery Reznic <valery_reznic@users.sourceforge.net>
156
157       See <URL:http://rpmrebuild.sourceforge.net/>.
158

SEE ALSO

160       rpm(8),  rpmbuild(8),   rpmrebuild(1),   demo_plug(1),   nodoc.plug(1),
161       uniq.plug(1),  file2pacDep.plug(1),  'man  -k rrp' for plugins specific
162       manpages
163
164
165
166
167Valery Reznic                        2.1.1               rpmrebuild_plugins(1)
Impressum