linearr

linearr

Docker 应用程序 from gillberg1111's Repository

概述

Linearr — the missing show sequencer for Plex, Jellyfin, and Emby. Automated round-robin rotation and chronological crossover alignment for your episodes (and their movies). Configure Plex, Jellyfin, Emby, or any combination. With multiple backends configured, new playlists get per-backend checkboxes; targeted servers are mirrored independently using each server's own library state. Two sort modes per playlist: - Rotation: round-robin across shows (Show A S01E01, Show B S01E01, Show A S01E02, ...). - Air Date: chronological across every show. Multi-part crossovers stay aligned via "Part 1" / "Pt. 2" / "(N)" title parsing — perfect for "evening TV" mixes of the three Law and Order series, the Chicago shows, etc. Pick season ranges per show, opt in to specials, optionally include associated movies (auto-detected from your movie libraries by title match — e.g. "Psych: The Movie" attaches to Psych). Optional "Unwatched only" filter excludes episodes you've already watched. Live AJAX preview means every change updates the episode list immediately — no page reloads. Flip any playlist between sort modes or toggle the unwatched filter any time; already-watched episodes stay put, the future portion rebuilds. Edits show up as native playlists in every client (Plex AND Jellyfin). Background scheduler prunes watched episodes (keeping the last few around if you fell asleep). Safety: this app NEVER deletes media files or library items from Plex or Jellyfin — only playlists.

运行时参数

网络用户界面
http://[IP]:[PORT:5005]/
网络
bridge
外壳
sh
特权
false

模板配置

WebUI PortPorttcp

Port for the rotator web UI.

目标
5005
默认值
5005
价值
5005
AppdataPathrw

Persistent state (SQLite DB + stable device id).

目标
/data
默认值
/mnt/user/appdata/linearr
价值
/mnt/user/appdata/linearr
PLEX_URLVariable

Plex server URL (use the LAN IP, not plex.tv). Leave blank to disable Plex. Example: http://192.168.1.100:32400

PLEX_TOKENVariable

X-Plex-Token. See https://support.plex.tv/articles/204059436-finding-an-authentication-token-x-plex-token/ Leave blank to disable Plex.

JELLYFIN_URLVariable

Jellyfin server URL (LAN IP). Example: http://192.168.1.100:8096 Leave blank to disable Jellyfin.

JELLYFIN_USERNAMEVariable

Jellyfin username. (Linearr authenticates as a user because the API-key path is broken on the playlist endpoints we need.) Leave blank to disable Jellyfin.

JELLYFIN_PASSWORDVariable

Jellyfin password. Held in memory only; the resulting access token is never written to disk. Leave blank to disable Jellyfin.

EMBY_URLVariable

Emby server URL (LAN IP). Example: http://192.168.1.100:8096 Leave blank to disable Emby.

EMBY_API_KEYVariable

Emby API key. Create one in Emby Dashboard → Advanced → API Keys. Leave blank to disable Emby.

EMBY_USERNAMEVariable

Emby username (optional). Determines which user owns managed playlists. Leave blank to disable Emby.

WATCHED_KEEPVariable

How many recently-watched episodes to leave in each playlist as a fall-asleep buffer. Older watched episodes are pruned.

默认值
2
价值
2
PRUNE_INTERVAL_MINUTESVariable

How often the background prune + auto-sync sweep runs, in minutes.

默认值
10
价值
10
FRANCHISE_REFRESH_DAYSVariable

How often franchise definitions are refreshed from upstream sources, in days (default 7 = weekly).

默认值
7
价值
7
AUTO_SYNCVariable

When true (default), the scheduler also splices newly-aired episodes and new seasons into managed playlists every PRUNE_INTERVAL_MINUTES. Set false to lock playlists until you edit them manually.

默认值
true
价值
true
TV_LIBRARIESVariable

Comma-separated TV library names to source shows from (e.g. 'TV Shows,Dropout TV'). Leave blank for all TV libraries on every configured backend.

FLASK_SECRETVariable

Optional. Random string for Flask session cookies. Generate with: openssl rand -hex 32

详细信息

存储库
ghcr.io/gillberg1111/linearr:latest
最后更新2026-05-31
初见2026-05-24

在Unraid 上运行 Linearr 。

Linearr 已被列入Unraid OS 的社区应用程序。探索Unraid ,构建灵活的家庭服务器、NAS 或家庭实验室。