summaryrefslogtreecommitdiff
path: root/net-misc/sunshine
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-02-18 17:39:04 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-02-18 17:39:04 +0000
commit9897403e8218123dc1c8d3797b083652f08779a9 (patch)
tree4094b584adf5bb6134895d92d675388b79bc13a0 /net-misc/sunshine
parent08f1ae6b8bd1202a10c5f0d07ee0adc846e0308c (diff)
gentoo auto-resync : 18:02:2024 - 17:39:04
Diffstat (limited to 'net-misc/sunshine')
-rw-r--r--net-misc/sunshine/Manifest6
-rw-r--r--net-misc/sunshine/files/sunshine-0.22.0-nvcodec.patch27
-rw-r--r--net-misc/sunshine/sunshine-0.21.0.ebuild18
-rw-r--r--net-misc/sunshine/sunshine-9999.ebuild18
4 files changed, 48 insertions, 21 deletions
diff --git a/net-misc/sunshine/Manifest b/net-misc/sunshine/Manifest
index dab21dc8625d..2296e284dac7 100644
--- a/net-misc/sunshine/Manifest
+++ b/net-misc/sunshine/Manifest
@@ -1,6 +1,7 @@
AUX sunshine-0.21.0-no-x11.patch 959 BLAKE2B 8fe641c9cae08bc280017f1bd2c3a922bda1b7edc73334887d31256b773356b5df55328649a685451b6bf3efaf830f92cfedc8235b7884f6681d63f9e59e7989 SHA512 a95aaaf4aba3c12603598c7d1e710ced7e5aa5b57bea4016c5a8b90083bcf62b4e29d4adf1f5865f61995f28be729198c2faed0c67a32078a49716417cf6efc7
AUX sunshine-0.21.0-system-deps.patch 15391 BLAKE2B 7b6c79e644513723fc64d9c34093143bda5dc426b2e9aaa013f2fb517e65c841a460b7fc2764dfa8d645c2a41f8057d7bf05539fe25778962e62808821e68498 SHA512 565e5f33eda53f274d5bb75b0c3ce1f2efb05e483704352e30cea558ccb8a9736d06376a790dbfdbd50a901dd812bdc59116ab08d995ad5bbac30b65d1daabb0
AUX sunshine-0.21.0-vaapi.patch 794 BLAKE2B 28f6a9ab061b467674c836230e81a45399c1f8c5bd2b6e0ec67ce3b264c5f45c749360dfc4bf4633763ea188493f24b9ef4222453ae0512d87e867bc3f6cc339 SHA512 9192c31ea4795cb987d60c493a5c3ece4d08e37f5f78cdf2bf079b470bbd5fcf357ce99385e07fcdfbe60aecffd7b25cc21b93ccae31730c1ecc444612f78d5a
+AUX sunshine-0.22.0-nvcodec.patch 1009 BLAKE2B 4a2fd3dbd98b64fd6e259c94d218f9853404a4096448ace8153c86717524b7cde5295a00aed972eca73c4a4c3bf6101349e8e61ebcb5e657d59426f903fc8efd SHA512 77ba0e67da4a3c252c5a19041bf0822651de9670ffe7e5732298cc00c6ac8cced97d2a0e0487af0ddc035fdb74fee2593ef91c446bb1125525ba4103b7b95fa2
AUX sunshine-custom-ffmpeg.patch 7668 BLAKE2B ed546c249f173884297792867748c142e506b64c831ecd097de27417476fbfb88b94e04e8302f00926df669e9a1c74fa1699edad191dc054d82dfecda83a9abc SHA512 50f82076a90551e234acd999d0c4f3821d5ad6bc10910a7e6b034054097573b2116498c8c64df4d01baad599e3faa43e6676c30d0a9b878ebf5e934e4d91ff3d
AUX sunshine-system-json.patch 2333 BLAKE2B 5cb13d834bbf7fa34e112982387672a49fc8da7ece14a816f40bdb7a130c1a6ca29a72020275125b57b9d0ca40b4494c37979fc7c8a5530a5b29bc90507c5ace SHA512 c67e1b99108418383547066af02ffc1fb2bb2890f09011ba1770ceaaf19b5c01709498c75ae0aa8428c00678403939752a5cad1637cdbc34565412e8226f2bb8
DIST LizardByte-build-deps-2aafe061cd52a944cb3b5f86d1f25e9ad2a19bec.tar.gz 24171 BLAKE2B bcc8f1829eae4ba85a9cbdaca7876a4a52c979f3b8ef0f0a56876fcb171025544bd1997455c2b8fff59564deca433366ae03f14cbb0929f78c87f991b269156f SHA512 892184ec0ff321b2b7e2000dc605d1162955cb04ff259f6032f124f1ff50a1fe485e2cf2c0b735788f8615c9aba87ca040205599cb4b91881daa462a53340bd7
@@ -10,10 +11,9 @@ DIST ffmpeg-6.1.1.tar.xz 10458600 BLAKE2B 77827ff92b47c773ed82e7b7793dbb135c370f
DIST moonlight-common-c-6e9ed871bc3e013386c775b2ee7d31deb1151068.tar.gz 143942 BLAKE2B d8e98cffc683cc7ef6ad9e58c0a154a60e4bf5742fba8c4bce270b84c2af6ff455a6f7e2920e3b83db052c2a1632e787f9a444b381a8a7476ab79fa4f79560ad SHA512 a9024ba400e6804c0b26db57fa16ddbcd080982f852d26fd1ca8ae84f969bacd883c4adc83105bd18e1af4d34e831dc241d0278f88549b46497eb62c72f39bf2
DIST moonlight-enet-c6bb0e50118d08252eee308de8412751218442d6.tar.gz 85497 BLAKE2B 484cf25d37ed230946edc7417ca20ea4c16828f2a099fd6a88dca08dc78a5314e837c96d9a7536ace3e45c55d0edd8698568af8d5087adc7429bc4d3966cfbae SHA512 1e7f93639139ec3d02c5b442dd2d49e2ab8e729b7c4ee51d9b2da4061f8e3794e7984858cfb87d279b85939a9fed6d0c4a3b9994c30597791461e612a64843e2
DIST nanors-e9e242e98e27037830490b2a752895ca68f75f8b.tar.gz 194694 BLAKE2B 1effd7c0884ffd38b63d61a7872337797529ef2012f9de0950088a5004cb32a2fb2c14bcab2ec6719968864e5e6b9a67e96afa39466e2071bf4a0cd752ae4b29 SHA512 548be25650619a6c31944cd7a745fd40d5bc5008f2d7f91e0207a10b923764cb88fd2ddcb71eaed7c4863ec89b34d61011b666e292da071ac3b4429e4d7dd027
-DIST nv-codec-headers-22441b505d9d9afc1e3002290820909846c24bdc.tar.gz 77625 BLAKE2B 5b80efdf8a8290e5e1620779f92a874deff561fb66e6ad8c6c84ce7161c7540521a0c60b93ecdd6702e668b113bc12c56e4f02583ffffa72b0cc892d41db1966 SHA512 3fa66cc36a982db24b3f57925dd4cef99ead58f5e01ad2764638d16749b35c41f1ae5ad0cf7c73e4e62ad5391065ba2345e309ebf339b274532560d2c4820153
DIST sunshine-0.21.0.tar.gz 24066116 BLAKE2B cc7ecf20ea69ed9c35c97194ca803f5a329234d1857b8f9dcee070c08ccc36de4481acc4f493c4d5f9b7fce5f5bf6986630d26233e7fc0495a688d7f2fea4696 SHA512 96e71ca6e36f7944b5f96005e2cab4287cba0fd0d2e561e6eeea7fa1cbf047576ca6debc786d34d7543dab361841fbf59cbb950e0d3413be8ba8dfb81342056e
DIST sunshine-node-modules-0.21.0.tar.xz 2171156 BLAKE2B aa592d7041d08ff3dc795bf7afb5197e849afc7479df3c2e66e03b279f91cfb083e2e9f51ef594756b83b87b89214f48192be76b2efc7574a6aaf28d77ca7b37 SHA512 0a1cd9017b079a63f58f7fb4f2aaff8e2449788b213ddb6fa1da6bebf8a1d259ecc5900bb4ceaa15ca7bdca817792aeeff31e205d48593c3a55261c9f99d8f04
DIST wlr-protocols-4264185db3b7e961e7f157e1cc4fd0ab75137568.tar.bz2 19574 BLAKE2B 65666095f186857e3c5274b23d5c40b40b0ba5d945c7b34331a06320128cb69a36a76baf2381b635858736ca6ed438c2ed67c03fac1c20e1ec4d71de27037e42 SHA512 0e6afde055d9b76bcb8c717433b78814f2cf9338ead451d3119f62463198ef272029767898e8f7d32896f2732be3aaa2a0373c671d8196e745d62f6116cd1583
-EBUILD sunshine-0.21.0.ebuild 11923 BLAKE2B dc71e4e1413dfa1527acc6762996a1449b4b3c60ea505f866078ce8bee9dd76d070a2dc532d765f0578fd5727062aca1d2bfcb43fa7bcedabaa812041bcb9b80 SHA512 73b6b2126e10caf2d4ec3ec5890d00131665ace5a8b5e568af8b3d3201468a69b4ff3cc981dcbe48c7a4dc9fac95adecfd25963163ec65ac49d8b1e937a2d0ed
-EBUILD sunshine-9999.ebuild 12087 BLAKE2B a55f181f217fdab352fb217a91d39b9ec35f075a0968d646130fbcea0a5495befdf3623d61b8622afb4d526f74c4c99ac3327235a0545459f8526b31a4206129 SHA512 a2eaad82645c6d19a1a2c8102578a2e80aede04f357ddacdb6b659c580d7584336db8301d577a7e86135e3337f3cf478aa67f67d0afec53d2af9aed06433e5d3
+EBUILD sunshine-0.21.0.ebuild 11625 BLAKE2B 47f2189bda665f5d2da6021b7e28faf52bd3d5fc0ddbd58d6081797eddf2c26709f330eb8723f8ed16dc5762983137924ca20cc858b1ca8f69efc10a541b717d SHA512 4dc268cec3ecc77c1739ef628c4c68b8d5f9ebf48bd9912b8b708449bdf0b29d501aeca352c6d62ab3f771585e000684f0c3594d05529c8c27e84b337962e6c3
+EBUILD sunshine-9999.ebuild 11813 BLAKE2B b738e34bcde5aac45bd7857792119b1e9055a81d901029d22313601cff5417cb557b9bc58a958c16b2695d6c3beb137d93a4108dfbc952935da0cf4986db58a1 SHA512 a38e5b4fb0b2e45ed45b2b8da0dfc2738399df1897aafc78ae5f81a9997cbbd897b0fa98a472f611e8d36a8e56e33e5667ec80b62b952326908019c21dabd8c0
MISC metadata.xml 880 BLAKE2B 656a3a283ae7504498d1a67cc343cfa614e21e0422c1076781164822809079eafe8e514d01182e977f7add5a28c4e7e09db985c8e4ea551eef1a1f92609488d9 SHA512 679f3c676ce568e8c0a8b816463c66d69055d0dba740c9065ce8feb36335981df65fff9d47f35e93f6b60337cc59f3da6ec3b83f9bb01905c73f912b50a0366d
diff --git a/net-misc/sunshine/files/sunshine-0.22.0-nvcodec.patch b/net-misc/sunshine/files/sunshine-0.22.0-nvcodec.patch
new file mode 100644
index 000000000000..bc7681beedf0
--- /dev/null
+++ b/net-misc/sunshine/files/sunshine-0.22.0-nvcodec.patch
@@ -0,0 +1,27 @@
+From 36b5a18ffd0cdf379b579db91bfaacc46e8c4757 Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Sun, 18 Feb 2024 10:25:25 +0000
+Subject: [PATCH] Be less strict about the nv-codec-headers version
+
+Using the bundled version is awkward. Restrict the major version only
+and deal with any issues later.
+---
+ src/nvenc/nvenc_base.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/nvenc/nvenc_base.cpp b/src/nvenc/nvenc_base.cpp
+index b9eba5a..e11c4e2 100644
+--- a/src/nvenc/nvenc_base.cpp
++++ b/src/nvenc/nvenc_base.cpp
+@@ -11,7 +11,7 @@
+ // - NV_ENC_*_VER definitions where the value inside NVENCAPI_STRUCT_VERSION() was increased
+ // - Incompatible struct changes in nvEncodeAPI.h (fields removed, semantics changed, etc.)
+ // - Test both old and new drivers with all supported codecs
+-#if NVENCAPI_VERSION != MAKE_NVENC_VER(12U, 0U)
++#if NVENCAPI_MAJOR_VERSION != 12
+ #error Check and update NVENC code for backwards compatibility!
+ #endif
+
+--
+2.43.0
+
diff --git a/net-misc/sunshine/sunshine-0.21.0.ebuild b/net-misc/sunshine/sunshine-0.21.0.ebuild
index f7a4308dec1f..22cf946e4348 100644
--- a/net-misc/sunshine/sunshine-0.21.0.ebuild
+++ b/net-misc/sunshine/sunshine-0.21.0.ebuild
@@ -4,12 +4,10 @@
EAPI=8
# These don't necessarily have to align with the upstream release.
-# We do have nv-codec-headers packaged, but Sunshine is very picky here.
BUILD_DEPS_COMMIT="2aafe061cd52a944cb3b5f86d1f25e9ad2a19bec"
ENET_COMMIT="c6bb0e50118d08252eee308de8412751218442d6"
MOONLIGHT_COMMIT="6e9ed871bc3e013386c775b2ee7d31deb1151068"
NANORS_COMMIT="e9e242e98e27037830490b2a752895ca68f75f8b"
-NV_CODEC_COMMIT="22441b505d9d9afc1e3002290820909846c24bdc"
TRAY_COMMIT="e08bdbe5aa7de0ad9c0ce36257016e07c7e6e2c0"
SWS_COMMIT="27b41f5ee154cca0fce4fe2955dd886d04e3a4ed"
WLRP_COMMIT="4264185db3b7e961e7f157e1cc4fd0ab75137568"
@@ -37,8 +35,6 @@ else
-> moonlight-common-c-${MOONLIGHT_COMMIT}.tar.gz
https://github.com/sleepybishop/nanors/archive/${NANORS_COMMIT}.tar.gz
-> nanors-${NANORS_COMMIT}.tar.gz
- https://github.com/FFmpeg/nv-codec-headers/archive/${NV_CODEC_COMMIT}.tar.gz
- -> nv-codec-headers-${NV_CODEC_COMMIT}.tar.gz
https://github.com/LizardByte/tray/archive/${TRAY_COMMIT}.tar.gz
-> LizardByte-tray-${TRAY_COMMIT}.tar.gz
https://gitlab.com/eidheim/Simple-Web-Server/-/archive/${SWS_COMMIT}/Simple-Web-Server-${SWS_COMMIT}.tar.bz2
@@ -68,6 +64,8 @@ ARM_CPU_FEATURES=(
cpu_flags_arm_vfp:vfp
cpu_flags_arm_vfpv3:vfpv3
cpu_flags_arm_v8:armv8
+ cpu_flags_arm_asimddp:dotprod
+ cpu_flags_arm_i8mm:i8mm
)
ARM_CPU_REQUIRED_USE="
arm64? ( cpu_flags_arm_v8 )
@@ -131,10 +129,13 @@ CDEPEND="
dev-libs/boost:=[nls]
dev-libs/libevdev
dev-libs/openssl:=
- media-libs/libpulse
media-libs/opus
net-libs/miniupnpc:=
net-misc/curl
+ || (
+ media-libs/libpulse
+ media-sound/apulse[sdk]
+ )
libdrm? (
sys-libs/libcap
x11-libs/libdrm
@@ -165,6 +166,8 @@ RDEPEND="
DEPEND="
${CDEPEND}
media-libs/amf-headers
+ media-libs/libva
+ =media-libs/nv-codec-headers-12*
wayland? ( dev-libs/wayland-protocols )
"
@@ -210,7 +213,7 @@ src_unpack() {
local EGIT_REPO_URI="https://github.com/LizardByte/Sunshine.git"
local EGIT_SUBMODULES=(
- third-party/{moonlight-common-c{,/enet},nanors,nv-codec-headers,tray,Simple-Web-Server,wlr-protocols}
+ third-party/{moonlight-common-c{,/enet},nanors,tray,Simple-Web-Server,wlr-protocols}
)
unset EGIT_CHECKOUT_DIR EGIT_COMMIT EGIT_BRANCH
git-r3_src_unpack
@@ -226,7 +229,6 @@ src_unpack() {
ln -snf ../enet-${ENET_COMMIT} moonlight-common-c-${MOONLIGHT_COMMIT}/enet || die
ln -snf ../../moonlight-common-c-${MOONLIGHT_COMMIT} "${S}"/third-party/moonlight-common-c || die
ln -snf ../../nanors-${NANORS_COMMIT} "${S}"/third-party/nanors || die
- ln -snf ../../nv-codec-headers-${NV_CODEC_COMMIT} "${S}"/third-party/nv-codec-headers || die
ln -snf ../../tray-${TRAY_COMMIT} "${S}"/third-party/tray || die
ln -snf ../../Simple-Web-Server-${SWS_COMMIT} "${S}"/third-party/Simple-Web-Server || die
ln -snf ../../wlr-protocols-${WLRP_COMMIT} "${S}"/third-party/wlr-protocols || die
@@ -295,8 +297,6 @@ src_configure() {
for i in "${CPU_FEATURES_MAP[@]}" ; do
use ${i%:*} || myconf+=( --disable-${i#*:} )
done
- # Bug #917277, #917278
- myconf+=( --disable-dotprod --disable-i8mm )
# Try to get cpu type based on CFLAGS.
# Bug #172723
diff --git a/net-misc/sunshine/sunshine-9999.ebuild b/net-misc/sunshine/sunshine-9999.ebuild
index 2a51de91c8f3..c9866cae6e67 100644
--- a/net-misc/sunshine/sunshine-9999.ebuild
+++ b/net-misc/sunshine/sunshine-9999.ebuild
@@ -4,12 +4,10 @@
EAPI=8
# These don't necessarily have to align with the upstream release.
-# We do have nv-codec-headers packaged, but Sunshine is very picky here.
BUILD_DEPS_COMMIT="2aafe061cd52a944cb3b5f86d1f25e9ad2a19bec"
ENET_COMMIT="c6bb0e50118d08252eee308de8412751218442d6"
MOONLIGHT_COMMIT="6e9ed871bc3e013386c775b2ee7d31deb1151068"
NANORS_COMMIT="e9e242e98e27037830490b2a752895ca68f75f8b"
-NV_CODEC_COMMIT="22441b505d9d9afc1e3002290820909846c24bdc"
TRAY_COMMIT="e08bdbe5aa7de0ad9c0ce36257016e07c7e6e2c0"
SWS_COMMIT="27b41f5ee154cca0fce4fe2955dd886d04e3a4ed"
WLRP_COMMIT="4264185db3b7e961e7f157e1cc4fd0ab75137568"
@@ -37,8 +35,6 @@ else
-> moonlight-common-c-${MOONLIGHT_COMMIT}.tar.gz
https://github.com/sleepybishop/nanors/archive/${NANORS_COMMIT}.tar.gz
-> nanors-${NANORS_COMMIT}.tar.gz
- https://github.com/FFmpeg/nv-codec-headers/archive/${NV_CODEC_COMMIT}.tar.gz
- -> nv-codec-headers-${NV_CODEC_COMMIT}.tar.gz
https://github.com/LizardByte/tray/archive/${TRAY_COMMIT}.tar.gz
-> LizardByte-tray-${TRAY_COMMIT}.tar.gz
https://gitlab.com/eidheim/Simple-Web-Server/-/archive/${SWS_COMMIT}/Simple-Web-Server-${SWS_COMMIT}.tar.bz2
@@ -68,6 +64,8 @@ ARM_CPU_FEATURES=(
cpu_flags_arm_vfp:vfp
cpu_flags_arm_vfpv3:vfpv3
cpu_flags_arm_v8:armv8
+ cpu_flags_arm_asimddp:dotprod
+ cpu_flags_arm_i8mm:i8mm
)
ARM_CPU_REQUIRED_USE="
arm64? ( cpu_flags_arm_v8 )
@@ -131,10 +129,13 @@ CDEPEND="
dev-libs/boost:=[nls]
dev-libs/libevdev
dev-libs/openssl:=
- media-libs/libpulse
media-libs/opus
net-libs/miniupnpc:=
net-misc/curl
+ || (
+ media-libs/libpulse
+ media-sound/apulse[sdk]
+ )
libdrm? (
sys-libs/libcap
x11-libs/libdrm
@@ -166,6 +167,7 @@ DEPEND="
${CDEPEND}
dev-cpp/nlohmann_json
media-libs/amf-headers
+ =media-libs/nv-codec-headers-12*
wayland? ( dev-libs/wayland-protocols )
"
@@ -180,6 +182,7 @@ BDEPEND="
PATCHES=(
"${FILESDIR}"/${PN}-custom-ffmpeg.patch
"${FILESDIR}"/${PN}-system-json.patch
+ "${FILESDIR}"/${PN}-0.22.0-nvcodec.patch
)
# Make this mess a bit simpler.
@@ -210,7 +213,7 @@ src_unpack() {
local EGIT_REPO_URI="https://github.com/LizardByte/Sunshine.git"
local EGIT_SUBMODULES=(
- third-party/{moonlight-common-c{,/enet},nanors,nv-codec-headers,tray,Simple-Web-Server,wlr-protocols}
+ third-party/{moonlight-common-c{,/enet},nanors,tray,Simple-Web-Server,wlr-protocols}
)
unset EGIT_CHECKOUT_DIR EGIT_COMMIT EGIT_BRANCH
git-r3_src_unpack
@@ -226,7 +229,6 @@ src_unpack() {
ln -snf ../enet-${ENET_COMMIT} moonlight-common-c-${MOONLIGHT_COMMIT}/enet || die
ln -snf ../../moonlight-common-c-${MOONLIGHT_COMMIT} "${S}"/third-party/moonlight-common-c || die
ln -snf ../../nanors-${NANORS_COMMIT} "${S}"/third-party/nanors || die
- ln -snf ../../nv-codec-headers-${NV_CODEC_COMMIT} "${S}"/third-party/nv-codec-headers || die
ln -snf ../../tray-${TRAY_COMMIT} "${S}"/third-party/tray || die
ln -snf ../../Simple-Web-Server-${SWS_COMMIT} "${S}"/third-party/Simple-Web-Server || die
ln -snf ../../wlr-protocols-${WLRP_COMMIT} "${S}"/third-party/wlr-protocols || die
@@ -295,8 +297,6 @@ src_configure() {
for i in "${CPU_FEATURES_MAP[@]}" ; do
use ${i%:*} || myconf+=( --disable-${i#*:} )
done
- # Bug #917277, #917278
- myconf+=( --disable-dotprod --disable-i8mm )
# Try to get cpu type based on CFLAGS.
# Bug #172723