Test voxtype in Docker containers. Use for testing builds, verifying packages work on different distros, or isolating test environments.
Installation
Details
Usage
After installing, this skill will be available to your AI coding assistant.
Verify installation:
skills listSkill Instructions
name: docker-test description: Test voxtype in Docker containers. Use for testing builds, verifying packages work on different distros, or isolating test environments. user-invocable: true allowed-tools:
- Bash
- Read
- Glob
Docker Test
Test voxtype builds and packages in isolated Docker containers.
Build Testing
Build AVX2 Binary (Clean Toolchain)
Uses Ubuntu 22.04 to avoid AVX-512 instruction contamination:
./scripts/build-docker.sh
Output: releases/${VERSION}/voxtype-${VERSION}-linux-x86_64-avx2
Build Vulkan Binary
Uses remote Docker context (pre-AVX-512 CPU) for clean build:
./scripts/build-docker-vulkan.sh
Output: releases/${VERSION}/voxtype-${VERSION}-linux-x86_64-vulkan
Full Docker Compose Build
VERSION=0.4.14 docker compose -f docker-compose.build.yml build --no-cache avx2 vulkan
VERSION=0.4.14 docker compose -f docker-compose.build.yml up avx2 vulkan
Package Testing
Test Debian Package
# Build test container
docker run -it --rm -v $(pwd)/releases:/releases ubuntu:22.04 bash
# Inside container:
apt update && apt install -y /releases/0.4.14/voxtype_0.4.14-1_amd64.deb
voxtype --version
voxtype --help
Test RPM Package
# Fedora
docker run -it --rm -v $(pwd)/releases:/releases fedora:latest bash
# Inside container:
dnf install -y /releases/0.4.14/voxtype-0.4.14-1.x86_64.rpm
voxtype --version
Distro-Specific Testing
Ubuntu/Debian
docker run -it --rm ubuntu:22.04 bash -c "
apt update &&
apt install -y curl libasound2 &&
curl -L https://github.com/peteonrails/voxtype/releases/download/v0.4.14/voxtype-0.4.14-linux-x86_64-avx2 -o /usr/bin/voxtype &&
chmod +x /usr/bin/voxtype &&
voxtype --version
"
Fedora
docker run -it --rm fedora:latest bash -c "
dnf install -y alsa-lib curl &&
curl -L https://github.com/peteonrails/voxtype/releases/download/v0.4.14/voxtype-0.4.14-linux-x86_64-avx2 -o /usr/bin/voxtype &&
chmod +x /usr/bin/voxtype &&
voxtype --version
"
Arch Linux
docker run -it --rm archlinux:latest bash -c "
pacman -Sy --noconfirm base-devel git &&
# Test AUR package build
git clone https://aur.archlinux.org/voxtype-bin.git &&
cd voxtype-bin &&
makepkg -si --noconfirm
"
Docker Context Management
For builds requiring a pre-AVX-512 CPU:
# List contexts
docker context ls
# Switch to remote build server
docker context use truenas
# Build clean binaries
docker compose -f docker-compose.build.yml up avx2 vulkan
# Switch back to local
docker context use default
Troubleshooting
Build cache issues:
docker compose -f docker-compose.build.yml build --no-cache
Container won't start: Check if audio devices are needed - voxtype requires ALSA/PipeWire which may not be available in containers.
Version mismatch after build:
Docker cached old layers. Always use --no-cache for release builds.
More by peteonrails
View allPackage voxtype for release. Creates deb and rpm packages from binaries. Use when building distribution packages.
Publish voxtype to AUR. Updates PKGBUILD, generates checksums, and pushes to AUR. Use after a GitHub release is published.
Update voxtype documentation for releases and features. Use when adding features, fixing bugs, or preparing releases. Covers user manual, troubleshooting, website, release notes, and contributor credits.
Run regression tests for voxtype releases. Use before major releases to verify core functionality, CLI commands, and configuration handling.
