From ddbd4d4749b0fd4d236d2d495e154615d508edd3 Mon Sep 17 00:00:00 2001 From: Robert Schütz Date: Sun, 25 Apr 2021 20:42:56 +0200 Subject: simplescreenrecorder: 0.3.11 -> 0.4.3 --- .../video/simplescreenrecorder/default.nix | 20 +++++++++++--------- .../video/simplescreenrecorder/fix-paths.patch | 22 +++++++++++----------- 2 files changed, 22 insertions(+), 20 deletions(-) (limited to 'pkgs/applications/video/simplescreenrecorder') diff --git a/pkgs/applications/video/simplescreenrecorder/default.nix b/pkgs/applications/video/simplescreenrecorder/default.nix index 939ae7c444005..14575a88dc17a 100644 --- a/pkgs/applications/video/simplescreenrecorder/default.nix +++ b/pkgs/applications/video/simplescreenrecorder/default.nix @@ -1,14 +1,16 @@ -{ lib, stdenv, mkDerivation, fetchurl, alsaLib, ffmpeg_3, libjack2, libX11, libXext, qtx11extras -, libXfixes, libGLU, libGL, pkg-config, libpulseaudio, qtbase, cmake, ninja +{ lib, stdenv, mkDerivation, fetchFromGitHub, alsaLib, ffmpeg, libjack2, libX11, libXext, libXinerama, qtx11extras +, libXfixes, libGLU, libGL, pkg-config, libpulseaudio, libv4l, qtbase, qttools, cmake, ninja }: mkDerivation rec { pname = "simplescreenrecorder"; - version = "0.3.11"; + version = "0.4.3"; - src = fetchurl { - url = "https://github.com/MaartenBaert/ssr/archive/${version}.tar.gz"; - sha256 = "0l6irdadqpajvv0dj3ngs1231n559l0y1pykhs2h7526qm4w7xal"; + src = fetchFromGitHub { + owner = "MaartenBaert"; + repo = "ssr"; + rev = version; + sha256 = "0mrx8wprs8bi42fwwvk6rh634ic9jnn0gkfpd6q9pcawnnbz3vq8"; }; cmakeFlags = [ "-DWITH_QT5=TRUE" ]; @@ -25,14 +27,14 @@ mkDerivation rec { nativeBuildInputs = [ pkg-config cmake ninja ]; buildInputs = [ - alsaLib ffmpeg_3 libjack2 libX11 libXext libXfixes libGLU libGL - libpulseaudio qtbase qtx11extras + alsaLib ffmpeg libjack2 libX11 libXext libXfixes libXinerama libGLU libGL + libpulseaudio libv4l qtbase qttools qtx11extras ]; meta = with lib; { description = "A screen recorder for Linux"; homepage = "https://www.maartenbaert.be/simplescreenrecorder"; - license = licenses.gpl3; + license = licenses.gpl3Plus; platforms = [ "x86_64-linux" ]; maintainers = [ maintainers.goibhniu ]; }; diff --git a/pkgs/applications/video/simplescreenrecorder/fix-paths.patch b/pkgs/applications/video/simplescreenrecorder/fix-paths.patch index ba02240ce1f21..9cf634285fcbf 100644 --- a/pkgs/applications/video/simplescreenrecorder/fix-paths.patch +++ b/pkgs/applications/video/simplescreenrecorder/fix-paths.patch @@ -12,10 +12,19 @@ index 48be48d..5038d4c 100755 -LD_PRELOAD="$LD_PRELOAD:libssr-glinject.so" "$@" +LD_PRELOAD="$LD_PRELOAD:@out@/lib/libssr-glinject.so" "$@" diff --git a/src/AV/Input/GLInjectInput.cpp b/src/AV/Input/GLInjectInput.cpp -index 6b378f8..cbcf82b 100644 +index fc98f31..18f5196 100644 --- a/src/AV/Input/GLInjectInput.cpp +++ b/src/AV/Input/GLInjectInput.cpp -@@ -96,7 +96,7 @@ void GLInjectInput::SetCapturing(bool capturing) { +@@ -113,7 +113,7 @@ bool ExecuteDetached(const char* command, const char* working_directory) { + + // try to execute command + do { +- res = execl("/bin/sh", "/bin/sh", "-c", command, (char*) NULL); ++ res = execl("@sh@", "@sh@", "-c", command, (char*) NULL); + } while(res == -1 and errno == EINTR); + + // failed, send feedback +@@ -207,7 +207,7 @@ void GLInjectInput::SetCapturing(bool capturing) { bool GLInjectInput::LaunchApplication(const QString& channel, bool relax_permissions, const QString& command, const QString& working_directory) { // prepare command @@ -24,12 +33,3 @@ index 6b378f8..cbcf82b 100644 full_command += "SSR_CHANNEL=\"" + ShellEscape(channel) + "\" "; if(relax_permissions) full_command += "SSR_STREAM_RELAX_PERMISSIONS=1 "; -@@ -106,7 +106,7 @@ bool GLInjectInput::LaunchApplication(const QString& channel, bool relax_permiss - QStringList args; - args.push_back("-c"); - args.push_back(full_command); -- return QProcess::startDetached("/bin/sh", args, working_directory); -+ return QProcess::startDetached("@sh@", args, working_directory); - - } - -- cgit 1.4.1