* [gentoo-commits] repo/gentoo:master commit in: net-misc/sunshine/, net-misc/sunshine/files/
@ 2024-02-27 8:59 James Le Cuirot
0 siblings, 0 replies; 4+ messages in thread
From: James Le Cuirot @ 2024-02-27 8:59 UTC (permalink / raw
To: gentoo-commits
commit: fa7f3ac6899777f88462eef4d83a2f55655c737b
Author: James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 27 08:58:58 2024 +0000
Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Tue Feb 27 08:58:58 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa7f3ac6
net-misc/sunshine: Turns out nlohmann_json is only needed on Windows
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>
.../sunshine/files/sunshine-custom-ffmpeg.patch | 25 +++++-----
net-misc/sunshine/files/sunshine-system-json.patch | 56 ----------------------
net-misc/sunshine/sunshine-9999.ebuild | 3 --
3 files changed, 12 insertions(+), 72 deletions(-)
diff --git a/net-misc/sunshine/files/sunshine-custom-ffmpeg.patch b/net-misc/sunshine/files/sunshine-custom-ffmpeg.patch
index 94febe187c1f..172ae3ff7d59 100644
--- a/net-misc/sunshine/files/sunshine-custom-ffmpeg.patch
+++ b/net-misc/sunshine/files/sunshine-custom-ffmpeg.patch
@@ -1,4 +1,4 @@
-From 64783df9d7ed22916894387a8ff1f73a97dbb760 Mon Sep 17 00:00:00 2001
+From 20c589554a1b10dad206619e11d143c420aa6c82 Mon Sep 17 00:00:00 2001
From: James Le Cuirot <chewi@gentoo.org>
Date: Mon, 1 Jan 2024 11:17:08 +0000
Subject: [PATCH 1/2] Allow a custom FFmpeg build to be provided using CMake
@@ -9,11 +9,11 @@ Subject: [PATCH 1/2] Allow a custom FFmpeg build to be provided using CMake
1 file changed, 50 insertions(+), 40 deletions(-)
diff --git a/cmake/dependencies/common.cmake b/cmake/dependencies/common.cmake
-index a1f3512..d921c1b 100644
+index 29bed10..d43a6e0 100644
--- a/cmake/dependencies/common.cmake
+++ b/cmake/dependencies/common.cmake
-@@ -23,53 +23,63 @@ include_directories(SYSTEM ${MINIUPNP_INCLUDE_DIRS})
- add_subdirectory("${CMAKE_SOURCE_DIR}/third-party/nlohmann_json")
+@@ -20,53 +20,63 @@ pkg_check_modules(MINIUPNP miniupnpc REQUIRED)
+ include_directories(SYSTEM ${MINIUPNP_INCLUDE_DIRS})
# ffmpeg pre-compiled binaries
-if(WIN32)
@@ -117,10 +117,9 @@ index a1f3512..d921c1b 100644
# platform specific dependencies
if(WIN32)
--
-2.43.0
+2.43.2
-
-From b7a479b15216900fdc4cbc5587d8fd90e366f5a5 Mon Sep 17 00:00:00 2001
+From 53cd96560114dd700c943db63723e340100446a3 Mon Sep 17 00:00:00 2001
From: James Le Cuirot <chewi@gentoo.org>
Date: Mon, 1 Jan 2024 13:34:20 +0000
Subject: [PATCH 2/2] Move numa from general PLATFORM_LIBRARIES to
@@ -134,22 +133,22 @@ may be disabled in a custom FFmpeg build.
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/cmake/compile_definitions/linux.cmake b/cmake/compile_definitions/linux.cmake
-index 613a090..e1fda2c 100644
+index b6d1990..ec668f7 100644
--- a/cmake/compile_definitions/linux.cmake
+++ b/cmake/compile_definitions/linux.cmake
-@@ -242,7 +242,6 @@ list(APPEND PLATFORM_LIBRARIES
+@@ -252,7 +252,6 @@ list(APPEND PLATFORM_TARGET_FILES
+ list(APPEND PLATFORM_LIBRARIES
Boost::dynamic_linking
dl
- evdev
- numa
pulse
pulse-simple)
diff --git a/cmake/dependencies/common.cmake b/cmake/dependencies/common.cmake
-index d921c1b..23695e3 100644
+index d43a6e0..bddee03 100644
--- a/cmake/dependencies/common.cmake
+++ b/cmake/dependencies/common.cmake
-@@ -41,7 +41,7 @@ if(NOT DEFINED FFMPEG_PREPARED_BINARIES)
+@@ -38,7 +38,7 @@ if(NOT DEFINED FFMPEG_PREPARED_BINARIES)
message(FATAL_ERROR "Unsupported system processor:" ${CMAKE_SYSTEM_PROCESSOR})
endif()
elseif(UNIX)
@@ -159,5 +158,5 @@ index d921c1b..23695e3 100644
list(APPEND FFMPEG_PLATFORM_LIBRARIES mfx)
set(FFMPEG_PREPARED_BINARIES "${CMAKE_SOURCE_DIR}/third-party/build-deps/ffmpeg/linux-x86_64")
--
-2.43.0
+2.43.2
diff --git a/net-misc/sunshine/files/sunshine-system-json.patch b/net-misc/sunshine/files/sunshine-system-json.patch
deleted file mode 100644
index 62e405e8546f..000000000000
--- a/net-misc/sunshine/files/sunshine-system-json.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From ec7c960954bba6a3aab03ff74fdbd3bc89948d4c Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@gentoo.org>
-Date: Sat, 17 Feb 2024 17:02:45 +0000
-Subject: [PATCH] Optionally allow the system installation of nlohmann_json to
- be used
-
----
- cmake/compile_definitions/common.cmake | 2 +-
- cmake/dependencies/common.cmake | 8 +++++++-
- cmake/prep/options.cmake | 1 +
- 3 files changed, 9 insertions(+), 2 deletions(-)
-
-diff --git a/cmake/compile_definitions/common.cmake b/cmake/compile_definitions/common.cmake
-index 94f1ac5..c65930c 100644
---- a/cmake/compile_definitions/common.cmake
-+++ b/cmake/compile_definitions/common.cmake
-@@ -135,4 +135,4 @@ list(APPEND SUNSHINE_EXTERNAL_LIBRARIES
- ${OPENSSL_LIBRARIES}
- ${CURL_LIBRARIES}
- ${PLATFORM_LIBRARIES}
-- nlohmann_json::nlohmann_json)
-+ ${JSON_LIBRARIES})
-diff --git a/cmake/dependencies/common.cmake b/cmake/dependencies/common.cmake
-index a1f3512..849afe7 100644
---- a/cmake/dependencies/common.cmake
-+++ b/cmake/dependencies/common.cmake
-@@ -20,7 +20,13 @@ pkg_check_modules(MINIUPNP miniupnpc REQUIRED)
- include_directories(SYSTEM ${MINIUPNP_INCLUDE_DIRS})
-
- # nlohmann_json
--add_subdirectory("${CMAKE_SOURCE_DIR}/third-party/nlohmann_json")
-+if(NOT SUNSHINE_SYSTEM_NLOHMANN_JSON)
-+ add_subdirectory("${CMAKE_SOURCE_DIR}/third-party/nlohmann_json")
-+ set(JSON_LIBRARIES nlohmann_json::nlohmann_json)
-+else()
-+ pkg_check_modules(NLOHMANN_JSON nlohmann_json REQUIRED IMPORTED_TARGET)
-+ set(JSON_LIBRARIES PkgConfig::NLOHMANN_JSON)
-+endif()
-
- # ffmpeg pre-compiled binaries
- if(WIN32)
-diff --git a/cmake/prep/options.cmake b/cmake/prep/options.cmake
-index 7a8d728..8a7c2f6 100644
---- a/cmake/prep/options.cmake
-+++ b/cmake/prep/options.cmake
-@@ -4,6 +4,7 @@ option(SUNSHINE_CONFIGURE_ONLY "Configure special files only, then exit." OFF)
- option(SUNSHINE_ENABLE_TRAY "Enable system tray icon. This option will be ignored on macOS." ON)
- option(SUNSHINE_REQUIRE_TRAY "Require system tray icon. Fail the build if tray requirements are not met." ON)
-
-+option(SUNSHINE_SYSTEM_NLOHMANN_JSON "Use system installation of nlohmann_json rather than the submodule." OFF)
- option(SUNSHINE_SYSTEM_WAYLAND_PROTOCOLS "Use system installation of wayland-protocols rather than the submodule." OFF)
-
- if(APPLE)
---
-2.43.0
-
diff --git a/net-misc/sunshine/sunshine-9999.ebuild b/net-misc/sunshine/sunshine-9999.ebuild
index c9866cae6e67..c88478b1a500 100644
--- a/net-misc/sunshine/sunshine-9999.ebuild
+++ b/net-misc/sunshine/sunshine-9999.ebuild
@@ -165,7 +165,6 @@ RDEPEND="
DEPEND="
${CDEPEND}
- dev-cpp/nlohmann_json
media-libs/amf-headers
=media-libs/nv-codec-headers-12*
wayland? ( dev-libs/wayland-protocols )
@@ -181,7 +180,6 @@ BDEPEND="
PATCHES=(
"${FILESDIR}"/${PN}-custom-ffmpeg.patch
- "${FILESDIR}"/${PN}-system-json.patch
"${FILESDIR}"/${PN}-0.22.0-nvcodec.patch
)
@@ -346,7 +344,6 @@ src_configure() {
-DSUNSHINE_ENABLE_X11=$(usex X)
-DSUNSHINE_ENABLE_TRAY=$(usex trayicon)
-DSUNSHINE_REQUIRE_TRAY=$(usex trayicon)
- -DSUNSHINE_SYSTEM_NLOHMANN_JSON=yes
-DSUNSHINE_SYSTEM_WAYLAND_PROTOCOLS=yes
-DSYSTEMD_USER_UNIT_INSTALL_DIR=$(systemd_get_userunitdir)
-DUDEV_RULES_INSTALL_DIR=$(get_udevdir)/rules.d
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-misc/sunshine/, net-misc/sunshine/files/
@ 2024-03-01 23:31 James Le Cuirot
0 siblings, 0 replies; 4+ messages in thread
From: James Le Cuirot @ 2024-03-01 23:31 UTC (permalink / raw
To: gentoo-commits
commit: c7915a37767f37dc8256568f440355d9e1e33e53
Author: James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 1 23:21:39 2024 +0000
Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Fri Mar 1 23:31:29 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7915a37
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 <AT> gentoo.org>
net-misc/sunshine/files/sunshine-cross-cbs.patch | 59 ++++++++++++++++++++++++
net-misc/sunshine/sunshine-0.21.0.ebuild | 6 ++-
net-misc/sunshine/sunshine-9999.ebuild | 6 ++-
3 files changed, 67 insertions(+), 4 deletions(-)
diff --git a/net-misc/sunshine/files/sunshine-cross-cbs.patch b/net-misc/sunshine/files/sunshine-cross-cbs.patch
new file mode 100644
index 000000000000..e6173597e476
--- /dev/null
+++ b/net-misc/sunshine/files/sunshine-cross-cbs.patch
@@ -0,0 +1,59 @@
+From 40654399bd090dda20750b184eb6b15bc615a5dc Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Sun, 25 Feb 2024 16:24:25 +0000
+Subject: [PATCH] Fix cross-compiling and don't treat x86 as the default case
+
+If you set arch-specific CFLAGS, then ffmpeg's configure script may
+fail when it tries to use these flags against the build host's compiler.
+
+Also use CMAKE_SYSTEM_PROCESSOR to set up cross-compiling without
+relying on any custom variables. ffmpeg normalises its --arch option and
+will accept just about any string that you'll likely throw at it.
+
+diff --git a/cmake/ffmpeg_cbs.cmake b/cmake/ffmpeg_cbs.cmake
+index 573bec0..4a75e1a 100644
+--- a/cmake/ffmpeg_cbs.cmake
++++ b/cmake/ffmpeg_cbs.cmake
+@@ -30,23 +30,30 @@ if (WIN32)
+ set(LEADING_SH_COMMAND sh)
+ endif ()
+
+-if (CROSS_COMPILE_ARM)
+- set(FFMPEG_EXTRA_CONFIGURE
+- --arch=aarch64
+- --enable-cross-compile)
++string(TOLOWER ${CMAKE_SYSTEM_PROCESSOR} arch)
++
++if (${arch} STREQUAL "aarch64" OR ${arch} STREQUAL "arm64")
+ set(CBS_ARCH_PATH arm)
+-elseif (CROSS_COMPILE_PPC)
+- set(FFMPEG_EXTRA_CONFIGURE
+- --arch=powerpc64le
+- --enable-cross-compile)
++elseif (${arch} STREQUAL "ppc64le")
+ set(CBS_ARCH_PATH ppc)
+-else ()
++elseif (${arch} STREQUAL "amd64" OR ${arch} STREQUAL "x86_64")
+ set(CBS_ARCH_PATH x86)
++else ()
++ message(FATAL_ERROR "Unsupported system processor:" ${CMAKE_SYSTEM_PROCESSOR})
++endif ()
++
++if (CMAKE_CROSSCOMPILING)
++ set(FFMPEG_EXTRA_CONFIGURE --arch=${arch} --enable-cross-compile)
+ endif ()
+
+ # The generated config.h needs to have `CONFIG_CBS_` flags enabled (from `--enable-bsfs`)
+ execute_process(
+ COMMAND ${LEADING_SH_COMMAND} ./configure
++ --cc=${CMAKE_C_COMPILER}
++ --cxx=${CMAKE_CXX_COMPILER}
++ --ar=${CMAKE_AR}
++ --ranlib=${CMAKE_RANLIB}
++ --optflags=${CMAKE_C_FLAGS}
+ --disable-all
+ --disable-autodetect
+ --disable-iconv
+--
+2.43.2
+
diff --git a/net-misc/sunshine/sunshine-0.21.0.ebuild b/net-misc/sunshine/sunshine-0.21.0.ebuild
index 22cf946e4348..1c21649b7929 100644
--- a/net-misc/sunshine/sunshine-0.21.0.ebuild
+++ b/net-misc/sunshine/sunshine-0.21.0.ebuild
@@ -237,6 +237,10 @@ src_unpack() {
}
src_prepare() {
+ # Apply CBS patch.
+ cd "${WORKDIR}"/build-deps || die
+ eapply "${FILESDIR}"/${PN}-cross-cbs.patch
+
# Apply general ffmpeg patches.
cd "${WORKDIR}"/build-deps/ffmpeg_sources/ffmpeg || die
eapply "${WORKDIR}"/build-deps/ffmpeg_patches/ffmpeg/*.patch
@@ -329,8 +333,6 @@ src_configure() {
local mycmakeargs=(
-DBUILD_SHARED_LIBS=no
-DCMAKE_INSTALL_PREFIX="${S}"/third-party/ffmpeg
- $(usex arm64 -DCROSS_COMPILE_ARM=yes "")
- $(usex ppc64 -DCROSS_COMPILE_PPC=yes "")
)
CMAKE_USE_DIR="${WORKDIR}/build-deps" cmake_src_configure
diff --git a/net-misc/sunshine/sunshine-9999.ebuild b/net-misc/sunshine/sunshine-9999.ebuild
index c88478b1a500..641289cdc732 100644
--- a/net-misc/sunshine/sunshine-9999.ebuild
+++ b/net-misc/sunshine/sunshine-9999.ebuild
@@ -235,6 +235,10 @@ src_unpack() {
}
src_prepare() {
+ # Apply CBS patch.
+ cd "${WORKDIR}"/build-deps || die
+ eapply "${FILESDIR}"/${PN}-cross-cbs.patch
+
# Apply general ffmpeg patches.
cd "${WORKDIR}"/build-deps/ffmpeg_sources/ffmpeg || die
eapply "${WORKDIR}"/build-deps/ffmpeg_patches/ffmpeg/*.patch
@@ -327,8 +331,6 @@ src_configure() {
local mycmakeargs=(
-DBUILD_SHARED_LIBS=no
-DCMAKE_INSTALL_PREFIX="${S}"/third-party/ffmpeg
- $(usex arm64 -DCROSS_COMPILE_ARM=yes "")
- $(usex ppc64 -DCROSS_COMPILE_PPC=yes "")
)
CMAKE_USE_DIR="${WORKDIR}/build-deps" cmake_src_configure
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-misc/sunshine/, net-misc/sunshine/files/
@ 2024-03-09 15:02 James Le Cuirot
0 siblings, 0 replies; 4+ messages in thread
From: James Le Cuirot @ 2024-03-09 15:02 UTC (permalink / raw
To: gentoo-commits
commit: 1f211c5d5f9784aa2c01b84a37e412824a54da48
Author: James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 9 15:01:55 2024 +0000
Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Sat Mar 9 15:01:55 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1f211c5d
net-misc/sunshine: Bump to 0.22.0, drop old 0.21.0
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>
net-misc/sunshine/Manifest | 10 +-
.../sunshine/files/sunshine-0.21.0-no-x11.patch | 36 ---
.../files/sunshine-0.21.0-system-deps.patch | 341 ---------------------
.../sunshine/files/sunshine-0.21.0-vaapi.patch | 26 --
...nshine-0.21.0.ebuild => sunshine-0.22.0.ebuild} | 28 +-
net-misc/sunshine/sunshine-9999.ebuild | 16 +-
6 files changed, 29 insertions(+), 428 deletions(-)
diff --git a/net-misc/sunshine/Manifest b/net-misc/sunshine/Manifest
index e440c1023dbc..e82f11764723 100644
--- a/net-misc/sunshine/Manifest
+++ b/net-misc/sunshine/Manifest
@@ -1,10 +1,10 @@
DIST LizardByte-build-deps-2aafe061cd52a944cb3b5f86d1f25e9ad2a19bec.tar.gz 24171 BLAKE2B bcc8f1829eae4ba85a9cbdaca7876a4a52c979f3b8ef0f0a56876fcb171025544bd1997455c2b8fff59564deca433366ae03f14cbb0929f78c87f991b269156f SHA512 892184ec0ff321b2b7e2000dc605d1162955cb04ff259f6032f124f1ff50a1fe485e2cf2c0b735788f8615c9aba87ca040205599cb4b91881daa462a53340bd7
-DIST LizardByte-tray-e08bdbe5aa7de0ad9c0ce36257016e07c7e6e2c0.tar.gz 1066914 BLAKE2B 814e4aeace655cb06d50cbe26847f107b4141cec40fc812b924e87e4e14c7cddf8ee6dce0f54f76bf1f5c8dd355a8d7e32485759caa2c91aa24b1c594f1a879d SHA512 04df675d3fa8676b08a566bbbfb90af80b1efdd5ffc264f9aced3116ad1a3ad14c80a486a84f1ed800fd2ea2c2046e36f2919a2bb48cecdfca3baa3b650d3c48
+DIST LizardByte-tray-2bf1c610300b27f8d8ce87e2f13223fc83efeb42.tar.gz 1067540 BLAKE2B f832dc11398086236817f25e2343831bd7533737d851958df2bcc155a204f99bd0b491a5c259bf559d83108ec71afc3e85424d79040a641a4bcb832419120da6 SHA512 fa2bacc412268e82c03718e954914fc713d271398dfbef2a86c4da649f63233aff9bf6e99b08d6f3c8385d0c96f25d9d54b145d8d7422a82e80b5aa2e62de641
DIST Simple-Web-Server-27b41f5ee154cca0fce4fe2955dd886d04e3a4ed.tar.bz2 63258 BLAKE2B e80a6cd92825038ca75b973281b676584f9e488b45b1f9c6ed526236c0a7188b97ae2bba9d7b5557893452dd1ba8778faff2ade840cc169d20b4cf0e51fc8394 SHA512 2eba1d8bd53bb3e29e51a72000918b44730f73b4df26824f25cb6a4860dd21f8aaa7f77124fb500ffe9601ebeca66d1c21a06cad239ed27481e9cae088afbd44
DIST ffmpeg-6.1.1.tar.xz 10458600 BLAKE2B 77827ff92b47c773ed82e7b7793dbb135c370fe23501169cb1eab08ff5ede77cfd5b397e8fb1d38756812cc82277898fd5c74b7d8495842556570c0c5570daeb SHA512 fca3f8635f29182e3ae0fe843a8a53614e4b47e22c11508df3ff7cdbafbb4b5ee0d82d9b3332871f7c1032033b1cad2f67557d7c5f7f7d85e2adadca122965d5
-DIST moonlight-common-c-6e9ed871bc3e013386c775b2ee7d31deb1151068.tar.gz 143942 BLAKE2B d8e98cffc683cc7ef6ad9e58c0a154a60e4bf5742fba8c4bce270b84c2af6ff455a6f7e2920e3b83db052c2a1632e787f9a444b381a8a7476ab79fa4f79560ad SHA512 a9024ba400e6804c0b26db57fa16ddbcd080982f852d26fd1ca8ae84f969bacd883c4adc83105bd18e1af4d34e831dc241d0278f88549b46497eb62c72f39bf2
-DIST moonlight-enet-c6bb0e50118d08252eee308de8412751218442d6.tar.gz 85497 BLAKE2B 484cf25d37ed230946edc7417ca20ea4c16828f2a099fd6a88dca08dc78a5314e837c96d9a7536ace3e45c55d0edd8698568af8d5087adc7429bc4d3966cfbae SHA512 1e7f93639139ec3d02c5b442dd2d49e2ab8e729b7c4ee51d9b2da4061f8e3794e7984858cfb87d279b85939a9fed6d0c4a3b9994c30597791461e612a64843e2
+DIST moonlight-common-c-cbd0ec1b25edfb8ee8645fffa49ff95b6e04c70e.tar.gz 148691 BLAKE2B 2650e48ef5d08b5e4a901e0b394364335503cd717ae75b4ecf5329395f39d3312a9bbfe08137d2b7697f7b1672749d148e100fbaa5c7f87d190ab8157f158639 SHA512 f1d7848138b85a88abf798774f12f6491e19ae5e7699715b0454bfccc184439fba0ebf7e05327fd649e320e5d1ad610c57fe71190f92cf2248c8f974f9d79aaf
+DIST moonlight-enet-04e27590670a87a7cd40f5a05cda97467e4e25a3.tar.gz 86434 BLAKE2B 8a5535843e4c650b945882abac1542bf8c79dc420607b88433d239aa5a17380f02e77bb8f1fcbe45dcb8ef894e6c9b4d940f4d3b34b956ce42d86f6a8ca5227a SHA512 6d2e9447e546489365b1fb563ed52664a91981717a3a3a9faa9600ab62be5ac09bd24ee9dd505833d31981ce6222f5ef430268a9f92aa83fa288b5b8d681e2aa
DIST nanors-e9e242e98e27037830490b2a752895ca68f75f8b.tar.gz 194694 BLAKE2B 1effd7c0884ffd38b63d61a7872337797529ef2012f9de0950088a5004cb32a2fb2c14bcab2ec6719968864e5e6b9a67e96afa39466e2071bf4a0cd752ae4b29 SHA512 548be25650619a6c31944cd7a745fd40d5bc5008f2d7f91e0207a10b923764cb88fd2ddcb71eaed7c4863ec89b34d61011b666e292da071ac3b4429e4d7dd027
-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 sunshine-0.22.0.tar.gz 24103053 BLAKE2B ddb8cfd8df6d5307f1008bfed28c10d05737cee70e8c33e18229e916f4e6aa415cf797bb16127f0e8076af4e9648baff6b0ec5775dd5cba1a9791b0d80f6d834 SHA512 b9b5bff58b4f69b49fe0b62b1cc9e00e1e7e923492d3475ff6cb93f9dbd233751497d62ea3c84100a2b153bcfa7ae84a1819dcebe9fa6816859779a96ca66754
+DIST sunshine-npm-cache-0.22.0.tar.xz 22447384 BLAKE2B 33ab2fd0fde252285bcacc231a32e50b486db7141d425850378c6633da3ba9652cc76a0ef95b6fb9307f9fe59677203a5d861ef143acf609b3b46e0c5727ac34 SHA512 8e5e05421533d467eeac55435de06dab5510993e4f3bb7fa081b80d478497dcc7575d656222178aa01a3f110a781cbd14bb94ca704ef61877b1a02d51960f09d
DIST wlr-protocols-4264185db3b7e961e7f157e1cc4fd0ab75137568.tar.bz2 19574 BLAKE2B 65666095f186857e3c5274b23d5c40b40b0ba5d945c7b34331a06320128cb69a36a76baf2381b635858736ca6ed438c2ed67c03fac1c20e1ec4d71de27037e42 SHA512 0e6afde055d9b76bcb8c717433b78814f2cf9338ead451d3119f62463198ef272029767898e8f7d32896f2732be3aaa2a0373c671d8196e745d62f6116cd1583
diff --git a/net-misc/sunshine/files/sunshine-0.21.0-no-x11.patch b/net-misc/sunshine/files/sunshine-0.21.0-no-x11.patch
deleted file mode 100644
index a013be390095..000000000000
--- a/net-misc/sunshine/files/sunshine-0.21.0-no-x11.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 34ca4390bbae4dadf451af7dd4ec920a263558be Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@gentoo.org>
-Date: Sun, 31 Dec 2023 20:57:45 +0000
-Subject: [PATCH 2/2] Fix grabbing code when DRM is enabled and X11 is disabled
- (#1956)
-
----
- src/platform/linux/x11grab.h | 5 +----
- 1 file changed, 1 insertion(+), 4 deletions(-)
-
-diff --git a/src/platform/linux/x11grab.h b/src/platform/linux/x11grab.h
-index 24e96f6..4c2f347 100644
---- a/src/platform/linux/x11grab.h
-+++ b/src/platform/linux/x11grab.h
-@@ -51,9 +51,6 @@ namespace platf::x11 {
- xdisplay_t
- make_display();
- #else
-- // It's never something different from nullptr
-- util::safe_ptr<_XDisplay, std::default_delete<_XDisplay>>;
--
- class cursor_t {
- public:
- static std::optional<cursor_t>
-@@ -65,7 +62,7 @@ namespace platf::x11 {
- blend(img_t &, int, int) {}
- };
-
-- xdisplay_t
-+ void *
- make_display() { return nullptr; }
- #endif
- } // namespace platf::x11
---
-2.43.0
-
diff --git a/net-misc/sunshine/files/sunshine-0.21.0-system-deps.patch b/net-misc/sunshine/files/sunshine-0.21.0-system-deps.patch
deleted file mode 100644
index bfb5d41aba15..000000000000
--- a/net-misc/sunshine/files/sunshine-0.21.0-system-deps.patch
+++ /dev/null
@@ -1,341 +0,0 @@
-From 9ac47f2b21391758065cc32df2d54e59a56425b8 Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@gentoo.org>
-Date: Mon, 1 Jan 2024 01:04:04 +0000
-Subject: [PATCH 1/4] Optionally allow the system installation of MiniUPnP to
- be used (#1959)
-
----
- cmake/compile_definitions/common.cmake | 2 +-
- cmake/dependencies/common.cmake | 38 ++++++++++++++++++--------
- cmake/prep/options.cmake | 2 ++
- 3 files changed, 29 insertions(+), 13 deletions(-)
-
-diff --git a/cmake/compile_definitions/common.cmake b/cmake/compile_definitions/common.cmake
-index f10b200..c096920 100644
---- a/cmake/compile_definitions/common.cmake
-+++ b/cmake/compile_definitions/common.cmake
-@@ -118,7 +118,7 @@ else()
- endif()
-
- list(APPEND SUNSHINE_EXTERNAL_LIBRARIES
-- libminiupnpc-static
-+ ${MINIUPNP_LIBRARIES}
- ${CMAKE_THREAD_LIBS_INIT}
- enet
- opus
-diff --git a/cmake/dependencies/common.cmake b/cmake/dependencies/common.cmake
-index 9bc7c56..b26b12a 100644
---- a/cmake/dependencies/common.cmake
-+++ b/cmake/dependencies/common.cmake
-@@ -9,13 +9,33 @@ add_subdirectory(third-party/moonlight-common-c/enet)
- # web server
- add_subdirectory(third-party/Simple-Web-Server)
-
-+# common dependencies
-+find_package(OpenSSL REQUIRED)
-+find_package(PkgConfig REQUIRED)
-+find_package(Threads REQUIRED)
-+pkg_check_modules(CURL REQUIRED libcurl)
-+
- # miniupnp
--set(UPNPC_BUILD_SHARED OFF CACHE BOOL "No shared libraries")
--set(UPNPC_BUILD_TESTS OFF CACHE BOOL "Don't build tests for miniupnpc")
--set(UPNPC_BUILD_SAMPLE OFF CACHE BOOL "Don't build samples for miniupnpc")
--set(UPNPC_NO_INSTALL ON CACHE BOOL "Don't install any libraries build for miniupnpc")
--add_subdirectory(third-party/miniupnp/miniupnpc)
--include_directories(SYSTEM third-party/miniupnp/miniupnpc/include)
-+if(SUNSHINE_SYSTEM_MINIUPNP)
-+ pkg_check_modules(MINIUPNP miniupnpc REQUIRED)
-+
-+ # Use includedir pkg-config variable rather than MINIUPNP_INCLUDE_DIRS
-+ # defined above. The latter may be blank, as pkg-config sometimes omits -I
-+ # flags for directories that are searched by default (e.g. /usr/include),
-+ # but we need a value to append /miniupnpc to. Normally source files would
-+ # prefix their #include directives with miniupnpc/, but this does not align
-+ # with the directory structure of the git submodule used below.
-+ pkg_get_variable(MINIUPNP_INCLUDE_DIR miniupnpc includedir)
-+ include_directories(SYSTEM ${MINIUPNP_INCLUDE_DIR}/miniupnpc)
-+else()
-+ set(UPNPC_BUILD_SHARED OFF CACHE BOOL "No shared libraries")
-+ set(UPNPC_BUILD_TESTS OFF CACHE BOOL "Don't build tests for miniupnpc")
-+ set(UPNPC_BUILD_SAMPLE OFF CACHE BOOL "Don't build samples for miniupnpc")
-+ set(UPNPC_NO_INSTALL ON CACHE BOOL "Don't install any libraries build for miniupnpc")
-+ set(MINIUPNP_LIBRARIES libminiupnpc-static)
-+ add_subdirectory(third-party/miniupnp/miniupnpc)
-+ include_directories(SYSTEM third-party/miniupnp/miniupnpc/include)
-+endif()
-
- # ffmpeg pre-compiled binaries
- if(WIN32)
-@@ -66,12 +86,6 @@ set(FFMPEG_LIBRARIES
- ${HDR10_PLUS_LIBRARY}
- ${FFMPEG_PLATFORM_LIBRARIES})
-
--# common dependencies
--find_package(OpenSSL REQUIRED)
--find_package(PkgConfig REQUIRED)
--find_package(Threads REQUIRED)
--pkg_check_modules(CURL REQUIRED libcurl)
--
- # platform specific dependencies
- if(WIN32)
- include(${CMAKE_MODULE_PATH}/dependencies/windows.cmake)
-diff --git a/cmake/prep/options.cmake b/cmake/prep/options.cmake
-index 1a216d2..cb26461 100644
---- a/cmake/prep/options.cmake
-+++ b/cmake/prep/options.cmake
-@@ -4,6 +4,8 @@ option(SUNSHINE_CONFIGURE_ONLY "Configure special files only, then exit." OFF)
- option(SUNSHINE_ENABLE_TRAY "Enable system tray icon. This option will be ignored on macOS." ON)
- option(SUNSHINE_REQUIRE_TRAY "Require system tray icon. Fail the build if tray requirements are not met." ON)
-
-+option(SUNSHINE_SYSTEM_MINIUPNP "Use system installation of MiniUPnP rather than the submodule." OFF)
-+
- if(APPLE)
- option(SUNSHINE_CONFIGURE_PORTFILE
- "Configure macOS Portfile. Recommended to use with SUNSHINE_CONFIGURE_ONLY" OFF)
---
-2.43.0
-
-
-From 2056874748872e820c343556fc6ede4449e376f8 Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@gentoo.org>
-Date: Mon, 1 Jan 2024 16:49:00 +0000
-Subject: [PATCH 2/4] Optionally allow the system installation of
- wayland-protocols to be used (#1966)
-
----
- cmake/compile_definitions/linux.cmake | 11 +++++++++--
- cmake/macros/linux.cmake | 8 ++++----
- cmake/prep/options.cmake | 1 +
- 3 files changed, 14 insertions(+), 6 deletions(-)
-
-diff --git a/cmake/compile_definitions/linux.cmake b/cmake/compile_definitions/linux.cmake
-index f28152e..a13a823 100644
---- a/cmake/compile_definitions/linux.cmake
-+++ b/cmake/compile_definitions/linux.cmake
-@@ -127,8 +127,15 @@ endif()
- if(WAYLAND_FOUND)
- add_compile_definitions(SUNSHINE_BUILD_WAYLAND)
-
-- GEN_WAYLAND("wayland-protocols" "unstable/xdg-output" xdg-output-unstable-v1)
-- GEN_WAYLAND("wlr-protocols" "unstable" wlr-export-dmabuf-unstable-v1)
-+ if(NOT SUNSHINE_SYSTEM_WAYLAND_PROTOCOLS)
-+ set(WAYLAND_PROTOCOLS_DIR "${CMAKE_SOURCE_DIR}/third-party/wayland-protocols")
-+ else()
-+ pkg_get_variable(WAYLAND_PROTOCOLS_DIR wayland-protocols pkgdatadir)
-+ pkg_check_modules(WAYLAND_PROTOCOLS wayland-protocols REQUIRED)
-+ endif()
-+
-+ GEN_WAYLAND("${WAYLAND_PROTOCOLS_DIR}" "unstable/xdg-output" xdg-output-unstable-v1)
-+ GEN_WAYLAND("${CMAKE_SOURCE_DIR}/third-party/wlr-protocols" "unstable" wlr-export-dmabuf-unstable-v1)
-
- include_directories(
- SYSTEM
-diff --git a/cmake/macros/linux.cmake b/cmake/macros/linux.cmake
-index d84d045..0bb5e04 100644
---- a/cmake/macros/linux.cmake
-+++ b/cmake/macros/linux.cmake
-@@ -5,17 +5,17 @@ macro(GEN_WAYLAND wayland_directory subdirectory filename)
- file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/generated-src)
-
- message("wayland-scanner private-code \
--${CMAKE_SOURCE_DIR}/third-party/${wayland_directory}/${subdirectory}/${filename}.xml \
-+${wayland_directory}/${subdirectory}/${filename}.xml \
- ${CMAKE_BINARY_DIR}/generated-src/${filename}.c")
- message("wayland-scanner client-header \
--${CMAKE_SOURCE_DIR}/third-party/${wayland_directory}/${subdirectory}/${filename}.xml \
-+${wayland_directory}/${subdirectory}/${filename}.xml \
- ${CMAKE_BINARY_DIR}/generated-src/${filename}.h")
- execute_process(
- COMMAND wayland-scanner private-code
-- ${CMAKE_SOURCE_DIR}/third-party/${wayland_directory}/${subdirectory}/${filename}.xml
-+ ${wayland_directory}/${subdirectory}/${filename}.xml
- ${CMAKE_BINARY_DIR}/generated-src/${filename}.c
- COMMAND wayland-scanner client-header
-- ${CMAKE_SOURCE_DIR}/third-party/${wayland_directory}/${subdirectory}/${filename}.xml
-+ ${wayland_directory}/${subdirectory}/${filename}.xml
- ${CMAKE_BINARY_DIR}/generated-src/${filename}.h
-
- RESULT_VARIABLE EXIT_INT
-diff --git a/cmake/prep/options.cmake b/cmake/prep/options.cmake
-index cb26461..dc6b5f6 100644
---- a/cmake/prep/options.cmake
-+++ b/cmake/prep/options.cmake
-@@ -5,6 +5,7 @@ option(SUNSHINE_ENABLE_TRAY "Enable system tray icon. This option will be ignore
- option(SUNSHINE_REQUIRE_TRAY "Require system tray icon. Fail the build if tray requirements are not met." ON)
-
- option(SUNSHINE_SYSTEM_MINIUPNP "Use system installation of MiniUPnP rather than the submodule." OFF)
-+option(SUNSHINE_SYSTEM_WAYLAND_PROTOCOLS "Use system installation of wayland-protocols rather than the submodule." OFF)
-
- if(APPLE)
- option(SUNSHINE_CONFIGURE_PORTFILE
---
-2.43.0
-
-
-From a0a6d322c292efa67a59df7b4c71beeb17b322ce Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@gentoo.org>
-Date: Mon, 1 Jan 2024 11:17:08 +0000
-Subject: [PATCH 3/4] Allow a custom FFmpeg build to be provided using CMake
- options
-
----
- cmake/dependencies/common.cmake | 96 ++++++++++++++++++---------------
- 1 file changed, 53 insertions(+), 43 deletions(-)
-
-diff --git a/cmake/dependencies/common.cmake b/cmake/dependencies/common.cmake
-index b26b12a..30069d3 100644
---- a/cmake/dependencies/common.cmake
-+++ b/cmake/dependencies/common.cmake
-@@ -38,53 +38,63 @@ else()
- endif()
-
- # ffmpeg pre-compiled binaries
--if(WIN32)
-- if(NOT CMAKE_SYSTEM_PROCESSOR STREQUAL "AMD64")
-- message(FATAL_ERROR "Unsupported system processor:" ${CMAKE_SYSTEM_PROCESSOR})
-- endif()
-- set(FFMPEG_PLATFORM_LIBRARIES mfplat ole32 strmiids mfuuid vpl)
-- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-windows-x86_64")
--elseif(APPLE)
-- if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
-- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-macos-x86_64")
-- elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
-- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-macos-aarch64")
-- elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "powerpc")
-- message(FATAL_ERROR "PowerPC is not supported on macOS")
-- else()
-- message(FATAL_ERROR "Unsupported system processor:" ${CMAKE_SYSTEM_PROCESSOR})
-+if(NOT DEFINED FFMPEG_PREPARED_BINARIES)
-+ if(WIN32)
-+ if(NOT CMAKE_SYSTEM_PROCESSOR STREQUAL "AMD64")
-+ message(FATAL_ERROR "Unsupported system processor:" ${CMAKE_SYSTEM_PROCESSOR})
-+ endif()
-+ set(FFMPEG_PLATFORM_LIBRARIES mfplat ole32 strmiids mfuuid vpl)
-+ set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-windows-x86_64")
-+ elseif(APPLE)
-+ if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
-+ set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-macos-x86_64")
-+ elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
-+ set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-macos-aarch64")
-+ elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "powerpc")
-+ message(FATAL_ERROR "PowerPC is not supported on macOS")
-+ else()
-+ message(FATAL_ERROR "Unsupported system processor:" ${CMAKE_SYSTEM_PROCESSOR})
-+ endif()
-+ elseif(UNIX)
-+ set(FFMPEG_PLATFORM_LIBRARIES va va-drm va-x11 vdpau X11)
-+ if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
-+ list(APPEND FFMPEG_PLATFORM_LIBRARIES mfx)
-+ set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-linux-x86_64")
-+ set(CPACK_DEB_PLATFORM_PACKAGE_DEPENDS "libmfx1,")
-+ set(CPACK_RPM_PLATFORM_PACKAGE_REQUIRES "intel-mediasdk >= 22.3.0,")
-+ elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
-+ set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-linux-aarch64")
-+ elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "ppc64le" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "ppc64")
-+ set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-linux-powerpc64le")
-+ else()
-+ message(FATAL_ERROR "Unsupported system processor:" ${CMAKE_SYSTEM_PROCESSOR})
-+ endif()
- endif()
--elseif(UNIX)
-- set(FFMPEG_PLATFORM_LIBRARIES va va-drm va-x11 vdpau X11)
-- if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
-- list(APPEND FFMPEG_PLATFORM_LIBRARIES mfx)
-- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-linux-x86_64")
-- set(CPACK_DEB_PLATFORM_PACKAGE_DEPENDS "libmfx1,")
-- set(CPACK_RPM_PLATFORM_PACKAGE_REQUIRES "intel-mediasdk >= 22.3.0,")
-- elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
-- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-linux-aarch64")
-- elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "ppc64le" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "ppc64")
-- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-linux-powerpc64le")
-- else()
-- message(FATAL_ERROR "Unsupported system processor:" ${CMAKE_SYSTEM_PROCESSOR})
-+ if(EXISTS ${FFMPEG_PREPARED_BINARIES}/lib/libhdr10plus.a)
-+ set(HDR10_PLUS_LIBRARY
-+ ${FFMPEG_PREPARED_BINARIES}/lib/libhdr10plus.a)
- endif()
-+ set(FFMPEG_LIBRARIES
-+ ${FFMPEG_PREPARED_BINARIES}/lib/libavcodec.a
-+ ${FFMPEG_PREPARED_BINARIES}/lib/libavutil.a
-+ ${FFMPEG_PREPARED_BINARIES}/lib/libcbs.a
-+ ${FFMPEG_PREPARED_BINARIES}/lib/libSvtAv1Enc.a
-+ ${FFMPEG_PREPARED_BINARIES}/lib/libswscale.a
-+ ${FFMPEG_PREPARED_BINARIES}/lib/libx264.a
-+ ${FFMPEG_PREPARED_BINARIES}/lib/libx265.a
-+ ${HDR10_PLUS_LIBRARY}
-+ ${FFMPEG_PLATFORM_LIBRARIES})
-+else()
-+ set(FFMPEG_LIBRARIES
-+ "${FFMPEG_PREPARED_BINARIES}/lib/libavcodec.a"
-+ "${FFMPEG_PREPARED_BINARIES}/lib/libavutil.a"
-+ "${FFMPEG_PREPARED_BINARIES}/lib/libcbs.a"
-+ "${FFMPEG_PREPARED_BINARIES}/lib/libswscale.a"
-+ ${FFMPEG_PLATFORM_LIBRARIES})
- endif()
-+
- set(FFMPEG_INCLUDE_DIRS
-- ${FFMPEG_PREPARED_BINARIES}/include)
--if(EXISTS ${FFMPEG_PREPARED_BINARIES}/lib/libhdr10plus.a)
-- set(HDR10_PLUS_LIBRARY
-- ${FFMPEG_PREPARED_BINARIES}/lib/libhdr10plus.a)
--endif()
--set(FFMPEG_LIBRARIES
-- ${FFMPEG_PREPARED_BINARIES}/lib/libavcodec.a
-- ${FFMPEG_PREPARED_BINARIES}/lib/libavutil.a
-- ${FFMPEG_PREPARED_BINARIES}/lib/libcbs.a
-- ${FFMPEG_PREPARED_BINARIES}/lib/libSvtAv1Enc.a
-- ${FFMPEG_PREPARED_BINARIES}/lib/libswscale.a
-- ${FFMPEG_PREPARED_BINARIES}/lib/libx264.a
-- ${FFMPEG_PREPARED_BINARIES}/lib/libx265.a
-- ${HDR10_PLUS_LIBRARY}
-- ${FFMPEG_PLATFORM_LIBRARIES})
-+ "${FFMPEG_PREPARED_BINARIES}/include")
-
- # platform specific dependencies
- if(WIN32)
---
-2.43.0
-
-
-From c871ffc1606f148e55f80415a289317f74820ddf Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@gentoo.org>
-Date: Mon, 1 Jan 2024 13:34:20 +0000
-Subject: [PATCH 4/4] Move numa from general PLATFORM_LIBRARIES to
- FFMPEG_PLATFORM_LIBRARIES
-
-It's only needed if libx265 was built with NUMA support. This support
-may be disabled in a custom FFmpeg build.
----
- cmake/compile_definitions/linux.cmake | 1 -
- cmake/dependencies/common.cmake | 2 +-
- 2 files changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/cmake/compile_definitions/linux.cmake b/cmake/compile_definitions/linux.cmake
-index a13a823..a2baa9c 100644
---- a/cmake/compile_definitions/linux.cmake
-+++ b/cmake/compile_definitions/linux.cmake
-@@ -223,7 +223,6 @@ list(APPEND PLATFORM_LIBRARIES
- Boost::dynamic_linking
- dl
- evdev
-- numa
- pulse
- pulse-simple)
-
-diff --git a/cmake/dependencies/common.cmake b/cmake/dependencies/common.cmake
-index 30069d3..fc86ab7 100644
---- a/cmake/dependencies/common.cmake
-+++ b/cmake/dependencies/common.cmake
-@@ -56,7 +56,7 @@ if(NOT DEFINED FFMPEG_PREPARED_BINARIES)
- message(FATAL_ERROR "Unsupported system processor:" ${CMAKE_SYSTEM_PROCESSOR})
- endif()
- elseif(UNIX)
-- set(FFMPEG_PLATFORM_LIBRARIES va va-drm va-x11 vdpau X11)
-+ set(FFMPEG_PLATFORM_LIBRARIES numa va va-drm va-x11 vdpau X11)
- if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
- list(APPEND FFMPEG_PLATFORM_LIBRARIES mfx)
- set(FFMPEG_PREPARED_BINARIES "${CMAKE_CURRENT_SOURCE_DIR}/third-party/ffmpeg-linux-x86_64")
---
-2.43.0
-
diff --git a/net-misc/sunshine/files/sunshine-0.21.0-vaapi.patch b/net-misc/sunshine/files/sunshine-0.21.0-vaapi.patch
deleted file mode 100644
index 3db5e47d44d9..000000000000
--- a/net-misc/sunshine/files/sunshine-0.21.0-vaapi.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From dac48e21278339e72c9b3efb5dab63d9c10b5975 Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@aura-online.co.uk>
-Date: Sun, 31 Dec 2023 20:10:48 +0000
-Subject: [PATCH 1/2] Use dl handle for libva's vaTerminate rather than actual
- function (#1955)
-
----
- src/platform/linux/vaapi.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/platform/linux/vaapi.cpp b/src/platform/linux/vaapi.cpp
-index 18b0dff..77daeab 100644
---- a/src/platform/linux/vaapi.cpp
-+++ b/src/platform/linux/vaapi.cpp
-@@ -520,7 +520,7 @@ namespace va {
- auto hwctx = (AVVAAPIDeviceContext *) ctx->hwctx;
- auto priv = (VAAPIDevicePriv *) ctx->user_opaque;
-
-- vaTerminate(hwctx->display);
-+ terminate(hwctx->display);
- close(priv->drm_fd);
- av_freep(&priv);
- }
---
-2.43.0
-
diff --git a/net-misc/sunshine/sunshine-0.21.0.ebuild b/net-misc/sunshine/sunshine-0.22.0.ebuild
similarity index 93%
rename from net-misc/sunshine/sunshine-0.21.0.ebuild
rename to net-misc/sunshine/sunshine-0.22.0.ebuild
index 1c21649b7929..87184bed9664 100644
--- a/net-misc/sunshine/sunshine-0.21.0.ebuild
+++ b/net-misc/sunshine/sunshine-0.22.0.ebuild
@@ -5,10 +5,10 @@ EAPI=8
# These don't necessarily have to align with the upstream release.
BUILD_DEPS_COMMIT="2aafe061cd52a944cb3b5f86d1f25e9ad2a19bec"
-ENET_COMMIT="c6bb0e50118d08252eee308de8412751218442d6"
-MOONLIGHT_COMMIT="6e9ed871bc3e013386c775b2ee7d31deb1151068"
+ENET_COMMIT="04e27590670a87a7cd40f5a05cda97467e4e25a3"
+MOONLIGHT_COMMIT="cbd0ec1b25edfb8ee8645fffa49ff95b6e04c70e"
NANORS_COMMIT="e9e242e98e27037830490b2a752895ca68f75f8b"
-TRAY_COMMIT="e08bdbe5aa7de0ad9c0ce36257016e07c7e6e2c0"
+TRAY_COMMIT="2bf1c610300b27f8d8ce87e2f13223fc83efeb42"
SWS_COMMIT="27b41f5ee154cca0fce4fe2955dd886d04e3a4ed"
WLRP_COMMIT="4264185db3b7e961e7f157e1cc4fd0ab75137568"
FFMPEG_VERSION="6.1.1"
@@ -17,9 +17,9 @@ FFMPEG_VERSION="6.1.1"
# PV=
# git fetch
# git checkout v$PV
-# rm -rf node_modules
-# npm install
-# XZ_OPT=-9 tar --xform="s:^:Sunshine-$PV/:" -Jcf /var/cache/distfiles/sunshine-node-modules-$PV.tar.xz node_modules
+# rm -rf node_modules npm_cache package-lock.json
+# npm_config_cache="${PWD}"/npm_cache npm install --logs-max=0 --omit=optional
+# XZ_OPT=-9 tar --xform="s:^:Sunshine-$PV/:" -Jcf /var/cache/distfiles/sunshine-npm-cache-$PV.tar.xz npm_cache package-lock.json
if [[ ${PV} = 9999* ]]; then
inherit git-r3
@@ -40,13 +40,13 @@ else
https://gitlab.com/eidheim/Simple-Web-Server/-/archive/${SWS_COMMIT}/Simple-Web-Server-${SWS_COMMIT}.tar.bz2
https://gitlab.freedesktop.org/wlroots/wlr-protocols/-/archive/${WLRP_COMMIT}/wlr-protocols-${WLRP_COMMIT}.tar.bz2
https://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.xz
- https://dev.gentoo.org/~chewi/distfiles/${PN}-node-modules-${PV}.tar.xz
+ https://dev.gentoo.org/~chewi/distfiles/${PN}-npm-cache-${PV}.tar.xz
"
KEYWORDS="~amd64 ~arm64"
S="${WORKDIR}/Sunshine-${PV}"
fi
-inherit cmake fcaps flag-o-matic toolchain-funcs udev xdg
+inherit cmake fcaps flag-o-matic systemd toolchain-funcs udev xdg
DESCRIPTION="Self-hosted game stream host for Moonlight"
HOMEPAGE="https://github.com/LizardByte/Sunshine"
@@ -166,7 +166,6 @@ RDEPEND="
DEPEND="
${CDEPEND}
media-libs/amf-headers
- media-libs/libva
=media-libs/nv-codec-headers-12*
wayland? ( dev-libs/wayland-protocols )
"
@@ -180,9 +179,8 @@ BDEPEND="
"
PATCHES=(
- "${FILESDIR}"/${P}-vaapi.patch
- "${FILESDIR}"/${P}-no-x11.patch
- "${FILESDIR}"/${P}-system-deps.patch
+ "${FILESDIR}"/${PN}-custom-ffmpeg.patch
+ "${FILESDIR}"/${PN}-0.22.0-nvcodec.patch
)
# Make this mess a bit simpler.
@@ -190,9 +188,11 @@ CMAKE_IN_SOURCE_BUILD=1
# Make npm behave.
export npm_config_audit=false
+export npm_config_cache="${S}"/npm_cache
export npm_config_color=false
export npm_config_foreground_scripts=true
export npm_config_loglevel=verbose
+export npm_config_optional=false
export npm_config_progress=false
export npm_config_save=false
@@ -343,12 +343,14 @@ src_configure() {
-DSUNSHINE_ASSETS_DIR=share/${PN}
-DSUNSHINE_ENABLE_CUDA=$(usex cuda)
-DSUNSHINE_ENABLE_DRM=$(usex libdrm)
+ -DSUNSHINE_ENABLE_VAAPI=$(usex vaapi)
-DSUNSHINE_ENABLE_WAYLAND=$(usex wayland)
-DSUNSHINE_ENABLE_X11=$(usex X)
-DSUNSHINE_ENABLE_TRAY=$(usex trayicon)
-DSUNSHINE_REQUIRE_TRAY=$(usex trayicon)
- -DSUNSHINE_SYSTEM_MINIUPNP=yes
-DSUNSHINE_SYSTEM_WAYLAND_PROTOCOLS=yes
+ -DSYSTEMD_USER_UNIT_INSTALL_DIR=$(systemd_get_userunitdir)
+ -DUDEV_RULES_INSTALL_DIR=$(get_udevdir)/rules.d
)
CMAKE_USE_DIR="${S}" cmake_src_configure
}
diff --git a/net-misc/sunshine/sunshine-9999.ebuild b/net-misc/sunshine/sunshine-9999.ebuild
index 641289cdc732..87184bed9664 100644
--- a/net-misc/sunshine/sunshine-9999.ebuild
+++ b/net-misc/sunshine/sunshine-9999.ebuild
@@ -5,10 +5,10 @@ EAPI=8
# These don't necessarily have to align with the upstream release.
BUILD_DEPS_COMMIT="2aafe061cd52a944cb3b5f86d1f25e9ad2a19bec"
-ENET_COMMIT="c6bb0e50118d08252eee308de8412751218442d6"
-MOONLIGHT_COMMIT="6e9ed871bc3e013386c775b2ee7d31deb1151068"
+ENET_COMMIT="04e27590670a87a7cd40f5a05cda97467e4e25a3"
+MOONLIGHT_COMMIT="cbd0ec1b25edfb8ee8645fffa49ff95b6e04c70e"
NANORS_COMMIT="e9e242e98e27037830490b2a752895ca68f75f8b"
-TRAY_COMMIT="e08bdbe5aa7de0ad9c0ce36257016e07c7e6e2c0"
+TRAY_COMMIT="2bf1c610300b27f8d8ce87e2f13223fc83efeb42"
SWS_COMMIT="27b41f5ee154cca0fce4fe2955dd886d04e3a4ed"
WLRP_COMMIT="4264185db3b7e961e7f157e1cc4fd0ab75137568"
FFMPEG_VERSION="6.1.1"
@@ -17,9 +17,9 @@ FFMPEG_VERSION="6.1.1"
# PV=
# git fetch
# git checkout v$PV
-# rm -rf node_modules
-# npm install
-# XZ_OPT=-9 tar --xform="s:^:Sunshine-$PV/:" -Jcf /var/cache/distfiles/sunshine-node-modules-$PV.tar.xz node_modules
+# rm -rf node_modules npm_cache package-lock.json
+# npm_config_cache="${PWD}"/npm_cache npm install --logs-max=0 --omit=optional
+# XZ_OPT=-9 tar --xform="s:^:Sunshine-$PV/:" -Jcf /var/cache/distfiles/sunshine-npm-cache-$PV.tar.xz npm_cache package-lock.json
if [[ ${PV} = 9999* ]]; then
inherit git-r3
@@ -40,7 +40,7 @@ else
https://gitlab.com/eidheim/Simple-Web-Server/-/archive/${SWS_COMMIT}/Simple-Web-Server-${SWS_COMMIT}.tar.bz2
https://gitlab.freedesktop.org/wlroots/wlr-protocols/-/archive/${WLRP_COMMIT}/wlr-protocols-${WLRP_COMMIT}.tar.bz2
https://ffmpeg.org/releases/ffmpeg-${FFMPEG_VERSION}.tar.xz
- https://dev.gentoo.org/~chewi/distfiles/${PN}-node-modules-${PV}.tar.xz
+ https://dev.gentoo.org/~chewi/distfiles/${PN}-npm-cache-${PV}.tar.xz
"
KEYWORDS="~amd64 ~arm64"
S="${WORKDIR}/Sunshine-${PV}"
@@ -188,9 +188,11 @@ CMAKE_IN_SOURCE_BUILD=1
# Make npm behave.
export npm_config_audit=false
+export npm_config_cache="${S}"/npm_cache
export npm_config_color=false
export npm_config_foreground_scripts=true
export npm_config_loglevel=verbose
+export npm_config_optional=false
export npm_config_progress=false
export npm_config_save=false
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-misc/sunshine/, net-misc/sunshine/files/
@ 2024-05-13 21:04 James Le Cuirot
0 siblings, 0 replies; 4+ messages in thread
From: James Le Cuirot @ 2024-05-13 21:04 UTC (permalink / raw
To: gentoo-commits
commit: 6e23d43c7ba5c3f3ff964206978f464784da877d
Author: James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sun May 12 16:33:46 2024 +0000
Commit: James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Mon May 13 21:04:10 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6e23d43c
net-misc/sunshine: Update NPM patch now it's merged upstream
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>
net-misc/sunshine/files/sunshine-find-npm.patch | 106 +++++++++++-------------
net-misc/sunshine/sunshine-0.23.1.ebuild | 2 +-
net-misc/sunshine/sunshine-9999.ebuild | 3 +-
3 files changed, 51 insertions(+), 60 deletions(-)
diff --git a/net-misc/sunshine/files/sunshine-find-npm.patch b/net-misc/sunshine/files/sunshine-find-npm.patch
index 42b91299cca5..ab25b4527b78 100644
--- a/net-misc/sunshine/files/sunshine-find-npm.patch
+++ b/net-misc/sunshine/files/sunshine-find-npm.patch
@@ -1,36 +1,65 @@
-From 0fa3273af349089b7d62c996fcaea67b10ed2a0c Mon Sep 17 00:00:00 2001
+From 66740900522f42564a2b0bd4e8a435ed24a61725 Mon Sep 17 00:00:00 2001
From: James Le Cuirot <chewi@gentoo.org>
-Date: Sat, 4 May 2024 23:32:29 +0100
-Subject: [PATCH 1/2] build: Unify asset building by leveraging CMake's env
- command
+Date: Sun, 12 May 2024 17:26:14 +0100
+Subject: [PATCH] Unify asset building and use find_program to find NPM (#2522)
-`add_custom_target` can also accept multiple commands to be run in
-sequence. It isn't clear how quoting applies here, but I've tested it,
-and it seems to be behave as expected when spaces are present.
---
- cmake/targets/common.cmake | 7 +++++++
- cmake/targets/unix.cmake | 6 ------
- cmake/targets/windows.cmake | 6 ------
- 3 files changed, 7 insertions(+), 12 deletions(-)
+ cmake/targets/common.cmake | 33 +++++++++++++++++++++------------
+ cmake/targets/unix.cmake | 6 ------
+ cmake/targets/windows.cmake | 6 ------
+ 3 files changed, 21 insertions(+), 24 deletions(-)
diff --git a/cmake/targets/common.cmake b/cmake/targets/common.cmake
-index ee79528c..04d8e954 100644
+index ee79528c..941ef0b7 100644
--- a/cmake/targets/common.cmake
+++ b/cmake/targets/common.cmake
-@@ -15,6 +15,13 @@ else()
- set(NPM_BUILD_HOMEBREW "")
- endif()
+@@ -3,18 +3,6 @@
+ add_executable(sunshine ${SUNSHINE_TARGET_FILES})
+
+-# Homebrew build fails the vite build if we set these environment variables
+-# this block must be before the platform specific code
+-if(${SUNSHINE_BUILD_HOMEBREW})
+- set(NPM_SOURCE_ASSETS_DIR "")
+- set(NPM_ASSETS_DIR "")
+- set(NPM_BUILD_HOMEBREW "true")
+-else()
+- set(NPM_SOURCE_ASSETS_DIR ${SUNSHINE_SOURCE_ASSETS_DIR})
+- set(NPM_ASSETS_DIR ${CMAKE_BINARY_DIR})
+- set(NPM_BUILD_HOMEBREW "")
+-endif()
+-
+ # platform specific target definitions
+ if(WIN32)
+ include(${CMAKE_MODULE_PATH}/targets/windows.cmake)
+@@ -49,6 +37,27 @@ endif()
+
+ target_compile_options(sunshine PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${SUNSHINE_COMPILE_OPTIONS}>;$<$<COMPILE_LANGUAGE:CUDA>:${SUNSHINE_COMPILE_OPTIONS_CUDA};-std=c++17>) # cmake-lint: disable=C0301
+
++# Homebrew build fails the vite build if we set these environment variables
++if(${SUNSHINE_BUILD_HOMEBREW})
++ set(NPM_SOURCE_ASSETS_DIR "")
++ set(NPM_ASSETS_DIR "")
++ set(NPM_BUILD_HOMEBREW "true")
++else()
++ set(NPM_SOURCE_ASSETS_DIR ${SUNSHINE_SOURCE_ASSETS_DIR})
++ set(NPM_ASSETS_DIR ${CMAKE_BINARY_DIR})
++ set(NPM_BUILD_HOMEBREW "")
++endif()
++
+#WebUI build
++find_program(NPM npm REQUIRED)
+add_custom_target(web-ui ALL
+ WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
+ COMMENT "Installing NPM Dependencies and Building the Web UI"
-+ COMMAND npm install
-+ COMMAND "${CMAKE_COMMAND}" -E env "SUNSHINE_BUILD_HOMEBREW=${NPM_BUILD_HOMEBREW}" "SUNSHINE_SOURCE_ASSETS_DIR=${NPM_SOURCE_ASSETS_DIR}" "SUNSHINE_ASSETS_DIR=${NPM_ASSETS_DIR}" npm run build) # cmake-lint: disable=C0301
++ COMMAND "$<$<BOOL:${WIN32}>:cmd;/C>" "${NPM}" install
++ COMMAND "${CMAKE_COMMAND}" -E env "SUNSHINE_BUILD_HOMEBREW=${NPM_BUILD_HOMEBREW}" "SUNSHINE_SOURCE_ASSETS_DIR=${NPM_SOURCE_ASSETS_DIR}" "SUNSHINE_ASSETS_DIR=${NPM_ASSETS_DIR}" "$<$<BOOL:${WIN32}>:cmd;/C>" "${NPM}" run build # cmake-lint: disable=C0301
++ COMMAND_EXPAND_LISTS
++ VERBATIM)
+
- # platform specific target definitions
- if(WIN32)
- include(${CMAKE_MODULE_PATH}/targets/windows.cmake)
+ # tests
+ if(BUILD_TESTS)
+ add_subdirectory(tests)
diff --git a/cmake/targets/unix.cmake b/cmake/targets/unix.cmake
index 5527a987..047a0b3d 100644
--- a/cmake/targets/unix.cmake
@@ -61,40 +90,3 @@ index e429feaa..341d7c2e 100644
--
2.44.0
-
-From f7f93c787bc7c6e82296f0b28c1684ba93cb0956 Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@gentoo.org>
-Date: Sun, 5 May 2024 23:30:36 +0100
-Subject: [PATCH 2/2] build: Use find_program to find NPM so it can be
- overridden
-
-This is useful for Gentoo, which needs to be able to do entirely offline
-builds, because it can override this with `true` while shipping
-pre-compiled assets. Gentoo has tried to ship cached NPM modules
-instead, but it turns out these are very sensitive to the NPM version.
----
- cmake/targets/common.cmake | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/cmake/targets/common.cmake b/cmake/targets/common.cmake
-index 04d8e954..5c489551 100644
---- a/cmake/targets/common.cmake
-+++ b/cmake/targets/common.cmake
-@@ -16,11 +16,12 @@ else()
- endif()
-
- #WebUI build
-+find_program(NPM npm REQUIRED)
- add_custom_target(web-ui ALL
- WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
- COMMENT "Installing NPM Dependencies and Building the Web UI"
-- COMMAND npm install
-- COMMAND "${CMAKE_COMMAND}" -E env "SUNSHINE_BUILD_HOMEBREW=${NPM_BUILD_HOMEBREW}" "SUNSHINE_SOURCE_ASSETS_DIR=${NPM_SOURCE_ASSETS_DIR}" "SUNSHINE_ASSETS_DIR=${NPM_ASSETS_DIR}" npm run build) # cmake-lint: disable=C0301
-+ COMMAND "${NPM}" install
-+ COMMAND "${CMAKE_COMMAND}" -E env "SUNSHINE_BUILD_HOMEBREW=${NPM_BUILD_HOMEBREW}" "SUNSHINE_SOURCE_ASSETS_DIR=${NPM_SOURCE_ASSETS_DIR}" "SUNSHINE_ASSETS_DIR=${NPM_ASSETS_DIR}" "${NPM}" run build) # cmake-lint: disable=C0301
-
- # platform specific target definitions
- if(WIN32)
---
-2.44.0
-
diff --git a/net-misc/sunshine/sunshine-0.23.1.ebuild b/net-misc/sunshine/sunshine-0.23.1.ebuild
index a708fffba539..f700216a63b6 100644
--- a/net-misc/sunshine/sunshine-0.23.1.ebuild
+++ b/net-misc/sunshine/sunshine-0.23.1.ebuild
@@ -359,7 +359,7 @@ src_compile() {
emake -C "${WORKDIR}"/ffmpeg-build V=1 install
CMAKE_USE_DIR="${WORKDIR}/build-deps" cmake_src_compile
CMAKE_USE_DIR="${WORKDIR}/build-deps" cmake_build install
- CMAKE_USE_DIR="${S}" cmake_src_compile
+ CMAKE_USE_DIR="${S}" npm_config_offline=1 cmake_src_compile
}
pkg_postinst() {
diff --git a/net-misc/sunshine/sunshine-9999.ebuild b/net-misc/sunshine/sunshine-9999.ebuild
index a708fffba539..500879c32b40 100644
--- a/net-misc/sunshine/sunshine-9999.ebuild
+++ b/net-misc/sunshine/sunshine-9999.ebuild
@@ -178,7 +178,6 @@ BDEPEND="
PATCHES=(
"${FILESDIR}"/${PN}-custom-ffmpeg.patch
"${FILESDIR}"/${PN}-0.22.0-nvcodec.patch
- "${FILESDIR}"/${PN}-find-npm.patch
)
# Make this mess a bit simpler.
@@ -359,7 +358,7 @@ src_compile() {
emake -C "${WORKDIR}"/ffmpeg-build V=1 install
CMAKE_USE_DIR="${WORKDIR}/build-deps" cmake_src_compile
CMAKE_USE_DIR="${WORKDIR}/build-deps" cmake_build install
- CMAKE_USE_DIR="${S}" cmake_src_compile
+ CMAKE_USE_DIR="${S}" npm_config_offline=1 cmake_src_compile
}
pkg_postinst() {
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-05-13 21:04 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-13 21:04 [gentoo-commits] repo/gentoo:master commit in: net-misc/sunshine/, net-misc/sunshine/files/ James Le Cuirot
-- strict thread matches above, loose matches on Subject: below --
2024-03-09 15:02 James Le Cuirot
2024-03-01 23:31 James Le Cuirot
2024-02-27 8:59 James Le Cuirot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox