Elektra  0.8.18
elektra-plugins(7) -- plugins overview

Plugins can be mounted into the KDB and can access or manipulate the KeySet on every access.

Multiple plugins can be mounted into the key data base. On every access to the key data base they are executed and thus can change the functionality.

Introduction

Elektra already has a wide range of different plugins. The plugin folders should contain a README.md with further information. (Or follow links below.) The plugins are:

overview_plugins.png
Overview Plugins

For background information see elektra-plugins-framework(7).

C-Interface

All plugins implement the same interface:

KDB-Interface

See also

For an easy introduction, see this tutorial how to write a storage plugin. For more background information of the plugins framework, continue here. Otherwise, you can visit the the API documentation.

Plugins

Resolver

Before configuration is actually written, the file name needs to be determined (will be automatically added by kdb mount):

Storage

Are responsible for reading writing the configuration to configuration files.

Read and write everything a KeySet might contain:

Read (and write) standard config files of /etc:

Using semi-structured data for config files:

Plugins that just show some functionality, (currently) not intended for productive use:

System Information

Information compiled in Elektra:

Providing information found on the system not available in persistent files:

Filter

Filter plugins process keys and their values in both directions. In one direction they undo what they do in the other direction. Most filter plugins available now encode and decode values. Storage plugins that use characters to separate key names, values or metadata will not work without them.

Encoding

Rewrite unwanted characters with different techniques:

Transformations:

Doing other stuff:

Notification and Logging

Log/Send out all changes to configuration to:

Debug

Trace everything that happens within KDB:

Checker

Copies meta data to keys:

Interpreter

These plugins start an interpreter and allow you to use a bindings.

Others