File sunshine.spec of Package sunshine
#
# spec file for package sunshine
#
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define appid dev.lizardbyte.app.Sunshine
Name: sunshine
Version: 2025.930.130407
Release: 1.1
Summary: Server for the Moonlight game streaming client
License: GPL-3.0-only
URL: https://github.com/LizardByte/sunshine
Source0: %{name}-%{version}.tar.gz
Source1: %{name}.firewalld
Source2: %{name}-webui.firewalld
Source3: package-lock.json
Source4: node_modules.spec.inc
Source5: README.SUSE
Source99: get-sources.sh
%include %{_sourcedir}/node_modules.spec.inc
Patch0: boost-opensuse16.patch
#Patch0: fix-boost-1.88.patch
#fix-boost-1.89: Remove boost_system linkage dependency
#The boost::system component is now header-only in Boost 1.89.0 and later. Remove explicit linkage to Boost::system in the Simple-Web-Server CMakeLists.txt to allow building against recent Boost versions (e.g., in OpenSUSE Tumbleweed).
#Patch1: fix-boost-1.89.patch
Patch2: fix-libs-sonames.patch
Patch3: fix-force-output-name.patch
BuildRequires: boost-devel >= 1.86.0
BuildRequires: c++_compiler
BuildRequires: cmake >= 3.20
BuildRequires: doxygen
BuildRequires: fdupes
BuildRequires: firewall-macros
BuildRequires: firewalld
BuildRequires: git-core
BuildRequires: graphviz
BuildRequires: hicolor-icon-theme
BuildRequires: icu
BuildRequires: libboost_filesystem-devel
BuildRequires: libboost_headers-devel
BuildRequires: libboost_locale-devel
BuildRequires: libboost_log-devel
BuildRequires: libboost_program_options-devel
BuildRequires: libboost_thread-devel
BuildRequires: local-npm-registry
BuildRequires: pkgconfig
BuildRequires: pkgconfig(ayatana-appindicator3-0.1)
BuildRequires: pkgconfig(gbm)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(libcap)
BuildRequires: pkgconfig(libcurl)
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libevdev)
BuildRequires: pkgconfig(libnotify)
BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(libva)
BuildRequires: pkgconfig(miniupnpc)
BuildRequires: pkgconfig(nlohmann_json)
BuildRequires: pkgconfig(numa)
BuildRequires: pkgconfig(openssl)
BuildRequires: pkgconfig(opus)
BuildRequires: pkgconfig(systemd)
BuildRequires: pkgconfig(udev)
BuildRequires: pkgconfig(vdpau)
BuildRequires: pkgconfig(wayland-protocols)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcb)
BuildRequires: pkgconfig(xfixes)
BuildRequires: pkgconfig(xinerama)
BuildRequires: pkgconfig(xrandr)
BuildRequires: pkgconfig(xtst)
Provides: bundled(libinputtino)
Recommends: %{name}-firewalld
ExclusiveArch: %{arm64} %{x86_64}
%description
Sunshine is a self-hosted game stream host for Moonlight. It has low
latency, cloud gaming server capabilities with support for hardware
encoding on AMD, Intel, and Nvidia GPUs. Software encoding is also
available. You can connect to Sunshine from any Moonlight client on a
variety of devices. A web UI is provided for configuration and client
pairing.
%package firewalld
Summary: Firewalld service for %{name}
Requires: firewalld
Requires: sunshine
Supplements: (%{name} and firewalld)
BuildArch: noarch
%description firewalld
%{summary}.
%prep
%autosetup -p1
cp %{SOURCE5} .
local-npm-registry %{_sourcedir} install --include=prod --include=dev --include=optional --include=peer
%build
export BUILD_VERSION=%{version}
%cmake \
-DBOOST_USE_STATIC=OFF \
-DBUILD_DOCS=OFF \
-DBUILD_TESTS=ON \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DSUNSHINE_ASSETS_DIR=share/%{name} \
-DSUNSHINE_BUILD_FACTORY=ON \
-DSUNSHINE_ENABLE_CUDA=OFF \
-DSUNSHINE_ENABLE_DRM=ON \
-DSUNSHINE_ENABLE_TRAY=ON \
-DSUNSHINE_ENABLE_VAAPI=ON \
-DSUNSHINE_ENABLE_WAYLAND=ON \
-DSUNSHINE_ENABLE_X11=ON \
-DSUNSHINE_EXECUTABLE_PATH=%{_bindir}/%{name} \
-DSUNSHINE_REQUIRE_TRAY=ON \
-DSUNSHINE_SYSTEM_WAYLAND_PROTOCOLS=ON \
-DTESTS_ENABLE_PYTHON_TESTS=ON
%cmake_build
%install
%cmake_install
install -d %{buildroot}%{_libdir}
install -Dm0644 %{SOURCE1} %{buildroot}%{_prefix}/lib/firewalld/services/%{name}.xml
install -Dm0644 %{SOURCE2} %{buildroot}%{_prefix}/lib/firewalld/services/%{name}-webui.xml
install -Dm0755 %{_builddir}/%{name}-%{version}/build/third-party/inputtino/libinputtino.so.0.1 %{buildroot}%{_libdir}
%fdupes %{buildroot}
%verify_permissions -e %{_bindir}/sunshine
%post -n %{name}-firewalld
%firewalld_reload
%postun -n %{name}-firewalld
%firewalld_reload
%ldconfig_scriptlets
%files
%license LICENSE
%doc NOTICE README.md README.SUSE
%{_bindir}/%{name}
%{_datadir}/%{name}
%{_datadir}/applications/%{appid}.desktop
%{_datadir}/applications/%{appid}.terminal.desktop
%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
%{_datadir}/icons/hicolor/scalable/status/%{name}-{locked,pausing,playing,tray}.svg
%{_datadir}/metainfo/%{appid}.metainfo.xml
%{_libdir}/libinputtino.so.0.1
%{_modulesloaddir}/60-%{name}.conf
%{_udevrulesdir}/60-%{name}.rules
%{_userunitdir}/%{name}.service
%files firewalld
%{_prefix}/lib/firewalld/services/%{name}.xml
%{_prefix}/lib/firewalld/services/%{name}-webui.xml
%changelog
* Wed Oct 1 2025 Jonatas Gonçalves <jonatas.sgoncalves@gmail.com>
- Update to version 2025.930.130407
* Added patch fix-boost-1.89.patch to fix build with boost 1.89.0
* ci(copr): Trigger release job only for non-prereleases by @ReenigneArcher in #4297
* build(Linux): Refactor Dockerfiles and build script for multi-stage, step-based builds by @ReenigneArcher in #4299
* build(deps): bump vue from 3.5.21 to 3.5.22 by @dependabot[bot] in #4301
* build(linux): update pkg-config systemd variable names by @PVermeer in #4303
* build(deps): bump third-party/build-deps from c38829d to 2840c8a by @dependabot[bot] in #4307
* build(packaging/homebrew): Rename class from @PROJECT_NAME@ to Sunshine by @ReenigneArcher in #4308
* build(deps): bump LizardByte/actions from 2025.917.25039 to 2025.927.193939 in the lizardbyte-actions group by @dependabot[bot] in #4309
* build(deps): bump LizardByte/actions from 2025.927.193939 to 2025.929.125237 in the lizardbyte-actions group by @dependabot[bot] in #4313
* Mon Sep 29 2025 Jonatas Gonçalves <jonatas.sgoncalves@gmail.com>
- Update to version 2025.929.5023:
* build(deps): bump LizardByte/actions from 2025.917.25039 to 2025.927.193939 in the lizardbyte-actions group (#4309)
* build(packaging/homebrew): Rename class from @PROJECT_NAME@ to Sunshine (#4308)
* build(deps): bump third-party/build-deps from `c38829d` to `2840c8a` (#4307)
* build(linux): update pkg-config systemd variable names (#4303)
* build(deps): bump vue from 3.5.21 to 3.5.22 (#4301)
* build(Linux): Refactor Dockerfiles and build script for multi-stage, step-based builds (#4299)
* ci(copr): Trigger release job only for non-prereleases (#4297)
* Wed Sep 24 2025 Jonatas Gonçalves <jonatas.sgoncalves@gmail.com>
- Update to version 2025.924.154138:
* chore(l10n): update translations (#4291)
* build(macos): Remove XCode dependency (#4293)
* fix(windows): Correct binPath syntax in install-service.bat (#4290)
* ci(copr): Use GITHUB_TOKEN instead of PAT to update release (#4289)
* Merge commit from fork
* fix(packaging/Linux): ensure that uhid is loaded automatically (#2906)
* chore(l10n): update translations (#4252)
* build(deps): bump @lizardbyte/shared-web from 2025.626.181239 to 2025.922.181114 (#4288)
* chore: update global workflows (#4280)
* build(deps): bump vite dependencies (#4279)
* Sun Sep 21 2025 Jonatas Gonçalves <jonatas.sgoncalves@gmail.com>
- Update to version 2025.921.42242:
* test: add external test commands (#4277)
* build(packaging/Linux): remove cuda as required dependency on aur (#4278)
* fix(Linux): udev rules style issues (#4276)
* build(deps): bump third-party/build-deps from `2450694` to `c38829d` (#4270)
* build(flatpak/deps): Switch miniupnpc source from archive to Git (#4275)
* ci: harden env variable usage (#4266)
* docs: use github admonition styles (#4263)
* build(deps): bump third-party/doxyconfig from `a73f908` to `1188ef2` (#4264)
* build(deps): bump LizardByte/actions from 2025.907.21827 to 2025.914.154454 in the lizardbyte-actions group (#4260)
* ci(homebrew): add macos-26 support (#4259)
* Tue Sep 2 2025 Richard Rahl <rrahl0@opensuse.org>
- fix patch to use the correct soname
* Sat Aug 30 2025 Jonatas Gonçalves <jonatas.sgoncalves@gmail.com>
- Update to version 2025.829.135256:
* fix(input): Add missing default value for ds5_inputtino_randomize_mac (#4207)
* build(deps): bump third-party/wlr-protocols from `92feabd` to `a741f0a` (#4204)
* build(deps): bump third-party/build-deps from `2420f01` to `2450694` (#4200)
* chore: update global workflows (#4183)
* build(deps): bump vue from 3.5.18 to 3.5.19 (#4181)
* build(Linux): Cleanup CUDA compiler options for modern versions (#4162)
* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from `5c5a6de` to `f03a673` (#4174)
* build(deps): bump third-party/build-deps from `1ef5735` to `df8e09d` (#4175)
* build(deps): bump third-party/wlr-protocols from `a5028af` to `92feabd` (#4172)
* build(deps): bump third-party/inputtino from `83cf70e` to `504f0ab` (#4173)
* Fri Aug 29 2025 Richard Rahl <rrahl0@opensuse.org>
- Update to version 2025.828.181854:
* build(deps): bump third-party/wlr-protocols from `92feabd` to `a741f0a` (#4204)
* build(deps): bump third-party/build-deps from `2420f01` to `2450694` (#4200)
* chore: update global workflows (#4183)
* build(deps): bump vue from 3.5.18 to 3.5.19 (#4181)
* build(Linux): Cleanup CUDA compiler options for modern versions (#4162)
* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from `5c5a6de` to `f03a673` (#4174)
* build(deps): bump third-party/build-deps from `1ef5735` to `df8e09d` (#4175)
* build(deps): bump third-party/wlr-protocols from `a5028af` to `92feabd` (#4172)
* build(deps): bump third-party/inputtino from `83cf70e` to `504f0ab` (#4173)
* fix(input): Cleanup and show additional gamepad options correctly on linux (DS5) (#4169)
- readd get-sources.sh, as we otherwise can't fetch the newer node dependencies
* Fri Aug 22 2025 Jonatas Gonçalves <jonatas.sgoncalves@gmail.com>
- Update to version 2025.821.130635:
* build(deps): bump vue from 3.5.18 to 3.5.19 (#4181)
* build(Linux): Cleanup CUDA compiler options for modern versions (#4162)
* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from `5c5a6de` to `f03a673` (#4174)
* build(deps): bump third-party/build-deps from `1ef5735` to `df8e09d` (#4175)
* build(deps): bump third-party/wlr-protocols from `a5028af` to `92feabd` (#4172)
* build(deps): bump third-party/inputtino from `83cf70e` to `504f0ab` (#4173)
* fix(input): Cleanup and show additional gamepad options correctly on linux (DS5) (#4169)
* build(toolchain): fix missing dependencies on clion-toolchain (#4163)
* feat(input/linux): allow ds5 gamepads to have a fixed device mac based on controller index (#4158)
* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from `d2fa57a` to `5c5a6de` (#4156)
* Thu Aug 14 2025 Jonatas Gonçalves <jonatas.sgoncalves@gmail.com>
- Update to version 2025.814.190855:
* build(deps): bump third-party/build-deps from `a21ef2e` to `1ef5735` (#4157)
* build(deps): bump LizardByte/actions from 2025.715.25226 to 2025.814.40518 in the lizardbyte-actions group (#4155)
* ci(linux): migrate to LizardByte/actions/actions/more_space action (#4141)
* build(deps): bump third-party/libdisplaydevice from `a067474` to `f31e46d` (#4151)
* build(deps): bump third-party/tray from `db96aea` to `0309a7c` (#4152)
* build(deps): bump actions/checkout from 4 to 5 in the github-actions group (#4148)
* build(deps): Update to FFmpeg 8.0 branch (#4143)
* style(sonar): fix cpp:S4962 (#4140)
* style(sonar): fix cpp:S6185 (#4133)
* build(linux): compile with gcc13+ and bump cuda (#4136)
* Fri Aug 1 2025 Jonatas Gonçalves <jonatas.sgoncalves@gmail.com>
- Remove unused get-sources.sh
* Thu Jul 31 2025 jonatas.sgoncalves@gmail.com
- Update to version 2025.731.125037:
* build(deps): bump third-party/build-deps from `a9a7f86` to `94369e6` (#4121)
* docs: Docs buffer overrun improvement (#3986)
* Wed Jul 30 2025 jonatas.sgoncalves@gmail.com
- Update to version 2025.730.31216:
* fix(video): restore the ability to set a minimum fps target (#4114)
* ci: use actionlint and problem matchers (#4116)
* build(homebrew): use new brew packages (#4103)
* chore(l10n): update translations (#4045)
* build(deps): bump vue-i18n from 11.1.10 to 11.1.11 (#4104)
* build(deps): bump vue from 3.5.17 to 3.5.18 (#4105)
* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from `f945399` to `7090720` (#4108)
* build(linux): linux_build.sh fixes (gcc/doxygen) (#4098)
* fix(api): don't require content type for apps delete endpoint (#4093)
* build(cmake): bump c++ to 23 (#4096)
* Sat Jul 19 2025 jonatas.sgoncalves@gmail.com
- Update to version 2025.719.143211:
* fix(api): don't require content type for apps delete endpoint (#4093)
* build(cmake): bump c++ to 23 (#4096)
* ci(release-homebrew-beta): fix artifact path (#4094)
* build(deps): add doxygen and graphviz to arch deps (#4092)
* ci(homebrew): release to tap with GitHub release (#4091)
* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from `903919f` to `f945399` (#4089)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `756091e` to `b63062b` (#4085)
* build(deps): bump third-party/moonlight-common-c from `0975a86` to `5f22801` (#4086)
* docs(readme): fix ci badge (#4090)
* fix(windows): bundle vigembus instead of downloading it (#4088)
* Sun Jun 29 2025 jonatas.sgoncalves@gmail.com
- Update to version 2025.628.4510:
* chore(l10n): update translations (#3582)
* fix(video): base min frame time strictly on client framerate (#3844)
* Merge commit from fork
* Merge commit from fork
* build(deps): bump wayland-protocols to 1.45 (#4017)
* build(deps): pin googletest to v1.17.0 (#4015)
* build(deps-dev): bump the dev-dependencies group across 1 directory with 2 updates (#4014)
* build(deps): bump @lizardbyte/shared-web from 2025.326.11214 to 2025.626.181239 (#4000)
* chore: update global workflows (#4008)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `1f8e591` to `8a98211` (#3982)
* Thu Jun 26 2025 jonatas.sgoncalves@gmail.com
- Update to version 2025.626.210050:
* build(deps): bump @lizardbyte/shared-web from 2025.326.11214 to 2025.626.181239 (#4000)
* chore: update global workflows (#4008)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `1f8e591` to `8a98211` (#3982)
* build(deps): bump packaging/linux/flatpak/deps/flatpak-builder-tools from `ea9bfa2` to `903919f` (#3959)
* build(deps): bump vue from 3.5.16 to 3.5.17 (#3987)
* build(flatpak): add exception for home filesystem access (#4005)
* build(deps): bump vue-i18n from 11.1.6 to 11.1.7 (#4001)
* build(deps): bump third-party/TPCircularBuffer from `8833b3a` to `cc52039` (#4002)
* fix(macOS): nil displayName on macOS 26 beta (#3991)
* fix(homebrew): workaround dynamic caveats audit error (#3994)
* Fri Dec 6 2024 Richard Rahl <rrahl0@opensuse.org>
- update to 2024.1206.133101:
* bump dependencies
* Wed Nov 27 2024 Richard Rahl <rrahl0@opensuse.org>
- update to 2024.1127.551:
* fix(cmake): configuration generation fails when BUILD_TESTS is OFF
* fix(process): avoid leaking zombies and fds in detached processes
* fix(rtsp): fix RTSP timeout after quitting an app
* build(docs): revert parallelize generation of dot graphs
- add a firewalld service for the webui
* Fri Nov 22 2024 Richard Rahl <rrahl0@opensuse.org>
- restrict BuildArch to aarch64 and x86_64
* Sat Sep 21 2024 Holden Fried <holdenrf2021@gmail.com>
- Packaging changes:
* Switching old appindicator to preferred ayatana-appindicator
* Sat Sep 21 2024 holdenrf2021@gmail.com
- Update to version 2024.921.45031:
* chore: update global workflows (#3210)
* chore: update global workflows (#3209)
* build(deps): bump LizardByte/homebrew-release-action from 2024.809.31635 to 2024.919.145818 (#3207)
* build(deps): bump LizardByte/setup-release-action from 2024.801.192524 to 2024.919.143601 (#3206)
* build(deps): bump LizardByte/create-release-action from 2024.614.221009 to 2024.919.143026 (#3204)
* Thu Sep 19 2024 Holden Fried <holdenrf2021@gmail.com>
- Packaging changes:
* Testing build fix for boost1.86 and new nightly...
* Wed Sep 18 2024 holdenrf2021@gmail.com
- Update to version 2024.916.233144:
* build(cmake): Prioritize vendored includes over system-wide (#3182)
* fix(macos/packaging): MacPorts startupitem.executable path (#3183)
* chore(l10n): update translations (#3160)
* docs(configure): auto generate open urls (#3163)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `d88a915` to `a4a03d7` (#3167)
* Merge commit from fork
* build(cmake): fix typo in publisher name variable (#3158)
* build(deps): bump vue from 3.5.2 to 3.5.3 (#3150)
* ci(windows): fix typo in publisher name (#3154)
* feat(web): use shared-web (#3116)
* Wed Sep 18 2024 holdenrf2021@gmail.com
- Update to version 2024.916.233144:
* build(cmake): Prioritize vendored includes over system-wide (#3182)
* fix(macos/packaging): MacPorts startupitem.executable path (#3183)
* chore(l10n): update translations (#3160)
* docs(configure): auto generate open urls (#3163)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `d88a915` to `a4a03d7` (#3167)
* Merge commit from fork
* build(cmake): fix typo in publisher name variable (#3158)
* build(deps): bump vue from 3.5.2 to 3.5.3 (#3150)
* ci(windows): fix typo in publisher name (#3154)
* feat(web): use shared-web (#3116)
* Wed Sep 18 2024 holdenrf2021@gmail.com
- Update to version 2024.916.233144:
* build(cmake): Prioritize vendored includes over system-wide (#3182)
* fix(macos/packaging): MacPorts startupitem.executable path (#3183)
* chore(l10n): update translations (#3160)
* docs(configure): auto generate open urls (#3163)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `d88a915` to `a4a03d7` (#3167)
* Merge commit from fork
* build(cmake): fix typo in publisher name variable (#3158)
* build(deps): bump vue from 3.5.2 to 3.5.3 (#3150)
* ci(windows): fix typo in publisher name (#3154)
* feat(web): use shared-web (#3116)
* Wed Sep 18 2024 holdenrf2021@gmail.com
- Update to version 2024.916.233144:
* build(cmake): Prioritize vendored includes over system-wide (#3182)
* fix(macos/packaging): MacPorts startupitem.executable path (#3183)
* chore(l10n): update translations (#3160)
* docs(configure): auto generate open urls (#3163)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `d88a915` to `a4a03d7` (#3167)
* Merge commit from fork
* build(cmake): fix typo in publisher name variable (#3158)
* build(deps): bump vue from 3.5.2 to 3.5.3 (#3150)
* ci(windows): fix typo in publisher name (#3154)
* feat(web): use shared-web (#3116)
* Wed Sep 18 2024 holdenrf2021@gmail.com
- Update to version 2024.916.233144:
* build(cmake): Prioritize vendored includes over system-wide (#3182)
* fix(macos/packaging): MacPorts startupitem.executable path (#3183)
* chore(l10n): update translations (#3160)
* docs(configure): auto generate open urls (#3163)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `d88a915` to `a4a03d7` (#3167)
* Merge commit from fork
* build(cmake): fix typo in publisher name variable (#3158)
* build(deps): bump vue from 3.5.2 to 3.5.3 (#3150)
* ci(windows): fix typo in publisher name (#3154)
* feat(web): use shared-web (#3116)
* Wed Sep 18 2024 holdenrf2021@gmail.com
- Update to version 2024.916.233144:
* build(cmake): Prioritize vendored includes over system-wide (#3182)
* Sun Sep 15 2024 holdenrf2021@gmail.com
- Update to version 2024.914.221909:
* fix(macos/packaging): MacPorts startupitem.executable path (#3183)
* chore(l10n): update translations (#3160)
* docs(configure): auto generate open urls (#3163)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `d88a915` to `a4a03d7` (#3167)
* Merge commit from fork
* build(cmake): fix typo in publisher name variable (#3158)
* build(deps): bump vue from 3.5.2 to 3.5.3 (#3150)
* ci(windows): fix typo in publisher name (#3154)
* feat(web): use shared-web (#3116)
* fix(ui-apps): update game db url (#3148)
* Sun Sep 15 2024 jonatas.sgoncalves@gmail.com
- Update to version 2024.914.221909:
* fix(macos/packaging): MacPorts startupitem.executable path (#3183)
* chore(l10n): update translations (#3160)
* docs(configure): auto generate open urls (#3163)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `d88a915` to `a4a03d7` (#3167)
* Merge commit from fork
* build(cmake): fix typo in publisher name variable (#3158)
* build(deps): bump vue from 3.5.2 to 3.5.3 (#3150)
* ci(windows): fix typo in publisher name (#3154)
* feat(web): use shared-web (#3116)
* fix(ui-apps): update game db url (#3148)
* build(deps): bump vue from 3.4.38 to 3.5.2 (#3146)
* build(deps): bump peter-evans/create-pull-request from 6 to 7 (#3128)
* build(deps): bump third-party/wayland-protocols from `24e612f` to `4878e02` (#3120)
* chore(l10n): update translations (#3106)
* fix(gh-pages): update uno url (#3127)
* fix(win/input): use active keyboard layout for non-normalized key events (#3125)
* build(deps): bump third-party/doxyconfig from `6d145da` to `5fcfd9a` (#3136)
* build(deps): bump third-party/build-deps from `d0a09a6` to `a4fb39f` (#3131)
* docs(metadata): update urls (#3124)
* fix(win/video): don't offload chroma subsampling math to texture sampler when downscaling (#3014)
* docs(troubleshooting): update note on AMD lowlatencyenc (Linux) (#3117)
* fix(linux): use correct value for AMD_DEBUG environment variable (#3115)
* chore: update global workflows (#3113)
* docs: add interactive table of contents (#3111)
* chore: update global workflows (#3107)
* chore(l10n): update translations (#3082)
* fix(win/input): fix false warnings about missing ViGEmBus (#3097)
* fix(macos/linux): import boost headers normally (#3096)
* fix(mdns): don't hardcode mDNS instance name (#3084)
* fix(nvhttp): wrap TLS socket to ensure graceful closure (#3077)
* docs(readme): update backage url (#3091)
* fix(linux): enable lowlatency mode for AMD (#3088)
* build(docker): update dockerfiles (#3085)
* feat: add publisher metadata (#3080)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `29a1c08` to `d88a915` (#3074)
* build(deps): bump vue from 3.4.32 to 3.4.38 (#3019)
* build(deps): bump vue-i18n from 9.13.1 to 9.14.0 (#3046)
* build(cmake): remove v prefix from version number (#3067)
* feat(tests): rework tests in numerous ways (#3059)
* build(deps): bump third-party/inputtino from `f8f5a81` to `5d4b8b2` (#3053)
* feat(cmake): use symlink/junction for shaders in build dir (#3013)
* fix(packaging/rpm): setcap with filelist (#3050)
* chore(l10n): update translations (#2910)
* fix(packaging): use project version for cpack package version (#3051)
* fix(packaging): apply udev rules for uhid (#3041)
* fix(win/qsv): skip unsupported 4:4:4 codecs (#3029)
* build(deps): bump third-party/tray from `d9f7e76` to `ebbd14f` (#3010)
* build(deps): bump babel from 2.15.0 to 2.16.0 (#2998)
* build(macos): fix error in macos-13 build (#3022)
* docs(docker): add ipc note (#3034)
* feat(win/video): support native YUV 4:4:4 encoding (#2533)
* ci(crowdin): customize PR title (#3031)
* fix(linux): ensure NvFBC capture works after multiple sessions (#3020)
* fix(build): update cuda compatibilities (#3018)
* chore: update global workflows (#3003)
* fix(linux/audio): don't set pulseaudio buffer size (#2999)
* build(deps): bump LizardByte/homebrew-release-action from 2024.612.21058 to 2024.809.31635 (#2992)
* feat(macos): add beta homebrew formula (#2990)
* fix: print encoder name to info log during creation (#2965)
* tests(windows): prefer static libraries (#2939)
* feat(logging): include milliseconds timestamps (#2963)
* feat!: drop advertised resolutions and fps (#2924)
* chore(issue-template): add Apple Silicon to GPUs (#2968)
* build(deps): bump third-party/doxyconfig from `671b494` to `6d145da` (#2979)
* docs: drop sphinx and use doxygen exclusively (#2932)
* fix(windows): properly break on the first matching DXGI output (#2962)
* build(linux): disable GCC 12 Wrestrict warning (#2925)
* build(deps): bump LizardByte/setup-release-action from 2024.725.234618 to 2024.801.192524 (#2942)
* build(linux): add common build script (#2946)
* Handle CTRL_CLOSE_EVENT on Windows (#2952)
* build(linux): fix new lint errors (#2953)
* build(cmake): set CMAKE_PROJECT_VERSION from PROJECT_VERSION (#2936)
* chore: update global workflows (#2886)
* build(deps): bump furo from 2024.5.6 to 2024.7.18 (#2889)
* build(deps): bump LizardByte/setup-release-action from 2024.717.220227 to 2024.725.234618 (#2917)
* fix(linux): add delay to service and improve troubleshooting docs (#2903)
* docs(source code): fix examples end alias (#2921)
* fix: remove logging::bracket "*_view" overloads (#2919)
* Migrate audio pipeline to float from 16-bit integer (#2873)
* New Crowdin updates (#2905)
* feat: Use CMake 3.30 for Ubuntu 22.04 docker (#2898)
* Fix invalid parameter passed to WSASendMsg() (#2890)
* Implement S/G IO for batched sends and eliminate another frame copy (#2874)
* build(deps): bump LizardByte/setup-release-action from 2024.714.140421 to 2024.717.220227 (#2888)
* Implement S/G IO for non-batched sends and eliminate more data copies (#2867)
* docs(troubleshoot): add network testing with iPerf3 (#2866)
* build(deps): bump @fortawesome/fontawesome-free from 6.5.2 to 6.6.0 (#2878)
* build(deps): bump vue from 3.4.31 to 3.4.32 (#2877)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `782d3cc` to `29a1c08` (#2880)
* Escape backslashes in javascript string (#2861)
* build(flatpak): separate dependencies into sub-modules (#2818)
* chore: update global workflows (#2858)
* build(deps): bump LizardByte/setup-release-action from 2024.608.210128 to 2024.714.140421 (#2856)
* fix(linux/input): don't pass unknown battery values (#2820)
* Eliminate a redundant alloc+copy of each frame (#2852)
* Refactor periodic loggers and limit batch size for small packets (#2835)
* fix(linux/input): handle pen EVENT_MOVE events (#2841)
* build(deps): bump third-party/build-deps from `a1e5cc7` to `d0a09a6` (#2843)
* build(linux)!: drop debian bullseye support (#2844)
* build(deps): bump third-party/doxygen-awesome-css from `40e9b25` to `28ed396` (#2829)
* build(linux): sync PKGBUILD with pacman-repo (#2833)
* Provide SSSE3, AVX2, and AVX512 optimized Reed-Solomon functions (#2828)
* Implement basic network flow control (#2803)
* docs(website): add pacman download button (#2830)
* Check API before trying to disable border on WGC capture (#2825)
* build(archlinux): generate srcinfo file during build (#2826)
* build(linux): drop support for AUR (#2819)
* New Crowdin updates (#2822)
* Fix rate control for AMD cards using VAAPI (#2821)
* build(deps): bump rstcheck[sphinx] from 6.2.1 to 6.2.4 (#2824)
* build(linux): make postinst use which to find sunshine (#2812)
* macOS: New implementation of service publication (#2786)
* ci(flatpak): add flatpak builder lint (#2799)
* ci(macos): adjust permissions for test binaries (#2806)
* build(flatpak): remove org.flatpak.Builder.BaseApp (#2798)
* build(flatpak): add xvfb locally (#2797)
* New Crowdin updates (#2792)
* New Crowdin updates (#2779)
* docs(website): add clients section (#2791)
* ci(appimage): add sleep delay before test execution (#2790)
* build(deps): bump robinraju/release-downloader from 1.10 to 1.11 (#2783)
* build(deps): bump packaging/linux/flatpak/deps/org.flatpak.Builder.BaseApp from `17d551d` to `5557876` (#2784)
* build(deps): bump vue from 3.4.30 to 3.4.31 (#2767)
* fix(upnp): support newer miniupnpc library (#2782)
* build(deps): bump third-party/inputtino from `93a81cb` to `f8f5a81` (#2766)
* docs(doxygen): disable html copy clipboard (#2771)
* New Crowdin updates (#2740)
* docs(doxygen): do not extract all (#2770)
* docs(src): add examples alias and general cleanup (#2763)
* build(deps): bump third-party/nvapi-open-source-sdk from `7d99f95` to `cce4e90` (#2750)
* build(deps): bump vue from 3.4.29 to 3.4.30 (#2749)
* build(deps): bump third-party/inputtino from `8a33706` to `93a81cb` (#2761)
* docs: use doxygen-awesome-css (#2758)
* build(docs): use patterns to locate python venv interpreter (#2757)
* docs(doxygen): simplify doxygen config file (#2752)
* docs: use doxygen directly and drop breathe (#2739)
* build(docs): add cmake target for docs (#2748)
* fix(macos): fix boost on macos (#2733)
* docs: more doxygen fixes (#2736)
* docs(src): fix some doxygen warnings (#2731)
* New Crowdin updates (#2725)
* docs: fix ffmpeg include directory (#2727)
* feat: add min_fps_target setting (#1043)
* ci(issues): update issue template (#2277)
* docs: update badges (#2716)
* fix(linux/input): battery values conversion (#2715)
* build(deps): bump third-party/tray from `98af2bf` to `d9f7e76` (#2714)
* tests: add httpcommon tests and add new file_handler methods (#2712)
* fix(brew): remove v prefix from version number (#2710)
* fix(brew): update version and fix ci push events (#2708)
* fix(homebrew): use tag instead of branch in formula (#2705)
* New Crowdin updates (#2703)
* docs: add more troubleshooting notes (#2684)
* feat(input/linux): add support for more virtual input devices (#2606)
* docs(readme): update winget badge query (#2698)
* build(deps): bump vue from 3.4.27 to 3.4.29 (#2695)
* build(deps): bump LizardByte/create-release-action from 2024.611.132610 to 2024.614.221009 (#2693)
* fix(linux): simplify default sunshine.service (#2691)
* build: optionally static link boost (#2628)
* build(deps): bump third-party/moonlight-common-c from `907110c` to `8599b60` (#2669)
* build(linux): remove unused intel media sdk (#2681)
* build(deps): bump LizardByte/homebrew-release-action from 2024.609.4731 to 2024.612.21058 (#2677)
* build(deps): bump LizardByte/create-release-action from 2024.609.5014 to 2024.611.132610 (#2676)
* fix(macos): Mouse input broken in-game (#2550)
* build(linux): add homebrew support (#2667)
* build(deps): bump third-party/tray from `0f30a63` to `98af2bf` (#2665)
* build(deps): bump LizardByte/homebrew-release-action from 2024.522.222851 to 2024.609.4731 (#2663)
* build(deps): bump LizardByte/create-release-action from 2024.608.160245 to 2024.609.5014 (#2662)
* build(deps): bump third-party/build-deps from `324e011` to `a1e5cc7` (#2658)
* build(deps): bump third-party/moonlight-common-c from `eb21561` to `907110c` (#2637)
* build(deps): bump packaging/linux/flatpak/deps/org.flatpak.Builder.BaseApp from `e524683` to `17d551d` (#2616)
* chore: update global workflows (#2653)
* build(deps): bump LizardByte/setup-release-action from 2024.524.1411 to 2024.608.210128 (#2651)
* build(deps): bump LizardByte/create-release-action from 2024.524.143912 to 2024.608.160245 (#2647)
* docs: update readthedocs on release events (#2604)
* Remove the need for a patched nvidia library for NvFBC. (#2471)
* feat(audio): custom surround-params (#2424)
* docs(readme): fix winget badge (#2620)
* build(windows): fix curl linking (#2612)
* build(windows): pin curl to working version (#2618)
* chore: update global workflows (#2597)
* Name and unpair individual clients (#2042)
* feat(win): new capture method, Windows.Graphics.Capture (#2580)
* New Crowdin updates (#2584)
* build(deps): bump LizardByte/create-release-action from 2024.520.211408 to 2024.524.143912 (#2588)
* build(deps): bump third-party/tray from `cb33552` to `0f30a63` (#2590)
* build(deps): use new ffmpeg build names (#2577)
* chore: update global workflows (#2581)
* New Crowdin updates (#2562)
* build(win): use UCRT64 environment instead of MinGW64. (#2323)
* build(deps): bump third-party/build-deps from `a326d43` to `0896e89` (#2572)
* build(deps): bump third-party/wayland-protocols to 1.36 (#2570)
* docs(windows): Add Discord Voicemeeter Guide (#2555)
* feat(ui): Dark Mode (#2493)
* fix(ui): ensure pre-releases are properly checked (#2564)
* ci: only publish homebrew formula from one job (#2560)
* chore: update global workflows (#2559)
* ci: use prerelease logic (#2553)
* chore: update global workflows (#2547)
* Fix log message for Periodic Ping (#2538)
* build(deps): bump third-party/build-deps from `efd3a38` to `a326d43` (#2536)
* build(deps): bump LizardByte/homebrew-release-action from 2024.511.160217 to 2024.516.191449 (#2535)
* build(deps): bump third-party/moonlight-common-c from `cbd0ec1` to `eb21561` (#2227)
* New Crowdin updates (#2454)
* build(deps): bump third-party/wayland-protocols from `08d1c72` to `24e612f` (#2480)
* build(deps): bump third-party/Simple-Web-Server from `27b41f5` to `4abe349` (#2114)
* build(deps): bump third-party/nvapi-open-source-sdk from `c0f5f7b` to `7d99f95` (#2145)
* build(deps): bump vue-i18n from 9.13.0 to 9.13.1 (#2455)
* docs: packet loss and linux controller (#2514)
* ci(codeql): fix codeql builds (#2475)
* fix(macos): fix broken streaming on MacOS (#2485)
* build(deps): bump vue from 3.4.23 to 3.4.27 (#2509)
* build(deps): bump babel from 2.14.0 to 2.15.0 (#2504)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `ec91811` to `782d3cc` (#2479)
* build(deps): bump third-party/tray from `4d8b798` to `cb33552` (#2528)
* Allow a custom FFmpeg build to be provided using CMake variables (#1970)
* build(deps): bump packaging/linux/flatpak/deps/org.flatpak.Builder.BaseApp from `5532d43` to `e524683` (#2517)
* build(deps): bump furo from 2024.1.29 to 2024.5.6 (#2511)
* refactor(ui): break down config.html into smaller pieces (#2491)
* build(macos): skip link of nonexistent directories (#2526)
* build(deps): bump LizardByte/homebrew-release-action from 2024.417.220943 to 2024.511.160217 (#2527)
* AppImage: add needed VA-API libraries (Intel & AMD) (#2429)
* fix(linux): add frame processing latency and logging improvements (#2502)
* fix(file_handler): avoid writing extra newline character (#2335)
* Unify asset building and use find_program to find NPM (#2522)
* build(linux)!: add fedora 40 and remove fedora 38 (#2525)
* ci: fix code coverage (#2512)
* build(archlinux): bump gcc from 12 to 13 (#2519)
* webui: Update resolution automation example text with auto refresh rate (#2503)
* fix(macos/input): incorrect mouse input for non-main display (#2461)
* Use C++20. (#2322)
* feat(macos/capture): support for capture display other than main display (#2449)
* Mon May 13 2024 jonatas.sgoncalves@gmail.com
- Update to version 0.23.1:
* Bump version to v0.23.1 (#2452)
* New Crowdin updates (#2392)
* Autofocus PIN input on Web UI pin page
* chore: repo updates (#2416)
* ci(codecov): skip search (#2430)
* build(deps): bump vue from 3.4.5 to 3.4.23 (#2434)
* build(deps): bump vue-i18n from 9.11.0 to 9.13.0 (#2442)
* build(deps): bump LizardByte/homebrew-release-action from 2024.409.24405 to 2024.417.220943 (#2441)
* build(deps): bump third-party/wayland-protocols from `46f201b` to `08d1c72` (#2443)
* build(deps): bump third-party/wlr-protocols from `4264185` to `2b8d433` (#2067)
* build(deps): bump packaging/linux/flatpak/deps/shared-modules from `d022995` to `ec91811` (#2428)
* build(deps): bump actions-js/push from 1.4 to 1.5 (#2440)
* build(deps): bump packaging/linux/flatpak/deps/org.flatpak.Builder.BaseApp from `6e295e6` to `5532d43` (#2444)
* fix(windows/amf): Revert RC/HRD defaults; improve documentation & config parsing (#2419)
* docs(linux): add guide for discord audio (#2447)
* chore: update global workflows (#2446)
* fix: make version update check more robust (#2437)
* ci: skip coverage upload if not in LizardByte org (#2436)
* ci: fix codeql prebuild steps for unix OSes (#2431)
* ci: update codeql to handle multiple OSes (#2425)
* ci: fix coverage ignore directories (#2420)
* fix(ui): fix quicksync locale strings (#2418)
* debug: fix codec debugging code
* Fix discarded std::clamp() result compiler warning
* Fix crash when receiving abs input events prior to the display touchport
* build(deps): bump LizardByte/homebrew-release-action from 2024.314.134529 to 2024.409.24405 (#2394)
* Improve frametiming for linux capture (#2333)
* Musl Linux fixes (#2401)
* build(deps): bump codecov/codecov-action from 3 to 4 (#2297)
* build(deps): use token for codecov/codecov-action (#2404)
* build(linux): fix ubuntu 24.04 build (#2402)
* fix(linux): use correct setap command in logs (#2400)
* fix(ltray): re-order tray dep search (#2397)
* build(tests): ensure tests can be disabled during build (#2386)
* build(deps): remove libavdevice (#2380)
* Thu Apr 18 2024 Jonatas Gonçalves <jonatas.sgoncalves@gmail.com>
- Fix all build erros in log
- Update to version 0.23.0:
* chore: bump version to v0.23.0 (#2367)
* New Crowdin updates (#2372)
* Quote the path to sunshinesvc.exe when launching the termination helper (#2379)
* fix(linux/capture): fix logical comparison of texture size (#2349)
* fix(security): ensure unpairing takes effect without restart (#2365)
* build(linux)!: disable arm64 builds for Fedora (#2377)
* build(docker): increase job timeout (#2376)
* build(cmake): add prep/init.cmake (#2375)
* build: fix ubuntu 24.04 deps (#2374)
* Thu Apr 18 2024 jonatas.sgoncalves@gmail.com
- Update to version 0.23.0:
* chore: bump version to v0.23.0 (#2367)
* New Crowdin updates (#2372)
* Quote the path to sunshinesvc.exe when launching the termination helper (#2379)
* fix(linux/capture): fix logical comparison of texture size (#2349)
* fix(security): ensure unpairing takes effect without restart (#2365)
* build(linux)!: disable arm64 builds for Fedora (#2377)
* build(docker): increase job timeout (#2376)
* build(cmake): add prep/init.cmake (#2375)
* build: fix ubuntu 24.04 deps (#2374)
* Fri Mar 29 2024 jonatas.sgoncalves@gmail.com
- Update to version 0.22.2:
* Update changelog and bump version to v0.22.2
* Use a copy+delete instead of a move operation for config migration
* Only attempt a config migration once per launch
* Avoid calling Boost logging functions in appdata()
* Fix dereferencing a null pointer if SUNSHINE_MIGRATE_CONFIG doesn't exist
* Update tray submodule to fix broken tray icon on some systems
* build(deps): bump LizardByte/homebrew-release-action from 2024.311.172824 to 2024.314.134529 (#2264)
* Don't update tray icon after tray_exit() was called
* Sun Mar 10 2024 Jonatas Gonçalves <jonatas.sgoncalves@gmail.com>
- upgrade to 0.22.0: