Skip to content

Commit

Permalink
Merge pull request #296747 from devusb/sunshine
Browse files Browse the repository at this point in the history
sunshine: 0.22.0 -> 0.22.2
  • Loading branch information
SuperSandro2000 authored Mar 23, 2024
2 parents 513e0fa + a98d53c commit ee82708
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 25 deletions.
29 changes: 13 additions & 16 deletions pkgs/servers/sunshine/default.nix
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, autoPatchelfHook
, makeWrapper
, buildNpmPackage
Expand Down Expand Up @@ -50,32 +49,26 @@ let
in
stdenv'.mkDerivation rec {
pname = "sunshine";
version = "0.22.0";
version = "0.22.2";

src = fetchFromGitHub {
owner = "LizardByte";
repo = "Sunshine";
rev = "v${version}";
sha256 = "sha256-O9U4zP1o6yWtzk+2DW7ueimvsTuajLY8IETlvCT4jTE=";
sha256 = "sha256-So8fX0XQoW2cdTWWENoE07EU6e8vvjeTpizLoaDTjeg=";
fetchSubmodules = true;
};

patches = [
# remove npm install as it needs internet access -- handled separately below
./dont-build-webui.patch
# revert https://github.com/LizardByte/Sunshine/pull/2046 - let cmake install handle udev and systemd files
(fetchpatch {
url = "https://github.com/LizardByte/Sunshine/commit/0d4dfcd708c0027b7d8827a03163858800fa79fa.patch";
hash = "sha256-77NtfX0zB7ty92AyFOz9wJoa1jHshlNbPQ7NOpqUuYo=";
revert = true;
})
];

# build webui
ui = buildNpmPackage {
inherit src version;
pname = "sunshine-ui";
npmDepsHash = "sha256-jAZUu2CfcqhC2xMiZYpY7KPCRVFQgT/kgUvSI+5Cpkc=";
npmDepsHash = "sha256-0487ntbJZ20MZHezQ+Z3EJkidF3Dgoh/mynYwR7k/+I=";

# use generated package-lock.json as upstream does not provide one
postPatch = ''
Expand Down Expand Up @@ -152,17 +145,21 @@ stdenv'.mkDerivation rec {

cmakeFlags = [
"-Wno-dev"
# upstream tries to use systemd and udev packages to find these directories in FHS; set the paths explicitly instead
(lib.cmakeFeature "UDEV_RULES_INSTALL_DIR" "lib/udev/rules.d")
(lib.cmakeFeature "SYSTEMD_USER_UNIT_INSTALL_DIR" "lib/systemd/user")
];

postPatch = ''
# fix hardcoded libevdev path
substituteInPlace cmake/compile_definitions/linux.cmake \
--replace '/usr/include/libevdev-1.0' '${libevdev}/include/libevdev-1.0'
# remove upstream dependency on systemd and udev
substituteInPlace cmake/packaging/linux.cmake \
--replace-fail 'find_package(Systemd)' "" \
--replace-fail 'find_package(Udev)' ""
substituteInPlace packaging/linux/sunshine.desktop \
--replace '@PROJECT_NAME@' 'Sunshine' \
--replace '@PROJECT_DESCRIPTION@' 'Self-hosted game stream host for Moonlight' \
--replace '/usr/bin/env systemctl start --u sunshine' 'sunshine'
--subst-var-by PROJECT_NAME 'Sunshine' \
--subst-var-by PROJECT_DESCRIPTION 'Self-hosted game stream host for Moonlight' \
--replace-fail '/usr/bin/env systemctl start --u sunshine' 'sunshine'
'';

preBuild = ''
Expand Down
10 changes: 5 additions & 5 deletions pkgs/servers/sunshine/dont-build-webui.patch
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
diff --git a/cmake/targets/common.cmake b/cmake/targets/common.cmake
index 3dd629e..acec58d 100644
index 9f2ce08..8c32b8f 100644
--- a/cmake/targets/common.cmake
+++ b/cmake/targets/common.cmake
@@ -37,8 +37,4 @@ 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
@@ -48,8 +48,4 @@ else()
set(NPM_BUILD_HOMEBREW "")
endif()

-#WebUI build
-add_custom_target(web-ui ALL
- WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
- COMMENT "Installing NPM Dependencies and Building the Web UI"
- COMMAND bash -c \"npm install && SUNSHINE_SOURCE_ASSETS_DIR=${SUNSHINE_SOURCE_ASSETS_DIR} SUNSHINE_ASSETS_DIR=${CMAKE_BINARY_DIR} npm run build\") # cmake-lint: disable=C0301
- COMMAND bash -c \"npm install && 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
+
8 changes: 4 additions & 4 deletions pkgs/servers/sunshine/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit ee82708

Please sign in to comment.