about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSandro <sandro.jaeckel@gmail.com>2021-11-25 12:08:35 +0100
committerGitHub <noreply@github.com>2021-11-25 12:08:35 +0100
commitfe0dd07b78e364af5fda2a2365c0cc2254b95518 (patch)
treec3a16be3aabdb2dcc88e56c69fec62460ddd8bf5
parent690029ac384e319603ab5a7d7a62285f6eb7d4ac (diff)
parent28b5d59de2cbf34cc7af759b01b808a04777a15f (diff)
Merge pull request #147349 from michojel/megasync-4.6.1
-rw-r--r--pkgs/applications/misc/megasync/default.nix17
-rw-r--r--pkgs/applications/misc/megasync/ffmpeg_44.patch14
-rw-r--r--pkgs/top-level/all-packages.nix4
3 files changed, 26 insertions, 9 deletions
diff --git a/pkgs/applications/misc/megasync/default.nix b/pkgs/applications/misc/megasync/default.nix
index 438a468afa160..4b273981fa9ad 100644
--- a/pkgs/applications/misc/megasync/default.nix
+++ b/pkgs/applications/misc/megasync/default.nix
@@ -7,7 +7,8 @@
 , curl
 , doxygen
 , fetchFromGitHub
-#, ffmpeg
+, ffmpeg
+, freeimage
 , libmediainfo
 , libraw
 , libsodium
@@ -27,13 +28,13 @@
 }:
 mkDerivation rec {
   pname = "megasync";
-  version = "4.5.3.0";
+  version = "4.6.1.0";
 
   src = fetchFromGitHub {
     owner = "meganz";
     repo = "MEGAsync";
     rev = "v${version}_Linux";
-    sha256 = "1lwjmdbqyxx5wd8nx4mc830fna37jad4h93viwfh5x7sxn104js7";
+    sha256 = "0v2fvji9hs7valya0wx5qjx01c7yjld6nnp6m9gpxfkr30h5s5wb";
     fetchSubmodules = true;
   };
 
@@ -52,8 +53,8 @@ mkDerivation rec {
     c-ares
     cryptopp
     curl
-    # temporarily disable until patched for ffmpeg 4.4
-    #ffmpeg
+    ffmpeg
+    freeimage
     libmediainfo
     libraw
     libsodium
@@ -71,6 +72,7 @@ mkDerivation rec {
     ./noinstall-distro-version.patch
     # megasync target is not part of the install rule thanks to a commented block
     ./install-megasync.patch
+    ./ffmpeg_44.patch
   ];
 
   postPatch = ''
@@ -95,9 +97,8 @@ mkDerivation rec {
     "--with-cares"
     "--with-cryptopp"
     "--with-curl"
-    # temporarily disable until patched for ffmpeg 4.4
-    #"--with-ffmpeg"
-    "--without-freeimage" # unreferenced even when found
+    "--with-ffmpeg"
+    "--with-freeimage"
     "--without-readline"
     "--without-termcap"
     "--with-sodium"
diff --git a/pkgs/applications/misc/megasync/ffmpeg_44.patch b/pkgs/applications/misc/megasync/ffmpeg_44.patch
new file mode 100644
index 0000000000000..901635e43f3e6
--- /dev/null
+++ b/pkgs/applications/misc/megasync/ffmpeg_44.patch
@@ -0,0 +1,14 @@
+Index: megasync-4.6.1.0/src/MEGASync/mega/src/gfx/freeimage.cpp
+===================================================================
+--- megasync-4.6.1.0.orig/src/MEGASync/mega/src/gfx/freeimage.cpp
++++ megasync-4.6.1.0/src/MEGASync/mega/src/gfx/freeimage.cpp
+@@ -253,7 +253,8 @@ bool GfxProcFreeImage::readbitmapFfmpeg(
+ 
+     // Force seeking to key frames
+     formatContext->seek2any = false;
+-    videoStream->skip_to_keyframe = true;
++    // no longer exposed in ffmpeg 4.4; the line above should be sufficient
++    //videoStream->skip_to_keyframe = true;
+     if (decoder->capabilities & CAP_TRUNCATED)
+     {
+         codecContext->flags |= CAP_TRUNCATED;
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index de0fe8f020fd4..7a9d7517defe6 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3288,7 +3288,9 @@ with pkgs;
 
   medusa = callPackage ../tools/security/medusa { };
 
-  megasync = libsForQt515.callPackage ../applications/misc/megasync { };
+  megasync = libsForQt5.callPackage ../applications/misc/megasync {
+    ffmpeg = ffmpeg-full;
+  };
 
   megacmd = callPackage ../applications/misc/megacmd { };