- Ground-up desktop rebuild with Electron 43, React 19, and TypeScript 7
- Customizable Dashboard and dark mode for the desktop application
- Cross-platform application menu
- Host-neutral download core for both desktop app and Node/Web Server
- SQLite session recovery for downloads
- Tracker management functionality
- UPnP/NAT-PMP support
- HTTP, FTP, BitTorrent, and magnet download support
- MDXP-based integration for official CLI and browser handoff
- Local discovery and device-code pairing for remote Server instances
- QuickJS plugin sandbox with capability consent
- Bundled builtin plugins
- In-app plugin marketplace
- Persistent multi-platform Server containers for NAS and home-server deployments
- Task-inspector feedback made clearer
- Native container runtime-smoke compatibility failure from beta.14
Motrix 2.0.0-beta.15
English | 简体中文
Motrix 2.0.0-beta.15 is the next Motrix Turbo beta intended for public
distribution after every protected release gate passes. It fixes the native
container runtime-smoke compatibility failure found during beta.14 without
moving or reusing the immutable v2.0.0-beta.14 tag.
The beta.14 historical record documents the successful GitHub prerelease and R2 update-feed publication, the two successful native container builds, and the fail-closed container result.
Native container smoke compatibility recovery
- Builds
linux/amd64onubuntu-22.04andlinux/arm64onubuntu-22.04-arm. Each job verifies the GitHub-hosted Linux runner and its native architecture before Buildx starts. The container release path does not install or invoke QEMU. - Each native smoke explicitly pulls its staged digest with the required platform, then inspects the selected local image using the Docker CLI syntax supported by both GitHub runner images. It still fails closed unless the inspected image architecture exactly matches the matrix platform, and every runtime container remains platform-pinned.
- Pushes each successful platform only by its untagged, content-addressed OCI digest to Docker Hub and GHCR. A single architecture never receives the public version tag and cannot become the official release on its own.
- Anonymously pulls the exact staged digest from both registries and runs the full Server runtime smoke on its native runner. Immutable platform metadata can be uploaded only after both registry smokes succeed.
- Binds each platform record to the exact version, source commit, workflow run and attempt, native runner identity, raw OCI index hash, image manifest, attestation manifest, provenance, and SPDX SBOM.
- Allows one finalize job to proceed only after the complete amd64/arm64 build set succeeds. It rejects missing, duplicate, unexpected, cross-wired, shared, or future-attempt digests before creating either versioned index.
- Rechecks both immutable version tags immediately before finalization. A clean run creates both indexes from the verified platform digests; a rerun resumes an identical complete result or repairs one missing registry from the verified existing index. Any conflicting immutable tag fails closed.
- Requires Docker Hub and GHCR to expose the same final index digest, platform manifests, and attestation manifests. It validates max-level BuildKit provenance, the exact source revision and builder run, and a non-empty SPDX SBOM for both architectures before signing.
- Signs each final index digest with the exact protected tag-workflow identity, verifies both signatures anonymously, and then runs the full public runtime smoke on native amd64 and arm64 runners against both registries.
- Stable floating aliases are handled by the final recovery-safe job only after
every build, index, signature, provenance, SBOM, anonymous pull, and runtime
gate succeeds. Beta releases publish only their immutable version tag, so
beta.15 does not update
latest,stable, or another stable alias.
The GitHub prerelease, R2 update feed, container registries, and Snap Store remain independently gated publication channels. Their individual safety and recovery rules are strict, but this release does not claim cross-channel atomicity.
Snap beta policy
Snap is not part of the beta.15 distribution. Protected prerelease Snap runs
stop after source validation, so they do not build Snap artifacts, upload Store
revisions, or change latest/edge. Stable Snap publication retains its
complete two-architecture verification and protected Store gates.
Highlights
- A ground-up desktop rebuild with Electron 43, React 19, and TypeScript 7, including a customizable Dashboard, dark mode, a cross-platform application menu, and clearer task-inspector feedback.
- One host-neutral download core for both the desktop app and the Node/Web Server, with SQLite session recovery, tracker management, UPnP/NAT-PMP, and HTTP, FTP, BitTorrent, and magnet support.
- MDXP-based integration for the official CLI and browser handoff, including local discovery and device-code pairing for remote Server instances.
- A QuickJS plugin sandbox with capability consent, bundled builtin plugins, and an in-app plugin marketplace.
- Persistent multi-platform Server containers for NAS and home-server deployments, published only after the complete native architecture set and every public verification gate pass.
Before testing
This is prerelease software. Back up your existing Motrix application data and downloads before installing it. Migration from Motrix v1 data has not yet been validated, so do not use your only copy of v1 data with this beta.
When practical, test v2 in parallel using a separate OS account, machine, or Docker data directory. Do not rely on this beta for your only copy of important downloads.
What to test
- HTTP, FTP, BitTorrent, and magnet downloads, including pause/resume and session recovery
- Desktop integrations, browser and CLI handoff through MDXP, and sandboxed plugins
- Headless Server deployment, persistent storage, remote pairing, and native amd64 and arm64 container images
Planned downloads after release gates pass
| Distribution | Architectures | Planned output |
|---|---|---|
| macOS 12 or later | arm64 (Apple Silicon), x64 (Intel) | DMG and ZIP |
| Windows | x64 | Unsigned NSIS installer (.exe) and ZIP |
| Linux | x64, arm64 | DEB and RPM |
| Flatpak Native Host companion | linux/x64, linux/arm64 | Motrix-Native-Host-2.0.0-beta.15-linux-<arch>.tar.gz |
| Docker Hub / GHCR | linux/amd64, linux/arm64 | Immutable 2.0.0-beta.15 tag in both registries |
| Snap Store | — | Not published for this beta |
After every container gate passes, the versioned image references will be
docker.io/motrixapp/motrix-server:2.0.0-beta.15 and
ghcr.io/agalwood/motrix-server:2.0.0-beta.15. See the
Docker Server deployment guide
for storage, networking, and upgrade guidance.
Known distribution limits
- AppImage is not published for this beta.
- Flatpak is validated separately and is not published by the release tag; the GitHub prerelease includes its Native Host companion archives.
- Windows
arm64and all 32-bit packages are not available. - Windows packages are unsigned and may trigger a Windows SmartScreen warning. Download them only from the official GitHub prerelease after it is published.
- Beta container tags are immutable and do not update
latest,stable, or other stable floating tags. - Snap is not published for this beta. Prerelease Snap runs stop after source validation without building or publishing Snap artifacts.
Feedback
Please report reproducible problems through GitHub Issues. Include your operating system, architecture, package type, and the steps needed to reproduce the issue.
What's Changed
- fix(release): support runner Docker image inspection by @agalwood in https://github.com/agalwood/Motrix/pull/1865
Full Changelog: https://github.com/agalwood/Motrix/compare/v2.0.0-beta.14...v2.0.0-beta.15