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
- fix(video): prevent encoder probing with no active displays by @FrogTheFrog in #3592
- fix(video): allow encoder probing when there are no devices at all by @FrogTheFrog in #3594
- feat(display): Add revert display config on disconnect option by @VMFortress in #3613
- fix(api): return proper json objects by @ReenigneArcher in #3544
- fix(ui): properly handle boolean json responses by @ReenigneArcher in #3626
- fix(dd_config)!: disable by default by @ReenigneArcher in #3639
- feat(nvenc): implement async encode by @cgutman in #3629
- fix(linux/inputtino): DualSense native support without Steam Input by @ABeltramo in #3600
- feat: Add Max Bitrate option by @utkarshdalal in #3628
- fix: add missing strings for max_bitrate setting, and improved logging for bitrate by @utkarshdalal in #3656
- feat(display): expose HDR toggle workaround delay to user by @FrogTheFrog in #3579
- fix(http): lower TLS to v1.2 for downloading covers by @ReenigneArcher in #3691
- fix(packaging/windows): add Sunshine directories to system PATH by @ReenigneArcher in #3727
- fix(linux): update sunshine rules by @ReenigneArcher in #3748
- feat(input/linux): DualSense adaptive trigger support by @ABeltramo in #3738
- style(Web UI): Add 1rem margin between Save and Apply buttons for better UI/UX by @richardziegler in #3762
- fix(config): parse config after logging initialized by @ReenigneArcher in #3769
- fix(config): fix parse error when list ends on last line of config file by @ReenigneArcher in #3772
- fix(config): ensure logging config settings are properly loaded by @ReenigneArcher in #3777
- fix(linux): headless monitors on wayland by @gorgbus in #3783
- fix(audio): set the bits-per-sample of Steam Streaming Speakers to 16-bit when the default audio device is 16-bit by @andygrundman in #3704
- fix(apps): exit steam big picture mode on session end by @eaglesemanation in #3808
- fix(homebrew): enable system tray for linux by @ReenigneArcher in #3819
- feat(audio): add an option to disable sound streaming by @Clutchnp in #3833
- fix(linux/input): improve input rules by @jbellionjourdan in #3857
- fix(web-ui): Change Pin to PIN by @karasuhebi in #3872
- fix(rtp): improve timestamp accuracy for video by @andygrundman in #3883
- fix(installer/windows): remember service start type by @ReenigneArcher in #3902
- fix(package/linux): update desktop metainfo by @joebonrichie in #3901
- feat(security/windows): Add defense-in-depth measure for insecure system PATH configuration by @cgutman in #3971
- fix(macOS): nil displayName on macOS 26 beta by @water-vapor in #3991
- fix(video): base min frame time strictly on client framerate by @ReenigneArcher in #3844
- chore(l10n): update translations by @LizardByte-bot in #3582
New Contributors
- @VMFortress made their first contribution in #3613
- @utkarshdalal made their first contribution in #3628
- @richardziegler made their first contribution in #3762
- @gorgbus made their first contribution in #3783
- @eaglesemanation made their first contribution in #3808
- @Clutchnp made their first contribution in #3814
- @SuperKenVery made their first contribution in #3828
- @jbellionjourdan made their first contribution in #3857
- @grgergo1 made their first contribution in #3876
- @karasuhebi made their first contribution in #3872
- @activatekillswitch made their first contribution in #3919
- @rbqvq made their first contribution in #3938
- @joebonrichie made their first contribution in #3901
- @water-vapor made their first contribution in #3991
Full Changelog: https://github.com/LizardByte/Sunshine/compare/v2025.122.141614…v2025.628.4510