simplescreenrecorder: 0.3.11 -> 0.4.3

+22 -20
+11 -9
pkgs/applications/video/simplescreenrecorder/default.nix
··· 1 - { lib, stdenv, mkDerivation, fetchurl, alsaLib, ffmpeg_3, libjack2, libX11, libXext, qtx11extras 2 - , libXfixes, libGLU, libGL, pkg-config, libpulseaudio, qtbase, cmake, ninja 1 + { lib, stdenv, mkDerivation, fetchFromGitHub, alsaLib, ffmpeg, libjack2, libX11, libXext, libXinerama, qtx11extras 2 + , libXfixes, libGLU, libGL, pkg-config, libpulseaudio, libv4l, qtbase, qttools, cmake, ninja 3 3 }: 4 4 5 5 mkDerivation rec { 6 6 pname = "simplescreenrecorder"; 7 - version = "0.3.11"; 7 + version = "0.4.3"; 8 8 9 - src = fetchurl { 10 - url = "https://github.com/MaartenBaert/ssr/archive/${version}.tar.gz"; 11 - sha256 = "0l6irdadqpajvv0dj3ngs1231n559l0y1pykhs2h7526qm4w7xal"; 9 + src = fetchFromGitHub { 10 + owner = "MaartenBaert"; 11 + repo = "ssr"; 12 + rev = version; 13 + sha256 = "0mrx8wprs8bi42fwwvk6rh634ic9jnn0gkfpd6q9pcawnnbz3vq8"; 12 14 }; 13 15 14 16 cmakeFlags = [ "-DWITH_QT5=TRUE" ]; ··· 25 27 26 28 nativeBuildInputs = [ pkg-config cmake ninja ]; 27 29 buildInputs = [ 28 - alsaLib ffmpeg_3 libjack2 libX11 libXext libXfixes libGLU libGL 29 - libpulseaudio qtbase qtx11extras 30 + alsaLib ffmpeg libjack2 libX11 libXext libXfixes libXinerama libGLU libGL 31 + libpulseaudio libv4l qtbase qttools qtx11extras 30 32 ]; 31 33 32 34 meta = with lib; { 33 35 description = "A screen recorder for Linux"; 34 36 homepage = "https://www.maartenbaert.be/simplescreenrecorder"; 35 - license = licenses.gpl3; 37 + license = licenses.gpl3Plus; 36 38 platforms = [ "x86_64-linux" ]; 37 39 maintainers = [ maintainers.goibhniu ]; 38 40 };
+11 -11
pkgs/applications/video/simplescreenrecorder/fix-paths.patch
··· 12 12 -LD_PRELOAD="$LD_PRELOAD:libssr-glinject.so" "$@" 13 13 +LD_PRELOAD="$LD_PRELOAD:@out@/lib/libssr-glinject.so" "$@" 14 14 diff --git a/src/AV/Input/GLInjectInput.cpp b/src/AV/Input/GLInjectInput.cpp 15 - index 6b378f8..cbcf82b 100644 15 + index fc98f31..18f5196 100644 16 16 --- a/src/AV/Input/GLInjectInput.cpp 17 17 +++ b/src/AV/Input/GLInjectInput.cpp 18 - @@ -96,7 +96,7 @@ void GLInjectInput::SetCapturing(bool capturing) { 18 + @@ -113,7 +113,7 @@ bool ExecuteDetached(const char* command, const char* working_directory) { 19 + 20 + // try to execute command 21 + do { 22 + - res = execl("/bin/sh", "/bin/sh", "-c", command, (char*) NULL); 23 + + res = execl("@sh@", "@sh@", "-c", command, (char*) NULL); 24 + } while(res == -1 and errno == EINTR); 25 + 26 + // failed, send feedback 27 + @@ -207,7 +207,7 @@ void GLInjectInput::SetCapturing(bool capturing) { 19 28 bool GLInjectInput::LaunchApplication(const QString& channel, bool relax_permissions, const QString& command, const QString& working_directory) { 20 29 21 30 // prepare command ··· 24 33 full_command += "SSR_CHANNEL=\"" + ShellEscape(channel) + "\" "; 25 34 if(relax_permissions) 26 35 full_command += "SSR_STREAM_RELAX_PERMISSIONS=1 "; 27 - @@ -106,7 +106,7 @@ bool GLInjectInput::LaunchApplication(const QString& channel, bool relax_permiss 28 - QStringList args; 29 - args.push_back("-c"); 30 - args.push_back(full_command); 31 - - return QProcess::startDetached("/bin/sh", args, working_directory); 32 - + return QProcess::startDetached("@sh@", args, working_directory); 33 - 34 - } 35 -