The graph below shows an (incomplete) list of available packages for Elektra.
For the following Linux distributions and package managers 0.9 packages are available:
We provide repositories for latest releases and latest builds from master (suite postfixed with -unstable
) for following Debian-based distributions:
- Debian Buster
- Ubuntu Focal
- Ubuntu Bionic
To use our stable repositories with our latest releases, following steps need to be made:
-
Run
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F26BBE02F3C315A19BF1F791A9A25CC1CC83E839
to obtain the key. -
Add
deb https://debs.libelektra.org/<DISTRIBUTION> <SUITE> main
into/etc/apt/sources.list
where<DISTRIBUTION>
and<SUITE>
is the codename of your distributions e.g.focal
,bionic
,buster
, etc.This can also be done using:
# Example for Ubuntu Focal sudo apt-get install software-properties-common apt-transport-https echo "deb https://debs.libelektra.org/focal focal main" | sudo tee /etc/apt/sources.list.d/elektra.list
Or alternatively, you can use (if you do not mind many dependences just to add one line to a config file):
# Example for Ubuntu Focal sudo apt-get install software-properties-common apt-transport-https sudo add-apt-repository "deb https://debs.libelektra.org/focal focal main"
If you would like to use the latest builds of master, append
-unstable
to<SUITE>
.The
etc/apt/source.list
entry must look like following:deb https://debs.libelektra.org/<DISTRIBUTION> <SUITE>-unstable main
E.g.
deb https://debs.libelektra.org/focal focal-unstable main
-
Run
sudo apt-get update
.
NOTE: for Ubuntu Bionic the yamlcpp plugin is excluded due to missing dependencies and therefore the package
libelektra5-yamlcpp
is not available.
We provide repositories for latest releases and latest builds from master (suite postfixed with -unstable
) for Fedora 33.
For our stable repository with our latest releases:
wget https://rpms.libelektra.org/fedora-33/libelektra.repo -O libelektra.repo;
sudo mv libelektra.repo /etc/yum.repos.d/;
sudo yum update
Or alternatively you can use dnf to add this repo:
sudo dnf config-manager --add-repo https://rpms.libelektra.org/fedora-33/libelektra.repo
For our latest builds from master append -unstable
to the suite name:
wget https://rpms.libelektra.org/fedora-33-unstable/libelektra.repo -O libelektra.repo;
sudo mv libelektra.repo /etc/yum.repos.d/;
sudo yum update
Or alternatively you can use dnf to add this repo:
sudo dnf config-manager --add-repo https://rpms.libelektra.org/fedora-33-unstable/libelektra.repo
To get all packaged plugins, bindings and tools install:
# For Debian based distributions
apt-get install libelektra5-all
# For Fedora based distributions
dnf install libelektra5-all
For a small installation with command-line tools available use:
# For Debian based distributions
apt-get install elektra-bin
# For Fedora based distributions
dnf install elektra-bin
To install all debugsym/debuginfo packages:
# For Debian based distributions
apt-get install elektra-dbg
# For Fedora based distributions
dnf install elektra-dbg
If you want to install individual debugsym/debuginfo packages:
# For Debian based distributions
apt-get install <packagename>-dbgsym # e.g. apt-get install libelektra5-dbgsym
# For Fedora based distributions
dnf debuginfo-install <packagename> # e.g. dnf debuginfo-install libelektra5
To build Debian/Ubuntu Packages from the source you might want to use:
make package # See CPack below
You can install Elektra using Homebrew via the shell command:
brew install elektra
. We also provide a tap containing a more elaborate formula here.
Installation for WSL is described here.
If you prefer native but in functionality limited version you can download MinGW builds from here.
Otherwise please refer to the section OS Independent
below.
First follow the steps in COMPILE.
After you completed building Elektra on your own, there are multiple options how to install it. For example, with make or CPack tools. We recommend to use the packages from our build server or that you generate your own packages with CPack.
The current supported systems are: Debian, Ubuntu and Fedora.
Then use:
make package
which will create packages for distributions where a Generator is implemented.
You can find the generated packages in the package
directory of the build directory.
NOTE: If all plugins/bindings/tools a package includes are excluded, the package will not be generated.
On Debian based distributions you will need to set LD_LIBRARY_PATH before generating the package.
Simply cd
into the build directory and run following command:
LD_LIBRARY_PATH=$(pwd)/lib:${LD_LIBRARY_PATH} make package
To install the packages run this in the package
directory:
sudo apt-get install ./*
If any dependency problems appear, run following command to install the missing dependencies:
sudo apt-get -f install
To install RPM packages we recommend using yum localinstall
since installing with rpm
doesn't resolve missing dependencies.
Run following command in the package
directory:
sudo yum localinstall *
sudo make install
sudo ldconfig # See troubleshooting below
To uninstall Elektra use (will not be very clean,
e.g. it will not remove directories and *.pyc
files):
sudo make uninstall
sudo ldconfig
or in the build directory (will not honor DESTDIR
!):
xargs rm < install_manifest.txt
If you encounter the problem that the library can not be found (output like this)
kdb: error while loading shared libraries:
libelektra-core.so.4: cannot open shared object file: No such file or directory
or:
kdb: error while loading shared libraries:
libelektratools.so.2: cannot open shared object file: No such file or directory
you need to place a configuration file at /etc/ld.so.conf.d/
(e.g. /etc/ld.so.conf.d/elektra.conf
). Note that under Alpine Linux this file is called /etc/ld-musl-x86_64.path
or similar, depending on your architecture.
Add the path where the library has been installed (on Alpine Linux this had to be usr/lib/elektra
for it to work)
/usr/lib/local/
and run ldconfig
as root.
For some of the plugins and tools that ship with Elektra, additional installation manuals have been written. You can find them in the tutorial overview.