26 lines
1.3 KiB
Bash
Executable File
26 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
VERSION="${JARVIS_VERSION:-$(node -p "require('${ROOT_DIR}/package.json').version")}"
|
|
ARCH="${JARVIS_DEB_ARCH:-$(dpkg --print-architecture)}"
|
|
OUT_DIR="${ROOT_DIR}/dist"
|
|
PKG_DIR="${OUT_DIR}/jarvis-qvac_${VERSION}_${ARCH}"
|
|
rm -rf "${PKG_DIR}"
|
|
mkdir -p "${PKG_DIR}/DEBIAN" "${PKG_DIR}/usr/lib/jarvis-qvac" "${PKG_DIR}/usr/share/doc/jarvis-qvac"
|
|
cat > "${PKG_DIR}/DEBIAN/control" <<EOF
|
|
Package: jarvis-qvac
|
|
Version: ${VERSION}
|
|
Section: utils
|
|
Priority: optional
|
|
Architecture: ${ARCH}
|
|
Maintainer: JARVIS-QVAC maintainers
|
|
Description: Local GPU-backed GNOME voice assistant
|
|
JARVIS-QVAC is a local-first voice assistant for Ubuntu GNOME.
|
|
EOF
|
|
tar --exclude='.git' --exclude='./.agents' --exclude='./.codex' --exclude='./dist' --exclude='./node_modules' --exclude='*/node_modules' --exclude='*/__pycache__' --exclude='*.pyc' -cf - -C "${ROOT_DIR}" . | tar -xf - -C "${PKG_DIR}/usr/lib/jarvis-qvac"
|
|
cp "${ROOT_DIR}/README.md" "${PKG_DIR}/usr/share/doc/jarvis-qvac/README.md"
|
|
cp "${ROOT_DIR}/docs/RELEASE.md" "${PKG_DIR}/usr/share/doc/jarvis-qvac/RELEASE.md"
|
|
dpkg-deb --build --root-owner-group "${PKG_DIR}" "${OUT_DIR}/jarvis-qvac_${VERSION}_${ARCH}.deb" >/dev/null
|
|
rm -rf "${PKG_DIR}"
|
|
echo "${OUT_DIR}/jarvis-qvac_${VERSION}_${ARCH}.deb"
|