diff --git a/_posts/releases/sunshine/2026-05-16-v2026.516.143833.md b/_posts/releases/sunshine/2026-05-16-v2026.516.143833.md new file mode 100644 index 00000000..c5e62e5e --- /dev/null +++ b/_posts/releases/sunshine/2026-05-16-v2026.516.143833.md @@ -0,0 +1,513 @@ +--- +layout: release +title: Sunshine v2026.516.143833 Released +release-tag: v2026.516.143833 +gh-repo: LizardByte/Sunshine +gh-badge: [follow, fork, star] +tags: [release, sunshine] +thumbnail-img: https://app.lizardbyte.dev/dashboard/github/openGraphImages/Sunshine_624x312.png +comments: true +authors: + - github: LizardByte-bot +--- + +## Attention + +This release contains critical security updates. For more information see the following: + +- [GHSA-ph75-mgxh-mv57](https://github.com/LizardByte/Sunshine/security/advisories/GHSA-ph75-mgxh-mv57) + +Please update as soon as possible! + +## Breaking Changes + +* ViGEmBus is no longer installed automatically. Instead you can install it from the troubleshooting page of the web-ui if needed. +* CSRF protection has been added to web-ui. If you access Sunshine through an address other than localhost you must add this to your sunshine.conf file manually. See https://docs.lizardbyte.dev/projects/sunshine/latest/md_docs_2configuration.html#csrf_allowed_origins + +## 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 +* ci(copr): Trigger release job only for non-prereleases by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4297](https://github.com/LizardByte/Sunshine/pull/4297) +* build(Linux): Refactor Dockerfiles and build script for multi-stage, step-based builds by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4299](https://github.com/LizardByte/Sunshine/pull/4299) +* build(deps): bump vue from 3.5.21 to 3.5.22 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4301](https://github.com/LizardByte/Sunshine/pull/4301) +* build(linux): update pkg-config systemd variable names by [@PVermeer](https://github.com/PVermeer) in [#4303](https://github.com/LizardByte/Sunshine/pull/4303) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4307](https://github.com/LizardByte/Sunshine/pull/4307) +* build(packaging/homebrew): Rename class from @PROJECT_NAME@ to Sunshine by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4308](https://github.com/LizardByte/Sunshine/pull/4308) +* build(deps): bump LizardByte/actions from 2025.917.25039 to 2025.927.193939 in the lizardbyte-actions group by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4309](https://github.com/LizardByte/Sunshine/pull/4309) +* build(deps): bump LizardByte/actions from 2025.927.193939 to 2025.929.125237 in the lizardbyte-actions group by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4313](https://github.com/LizardByte/Sunshine/pull/4313) +* fix(linux): service file for Trixie by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4319](https://github.com/LizardByte/Sunshine/pull/4319) +* build(linux): static link std libraries by [@PVermeer](https://github.com/PVermeer) in [#4321](https://github.com/LizardByte/Sunshine/pull/4321) +* build(linux): enable cpack auto dependencies by [@PVermeer](https://github.com/PVermeer) in [#4323](https://github.com/LizardByte/Sunshine/pull/4323) +* build(linux): explicitely set CC and CXX compilers by [@PVermeer](https://github.com/PVermeer) in [#4325](https://github.com/LizardByte/Sunshine/pull/4325) +* feat(audio): allow sending continuous audio by [@mariotaku](https://github.com/mariotaku) in [#4261](https://github.com/LizardByte/Sunshine/pull/4261) +* build(deps): bump LizardByte/actions from 2025.929.125237 to 2025.1011.184228 in the lizardbyte-actions group by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4327](https://github.com/LizardByte/Sunshine/pull/4327) +* feat(fps): support x-nv-video[0].clientRefreshRateX100 for requesting fractional NTSC framerates by [@andygrundman](https://github.com/andygrundman) in [#4019](https://github.com/LizardByte/Sunshine/pull/4019) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4326](https://github.com/LizardByte/Sunshine/pull/4326) +* fix(web-ui): translation function in DisplayOutputSelector label by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4328](https://github.com/LizardByte/Sunshine/pull/4328) +* build(deps): bump actions/setup-node from 5 to 6 in the github-actions group by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4334](https://github.com/LizardByte/Sunshine/pull/4334) +* build(deps): bump LizardByte/actions from 2025.1011.184228 to 2025.1020.14905 in the lizardbyte-actions group by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4347](https://github.com/LizardByte/Sunshine/pull/4347) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4346](https://github.com/LizardByte/Sunshine/pull/4346) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4345](https://github.com/LizardByte/Sunshine/pull/4345) +* build(rpm): Update Fedora spec and CUDA math_functions.h patch for Fedora 43+ by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4353](https://github.com/LizardByte/Sunshine/pull/4353) +* fix(windows): Memory leak when EnumAdapters1 uses dxgi::adapter_t address as parameter by [@xd-byte](https://github.com/xd-byte) in [#4340](https://github.com/LizardByte/Sunshine/pull/4340) +* build(deps): bump the github-actions group with 2 updates by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4356](https://github.com/LizardByte/Sunshine/pull/4356) +* build(rpm): add OpenSUSE support by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4359](https://github.com/LizardByte/Sunshine/pull/4359) +* ci(copr): fix release event conditions by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4360](https://github.com/LizardByte/Sunshine/pull/4360) +* ci: move bundle analysis to separate job by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4361](https://github.com/LizardByte/Sunshine/pull/4361) +* fix(config): ensure apps.json is writeable by [@SuperSandro2000](https://github.com/SuperSandro2000) in [#4249](https://github.com/LizardByte/Sunshine/pull/4249) +* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4302](https://github.com/LizardByte/Sunshine/pull/4302) +* build(deps): bump LizardByte/actions from 2025.1020.14905 to 2025.1028.23217 in the lizardbyte-actions group by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4365](https://github.com/LizardByte/Sunshine/pull/4365) +* build(flatpak): update org.freedesktop.Platform version by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4382](https://github.com/LizardByte/Sunshine/pull/4382) +* docs(readme): Update for clarity and image sources by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4384](https://github.com/LizardByte/Sunshine/pull/4384) +* build(deps): bump third-party/Simple-Web-Server from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4370](https://github.com/LizardByte/Sunshine/pull/4370) +* build(deps): bump boost to 1.89 by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4253](https://github.com/LizardByte/Sunshine/pull/4253) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4375](https://github.com/LizardByte/Sunshine/pull/4375) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4385](https://github.com/LizardByte/Sunshine/pull/4385) +* feat(video): use unified color conversion matrix generator by [@ns6089](https://github.com/ns6089) in [#4387](https://github.com/LizardByte/Sunshine/pull/4387) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4392](https://github.com/LizardByte/Sunshine/pull/4392) +* fix(config): Add missing framerateX100 fields at the initializers for the video::config_t literals by [@mcourteaux](https://github.com/mcourteaux) in [#4391](https://github.com/LizardByte/Sunshine/pull/4391) +* fix(video): fix leaky abstraction in ogl luma shader by [@ns6089](https://github.com/ns6089) in [#4404](https://github.com/LizardByte/Sunshine/pull/4404) +* build(deps): bump third-party/moonlight-common-c from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4409](https://github.com/LizardByte/Sunshine/pull/4409) +* build: add freebsd support by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4049](https://github.com/LizardByte/Sunshine/pull/4049) +* fix(launch): Fix several launch failure conditions (exceptions thrown in child.wait, and boost::split_unix) by [@mcourteaux](https://github.com/mcourteaux) in [#4390](https://github.com/LizardByte/Sunshine/pull/4390) +* ci: harden workflows by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4412](https://github.com/LizardByte/Sunshine/pull/4412) +* fix(win): Windows.Graphics.Capture API frame rate capped at 60fps by [@StringWeaver](https://github.com/StringWeaver) in [#4424](https://github.com/LizardByte/Sunshine/pull/4424) +* build(deps): bump vmactions/freebsd-vm from 1.2.6 to 1.2.7 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4425](https://github.com/LizardByte/Sunshine/pull/4425) +* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4386](https://github.com/LizardByte/Sunshine/pull/4386) +* build(packaging/Arch): fix cuda gcc version detection by [@Garmelon](https://github.com/Garmelon) in [#4442](https://github.com/LizardByte/Sunshine/pull/4442) +* build(deps): bump third-party/tray from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4445](https://github.com/LizardByte/Sunshine/pull/4445) +* build(deps): bump third-party/wayland-protocols from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4446](https://github.com/LizardByte/Sunshine/pull/4446) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4447](https://github.com/LizardByte/Sunshine/pull/4447) +* build(arch): temporarily disable broken Arch build by [@cgutman](https://github.com/cgutman) in [#4451](https://github.com/LizardByte/Sunshine/pull/4451) +* build(deps): bump third-party/moonlight-common-c from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4452](https://github.com/LizardByte/Sunshine/pull/4452) +* build(deps): bump vue-i18n from 11.1.12 to 11.2.2 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4454](https://github.com/LizardByte/Sunshine/pull/4454) +* build(deps): bump vue from 3.5.22 to 3.5.25 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4444](https://github.com/LizardByte/Sunshine/pull/4444) +* build(deps): bump actions/checkout from 5 to 6 in the github-actions group by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4435](https://github.com/LizardByte/Sunshine/pull/4435) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4443](https://github.com/LizardByte/Sunshine/pull/4443) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4431](https://github.com/LizardByte/Sunshine/pull/4431) +* fix(tray): use the blocking event loop to avoid wasting power by [@cgutman](https://github.com/cgutman) in [#4457](https://github.com/LizardByte/Sunshine/pull/4457) +* build(deps): bump vmactions/freebsd-vm from 1.2.7 to 1.2.8 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4463](https://github.com/LizardByte/Sunshine/pull/4463) +* ci(homebrew): enable test coverage on Linux by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#3842](https://github.com/LizardByte/Sunshine/pull/3842) +* ci(windows): Remove unused test preparation by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4467](https://github.com/LizardByte/Sunshine/pull/4467) +* ci(homebrew): free runner space on Linux by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4477](https://github.com/LizardByte/Sunshine/pull/4477) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4472](https://github.com/LizardByte/Sunshine/pull/4472) +* build(linux): add support for self-compiling on ubuntu 25.10 by [@a-turtle9302](https://github.com/a-turtle9302) in [#4471](https://github.com/LizardByte/Sunshine/pull/4471) +* ci(linux): migrate Archlinux build to GitHub workflow by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4478](https://github.com/LizardByte/Sunshine/pull/4478) +* build(tests): static link libgcc and libstdc++ on Linux by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4485](https://github.com/LizardByte/Sunshine/pull/4485) +* build(homebrew): Run test_sunshine and coverage only for main repo by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4491](https://github.com/LizardByte/Sunshine/pull/4491) +* style(Homebrew): Update Homebrew formula dependencies and conflicts by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4484](https://github.com/LizardByte/Sunshine/pull/4484) +* fix: namespace declaration for boost::process::v1 by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4518](https://github.com/LizardByte/Sunshine/pull/4518) +* chore: change libevdev source to LizardByte mirror by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4524](https://github.com/LizardByte/Sunshine/pull/4524) +* chore(homebrew): add bottle do section placeholder by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4525](https://github.com/LizardByte/Sunshine/pull/4525) +* feat(network): allow binding to specific interface by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4481](https://github.com/LizardByte/Sunshine/pull/4481) +* build(deps): bump the github-actions group across 1 directory with 3 updates by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4503](https://github.com/LizardByte/Sunshine/pull/4503) +* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4486](https://github.com/LizardByte/Sunshine/pull/4486) +* build(deps): bump vmactions/freebsd-vm from 1.2.8 to 1.3.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4489](https://github.com/LizardByte/Sunshine/pull/4489) +* build(deps): bump peter-evans/create-pull-request from 7 to 8 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4496](https://github.com/LizardByte/Sunshine/pull/4496) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4517](https://github.com/LizardByte/Sunshine/pull/4517) +* build(deps): bump LizardByte/actions from 2025.1221.31807 to 2025.1224.155016 in the lizardbyte-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4533](https://github.com/LizardByte/Sunshine/pull/4533) +* build(deps): bump vue from 3.5.25 to 3.5.26 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4522](https://github.com/LizardByte/Sunshine/pull/4522) +* build(deps): bump vue-i18n from 11.2.2 to 11.2.7 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4529](https://github.com/LizardByte/Sunshine/pull/4529) +* build(deps): bump third-party/wayland-protocols from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4513](https://github.com/LizardByte/Sunshine/pull/4513) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4526](https://github.com/LizardByte/Sunshine/pull/4526) +* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4497](https://github.com/LizardByte/Sunshine/pull/4497) +* ci(homebrew): fix formula version patch by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4535](https://github.com/LizardByte/Sunshine/pull/4535) +* ci(homebrew): fix livecheck patch by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4538](https://github.com/LizardByte/Sunshine/pull/4538) +* build(deps): bump LizardByte/actions from 2025.1224.155016 to 2025.1227.191137 in the lizardbyte-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4541](https://github.com/LizardByte/Sunshine/pull/4541) +* build(Archlinux): Update GCC version in PKGBUILD to 15 by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4546](https://github.com/LizardByte/Sunshine/pull/4546) +* fix(nvenc): Include bitstream restrictions in H.264/HEVC SPS by [@cgutman](https://github.com/cgutman) in [#4556](https://github.com/LizardByte/Sunshine/pull/4556) +* build(packaging): bash comparison in PKGBUILD by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4565](https://github.com/LizardByte/Sunshine/pull/4565) +* build(vaapi): Add vaMapBuffers2() stub by [@cgutman](https://github.com/cgutman) in [#4581](https://github.com/LizardByte/Sunshine/pull/4581) +* ci: run workflows for any branch by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4584](https://github.com/LizardByte/Sunshine/pull/4584) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4578](https://github.com/LizardByte/Sunshine/pull/4578) +* build(deps): bump third-party/moonlight-common-c from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4576](https://github.com/LizardByte/Sunshine/pull/4576) +* build(deps): bump vmactions/freebsd-vm from 1.3.0 to 1.3.7 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4574](https://github.com/LizardByte/Sunshine/pull/4574) +* build(deps): bump vue-i18n from 11.2.7 to 11.2.8 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4553](https://github.com/LizardByte/Sunshine/pull/4553) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4550](https://github.com/LizardByte/Sunshine/pull/4550) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4575](https://github.com/LizardByte/Sunshine/pull/4575) +* build(deps): bump LizardByte/actions from 2025.1227.191137 to 2026.116.208 in the lizardbyte-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4587](https://github.com/LizardByte/Sunshine/pull/4587) +* build(Archlinux): Switch from calling make directly to using cmake by [@Freakness109](https://github.com/Freakness109) in [#4579](https://github.com/LizardByte/Sunshine/pull/4579) +* fix(linux/wlr): Fix dmabuf buffer params protocol violation/leak by [@Dregu](https://github.com/Dregu) in [#4588](https://github.com/LizardByte/Sunshine/pull/4588) +* fix(config): create apps.json from default after loading file_apps cfg by [@amarshall](https://github.com/amarshall) in [#4568](https://github.com/LizardByte/Sunshine/pull/4568) +* build(linux): Add Fedora 43 support to the build script by [@craimasjien](https://github.com/craimasjien) in [#4532](https://github.com/LizardByte/Sunshine/pull/4532) +* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4548](https://github.com/LizardByte/Sunshine/pull/4548) +* fix(windows): resolve disappearing cursor after KVM switch by [@tstokes22](https://github.com/tstokes22) in [#4407](https://github.com/LizardByte/Sunshine/pull/4407) +* fix(audio-info): crash when device name contains special characters by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4095](https://github.com/LizardByte/Sunshine/pull/4095) +* fix(macos/input): Fix handling of mouse wheel scroll events by [@andygrundman](https://github.com/andygrundman) in [#4592](https://github.com/LizardByte/Sunshine/pull/4592) +* fix(linux): added support for logical screen size with zxdg_output_v1 by [@juliosanz](https://github.com/juliosanz) in [#4594](https://github.com/LizardByte/Sunshine/pull/4594) +* feat(packaging/linux): enable cuda support for homebrew by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4593](https://github.com/LizardByte/Sunshine/pull/4593) +* build(arch): enhanced arch support for linux build script by [@juliosanz](https://github.com/juliosanz) in [#4595](https://github.com/LizardByte/Sunshine/pull/4595) +* build(windows): fix rc version for llvm clang by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4606](https://github.com/LizardByte/Sunshine/pull/4606) +* build(flatpak): drop libnotify module by [@yakushabb](https://github.com/yakushabb) in [#4604](https://github.com/LizardByte/Sunshine/pull/4604) +* fix(linux): fix issues with rendering and touchscreens when displays are scaled by [@juliosanz](https://github.com/juliosanz) in [#4607](https://github.com/LizardByte/Sunshine/pull/4607) +* build(homebrew): optimize build options by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4612](https://github.com/LizardByte/Sunshine/pull/4612) +* chore: clean up implicit conversions by [@andygrundman](https://github.com/andygrundman) in [#4611](https://github.com/LizardByte/Sunshine/pull/4611) +* feat(macos/build): add basic macOS build script based on linux_build.sh by [@andygrundman](https://github.com/andygrundman) in [#4598](https://github.com/LizardByte/Sunshine/pull/4598) +* perf(threads): implement adjust_thread_priority for macOS and add set_thread_name by [@andygrundman](https://github.com/andygrundman) in [#4605](https://github.com/LizardByte/Sunshine/pull/4605) +* feat(windows): add ViGEmBus driver management API and UI integration by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4625](https://github.com/LizardByte/Sunshine/pull/4625) +* feat(web-ui): render changelog for new release sections by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4629](https://github.com/LizardByte/Sunshine/pull/4629) +* feat(web-ui)!: remove discord widget by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4630](https://github.com/LizardByte/Sunshine/pull/4630) +* fix(linux/kms): skip NVIDIA cards for VAAPI on hybrid GPU laptops by [@coleleavitt](https://github.com/coleleavitt) in [#4473](https://github.com/LizardByte/Sunshine/pull/4473) +* build(deps): bump vue from 3.5.26 to 3.5.27 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4602](https://github.com/LizardByte/Sunshine/pull/4602) +* feat(api): add application image endpoint by [@cilps](https://github.com/cilps) in [#4627](https://github.com/LizardByte/Sunshine/pull/4627) +* fix(web-ui): modernize UI by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4631](https://github.com/LizardByte/Sunshine/pull/4631) +* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4600](https://github.com/LizardByte/Sunshine/pull/4600) +* build(fedora): use nvm to install npm for rawhide by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4646](https://github.com/LizardByte/Sunshine/pull/4646) +* build(deps): bump third-party/moonlight-common-c from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4648](https://github.com/LizardByte/Sunshine/pull/4648) +* build(deps): bump @lizardbyte/shared-web from 2025.922.181114 to 2026.125.235713 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4632](https://github.com/LizardByte/Sunshine/pull/4632) +* build(deps): bump vmactions/freebsd-vm from 1.3.7 to 1.3.8 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4643](https://github.com/LizardByte/Sunshine/pull/4643) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4609](https://github.com/LizardByte/Sunshine/pull/4609) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4644](https://github.com/LizardByte/Sunshine/pull/4644) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4640](https://github.com/LizardByte/Sunshine/pull/4640) +* build(deps): bump LizardByte/actions from 2026.116.208 to 2026.129.194351 in the lizardbyte-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4647](https://github.com/LizardByte/Sunshine/pull/4647) +* build: add --ignore-scripts to npm install commands by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4655](https://github.com/LizardByte/Sunshine/pull/4655) +* build(deps): bump LizardByte/actions from 2026.129.194351 to 2026.203.15239 in the lizardbyte-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4656](https://github.com/LizardByte/Sunshine/pull/4656) +* feat(linux)!: Support streaming through XDG portals and Pipewire by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4417](https://github.com/LizardByte/Sunshine/pull/4417) +* chore: update GitHub Actions to use commit hashes by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4659](https://github.com/LizardByte/Sunshine/pull/4659) +* build(deps): bump babel from 2.17.0 to 2.18.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4653](https://github.com/LizardByte/Sunshine/pull/4653) +* build(deps): bump actions/checkout from 6.0.1 to 6.0.2 in the github-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4663](https://github.com/LizardByte/Sunshine/pull/4663) +* build(deps): bump third-party/doxyconfig from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4657](https://github.com/LizardByte/Sunshine/pull/4657) +* build(deps): bump third-party/libdisplaydevice from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4678](https://github.com/LizardByte/Sunshine/pull/4678) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4683](https://github.com/LizardByte/Sunshine/pull/4683) +* build(deps): bump third-party/moonlight-common-c from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4682](https://github.com/LizardByte/Sunshine/pull/4682) +* build(deps): bump vmactions/freebsd-vm from 1.3.8 to 1.4.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4676](https://github.com/LizardByte/Sunshine/pull/4676) +* fix(linux/xdgportal): populate host latency statistics by [@psyke83](https://github.com/psyke83) in [#4685](https://github.com/LizardByte/Sunshine/pull/4685) +* fix(linux/xdgportal): flag stream as realtime by [@psyke83](https://github.com/psyke83) in [#4684](https://github.com/LizardByte/Sunshine/pull/4684) +* refactor(packaging/windows): installer script execution by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4675](https://github.com/LizardByte/Sunshine/pull/4675) +* feat(installer/windows): add wix installer by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#3916](https://github.com/LizardByte/Sunshine/pull/3916) +* build(windows): add arm64 support by [@rbqvq](https://github.com/rbqvq) in [#3905](https://github.com/LizardByte/Sunshine/pull/3905) +* revert: "fix(linux/xdgportal): flag stream as realtime" by [@psyke83](https://github.com/psyke83) in [#4686](https://github.com/LizardByte/Sunshine/pull/4686) +* docs: miscellaneous updates by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4597](https://github.com/LizardByte/Sunshine/pull/4597) +* build(web-ui): fix rollup failing by [@rbqvq](https://github.com/rbqvq) in [#4687](https://github.com/LizardByte/Sunshine/pull/4687) +* ci(deps): use codecov-action for test results by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4689](https://github.com/LizardByte/Sunshine/pull/4689) +* fix(log): prevent sink destruction caused by backend exceptions by [@Yundi339](https://github.com/Yundi339) in [#4694](https://github.com/LizardByte/Sunshine/pull/4694) +* build(deps): bump vue from 3.5.27 to 3.5.28 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4696](https://github.com/LizardByte/Sunshine/pull/4696) +* build(deps): bump vmactions/freebsd-vm from 1.4.0 to 1.4.1 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4690](https://github.com/LizardByte/Sunshine/pull/4690) +* build(deps): migrate ffmpeg prebuild to downloaded archive by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4699](https://github.com/LizardByte/Sunshine/pull/4699) +* fix(flatpak): Add pipewire access for XDG portal grab by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4704](https://github.com/LizardByte/Sunshine/pull/4704) +* fix(linux/xdgportal): improve thread loop (un)locking & teardown logic by [@psyke83](https://github.com/psyke83) in [#4705](https://github.com/LizardByte/Sunshine/pull/4705) +* build(deps): bump LizardByte/actions from 2026.203.15239 to 2026.212.22356 in the lizardbyte-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4706](https://github.com/LizardByte/Sunshine/pull/4706) +* build(deps): bump vmactions/freebsd-vm from 1.4.1 to 1.4.2 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4707](https://github.com/LizardByte/Sunshine/pull/4707) +* build(deps): bump marked from 17.0.1 to 17.0.2 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4710](https://github.com/LizardByte/Sunshine/pull/4710) +* fix(linux): update systemd service units by [@psyke83](https://github.com/psyke83) in [#4712](https://github.com/LizardByte/Sunshine/pull/4712) +* feat(macos/tray): allow tray icon paths to be set at runtime from .app bundle by [@andygrundman](https://github.com/andygrundman) in [#4711](https://github.com/LizardByte/Sunshine/pull/4711) +* ci: scope workflow permissions to job level by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4717](https://github.com/LizardByte/Sunshine/pull/4717) +* build(deps): bump LizardByte/actions from 2026.212.22356 to 2026.214.14019 in the lizardbyte-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4719](https://github.com/LizardByte/Sunshine/pull/4719) +* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4725](https://github.com/LizardByte/Sunshine/pull/4725) +* fix(linux/xdgportal): stream scaling and mode change support by [@psyke83](https://github.com/psyke83) in [#4700](https://github.com/LizardByte/Sunshine/pull/4700) +* fix(linux): fix touch misalignment for wlgrab on scaled outputs by [@herboh](https://github.com/herboh) in [#4665](https://github.com/LizardByte/Sunshine/pull/4665) +* fix(gh-pages): style fixes for theme switcher by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4748](https://github.com/LizardByte/Sunshine/pull/4748) +* build(deps): bump third-party/moonlight-common-c from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4751](https://github.com/LizardByte/Sunshine/pull/4751) +* feat(linux/xdgportal): implement reactive capture with duplicate detection by [@psyke83](https://github.com/psyke83) in [#4740](https://github.com/LizardByte/Sunshine/pull/4740) +* fix(linux/kmsgrab): fix handle leak in update_cursor by [@psyke83](https://github.com/psyke83) in [#4757](https://github.com/LizardByte/Sunshine/pull/4757) +* build(deps): bump LizardByte/build-deps by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4761](https://github.com/LizardByte/Sunshine/pull/4761) +* build(deps): bump third-party/moonlight-common-c from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4755](https://github.com/LizardByte/Sunshine/pull/4755) +* build(deps): bump lucide-vue-next from 0.563.0 to 0.575.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4752](https://github.com/LizardByte/Sunshine/pull/4752) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4741](https://github.com/LizardByte/Sunshine/pull/4741) +* build(deps): bump marked from 17.0.2 to 17.0.3 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4744](https://github.com/LizardByte/Sunshine/pull/4744) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4766](https://github.com/LizardByte/Sunshine/pull/4766) +* fix: replace remaining FontAwesome icons and drop shared-web dependency by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4764](https://github.com/LizardByte/Sunshine/pull/4764) +* build(python): migrate to pyproject.toml and bump python to 3.14 by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4772](https://github.com/LizardByte/Sunshine/pull/4772) +* docs: add maintainer release instructions by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4773](https://github.com/LizardByte/Sunshine/pull/4773) +* build(deps): bump third-party/moonlight-common-c from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4765](https://github.com/LizardByte/Sunshine/pull/4765) +* build(deps): bump vue from 3.5.28 to 3.5.29 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4767](https://github.com/LizardByte/Sunshine/pull/4767) +* chore(github): add Qualcomm GPU option to bug report template by [@rbqvq](https://github.com/rbqvq) in [#4733](https://github.com/LizardByte/Sunshine/pull/4733) +* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4698](https://github.com/LizardByte/Sunshine/pull/4698) +* build(deps): bump third-party/doxyconfig from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4778](https://github.com/LizardByte/Sunshine/pull/4778) +* fix(linux/xdgportal): don't pass argument to by [@leenr](https://github.com/leenr) in [#4754](https://github.com/LizardByte/Sunshine/pull/4754) +* build(deps-dev): bump vite from 6.3.6 to 6.4.1 in the dev-dependencies group by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4782](https://github.com/LizardByte/Sunshine/pull/4782) +* build(deps): bump the github-actions group across 1 directory with 2 updates by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4783](https://github.com/LizardByte/Sunshine/pull/4783) +* refactor: replace macros with constexpr/consts by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4791](https://github.com/LizardByte/Sunshine/pull/4791) +* style(cpp): separate multiple variable declarations by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4795](https://github.com/LizardByte/Sunshine/pull/4795) +* build(deps): bump LizardByte/actions from 2026.214.14019 to 2026.227.200013 in the lizardbyte-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4789](https://github.com/LizardByte/Sunshine/pull/4789) +* fix: struct ordering broken in 188f1e2959e44b4a463bf4dee616a5cbee6f3557 by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4802](https://github.com/LizardByte/Sunshine/pull/4802) +* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4807](https://github.com/LizardByte/Sunshine/pull/4807) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4808](https://github.com/LizardByte/Sunshine/pull/4808) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4809](https://github.com/LizardByte/Sunshine/pull/4809) +* feat(web-ui): clipboard copy feedback on Troubleshooting logs by [@eduardomozart](https://github.com/eduardomozart) in [#4803](https://github.com/LizardByte/Sunshine/pull/4803) +* build(deps): bump vue3-simple-icons from 15.6.0 to 16.10.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4804](https://github.com/LizardByte/Sunshine/pull/4804) +* build(deps): bump lucide-vue-next from 0.575.0 to 0.576.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4805](https://github.com/LizardByte/Sunshine/pull/4805) +* feat(macos): build a signed .app bundle in a .dmg by [@andygrundman](https://github.com/andygrundman) in [#4759](https://github.com/LizardByte/Sunshine/pull/4759) +* build(deps): bump the github-actions group across 1 directory with 2 updates by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4810](https://github.com/LizardByte/Sunshine/pull/4810) +* build(deps-dev): bump serve from 14.2.5 to 14.2.6 in the dev-dependencies group by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4814](https://github.com/LizardByte/Sunshine/pull/4814) +* fix(build): ensure libopus is statically linked by [@andygrundman](https://github.com/andygrundman) in [#4819](https://github.com/LizardByte/Sunshine/pull/4819) +* build(fedora): fix rawhide build by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4821](https://github.com/LizardByte/Sunshine/pull/4821) +* fix(macos): hide the Dock icon by [@andygrundman](https://github.com/andygrundman) in [#4823](https://github.com/LizardByte/Sunshine/pull/4823) +* fix(linux/portal): set env_width/env_height so touch input works by [@michalzxc](https://github.com/michalzxc) in [#4822](https://github.com/LizardByte/Sunshine/pull/4822) +* build(deps): bump marked from 17.0.3 to 17.0.4 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4817](https://github.com/LizardByte/Sunshine/pull/4817) +* build(deps): bump actions/setup-dotnet from 5.1.0 to 5.2.0 in the github-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4815](https://github.com/LizardByte/Sunshine/pull/4815) +* ci(macOS): check notary status in separate job by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4820](https://github.com/LizardByte/Sunshine/pull/4820) +* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4793](https://github.com/LizardByte/Sunshine/pull/4793) +* build(homebrew): dynamic link opus by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4826](https://github.com/LizardByte/Sunshine/pull/4826) +* fix(linux/wlgrab): add frame_timestamp using wayland's ready timestamp by [@andygrundman](https://github.com/andygrundman) in [#4787](https://github.com/LizardByte/Sunshine/pull/4787) +* fix(linux): use FQDN naming for all Linux packaging types by [@psyke83](https://github.com/psyke83) in [#4779](https://github.com/LizardByte/Sunshine/pull/4779) +* build(deps): bump lucide-vue-next from 0.576.0 to 0.577.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4818](https://github.com/LizardByte/Sunshine/pull/4818) +* refactor(confighttp): HTML page handlers into generic getPage function by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4645](https://github.com/LizardByte/Sunshine/pull/4645) +* build(deps): move nvapi to official NVIDIA repo and bump to R590 by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#3725](https://github.com/LizardByte/Sunshine/pull/3725) +* build(deps): bump vue-i18n from 11.2.8 to 11.3.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4828](https://github.com/LizardByte/Sunshine/pull/4828) +* feat(linux/xdgportal): implement event-driven capture by [@psyke83](https://github.com/psyke83) in [#4768](https://github.com/LizardByte/Sunshine/pull/4768) +* build(windows): sign windows executables by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4829](https://github.com/LizardByte/Sunshine/pull/4829) +* build(deps): bump vue from 3.5.29 to 3.5.30 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4834](https://github.com/LizardByte/Sunshine/pull/4834) +* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4831](https://github.com/LizardByte/Sunshine/pull/4831) +* fix(web-ui): add missing featured apps platform icons by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4837](https://github.com/LizardByte/Sunshine/pull/4837) +* ci(windows): disable signing for arm64 by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4838](https://github.com/LizardByte/Sunshine/pull/4838) +* fix(linux/xdgportal): descriptor/pointer cleanups by [@psyke83](https://github.com/psyke83) in [#4840](https://github.com/LizardByte/Sunshine/pull/4840) +* feat(web-ui): add browse feature to find directories/executables/files by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4848](https://github.com/LizardByte/Sunshine/pull/4848) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4844](https://github.com/LizardByte/Sunshine/pull/4844) +* build(deps): bump actions/download-artifact from 8.0.0 to 8.0.1 in the github-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4842](https://github.com/LizardByte/Sunshine/pull/4842) +* chore(l10n): update translations by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4841](https://github.com/LizardByte/Sunshine/pull/4841) +* build(Fedora): Adjust version ranges for GCC selection by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4851](https://github.com/LizardByte/Sunshine/pull/4851) +* fix(linux/xdgportal): avoid duplicate frame insertion by [@psyke83](https://github.com/psyke83) in [#4839](https://github.com/LizardByte/Sunshine/pull/4839) +* build(deps): bump vmactions/freebsd-vm from 1.4.2 to 1.4.3 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4849](https://github.com/LizardByte/Sunshine/pull/4849) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4850](https://github.com/LizardByte/Sunshine/pull/4850) +* build(linux): generate glad sources at compile time by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4798](https://github.com/LizardByte/Sunshine/pull/4798) +* build(deps): bump third-party/doxyconfig from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4853](https://github.com/LizardByte/Sunshine/pull/4853) +* chore(i18n): clarify cmd notes by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4856](https://github.com/LizardByte/Sunshine/pull/4856) +* build(deps): bump third-party/inputtino from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4860](https://github.com/LizardByte/Sunshine/pull/4860) +* build(deps): bump third-party/glad from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4858](https://github.com/LizardByte/Sunshine/pull/4858) +* fix(linux/xdgportal): allow unified systemd service for all capture methods by [@psyke83](https://github.com/psyke83) in [#4854](https://github.com/LizardByte/Sunshine/pull/4854) +* feat(linux/keyboard): add F13-F24 keycodes by [@4xMSAA](https://github.com/4xMSAA) in [#4833](https://github.com/LizardByte/Sunshine/pull/4833) +* build(deps): bump apple-actions/import-codesign-certs from 6.0.0 to 6.1.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4864](https://github.com/LizardByte/Sunshine/pull/4864) +* build(deps): bump third-party/nv-codec-headers from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4866](https://github.com/LizardByte/Sunshine/pull/4866) +* build(deps): bump actions/cache from 5.0.3 to 5.0.4 in the github-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4870](https://github.com/LizardByte/Sunshine/pull/4870) +* build(deps): bump codecov/codecov-action from 5.5.2 to 5.5.3 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4871](https://github.com/LizardByte/Sunshine/pull/4871) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4872](https://github.com/LizardByte/Sunshine/pull/4872) +* build(deps): bump third-party/inputtino from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4873](https://github.com/LizardByte/Sunshine/pull/4873) +* fix(linux): use FQDN service name in desktop launcher by [@htrex](https://github.com/htrex) in [#4874](https://github.com/LizardByte/Sunshine/pull/4874) +* fix(linux/xdgportal): portalgrab capture stability & mutter compatibility by [@psyke83](https://github.com/psyke83) in [#4875](https://github.com/LizardByte/Sunshine/pull/4875) +* feat(macOS): Capture audio on macOS using Tap API by [@ThomVanL](https://github.com/ThomVanL) in [#4209](https://github.com/LizardByte/Sunshine/pull/4209) +* feat(linux/glad): implement EGL_IMG_context_priority by [@psyke83](https://github.com/psyke83) in [#4857](https://github.com/LizardByte/Sunshine/pull/4857) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4880](https://github.com/LizardByte/Sunshine/pull/4880) +* build(deps): bump marked from 17.0.4 to 17.0.5 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4881](https://github.com/LizardByte/Sunshine/pull/4881) +* build(deps): bump third-party/doxyconfig from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4888](https://github.com/LizardByte/Sunshine/pull/4888) +* build(deps): bump third-party/libdisplaydevice from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4887](https://github.com/LizardByte/Sunshine/pull/4887) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4886](https://github.com/LizardByte/Sunshine/pull/4886) +* fix(csrf): make errors more apparent by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4889](https://github.com/LizardByte/Sunshine/pull/4889) +* fix: clear tray icon when unpairing the last paired client by [@aliefe04](https://github.com/aliefe04) in [#4890](https://github.com/LizardByte/Sunshine/pull/4890) +* feat(linux): add thread priority support for POSIX systems by [@psyke83](https://github.com/psyke83) in [#4885](https://github.com/LizardByte/Sunshine/pull/4885) +* build: fix build-deps tag matching by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4899](https://github.com/LizardByte/Sunshine/pull/4899) +* build(deps): bump third-party/tray from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4894](https://github.com/LizardByte/Sunshine/pull/4894) +* build(deps): bump msys2/setup-msys2 from 2.30.0 to 2.31.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4893](https://github.com/LizardByte/Sunshine/pull/4893) +* build(deps): bump lucide-vue-next from 0.577.0 to 1.0.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4905](https://github.com/LizardByte/Sunshine/pull/4905) +* build(deps): bump azure/trusted-signing-action from 1.1.0 to 1.2.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4903](https://github.com/LizardByte/Sunshine/pull/4903) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4910](https://github.com/LizardByte/Sunshine/pull/4910) +* build(deps): bump vue from 3.5.30 to 3.5.31 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4911](https://github.com/LizardByte/Sunshine/pull/4911) +* build(deps): bump LizardByte/actions from 2026.227.200013 to 2026.328.161128 in the lizardbyte-actions group across 1 directory by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4920](https://github.com/LizardByte/Sunshine/pull/4920) +* test(windows): fix display device tests with clang by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4921](https://github.com/LizardByte/Sunshine/pull/4921) +* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4916](https://github.com/LizardByte/Sunshine/pull/4916) +* build(deps): bump codecov/codecov-action from 5.5.3 to 6.0.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4913](https://github.com/LizardByte/Sunshine/pull/4913) +* build: Allow FFMPEG_PLATFORM_LIBRARIES to be overridden by the user by [@chewi](https://github.com/chewi) in [#4915](https://github.com/LizardByte/Sunshine/pull/4915) +* fix: restore stdin-based pairing by [@MrAwesome](https://github.com/MrAwesome) in [#4912](https://github.com/LizardByte/Sunshine/pull/4912) +* build(deps): bump third-party/moonlight-common-c from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4923](https://github.com/LizardByte/Sunshine/pull/4923) +* feat(api/ui): add client enable/disable access control by [@neatnoise](https://github.com/neatnoise) in [#4771](https://github.com/LizardByte/Sunshine/pull/4771) +* fix(windows): update-path.bat registry command syntax in installer by [@kmzs123](https://github.com/kmzs123) in [#4902](https://github.com/LizardByte/Sunshine/pull/4902) +* build(deps): bump vmactions/freebsd-vm from 1.4.3 to 1.4.4 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4928](https://github.com/LizardByte/Sunshine/pull/4928) +* feat(linux): Add Vulkan video encoder by [@neatnoise](https://github.com/neatnoise) in [#4603](https://github.com/LizardByte/Sunshine/pull/4603) +* build(deps): bump third-party/moonlight-common-c from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4930](https://github.com/LizardByte/Sunshine/pull/4930) +* build(deps): bump third-party/nvapi from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4917](https://github.com/LizardByte/Sunshine/pull/4917) +* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4936](https://github.com/LizardByte/Sunshine/pull/4936) +* build(deps): bump vue from 3.5.31 to 3.5.32 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4941](https://github.com/LizardByte/Sunshine/pull/4941) +* build(deps): bump marked from 17.0.5 to 18.0.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4957](https://github.com/LizardByte/Sunshine/pull/4957) +* build(deps): bump vue-i18n from 11.3.0 to 11.3.1 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4953](https://github.com/LizardByte/Sunshine/pull/4953) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4949](https://github.com/LizardByte/Sunshine/pull/4949) +* fix: redact logging of sensitive config & CSRF validation by [@psyke83](https://github.com/psyke83) in [#4955](https://github.com/LizardByte/Sunshine/pull/4955) +* fix(linux): correct "Pulseadio" typo in PulseAudio log messages by [@atassis](https://github.com/atassis) in [#4956](https://github.com/LizardByte/Sunshine/pull/4956) +* fix(linux/vulkan): add 16-bit DRM format support for HDR DMA-BUF import by [@neatnoise](https://github.com/neatnoise) in [#4962](https://github.com/LizardByte/Sunshine/pull/4962) +* fix(linux/xdgportal): Properly support multiple screens by exposing pipewire streams as separate displays by [@Kishi85](https://github.com/Kishi85) in [#4931](https://github.com/LizardByte/Sunshine/pull/4931) +* fix(linux/postins): allow running on rpm-ostree environments by [@ykshek](https://github.com/ykshek) in [#4963](https://github.com/LizardByte/Sunshine/pull/4963) +* build(deps): bump actions/github-script from 8.0.0 to 9.0.0 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4970](https://github.com/LizardByte/Sunshine/pull/4970) +* build(deps): bump vue-i18n from 11.3.1 to 11.3.2 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4964](https://github.com/LizardByte/Sunshine/pull/4964) +* fix(linux/xdgportal): Improve multi-monitor support and work around breaking kmsgrab by [@Kishi85](https://github.com/Kishi85) in [#4969](https://github.com/LizardByte/Sunshine/pull/4969) +* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4976](https://github.com/LizardByte/Sunshine/pull/4976) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4983](https://github.com/LizardByte/Sunshine/pull/4983) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4975](https://github.com/LizardByte/Sunshine/pull/4975) +* build(deps): bump peter-evans/create-pull-request from 8.1.0 to 8.1.1 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4974](https://github.com/LizardByte/Sunshine/pull/4974) +* build(deps): bump actions/upload-artifact from 7.0.0 to 7.0.1 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4973](https://github.com/LizardByte/Sunshine/pull/4973) +* fix(linux/xdgportal): Additional error handling and minor code improvements by [@Kishi85](https://github.com/Kishi85) in [#4979](https://github.com/LizardByte/Sunshine/pull/4979) +* feat(linux/vulkan): enable RADV low-latency Vulkan Video encoding by [@neatnoise](https://github.com/neatnoise) in [#4984](https://github.com/LizardByte/Sunshine/pull/4984) +* build(deps-dev): bump vite from 6.4.1 to 6.4.2 by [@dependabot[bot]](https://github.com/apps/dependabot) in [#4985](https://github.com/LizardByte/Sunshine/pull/4985) +* revert: "feat(linux/vulkan): enable RADV low-latency Vulkan Video encoding" by [@neatnoise](https://github.com/neatnoise) in [#4989](https://github.com/LizardByte/Sunshine/pull/4989) +* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#4990](https://github.com/LizardByte/Sunshine/pull/4990) +* fix(linux/vulkan): encoder not working on NVIDIA GPUs by [@Signynt](https://github.com/Signynt) in [#4994](https://github.com/LizardByte/Sunshine/pull/4994) +* chore(deps): update dependency @vitejs/plugin-vue to v6.0.6 by [@renovate[bot]](https://github.com/apps/renovate) in [#4992](https://github.com/LizardByte/Sunshine/pull/4992) +* chore(deps): update actions/cache action to v5.0.5 by [@renovate[bot]](https://github.com/apps/renovate) in [#4991](https://github.com/LizardByte/Sunshine/pull/4991) +* fix(linux/vulkan): guard deprecated FFmpeg Vulkan queue lock/unlock by [@neatnoise](https://github.com/neatnoise) in [#5005](https://github.com/LizardByte/Sunshine/pull/5005) +* chore(deps): update dependency setuptools to v81 by [@renovate[bot]](https://github.com/apps/renovate) in [#5003](https://github.com/LizardByte/Sunshine/pull/5003) +* chore(deps): update lizardbyte/actions action to v2026.417.35446 by [@renovate[bot]](https://github.com/apps/renovate) in [#5012](https://github.com/LizardByte/Sunshine/pull/5012) +* chore(deps): update dependency marked to v18.0.1 by [@renovate[bot]](https://github.com/apps/renovate) in [#5011](https://github.com/LizardByte/Sunshine/pull/5011) +* chore(deps): update vmactions/freebsd-vm action to v1.4.5 by [@renovate[bot]](https://github.com/apps/renovate) in [#5001](https://github.com/LizardByte/Sunshine/pull/5001) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5015](https://github.com/LizardByte/Sunshine/pull/5015) +* chore(deps): update msys2/setup-msys2 action to v2.31.1 by [@renovate[bot]](https://github.com/apps/renovate) in [#5016](https://github.com/LizardByte/Sunshine/pull/5016) +* chore(deps): update dependency @codecov/vite-plugin to v2 by [@renovate[bot]](https://github.com/apps/renovate) in [#4996](https://github.com/LizardByte/Sunshine/pull/4996) +* fix(linux): auto-detect GPU with connected display for VAAPI and Vulkan by [@neatnoise](https://github.com/neatnoise) in [#4961](https://github.com/LizardByte/Sunshine/pull/4961) +* refactor(linux/xdgportal): Split pipewire code into it's own file so it can be reused by [@Kishi85](https://github.com/Kishi85) in [#5008](https://github.com/LizardByte/Sunshine/pull/5008) +* fix(rtsp): ignore clientRefreshRateX100 if more than 1% variance from framerate by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#5027](https://github.com/LizardByte/Sunshine/pull/5027) +* fix: Resolve minimum_fps_target related issues on all platforms by [@psyke83](https://github.com/psyke83) in [#4967](https://github.com/LizardByte/Sunshine/pull/4967) +* fix(linux/vulkan): remove deprecated FFmpeg Vulkan queue lock/unlock by [@neatnoise](https://github.com/neatnoise) in [#5031](https://github.com/LizardByte/Sunshine/pull/5031) +* feat(nvenc): support for split frame encoding on GPUs with 2+ nvenc blocks by [@andygrundman](https://github.com/andygrundman) in [#4892](https://github.com/LizardByte/Sunshine/pull/4892) +* refactor(linux/xdgportal): Move elevated privilege check/drop to misc.cpp by [@Kishi85](https://github.com/Kishi85) in [#5026](https://github.com/LizardByte/Sunshine/pull/5026) +* fix(linux/vulkan): change default rate control from VBR to CBR by [@neatnoise](https://github.com/neatnoise) in [#5032](https://github.com/LizardByte/Sunshine/pull/5032) +* chore(deps): update actions/setup-node action to v6.4.0 by [@renovate[bot]](https://github.com/apps/renovate) in [#5033](https://github.com/LizardByte/Sunshine/pull/5033) +* chore(deps): update dependency marked to v18.0.2 by [@renovate[bot]](https://github.com/apps/renovate) in [#5022](https://github.com/LizardByte/Sunshine/pull/5022) +* build(deps): bump third-party/nv-codec-headers from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5035](https://github.com/LizardByte/Sunshine/pull/5035) +* fix(linux): multi-GPU segfault + wlr GPU auto selection, DMA-BUF metadata planes and revert wlr vulkan support by [@neatnoise](https://github.com/neatnoise) in [#5030](https://github.com/LizardByte/Sunshine/pull/5030) +* chore(deps): update apple-actions/import-codesign-certs action to v7 by [@renovate[bot]](https://github.com/apps/renovate) in [#5037](https://github.com/LizardByte/Sunshine/pull/5037) +* fix: touch scaling bug and initialize display variables as 0 by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#4758](https://github.com/LizardByte/Sunshine/pull/4758) +* fix(network): restore ExternalIP in server info response by [@neatnoise](https://github.com/neatnoise) in [#5043](https://github.com/LizardByte/Sunshine/pull/5043) +* chore(deps): update dependency vue to v3.5.33 by [@renovate[bot]](https://github.com/apps/renovate) in [#5042](https://github.com/LizardByte/Sunshine/pull/5042) +* fix(linux/pipewire): Fix absolute touchinput for multi-monitor by [@Kishi85](https://github.com/Kishi85) in [#5041](https://github.com/LizardByte/Sunshine/pull/5041) +* refactor(linux): remove leftovers from portalgrab -> pipewire split by [@psyke83](https://github.com/psyke83) in [#5039](https://github.com/LizardByte/Sunshine/pull/5039) +* docs(readme): restructure feature compatibility tables by [@neatnoise](https://github.com/neatnoise) in [#5040](https://github.com/LizardByte/Sunshine/pull/5040) +* fix(linux/pipewire): calculate env_width/env_height from all displays for pipewire_display_t by [@Kishi85](https://github.com/Kishi85) in [#5050](https://github.com/LizardByte/Sunshine/pull/5050) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5052](https://github.com/LizardByte/Sunshine/pull/5052) +* chore(deps): update dependency vue-i18n to v11.4.0 - autoclosed by [@renovate[bot]](https://github.com/apps/renovate) in [#5048](https://github.com/LizardByte/Sunshine/pull/5048) +* feat(linux/xdgportal): Simplify display matching logic by [@Kishi85](https://github.com/Kishi85) in [#5053](https://github.com/LizardByte/Sunshine/pull/5053) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5055](https://github.com/LizardByte/Sunshine/pull/5055) +* feat(linux/pipewire): Add support for pipewire stream selection by object serial by [@Kishi85](https://github.com/Kishi85) in [#5054](https://github.com/LizardByte/Sunshine/pull/5054) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5056](https://github.com/LizardByte/Sunshine/pull/5056) +* feat(capture/linux): add KWin direct screencast capture method by [@Kishi85](https://github.com/Kishi85) in [#5009](https://github.com/LizardByte/Sunshine/pull/5009) +* feat(linux/pipewire): Handle HDR(Rec. 2020/SMPTE 2084 PQ) visuals by [@garnacho](https://github.com/garnacho) in [#5025](https://github.com/LizardByte/Sunshine/pull/5025) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5073](https://github.com/LizardByte/Sunshine/pull/5073) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5070](https://github.com/LizardByte/Sunshine/pull/5070) +* build(deps): bump third-party/wlr-protocols from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5072](https://github.com/LizardByte/Sunshine/pull/5072) +* chore(deps): update dependency marked to v18.0.3 by [@renovate[bot]](https://github.com/apps/renovate) in [#5068](https://github.com/LizardByte/Sunshine/pull/5068) +* feat(input): implement multiseat support and virtual device naming by [@willybarret](https://github.com/willybarret) in [#4954](https://github.com/LizardByte/Sunshine/pull/4954) +* fix(linux): security: drop CAP_SYS_ADMIN when possible, retain CAP_SYS_NICE by [@psyke83](https://github.com/psyke83) in [#5075](https://github.com/LizardByte/Sunshine/pull/5075) +* feat(linux/wlgrab): match output_name by xdg_output name by [@netanelbi](https://github.com/netanelbi) in [#5071](https://github.com/LizardByte/Sunshine/pull/5071) +* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5077](https://github.com/LizardByte/Sunshine/pull/5077) +* chore(deps): update dependency vue to v3.5.34 by [@renovate[bot]](https://github.com/apps/renovate) in [#5078](https://github.com/LizardByte/Sunshine/pull/5078) +* build(linux): add ubuntu 26.04 support by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#5051](https://github.com/LizardByte/Sunshine/pull/5051) +* build(linux): fix gcov detection for ArchLinux by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#5081](https://github.com/LizardByte/Sunshine/pull/5081) +* chore(deps): update dependency vue-i18n to v11.4.2 by [@renovate[bot]](https://github.com/apps/renovate) in [#5080](https://github.com/LizardByte/Sunshine/pull/5080) +* build(web-ui): commit lock file by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#5083](https://github.com/LizardByte/Sunshine/pull/5083) +* fix: show actual bind address in Web UI log message by [@aliefe04](https://github.com/aliefe04) in [#4897](https://github.com/LizardByte/Sunshine/pull/4897) +* build(windows): Always setup Node.js in Windows CI by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#5084](https://github.com/LizardByte/Sunshine/pull/5084) +* feat(nvenc): support intraRefresh for h264, add outputRecoveryPointSEI=1 to intra-refresh config for h264 and hevc by [@andygrundman](https://github.com/andygrundman) in [#5091](https://github.com/LizardByte/Sunshine/pull/5091) +* fix: building without the system tray enabled by [@chewi](https://github.com/chewi) in [#5092](https://github.com/LizardByte/Sunshine/pull/5092) +* build(deps): bump third-party/build-deps from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5097](https://github.com/LizardByte/Sunshine/pull/5097) +* build(deps): bump packaging/linux/flatpak/deps/shared-modules from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5098](https://github.com/LizardByte/Sunshine/pull/5098) +* ci: remove moonlight discord release announcement by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#5099](https://github.com/LizardByte/Sunshine/pull/5099) +* build(deps): Add SUNSHINE_SYSTEM_VULKAN_HEADERS option by [@chewi](https://github.com/chewi) in [#5103](https://github.com/LizardByte/Sunshine/pull/5103) +* build(macos): configure C++ standard and ICU root by [@martona](https://github.com/martona) in [#5101](https://github.com/LizardByte/Sunshine/pull/5101) +* fix(macos): preserve modifier state in input events by [@martona](https://github.com/martona) in [#5102](https://github.com/LizardByte/Sunshine/pull/5102) +* build(windows): drop unused boost-locale by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#5116](https://github.com/LizardByte/Sunshine/pull/5116) +* ci(windows): add linkage check by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#5118](https://github.com/LizardByte/Sunshine/pull/5118) +* chore(deps): update azure/trusted-signing-action action to v2 by [@renovate[bot]](https://github.com/apps/renovate) in [#5117](https://github.com/LizardByte/Sunshine/pull/5117) +* fix(macos): provide left/right identity for modifiers by [@martona](https://github.com/martona) in [#5115](https://github.com/LizardByte/Sunshine/pull/5115) +* feat(web-ui): add logout by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#5121](https://github.com/LizardByte/Sunshine/pull/5121) +* build(deps): bump third-party/moonlight-common-c from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5123](https://github.com/LizardByte/Sunshine/pull/5123) +* chore(deps): update dependency @vitejs/plugin-vue to v6.0.7 by [@renovate[bot]](https://github.com/apps/renovate) in [#5122](https://github.com/LizardByte/Sunshine/pull/5122) +* build(deps): bump third-party/plasma-wayland-protocols from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5124](https://github.com/LizardByte/Sunshine/pull/5124) +* fix(linux/pipewire): Add 10-bit RGB formats with 2-bit Alpha to format_map by [@flibitijibibo](https://github.com/flibitijibibo) in [#5088](https://github.com/LizardByte/Sunshine/pull/5088) +* chore: update global workflows by [@LizardByte-bot](https://github.com/LizardByte-bot) in [#5126](https://github.com/LizardByte/Sunshine/pull/5126) +* fix(audio): fix install of Steam Streaming Speakers driver by [@andygrundman](https://github.com/andygrundman) in [#5125](https://github.com/LizardByte/Sunshine/pull/5125) +* build(deps): bump third-party/doxyconfig from to by [@dependabot[bot]](https://github.com/apps/dependabot) in [#5127](https://github.com/LizardByte/Sunshine/pull/5127) +* build: bump freebsd version to 14.4 and build-deps to v2026.516.30821 by [@ReenigneArcher](https://github.com/ReenigneArcher) in [#5129](https://github.com/LizardByte/Sunshine/pull/5129) + +## New Contributors +* [@xd-byte](https://github.com/xd-byte) made their first contribution in [#4340](https://github.com/LizardByte/Sunshine/pull/4340) +* [@SuperSandro2000](https://github.com/SuperSandro2000) made their first contribution in [#4249](https://github.com/LizardByte/Sunshine/pull/4249) +* [@mcourteaux](https://github.com/mcourteaux) made their first contribution in [#4391](https://github.com/LizardByte/Sunshine/pull/4391) +* [@StringWeaver](https://github.com/StringWeaver) made their first contribution in [#4424](https://github.com/LizardByte/Sunshine/pull/4424) +* [@Garmelon](https://github.com/Garmelon) made their first contribution in [#4442](https://github.com/LizardByte/Sunshine/pull/4442) +* [@a-turtle9302](https://github.com/a-turtle9302) made their first contribution in [#4471](https://github.com/LizardByte/Sunshine/pull/4471) +* [@Freakness109](https://github.com/Freakness109) made their first contribution in [#4579](https://github.com/LizardByte/Sunshine/pull/4579) +* [@Dregu](https://github.com/Dregu) made their first contribution in [#4588](https://github.com/LizardByte/Sunshine/pull/4588) +* [@amarshall](https://github.com/amarshall) made their first contribution in [#4568](https://github.com/LizardByte/Sunshine/pull/4568) +* [@craimasjien](https://github.com/craimasjien) made their first contribution in [#4532](https://github.com/LizardByte/Sunshine/pull/4532) +* [@tstokes22](https://github.com/tstokes22) made their first contribution in [#4407](https://github.com/LizardByte/Sunshine/pull/4407) +* [@juliosanz](https://github.com/juliosanz) made their first contribution in [#4594](https://github.com/LizardByte/Sunshine/pull/4594) +* [@yakushabb](https://github.com/yakushabb) made their first contribution in [#4604](https://github.com/LizardByte/Sunshine/pull/4604) +* [@coleleavitt](https://github.com/coleleavitt) made their first contribution in [#4473](https://github.com/LizardByte/Sunshine/pull/4473) +* [@cilps](https://github.com/cilps) made their first contribution in [#4627](https://github.com/LizardByte/Sunshine/pull/4627) +* [@Yundi339](https://github.com/Yundi339) made their first contribution in [#4694](https://github.com/LizardByte/Sunshine/pull/4694) +* [@herboh](https://github.com/herboh) made their first contribution in [#4665](https://github.com/LizardByte/Sunshine/pull/4665) +* [@leenr](https://github.com/leenr) made their first contribution in [#4754](https://github.com/LizardByte/Sunshine/pull/4754) +* [@michalzxc](https://github.com/michalzxc) made their first contribution in [#4822](https://github.com/LizardByte/Sunshine/pull/4822) +* [@4xMSAA](https://github.com/4xMSAA) made their first contribution in [#4833](https://github.com/LizardByte/Sunshine/pull/4833) +* [@htrex](https://github.com/htrex) made their first contribution in [#4874](https://github.com/LizardByte/Sunshine/pull/4874) +* [@ThomVanL](https://github.com/ThomVanL) made their first contribution in [#4209](https://github.com/LizardByte/Sunshine/pull/4209) +* [@aliefe04](https://github.com/aliefe04) made their first contribution in [#4890](https://github.com/LizardByte/Sunshine/pull/4890) +* [@MrAwesome](https://github.com/MrAwesome) made their first contribution in [#4912](https://github.com/LizardByte/Sunshine/pull/4912) +* [@neatnoise](https://github.com/neatnoise) made their first contribution in [#4771](https://github.com/LizardByte/Sunshine/pull/4771) +* [@kmzs123](https://github.com/kmzs123) made their first contribution in [#4902](https://github.com/LizardByte/Sunshine/pull/4902) +* [@atassis](https://github.com/atassis) made their first contribution in [#4956](https://github.com/LizardByte/Sunshine/pull/4956) +* [@ykshek](https://github.com/ykshek) made their first contribution in [#4963](https://github.com/LizardByte/Sunshine/pull/4963) +* [@Signynt](https://github.com/Signynt) made their first contribution in [#4994](https://github.com/LizardByte/Sunshine/pull/4994) +* [@renovate[bot]](https://github.com/apps/renovate) made their first contribution in [#4992](https://github.com/LizardByte/Sunshine/pull/4992) +* [@garnacho](https://github.com/garnacho) made their first contribution in [#5025](https://github.com/LizardByte/Sunshine/pull/5025) +* [@willybarret](https://github.com/willybarret) made their first contribution in [#4954](https://github.com/LizardByte/Sunshine/pull/4954) +* [@netanelbi](https://github.com/netanelbi) made their first contribution in [#5071](https://github.com/LizardByte/Sunshine/pull/5071) +* [@martona](https://github.com/martona) made their first contribution in [#5101](https://github.com/LizardByte/Sunshine/pull/5101) +* [@flibitijibibo](https://github.com/flibitijibibo) made their first contribution in [#5088](https://github.com/LizardByte/Sunshine/pull/5088) + +**Full Changelog**: https://github.com/LizardByte/Sunshine/compare/v2025.924.154138...v2026.516.143833 + +--- +## Contributors +dependabot[bot]ReenigneArcherpsyke83LizardByte-botrenovate[bot]andygrundmanneatnoiseKishi85PVermeercgutmanchewijuliosanzmartonarbqvqaliefe04mcourteauxns60894xMSAADreguFreakness109GarmelonMrAwesomeSignyntStringWeaverSuperSandro2000ThomVanLYundi339a-turtle9302amarshallatassiscilpscoleleavittcraimasjieneduardomozartflibitijibibogarnachoherbohhtrexkmzs123leenrmariotakumichalzxcnetanelbitstokes22willybarretxd-byteyakushabbykshek + + +--- +📦 **Assets:** + +| ⬇️ Download | #️⃣ Download Count | 🛡️ VirusTotal | +|-------------|-------------------|---------------| +| [Sunshine-FreeBSD-14.4-aarch64.pkg](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-FreeBSD-14.4-aarch64.pkg) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-FreeBSD-14.4-aarch64.pkg?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:3a64900d2c7c217be569ffcbeaf67523316b635484255a0bc7b0719466de889c?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/YTg2NTIzN2EwZDY0MzQ3ZDkwOGYxNWYwMGU4YjE4Njk6MTc3ODk1NjI5Mg==) | +| [Sunshine-FreeBSD-14.4-amd64.pkg](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-FreeBSD-14.4-amd64.pkg) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-FreeBSD-14.4-amd64.pkg?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:c39a034088c308eb79487183ec42b23930ed1ceee5fa20a7ff85117dd382ce97?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/Y2I3YjAxYjYzMTgyMGFiZmYyZDg0YTczYjZmNmQ1NTU6MTc3ODk1NjI5NQ==) | +| [Sunshine-Windows-AMD64-debuginfo.7z](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-Windows-AMD64-debuginfo.7z) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-Windows-AMD64-debuginfo.7z?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:714578ab806b8a450ed2e84608dcce85f3e911ee21c6c102e4e248c8c4e17f07?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/NzQ3NzVmOGVlNWFhMjdiMDFjNmJjOTI2MDkwMTZhMjA6MTc3ODk1NjI5OA==) | +| [Sunshine-Windows-AMD64-installer.exe](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-Windows-AMD64-installer.exe) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-Windows-AMD64-installer.exe?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:25266f759e2ea974a31d9520ca8756f08ed643f250e00b170491b2fd0cfb4d17?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/Y2FjMDdhNTRmOWU0NGRkYjRmNWNiZWM5YWZmZGMyNzM6MTc3ODk1NjMwMg==) | +| [Sunshine-Windows-AMD64-installer.msi](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-Windows-AMD64-installer.msi) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-Windows-AMD64-installer.msi?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:e7208b11a4ab9dd89871133a054bbb8dc55dfbba408227b0eccab22c60b273a2?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/MGFlMTcwYTBjZTgwZDQwYWY4MGUzYzkxZTk2ZWQwYTk6MTc3ODk1NjM1NQ==) | +| [Sunshine-Windows-AMD64-portable.zip](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-Windows-AMD64-portable.zip) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-Windows-AMD64-portable.zip?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:0a3af3dde43b8f2c94ffe04b850ad736d6e1be2b75906779d7094a5ad9d4783b?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/ZDM5YTBlYjY4ZGRiODdiMTI3OGEyMDZhZTE5MDZlNzE6MTc3ODk1NjM1OQ==) | +| [Sunshine-Windows-ARM64-debuginfo.7z](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-Windows-ARM64-debuginfo.7z) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-Windows-ARM64-debuginfo.7z?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:fd1de8d355e2b0bd9a2dca367e98ce48c5176935b1b86f720df69ea4f9252116?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/NjY3ZjBhMzE1MjQyNTJjMWRlYjhhZTIxYTg5NTY4OWE6MTc3ODk1NjM2Mg==) | +| [Sunshine-Windows-ARM64-installer.exe](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-Windows-ARM64-installer.exe) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-Windows-ARM64-installer.exe?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:a5d9de0278f8ac0286e1178ecc5b25aefcd3213252717a81a64bf33d0d45615a?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/YzIyZmFjMjYxOWE2YTc1NzliYzk4NDQ2ODhjZjMyYWY6MTc3ODk1NjM2NQ==) | +| [Sunshine-Windows-ARM64-installer.msi](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-Windows-ARM64-installer.msi) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-Windows-ARM64-installer.msi?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:d00c60140fa75445106f613874b28885bc80b174bae4aa29f8a6aed30764fdb5?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/YWQxMTg4NDY3MjM0OWNlN2JhZDJiYTEyMDZjMzAzMjk6MTc3ODk1NjM2OQ==) | +| [Sunshine-Windows-ARM64-portable.zip](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-Windows-ARM64-portable.zip) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-Windows-ARM64-portable.zip?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:bbed46a10f6496b4c0b23509b6d788e84e9c73ae76e0a73f858d132868e15df9?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/Yjg3MjY1ZmU3ZmRlYTYyMzRkZjM1MzQzODUwMTg2YzU6MTc3ODk1NjQxOQ==) | +| [Sunshine-macOS-arm64.dmg](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-macOS-arm64.dmg) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-macOS-arm64.dmg?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:ab31ad716117b913c6aab104268e820595c0baf89b319fd3b75d34c9ae8ddd1e?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/ZDIyNTUxZTZkYmM5YjY4OTNmYWE0NjYyNmJhYjVmM2Q6MTc3ODk1NjQzMQ==) | +| [Sunshine-macOS-x86_64.dmg](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-macOS-x86_64.dmg) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-macOS-x86_64.dmg?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:6b17c8d5a20cb2d2fa7c3bb9387d1412e63bb5c964d6820af91dea12f31a665f?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/ZjhjOWI3MTQ1NDM3MWVjMGQ5ZWI5Y2JhMWI2ZThkODg6MTc3ODk1NjQzOA==) | +| [flathub.tar.gz](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/flathub.tar.gz) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/flathub.tar.gz?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:a0b80960000e0d65ae47b29a653502bd59c3b5e3683c0810b6772865b4e8a23a?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/ZTE0ODgwMmQ0ZmEwY2IzZmQxYWYyN2Y5MDMxY2RjMzY6MTc3ODk1NjQzOQ==) | +| [sunshine-2026.516.143833-1-x86_64.pkg.tar.zst](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine-2026.516.143833-1-x86_64.pkg.tar.zst) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine-2026.516.143833-1-x86_64.pkg.tar.zst?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:676539cfb079f81f38e7001b85d72c39cd5bf25abe0956bab4577cb25afc5299?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/MGEwNjk0ODAwOGU0NWYzYjk5YzNkM2YyNTBlNDMyZTI6MTc3ODk1NjQ0Mw==) | +| [sunshine-debian-trixie-amd64.deb](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine-debian-trixie-amd64.deb) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine-debian-trixie-amd64.deb?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:b9b65f2be93b3e30be0710a940a616b1381da5bc6d858dce33bc0094d7fd4131?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/NjdlOGNlOGE1MTU0MDlhMmEwYjcyY2M1MjlkZjg3Yjg6MTc3ODk1NjQ4Mg==) | +| [sunshine-debian-trixie-arm64.deb](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine-debian-trixie-arm64.deb) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine-debian-trixie-arm64.deb?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:69736296ca56259ebde16ecbee8fb3fefb2df2880ec9789912756193fafca3ec?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/YTkyZDgyNmVlNTNhNmQzY2MzOWI0YzJjNDkzZTZhNDU6MTc3ODk1NjQ4NA==) | +| [sunshine-ubuntu-22.04-amd64.deb](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine-ubuntu-22.04-amd64.deb) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine-ubuntu-22.04-amd64.deb?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:d815d04002cfd6e6246aaf4aa9a7e10924442440fa88f233902aa737b6fb9c24?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/YTQ4NjYyYzQ0MzliYjE1YzY2MDBiNTRkYjE1MzQ0ZDQ6MTc3ODk1NjQ4OA==) | +| [sunshine-ubuntu-22.04-arm64.deb](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine-ubuntu-22.04-arm64.deb) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine-ubuntu-22.04-arm64.deb?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:62ac3469773b9244f512e23a1454cbed39c7205d120a8709fa799bb6dbf76a10?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/MGRmYWVlMmJmMWVjNjhiZGY3MWIzOTFjZWMzMWE4ZTA6MTc3ODk1NjUwMw==) | +| [sunshine-ubuntu-24.04-amd64.deb](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine-ubuntu-24.04-amd64.deb) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine-ubuntu-24.04-amd64.deb?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:6df8900f23c9c056252eea51639507b8239a1d1241308ab8923cb402b0ca653b?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/MzQ0MmZjMGQ3MDE4NDRiYWI4ZTQ3ODdiMjllY2FjOGE6MTc3ODk1NjUxOA==) | +| [sunshine-ubuntu-24.04-arm64.deb](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine-ubuntu-24.04-arm64.deb) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine-ubuntu-24.04-arm64.deb?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:9290637b85598fb6eba371651524d6c2a4bd62d0f357ab9a76f6636a6cc26033?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/MjE4NDM5MTFhMzdlMzViM2Y2ZTQ2ZTViYzUzODQ0NTc6MTc3ODk1NjU0NA==) | +| [sunshine-ubuntu-26.04-amd64.deb](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine-ubuntu-26.04-amd64.deb) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine-ubuntu-26.04-amd64.deb?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:c7e5452f8cf2609dffbdeda63ca3be7ee45f91505dc496844d65924817cb2517?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/NDhjNGMxNDJmNzk0YmRkMDllZWIyZjFjMjVlZjQ3ZTQ6MTc3ODk1NjU0OA==) | +| [sunshine-ubuntu-26.04-arm64.deb](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine-ubuntu-26.04-arm64.deb) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine-ubuntu-26.04-arm64.deb?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:24d60caefe3593e095d9ab595b73b84024a769426c5e2d4cd54fe39477782a93?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/MzEyOWM2ZjQ4ZjYxZjBjYWMyYTk3MjBmYmM2M2U0Yjk6MTc3ODk1NjU2Mw==) | +| [sunshine.AppImage](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine.AppImage) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine.AppImage?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:d0ee0a9cfb66f27869b559455f84622d21615047ccf3443c9a2f572ca971c7a2?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/ZjU5MmJkNmI3MGIwNzFjOGQ3ZDY0YzE2YTY4ZWE1NDU6MTc3ODk1NjU3OA==) | +| [sunshine.pkg.tar.gz](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine.pkg.tar.gz) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine.pkg.tar.gz?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:1f6d6782ce2d4fe196ff1dad8e8c52bcc29f5466533abb26e70a3066ee2956fa?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/MzJjYTA0YWRiOGM3MDU0OWFhZTgwNDM1Y2FmMmY4OWY6MTc3ODk1NjU5MQ==) | +| [sunshine.rb](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine.rb) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine.rb?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:4cc4de4b1868e55d55d80faaf50dd493f14e623f1f67e9b17f96a092f5df059f?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/YzFlOTcxNjdhZTM2ZTI2ODExODE5ZjNmYzQwZjI4M2Y6MTc3ODk1NjYwNg==) | +| [sunshine_aarch64.flatpak](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine_aarch64.flatpak) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine_aarch64.flatpak?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:337e1c9cc01ca21386cb20a933f42a9033112ba0658f1f76a38efd29aede5090?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/YjQ4ZmUxY2Y4MTdhN2Q1YjIyMWYyMWNlYmIwOGIyYmU6MTc3ODk1NjYyNA==) | +| [sunshine_debug_aarch64.flatpak](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine_debug_aarch64.flatpak) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine_debug_aarch64.flatpak?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:4a05c39e43a663e5527b364a683a3c85cd4f5f511c5bae89a60ef9f2d39165c1?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/YTQ5NzVjMTk1YjczMmQ2YjhhMGQ3MzM5MTYwN2QxN2Q6MTc3ODk1NjYzOA==) | +| [sunshine_debug_x86_64.flatpak](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine_debug_x86_64.flatpak) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine_debug_x86_64.flatpak?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:a40372059c6ae332edde381fa117ad3433c7c7195b376ff5e691732e8d2832de?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/YzA4NGJmY2M1OTRiYzY5OGYyN2M3Nzc5Y2UzMjI1YzI6MTc3ODk1NjY1Mg==) | +| [sunshine_x86_64.flatpak](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/sunshine_x86_64.flatpak) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/sunshine_x86_64.flatpak?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:78d0a68482953b64790f59acbaea7b3ae6c7d3bca71c08249531efef2de44fce?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/YTMxNzJmYWRjMjdiMzY0NGM5NmE4YjBiM2Y5ZjdjNzA6MTc3ODk1NjY2OQ==) | +| [Sunshine-2026.516.143833-1.fc42.aarch64.rpm](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-2026.516.143833-1.fc42.aarch64.rpm) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-2026.516.143833-1.fc42.aarch64.rpm?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:1b93b0f2167afdaac73238a99c1b6caa2105ec02b98911acab6fbce75041e7a9?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/MDg2ZDFhMTgzZGYyYWJkMGQ0ZTUxYWI3NDYxOWM3YTY6MTc3ODk1OTEzMg==) | +| [Sunshine-2026.516.143833-1.fc42.x86_64.rpm](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-2026.516.143833-1.fc42.x86_64.rpm) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-2026.516.143833-1.fc42.x86_64.rpm?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:2769ab87c1c05e99429e984dfb331e82f0e8bf61146edd1c1973fac4a02d0048?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/NDk3MDE4YzIzNjYzNjU0YzkzMDMxZGZmNmI1Yzc0YWI6MTc3ODk1OTEzMw==) | +| [Sunshine-2026.516.143833-1.fc43.aarch64.rpm](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-2026.516.143833-1.fc43.aarch64.rpm) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-2026.516.143833-1.fc43.aarch64.rpm?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:820a61e5481ee625a861d5d9de620288a7dccc6b7e2c5460904303cef715fc01?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/NjE3ODZlZGZlZTVjZTBiYzE5YTY4NmI5ZWFiMjQ1ODg6MTc3ODk1OTEzNQ==) | +| [Sunshine-2026.516.143833-1.fc43.x86_64.rpm](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-2026.516.143833-1.fc43.x86_64.rpm) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-2026.516.143833-1.fc43.x86_64.rpm?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:26dc4eb9c947e15ac872b6c854751427b36b0a83210708308935bd336d4ab46c?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/NDdhYzE4MTYxZjBmZTk5NzU0NzIwNmE5OTkyMTliZDY6MTc3ODk1OTEzNw==) | +| [Sunshine-2026.516.143833-1.fc44.aarch64.rpm](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-2026.516.143833-1.fc44.aarch64.rpm) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-2026.516.143833-1.fc44.aarch64.rpm?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:2dc9392138a649e870fbf81599bb35f5cdbc53e909c206f21aa13fc4a7a3cb01?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/ODI2MThmMWEyMWRiMzc1YTczOThiY2RlZDZlNzY2NDk6MTc3ODk1OTE5Mg==) | +| [Sunshine-2026.516.143833-1.fc44.x86_64.rpm](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-2026.516.143833-1.fc44.x86_64.rpm) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-2026.516.143833-1.fc44.x86_64.rpm?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:1d396d0c8fa2f560b3fdbddb3e7c05f8c0b6d1f53bc6a470e87739b5ed4bf020?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/MDM2ZTlkNGQ1OTM3NjUxNmVkODJhNTdhNTBlNzJiNzI6MTc3ODk1OTE5Mw==) | +| [Sunshine-2026.516.143833-1.fc45.aarch64.rpm](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-2026.516.143833-1.fc45.aarch64.rpm) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-2026.516.143833-1.fc45.aarch64.rpm?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:7b071d5a7eed35b51119543a902aeb5243eded1d7a3f3ea510b2a5c968b0c352?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/MDk1NmMwYThhMDZhMmJhYzk0NGMxNTA4ZDc5MTM1OTE6MTc3ODk1OTE5NQ==) | +| [Sunshine-2026.516.143833-1.fc45.x86_64.rpm](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-2026.516.143833-1.fc45.x86_64.rpm) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-2026.516.143833-1.fc45.x86_64.rpm?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:ff1412f7f2b76b7fd02960e68d164199aa1caf27ff265c93a3aceaf6915d9e02?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/OGEzZDM3YTI5ODdiNjY4Y2I3YTViM2NhOGJmZjM1ZmU6MTc3ODk1OTE5Ng==) | +| [Sunshine-2026.516.143833-1.suse.lp156.aarch64.rpm](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-2026.516.143833-1.suse.lp156.aarch64.rpm) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-2026.516.143833-1.suse.lp156.aarch64.rpm?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:6d5eb0cddb4ce2f4c78282bd0df6e549fa6d9680915c97799e26c17790b0f00c?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/YjllZTNjYTZlZmZhNzllNTBhOGUzYzE4ODljMDViYjE6MTc3ODk1OTIwOA==) | +| [Sunshine-2026.516.143833-1.suse.lp156.x86_64.rpm](https://github.com/LizardByte/Sunshine/releases/download/v2026.516.143833/Sunshine-2026.516.143833-1.suse.lp156.x86_64.rpm) | ![Downloads](https://img.shields.io/github/downloads/LizardByte/Sunshine/v2026.516.143833/Sunshine-2026.516.143833-1.suse.lp156.x86_64.rpm?style=flat-square&label=&displayAssetName=false) | [![VirusTotal](https://badges.cssnr.com/vt/id/sha256:d103c4c4b1786842dfd75a11f3187ac53515235312e7f342862fcd9195b91fbe?style=flat-square&icon=virustotal&label=)](https://www.virustotal.com/gui/file-analysis/Yzg4ZDZmN2NhYzg0NWQ4YjA2N2QxNDA4OWNkYzIxNjI6MTc3ODk1OTI1NA==) |