systemd services: midi-bridge, pd-synth-onboard, led-matrix-viz + install script
This commit is contained in:
@@ -91,27 +91,46 @@ install:
|
||||
@ssh {{SSH_OPTS}} "{{BOARD_USER}}@{{BOARD_HOST}}" "\
|
||||
rm -rf {{REPO_DIR}} 2>/dev/null; \
|
||||
git clone {{REPO_URL}} {{REPO_DIR}} && \
|
||||
echo '[OK] Repo cloned to {{REPO_DIR}}'"
|
||||
@echo "[OK] Repo installed. Run: just deploy"
|
||||
echo '[OK] Repo cloned' && \
|
||||
chmod +x {{REPO_DIR}}/scripts/*.py {{REPO_DIR}}/scripts/*.sh && \
|
||||
bash {{REPO_DIR}}/install.sh && \
|
||||
echo '[OK] Services installed'"
|
||||
@echo "[OK] Run: just deploy"
|
||||
|
||||
# Deploy: push local commits + git pull on board
|
||||
# Deploy + reload services after git pull
|
||||
deploy:
|
||||
@git push origin HEAD 2>&1
|
||||
@ssh {{SSH_OPTS}} "{{BOARD_USER}}@{{BOARD_HOST}}" "\
|
||||
cd {{REPO_DIR}} && git pull && echo '[OK] Deployed'"
|
||||
cd {{REPO_DIR}} && git pull && \
|
||||
chmod +x scripts/*.py scripts/*.sh 2>/dev/null; \
|
||||
echo '{{BOARD_PASS}}' | sudo -S systemctl daemon-reload && \
|
||||
echo '{{BOARD_PASS}}' | sudo -S systemctl restart midi-bridge pd-synth-onboard led-matrix-viz && \
|
||||
echo '[OK] Deployed + restarted'"
|
||||
|
||||
# Start synth (onboard audio)
|
||||
synth-onboard:
|
||||
@ssh {{SSH_OPTS}} "{{BOARD_USER}}@{{BOARD_HOST}}" "\
|
||||
sudo killall pd 2>/dev/null; sleep 0.5; \
|
||||
echo '{{BOARD_PASS}}' | sudo -S sed -i '/RX HPH Mode/d' /usr/share/alsa/ucm2/codecs/qcom-lpass/rx-macro/HeadphoneEnableSeq.conf 2>/dev/null; \
|
||||
nohup {{REPO_DIR}}/scripts/start-synth.sh --onboard > /tmp/synth.log 2>&1 & \
|
||||
sleep 2; \
|
||||
pgrep -x pd >/dev/null && echo '[OK] Synth running (onboard)' || echo '[FAIL] Check /tmp/synth.log'"
|
||||
@ssh {{SSH_OPTS}} "{{BOARD_USER}}@{{BOARD_HOST}}" "sudo systemctl start pd-synth-onboard && echo '[OK] Synth started'"
|
||||
|
||||
# Stop synth
|
||||
synth-stop:
|
||||
@ssh {{SSH_OPTS}} "{{BOARD_USER}}@{{BOARD_HOST}}" "sudo killall pd 2>/dev/null; echo '[OK] Stopped'"
|
||||
@ssh {{SSH_OPTS}} "{{BOARD_USER}}@{{BOARD_HOST}}" "sudo systemctl stop pd-synth-onboard && echo '[OK] Stopped'"
|
||||
|
||||
# Restart all services
|
||||
synth-restart:
|
||||
@ssh {{SSH_OPTS}} "{{BOARD_USER}}@{{BOARD_HOST}}" "\
|
||||
sudo systemctl restart midi-bridge pd-synth-onboard led-matrix-viz && \
|
||||
echo '[OK] All services restarted'"
|
||||
|
||||
# Show service status
|
||||
status:
|
||||
@ssh {{SSH_OPTS}} "{{BOARD_USER}}@{{BOARD_HOST}}" "\
|
||||
echo '=== Pd ==='; pgrep -a pd | grep -v watchdog | grep -v kswapd || echo '(not running)'; \
|
||||
echo '=== Services ==='; \
|
||||
for svc in midi-bridge pd-synth-onboard led-matrix-viz; do \
|
||||
echo -n \" \$svc: \"; systemctl is-active \$svc 2>/dev/null || echo 'inactive'; \
|
||||
done; \
|
||||
echo '=== Audio ==='; cat /proc/asound/cards; \
|
||||
echo '=== Git ==='; cd {{REPO_DIR}} && git log --oneline -1"
|
||||
|
||||
# Enable midi-bridge service
|
||||
enable-midi-bridge:
|
||||
@@ -165,13 +184,6 @@ diag-led:
|
||||
deploy-diag:
|
||||
@scp {{SSH_OPTS}} scripts/diag.sh "{{BOARD_USER}}@{{BOARD_HOST}}:{{SYSTEM_DIR}}/bin/diag.sh"
|
||||
|
||||
# Show system status (quick)
|
||||
status:
|
||||
@ssh {{SSH_OPTS}} "{{BOARD_USER}}@{{BOARD_HOST}}" "\
|
||||
cd {{REPO_DIR}} && git log --oneline -1; \
|
||||
echo '---'; pgrep -a pd 2>/dev/null || echo 'Pd: not running'; \
|
||||
echo '---'; cat /proc/asound/cards"
|
||||
|
||||
# Full deploy + restart synth
|
||||
cycle: deploy synth-stop synth-onboard
|
||||
|
||||
|
||||
Reference in New Issue
Block a user