Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Question for collaboration: c# bindings to integrate elektra in Anthilla/And #1521
I follow elektra project, as user, since it's named "Registry for Linux".
At today there are c# bindings or updated documents on integrate liblelektra?
First of all: Thank you for writing us!
Great to hear that!
Unfortunately, currently there are no C# bindings for Elektra (maybe @nikonthethird started to write some but I never saw code).
Would you be interested to write C# bindings yourself?
We have written a tutorial, but obviously it does not cover C#.
Please do not hesitate to ask any question!
@markus2330 thanks for tutorial, not problem if does not cover c#,
for our application environment we refer to LiteDB a nosql db in c#.
looking to "autoreplication" and self-updating we are searching for standalone (portable) or selfhosted pieces to include in our architecture...
I remember latest version of elektra i've used (2015) are really portable or standalone-able
Some architectural description, or at least the interface you expect, would be of great help: then we would have a common understanding of what you want to achieve.
Is LiteDB relevant for the configuration settings?
Elektra is an abstraction for configuration settings, which allows you to easily switch between configuration backends. So you can start to use it with some INI, XML or JSON files, and extend it later to better support your active-active architecture (if this is needed).
Some architectural description explaining what exactly you mean by active-active, autoreplication, and self-updating in the context of your configuration needs would be helpful. You can also look into earlier questions from @mhaberler, you might share some requirements
ssh should be trivial (there is
Yes, we are still (and will be) completely portable (C99). Could you elaborate on standalone-able? Elektra is a library and does not rely on any external service/daemon/.. to work.
@markus2330 perfect it's portable as i remember,
Architecture: our software Anthilla/Antd works as system manager, or orchestrator process, at omente we implements methods to manage single services or commands, like: bind, dhcpd, nftable, ssh/sshd, rsync, systemd, etc.. so any conf and any conf syntax need to be mapped.
In future we can rely on libelektra directly as configuration backend. so
(conf /etc)<->Elektra <->[box1 antd] <-----sync/cluster--------> [box antd]<->Elektra (conf/etc)
elektra (registry inspired) have inspired a lot of services like etcd and consul, ansible or salt, in the way to manage /etc, and applicative configuration. Antd it's another kind of system manager including web interface.
That sounds really interesting! Elektra is perfectly suitable to map many of these already, @BernhardDenner recently configured our own libelektra.org server completely with Elektra.
Okay, so the C# binding would not be the first step? How would you like to start?
Yes, etcd and consul have similar ideas but a completely different implementation (daemon vs. library). Ansible and salt (@BernhardDenner worked with puppet) is not something competing with Elektra but instead they would profit from Elektra being adapted more: Elektra takes away the burden related to configuration file editing. (libelektra itself is not a CM, you still need a tool that actively changes the configuration settings).
I know Elektra and I agree .
We think to implements methods and command triggers in order to use elektra by Antd directly.
Our OS it's gentoo Based, and i prefer to put Elektra into the application distribution, or separately. in a readonly image (squashfs.xz).
Sorry for taking so long to respond. The work of @BernhardDenner is now complete and there will be a talk about it at FOSDEM. For the case study I talked about, see https://www.libelektra.org/ftp/elektra/publications/denner2018configuration.pdf