Files
uno-q-audio-synth/install.sh
T
david 0382450f8b
Validate and Test / validate-patches (push) Failing after 12s
feat: add git hooks for pre-push validation and post-merge auto-deploy
- .githooks/pre-push: validate Pd patches via python3 pd-validator
- .githooks/post-merge: auto-restart services when systemd/scripts change
- install.sh: configure core.hooksPath at install time
- justfile deploy: set hooksPath after git pull
2026-06-24 03:19:51 -07:00

34 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
# install-services.sh — Deploy systemd services to board
set -euo pipefail
REPO="/home/arduino/uno-q-audio-synth"
SERVICES=(synth-diagnostic midi-bridge pd-synth-onboard led-matrix-viz prometheus-exporter)
for svc in "${SERVICES[@]}"; do
sudo cp "$REPO/system/$svc.service" /etc/systemd/system/
done
# Fix UCM bug (must survive OS updates)
FILE=/usr/share/alsa/ucm2/codecs/qcom-lpass/rx-macro/HeadphoneEnableSeq.conf
if grep -q "RX HPH Mode" "$FILE" 2>/dev/null; then
sudo sed -i '/RX HPH Mode/d' "$FILE"
echo "[OK] UCM HeadphoneEnableSeq patched"
fi
sudo systemctl daemon-reload
# Stop/mask old conflicting services
sudo systemctl stop pd-synth pd-synth-auto pd-synth-i2s 2>/dev/null || true
sudo systemctl disable pd-synth pd-synth-auto pd-synth-i2s 2>/dev/null || true
sudo systemctl mask pd-synth pd-synth-auto pd-synth-i2s 2>/dev/null || true
for svc in "${SERVICES[@]}"; do
sudo systemctl enable "$svc"
done
# Install git hooks: point to repo's .githooks so post-merge auto-restarts services
git config core.hooksPath "$REPO/.githooks"
echo "[OK] Services installed and enabled"