‼️ Attention
This release contains a high-severity security update for Linux hosts. For more information, see:
Linux users should update as soon as possible!
⚠️ Breaking changes and migration notes
- Windows hosts using Virtual HID Driver must update to version
2026.914.1218.10or newer. Earlier driver versions are not supported by this Sunshine release.
✨ Highlights
- Clearer Windows virtual-input choices. A new
gamepad_driversetting lets users choose all available drivers, only Virtual HID Driver, or only ViGEmBus. Selecting ViGEmBus also suppresses Virtual HID Driver notifications. (#5653) - More reliable Linux capture and encoding. This release fixes multi-plane DMA-BUF handling for wlroots capture, corrects variable-rate behavior across KWin versions, and allows Portal capture with VA-API to use high-priority EGL contexts. (#5699, #5705, #5709)
- Improved encoder compatibility. Updated to FFmpeg 9. Fixes include accurate AV1 and HEVC capability detection, FFmpeg 9 Vulkan queue support, NVENC support in Linux builds without CUDA, and ARM64 NVENC DLL loading on NVIDIA RTX Spark. (#5554, #5675, #5698, #5682)
- Correct network-interface binding. Sunshine now consistently respects the configured
bind_address, including IPv4 addresses in dual-stack mode, and Web UI links use the configured address correctly. (#5700) - Easier XDG Portal recovery. Linux and FreeBSD users can clear a stale Portal restore token directly from the Troubleshooting page and select their display again. (#5701)
- Broader Linux availability. Release coverage now includes Alpine Linux 3.24 packages, openSUSE Leap 16.0 and Tumbleweed builds, and Ubuntu 26.10 packages.
For a comprehensive list of changes, see below.
What’s Changed
- chore(deps): update dependency @lucide/vue to v1.42.0 by @renovate[bot] in #5636
- chore(deps): lock file maintenance by @renovate[bot] in #5634
- chore(deps): Update build-deps to v2026.905.170812 by @LizardByte-bot in #5637
- build(Linux): enable openSUSE Leap 16.0 and Tumbleweed by @ReenigneArcher in #5633
- chore(flatpak): update org.kde.Platform runtime to 6.11 by @ReenigneArcher in #5639
- feat(config): add gamepad_driver option by @ReenigneArcher in #5653
- chore(l10n): update translations by @LizardByte-bot in #5632
- chore(deps): update dependency marked to v18.0.12 by @renovate[bot] in #5648
- build(deps): bump third-party/moonlight-common-c from
874ac95to62e0663by @dependabot[bot] in #5657 - chore(deps): update lizardbyte/actions action to v2026.909.30231 by @renovate[bot] in #5664
- chore(deps): update ubuntu docker tag to v26 by @renovate[bot] in #5666
- chore(deps): update vmactions/freebsd-vm action to v1.5.6 by @renovate[bot] in #5665
- chore(deps): update dependency @lucide/vue to v1.43.0 by @renovate[bot] in #5655
- ci(homebrew): run tests in separate step by @ReenigneArcher in #5669
- fix(deps): fix legacy nvenc presets and bump third-party/build-deps by @ReenigneArcher in #5668
- build(Linux): add Alpine packages by @ReenigneArcher in #4987
- fix(linux/vulkan): use vkGetDeviceQueue2 with FFmpeg 9.0 queue flags by @solidv in #5675
- build(Linux): harden Qt6 dependency detection by @ReenigneArcher in #5679
- fix(av1,hevc): stop av1 probes from clobbering hevc results by @bitness in #5554
- fix(api): return the final result of pairing by @ReenigneArcher in #5680
- fix(nvapi,nvenc): Load ARM64 DLLs on RTX Spark by @cgutman in #5682
- ci(homebrew): skip more_space action for release job by @ReenigneArcher in #5683
- chore(deps): update dependency @lucide/vue to v1.44.0 by @renovate[bot] in #5674
- fix(web-ui): localize config categories by @ReenigneArcher in #5688
- ci(homebrew): drop sonoma by @ReenigneArcher in #5689
- build(deps): bump third-party/plasma-wayland-protocols from
4c015e9to382dfabby @dependabot[bot] in #5687 - build(deps): bump third-party/doxyconfig from
b87f7e4to212e309by @dependabot[bot] in #5686 - fix: missing initializers and incorrect default for native_pen_touch by @cgutman in #5693
- build(Linux): add Ubuntu 26.10 Docker bake target by @ReenigneArcher in #5622
- fix(linux): handle NVENC in builds without CUDA by @ReenigneArcher in #5698
- fix(network): respect configured bind address by @ReenigneArcher in #5700
- fix(web-ui): add XDG Portal token reset by @ReenigneArcher in #5701
- fix(linux): export all Wayland DMA-BUF planes by @ReenigneArcher in #5699
- chore(deps): update dependency @lucide/vue to v1.45.0 by @renovate[bot] in #5694
- build(deps): bump third-party/doxyconfig from
212e309to419127bby @dependabot[bot] in #5703 - build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from
1fc3219tode2225aby @dependabot[bot] in #5702 - fix(pipewire): extend KWin version check to handle 6.8 beta/RC versions by @psyke83 in #5704
- fix(linux): repair privileged DRM worker build by @ReenigneArcher in #5706
- fix(pipewire): gate variable rate to KWin 5.x.x - 6.7.79 (up to stable 6.7 series) by @psyke83 in #5705
- test: PowerShell tests with Pester and Sonar fixes by @ReenigneArcher in #5708
- test(linux): synchronize environment sanitizer tests by @ReenigneArcher in #5710
- build(copr): use cuda redistributatle for Fedora builds by @ReenigneArcher in #5719
- build(linux): fix ubuntu 26.10 aarch64 artifact extraction by @ReenigneArcher in #5720
- chore(deps): update dependency @lucide/vue to v1.46.0 by @renovate[bot] in #5715
- chore(deps): lock file maintenance by @renovate[bot] in #5714
- chore(deps): update dependency vite to v8.3.0 by @renovate[bot] in #5711
- chore(deps): update dependency windows to v2025 by @renovate[bot] in #5712
- feat(linux): use privileged EGL worker thread by @psyke83 in #5709
- chore(deps): update astral-sh/setup-uv action to v10.1.0 by @renovate[bot] in #5684
- chore(l10n): update translations by @LizardByte-bot in #5654
- chore(deps): bump libvirtualhid by @ReenigneArcher in #5722
New Contributors
Full Changelog: https://github.com/LizardByte/Sunshine/compare/v2026.906.222525…v2026.914.233613
Contributors
📦 Assets:
#CommissionsEarned | As an Amazon Associate we earn from qualifying purchases.