Skip to content

Jellyfin: Update to 12.0 with dotnet 10.0 and ffmpeg8 - #7443

Open
mreid-tt wants to merge 2 commits into
SynoCommunity:masterfrom
mreid-tt:jellyfin-12.0
Open

Jellyfin: Update to 12.0 with dotnet 10.0 and ffmpeg8#7443
mreid-tt wants to merge 2 commits into
SynoCommunity:masterfrom
mreid-tt:jellyfin-12.0

Conversation

@mreid-tt

@mreid-tt mreid-tt commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

Description

Update Jellyfin Server and Web from 10.11.11 to 12.0 (released 2026-09-08),
plus a fix to the uninstall backup/restore flow for the new upgrade paths.

Upstream supports direct upgrades from 10.10.7 and 10.11.x to 12.0 with no
intermediate steps. Note this release includes database changes that prevent
rolling back without a full restore, and third-party plugins should be removed
before migrating (see 12.0 release notes).

Server (cross/jellyfin)

  • PKG_VERS 10.11.11 → 12.0, digests regenerated
  • DOTNET_VERSION 9.0 → 10.0 (12.0 targets net10.0, global.json pins SDK 10.0.0)
  • BUILD_DEPENDSnative/dotnet-sdk-10.0 (new, see below)

Web (cross/jellyfin-web)

  • PKG_VERS 10.11.11 → 12.0, digests regenerated
  • BUILD_DEPENDS native/nodejs_22native/nodejs (24.20.0), as 12.0
    requires engines: node >= 24.0.0

.NET SDK (native/)

  • Add native/dotnet-sdk-10.0 (SDK 10.0.400 / runtime 10.0.11, checksums
    verified against Microsoft's published SHA512)
  • Remove native/dotnet-sdk-9.0 (no remaining users repo-wide; only
    cross/jellyfin referenced it)
  • No mk/ changes needed: spksrc.cross/env-dotnet.mk derives framework
    (net10.0) and SDK path from DOTNET_VERSION

Package (spk/jellyfin)

  • SPK_VERS 12.0, SPK_REV 39 → 40, CHANGELOG updated
    (dotnet 10.0.400, nodejs 24.20.0)
  • SPK_DEPENDS ffmpeg7ffmpeg8 (matches jellyfin-ffmpeg 8.1.2),
    including the hardcoded --ffmpeg path in src/service-setup.sh
  • MIN_GLIBC_VERSION = 2.27 added next to REQUIRED_MIN_DSM, turning the
    existing comment into an enforced floor (.NET 10 runtime requirement)
  • validate_preupgrade(): allow 10.10.7 / 10.11.x → 12.x with forced config
    backup (irreversible DB migration), allow 12.x → 12.x without backup,
    reject anything older
  • Wizard install_uifile: fixed missing trailing period on the last
    "Important information" sentence

Uninstall backup/restore fix

Backups are named after the pre-upgrade version, but both the uninstall
wizard (check_backup_file()) and validate_preuninst() only matched
jellyfin_backup_v10.10.7_* — so a 10.11.x → 12.0 upgrade (the most common
path) left a backup that was never offered for restore and never matched
at uninstall, silently losing the rollback path. Both now match
jellyfin_backup_v* (any version); when several accumulate across
upgrades, the newest is selected (lexical order is chronological here)
with the existing multi-match warning.

Fixes #

Checklist

  • Build rule all-supported completed successfully
  • New installation of package completed successfully
  • Package upgrade completed successfully (Manually install the package again)
  • Package functionality was tested
  • Any needed documentation is updated/created

Type of change

  • Package update

@mreid-tt mreid-tt self-assigned this Sep 8, 2026
@mreid-tt mreid-tt added dotnet Related to dotnet (core) dsm 7.2 labels Sep 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dotnet Related to dotnet (core) dsm 7.2

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant