Skip to content

Releases: LizardByte/Sunshine

v2026.910.221003

v2026.910.221003 Pre-release
Pre-release

Choose a tag to compare

@LizardByte-bot LizardByte-bot released this 10 Sep 23:05
9051ae8

What's Changed

New Contributors

Full Changelog: v2026.906.222525...v2026.910.221003


Contributors

ReenigneArcherrenovate[bot]LizardByte-botbitnessdependabot[bot]solidv


📦 Assets:

⬇️ Download #️⃣ Download Count 🛡️ VirusTotal
Sunshine-FreeBSD-15.1-amd64.pkg Downloads VirusTotal
Sunshine-Windows-AMD64-debuginfo.7z Downloads VirusTotal
Sunshine-Windows-AMD64-installer.msi Downloads VirusTotal
Sunshine-Windows-AMD64-lite.zip Downloads VirusTotal
Sunshine-Windows-ARM64-debuginfo.7z Downloads VirusTotal
Sunshine-Windows-ARM64-installer.msi Downloads VirusTotal
Sunshine-Windows-ARM64-lite.zip Downloads VirusTotal
Sunshine-macOS-arm64.dmg Downloads [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:34f58a3fe5e...
Read more

v2026.910.173749

v2026.910.173749 Pre-release
Pre-release

Choose a tag to compare

@LizardByte-bot LizardByte-bot released this 10 Sep 18:42
0be67ff

What's Changed

Full Changelog: v2026.906.222525...v2026.910.173749


Contributors

renovate[bot]ReenigneArcherLizardByte-botdependabot[bot]


📦 Assets:

⬇️ Download #️⃣ Download Count 🛡️ VirusTotal
Sunshine-FreeBSD-15.1-amd64.pkg Downloads VirusTotal
Sunshine-Windows-AMD64-debuginfo.7z Downloads VirusTotal
Sunshine-Windows-AMD64-installer.msi Downloads VirusTotal
Sunshine-Windows-AMD64-lite.zip Downloads VirusTotal
Sunshine-Windows-ARM64-debuginfo.7z Downloads VirusTotal
Sunshine-Windows-ARM64-installer.msi Downloads VirusTotal
Sunshine-Windows-ARM64-lite.zip Downloads VirusTotal
Sunshine-macOS-arm64.dmg Downloads VirusTotal
Sunshine-macOS-x86_64.dmg Downloads VirusTotal
Sunshine_2026.910.173749_aarch64.AppImage Downloads [VirusTotal](https://ww...
Read more

v2026.906.222525

Choose a tag to compare

@LizardByte-bot LizardByte-bot released this 06 Sep 23:31
cb72dff

‼️ Attention

This release contains critical security updates. For more information see the following:

Please update as soon as possible!

⚠️ Breaking changes and migration notes

  • Windows NSIS (.exe) installers have been discontinued. Use the WiX-based .msi installer instead.
  • Windows portable packages were renamed. Sunshine-Windows-{arch}-portable.zip is now Sunshine-Windows-{arch}-lite.zip. Update any fixed download URLs or automation. (#5405)
  • Linux KMS display indices may be reordered. Configurations using a numeric output_name may need to reselect their display. Connector names such as DP-1 or HDMI-A-1 are now recommended. (#5489)
  • Sunshine has migrated to libvirtualhid. It replaces Inputtino on Linux and ViGEmBus as the primary input backend on Windows AMD64, and also handles additional input functionality on macOS. Virtual-device names, controller identities, permissions, and application-specific mappings may change. (#5368)
    • On Windows, full driver-backed gamepad, Raw Input keyboard, and Raw Input mouse support requires the separately installed Virtual HID Driver, an active machine license, and driver version 2026.905.2300.20 or newer. You can purchase a license from the Sunshine web-ui or our store. Lifetime and yearly subscription options are available.
    • Existing ViGEmBus installations remain available only as a limited Xbox 360 and DualShock 4 fallback. Sunshine no longer bundles or installs ViGEmBus.
    • Automatic gamepad emulation may now expose an Xbox Series controller instead of the previous Windows Xbox 360 or Linux Xbox One controller. Games and controller profiles may need to be reconfigured.
    • See the Introducing libvirtualhid and Virtual HID Driver blog post for more information.
  • The input configuration key ds5_inputtino_randomize_mac was renamed to virtualhid_randomize_mac. The old key is no longer recognized.
  • The ViGEmBus Web API was replaced. GET /api/vigembus/status and POST /api/vigembus/install were removed. Integrations should migrate to GET /api/virtual-input/status and the new /api/virtual-input/license endpoints.
  • Linux release filenames changed.
    • sunshine.AppImage is now versioned and architecture-specific, for example Sunshine_2026.906.222525_x86_64.AppImage.
    • Debian and Ubuntu packages now use native versioned filenames, for example sunshine_2026.906.222525-1+ubuntu24.04_amd64.deb.
    • Automation using fixed GitHub release URLs must be updated.
  • The prebuilt platform matrix changed.
    • The minimum supported FreeBSD release increased from 14.4 to 15.1.
    • Prebuilt FreeBSD aarch64 packages were removed; aarch64 users must compile Sunshine themselves. (#5516)
    • Fedora 42 and openSUSE Leap 15.6 RPMs are no longer attached to GitHub releases.
  • Sunshine no longer opens the Web UI automatically at startup. Open it manually when configuration is needed. (#5329)
  • Log files now rotate at startup. Previous logs are retained as .1 through .5; log collectors may need rotation-aware handling. (#5485)

Source builders and downstream packagers

  • The minimum required CMake version increased from 3.20 to 3.24.
  • The system tray migrated to Qt on every platform. Downstream packages must provide the applicable Qt Widgets and SVG dependencies. (#5260)
  • Python development dependencies moved from pip extras to uv dependency groups. Existing pip install ".[test]", .[lint], and similar workflows must migrate to uv sync and uv run. (#5222)
  • Several build paths and submodules were removed or relocated, including Inputtino, GoogleTest, nanors, nv-codec-headers, the Flatpak shared-modules checkout, and the version-specific Ubuntu Dockerfiles. Downstream scripts and patches referencing these paths must be updated.

✨ Highlights

  • Expanded virtual input support. The new libvirtualhid integration adds Xbox 360, Xbox One, Xbox Series, DualShock 4, DualSense, Nintendo Switch Pro, and generic virtual gamepad profiles, along with broader keyboard, mouse, touchscreen, pen, and trackpad support. (#5368)
  • Continued NVENC support for older NVIDIA GPUs on Windows. Sunshine now dynamically selects a compatible NVIDIA Video Codec SDK version at runtime, preserving hardware encoding support on older NVIDIA cards while retaining support for newer hardware. (#5451)
  • Hardware YUV 4:4:4 and HDR encoding on NVIDIA Linux systems. CUDA and CUDA-GL capture paths can now provide higher-quality chroma reproduction, including HDR configurations. (#4965, #5315)
  • Improved VA-API controls. New rate-control, quality, and block-level bitrate-control options provide greater control over AMD and Intel encoding behavior. (#5388)
  • Major Wayland and PipeWire improvements. This release improves DMA-BUF modifier support, display switching, variable-rate capture, fractional refresh rates, unpaced capture, software-encoder buffers, and compatibility with KWin and other compositors.
  • More reliable Linux display selection. Connector names such as DP-1 and HDMI-A-1 can now be used instead of unstable numeric display indices. (#5423)
  • Qt-based system tray across all platforms. Sunshine now uses a unified, cross-platform tray implementation with improved behavior on Linux, macOS, Windows, AppImage, and Flatpak installations. (#5260)
  • Improved macOS display management. Sunshine now uses libdisplaydevice to enumerate displays and apply or restore display changes, alongside improved scroll handling, display wake behavior, and microphone permission support. (#5338)
  • Native aarch64 AppImage support. Linux ARM64 users can now download an official AppImage. (#5627)
  • Better Web UI application management. The Applications page now supports filtering and searching, with refreshed Add, Edit, and Delete workflows and broader layout improvements.
  • More resilient streaming behavior. Highlights include automatic SDR fallback when HDR is unavailable, improved video reinitialization, corrected fractional frame pacing, better modifier-key handling, and use of the configured Windows audio sink.
  • Rotating logs and improved diagnostics. Startup logs are preserved across multiple runs, making crashes and initialization failures easier to troubleshoot. (#5485)
  • Per-session client identification. Launched applications can read the connected client name from the new SUNSHINE_CLIENT_NAME environment variable. (#5465)
  • Configurable RTSP packet size. The new packetsize option can improve compatibility with clients or networks that cannot configure an appropriate packet size themselves. (#5153)
  • Easier Linux installation and updates through Cloudsmith. Official Sunshine DEB and RPM repositories are now available in stable and beta channels, allowing updates through apt, dnf, or zypper. See Introducing LizardByte's Cloudsmith repositories for setup instructions.

For a comprehensive list of changes, see below.

What's Changed

Read more

v2026.516.143833

Choose a tag to compare

@LizardByte-bot LizardByte-bot released this 16 May 18:37
14ffa6f

Attention

This release contains critical security updates. For more information see the following:

Please update as soon as possible!

Breaking Changes

Highlighted Changes

  • Added XDG, Pipewire, and KWin direct screencast capture on Linux
  • Added Vulkan encoding on Linux
  • Added official OpenSUSE packages to LizardByte copr repos
  • Added FreeBSD packages
  • Sunshine can now bind to a specific network interface
  • Added msi/wix installer for Windows
  • Added Windows support for ARM64
  • Added signed dmg package for macOS
  • Windows executables and installers are now signed for AMD64 packages
  • New endpoints for Rest API [/api/covers]
  • Updated icons, added themes, and modernized web-ui
  • Capture audio on macOS using Tap API
  • Add client enable/disable access control from web-ui
  • Support for clients to request fractional NTSC framerates
  • Support for split frame encoding on GPUs with 2+ nvenc blocks
  • Updated FFmpeg to 8.1 branch

For a comprehensive list of changes, see below.

What's Changed

Read more

v2025.924.154138

Choose a tag to compare

@LizardByte-bot LizardByte-bot released this 24 Sep 18:27
86188d4

v2025.923.33222

Choose a tag to compare

@LizardByte-bot LizardByte-bot released this 23 Sep 06:17
f22b00d

Attention

This release contains critical security updates. For more information see the following:

Please update as soon as possible!

For a comprehensive list of user-facing changes, see below.

What's Changed

  • fix(power): don't wake up every 500ms to poll while not streaming by @cgutman in #4051
  • fix(amf): attempt to use level 5.1/5.2 for hevc by @mariotaku in #3888
  • fix(display): Restore Checkbox import for display device opts by @VMFortress in #4076
  • fix(windows): bundle vigembus instead of downloading it by @ReenigneArcher in #4088
  • fix(api): don't require content type for apps delete endpoint by @doxxx in #4093
  • fix(video): restore the ability to set a minimum fps target by @andygrundman in #4114
  • fix(packaging/linux): depend on libgbm by @ReenigneArcher in #4113
  • build(linux): compile with gcc13+ and bump cuda by @ReenigneArcher in #4136
  • build(deps): Update to FFmpeg 8.0 branch by @cgutman in #4143
  • feat(input/linux): allow ds5 gamepads to have a fixed device mac based on controller index by @Kishi85 in #4158
  • fix(input): Cleanup and show additional gamepad options correctly on linux (DS5) by @Kishi85 in #4169
  • fix(input): Add missing default value for ds5_inputtino_randomize_mac by @Kishi85 in #4207
  • fix(tray): optionally run tray in main event loop enabling support for macOS by @ReenigneArcher in #3818
  • feat(tray): Add runtime config option to enable/disable system tray by @Kishi85 in #4208
  • fix(packaging/Arch): make cuda and unit tests optional by @FineWolf in #4254
  • fix(packaging/Arch): do not fail if cuda was freshly installed by @FineWolf in #4257
  • fix(Linux): udev rules style issues by @Revival8697 in #4276
  • build(packaging/Linux): remove cuda as required dependency on aur by @ReenigneArcher in #4278
  • fix(packaging/Linux): ensure that uhid is loaded automatically by @gschintgen in #2906

New Contributors

Full Changelog: v2025.628.4510...v2025.923.33222


Contributors

dependabotReenigneArcherLizardByte-botKishi85FineWolfcgutmandoxxxRevival8697a5ehrenerikmagkeksegschintgenmengyanshouscottnmVMFortressandygrundmanmariotaku


🛡️ VirusTotal Results:

Read more

v2025.628.4510

Choose a tag to compare

@LizardByte-bot LizardByte-bot released this 28 Jun 00:45
65f14e1

Attention

This release contains critical security updates. For more information see the following:

Please update as soon as possible!

This release also contains many new features and bug fixes, including:

  • Encoder probing fixes.
  • Display automation is now disabled by default, you can re-enable it in the Sunshing config UI.
  • RestAPI improvements.
  • Async encode added for NVENC.
  • Native DualSense support on Linux.
  • Headless monitor support on Wayland Linux.
  • Minimum FPS is now be based on client framerate.
  • New languages and updated translations.
  • Many behind the scene updates to the build, ci, and dependencies.

For a more comprehensive list of user-facing changes, see below.

What's Changed

New Contributors

Full Changelog: v2025.122.141614...v2025.628.4510


Contributors

ReenigneArcherdependabotLizardByte-botClutchnp<img...

Read more

v2025.122.141614

Choose a tag to compare

@LizardByte-bot LizardByte-bot released this 22 Jan 14:16
64544e7

What's Changed

New Contributors

Full Changelog: v2025.118.151840...v2025.122.141614


Contributors

ReenigneArcherdependabotCodyManessLizardByte-bot

v2025.118.151840

Choose a tag to compare

@LizardByte-bot LizardByte-bot released this 18 Jan 15:19
26566cc

Attention

This release contains critical security updates. For more information see
GHSA-3hrw-xv8h-9499.
Please update as soon as possible!

This release also contains many new features and bug fixes, including:

  • Implemented automatic resolution and HDR mode changing on Windows.
  • Implemented YUV 4:4:4 encoding support for Intel and NVIDIA GPUs on Windows.
  • Implemented automatic discovery support for macOS hosts.
  • Added support for capturing displays other than the main display on macOS.
  • Added support for emulating DS5, Nintendo Switch Pro, and Xbox One controllers on Linux.
  • Removed the limit on concurrent streaming sessions.
  • Eliminated the need for driver patching to use NvFBC capture on Linux.
  • Significantly reduced CPU usage for encoding when using AMD GPUs (RDNA or later) on Windows.
  • Fixed video traffic timeout error when streaming from a Hyper-V VM using GPU Paravirtualization.
  • Fixed inability to stream from a Windows machine when using the Microsoft Basic Display Adapter driver.
  • Optimized internal frame handling by eliminating redundant data copies and using functions optimized for SSSE3,
    AVX2, and AVX512.
  • Implemented flow control to reduce the chance of dropped packets by overwhelmed routers or network switches.
  • Reworked the video encoding rate control logic for VA-API to improve bitrate efficiency on Linux.
  • New capture method using Windows.Graphics.Capture API on Windows.
    This is an experimental feature and requires running Sunshine manually.
    It is not compatible with running Sunshine as a service.
  • Clients can now be named and unpaired individually.
  • The web UI now supports dark mode.
  • Checkboxes replace select menus for boolean settings in the web UI.
  • RestAPI improvements.

For a more comprehensive list of user-facing changes, see below.

What's Changed

  • feat(macos/capture): support for capture display other than main display by @TimmyOVO in #2449
  • fix(macos/input): incorrect mouse input for non-main display by @TimmyOVO in #2461
  • webui: Update resolution automation example text with auto refresh rate by @cgarst in #2503
  • fix(linux): add frame processing latency and logging improvements by @gschintgen in #2502
  • AppImage: add needed VA-API libraries (Intel & AMD) by @gschintgen in #2429
  • Allow a custom FFmpeg build to be provided using CMake variables by @chewi in #1970
  • Fix log message for Periodic Ping by @c3m3gyanesh in #2538
  • feat(ui): Dark Mode by @Hazer in #2493
  • build(win): use UCRT64 environment instead of MinGW64. by @tez011 in #2323
  • feat(win): new capture method, Windows.Graphics.Capture by @tez011 in #2580
  • Name and unpair individual clients by @xanderfrangos in #2042
  • feat(audio): custom surround-params by @mariotaku in #2424
  • Remove the need for a patched nvidia library for NvFBC. by @hgaiser in #2471
  • build(linux): add homebrew support by @ReenigneArcher in #2667
  • fix(macos): Mouse input broken in-game by @Hazer in #2550
  • feat(input/linux): add support for more virtual input devices by @Hazer in #2606
  • fix(linux/input): battery values conversion by @ABeltramo in #2715
  • feat: add min_fps_target setting by @ReenigneArcher in #1043
  • fix(upnp): support newer miniupnpc library by @ReenigneArcher in #2782
  • macOS: New implementation of service publication by @cathyjf in #2786
  • build(linux): drop support for AUR by @ReenigneArcher in #2819
  • Implement basic network flow control by @ns6089 in #2803
  • Provide SSSE3, AVX2, and AVX512 optimized Reed-Solomon functions by @cgutman in #2828
  • Eliminate a redundant alloc+copy of each frame by @cgutman in #2852
  • Implement S/G IO for non-batched sends and eliminate more data copies by @cgutman in #2867
  • Implement S/G IO for batched sends and eliminate another frame copy by @cgutman in #2874
  • Migrate audio pipeline to float from 16-bit integer by @ns6089 in #2873
  • Handle CTRL_CLOSE_EVENT on Windows by @ns6089 in #2952
  • feat!: drop advertised resolutions and fps by @ReenigneArcher in #2924
  • fix(linux): ensure NvFBC capture works after multiple sessions by @insanemal in #3020
  • feat(win/video): support native YUV 4:4:4 encoding by @ns6089 in #2533
  • fix(linux): enable lowlatency mode for AMD by @ReenigneArcher in #3088
  • fix(nvhttp): wrap TLS socket to ensure graceful closure by @cgutman in #3077
  • fix(mdns): don't hardcode mDNS instance name by @cgutman in #3084
  • fix(win/video): don't offload chroma subsampling math to texture sampler when downscaling by @ns6089 in #3014
  • build(cmake): Prioritize vendored includes over system-wide by @jmou in #3182
  • fix(macos): Touch input broken by @BayLee4 in #3240
  • fix(video): encode at least one frame before capture reinit by @cgutman in #3300
  • fix: Reverse Proxy support by @Degot in #3173
  • feat(stream)!: remove limit on concurrent sessions and allow quitting apps with active sessions by @cgutman in #3325
  • fix(nvenc): disable filler data in AV1 bitstream by @cgutman in #3336
  • feat(vaapi): add option to enable strict enforcement of frame size by @cgutman in #3332
  • fix(macos): prevent indefinite hanging if screen capture is not granted by @cathyjf in #3360
  • fix(process): avoid leaking zombies and fds in detached processes by @cgutman in #3379
  • fix(hostname): fix handling of non-ASCII hostnames on Windows by @cgutman in #3382
  • feat(display)!: Add libdisplaydevice dependency and output name mapping by @FrogTheFrog in #2894
  • fix(nvenc): Enable opt-in client refresh by client by @TheElixZammuto in #3415
  • fix(shaders/directx): replace modulus with bitwise operator by @iMakeSoftware in #3499
  • feat(display): Configure display device based on user config by @FrogTheFrog in #3441
  • fix(confighttp): do not return 200 on errors by [@ReenigneArcher](https://github.com/ReenigneArche...
Read more

v0.23.1

Choose a tag to compare

@LizardByte-bot LizardByte-bot released this 21 Apr 02:02
8b21db6

Fixed

  • (Capture/Windows) Disable HRD and CBR encoding options by default for AMD GPUs due to video quality regressions in v0.23.0
  • (UI) Fix incorrect strings for QuickSync 'fast' and 'faster' presets
  • (UI/Linux) Fix update prompt appearing even when running the latest version
  • (Input) Fix crash when absolute input events are received prior to the display viewport being set
  • (Input/Linux) Fix missing clamping of rumble intensity to valid range
  • (Build/Tests) Fix error when attempting to disable compilation of tests
  • (Build/Linux) Fix some compilation errors when using Musl libc
  • (Logging) Fix broken debug messages for codec capability flags
  • (Logging/Linux) Fix log messages to include the correct setcap command for resolving KMS permission errors

Added

  • (Capture/Linux) Improve frame time consistency for all capture backends
  • (UI) Set focus to the PIN textbox when navigating to the PIN tab

Dependencies

  • Remove libavdevice dependency

Misc

  • (Linux) Prefer ayatana-appindicator3 over appindicator3 if both are available