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: Wed, 10 May 2017 17:28:25 +0200
User-agent: mu4e 0.9.18; emacs 25.1.1

Attachment: 0001-gnu-Add-darktable.patch
Description: Text Data

Ricardo Wurmus writes:

> Roel Janssen <address@hidden> writes:
>
>> From 5053b44b621932d3c3aa0f1ddb8b01dd04cd4680 Mon Sep 17 00:00:00 2001
>> From: Roel Janssen <address@hidden>
>> Date: Wed, 10 May 2017 16:06:38 +0200
>> Subject: [PATCH] gnu: Add darktable.
>>
>> * gnu/packages/photo.scm (darktable): New variable.
>> ---
> […]
>> +    (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)))))
>
> I wonder if it would be possible to augment LDFLAGS and CPATH in
> #:configure-flags or #:make-flags instead of using build phases (which I
> find a bit crude).
>
> If that’s too hard I promise I won’t complain about doing it with build
> phases :)

See attached patch.  By adding the LDFLAGS part to either #:make-flags
or #:configure-flags, the run-path validation phase fails at the end of
the build process.

So, maybe we can settle half-way here? :-)

>> +    (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)
>> +       ("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
>
> s/an open source/a/

Oops.  Adjusted in the new patch.

>> +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+)))
>
> Good to push with the change to the description.
> Thanks!

Is this then finally the moment we get to have darktable in Guix? :-)

Kind regards,
Roel Janssen

reply via email to

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