net-misc / sunshine

Self-hosted game stream host for Moonlight

Official package sites : https://github.com/LizardByte/Sunshine ·

v9999 :: 0 :: gentoo

Modified
License
GPL-3
USE flags
X cuda debug filecaps libdrm pipewire svt-av1 systemd trayicon vaapi vulkan wayland x264 x265

v2026.516.143833-r2 :: 0 :: gentoo

Modified
License
GPL-3
Keywords
~amd64 ~arm64
USE flags
X cuda debug filecaps libdrm pipewire svt-av1 systemd trayicon vaapi vulkan wayland x264 x265

General

X
Add support for X11
cuda
Enable accelerated video encoding on NVIDIA hardware
debug
Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces
filecaps
Use Linux file capabilities to control privilege rather than set*id (this is orthogonal to USE=caps which uses capabilities at runtime e.g. libcap)
libdrm
Enable KMS video capture via x11-libs/libdrm
pipewire
Enable XDG Desktop Portal video capture via media-video/pipewire
svt-av1
Enable software AV1 encoding via media-libs/svt-av1
systemd
Enable use of systemd-specific libraries and features like socket activation or session tracking
trayicon
Enable system tray icon
vaapi
Enable Video Acceleration API for hardware decoding
vulkan
Add support for 3D graphics and computing via the Vulkan cross-platform API
wayland
Enable dev-libs/wayland backend
x264
Enable software H.264 encoding via media-libs/x264
x265
Enable software HEVC encoding via media-libs/x265

cpu_flags_arm

asimddp
Use the Advanced SIMD dot product instructions
i8mm
Use the AArch64 Int8 matrix multiplication instructions
neon
Use the NEON instruction set
thumb
Enable Thumb instruction set (ARMv*T and ARMv6+)
thumb2
Enable Thumb-2 instruction set (ARMv*T2 and ARMv7+)
v6
Use instructions added in ARMv6
v8
Use instructions added in ARMv8
vfp
Use the VFP version 2 instruction set
vfpv3
Use the VFP version 3 instruction set

cpu_flags_ppc

altivec
Use the AltiVec/VMX instruction set
vsx
Use the Vector Scalar Extension instruction set (POWER7 and later)
vsx2
Use the Vector Scalar Extension v.2 instruction set (POWER8 and later)

cpu_flags_x86

3dnow
Use the 3DNow! instruction set
3dnowext
Use the Enhanced 3DNow! instruction set
aes
Enable support for Intel's AES instruction set (AES-NI)
avx
Adds support for Advanced Vector Extensions instructions
avx2
Adds support for Advanced Vector Extensions 2 instructions
fma3
Use the Fused Multiply Add 3 instruction set ([fma] in cpuinfo)
fma4
Use the Fused Multiply Add 4 instruction set
mmx
Use the MMX instruction set
mmxext
Use the Extended MMX instruction set (a subset of SSE) ([mmxext] or [sse] in cpuinfo)
sse
Use the SSE instruction set
sse2
Use the SSE2 instruction set
sse3
Use the SSE3 instruction set ([pni] in cpuinfo, NOT ssse3)
sse4_1
Enable SSE4.1 instruction support
sse4_2
Enable SSE4.2 instruction support
ssse3
Use the SSSE3 instruction set (NOT sse3/pni)
xop
Enable the XOP instruction set

dev-cpp / nlohmann_json : JSON for Modern C++

dev-libs / boost : Boost Libraries for C++

dev-libs / glib : The GLib library of C routines

dev-libs / libayatana-appindicator : Ayatana Application Indicators (Shared Library)

dev-libs / libevdev : Handler library for evdev events

dev-libs / openssl : Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)

dev-libs / wayland : Wayland protocol libraries

dev-libs / wayland-protocols : Wayland protocol files

dev-util / nvidia-cuda-toolkit : NVIDIA CUDA Toolkit (compiler and friends)

dev-util / vulkan-headers : Vulkan Header files and API registry

media-libs / amf-headers : The Advanced Media Framework (AMF) SDK

media-libs / libpulse : Libraries for PulseAudio clients

media-libs / libva : Video Acceleration (VA) API for Linux

media-libs / nv-codec-headers : FFmpeg version of headers required to interface with Nvidias codec APIs

media-libs / opus : Open codec for interactive speech and music transmission over the Internet

media-libs / svt-av1 : Scalable Video Technology for AV1 (SVT-AV1 Encoder)

media-libs / x264 : Free library for encoding X264/AVC streams

media-libs / x265 : Library for encoding video streams into the H.265/HEVC format

media-sound / apulse : PulseAudio emulation for ALSA

media-video / pipewire : Multimedia processing graphs

net-libs / miniupnpc : UPnP client library and a simple UPnP client

net-misc / curl : A Client that groks URLs

sys-libs / libcap : POSIX 1003.1e capabilities

x11-libs / libX11 : X.Org X11 library

x11-libs / libdrm : X.Org libdrm library

x11-libs / libnotify : A library for sending desktop notifications

dev-libs / boost : Boost Libraries for C++

dev-libs / glib : The GLib library of C routines

dev-libs / libayatana-appindicator : Ayatana Application Indicators (Shared Library)

dev-libs / libevdev : Handler library for evdev events

dev-libs / openssl : Robust, full-featured Open Source Toolkit for the Transport Layer Security (TLS)

dev-libs / wayland : Wayland protocol libraries

media-libs / libpulse : Libraries for PulseAudio clients

media-libs / libva : Video Acceleration (VA) API for Linux

media-libs / mesa : OpenGL-like graphic library for Linux

media-libs / opus : Open codec for interactive speech and music transmission over the Internet

media-libs / svt-av1 : Scalable Video Technology for AV1 (SVT-AV1 Encoder)

media-libs / vulkan-loader : Vulkan Installable Client Driver (ICD) Loader

media-libs / x264 : Free library for encoding X264/AVC streams

media-libs / x265 : Library for encoding video streams into the H.265/HEVC format

media-sound / apulse : PulseAudio emulation for ALSA

media-video / pipewire : Multimedia processing graphs

net-libs / miniupnpc : UPnP client library and a simple UPnP client

net-misc / curl : A Client that groks URLs

sys-libs / libcap : POSIX 1003.1e capabilities

x11-drivers / nvidia-drivers : NVIDIA Accelerated Graphics Driver

x11-libs / libX11 : X.Org X11 library

x11-libs / libXfixes : X.Org Xfixes library

x11-libs / libXrandr : X.Org Xrandr library

x11-libs / libXtst : X.Org Xlib-based client API for the XTEST & RECORD extensions library

x11-libs / libdrm : X.Org libdrm library

x11-libs / libnotify : A library for sending desktop notifications

x11-libs / libxcb : X C-language Bindings library

963933
net-misc/sunshine-2025.924.154138 - not builds with -march=native on arm64
975943
net-misc/sunshine-2026.516.143833-r2 - [meson] QA Notice: Compatibility with CMake < 3.10 will be removed in a future release.
978831
net-misc/sunshine-2026.516.143833-r1 - [eigen-5.0] [gcc-17] [perl-5.44] wayland.h: error: type struct dmabuf_t violates the C++ One Definition Rule [-Werror=odr]
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix building against nv-codec-headers 13.1
Closes: https://bugs.gentoo.org/979767 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix building with nvidia-toolkit-12.9
Do this by ensuring that the minimum Clang version supports the maximum nvidia-cuda-toolkit version. Admittedly untested. No special handling of Clang slots is needed because the latest installed version is always first in the PATH. As previously mentioned, building with nvcc would require some non-trivial eclass changes to work reliably, and we need Clang for the build regardless. Closes: https://bugs.gentoo.org/977044 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
James Le Cuirot · gentoo
net-misc/sunshine: Drop old 2025.924.154138
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix building with USE="-wayland pipewire vulkan"
The patch has been accepted upstream. Closes: https://bugs.gentoo.org/977035 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Patch to fix building without USE="libdrm"
Also enable USE="libdrm" by default because it is one of the most performant capture methods and users will almost certainly have libdrm anyway. This hasn't been merged upstream yet, but it probably will be soon, so I haven't patched the live ebuild. Closes: https://bugs.gentoo.org/975938 Closes: https://bugs.gentoo.org/976360 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
Alfred Wingate · gentoo
net-misc/sunshine: jinja2 required bdep
Closes: https://bugs.gentoo.org/975930 Signed-off-by: Alfred Wingate <parona@protonmail.com> Part-of: https://codeberg.org/gentoo/gentoo/pulls/963 Merges: https://codeberg.org/gentoo/gentoo/pulls/963 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Version bump to 2026.516.143833
Closes: https://bugs.gentoo.org/966138 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Update 9999 with Vulkan fix, XDG Desktop Portal support
Upstream has also added KWin support, but this needs an unreleased KWin, so I'll handle this later. I think KMS capture is always the best option anyway. Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Get 9999 working again
It won't build at this precise moment, but upstream is about to merge a fix. Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix building against svt-av1-4
Closes: https://bugs.gentoo.org/971550 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
James Le Cuirot · gentoo
net-misc/sunshine: Drop old 2025.628.4510-r1
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix 9999
This uses the system Boost again. 1.89 only, sorry. 1.88 doesn't work. 1.90 is untested, but upstream currently forces 1.89. Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Don't target CUDA architectures that LLVM doesn't support yet
Closes: https://bugs.gentoo.org/963570 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Require amf-headers-1.4.36-r1 for ffmpeg-8 compatibility
Closes: https://bugs.gentoo.org/963555 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Version bump to 2025.924.154138
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix building with Boost 1.87 installed
We want to build an internal Boost even if 1.87 is installed. Unfortunately, CMake doesn't handle this well. It finds Boost itself but fails to find all the components because they don't have static libraries. Even if Sunshine were to explicitly check for the presence of each component, it would then fail because the Boost::headers target cannot be redefined. I tried to fix this properly, but it seems impossible. I thought that CMAKE_DISABLE_FIND_PACKAGE would prevent Boost from working at all, but it somehow did the trick. Closes: https://bugs.gentoo.org/960465 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
James Le Cuirot · gentoo
net-misc/sunshine: Fix warning about unused CMAKE_CUDA_COMPILER option
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix building with USE=cuda
I'm not sure whether I've chosen the most optimal approach here. nvidia-drivers is needed at runtime (only) for libcuda.so.1. nvidia-cuda-toolkit is not required by FFmpeg, but it does seem required by Sunshine itself. You can then use nvcc from the toolkit or clang directly. I have chosen the latter, because the logic needed to set up nvcc is complex (potential addition to cuda.eclass?) and both Gentoo and Sunshine upstream force FFmpeg to build with clang anyway. Closes: https://bugs.gentoo.org/959432 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Build and statically link Boost 1.87 for now
Unfortunately, Sunshine relies heavily on the v1 process API that was dropped in Boost 1.88. I tried to make the necessary changes, but v2 is very different and missing features present in v1. I'll leave this mess to upstream. In the meantime, build and statically link 1.87. This is less than ideal but better than holding everyone back. It raises a couple of CMake compatibility warnings, but upstream will hopefully bump Boost before this becomes an issue. Closes: https://bugs.gentoo.org/955560 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
James Le Cuirot · gentoo
net-misc/sunshine: Fix 9999 following build-deps changes
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Backport upstream fix to build without USE=libdrm
Closes: https://bugs.gentoo.org/959436 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Drop tray patch from 9999
It has been applied upstream. Signed-off-by: James Le Cuirot <chewi@gentoo.org>
James Le Cuirot · gentoo
net-misc/sunshine: Borrow ffmpeg patch to fix build against svt-av1-3
Closes: https://bugs.gentoo.org/958994 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
James Le Cuirot · gentoo
net-misc/sunshine: Drop old 2025.122.141614
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
James Le Cuirot · gentoo
net-misc/sunshine: Version bump to 2025.628.4510
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Add missing dev-cpp/nlohmann_json dependency
This used to only be required for Windows, but now it is unconditional. Closes: https://bugs.gentoo.org/958390 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Drop old 0.23.1
Bug: https://bugs.gentoo.org/956631 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
James Le Cuirot · gentoo
net-misc/sunshine: Version bump to 2025.122.141614 and refresh 9999
Sorry this took so long, and thank you to the users who contributed fixes. This has always been a tricky package, but hopefully we won't have to go through this amount of change again. Unfortunately, Boost 1.87 is still required for now. I tried to port it to 1.88, but Sunshine uses parts of boost::process that just aren't there anymore. I'll send what I have so far upstream shortly. Bug: https://bugs.gentoo.org/955560 Bug: https://bugs.gentoo.org/956631 Closes: https://bugs.gentoo.org/947046 Closes: https://bugs.gentoo.org/951973 Closes: https://bugs.gentoo.org/956006 Closes: https://github.com/gentoo/gentoo/pull/42477 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
Alfred Wingate · gentoo
net-misc/sunshine: pin svt-av1
Vendored ffmpeg needs to be updated or patched. Signed-off-by: Alfred Wingate <parona@protonmail.com> Part-of: https://github.com/gentoo/gentoo/pull/42170 Closes: https://github.com/gentoo/gentoo/pull/42170 Signed-off-by: Sam James <sam@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Patch to fix 0.23.1 against any amf-headers version
Closes: https://bugs.gentoo.org/950686 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Pin back amf-headers to 1.4.34 due to breakage
I'll try fixing this properly later. Closes: https://bugs.gentoo.org/950686 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix building against Boost 1.87
I think this will also work with 1.86 and 1.85. Let me know if it doesn't. Closes: https://bugs.gentoo.org/946480 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Patch 0.23.1 to build against Boost 1.86
Upstream has made the latest require 1.86, but this patch works with 1.85 too. Closes: https://bugs.gentoo.org/942795 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: The CBS patch has been merged upstream
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix 9999 build by disabling docs
Building the docs involves more npm pain. It's not worth it. Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
Michał Górny · gentoo
net-misc/sunshine: Add := to media-libs/svt-av1 dep
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix 0.23.1 with newer miniupnpc using patch
Closes: https://bugs.gentoo.org/934173 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
James Le Cuirot · gentoo
net-misc/sunshine: Fix up 9999 for latest changes
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: The custom FFmpeg patch has been merged upstream
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Update NPM patch now it's merged upstream
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix NPM issue by shipping pre-compiled assets
It turns out the NPM cache is sensitive to the NPM version. Yarn is better in this regard, but it wanted to cache 90MB of files covering irrelevant operating systems and architectures. This is a lot more than 1.3MB of pre-compiled assets. Closes: https://bugs.gentoo.org/930441 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Bump to 0.23.1, drop vulnerable 0.22.2
I'll deal with the new tests later. Bug: https://bugs.gentoo.org/930038 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Bump to 0.22.2, drop old 0.22.0
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Bump to 0.22.0, drop old 0.21.0
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Fix cross-compiling with patch
Upstream say they will merge this in time for the next release. Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Turns out nlohmann_json is only needed on Windows
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: Update for new ARM flags
Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: On second thoughts, unbundle nv-codec-headers
Using the bundled copy is awkward as they need to be "installed". Loosen the version requirement to just the same major version, which is probably fine. Signed-off-by: James Le Cuirot <chewi@gentoo.org>
James Le Cuirot · gentoo
net-misc/sunshine: Allow apulse instead of libpulse
Only build tested so far. I'll runtime test it later. Signed-off-by: James Le Cuirot <chewi@gentoo.org>
James Le Cuirot · gentoo
net-misc/sunshine: libva is hard-required at build time for 0.21.0
This requirement has been dropped since. Signed-off-by: James Le Cuirot <chewi@gentoo.org>
Repository mirror & CI · gentoo
Merge updates from master
James Le Cuirot · gentoo
net-misc/sunshine: New package
Signed-off-by: James Le Cuirot <chewi@gentoo.org>