31 lines
957 B
Bash
Executable File
31 lines
957 B
Bash
Executable File
#!/bin/bash
|
|
# install-services.sh — Deploy systemd services to board
|
|
set -euo pipefail
|
|
|
|
REPO="/home/arduino/uno-q-audio-synth"
|
|
SERVICES=(midi-bridge pd-synth-onboard led-matrix-viz)
|
|
|
|
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
|
|
|
|
echo "[OK] Services installed and enabled"
|