Releases: JJDizz1L/NuvioLinux
Release list
Nuvio Linux 0.1.17-alpha
0316273 fix(player): 0.1.17 UI parity — drop action-button shadow, align API defaults @JJDizz1L
326cc87 fix(simkl): port anime-movie classification and poster res parity (0.1.17) @JJDizz1L
d65fe64 fix(player): keep cursor visible while sources/episodes panels are open @JJDizz1L
58668a2 feat(i18n): merge upstream translations for 0.1.17 @JJDizz1L
e247a23 feat(images): HTTP cache-control aware Coil fetcher (upstream 0.1.17) @JJDizz1L
6b11585 fix(desktop): upstream locale, device registration and version alignment (0.1.17) @JJDizz1L
d944823 fix(desktop): restore maximized window placement across restarts (upstream PR #309) @JJDizz1L
74294a5 feat(plugins): split scraper source cache from metadata + QuickJS loading (0.1.17) @JJDizz1L
9cd5a75 refactor(desktop): extract runtime assets into the XDG cache dir (0.1.17) @JJDizz1L
a7383b3 feat(player): port upstream player UI, subtitles and libass styling (0.1.17) @JJDizz1L
133f124 feat(tracking): port upstream watched/projection/watching refinements (0.1.17) @JJDizz1L
0ae1d68 feat(sync): port upstream provider credential sync (0.1.17) @JJDizz1L
0.1.16.2
Nuvio Linux 0.1.16.2
Package-only hotfix release of 0.1.16-alpha (release 3) — addresses the RPM
executable-permission bug (issue #11) and ships several playback/windowing
fixes accumulated since v0.1.16.1. All artifacts share release number 3.
Fixes & features
- #11 — RPM installs a non-executable launcher (fixed).
copyRecursively
reset file permissions to 0644, sobin/nuvio-linuxshipped as 0744
(owner-exec only) and non-root users got "missing executable permissions"
when launching from KDE/dnf. The payload now re-applies executable bits
from the app image (launcher andlibapplauncher.soship as 0755). The
.debhad the same latent bug and is fixed too. - #8 — stuck fullscreen on KDE (self-heal). Compose's placement write is
applied off-EDT viaGraphicsDevice.setFullScreenWindowand never
verified; rapid toggling or monitor switches could drop the exit
transition. Toggles are debounced (250 ms) and the real AWT state is
verified 150 ms after each transition, force-correcting the WM if it
didn't honor the request.NUVIO_FULLSCREEN_DEBUG=1logs the toggle path. - #7 — XWayland sizing (niri et al.). The Compose layout size lags the
compositor-assigned bounds by one event; the video render buffer is now
driven straight from AWTcomponentResizedandwindowState.sizeis
re-asserted synchronously.NUVIO_WINDOW_DEBUG=1also logs a 1 s tick to
capture stuck states. - Tiling window managers (niri, sway, i3, bspwm, …). AWT assumes a
reparenting WM; on tiling compositors it can render into a small box in
the corner of the window. The app now detects non-reparenting WMs before
the first AWT access and enables_JAVA_AWT_WM_NONREPARENTINGin-process
(JDK 21 reads it via native getenv). Conditional — KDE/GNOME unaffected;
NUVIO_FORCE_NONREPARENTING=1overrides; a user-set variable is respected. - #12 — screen sleeping during playback (KDE). While media plays the app
holds a logindInhibit(sleep:idle) viasystemd-inhibit, so KDE
PowerDevil no longer blanks the screen mid-video; falls back to a
cookie-basedorg.freedesktop.ScreenSaver/PowerManagementInhibit via
gdbus inside the Flatpak sandbox. Released on pause/EOF/dispose. - Cursor auto-hide. The OS cursor is hidden (blank 1×1) while the
playback controls overlay is hidden and restored on mouse movement, focus
changes and dispose. - Packaging. A single release counter (
NUVIO_PACKAGE_RELEASE, now 3)
drives the Archpkgrel, RPMReleaseand the DEB/AppImage/Flatpak
filenames so every artifact carries the same release number.
Changelog
e3b19d1f fix(display): enable AWT non-reparenting mode on tiling WMs
da5807de feat(player): keep the desktop awake during playback (issue #12)
b5946f02 feat(player): hide cursor with the playback controls overlay
73871ff2 fix(player): sync render surface size from AWT window (issue #7)
40e56388 fix(player): self-heal dropped fullscreen transitions on KDE (issue #8)
9ed610b7 build(packaging): single package release counter across all formats
572190b2 fix(packaging): restore executable bit in rpm/deb payload (issue #11)
Artifacts
nuvio-linux-0.1.16alpha-3-x86_64.pkg.tar.zst (Arch; signed, .sig attached)
nuvio-linux-0.1.16alpha-3.x86_64.rpm (Fedora/RHEL, Requires: mpv)
nuvio-linux_0.1.16-alpha-3_amd64.deb (Debian/Ubuntu, Depends: mpv)
nuvio-linux-0.1.16-alpha-3-x86_64.AppImage
nuvio-linux-0.1.16-alpha-3.flatpak
nuvio-linux-gpg-key.asc (packaging signing key)
SHA256SUMS.txt
Issue #11: install the RPM (or the Arch/deb package) and relaunch —
the launcher is executable for all users again.
0.1.16.1
c8c1971 fix(simkl): visible feedback and state sync for watchlist adds @JJDizz1L
e14cdd2 feat(trakt): wire credential sync, watch-source outbox and Simkl parity @JJDizz1L
95cc40a feat(desktop): display server detection + window resize diagnostics @JJDizz1L
1a1473c fix(desktop): track fullscreen state authoritatively @JJDizz1L
6ecf415 fix(linux): withhold DRM render node from mpv on NVIDIA @JJDizz1L
450feaa fix(discord): make presence settings local-only, drop from profile sync @JJDizz1L
ede0c10 fix(arch): sign release packages + document key trust @JJDizz1L
Nuvio Linux 0.1.16-alpha
Nuvio Linux 0.1.16-alpha
First release of the 0.1.16-alpha app version. Brings the Simkl tracking integration, Linux player refinements, sync cleanup, and upstream fixes.
Highlights
- Simkl tracking: connect your Simkl account (PKCE/PIN), sync watchlists, watched history, playback progress and scrobbles — including anime with per-season MAL/Kitsu ID tracking.
- Player: fullscreen toggle in the overlay, volume slider + mouse-wheel volume, tap-to-jump seek, smoother sliders, resume from saved position on continue-watching and source switch, skip-outro seek clamp.
- Sync: removed the broken realtime invalidation channel, retry incomplete foreground pulls, desktop navigation layout now syncs across profiles.
- Fix: nuvio-account sign-in works again (Supabase credentials are baked into all packages).
- Packages: Arch, DEB, RPM, AppImage, Flatpak — all built for baseline x86-64.
Commits
f483639 fix(packaging): reset RPM release to 1 for the 0.1.16-alpha app version @JJDizz1L
28b41af feat(tracking): port upstream Simkl provider + tracking architecture (0.1.16) @JJDizz1L
158c8de fix(player): resume from saved position on continue-watching and source switch @JJDizz1L
bb87861 fix(player): invert wheel volume, smooth sliders, tap-to-jump seek @JJDizz1L
e81cf03 feat(player): fullscreen button, volume slider, and mouse-wheel volume on Linux @JJDizz1L
90e13c1 refactor(sync): remove realtime sync, retry incomplete foreground pulls @JJDizz1L
26ee7b7 fix(search): remove recent history icons @JJDizz1L
f151158 feat(i18n): Slovak and Greek translation updates @JJDizz1L
a10f553 fix(watched): mark whole series as unwatched @JJDizz1L
f4ada8d fix(sync): sync desktop navigation layout across profiles @JJDizz1L
3d56e49 fix(player): clamp skip-outro seek below the duration boundary @JJDizz1L
533d115 Update Arch instructions. Will Clean up README for clearity and standardization @JJDizz1L
0.1.15.4
0.1.15.4 release notes
Package release of Nuvio Linux 0.1.15-alpha (app version unchanged).
Rebuilds every distribution with a baseline x86-64 JDK.
Fixed since v0.1.15.3
- App failed to launch with "CPU ISA level is lower than required" on
x86-64-v3 CPUs (AVX2, no AVX-512) — issue #3. The v0.1.15.2/.3 builds
accidentally bundled the CachyOScachyos-znver4JDK (built for
x86-64-v4 / AVX-512). All packages are now rebuilt with the baseline JDK;
the bundled JRE and launcher reportx86 ISA needed: x86-64-baselinein
every artifact. - Added
dist/check-portability.shso this class of regression fails the
build instead of shipping.
Artifacts
nuvio-linux-0.1.15alpha-3.x86_64.rpm(Fedora/RHEL)nuvio-linux_0.1.15-alpha_amd64.deb(Debian/Ubuntu)nuvio-linux-0.1.15alpha-3-x86_64.pkg.tar.zst(Arch)nuvio-linux-0.1.15-alpha-x86_64.AppImagenuvio-linux-0.1.15-alpha.flatpakSHA256SUMS.txt
0.1.15.3
0.1.15.3 release notes
Package release of Nuvio Linux 0.1.15-alpha (app version unchanged).
Rebuilds every distribution with the corrected native bridge and the Flatpak
network/codec/hardware-decode fixes.
Fixed since v0.1.15.2
- Native playback was broken in every package (JNI symbols not renamed
during thecom.nuvio.app→com.nuviolinux.apprebrand): the native
bridge now exports the correctcom.nuviolinux.appsymbols, so video plays
again everywhere (Arch, RPM, DEB, AppImage, Flatpak). - Flatpak could not play network sources (no network protocols / TLS in
the sandbox's ffmpeg, and mpv was silently linking the SDK's limited
ffmpeg instead of our build): the sandbox now ships its own shared ffmpeg
with network + TLS + a comprehensive codec list (DTS/TrueHD/PCM/MP3/Vorbis/
WMA/FLAC/Opus/E-AC-3 + h264/hevc/vp9/av1 + vaapi hwaccels). - Flatpak VA-API hardware decoding for AMD (zero-copy
vaapi[nv12]),
with Intel (iHD via the VAAPI.Intel extension) and NVIDIA (native nvdec via
CUDA) support built in — validated on AMD, pending real-hardware checks. - mpv internal log messages are now forwarded to the app logs so stream/open
failures are visible instead of silently spinning.
Artifacts
nuvio-linux-0.1.15alpha-2.x86_64.rpm(Fedora/RHEL)nuvio-linux_0.1.15-alpha_amd64.deb(Debian/Ubuntu)nuvio-linux-0.1.15alpha-2-x86_64.pkg.tar.zst(Arch)nuvio-linux-0.1.15-alpha-x86_64.AppImagenuvio-linux-0.1.15-alpha.flatpakSHA256SUMS.txt
All packages require system mpv at runtime except the Flatpak, which bundles
libmpv + ffmpeg built from source.
0.1.15.2
0.1.15.2 release notes
Package release of Nuvio Linux 0.1.15-alpha (app version unchanged). All
distribution formats were rebuilt so every artifact shares the same version
(Arch 0.1.15alpha-1, RPM 0.1.15alpha-1, DEB 0.1.15-alpha, AppImage and
Flatpak 0.1.15-alpha) and ship full desktop integration.
Since v0.1.15.1
- cb8c48f feat(rebrand): Nuvio Linux — full disassociation from upstream + XDG desktop integration @JJDizz1L
- f3deee1 feat(packaging): add Fedora RPM, AppImage, and Flatpak distributions @JJDizz1L
- 9e00b22 refactor(settings): purge dead Android/iOS/Windows settings and UI @JJDizz1L
- 137a0fe refactor(player): Linux-only playback pipeline, drop AWT/Swing path @JJDizz1L
Also includes the Linux-only de-platforming groundwork (removing Android/iOS/
macOS/Windows source and packaging, Linux-only CI) and package version
normalization.
Artifacts
nuvio-linux-0.1.15alpha-1.x86_64.rpm(Fedora/RHEL)nuvio-linux_0.1.15-alpha_amd64.deb(Debian/Ubuntu)nuvio-linux-0.1.15alpha-1-x86_64.pkg.tar.zst(Arch)nuvio-linux-0.1.15-alpha-x86_64.AppImagenuvio-linux-0.1.15-alpha.flatpakSHA256SUMS.txt
All packages require system mpv at runtime except the Flatpak, which bundles
libmpv built from source.
NuvioLinux 0.1.15.1
Generic x86-64 (baseline) build.
The previous release bundled the local CachyOS JDK, which is compiled for x86-64-v3/v4 (AVX2/AVX-512) and would not run on older CPUs. This release was built with a baseline x86-64 JDK (Eclipse Temurin 21.0.12) — verified zero AVX-512/AVX2 instructions in the bundled JVM and native libs.
Package: nuvio-linux-0.1.0-2-x86_64.pkg.tar.zst
NuvioLinux 0.1.15-alpha
NuvioLinux — first hard-fork release
This is the first release of the NuvioLinux hard fork, diverged from
NuvioMedia/NuvioDesktop (feat/hwaccel-libmpv-linux). It focuses exclusively
on Linux development; macOS/Windows code paths are slated for removal.
What's in this release
Native Linux playback via MPV (libmpv)
Replaces the old embedded player with a C++/JNI bridge that embeds mpv through
its render API, drawing video directly into the Compose scene so all overlay UI
works on X11 and Wayland. The app runs under XWayland; the embedded player is
display-agnostic (offscreen EGL) and works on both backends.
- Dedicated offscreen EGL context + FBO +
glReadPixels, with a software-renderer fallback - Per-player render thread owns the GL context; all other mpv access is confined to the event thread (observe-driven caches + command queue)
- Fixes mpv 0.41 ABI mismatches (reply_userdata, shifted
MPV_FORMAT_*enum, event IDs) - Frame pump reuses a fixed pool of skia bitmaps instead of allocating per frame
Hardware acceleration
Zero-copy decode via VA-API (Mesa/AMD/Intel) and NVDEC (NVIDIA), chosen
automatically by the app's decoder setting, with a software fallback. Verified:
hwdec-current=vaapi, decoded surfaces land in VRAM.
HDR support
The embedded player loads your mpv.conf wholesale, so HDR/color configuration —
tone-mapping, target-peak, inverse-tone-mapping, profiles — applies as-is.
Configurable streaming cache
New Streaming Cache Size setting (64 MB–2 GB) plus a Cache to Disk
toggle under Playback settings, wired through the JNI into
demuxer-max-bytes/demuxer-max-back-bytes. Android reads the same setting;
the cache stays bounded by demuxer-max-bytes.
Discord Rich Presence
Show what you're watching or browsing on your Discord profile. Configurable under
Settings → Integrations → Discord Rich Presence, with reconnect handling so a
dead IPC socket (Discord restart / another client) self-heals automatically.
Arch Linux distribution
First-class Arch packaging: dist/arch/PKGBUILD builds a self-contained
nuvio-linux package (bundled JRE, no system Java required) with a launcher
(/usr/bin/nuvio-linux), a desktop entry, and nuvio:///stremio:// URI handlers.
git clone https://github.com/JJDizz1L/NuvioLinux.git
cd NuvioLinux/dist/arch
makepkg -siCommits since the fork point (upstream/Dev @ fe85aaa4)
2629b468feat(desktop): add Linux native mpv playback via JNI bridge153c6ddfchore(desktop): add debug logging for Linux native playback flowc6cd8375fix(desktop): set gpu-context=x11 instead of auto for wid embeddingbeacbe30feat(desktop): add Arch Linux PKGBUILD for local packaging9bc1e943fix(desktop): empty sha256sums for empty source in PKGBUILDcca53ab6fix(desktop): remove paint-wait guard blocking Linux embed flow1e4523c3feat(desktop): replace X11 wid embedding with libmpv GL render API on Linux8cc8114cfeat(player): add configurable streaming cache and fix frame pump churnf44def43feat(desktop): add Discord Rich Presence with IPC reconnect handlingaf4c8799fix(dist/arch): rename package to nuvio-linux and add missing runtime deps2c8b0b76fix(dist/arch): point desktop entry at /opt/nuvio-linuxd1ed986cdocs: rewrite README for the NuvioLinux hard fork
⚠️ Alpha
Alpha-quality, intended for testers. Expect breaking changes with every update.