feat: optional YouTube Music source (cookies volume + wizard step)

Adds a step_youtube wizard prompt (enable + cookies host folder), the @YOUTUBE_VOLUME@ token in templates/compose/backend.yml substituted in compose_gen, a YOUTUBE_ENABLED/cookies env block, ensure_youtube_dir in lifecycle, en/ru strings, and a README step.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Senko-san
2026-06-14 14:04:49 +03:00
parent 4108121984
commit 3a63ced4d4
8 changed files with 89 additions and 1 deletions
+8
View File
@@ -31,6 +31,13 @@ generate_compose() {
webui_ports=" ports:${nl} - \"\${WEBUI_PORT}:80\""
fi
# YouTube cookies volume: mounted into api+worker only when the source is
# enabled. The host path comes from .env.deploy (YOUTUBE_COOKIES_HOST_PATH).
local youtube_volume=""
if [[ "$CFG_YOUTUBE" == "yes" ]]; then
youtube_volume=" - \${YOUTUBE_COOKIES_HOST_PATH}:/data/youtube"
fi
# Caddy publish ports: 80/443 with a domain (auto-HTTPS), else plain HTTP.
if [[ "$CFG_HTTPS" == "yes" ]]; then
caddy_ports=" - \"80:80\"${nl} - \"443:443\""
@@ -41,6 +48,7 @@ generate_compose() {
# -- assemble ---------------------------------------------------------
local backend webui caddy
backend="$(_frag backend.yml)"
backend="${backend//@YOUTUBE_VOLUME@/$youtube_volume}"
backend="${backend//@API_PORTS@/$api_ports}"
backend="${backend//@API_DEPENDS@/$api_depends}"
backend="${backend//@WORKER_DEPENDS@/$worker_depends}"