Skip to content

Commit 7414790

Browse files
chore: Add blog post for Themerr-plex release v2026.1004.152244 (#482)
1 parent fb81b2b commit 7414790

1 file changed

Lines changed: 106 additions & 0 deletions

File tree

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
---
2+
layout: release
3+
title: Themerr-plex v2026.1004.152244 Released
4+
release-tag: v2026.1004.152244
5+
gh-repo: LizardByte/Themerr-plex
6+
gh-badge: [follow, fork, star]
7+
tags: [release, themerr-plex]
8+
thumbnail-img: https://app.lizardbyte.dev/dashboard/github/openGraphImages/Themerr-plex_624x312.png
9+
comments: true
10+
authors:
11+
- github: LizardByte-bot
12+
---
13+
14+
## ‼️ Attention: Themerr-plex is back!
15+
16+
After being archived, Themerr-plex has been revived with a major rewrite since the last stable release in August 2024.
17+
18+
**Themerr-plex now runs as a standalone application alongside Plex Media Server. Upgrading from `v2024.813.13709` or earlier requires migration to the new application.** Installation, configuration, and Plex authentication have changed. ([#497](https://github.com/LizardByte/Themerr-plex/pull/497))
19+
20+
## ⚠️ Breaking changes and migration notes
21+
22+
- **Remove the old plug-in before starting the standalone application.** Stop Plex Media Server, remove the Themerr-plex bundle from its `Plug-Ins` directory, and restart Plex. Install the standalone release archive or Docker image, and keep Themerr-plex running to process library updates.
23+
- **Complete the new account setup.** On first launch, use the one-time setup link shown in the console to create your Themerr administrator account. The default web UI is available at `https://localhost:9494`; its locally generated certificate may trigger a browser warning.
24+
- **Reconnect Plex and configure your settings.** In **Servers**, select **Sign in with Plex**, then connect the servers you want to manage. Your Themerr administrator account protects the application; your Plex account authorizes server access. Review your processing, overwrite, and ignored-library settings in the new application.
25+
- **Use the modern Plex metadata agents.** Theme processing supports **Plex Movie** and **Plex Series** libraries. Legacy metadata agents are no longer supported.
26+
- **Check locked fields when migrating.** Older Themerr-plex versions may have left themes or collection metadata locked. Enable **Ignore locked fields** if you want Themerr to update those fields.
27+
- **Plex data-directory access is needed for cleanup.** Theme uploads use the Plex API. Removing older uploaded themes, posters, or artwork also requires access to the server’s Plex data directory. If that directory is unavailable, disable the three **Remove unused** settings.
28+
- **Docker requires persistent configuration and a token encryption key.** Persist `/config`, mount a private key file outside that volume, and set `THEMERR_PLEX_TOKEN_KEY_FILE`. Keep the same key when recreating the container.
29+
- **YouTube extraction has changed.** Themerr now uses `yt-dlp`, with Deno bundled in release archives. If YouTube requires sign-in, the **YouTube Cookies** setting accepts a JSON cookie export.
30+
31+
See the [installation guide](https://docs.lizardbyte.dev/projects/themerr-plex/latest/about/installation.html), [setup and usage guide](https://docs.lizardbyte.dev/projects/themerr-plex/latest/about/usage.html), and [Docker instructions](https://docs.lizardbyte.dev/projects/themerr-plex/latest/about/docker.html).
32+
33+
## ✨ Highlights
34+
35+
- **A dedicated management interface.** Manage multiple Plex servers, inspect theme coverage, search and filter your libraries, and monitor scans and upload failures.
36+
- **Persistent theme playback.** Listen while navigating the application, with seeking, volume, shuffle, repeat, and supported system media controls. ([#594](https://github.com/LizardByte/Themerr-plex/pull/594))
37+
- **Better troubleshooting and customization.** Browse searchable logs with session history, choose automatic/light/dark appearance, and exclude libraries per server. ([#592](https://github.com/LizardByte/Themerr-plex/pull/592), [#593](https://github.com/LizardByte/Themerr-plex/pull/593), [#595](https://github.com/LizardByte/Themerr-plex/pull/595))
38+
- **Desktop notifications.** Receive configurable alerts for new releases and increased theme coverage. ([#596](https://github.com/LizardByte/Themerr-plex/pull/596))
39+
- **Broader installation choices.** Native x86-64 and ARM64 archives are available for Windows, Linux, and macOS, alongside Docker images.
40+
41+
## What's Changed
42+
* ci(l10n): fix pr title for babel updates by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#509](https://github.com/LizardByte/Themerr-plex/pull/509)
43+
* build(deps): bump LizardByte/create-release-action from 2024.614.221009 to 2024.919.143026 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#505](https://github.com/LizardByte/Themerr-plex/pull/505)
44+
* build(deps): bump LizardByte/setup-release-action from 2024.801.192524 to 2024.919.143601 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#506](https://github.com/LizardByte/Themerr-plex/pull/506)
45+
* build(deps): bump @fontsource/open-sans from 5.0.28 to 5.1.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#504](https://github.com/LizardByte/Themerr-plex/pull/504)
46+
* build(deps): bump peter-evans/create-pull-request from 6 to 7 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#502](https://github.com/LizardByte/Themerr-plex/pull/502)
47+
* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#501](https://github.com/LizardByte/Themerr-plex/pull/501)
48+
* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#535](https://github.com/LizardByte/Themerr-plex/pull/535)
49+
* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#537](https://github.com/LizardByte/Themerr-plex/pull/537)
50+
* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#538](https://github.com/LizardByte/Themerr-plex/pull/538)
51+
* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#548](https://github.com/LizardByte/Themerr-plex/pull/548)
52+
* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#552](https://github.com/LizardByte/Themerr-plex/pull/552)
53+
* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#564](https://github.com/LizardByte/Themerr-plex/pull/564)
54+
* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#565](https://github.com/LizardByte/Themerr-plex/pull/565)
55+
* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#566](https://github.com/LizardByte/Themerr-plex/pull/566)
56+
* refactor!: move project to standalone version by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#497](https://github.com/LizardByte/Themerr-plex/pull/497)
57+
* chore(l10n): new babel updates by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#567](https://github.com/LizardByte/Themerr-plex/pull/567)
58+
* ci: correct release permissions and Babel output by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#569](https://github.com/LizardByte/Themerr-plex/pull/569)
59+
* chore(deps): update dependency cryptography to v50.0.2 by [@renovate[bot]](https://github.com/apps/renovate) in [#570](https://github.com/LizardByte/Themerr-plex/pull/570)
60+
* chore(deps): update dependency sqlalchemy to v2.1.2 by [@renovate[bot]](https://github.com/apps/renovate) in [#571](https://github.com/LizardByte/Themerr-plex/pull/571)
61+
* chore(deps): pin ghcr.io/astral-sh/uv docker tag to v0.12 by [@renovate[bot]](https://github.com/apps/renovate) in [#572](https://github.com/LizardByte/Themerr-plex/pull/572)
62+
* chore(deps): update lizardbyte/actions action to v2026.928.123224 by [@renovate[bot]](https://github.com/apps/renovate) in [#573](https://github.com/LizardByte/Themerr-plex/pull/573)
63+
* chore(deps): update actions/download-artifact action to v8 by [@renovate[bot]](https://github.com/apps/renovate) in [#574](https://github.com/LizardByte/Themerr-plex/pull/574)
64+
* chore(deps): update dependency lucide to v1.50.0 by [@renovate[bot]](https://github.com/apps/renovate) in [#575](https://github.com/LizardByte/Themerr-plex/pull/575)
65+
* ci: add native ARM64 builds and architecture-specific artifacts by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#576](https://github.com/LizardByte/Themerr-plex/pull/576)
66+
* ci: sign macOS PyInstaller release builds by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#577](https://github.com/LizardByte/Themerr-plex/pull/577)
67+
* refactor: sonar fixes by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#578](https://github.com/LizardByte/Themerr-plex/pull/578)
68+
* chore(l10n): new babel updates by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#579](https://github.com/LizardByte/Themerr-plex/pull/579)
69+
* chore(deps): lock file maintenance by [@renovate[bot]](https://github.com/apps/renovate) in [#581](https://github.com/LizardByte/Themerr-plex/pull/581)
70+
* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#583](https://github.com/LizardByte/Themerr-plex/pull/583)
71+
* chore(l10n): new babel updates by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#584](https://github.com/LizardByte/Themerr-plex/pull/584)
72+
* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#585](https://github.com/LizardByte/Themerr-plex/pull/585)
73+
* chore(deps): update dependency av to v19.0.1 by [@renovate[bot]](https://github.com/apps/renovate) in [#588](https://github.com/LizardByte/Themerr-plex/pull/588)
74+
* chore(deps): update dependency sqlalchemy to v2.1.3 by [@renovate[bot]](https://github.com/apps/renovate) in [#580](https://github.com/LizardByte/Themerr-plex/pull/580)
75+
* feat(web): migrate to FastAPI and add interactive API docs by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#589](https://github.com/LizardByte/Themerr-plex/pull/589)
76+
* feat(web): add log viewer with full session history by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#592](https://github.com/LizardByte/Themerr-plex/pull/592)
77+
* feat(web): add automatic light and dark theme switcher by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#593](https://github.com/LizardByte/Themerr-plex/pull/593)
78+
* feat: add persistent theme player widget by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#594](https://github.com/LizardByte/Themerr-plex/pull/594)
79+
* feat: add per-server ignored library multi-select by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#595](https://github.com/LizardByte/Themerr-plex/pull/595)
80+
* feat: add desktop release and theme coverage notifications by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#596](https://github.com/LizardByte/Themerr-plex/pull/596)
81+
* chore(l10n): extract locale template before commits by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#597](https://github.com/LizardByte/Themerr-plex/pull/597)
82+
* ci(windows): add code signing by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#598](https://github.com/LizardByte/Themerr-plex/pull/598)
83+
* ci(localize): add workflow permissions by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#599](https://github.com/LizardByte/Themerr-plex/pull/599)
84+
* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#591](https://github.com/LizardByte/Themerr-plex/pull/591)
85+
86+
## New Contributors
87+
* [@renovate[bot]](https://github.com/apps/renovate) made their first contribution in [#570](https://github.com/LizardByte/Themerr-plex/pull/570)
88+
89+
**Full Changelog**: https://github.com/LizardByte/Themerr-plex/compare/v2024.813.13709...v2026.1004.152244
90+
91+
---
92+
## Contributors
93+
<a href="https://github.com/LizardByte-bot" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, LizardByte-bot" ><img src="https://github.com/LizardByte-bot.png?size=40" width="40" height="40" alt="LizardByte-bot" title="LizardByte-bot: 15 merges" ></a><a href="https://github.com/ReenigneArcher" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, ReenigneArcher" ><img src="https://github.com/ReenigneArcher.png?size=40" width="40" height="40" alt="ReenigneArcher" title="ReenigneArcher: 15 merges" ></a><a href="https://github.com/apps/renovate" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, renovate[bot]" ><img src="https://avatars.githubusercontent.com/in/2740?size=40" width="40" height="40" alt="renovate[bot]" title="renovate[bot]: 9 merges" ></a><a href="https://github.com/apps/dependabot" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, dependabot[bot]" ><img src="https://avatars.githubusercontent.com/in/29110?size=40" width="40" height="40" alt="dependabot[bot]" title="dependabot[bot]: 4 merges" ></a>
94+
95+
96+
---
97+
📦 **Assets:**
98+
99+
| ⬇️ Download | #️⃣ Download Count | 🛡️ VirusTotal |
100+
|-------------|-------------------|---------------|
101+
| [Themerr-plex_Linux_aarch64.zip](https://github.com/LizardByte/Themerr-plex/releases/download/v2026.1004.152244/Themerr-plex_Linux_aarch64.zip) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Themerr-plex/v2026.1004.152244/Themerr-plex_Linux_aarch64.zip?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:8f2a763d2682473387039760a724ac6c6b23b5a509ddc44bd207875d160dd51f?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/ZmMyZmYwNDIwOTIzNjBlYjY1MDAxNzQ3NWEzNDczZTk6MTc5MTEyODA3Mg==) |
102+
| [Themerr-plex_Linux_x86_64.zip](https://github.com/LizardByte/Themerr-plex/releases/download/v2026.1004.152244/Themerr-plex_Linux_x86_64.zip) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Themerr-plex/v2026.1004.152244/Themerr-plex_Linux_x86_64.zip?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:9a6cf52ead12c6e366911d6a4f06a69c19f6492f0b50aad6812f4642692709c1?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/OTRiYzVjMjhiYWQzMWRjMThlMGVkZDFjNjcwMWU3YmI6MTc5MTEyODA3OA==) |
103+
| [Themerr-plex_Windows_AMD64.zip](https://github.com/LizardByte/Themerr-plex/releases/download/v2026.1004.152244/Themerr-plex_Windows_AMD64.zip) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Themerr-plex/v2026.1004.152244/Themerr-plex_Windows_AMD64.zip?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:9e5964f4145ed2b967281e0e4d87543912c6b9b261bd4604535ce39f4d0ff406?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/ZDA3NmIyYzM1YmJlY2YyMzlkZmU2YWRlMzRhYWJiMDA6MTc5MTEyODA4Mg==) |
104+
| [Themerr-plex_Windows_ARM64.zip](https://github.com/LizardByte/Themerr-plex/releases/download/v2026.1004.152244/Themerr-plex_Windows_ARM64.zip) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Themerr-plex/v2026.1004.152244/Themerr-plex_Windows_ARM64.zip?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:12777b1c35a567271392d1249458ada05a9b42b83c04a29a4d3a7f20dc9825f0?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/NDc1NjgwZDk5N2U2MmU4NTZjZmI0NTljNDcyMmU1N2U6MTc5MTEyODA4NA==) |
105+
| [Themerr-plex_macOS_arm64.zip](https://github.com/LizardByte/Themerr-plex/releases/download/v2026.1004.152244/Themerr-plex_macOS_arm64.zip) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Themerr-plex/v2026.1004.152244/Themerr-plex_macOS_arm64.zip?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:15f22fa3a21c97175e2a26be899616b6efd01ad8a71672b2d0dce0ff405b1ea3?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/ZTQxYTRjMzNkNzM5NzgwYjdmYmQwZTZmZmU5NWM4NDY6MTc5MTEyODEzMg==) |
106+
| [Themerr-plex_macOS_x86_64.zip](https://github.com/LizardByte/Themerr-plex/releases/download/v2026.1004.152244/Themerr-plex_macOS_x86_64.zip) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Themerr-plex/v2026.1004.152244/Themerr-plex_macOS_x86_64.zip?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:386318565659f7b5fdc400fb7962a542bb6f207b6d656c3b358b0d264065cae6?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/M2RlMDMxOGFlODgwOTUxMTkwMDQ4YTdmM2YwZTI2NDg6MTc5MTEyODEzNw==) |

0 commit comments

Comments
 (0)