A “script package” is a special package that does not contain
any files.
Its sole contents are a single script, which is given in the
specfile by the special
%script section.
The %script gets executed
when LPMtool installs the package, but the package does not really get installed.
The script gets executed, but the package information does not get added
to the system's package database. Furthermore:
A script package may not contain any other scripts, such as
%pre or %post; nor any triggers.
The specfile must provide an empty
%files manifest.
%files must exist, but it must be empty.
The script package never gets installed, and the script package gets processed as if “NoAutoProv: 1” and “NoAutoRelease: 1” headers were specified (see Section 3, “Package declarations”).
Explicit “Provides:” headers are prohibited, but other dependencies may be specified (such as explicit “Requires:” dependencies), and they get processed as usual
Script packages do not differ from normal packages in all other respects.
Script packages may be signed, using the --sign or the
--repository option to lpbuild.
Script mechanisms allow trusted package repositories to provide signed
scripts to be executed as part of installation of a larger bundle of
packages.
When script packages are specified together with a list of other packages to install, the scripts get executed after the remaining packages get installed in the normal fashion. lpm installs all non-script packages first, then proceeds to run the script packages.