Services

media / running

Riven

Symlink-based media manager for the remote-media → Plex pipeline. Now optional in the playback path — kept running for the request-handling features.

What it is

Riven is a media-automation tool built around a remote media provider. It watches Plex's request list (and other sources), sources matching files through the upstream catalogue, and traditionally builds tidy symlink trees that Plex points its libraries at.

Why I run it

The clean version of the remote-media → Plex pipeline is "Riven handles everything." Requests come in, Riven finds the right release, and Plex sees curated library trees with consistent naming. That's the design, and it works.

In practice, after a host migration I repointed Plex directly at the underlying zurg mount instead of Riven's symlink trees, and the playback experience got cleaner (fewer moving parts, no Riven-side metadata staleness). So Riven now runs, but isn't in the playback critical path — Plex sees the zurg mount directly. I keep Riven around for request handling and as an option if I want symlink-curated libraries again later.

How I use it

Mostly hands-off. The frontend and backend run as separate services. The mount Riven consumes is the same host-managed media mount Plex uses, provided by the host's rclone systemd service.

Setup notes

Runbook