Skip to content

Installation

From PyPI

kippy runs on Linux. Pre-built wheels for x86_64 and aarch64 bundle giza and its cairo and gfortran runtime libraries:

pip install kippy

The wheels expect the system X11 libraries (libX11, libXext, libXrender) and libexpat, which desktop Linux installs already provide. Without a matching wheel, pip builds from the sdist, which needs the requirements below.

Building from source

Requirements

kippy builds with Meson and Ninja through meson-python. Building the compiled Fortran core and bundled giza library requires:

  • gfortran
  • meson
  • ninja
  • development packages for cairo, libx11, and freetype2

Clone the repository

Clone kippy with its submodules:

git clone --recurse-submodules https://github.com/rileythai/kippy
cd kippy

If the repository was cloned without submodules, initialize them separately:

git submodule update --init --recursive

Install kippy

Install from the repository root:

pip install .

For an editable install with uv:

uv pip install -e .

If uv needs to rebuild the editable install using the toolchain in the active environment, disable build isolation and force a reinstall:

uv pip install --no-build-isolation --force-reinstall -e .

The build ships libgiza.so.2 under kippy/bin. The Python launchers add that directory to LD_LIBRARY_PATH when starting the compiled executables.

Build the documentation

Preview the documentation locally from the repository root:

uvx --from 'zensical>=0.0.68' zensical serve

Build the static site into site/:

uvx --from 'zensical>=0.0.68' zensical build

With mise, the same commands are mise run docs:serve and mise run docs:build.