Void template for the whisper.cpp Python binding #26

Closed
opened 2026-11-05 17:00:44 +00:00 by xavierk · 1 comment
Owner

Parent

Spec: Voculinux — Void Linux (glibc) Wayland/niri port of Vocalinux

What to build

The hard Void dependency gets its template: the whisper.cpp Python binding, built from its source distribution with the Vulkan backend, shared libraries, and portable CPU flags (no host-native tuning, so the binary runs on older CPUs), pinned to the exact version the project lockfile and installer already pin rather than the newest upstream release. Vulkan is a template build option, on by default, so source builders can rebuild CPU-only. There is no CUDA build: Void has no CUDA toolkit package. The build must not let the package's own build tooling fetch anything from the network beyond the declared source distribution.

Acceptance criteria

  • The template passes the Void template linter and declares the pinned binding version matching the project lockfile and installer pin.
  • The package builds in the pinned Void glibc container (podman); the Vulkan backend library is present in the built package and the binding imports cleanly, including its model submodule and compiled extension.
  • Rebuilding with the Vulkan build option off produces a working CPU-only package.
  • Built binaries carry no host-native CPU tuning (portable flags verified in the build configuration).
  • Runtime dependencies name only packages verified to exist in current void-packages.

Blocked by

None (can start immediately).

## Parent [Spec: Voculinux — Void Linux (glibc) Wayland/niri port of Vocalinux](https://git.bongbetic.com/xavierk/voculinux/issues/16) ## What to build The hard Void dependency gets its template: the whisper.cpp Python binding, built from its source distribution with the Vulkan backend, shared libraries, and portable CPU flags (no host-native tuning, so the binary runs on older CPUs), pinned to the exact version the project lockfile and installer already pin rather than the newest upstream release. Vulkan is a template build option, on by default, so source builders can rebuild CPU-only. There is no CUDA build: Void has no CUDA toolkit package. The build must not let the package's own build tooling fetch anything from the network beyond the declared source distribution. ## Acceptance criteria - [ ] The template passes the Void template linter and declares the pinned binding version matching the project lockfile and installer pin. - [ ] The package builds in the pinned Void glibc container (podman); the Vulkan backend library is present in the built package and the binding imports cleanly, including its model submodule and compiled extension. - [ ] Rebuilding with the Vulkan build option off produces a working CPU-only package. - [ ] Built binaries carry no host-native CPU tuning (portable flags verified in the build configuration). - [ ] Runtime dependencies name only packages verified to exist in current void-packages. ## Blocked by None (can start immediately).
xavierk added the ready-for-agent label 2026-11-05 17:00:44 +00:00
Author
Owner

Merged in integration/spec16 1dd3986383 pushed to fork/integration/spec16 (https://github.com/soubarnak/vocalinux/tree/integration/spec16), review PASS, gates flake8 E9,F63,F7,F82 + black --check + isort --check + mypy src/ clean, pytest 37 passed, npm jest 11 suites/92 tests + lint 0 errors + tsc clean + build OK

Merged in integration/spec16 1dd398638312a3b6e27793d856662e60df73f252 pushed to fork/integration/spec16 (https://github.com/soubarnak/vocalinux/tree/integration/spec16), review PASS, gates flake8 E9,F63,F7,F82 + black --check + isort --check + mypy src/ clean, pytest 37 passed, npm jest 11 suites/92 tests + lint 0 errors + tsc clean + build OK
Sign in to join this conversation.