feat/add-servermanager-and-youtube-mp3-download-backend #1

Merged
stefan merged 6 commits from feat/add-servermanager-and-youtube-mp3-download-backend into main 2026-09-23 16:26:46 +02:00
Owner
No description provided.
Flask service (ytdlp-mp3/) downloading YouTube videos as MP3 with
embedded metadata and square cover art, plus the server-manager UI.

The resolve pre-check is now a simulate pass on exit code only: in
simulate mode yt-dlp never reaches the post-process stage, so
--print after_move:filepath always comes back empty (every download
502'd with 'yt-dlp returned no filepath'). The real download now
passes --print after_move:filepath and the target path is taken from
the last non-empty stdout line, with the containment check kept.
'Already downloaded' detection is a before/after directory-name
snapshot (since 2026.08.19 yt-dlp skips silently, so stderr text
cannot be used). Both invocations pass --js-runtimes node: since
2026.08.19 yt-dlp only enables deno by default, so the image's node
would otherwise be inert for YouTube.
The venv-based Containerfile installs yt-dlp in /app/venv, whose bin dir
is not on the container PATH, so the bare 'yt-dlp' call raised
FileNotFoundError (500 on every download). Run it via
'sys.executable -m yt_dlp' so it always resolves against the venv the
app is running from.
stefan merged commit a4b6723c4a into main 2026-09-23 16:26:46 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
stefan/server!1
No description provided.