about summary refs log tree commit diff
path: root/pkgs/applications/graphics/digikam/default.nix
diff options
context:
space:
mode:
authoraszlig <aszlig@redmoonstudios.org>2017-10-19 03:04:45 +0200
committeraszlig <aszlig@redmoonstudios.org>2017-10-19 04:42:53 +0200
commit27b7192726e565b463fd5af74842a6d0287fec48 (patch)
tree80e3bb4631ce58240d2b742f6ff1e20397bd907d /pkgs/applications/graphics/digikam/default.nix
parenta8989e6bb0c5478928d5c4e684957b579e8e2743 (diff)
digikam: 5.4.0 -> 5.7.0
The build for the version 5.4.0 of digiKam has been broken at the time
prior to this commit, which is the main reason for this update as I
don't think it makes sense to fix the build for 5.4.0 when we're going
to update it anyway.

A lot has changed upstream between version 5.4.0 and 5.7.0 and it's too
much to be summarized here, so here are the URLs to the upstream
announcements:

 * https://www.digikam.org/news/2017-03-14_digiKam_5.5.0_is_released/
 * https://www.digikam.org/news/2017-06-21-5.6.0-release-announcement/
 * https://www.digikam.org/news/2017-09-11-5.7.0_release_announcement/

On the packaging side, we now no longer have the patch that disables
-fno-operator-names because the build runs fine without that patch
(which didn't even apply but I didn't check why) and IMO it doesn't make
sense to rebase that patch for no reason.

Additionally, there were build time dependencies lurking around in
propagatedBuildInputs, which is kinda pointless and the application just
runs fine if those dependencies are listed in buildInputs.

While looking for clues about why that might be necessary I haven't
found any comment about it in the source nor a clarification within the
message of the commit where this has been introduced.

The commit in question is be7b7d908f82e8ab16c43ffd0e240addd6f4018a.

Apart from these changes, the rest is just adding a few dependencies
(kcalcore, libksane, mesa and pcre) to get less errors during
cmakeConfigurePhase.

I've tested digiKam by playing around within a VM using photos I
netcat'ed into it and it works so far. The VM was built using:

nix-build nixos --arg configuration '{ pkgs, ... }: {
  imports = [ ./nixos/tests/common/user-account.nix ];
  environment.systemPackages = [ pkgs.digikam ];
  services.xserver.enable = true;
  services.xserver.displayManager.sddm.enable = true;
  services.xserver.desktopManager.plasma5.enable = true;
  services.xserver.desktopManager.default = "plasma5";
  virtualisation.memorySize = 1024;
}' -A vm

What I didn't test however was whether importing from a camera would
work (as I don't have one), but aside from that, the application seems
to run fine compared to the fact that it didn't even build until now :-)

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Cc: @the-kenny, @urkud, @viric, @cillianderoiste, @ttuegel
Cc: @jraygauthier, @fkz, @sh01, @lsix
Diffstat (limited to 'pkgs/applications/graphics/digikam/default.nix')
-rw-r--r--pkgs/applications/graphics/digikam/default.nix22
1 files changed, 12 insertions, 10 deletions
diff --git a/pkgs/applications/graphics/digikam/default.nix b/pkgs/applications/graphics/digikam/default.nix
index 96b1ca54d5583..44ee807fe9847 100644
--- a/pkgs/applications/graphics/digikam/default.nix
+++ b/pkgs/applications/graphics/digikam/default.nix
@@ -8,6 +8,7 @@
 , qtsvg
 , qtwebkit
 
+, kcalcore
 , kconfigwidgets
 , kcoreaddons
 , kdoctools
@@ -28,12 +29,15 @@
 , lensfun
 , libgphoto2
 , libkipi
+, libksane
 , liblqr1
 , libqtav
 , libusb1
+, mesa
 , marble
 , mysql
-, opencv
+, opencv3
+, pcre
 , threadweaver
 
 # For panorama and focus stacking
@@ -46,17 +50,15 @@
 
 mkDerivation rec {
   name    = "digikam-${version}";
-  version = "5.4.0";
+  version = "5.7.0";
 
   src = fetchurl {
     url = "http://download.kde.org/stable/digikam/${name}.tar.xz";
-    sha256 = "0dgsgji14l5zvxny36hrfsp889fsfrsbbn9bg57m18404xp903kg";
+    sha256 = "1xah079g47fih8l9qy1ifppfvmq5yms5y1z54nvxdyz8nsszy19n";
   };
 
   nativeBuildInputs = [ cmake extra-cmake-modules kdoctools wrapGAppsHook ];
 
-  patches = [ ./0001-Disable-fno-operator-names.patch ];
-
   buildInputs = [
     bison
     boost
@@ -68,19 +70,21 @@ mkDerivation rec {
     lensfun
     libgphoto2
     libkipi
+    libksane
     liblqr1
     libqtav
     libusb1
+    mesa
     mysql
-    opencv
-  ];
+    opencv3
+    pcre
 
-  propagatedBuildInputs = [
     qtbase
     qtxmlpatterns
     qtsvg
     qtwebkit
 
+    kcalcore
     kconfigwidgets
     kcoreaddons
     kfilemetadata
@@ -98,8 +102,6 @@ mkDerivation rec {
   enableParallelBuilding = true;
 
   cmakeFlags = [
-    "-DLIBUSB_LIBRARIES=${libusb1.out}/lib"
-    "-DLIBUSB_INCLUDE_DIR=${libusb1.dev}/include/libusb-1.0"
     "-DENABLE_MYSQLSUPPORT=1"
     "-DENABLE_INTERNALMYSQL=1"
     "-DENABLE_MEDIAPLAYER=1"