about summary refs log tree commit diff
path: root/pkgs/applications/misc/mediaelch/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/misc/mediaelch/default.nix')
-rw-r--r--pkgs/applications/misc/mediaelch/default.nix47
1 files changed, 34 insertions, 13 deletions
diff --git a/pkgs/applications/misc/mediaelch/default.nix b/pkgs/applications/misc/mediaelch/default.nix
index 2db12da257586..582d3186eaad2 100644
--- a/pkgs/applications/misc/mediaelch/default.nix
+++ b/pkgs/applications/misc/mediaelch/default.nix
@@ -1,22 +1,27 @@
 { lib
-, mkDerivation
+, stdenv
 , fetchFromGitHub
 
-, qmake
+, cmake
 , qttools
+, wrapQtAppsHook
 
 , curl
 , ffmpeg
 , libmediainfo
 , libzen
+, qt5compat ? null # qt6 only
 , qtbase
 , qtdeclarative
 , qtmultimedia
 , qtsvg
+, qtwayland
 , quazip
 }:
-
-mkDerivation rec {
+let
+  qtVersion = lib.versions.major qtbase.version;
+in
+stdenv.mkDerivation rec {
   pname = "mediaelch";
   version = "2.8.18";
 
@@ -28,20 +33,36 @@ mkDerivation rec {
     fetchSubmodules = true;
   };
 
-  nativeBuildInputs = [ qmake qttools ];
-
-  buildInputs = [ curl ffmpeg libmediainfo libzen qtbase qtdeclarative qtmultimedia qtsvg ];
+  nativeBuildInputs = [
+    cmake
+    qttools
+    wrapQtAppsHook
+  ];
 
-  qmakeFlags = [
-    "USE_EXTERN_QUAZIP=${quazip}/include/quazip5"
+  buildInputs = [
+    curl
+    ffmpeg
+    libmediainfo
+    libzen
+    qtbase
+    qtdeclarative
+    qtmultimedia
+    qtsvg
+    qtwayland
+    quazip
+  ] ++ lib.optional (qtVersion == "6") [
+    qt5compat
   ];
 
-  postPatch = ''
-    substituteInPlace MediaElch.pro --replace "/usr" "$out"
-  '';
 
+  cmakeFlags = [
+    "-DDISABLE_UPDATER=ON"
+    "-DUSE_EXTERN_QUAZIP=ON"
+    "-DMEDIAELCH_FORCE_QT${qtVersion}=ON"
+  ];
+
+  # libmediainfo.so.0 is loaded dynamically
   qtWrapperArgs = [
-    # libmediainfo.so.0 is loaded dynamically
     "--prefix LD_LIBRARY_PATH : ${libmediainfo}/lib"
   ];