132 lines
2.3 KiB
Nix
132 lines
2.3 KiB
Nix
|
{ mkDerivation, lib, fetchFromGitHub, cmake, doxygen, extra-cmake-modules, wrapGAppsHook
|
||
|
|
||
|
# For `digitaglinktree`
|
||
|
, perl, sqlite
|
||
|
|
||
|
, qtbase
|
||
|
, qtxmlpatterns
|
||
|
, qtsvg
|
||
|
, qtwebengine
|
||
|
|
||
|
, akonadi-contacts
|
||
|
, kcalendarcore
|
||
|
, kconfigwidgets
|
||
|
, kcoreaddons
|
||
|
, kdoctools
|
||
|
, kfilemetadata
|
||
|
, knotifications
|
||
|
, knotifyconfig
|
||
|
, ktextwidgets
|
||
|
, kwidgetsaddons
|
||
|
, kxmlgui
|
||
|
|
||
|
, bison
|
||
|
, boost
|
||
|
, eigen
|
||
|
, exiv2
|
||
|
, ffmpeg
|
||
|
, flex
|
||
|
, jasper ? null, withJpeg2k ? false # disable JPEG2000 support, jasper has unfixed CVE
|
||
|
, lcms2
|
||
|
, lensfun
|
||
|
, libgphoto2
|
||
|
, libkipi
|
||
|
, libksane
|
||
|
, liblqr1
|
||
|
, libqtav
|
||
|
, libusb1
|
||
|
, marble
|
||
|
, libGL
|
||
|
, libGLU
|
||
|
, opencv3
|
||
|
, pcre
|
||
|
, threadweaver
|
||
|
|
||
|
# For panorama and focus stacking
|
||
|
, enblend-enfuse
|
||
|
, hugin
|
||
|
, gnumake
|
||
|
|
||
|
, oxygen
|
||
|
}:
|
||
|
|
||
|
mkDerivation rec {
|
||
|
pname = "digikam";
|
||
|
version = "6.2.0";
|
||
|
|
||
|
src = fetchFromGitHub {
|
||
|
owner = "KDE";
|
||
|
repo = "digikam";
|
||
|
rev = "v${version}";
|
||
|
sha256 = "1l1nb1nwicmip2jxhn5gzr7h60igvns0zs3kzp36r6qf4wvg3v2z";
|
||
|
};
|
||
|
|
||
|
nativeBuildInputs = [ cmake doxygen extra-cmake-modules kdoctools wrapGAppsHook ];
|
||
|
|
||
|
buildInputs = [
|
||
|
bison
|
||
|
boost
|
||
|
eigen
|
||
|
exiv2
|
||
|
ffmpeg
|
||
|
flex
|
||
|
lcms2
|
||
|
lensfun
|
||
|
libgphoto2
|
||
|
libkipi
|
||
|
libksane
|
||
|
liblqr1
|
||
|
libqtav
|
||
|
libusb1
|
||
|
libGL
|
||
|
libGLU
|
||
|
opencv3
|
||
|
pcre
|
||
|
|
||
|
qtbase
|
||
|
qtxmlpatterns
|
||
|
qtsvg
|
||
|
qtwebengine
|
||
|
|
||
|
akonadi-contacts
|
||
|
kcalendarcore
|
||
|
kconfigwidgets
|
||
|
kcoreaddons
|
||
|
kfilemetadata
|
||
|
knotifications
|
||
|
knotifyconfig
|
||
|
ktextwidgets
|
||
|
kwidgetsaddons
|
||
|
kxmlgui
|
||
|
|
||
|
marble
|
||
|
oxygen
|
||
|
threadweaver
|
||
|
]
|
||
|
++ lib.optionals withJpeg2k [ jasper ];
|
||
|
|
||
|
enableParallelBuilding = true;
|
||
|
|
||
|
cmakeFlags = [
|
||
|
"-DENABLE_MYSQLSUPPORT=1"
|
||
|
"-DENABLE_INTERNALMYSQL=1"
|
||
|
"-DENABLE_MEDIAPLAYER=1"
|
||
|
"-DENABLE_QWEBENGINE=on"
|
||
|
];
|
||
|
|
||
|
preFixup = ''
|
||
|
gappsWrapperArgs+=(--prefix PATH : ${lib.makeBinPath [ gnumake hugin enblend-enfuse ]})
|
||
|
gappsWrapperArgs+=(--suffix DK_PLUGIN_PATH : ${placeholder "out"}/${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";
|
||
|
platforms = platforms.linux;
|
||
|
};
|
||
|
}
|