about summary refs log tree commit diff
path: root/pkgs/by-name
diff options
context:
space:
mode:
authorWeijia Wang <9713184+wegank@users.noreply.github.com>2024-03-08 20:26:13 +0100
committerGitHub <noreply@github.com>2024-03-08 20:26:13 +0100
commit9c9d49433fff51368a5de5c1e64474e0ec7d264d (patch)
treef8ef856ea920b407980f15bf56ffc0b4d62cb975 /pkgs/by-name
parentf6a4c012ed360df18d0baae1f4ab01dafead907a (diff)
parent1b7a9bdf98d8aee06a453649c5f07ec4f2b5e1e8 (diff)
downloadnixlib-9c9d49433fff51368a5de5c1e64474e0ec7d264d.tar
nixlib-9c9d49433fff51368a5de5c1e64474e0ec7d264d.tar.gz
nixlib-9c9d49433fff51368a5de5c1e64474e0ec7d264d.tar.bz2
nixlib-9c9d49433fff51368a5de5c1e64474e0ec7d264d.tar.lz
nixlib-9c9d49433fff51368a5de5c1e64474e0ec7d264d.tar.xz
nixlib-9c9d49433fff51368a5de5c1e64474e0ec7d264d.tar.zst
nixlib-9c9d49433fff51368a5de5c1e64474e0ec7d264d.zip
Merge pull request #282378 from eclairevoyant/digikam
digikam: move to `pkgs/by-name`, 8.1.0 -> 8.2.0
Diffstat (limited to 'pkgs/by-name')
-rw-r--r--pkgs/by-name/di/digikam/package.nix141
1 files changed, 141 insertions, 0 deletions
diff --git a/pkgs/by-name/di/digikam/package.nix b/pkgs/by-name/di/digikam/package.nix
new file mode 100644
index 000000000000..01659a65173e
--- /dev/null
+++ b/pkgs/by-name/di/digikam/package.nix
@@ -0,0 +1,141 @@
+{ stdenv, config, lib, fetchurl, cmake, doxygen, extra-cmake-modules, wrapGAppsHook
+
+# For `digitaglinktree`
+, perl, sqlite
+
+, libsForQt5
+
+, bison
+, boost
+, eigen
+, exiv2
+, ffmpeg_4
+, flex
+, graphviz
+, imagemagick
+, lcms2
+, lensfun
+, libgphoto2
+, liblqr1
+, libusb1
+, libheif
+, libGL
+, libGLU
+, opencv
+, pcre
+, x265
+, jasper
+
+# For panorama and focus stacking
+, enblend-enfuse
+, hugin
+, gnumake
+
+, cudaSupport ? config.cudaSupport
+, cudaPackages ? {}
+}:
+
+stdenv.mkDerivation rec {
+  pname   = "digikam";
+  version = "8.2.0";
+
+  src = fetchurl {
+    url = "mirror://kde/stable/${pname}/${version}/digiKam-${version}.tar.xz";
+    hash = "sha256-L3/LVZsSPtnsrlpa729FYO7l9JIG2dF0beyatsj7OL8=";
+  };
+
+  strictDeps = true;
+
+  depsBuildBuild = [ cmake ];
+
+  nativeBuildInputs = [
+    cmake
+    doxygen
+    extra-cmake-modules
+    libsForQt5.kdoctools
+    libsForQt5.wrapQtAppsHook
+    wrapGAppsHook
+  ] ++ lib.optionals cudaSupport (with cudaPackages; [
+    cuda_nvcc
+  ]);
+
+  buildInputs = [
+    bison
+    boost
+    eigen
+    exiv2
+    ffmpeg_4
+    flex
+    graphviz
+    imagemagick
+    lcms2
+    lensfun
+    libgphoto2
+    libheif
+    liblqr1
+    libusb1
+    libGL
+    libGLU
+    opencv
+    pcre
+    x265
+    jasper
+  ] ++ (with libsForQt5; [
+    libkipi
+    libksane
+    libqtav
+
+    qtbase
+    qtxmlpatterns
+    qtsvg
+    qtwebengine
+    qtnetworkauth
+
+    akonadi-contacts
+    kcalendarcore
+    kconfigwidgets
+    kcoreaddons
+    kfilemetadata
+    knotifications
+    knotifyconfig
+    ktextwidgets
+    kwidgetsaddons
+    kxmlgui
+
+    breeze-icons
+    marble
+    oxygen
+    threadweaver
+  ]) ++ lib.optionals cudaSupport (with cudaPackages; [
+    cuda_cudart
+  ]);
+
+  cmakeFlags = [
+    "-DENABLE_MYSQLSUPPORT=1"
+    "-DENABLE_INTERNALMYSQL=1"
+    "-DENABLE_MEDIAPLAYER=1"
+    "-DENABLE_QWEBENGINE=on"
+    "-DENABLE_APPSTYLES=on"
+    "-DCMAKE_CXX_FLAGS=-I${libsForQt5.libksane}/include/KF5" # fix `#include <ksane_version.h>`
+  ];
+
+  dontWrapGApps = true;
+
+  preFixup = ''
+    qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
+    qtWrapperArgs+=(--prefix PATH : ${lib.makeBinPath [ gnumake hugin enblend-enfuse ]})
+    qtWrapperArgs+=(--suffix DK_PLUGIN_PATH : ${placeholder "out"}/${libsForQt5.qtbase.qtPluginPrefix}/${pname})
+    substituteInPlace $out/bin/digitaglinktree \
+      --replace "/usr/bin/perl" "${perl}/bin/perl" \
+      --replace "/usr/bin/sqlite3" "${sqlite}/bin/sqlite3"
+  '';
+
+  meta = with lib; {
+    description = "Photo Management Program";
+    license = licenses.gpl2;
+    homepage = "https://www.digikam.org";
+    maintainers = with maintainers; [ spacefault ];
+    platforms = platforms.linux;
+    mainProgram = "digikam";
+  };
+}