60 lines
2.8 KiB
Makefile
60 lines
2.8 KiB
Makefile
.PHONY: dev boot stop logs rebuild status pipes mac-audio spotify windows-audio
|
|
|
|
# ── Docker ─────────────────────────────────────────────────────────────────────
|
|
|
|
dev:
|
|
docker compose -f docker-compose.yml -f docker-compose.dev.yml up -d
|
|
|
|
boot:
|
|
docker compose up -d
|
|
|
|
stop:
|
|
docker compose -f docker-compose.yml -f docker-compose.dev.yml down
|
|
|
|
stop-boot:
|
|
docker compose down
|
|
|
|
logs:
|
|
docker compose -f docker-compose.yml -f docker-compose.dev.yml logs -f
|
|
|
|
rebuild:
|
|
docker compose -f docker-compose.yml -f docker-compose.dev.yml build --no-cache
|
|
|
|
status:
|
|
docker compose -f docker-compose.yml -f docker-compose.dev.yml ps
|
|
|
|
# ── Mac native audio (dev) ─────────────────────────────────────────────────────
|
|
# Runs a real Snapcast client on the Mac, connected to the Docker snapserver.
|
|
# Audio plays through Mac speakers. This is the "mac-audio" zone.
|
|
# Requires: brew install snapcast
|
|
|
|
mac-audio:
|
|
@echo "Starting Snapcast client → Mac speakers (zone: mac-audio)"
|
|
@which snapclient > /dev/null || (echo "Installing snapcast via Homebrew..." && brew install snapcast)
|
|
snapclient --host localhost --port 1704 --hostID mac-audio --player default
|
|
|
|
# ── Spotify Connect on Mac ─────────────────────────────────────────────────────
|
|
# Runs librespot natively on Mac. The Spotify app will see "Bordanlage" as device.
|
|
# Audio goes through Mac speakers directly (rodio backend).
|
|
# Requires: brew install librespot
|
|
# Note: For Snapcast multiroom, use the pipe backend instead (boot mode only).
|
|
|
|
spotify:
|
|
@echo "Starting Spotify Connect (librespot) on Mac..."
|
|
@which librespot > /dev/null || (echo "Installing librespot via Homebrew..." && brew install librespot)
|
|
librespot \
|
|
--name "$${SPOTIFY_NAME:-Bordanlage}" \
|
|
--bitrate $${SPOTIFY_BITRATE:-320} \
|
|
--backend rodio \
|
|
--zeroconf-port 57621
|
|
|
|
# ── Windows native audio (dev) ─────────────────────────────────────────────────
|
|
# Runs a real Snapcast client on Windows, connected to the Docker snapserver.
|
|
# Audio plays through Windows speakers. This is the "windows-pc" zone.
|
|
# Requires: snapcast from https://github.com/badaix/snapcast/releases
|
|
|
|
windows-audio:
|
|
@echo "Starting Snapcast client → Windows speakers (zone: windows-pc)"
|
|
@where snapclient > nul || (echo "Please install Snapcast from https://github.com/badaix/snapcast/releases" && exit 1)
|
|
snapclient --host localhost --port 1704 --hostID windows-pc --player wasapi
|