summaryrefslogtreecommitdiff
path: root/preinstall.am
AgeCommit message (Collapse)AuthorFilesLines
2010-09-29And finally split the signing support into a separate libraryPanu Matilainen1-0/+4
- For a library with just one public function this might seem like a huge overkill but it permits cleanly separating dependencies: nothing but package signing requires GnuPG. This lets the signing support be stuffed into a separate package, avoiding having to drag gpg in on every installation (signing isn't something everybody does) and without having potentially broken interfaces in the API, essentially solving RhBug:624585. It also liberates signing to use libraries that might be off-limits for the core rpm, such as perhaps in the future doing signing by ourselves with the help of something like gpgme (which requires far too many things to drag into core rpm).
2010-09-01Add new %sepolicy section to the spec file formatSteve Lawrence1-0/+4
The %sepolicy section is used to describe SELinux policy to be included in a package. It's syntax is similar to other sections (%files, %pre, %post, etc.) in that you can provide a string and -n after the declaration to specify policy should be added to a subpackage. For example: %sepolicy # policy in this section will be added to the main package %sepolicy foo # policy in this section will be added to the '<mainpackage>-foo' subpackage %sepolicy -n bar # policy in this section will be added to the 'bar' subpackage The %sepolicy section contains zero or more %semodule directives, with the following format: %semodule [OPTIONS] path/to/module.pp The available options are: -b, --base The module is a base module -n, --name=NAME The name of the module. If not given, assumes the name is the basename of the module file with file extensions removed. -t, --types=TYPES One or more comma-separated strings specifying which policy types the module can work with. To explicitly state that a module can work with any policy type, "default" can be specified as the value. If not specified, assumes the module can work with any policy type, and assigns the types as "default". Below is an example of this new format: %sepolicy %semodule -n foo -t mls policy/foo.pp %semodule -n bar -t strict,targeted,mls -b policy/bar.pp This also adds new header tags to store the new information: RPMTAG_POLICYNAMES (string array) RPMTAG_POLICYTYPES (string array) RPMTAG_POLICYTYPESINDEXES (uint32 array) RPMTAG_POLICYFLAGS (uint32 array) The index of NAMES and FLAGS maps directly to the index of RPMTAG_POLICIES. However, because a single policy can have multiple types, the mapping for TYPES is not direct. For this, the index maps to TYPESINDEXES, which contains the index of the policy that the type maps to. This is similar to how DIRINDEXES is used to map DIRNAMES and BASENAMES. As an example, the previous %sepolicy section would have the following header tags: RPMTAG_POLICIES: 0: <foo.pp data, base64 encoded> 1: <bar.pp data, base64 encoded> RPMTAG_POLICYNAMES: 0: foo 1: bar RPMTAG_POLICYFLAGS: 0: 0 1: 1 # assumes flag 1 == BASE RPMTAG_POILCYTYPES: RPMTAG_POLICYTYPESINDEXES: 0: mls 0: 0 1: strict 1: 1 2: targeted 2: 1 3: mls 3: 1
2010-09-01Update the plugin architecture to allow for remembering stateSteve Lawrence1-0/+4
This moves most of the plugin logic to a new rpmplugins file with a struct and functions for managing plugins, allowing for plugins to carry state. This also adds init and cleanup hooks for plugins to initialize and cleanup their state, and a new 'open te' hook allowing plugins to read and save information from transaction elements. This also generalizes the plugin architecture a bit so it isn't so specific to collections.
2010-03-25Split rpm problem type + its "methods" to separate source + headerPanu Matilainen1-0/+4
- rpmps is just something that stores rpm problems, problems themselves are individual and opaque "objects", deserving their own module
2010-03-23Fix fallout from rpmgi.h moving to internal pathPanu Matilainen1-4/+0
2009-04-03Make rpmal header & all internalPanu Matilainen1-4/+0
- rpmal is hardly useful outside rpm itself, avoid exporting stuff unnecessarily
2008-07-08Add a new legacy compatibility header, kill rpmints.hPanu Matilainen1-4/+4
- build-time generated rpmints.h causes issues with distcheck and is not really worth the trouble - we have all sorts of legacy junk to deal with, sticking them all into rpmints.h would be just wrong...
2008-07-02Make rpmkeyring.h public headerPanu Matilainen1-0/+4
2008-05-13New "tag data" container struct + some basic methods to deal with itPanu Matilainen1-0/+4
- to be used for passing around header and extension data - inspired by similar changes in rpm5.org, details and implementation differ
2008-05-12Fixup paths and Makefiles for rpmdb/ eliminationPanu Matilainen1-6/+6
2008-03-17Remove rollback supportPanu Matilainen1-4/+0
- not possible to do reliably within rpm - effort is better wasted on investigating fs-level snapshots, which is way beyond rpm scope except for hooks to interact with the snapshot mechanism to communicate beginning/end of transaction and such
2008-02-25Add new header for collecting utility macrosPanu Matilainen1-0/+4
- atm consists of portability wrappers to various gcc extensions like __attribute__() to provide additional warnings and checks - copied from glib to avoid an extra build dependency just for the silly macros, renamed to avoid namespace clashing
2008-02-05Split non-cli verify bits from rpmcli to separate headerPanu Matilainen1-0/+4
2008-01-30Add stub rpmtypes.h header stubPanu Matilainen1-0/+4
- place to stick in common typedefs to untangle header cross-include jungle
2007-12-03Split RPMTAG_* and related functions out of rpmlib.h to rpmtag.hPanu Matilainen1-0/+4
2007-12-01Add separate public header for callback declarationsPanu Matilainen1-4/+4
- rpmmessages is empty, lose it - adjust includes
2007-11-26Regenerate.Ralf Corsépius1-27/+27
2007-11-23Regenerate preinstall.amPanu Matilainen1-0/+4
2007-11-23Move stringbuf into librpmio, rename headerPanu Matilainen1-4/+4
- rename header to more generic rpmstring.h for collecting misc string helper functions
2007-11-23Fix typo in preinstall.am generation.Ralf Corsépius1-26/+26
2007-11-22Regenerate.Ralf Corsépius1-0/+104
2007-11-22Add header preinstallation.Ralf Corsépius1-0/+0