Linux Distribution support
Tested on Gentoo, Debian, Centos, LEDE/OpenWRT and Alpine Linux.
Runs fine on OpenWRT mipsel and mips targets with little as 32MB RAM. Here's a memory usage snapshot of a week-old Configi process running on a Broadcom MIPS board. The policy is executed every half hour. All 0.9.0 modules compiled in.
VmPeak: 1356 kB VmSize: 1356 kB VmLck: 0 kB VmPin: 0 kB VmHWM: 776 kB VmRSS: 776 kB VmData: 364 kB VmStk: 136 kB VmExe: 348 kB VmLib: 476 kB VmPTE: 12 kB VmSwap: 0 kB
It should compile on any recent Linux distributions but it may lack the necessary modules to be useful. This should improve with module contributions for your distribution.
The build time requirements are GNUMake and a compiler-toolchain such as GCC or Clang.
Runtime dependencies will depend on the module that you want to compile in. As much as possible core modules do not link to shared libraries. If dynamically linked the only runtime dependency of the
cfg executable is a libc.
# ldd bin/cfg /lib/ld-musl-x86_64.so.1 (0x7f6167d50000) libc.musl-x86_64.so.1 => /lib/ld-musl-x86_64.so.1 (0x7f6167d50000)
The build system is from Omnia.
Unpack the archive, change to the directory then run
# tar -xf configi-2.0.0.tar.gz # cd configi-2.0.0 # make
# cd configi-2.0.0 # bin/cfg-agent -f path_to_your_policy