guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#25928: [PATCH] gnu: Add darktable.


From: Roel Janssen
Subject: bug#25928: [PATCH] gnu: Add darktable.
Date: Thu, 02 Mar 2017 01:04:33 +0100
User-agent: mu4e 0.9.18; emacs 25.1.1

Dear Guix,

And finally, here is a patch for Darktable.
Even though the upstream project strongly recommends x86_64, I do not
know whether it actually does not work on other platforms.  If the
builds fail on anything other than x86_64, we could limit it to this
platform only.

Kind regards,
Roel Janssen

>From 0c7e3fb1343594bae6e2922b1866468e1903c59d Mon Sep 17 00:00:00 2001
From: Roel Janssen <address@hidden>
Date: Thu, 2 Mar 2017 00:56:22 +0100
Subject: [PATCH] gnu: Add darktable.

* gnu/packages/photo.scm (darktable): New variable.
---
 gnu/packages/photo.scm | 81 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 81 insertions(+)

diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm
index ce71d2a44..42da06080 100644
--- a/gnu/packages/photo.scm
+++ b/gnu/packages/photo.scm
@@ -31,17 +31,23 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages gl)
+  #:use-module (gnu packages gnome)
   #:use-module (gnu packages graphics)
+  #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages libusb)
+  #:use-module (gnu packages llvm)
   #:use-module (gnu packages man)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages popt)
+  #:use-module (gnu packages python)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages tex)
   #:use-module (gnu packages web)
@@ -67,6 +73,81 @@
 cameras (CRW/CR2, NEF, RAF, DNG, and others).")
     (license license:lgpl2.1+)))
 
+(define-public darktable
+  (package
+    (name "darktable")
+    (version "2.2.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/darktable-org/darktable/releases/";
+                    "download/release-"
+                    version "/darktable-" version ".tar.xz"))
+              (sha256
+               (base32
+                "1828vbxx4r36m0brqfs5f51j2j2fxb0f6q8cd1vkaa5zhnaqacqv"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ; There are no tests.
+       #:configure-flags '("-DCMAKE_INSTALL_LIBDIR=lib")
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'set-ldflags
+          (lambda* (#:key outputs #:allow-other-keys)
+            (setenv "LDFLAGS"
+                    (string-append
+                     "-Wl,-rpath="
+                     (assoc-ref outputs "out") "/lib/darktable"))
+            #t))
+         (add-after 'set-paths 'add-ilmbase-include-path
+           (lambda* (#:key inputs #:allow-other-keys)
+             ;; OpenEXR propagates ilmbase, but its include files do not appear
+             ;; in the CPATH, so we need to add "$ilmbase/include/OpenEXR/" to
+             ;; the CPATH to satisfy the dependency on "ImathInt64.h".
+             (setenv "CPATH"
+                     (string-append
+                      (assoc-ref inputs "ilmbase")
+                      "/include/OpenEXR:" (or (getenv "CPATH") "")))
+             #t)))))
+    (native-inputs
+     `(("llvm" ,llvm-3.9.1)
+       ("clang" ,clang-3.9.1)))
+    (inputs
+     `(("libxslt" ,libxslt)
+       ("libxml2" ,libxml2)
+       ("pugixml" ,pugixml)
+       ("gtk+" ,gtk+)
+       ("sqlite" ,sqlite)
+       ("libjpeg" ,libjpeg)
+       ("libpng" ,libpng)
+       ("cairo" ,cairo)
+       ("lcms" ,lcms)
+       ("exiv2" ,exiv2)
+       ("libtiff" ,libtiff)
+       ("curl" ,curl)
+       ("libgphoto2" ,libgphoto2)
+       ("dbus-glib" ,dbus-glib)
+       ("fop" ,fop)
+       ("openexr" ,openexr)
+       ("ilmbase" ,ilmbase)
+       ("libsoup" ,libsoup)
+       ("python-jsonschema" ,python-jsonschema)
+       ("intltool" ,intltool)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("libwebp" ,libwebp)
+       ("lensfun" ,lensfun)
+       ("librsvg" ,librsvg)
+       ("json-glib" ,json-glib)
+       ("freeimage" ,freeimage)))
+    (home-page "https://www.darktable.org";)
+    (synopsis "Virtual lighttable and darkroom for photographers")
+    (description "Darktable is an open source photography workflow application
+and RAW developer.  It manages your digital negatives in a database, lets you
+view them through a zoomable lighttable and enables you to develop raw images
+and enhance them.")
+    (license license:gpl3+)))
+
 (define-public libexif
   (package
     (name "libexif")
-- 
2.11.0





reply via email to

[Prev in Thread] Current Thread [Next in Thread]