Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 39 additions & 10 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
<!---
NOTE: DO NOT DELETE ANY COMMENTS OR SECTIONS OF THIS TEMPLATE.
THEY ARE IMPORTANT FOR THE MAINTAINERS.
IT IS OKAY TO LEAVE SECTIONS EMPTY AND BOXES UNCHECKED IF THEY DO NOT APPLY TO YOUR PR.
--->

## Description
<!--- Please include a summary of the changes. --->

Expand All @@ -7,21 +13,44 @@


### Issues Fixed or Closed
<!--- If this PR fixes or closes any issues, please list them here. --->
<!--- Close issue example: `- Closes #1` --->
<!--- Fix bug issue example: `- Fixes #2` --->
<!--- Resolve issue example: `- Resolves #3` --->


#### Roadmap Issues
<!--- If this PR solves any roadmap issues (https://github.com/LizardByte/roadmap/issues), please list them here. --->
<!--- e.g. `- Closes https://github.com/LizardByte/roadmap/issues/1` --->


## Type of Change
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] Dependency update (updates to dependencies)
- [ ] Documentation update (changes to documentation)
- [ ] Repository update (changes to repository files, e.g. `.github/...`)
<!--- Select the type of change your PR introduces. You can select multiple types. --->
- [ ] **feat**: New feature (non-breaking change which adds functionality)
- [ ] **fix**: Bug fix (non-breaking change which fixes an issue)
- [ ] **docs**: Documentation only changes
- [ ] **style**: Changes that do not affect the meaning of the code (white-space, formatting, missing semicolons, etc.)
- [ ] **refactor**: Code change that neither fixes a bug nor adds a feature
- [ ] **perf**: Code change that improves performance
- [ ] **test**: Adding missing tests or correcting existing tests
- [ ] **build**: Changes that affect the build system or external dependencies
- [ ] **ci**: Changes to CI configuration files and scripts
- [ ] **chore**: Other changes that don't modify src or test files
- [ ] **revert**: Reverts a previous commit
- [ ] **BREAKING CHANGE**: Introduces a breaking change (can be combined with any type above)


## Checklist
- [ ] My code follows the style guidelines of this project
- [ ] I have performed a self-review of my own code
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have added or updated the in code docstring/documentation-blocks for new or existing methods/components
<!--- Please check all applicable boxes. If a box does not apply, leave it unchecked. --->
- [ ] Code follows the style guidelines of this project
- [ ] Code has been self-reviewed
- [ ] Code has been commented, particularly in hard-to-understand areas
- [ ] Code docstring/documentation-blocks for new or existing methods/components have been added or updated
- [ ] Unit tests have been added or updated for any new or modified functionality

### AI Usage
<!--- Select the option that best describes AI usage in this PR (choose only one). --->
- [ ] **None**: No AI tools were used in creating this PR
- [ ] **Light**: AI provided minor assistance (formatting, simple suggestions)
- [ ] **Moderate**: AI helped with code generation or debugging specific parts
- [ ] **Heavy**: AI generated most or all of the code changes
82 changes: 3 additions & 79 deletions dev.lizardbyte.app.Sunshine.metainfo.xml
Original file line number Diff line number Diff line change
Expand Up @@ -40,88 +40,12 @@
</description>

<releases>
<release version="2025.628.4510" date="2025-06-28">
<release version="2025.923.33222" date="2025-09-23">
<description>
<p>
## Attention
See the full changelog on GitHub

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

- [GHSA-39hj-fxvw-758m](https://github.com/LizardByte/Sunshine/security/advisories/GHSA-39hj-fxvw-758m)
- [GHSA-x97g-h2vp-g2c5](https://github.com/LizardByte/Sunshine/security/advisories/GHSA-x97g-h2vp-g2c5)

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

## New Contributors
* [@VMFortress](https://github.com/VMFortress) made their first contribution in [#3613](https://github.com/LizardByte/Sunshine/pull/3613)
* [@utkarshdalal](https://github.com/utkarshdalal) made their first contribution in [#3628](https://github.com/LizardByte/Sunshine/pull/3628)
* [@richardziegler](https://github.com/richardziegler) made their first contribution in [#3762](https://github.com/LizardByte/Sunshine/pull/3762)
* [@gorgbus](https://github.com/gorgbus) made their first contribution in [#3783](https://github.com/LizardByte/Sunshine/pull/3783)
* [@eaglesemanation](https://github.com/eaglesemanation) made their first contribution in [#3808](https://github.com/LizardByte/Sunshine/pull/3808)
* [@Clutchnp](https://github.com/Clutchnp) made their first contribution in [#3814](https://github.com/LizardByte/Sunshine/pull/3814)
* [@SuperKenVery](https://github.com/SuperKenVery) made their first contribution in [#3828](https://github.com/LizardByte/Sunshine/pull/3828)
* [@jbellionjourdan](https://github.com/jbellionjourdan) made their first contribution in [#3857](https://github.com/LizardByte/Sunshine/pull/3857)
* [@grgergo1](https://github.com/grgergo1) made their first contribution in [#3876](https://github.com/LizardByte/Sunshine/pull/3876)
* [@karasuhebi](https://github.com/karasuhebi) made their first contribution in [#3872](https://github.com/LizardByte/Sunshine/pull/3872)
* [@activatekillswitch](https://github.com/activatekillswitch) made their first contribution in [#3919](https://github.com/LizardByte/Sunshine/pull/3919)
* [@rbqvq](https://github.com/rbqvq) made their first contribution in [#3938](https://github.com/LizardByte/Sunshine/pull/3938)
* [@joebonrichie](https://github.com/joebonrichie) made their first contribution in [#3901](https://github.com/LizardByte/Sunshine/pull/3901)
* [@water-vapor](https://github.com/water-vapor) made their first contribution in [#3991](https://github.com/LizardByte/Sunshine/pull/3991)

**Full Changelog**: https://github.com/LizardByte/Sunshine/compare/v2025.122.141614...v2025.628.4510

---
## Contributors
<a href="https://github.com/ReenigneArcher" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, ReenigneArcher" ><img src="https://github.com/ReenigneArcher.png?size=40" width="40" height="40" alt="ReenigneArcher" title="ReenigneArcher: 62 merges" ></a><a href="https://github.com/dependabot" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, dependabot" ><img src="https://github.com/dependabot.png?size=40" width="40" height="40" alt="dependabot" title="dependabot: 56 merges" ></a><a href="https://github.com/LizardByte-bot" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, LizardByte-bot" ><img src="https://github.com/LizardByte-bot.png?size=40" width="40" height="40" alt="LizardByte-bot" title="LizardByte-bot: 6 merges" ></a><a href="https://github.com/Clutchnp" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, Clutchnp" ><img src="https://github.com/Clutchnp.png?size=40" width="40" height="40" alt="Clutchnp" title="Clutchnp: 5 merges" ></a><a href="https://github.com/FrogTheFrog" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, FrogTheFrog" ><img src="https://github.com/FrogTheFrog.png?size=40" width="40" height="40" alt="FrogTheFrog" title="FrogTheFrog: 3 merges" ></a><a href="https://github.com/eaglesemanation" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, eaglesemanation" ><img src="https://github.com/eaglesemanation.png?size=40" width="40" height="40" alt="eaglesemanation" title="eaglesemanation: 3 merges" ></a><a href="https://github.com/utkarshdalal" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, utkarshdalal" ><img src="https://github.com/utkarshdalal.png?size=40" width="40" height="40" alt="utkarshdalal" title="utkarshdalal: 3 merges" ></a><a href="https://github.com/ABeltramo" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, ABeltramo" ><img src="https://github.com/ABeltramo.png?size=40" width="40" height="40" alt="ABeltramo" title="ABeltramo: 2 merges" ></a><a href="https://github.com/SuperKenVery" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, SuperKenVery" ><img src="https://github.com/SuperKenVery.png?size=40" width="40" height="40" alt="SuperKenVery" title="SuperKenVery: 2 merges" ></a><a href="https://github.com/VMFortress" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, VMFortress" ><img src="https://github.com/VMFortress.png?size=40" width="40" height="40" alt="VMFortress" title="VMFortress: 2 merges" ></a><a href="https://github.com/activatekillswitch" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, activatekillswitch" ><img src="https://github.com/activatekillswitch.png?size=40" width="40" height="40" alt="activatekillswitch" title="activatekillswitch: 2 merges" ></a><a href="https://github.com/andygrundman" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, andygrundman" ><img src="https://github.com/andygrundman.png?size=40" width="40" height="40" alt="andygrundman" title="andygrundman: 2 merges" ></a><a href="https://github.com/cgutman" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, cgutman" ><img src="https://github.com/cgutman.png?size=40" width="40" height="40" alt="cgutman" title="cgutman: 2 merges" ></a><a href="https://github.com/gorgbus" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, gorgbus" ><img src="https://github.com/gorgbus.png?size=40" width="40" height="40" alt="gorgbus" title="gorgbus: 2 merges" ></a><a href="https://github.com/grgergo1" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, grgergo1" ><img src="https://github.com/grgergo1.png?size=40" width="40" height="40" alt="grgergo1" title="grgergo1: 2 merges" ></a><a href="https://github.com/jbellionjourdan" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, jbellionjourdan" ><img src="https://github.com/jbellionjourdan.png?size=40" width="40" height="40" alt="jbellionjourdan" title="jbellionjourdan: 2 merges" ></a><a href="https://github.com/joebonrichie" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, joebonrichie" ><img src="https://github.com/joebonrichie.png?size=40" width="40" height="40" alt="joebonrichie" title="joebonrichie: 2 merges" ></a><a href="https://github.com/karasuhebi" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, karasuhebi" ><img src="https://github.com/karasuhebi.png?size=40" width="40" height="40" alt="karasuhebi" title="karasuhebi: 2 merges" ></a><a href="https://github.com/rbqvq" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, rbqvq" ><img src="https://github.com/rbqvq.png?size=40" width="40" height="40" alt="rbqvq" title="rbqvq: 2 merges" ></a><a href="https://github.com/richardziegler" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, richardziegler" ><img src="https://github.com/richardziegler.png?size=40" width="40" height="40" alt="richardziegler" title="richardziegler: 2 merges" ></a><a href="https://github.com/water-vapor" target="_blank" rel="external noopener noreferrer" aria-label="GitHub profile of contributor, water-vapor" ><img src="https://github.com/water-vapor.png?size=40" width="40" height="40" alt="water-vapor" title="water-vapor: 2 merges" ></a>

</p>
</description>
</release>
Expand Down
6 changes: 3 additions & 3 deletions dev.lizardbyte.app.Sunshine.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,9 @@ modules:
build-options:
append-path: /usr/lib/sdk/node20/bin
env:
BUILD_VERSION: "v2025.628.4510"
BUILD_VERSION: "2025.923.33222"
BRANCH: "master"
COMMIT: "65f14e1003f831e776c170621bd06d8292f65155"
COMMIT: "f22b00d6981f756d3531fba0028723d4a5065824"
XDG_CACHE_HOME: /run/build/sunshine/flatpak-node/cache
npm_config_cache: /run/build/sunshine/flatpak-node/npm-cache
npm_config_nodedir: /usr/lib/sdk/node20
Expand Down Expand Up @@ -89,6 +89,6 @@ modules:
- generated-sources.json
- type: git
url: "https://github.com/LizardByte/Sunshine.git"
commit: "65f14e1003f831e776c170621bd06d8292f65155"
commit: "f22b00d6981f756d3531fba0028723d4a5065824"
- type: file
path: package-lock.json
Loading