package-release

Original🇺🇸 English
Translated

Package voxtype for release. Creates deb and rpm packages from binaries. Use when building distribution packages.

1installs
Added on

NPX Install

npx skill4agent add peteonrails/voxtype package-release

Tags

Translated version includes tags in frontmatter

Package Release

Build distribution packages (deb, rpm) for voxtype releases.

Prerequisites

  • fpm
    - Install with
    gem install fpm
  • rpmbuild
    - Install with
    sudo dnf install rpm-build
    or
    sudo pacman -S rpm-tools
  • Pre-built binaries in
    releases/${VERSION}/

Quick Package

If binaries already exist:
bash
./scripts/package.sh --skip-build ${VERSION}

Full Build + Package

Build binaries and create packages:
bash
./scripts/package.sh ${VERSION}

Options

FlagDescription
--skip-build
Use existing binaries, don't rebuild
--deb-only
Build only Debian package
--rpm-only
Build only RPM package
--no-validate
Skip package validation
--release N
Set package release number (default: 1)
--arch ARCH
Target architecture: x86_64 or aarch64

Output

Packages are created in
releases/${VERSION}/
:
  • voxtype_${VERSION}-1_amd64.deb
  • voxtype-${VERSION}-1.x86_64.rpm

Validation

The script automatically:
  1. Validates binaries for CPU instruction contamination
  2. Checks deb package structure for duplicate fields
  3. Verifies required control file fields

Workflow

  1. Build binaries (Docker for AVX2/Vulkan, local for AVX-512)
  2. Verify binary versions match expected version
  3. Run
    ./scripts/package.sh --skip-build ${VERSION}
  4. Test package installation in a VM or container

Common Issues

Binary not found:
Error: Binary not found: releases/0.4.14/voxtype-0.4.14-linux-x86_64-avx2
Build binaries first or check the version number.
fpm not found:
bash
gem install fpm
Validation failed: Check the specific error. Usually means Docker cache is stale.