mirror of
https://github.com/legop3/MultiRoombaRover.git
synced 2026-09-16 09:31:20 -04:00
43 lines
1.7 KiB
Bash
43 lines
1.7 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
install_debian_laptop_deps() {
|
|
# This profile is deliberately Debian-only. Using apt directly is simpler
|
|
# than adding a fake cross-distro layer, and it keeps the installed package
|
|
# set easy to inspect on the actual rover laptop.
|
|
if command -v ffmpeg >/dev/null 2>&1 \
|
|
&& command -v arecord >/dev/null 2>&1 \
|
|
&& command -v aplay >/dev/null 2>&1 \
|
|
&& command -v amixer >/dev/null 2>&1 \
|
|
&& command -v v4l2-ctl >/dev/null 2>&1 \
|
|
&& command -v flite >/dev/null 2>&1 \
|
|
&& command -v espeak >/dev/null 2>&1; then
|
|
log "Debian laptop media/audio dependencies already installed; skipping apt install"
|
|
return
|
|
fi
|
|
|
|
log "Installing Debian laptop dependencies (ffmpeg, ALSA tools, V4L2 tools, flite, espeak)..."
|
|
apt-get update
|
|
apt-get install -y --no-install-recommends ffmpeg alsa-utils v4l-utils ca-certificates flite espeak
|
|
}
|
|
|
|
install_debian_laptop_audio_support() {
|
|
if [[ ! -f pi/asound.debian-laptop.conf ]]; then
|
|
log "WARNING: pi/asound.debian-laptop.conf missing; skipping Debian laptop ALSA config install"
|
|
return
|
|
fi
|
|
|
|
# The laptop profile still uses roverd's existing audio contract: TTS plays
|
|
# to ALSA's default output, horn plays to the named "horn" device, and
|
|
# forwarded web audio plays to the named "forward" device. Installing one
|
|
# profile-specific asound.conf gives those paths independent softvol mixer
|
|
# controls without changing the TTS runtime code.
|
|
install -m 0644 pi/asound.debian-laptop.conf /etc/asound.conf
|
|
log "Installed Debian laptop ALSA config to /etc/asound.conf"
|
|
log "ALSA config updated; restarting audio clients or rebooting is recommended before testing laptop audio"
|
|
}
|
|
|
|
install_debian_laptop_profile() {
|
|
install_debian_laptop_deps
|
|
install_debian_laptop_audio_support
|
|
}
|