(address . guix-patches@gnu.org)
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
Toggle quote (1 lines)
>From 0c7e3fb1343594bae6e2922b1866468e1903c59d Mon Sep 17 00:00:00 2001
From: Roel Janssen <roel@gnu.org>
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(+)
Toggle diff (112 lines)
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