Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

simplescreenrecorder: 0.3.11 -> 0.4.3 #120623

Merged
merged 1 commit into from Apr 25, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
20 changes: 11 additions & 9 deletions 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" ];
Expand All @@ -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 ];
};
Expand Down
22 changes: 11 additions & 11 deletions pkgs/applications/video/simplescreenrecorder/fix-paths.patch
Expand Up @@ -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
Expand All @@ -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);

}