Fix installer host integration
Rolling release / release (push) Successful in 8m25s
CI / verify (push) Successful in 1m24s

This commit is contained in:
2026-09-11 15:20:39 -04:00
parent fede00f902
commit 65efad934b
4 changed files with 47 additions and 8 deletions
+7 -3
View File
@@ -5,11 +5,15 @@ cd "${ROOT_DIR}"
echo "JARVIS-QVAC first-run setup"
echo "The daemon is GPU-gated and keeps QVAC behind one master owner."
echo
echo "[1/4] GPU and QVAC preflight"
echo "[1/5] GPU and QVAC preflight"
npm run gpu-doctor || true
npm run qvac:doctor || true
if command -v timeout >/dev/null; then
timeout --foreground 30s npm run qvac:doctor || echo "QVAC doctor timed out or reported an unavailable host dependency; continuing with local setup."
else
npm run qvac:doctor || true
fi
echo
echo "[2/4] Microphone and PipeWire preflight"
echo "[2/5] Microphone and PipeWire preflight"
npm run voice-doctor || true
echo
echo "[3/5] Wake phrase and model profile"
+16 -2
View File
@@ -1,6 +1,12 @@
#!/usr/bin/env bash
set -euo pipefail
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
NODE_BIN="$(command -v node || true)"
if [[ -z "${NODE_BIN}" ]]; then
echo "Node.js is required" >&2
exit 1
fi
command -v zip >/dev/null || { echo "zip is required to register the GNOME extension" >&2; exit 1; }
APP_DIR="${HOME}/.local/share/jarvis-qvac"
EXT_DIR="${HOME}/.local/share/gnome-shell/extensions/[email protected]"
CONFIG_DIR="${HOME}/.config/jarvis"
@@ -12,8 +18,16 @@ if [[ ! -d "${APP_DIR}/node_modules" ]]; then
fi
rm -rf "${EXT_DIR}"
mkdir -p "${EXT_DIR}"
cp -a "${ROOT_DIR}/apps/gnome-extension/[email protected]/." "${EXT_DIR}/"
cp "${ROOT_DIR}/packaging/jarvisd.service" "${HOME}/.config/systemd/user/jarvisd.service"
EXT_ZIP="$(mktemp "${TMPDIR:-/tmp}/jarvis-extension.XXXXXX.zip")"
cleanup_ext() { rm -f "${EXT_ZIP}"; }
trap cleanup_ext EXIT
( cd "${ROOT_DIR}/apps/gnome-extension" && zip -q -r "${EXT_ZIP}" "[email protected]" )
if command -v gnome-extensions >/dev/null && gnome-extensions install --force "${EXT_ZIP}" >/dev/null 2>&1; then
:
else
cp -a "${ROOT_DIR}/apps/gnome-extension/[email protected]/." "${EXT_DIR}/"
fi
sed "s#__JARVIS_NODE__#${NODE_BIN}#" "${ROOT_DIR}/packaging/jarvisd.service" > "${HOME}/.config/systemd/user/jarvisd.service"
if [[ ! -f "${CONFIG_DIR}/qvac.config.json" ]]; then
sed "s#__JARVIS_CACHE__#${CACHE_DIR}#g" "${ROOT_DIR}/packaging/qvac.config.template.json" > "${CONFIG_DIR}/qvac.config.json"
fi
+1 -1
View File
@@ -6,7 +6,7 @@ Wants=pipewire.service
[Service]
Type=simple
WorkingDirectory=%h/.local/share/jarvis-qvac
ExecStart=/usr/bin/node %h/.local/share/jarvis-qvac/daemon/index.js
ExecStart=__JARVIS_NODE__ %h/.local/share/jarvis-qvac/daemon/index.js
Environment=QVAC_CONFIG_PATH=%h/.config/jarvis/qvac.config.json
Environment=JARVIS_GPU_REQUIRED=1
Environment=JARVIS_QVAC_OWNER=jarvisd