Unverified Commit 7142a2de authored by André Silva's avatar André Silva Committed by GitHub
Browse files

Merge pull request #306655 from devusb/sunshine-update

sunshine: 0.23.0 -> 0.23.1
parents 8a50cbb3 acc10753
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
{ config, lib, pkgs, utils, ... }:
let
  inherit (lib) mkEnableOption mkPackageOption mkOption mkIf mkDefault types optionals getExe;
  inherit (lib) mkEnableOption mkPackageOption mkOption literalExpression mkIf mkDefault types optionals getExe;
  inherit (utils) escapeSystemdExecArgs;
  cfg = config.services.sunshine;

@@ -46,7 +46,7 @@ in

        See https://docs.lizardbyte.dev/projects/sunshine/en/latest/about/advanced_usage.html#configuration for syntax.
      '';
      example = ''
      example = literalExpression ''
        {
          sunshine_name = "nixos";
        }
@@ -67,7 +67,7 @@ in
      description = ''
        Configuration for applications to be exposed to Moonlight. If this is set, no configuration is possible from the web UI, and must be by the `settings` option.
      '';
      example = ''
      example = literalExpression ''
        {
          env = {
            PATH = "$(PATH):$(HOME)/.local/bin";
+14 −8
Original line number Diff line number Diff line
@@ -52,26 +52,21 @@ let
in
stdenv'.mkDerivation rec {
  pname = "sunshine";
  version = "0.23.0";
  version = "0.23.1";

  src = fetchFromGitHub {
    owner = "LizardByte";
    repo = "Sunshine";
    rev = "v${version}";
    sha256 = "sha256-K43LZ7zouTRUI4xhiHuRzu2tN7mUl1nTapuR34JR/Ac=";
    sha256 = "sha256-D5ee5m2ZTKVqZDH07nzJuFEbZBQ4xW7m4nYnJQe0EaA=";
    fetchSubmodules = true;
  };

  patches = [
    # remove npm install as it needs internet access -- handled separately below
    ./dont-build-webui.patch
  ];

  # build webui
  ui = buildNpmPackage {
    inherit src version;
    pname = "sunshine-ui";
    npmDepsHash = "sha256-I7IrCR7eQ97a8cPB8F8+T0zX8iJcwh+YtZ9QRtEVZtI=";
    npmDepsHash = "sha256-9FuMtxTwrU9UIhZXQn/tmGN0IHZBdunV0cY/EElj4bA=";

    # use generated package-lock.json as upstream does not provide one
    postPatch = ''
@@ -176,12 +171,23 @@ stdenv'.mkDerivation rec {
    cp -r ${ui}/build ../
  '';

  buildFlags = [
    "sunshine"
  ];

  # allow Sunshine to find libvulkan
  postFixup = lib.optionalString cudaSupport ''
    wrapProgram $out/bin/sunshine \
      --set LD_LIBRARY_PATH ${lib.makeLibraryPath [ vulkan-loader ]}
  '';

  # redefine installPhase to avoid attempt to build webui
  installPhase = ''
    runHook preInstall
    cmake --install .
    runHook postInstall
  '';

  postInstall = ''
    install -Dm644 ../packaging/linux/${pname}.desktop $out/share/applications/${pname}.desktop
  '';
+0 −13
Original line number Diff line number Diff line
diff --git a/cmake/targets/unix.cmake b/cmake/targets/unix.cmake
index 2ce0378..10d8262 100644
--- a/cmake/targets/unix.cmake
+++ b/cmake/targets/unix.cmake
@@ -1,8 +1,3 @@
 # unix specific target definitions
 # put anything here that applies to both linux and macos
 
-#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_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
+80 −83
Original line number Diff line number Diff line
@@ -11,8 +11,8 @@
        "bootstrap": "5.3.3",
        "vite": "4.5.2",
        "vite-plugin-ejs": "1.6.4",
        "vue": "3.4.5",
        "vue-i18n": "9.11.0"
        "vue": "3.4.23",
        "vue-i18n": "9.13.0"
      }
    },
    "node_modules/@babel/parser": {
@@ -366,12 +366,12 @@
      }
    },
    "node_modules/@intlify/core-base": {
      "version": "9.11.0",
      "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.11.0.tgz",
      "integrity": "sha512-cveOqAstjLZIiyatcP/HrzrQ87cZI8ScPQna3yvoM8zjcjcIRK1MRvmxUNlPdg0rTNJMZw7rixPVM58O5aHVPA==",
      "version": "9.13.0",
      "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.13.0.tgz",
      "integrity": "sha512-Lx8+YTrFpom7AtdbbuJHzgmr612/bceHU92v8ZPU9HU9/rczf+TmCs95BxWPIR4K42xh4MVMLsNzLUWiXcNaLg==",
      "dependencies": {
        "@intlify/message-compiler": "9.11.0",
        "@intlify/shared": "9.11.0"
        "@intlify/message-compiler": "9.13.0",
        "@intlify/shared": "9.13.0"
      },
      "engines": {
        "node": ">= 16"
@@ -381,11 +381,11 @@
      }
    },
    "node_modules/@intlify/message-compiler": {
      "version": "9.11.0",
      "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.11.0.tgz",
      "integrity": "sha512-x31Gl7cscnoI4UUY1yaIy8e7vVMVW1VVlTXZz4SIHKqoSEUkfmgqK8NAx1e7RcoHEbICR7uyCbud0ZL1s4OGXQ==",
      "version": "9.13.0",
      "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.13.0.tgz",
      "integrity": "sha512-zhESuudiDpFQhUOx/qrSMd7ZYHbmgCc0QzBc27cDUxaaAj3olbYJnsx3osiHPQyYnv/LuC+WTqoNOEBoHP6dqQ==",
      "dependencies": {
        "@intlify/shared": "9.11.0",
        "@intlify/shared": "9.13.0",
        "source-map-js": "^1.0.2"
      },
      "engines": {
@@ -396,9 +396,9 @@
      }
    },
    "node_modules/@intlify/shared": {
      "version": "9.11.0",
      "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.11.0.tgz",
      "integrity": "sha512-KHSNgi7sRjmSm7aD8QH8WFt9VfKaekJuJ473opbJlkGY3EDnDUU8ikIhG8PbasQbgNvbY3m3tWNGqk2omIdwMA==",
      "version": "9.13.0",
      "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.13.0.tgz",
      "integrity": "sha512-fUwWcpDz9Wm4dSaz+6XmjoNXWBjZLJtT1Zf1cpLBELbCAOS8WBRscPtgOSfzm6JCqf5KgMI4g917f5TtEeez3A==",
      "engines": {
        "node": ">= 16"
      },
@@ -433,49 +433,49 @@
      }
    },
    "node_modules/@vue/compiler-core": {
      "version": "3.4.5",
      "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.5.tgz",
      "integrity": "sha512-Daka7P1z2AgKjzuueWXhwzIsKu0NkLB6vGbNVEV2iJ8GJTrzraZo/Sk4GWCMRtd/qVi3zwnk+Owbd/xSZbwHtQ==",
      "version": "3.4.23",
      "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.23.tgz",
      "integrity": "sha512-HAFmuVEwNqNdmk+w4VCQ2pkLk1Vw4XYiiyxEp3z/xvl14aLTUBw2OfVH3vBcx+FtGsynQLkkhK410Nah1N2yyQ==",
      "dependencies": {
        "@babel/parser": "^7.23.6",
        "@vue/shared": "3.4.5",
        "@babel/parser": "^7.24.1",
        "@vue/shared": "3.4.23",
        "entities": "^4.5.0",
        "estree-walker": "^2.0.2",
        "source-map-js": "^1.0.2"
        "source-map-js": "^1.2.0"
      }
    },
    "node_modules/@vue/compiler-dom": {
      "version": "3.4.5",
      "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.5.tgz",
      "integrity": "sha512-J8YlxknJVd90SXFJ4HwGANSAXsx5I0lK30sO/zvYV7s5gXf7gZR7r/1BmZ2ju7RGH1lnc6bpBc6nL61yW+PsAQ==",
      "version": "3.4.23",
      "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.23.tgz",
      "integrity": "sha512-t0b9WSTnCRrzsBGrDd1LNR5HGzYTr7LX3z6nNBG+KGvZLqrT0mY6NsMzOqlVMBKKXKVuusbbB5aOOFgTY+senw==",
      "dependencies": {
        "@vue/compiler-core": "3.4.5",
        "@vue/shared": "3.4.5"
        "@vue/compiler-core": "3.4.23",
        "@vue/shared": "3.4.23"
      }
    },
    "node_modules/@vue/compiler-sfc": {
      "version": "3.4.5",
      "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.5.tgz",
      "integrity": "sha512-jauvkDuSSUbP0ebhfNqljhShA90YEfX/0wZ+w40oZF43IjGyWYjqYaJbvMJwGOd+9+vODW6eSvnk28f0SGV7OQ==",
      "version": "3.4.23",
      "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.23.tgz",
      "integrity": "sha512-fSDTKTfzaRX1kNAUiaj8JB4AokikzStWgHooMhaxyjZerw624L+IAP/fvI4ZwMpwIh8f08PVzEnu4rg8/Npssw==",
      "dependencies": {
        "@babel/parser": "^7.23.6",
        "@vue/compiler-core": "3.4.5",
        "@vue/compiler-dom": "3.4.5",
        "@vue/compiler-ssr": "3.4.5",
        "@vue/shared": "3.4.5",
        "@babel/parser": "^7.24.1",
        "@vue/compiler-core": "3.4.23",
        "@vue/compiler-dom": "3.4.23",
        "@vue/compiler-ssr": "3.4.23",
        "@vue/shared": "3.4.23",
        "estree-walker": "^2.0.2",
        "magic-string": "^0.30.5",
        "postcss": "^8.4.32",
        "source-map-js": "^1.0.2"
        "magic-string": "^0.30.8",
        "postcss": "^8.4.38",
        "source-map-js": "^1.2.0"
      }
    },
    "node_modules/@vue/compiler-ssr": {
      "version": "3.4.5",
      "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.5.tgz",
      "integrity": "sha512-DDdEcDzj2lWTMfUMMtEpLDhURai9LhM0zSZ219jCt7b2Vyl0/jy3keFgCPMitG0V1S1YG4Cmws3lWHWdxHQOpg==",
      "version": "3.4.23",
      "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.23.tgz",
      "integrity": "sha512-hb6Uj2cYs+tfqz71Wj6h3E5t6OKvb4MVcM2Nl5i/z1nv1gjEhw+zYaNOV+Xwn+SSN/VZM0DgANw5TuJfxfezPg==",
      "dependencies": {
        "@vue/compiler-dom": "3.4.5",
        "@vue/shared": "3.4.5"
        "@vue/compiler-dom": "3.4.23",
        "@vue/shared": "3.4.23"
      }
    },
    "node_modules/@vue/devtools-api": {
@@ -484,48 +484,48 @@
      "integrity": "sha512-LgPscpE3Vs0x96PzSSB4IGVSZXZBZHpfxs+ZA1d+VEPwHdOXowy/Y2CsvCAIFrf+ssVU1pD1jidj505EpUnfbA=="
    },
    "node_modules/@vue/reactivity": {
      "version": "3.4.5",
      "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.5.tgz",
      "integrity": "sha512-BcWkKvjdvqJwb7BhhFkXPLDCecX4d4a6GATvCduJQDLv21PkPowAE5GKuIE5p6RC07/Lp9FMkkq4AYCTVF5KlQ==",
      "version": "3.4.23",
      "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.23.tgz",
      "integrity": "sha512-GlXR9PL+23fQ3IqnbSQ8OQKLodjqCyoCrmdLKZk3BP7jN6prWheAfU7a3mrltewTkoBm+N7qMEb372VHIkQRMQ==",
      "dependencies": {
        "@vue/shared": "3.4.5"
        "@vue/shared": "3.4.23"
      }
    },
    "node_modules/@vue/runtime-core": {
      "version": "3.4.5",
      "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.5.tgz",
      "integrity": "sha512-wh9ELIOQKeWT9SaUPdLrsxRkZv14jp+SJm9aiQGWio+/MWNM3Lib0wE6CoKEqQ9+SCYyGjDBhTOTtO47kCgbkg==",
      "version": "3.4.23",
      "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.23.tgz",
      "integrity": "sha512-FeQ9MZEXoFzFkFiw9MQQ/FWs3srvrP+SjDKSeRIiQHIhtkzoj0X4rWQlRNHbGuSwLra6pMyjAttwixNMjc/xLw==",
      "dependencies": {
        "@vue/reactivity": "3.4.5",
        "@vue/shared": "3.4.5"
        "@vue/reactivity": "3.4.23",
        "@vue/shared": "3.4.23"
      }
    },
    "node_modules/@vue/runtime-dom": {
      "version": "3.4.5",
      "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.5.tgz",
      "integrity": "sha512-n5ewvOjyG3IEpqGBahdPXODFSpVlSz3H4LF76Sx0XAqpIOqyJ5bIb2PrdYuH2ogBMAQPh+o5tnoH4nJpBr8U0Q==",
      "version": "3.4.23",
      "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.23.tgz",
      "integrity": "sha512-RXJFwwykZWBkMiTPSLEWU3kgVLNAfActBfWFlZd0y79FTUxexogd0PLG4HH2LfOktjRxV47Nulygh0JFXe5f9A==",
      "dependencies": {
        "@vue/runtime-core": "3.4.5",
        "@vue/shared": "3.4.5",
        "@vue/runtime-core": "3.4.23",
        "@vue/shared": "3.4.23",
        "csstype": "^3.1.3"
      }
    },
    "node_modules/@vue/server-renderer": {
      "version": "3.4.5",
      "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.5.tgz",
      "integrity": "sha512-jOFc/VE87yvifQpNju12VcqimH8pBLxdcT+t3xMeiED1K6DfH9SORyhFEoZlW5TG2Vwfn3Ul5KE+1aC99xnSBg==",
      "version": "3.4.23",
      "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.23.tgz",
      "integrity": "sha512-LDwGHtnIzvKFNS8dPJ1SSU5Gvm36p2ck8wCZc52fc3k/IfjKcwCyrWEf0Yag/2wTFUBXrqizfhK9c/mC367dXQ==",
      "dependencies": {
        "@vue/compiler-ssr": "3.4.5",
        "@vue/shared": "3.4.5"
        "@vue/compiler-ssr": "3.4.23",
        "@vue/shared": "3.4.23"
      },
      "peerDependencies": {
        "vue": "3.4.5"
        "vue": "3.4.23"
      }
    },
    "node_modules/@vue/shared": {
      "version": "3.4.5",
      "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.5.tgz",
      "integrity": "sha512-6XptuzlMvN4l4cDnDw36pdGEV+9njYkQ1ZE0Q6iZLwrKefKaOJyiFmcP3/KBDHbt72cJZGtllAc1GaHe6XGAyg=="
      "version": "3.4.23",
      "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.23.tgz",
      "integrity": "sha512-wBQ0gvf+SMwsCQOyusNw/GoXPV47WGd1xB5A1Pgzy0sQ3Bi5r5xm3n+92y3gCnB3MWqnRDdvfkRGxhKtbBRNgg=="
    },
    "node_modules/ansi-styles": {
      "version": "4.3.0",
@@ -751,14 +751,11 @@
      }
    },
    "node_modules/magic-string": {
      "version": "0.30.9",
      "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.9.tgz",
      "integrity": "sha512-S1+hd+dIrC8EZqKyT9DstTH/0Z+f76kmmvZnkfQVmOpDEF9iVgdYif3Q/pIWHmCoo59bQVGW0kVL3e2nl+9+Sw==",
      "version": "0.30.10",
      "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz",
      "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==",
      "dependencies": {
        "@jridgewell/sourcemap-codec": "^1.4.15"
      },
      "engines": {
        "node": ">=12"
      }
    },
    "node_modules/minimatch": {
@@ -918,15 +915,15 @@
      }
    },
    "node_modules/vue": {
      "version": "3.4.5",
      "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.5.tgz",
      "integrity": "sha512-VH6nHFhLPjgu2oh5vEBXoNZxsGHuZNr3qf4PHClwJWw6IDqw6B3x+4J+ABdoZ0aJuT8Zi0zf3GpGlLQCrGWHrw==",
      "version": "3.4.23",
      "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.23.tgz",
      "integrity": "sha512-X1y6yyGJ28LMUBJ0k/qIeKHstGd+BlWQEOT40x3auJFTmpIhpbKLgN7EFsqalnJXq1Km5ybDEsp6BhuWKciUDg==",
      "dependencies": {
        "@vue/compiler-dom": "3.4.5",
        "@vue/compiler-sfc": "3.4.5",
        "@vue/runtime-dom": "3.4.5",
        "@vue/server-renderer": "3.4.5",
        "@vue/shared": "3.4.5"
        "@vue/compiler-dom": "3.4.23",
        "@vue/compiler-sfc": "3.4.23",
        "@vue/runtime-dom": "3.4.23",
        "@vue/server-renderer": "3.4.23",
        "@vue/shared": "3.4.23"
      },
      "peerDependencies": {
        "typescript": "*"
@@ -938,12 +935,12 @@
      }
    },
    "node_modules/vue-i18n": {
      "version": "9.11.0",
      "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.11.0.tgz",
      "integrity": "sha512-vU4gY6lu8Pdfs9BgKGiDAJmFDf88cceR47KcSB0VW4xJzUrXR/7qwqM7A8dQ2nedhoIDxoOm5Ro4pFd2KvJqbA==",
      "version": "9.13.0",
      "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.13.0.tgz",
      "integrity": "sha512-NlZ+e8rhGSGNk/Vfh4IUvlPRjljPCRslbNYgQmYZY+sLXZgahw8fylQguZU3e8ntJDvitfe40f8p3udOiKMS0A==",
      "dependencies": {
        "@intlify/core-base": "9.11.0",
        "@intlify/shared": "9.11.0",
        "@intlify/core-base": "9.13.0",
        "@intlify/shared": "9.13.0",
        "@vue/devtools-api": "^6.5.0"
      },
      "engines": {