Elektra ist ein Konfigurationsmanagement-Framework, das Konfigurationsdateien in eine globale Schlüsseldatenbank einbindet und so eine Art virtuelles Dateisystem schafft, das den Zugriff, die Änderung und das Auffinden der Konfigurationsparameter erleichtert. Die Konfigurationsinformationen sind dabei in einem einheitlichen Format für Anwendungen verfügbar, wozu die einheitliche Elektra-API verantwortlich ist. Es steht eine breite Palette von Plugins zur Verfügung, mit denen das Format (unter anderem JSON, INI, XML), die Standardeinstellungen, die Validierung und weitere Parameter festgelegt werden können.
Redshift mit Elektra
Gerade ist Elektra 0.9.8 freigegeben worden. Neu ist eine Version von Redshift, die Elektra für das Konfigurationsmanagement nutzt. Dabei wurde der Code von Redshift für das Laden von Konfigurationsdateien, das Parsen von CLI-Optionen und die Validierung der Konfiguration entfernt und umstrukturiert, um Elektra zu verwenden. Redshift mit Elektra hat etwa 700 Zeilen weniger Code (-16%) und ist ein großartiges Beispiel dafür, worum es bei Elektra geht: mehr Anwendungen mit weniger Code für das Konfigurationsmanagement. Als Ergebnis wurde das Hinzufügen neuer Konfigurationseinstellungen vereinfacht. Zudem besteht eine saubere Trennung von Anwendungscode und der Spezifikation der unterstützten Konfigurationseinstellungen.
High-Level-API verbessert
Im Zuge des Refactorings von Redshift wurden eine Vielzahl von Verbesserungen an der High-Level-API von Elektra vorgenommen. Die Highlights sind:
- Verbesserte Erkennung von Unterschieden in der Spezifikation zwischen der Kompilierung und der Laufzeit einer Anwendung
- Verbesserte Validierung von CLI-Optionen
- Frühzeitige Erkennung von Fehlern in Spezifikationsdateien
- Aktualisierte und verbesserte Dokumentation und Tutorials
Auch für Windows
Elektra 0.9.8 bietet experimentelle Veröffentlichungen für Windows in 32- und 64-Bit. Redshift ist mit diesen Releases bereits benutzbar. Alle weiteren Neuerungen können in den Release Notes nachgelesen werden. Wer mehr über die Grundsätze von Elektra wissen möchte. kann sich die Folien des Vortrags The Elektra Initiative anschauen. Zudem ließ mich Entwickler Markus Raab wissen, dass er in diesem Semester an der TU Wien eine Lehrveranstaltung Free/Libre and Open Source Software anbietet.

Danke für den Artikel! Es gibt leider nicht viele aktuelle Infos über Elektra auf Deutsch. Die Folien sind schon recht alt:
Wenn Englisch nicht zurückschreckt ist z.B. https://archive.fosdem.org/2018/schedule/event/elektra/ ein neuerer Vortrag. Neueste Infos gibt es immer auf https://www.libelektra.org, leider ebenfalls nur auf Englisch. Also toll dass linuxnews.de immer wieder von Elektra berichtet, dadurch gibt es endlich wieder aktuelle Informationen auf Deutsch.
Und in der oben verlinkten ODP Folie habe ich auch schon einen Kritikpunkt gefunden.
Seite 15, der Keyname system/net/resolver/server, dort steht als Value 192.168.10.1
Das Problem dürfte jedem sofort auffallen. Wie soll man da zusätzlich noch eine IPv6 Adresse unterbringen, wenn es nur einen Keynamen dafür gibt und der nur einen einzigen Wert annehmen darf?
Man hätte das komplett anders machen müssen. z.B.
system/net/resolver/server/ipv4 = 192.168.10.1
system/net/resolver/server/ipv6 = usw..
Und dann gleich noch einen weiteren Kritikpunkt.
Als Backend wird auch die Berkeley DB angeboten.
Sobald man aber eine proprietäre Software mit Elektra einsetzen will, steht die Frage offen, ob die Berkeley DB dann lizenziert werden muss.
Denn für propritäre Software ist das notwendig. Ob da eine Open Source Software wie Elektra als Zwischenstufe genügt, halte ich für fraglich.