firebox-pypi-index

Python wheels for firebox — built against wasix-libc, served via GitHub Pages.

This index is operational. Packages hosted here are built specifically for firebox's wasm32-wasi runtime. For any package not yet hosted, pip automatically cascades to wasix-extras — no configuration needed.

Quick start

Inside a firebox python-dev image, pip is already configured. Just run:

pip install <package>

Outside firebox, or to use the index directly:

pip install \
  --index-url https://pythonindex.firebox.run/simple/ \
  --extra-index-url https://pythonindex.wasix.org/simple/ \
  <package>

PEP 503 simple repository

/simple/ — machine-readable package listing.

Each package directory under /simple/<name>/ contains an HTML page with links to every available wheel and source distribution, annotated with sha256 digests. Tools like pip and uv consume this format directly.

How resolution works

  1. firebox-pypi-index is checked first (PIP_INDEX_URL). If the package is hosted here, pip uses our wheel — built and tested against firebox's wasix-libc fork.
  2. wasix-extras is checked second (PIP_EXTRA_INDEX_URL). Wasix provides broad coverage of pure-Python and common binary-extension wheels for the wasm32-wasi platform.
  3. PyPI is checked last. Pure-Python wheels (py3-none-any) install directly; binary-extension wheels from PyPI target the host architecture and will not work inside firebox.

This means pip install cryptography inside firebox resolves to our firebox-tuned wheel when present, falls through to wasix's build if ours is newer, and never tries to install a host-native wheel that would fail at runtime.

Wheel naming

Firebox-tuned wheels use PEP 440 local version identifiers so they coexist cleanly with upstream releases:

cryptography-47.0.0+firebox.1-cp313-cp313-wasix_wasm32.whl

Requesting cryptography==47.0.0 resolves to 47.0.0+firebox.1 when present — pip treats the local suffix as a build variant of the same version, not a different release.

Architecture

Requesting a wheel

To request a new wheel or report a broken one, file an issue on the firebox project. Include the package name, the version you need, and whether you need it for the slim python image or the full python-dev image (with C/Rust build toolchain).


firebox-pypi-index — © 2026 Justin Firth. All rights reserved.