Void package smoke gate #28

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

Parent

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

What to build

The packaged artefact gets the same treatment as the project's other distribution formats: a repeatable gate, following the existing distro-gate conventions and using podman, that builds all three Void templates in the pinned Void glibc container, installs the resulting packages into a clean Void environment, and proves the installed app starts — the renamed binary reporting its version and the core desktop and speech imports loading. Template lint is part of the gate. The gate is wired so release work can call it the same way other packaging gates are called, and so CI can adopt it without restructuring.

Acceptance criteria

  • One documented command runs the whole gate from a clean checkout using podman and the pinned container, with no host Void install required.
  • The gate fails if any template fails lint, any package fails to build, installation into the clean environment fails, the version report fails, or any smoke import fails.
  • The gate passes on the current templates and its output identifies which stage failed when broken deliberately in a scratch copy.
  • Offline policy coverage asserts the gate stays wired to the three templates, so a renamed or added template cannot silently drop out of the smoke.

Blocked by

## Parent [Spec: Voculinux — Void Linux (glibc) Wayland/niri port of Vocalinux](https://git.bongbetic.com/xavierk/voculinux/issues/16) ## What to build The packaged artefact gets the same treatment as the project's other distribution formats: a repeatable gate, following the existing distro-gate conventions and using podman, that builds all three Void templates in the pinned Void glibc container, installs the resulting packages into a clean Void environment, and proves the installed app starts — the renamed binary reporting its version and the core desktop and speech imports loading. Template lint is part of the gate. The gate is wired so release work can call it the same way other packaging gates are called, and so CI can adopt it without restructuring. ## Acceptance criteria - [ ] One documented command runs the whole gate from a clean checkout using podman and the pinned container, with no host Void install required. - [ ] The gate fails if any template fails lint, any package fails to build, installation into the clean environment fails, the version report fails, or any smoke import fails. - [ ] The gate passes on the current templates and its output identifies which stage failed when broken deliberately in a scratch copy. - [ ] Offline policy coverage asserts the gate stays wired to the three templates, so a renamed or added template cannot silently drop out of the smoke. ## Blocked by - [Void app template for voculinux](https://git.bongbetic.com/xavierk/voculinux/issues/27)
xavierk added the ready-for-agent label 2026-11-05 17:00:47 +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.