home / docs / kama configuration

Kama configuration

Every knob, every default, every path.

Kama's configuration is environment variables. Nothing to edit inside the script, nothing hidden — set them in the environment (export in a profile, or inline on the command line) and it's done.

Variables

VariableDefaultWhat it controls
PKGDIRthe kama-packages repo, sibling of the kama scriptWhere recipes are found.
ROOT/tmp/keru/rootWhere installed files land.
CACHEDIR/var/cache/kamaBase for the dirty working dirs.
MAKE_CONF/etc/kama/make.confProfile settings (JOBS, CFLAGS, etc.) if present.
SOURCE_MIRRORunsetMirror tried before upstream (set to e.g. mirror.keru.org).
PURGE_TEMP_DEPS1Purge temp build deps after kama make.
JOBSnprocParallel build jobs; recipes call make -j"$JOBS".

Cache layout

$CACHEDIR/ ├── dl/ downloaded archives ├── src/ extracted source per package └── stage/ staged installs, committed to $ROOT on success

Common setups

# build into a scratch root ROOT=/mnt/keru-root kama make busybox # migrate cache to a big disk export CACHEDIR=/mnt/cache/kama export SOURCE_MIRROR=https://mirror.example.org # keep temp deps this run (default removes them) PURGE_TEMP_DEPS=0 kama make firefox

make.conf integration

Inside an installed Keru system, the profile at MAKE_CONF feeds the same variables into kama and the build scripts. Your make.conf reference lists the full set.

  • If MAKE_CONF exists it is sourced; missing is not an error.
  • The installer writes JOBS and CFLAGS from build-host detection.
  • Every variable has a sane default, so kama runs with zero config.
Zero-config by default, fully pointed overrides when you need them. That's the whole story — read on for recipes.

← kama usage · make.conf