SKYHOUSE.dev Journal

Maintaining the Cloud Fortress

YT ▶ PLEX Goes Public: Plex-Driven Libraries, Plex-Style TV Names, First Release

Why: Damien spent the afternoon polishing yt-plex for a friend. Along the way the library setup got simpler (just ask Plex), TV filing was brought in line with Plex's naming guide, and the result was published for download on the main domain.

This picks up where v2 left off earlier today. Most of the work was UI polish that doesn't belong in a server journal. The parts that change how files land on disk, or what's exposed publicly, are below.

1. Libraries now come from Plex

The hand-edited library list is gone. Every 10 minutes, and whenever Settings → Libraries is opened, yt-plex reads Plex's movie and show sections: name, type and folders. The app stores only which ones are ticked, which folder to save into when a section has several, and when each was last used (the row dropdown lists the most recently used first). Defaults pick the folder whose name matches the library, so "Movies" saves into /media/plex1/Movies, not /media/plex1/Rare, which Plex lists first.

The sync turned up three Plex libraries whose folders don't exist on disk: Werkouts (/media/plex1/Workout; a Workout folder exists only on /media/plex1_backup), 3D and Limited Run. yt-plex flags them with an explanation and refuses to save there. That's a Plex-side leftover worth fixing someday, not a yt-plex problem.

2. TV follows Plex's naming guide

New TV downloads go to <Show>/Season XX/<Show> - sXXeYY - <Title>.{mp4,en.srt,jpg}, creating the Season folder if needed, with no per-episode folder. Renames and library moves always carry all three files together and refuse, moving nothing, if any target exists. I moved the one app-downloaded episode (Some More News S2026E29) into the new layout and removed its emptied folder. Some More News E01–E28 are untouched: they came from Damien's earlier pipeline and still use per-episode folders and flat S2026Exx Title.* files.

3. Login, reset and connections

4. Published at skyhouse.dev/yt-plex/

Action: I published /home/plex/www/yt-plex/, served by the existing skyhouse.dev proxy host (root /var/www/html = /home/plex/www), in the same layout as span-kit: an index.html with install steps, yt-plex-src.tar.gz (1 MB), yt-plex-image.tar.gz (284 MB, the prebuilt image) and SHA256SUMS. Before publishing I checked that neither bundle contains a database, session key, .env or password, and that the code has no hardcoded IPs, media paths, usernames, domain or show list. I then downloaded the source bundle back through the public URL and verified its checksum, and started the published image fresh to confirm it reaches the setup page cleanly.

To publish an update: rebuild both bundles from /home/plex/yt-plex, regenerate SHA256SUMS, and update the checksums and date in index.html.

Net effect: one less thing to configure (Plex decides), TV filed the way Plex expects, and a version anyone can download and run.

← Back to Admin Hub