v0.6.0
Highlights
- Movies and TV work out of the box — default TMDB/OMDb keys ship with the
release, no sign-up before the first search. - Accounts for the headless/web build: register and sign in from the web UI,
with a session-aware bearer gate replacing the old pairing screen. - Web UI parity, tier 2: Comics, Novels, Drama, VNDB, Audiobookshelf, OPDS,
Plex, Music, Radio, Live TV, YouTube, the AI copilot, and the Logs tab. - Headless deployment: Caddy TLS and Tailscale access profiles.
- The browser extension is now Opal Connect, with cross-browser builds.
Changes
Features
- keys — ship default TMDB/OMDb keys; Movies/TV work out of the box (v0.6.0) (
ba172a9) - web — parity tier 2 — Comics, Novels, Drama, VNDB, Audiobookshelf, OPDS, Plex, Logs (
21031fe) - remote — make the placeholder routes real (recommendations, party, cast, comic pages) (
51937d8) - web — Music + Radio tabs and routes (parity P2) (
49557c6) - web — AI copilot tab + /api/ai route (parity P2) (
5f1b05c) - web — add-download box + comic/novel source catalog (parity P1) (
6bb2c90) - web — Sign out button in Setup (
5c2cdb6) - web — Live TV tab + /api/livetv catalog route (parity P2) (
c1f3a51) - headless-deploy — Caddy TLS + Tailscale access profiles (A5) (
35ff27e) - headless-auth — web UI account login/register, drop pairing screen (A4) (
ec16012) - headless-auth — auth routes + session-aware Bearer gate (A3) (
7f1308f) - headless-auth — DB user + session store (A2) (
5d63cdd) - headless-auth — bcrypt password core (A1) (
71d91ce) - web — scrollable bottom nav so parity verticals scale (
79d377d) - web — YouTube tab in the headless web UI (parity P1) (
a88b521) - extension — rebrand to Opal Connect, composite logo, browser builds (
be43934) - extension — expose Opal's full remote API (
35c8559)
Fixes
- calendars — route eztv fetches through the DPI-bypass sidecar (
e91088b) - opds — fetch through curl — std.http could not reach a live OPDS server; retire web/app; pin container UID (
61e3160) - eztv,headless — one dropped fetch no longer blanks the release rail for 15 min; headless drains deferred comic loads (
fb4006c) - aur — the publish job could not have worked even with a valid key (
1efa3bc) - ci — docker smoke no-token check — capture 401, don't -f on it (
ad01169) - reap orphaned nova2.py search subprocesses on clean shutdown (
c0b5caa) - docker — don't dockerignore the bundled data/*.json (
b7d44fd) - apply reference updates for the docs/deploy relocation (
875e16a)
Other
- headless — S1 slim build — the server binary links no dvui/SDL/X11 (
9c9b14a)
Internal (14 commits — tests, refactors, CI, docs)
- ci(docker): multi-arch — amd64 + arm64 on native runners (Phase S3) (
512e37b) - refactor: remove the pairing code — accounts are the only web auth (
3621efe) - docs(readme): tighter, more elegant — single-line feature bullets (
e1f4c10) - docs: document the browser extension + add verified side-panel screenshot (
95660ab) - ci: publish headless image to GHCR (ghcr.io/debpalash/opal) (
7daad85) - docs(readme): polish prose — cut filler and try-hard phrasing (
37702b9) - chore: relocate root docs + compose into folders (
d0bc2b5) - docs(readme): trim prose — tighter goal/under-the-hood/support/caveats (
f90b992) - refactor: move bundled data JSONs to data/ (
bdfc7be) - docs: move CONTENT_POLICY + DMCA into docs/, fix links (
e320e14) - docs: bump Live TV to ~40k, tighten headings, tidy repo root (
eab04ce) - docs(readme): cut the 11PM prose intro, tighten the pitch (
0752520) - docs(readme): v0.5.0 features + SEO/marketing pass (
9836135) - chore(release): set opal.rb sha256 to published v0.5.0 tarball (
d36885c)
Install: curl -fsSL https://raw.githubusercontent.com/debpalash/Opal/main/scripts/install.sh | sh
Verify a download against SHA256SUMS.txt below.
Full Changelog: v0.5.0...v0.6.0