scrcpy: 3.1 -> 3.2 (#394355)
This commit is contained in:
@@ -1,27 +1,28 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, fetchFromGitHub
|
||||
, makeWrapper
|
||||
, meson
|
||||
, ninja
|
||||
, pkg-config
|
||||
, runtimeShell
|
||||
, installShellFiles
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
fetchurl,
|
||||
fetchFromGitHub,
|
||||
makeWrapper,
|
||||
meson,
|
||||
ninja,
|
||||
pkg-config,
|
||||
runtimeShell,
|
||||
installShellFiles,
|
||||
|
||||
, android-tools
|
||||
, ffmpeg
|
||||
, libusb1
|
||||
, SDL2
|
||||
android-tools,
|
||||
ffmpeg,
|
||||
libusb1,
|
||||
SDL2,
|
||||
}:
|
||||
|
||||
let
|
||||
version = "3.1";
|
||||
version = "3.2";
|
||||
prebuilt_server = fetchurl {
|
||||
name = "scrcpy-server";
|
||||
inherit version;
|
||||
url = "https://github.com/Genymobile/scrcpy/releases/download/v${version}/scrcpy-server-v${version}";
|
||||
hash = "sha256-lY8JRKYvI7HzOhbp6xSETBoEuILKF1pzjBbSPLIrhsA=";
|
||||
hash = "sha256-uSDg6gGTa/JIL0ui+phcIsE8YhmZ49M7RbqlrPweo9A=";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
@@ -32,7 +33,7 @@ stdenv.mkDerivation rec {
|
||||
owner = "Genymobile";
|
||||
repo = "scrcpy";
|
||||
tag = "v${version}";
|
||||
hash = "sha256-XxvlwF3vqtkew+P1yuIwBJxYetD+D+v8OKaETU3qVkk=";
|
||||
hash = "sha256-k53iyCD/f4bsntqqEdmcgHL963BL17vidkgB6AcXkeE=";
|
||||
};
|
||||
|
||||
# display.c: When run without a hardware accelerator, this allows the command to continue working rather than failing unexpectedly.
|
||||
@@ -43,25 +44,37 @@ stdenv.mkDerivation rec {
|
||||
--replace "SDL_RENDERER_ACCELERATED" "SDL_RENDERER_ACCELERATED || SDL_RENDERER_SOFTWARE"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ makeWrapper meson ninja pkg-config installShellFiles ];
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
installShellFiles
|
||||
];
|
||||
|
||||
buildInputs = [ ffmpeg SDL2 libusb1 ];
|
||||
buildInputs = [
|
||||
ffmpeg
|
||||
SDL2
|
||||
libusb1
|
||||
];
|
||||
|
||||
# Manually install the server jar to prevent Meson from "fixing" it
|
||||
preConfigure = ''
|
||||
echo -n > server/meson.build
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p "$out/share/scrcpy"
|
||||
ln -s "${prebuilt_server}" "$out/share/scrcpy/scrcpy-server"
|
||||
postInstall =
|
||||
''
|
||||
mkdir -p "$out/share/scrcpy"
|
||||
ln -s "${prebuilt_server}" "$out/share/scrcpy/scrcpy-server"
|
||||
|
||||
# runtime dep on `adb` to push the server
|
||||
wrapProgram "$out/bin/scrcpy" --prefix PATH : "${android-tools}/bin"
|
||||
'' + lib.optionalString stdenv.hostPlatform.isLinux ''
|
||||
substituteInPlace $out/share/applications/scrcpy-console.desktop \
|
||||
--replace "/bin/bash" "${runtimeShell}"
|
||||
'';
|
||||
# runtime dep on `adb` to push the server
|
||||
wrapProgram "$out/bin/scrcpy" --prefix PATH : "${android-tools}/bin"
|
||||
''
|
||||
+ lib.optionalString stdenv.hostPlatform.isLinux ''
|
||||
substituteInPlace $out/share/applications/scrcpy-console.desktop \
|
||||
--replace "/bin/bash" "${runtimeShell}"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Display and control Android devices over USB or TCP/IP";
|
||||
@@ -73,7 +86,10 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
license = lib.licenses.asl20;
|
||||
platforms = lib.platforms.unix;
|
||||
maintainers = with lib.maintainers; [ deltaevo ryand56 ];
|
||||
maintainers = with lib.maintainers; [
|
||||
deltaevo
|
||||
ryand56
|
||||
];
|
||||
mainProgram = "scrcpy";
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user