Message ID | 20200619201120.34116-1-monego@posteo.net |
---|---|
State | Accepted |
Headers | show |
Series | [bug#41953] gnu: darktable: Update to 3.0.2. | expand |
Context | Check | Description |
---|---|---|
cbaines/comparison | success | View comparision |
cbaines/git branch | success | View Git branch |
cbaines/applying patch | success | View Laminar job |
Vinicius Monego <monego@posteo.net> writes: > * gnu/packages/photo.scm (darktable): Update to 3.0.2. > [arguments]: Compile with clang. > [arguments]: Wrap GSETTINGS_SCHEMAS_DIR. > [license]: Add license information for Rawspeed. > [native-inputs]: Add clang. > [native-inputs]: Add desktop-file-utils. > [native-inputs]: Add glib. > [native-inputs]: Add gobject-instrospection. > [native-inputs]: Add llvm. > [native-inputs]: Add po4a. > [native-inputs]: Reorder alphabetically. > [inputs]: Add colord-gtk. > [inputs]: Add cups. > [inputs]: Add graphicsmagick. > [inputs]: Add gsettings-desktop-schemas. > [inputs]: Add iso-codes. > [inputs]: Add libsecret. > [inputs]: Add lua. > [inputs]: Add openjpeg. > [inputs]: Add osm-gps-map. > [inputs]: Reorder alphabetically. Thanks! I flattened this commit message so there is just a single entry for each of the changed fields. > (modify-phases %standard-phases > + (add-before 'configure 'prepare-build-environment > + (lambda* (#:key inputs #:allow-other-keys) > + (setenv "CC" "clang") (setenv "CXX" "clang++"))) I tried building with GCC, and indeed it failed. First because ISL was not enabled, so I added 'gcc-9' which has it and adjusted CPLUS_INCLUDE_PATH accordingly, but still ran into problems. It would be good to move to GCC eventually because Clang is not nearly as well tested. :-) Anyway thanks for the patch, applied!
Em seg, 2020-06-22 às 23:11 +0200, Marius Bakke escreveu: > Vinicius Monego <monego@posteo.net> writes: > > > * gnu/packages/photo.scm (darktable): Update to 3.0.2. > > [arguments]: Compile with clang. > > [arguments]: Wrap GSETTINGS_SCHEMAS_DIR. > > [license]: Add license information for Rawspeed. > > [native-inputs]: Add clang. > > [native-inputs]: Add desktop-file-utils. > > [native-inputs]: Add glib. > > [native-inputs]: Add gobject-instrospection. > > [native-inputs]: Add llvm. > > [native-inputs]: Add po4a. > > [native-inputs]: Reorder alphabetically. > > [inputs]: Add colord-gtk. > > [inputs]: Add cups. > > [inputs]: Add graphicsmagick. > > [inputs]: Add gsettings-desktop-schemas. > > [inputs]: Add iso-codes. > > [inputs]: Add libsecret. > > [inputs]: Add lua. > > [inputs]: Add openjpeg. > > [inputs]: Add osm-gps-map. > > [inputs]: Reorder alphabetically. > > Thanks! I flattened this commit message so there is just a single > entry > for each of the changed fields. > > > (modify-phases %standard-phases > > + (add-before 'configure 'prepare-build-environment > > + (lambda* (#:key inputs #:allow-other-keys) > > + (setenv "CC" "clang") (setenv "CXX" "clang++"))) > > I tried building with GCC, and indeed it failed. First because ISL > was > not enabled, so I added 'gcc-9' which has it and adjusted > CPLUS_INCLUDE_PATH accordingly, but still ran into problems. A few hours ago I was splitting this patch into shorter commits and the build began to fail. Weird, because it compiled succesfully for about 7 times before I submitted this patch. > > It would be good to move to GCC eventually because Clang is not > nearly > as well tested. :-) > The reason I chose clang is that CMake was very loud about LLVM not being found (it's an optional dependency to run OpenCL tests, which is one of the few features still missing from the package). When LLVM is found, CMake will recommend clang. That made me guess it was the recommended compiler. > Anyway thanks for the patch, applied! I didn't expect it to be approved at v1. Thanks :-)
Vinicius Monego <monego@posteo.net> writes: >> > (modify-phases %standard-phases >> > + (add-before 'configure 'prepare-build-environment >> > + (lambda* (#:key inputs #:allow-other-keys) >> > + (setenv "CC" "clang") (setenv "CXX" "clang++"))) >> >> I tried building with GCC, and indeed it failed. First because ISL >> was >> not enabled, so I added 'gcc-9' which has it and adjusted >> CPLUS_INCLUDE_PATH accordingly, but still ran into problems. > > A few hours ago I was splitting this patch into shorter commits and the > build began to fail. Weird, because it compiled succesfully for about 7 > times before I submitted this patch. Oh, I thought all these changes were necessary for the upgrade. :-) If you have further improvements to make, don't hesitate to send them. Thanks!
diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index 4904fa1db1..890035f0c7 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2020 Sebastian Schott <sschott@mailbox.org> ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> +;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -39,9 +40,11 @@ #:use-module (gnu packages base) #:use-module (gnu packages boost) #:use-module (gnu packages compression) + #:use-module (gnu packages cups) #:use-module (gnu packages curl) #:use-module (gnu packages file) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages geo) #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gl) @@ -52,9 +55,11 @@ #:use-module (gnu packages gtk) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) + #:use-module (gnu packages iso-codes) #:use-module (gnu packages libcanberra) #:use-module (gnu packages libusb) #:use-module (gnu packages llvm) + #:use-module (gnu packages lua) #:use-module (gnu packages man) #:use-module (gnu packages maths) #:use-module (gnu packages perl) @@ -457,7 +462,7 @@ photographic equipment.") (define-public darktable (package (name "darktable") - (version "2.6.3") + (version "3.0.2") (source (origin (method url-fetch) @@ -465,13 +470,16 @@ photographic equipment.") "https://github.com/darktable-org/darktable/releases/" "download/release-" version "/darktable-" version ".tar.xz")) (sha256 - (base32 "1w3q3dhcxa0bs590zbsj61ap8z84wmn04xs5q3gjwisqhjf9j655")))) + (base32 "1yrnkw8c47kmy2x6m1xp69hwyk02xyc8pd9kvcmyj54lzrhzdfka")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; there are no tests #:configure-flags '("-DBINARY_PACKAGE_BUILD=On") #:phases (modify-phases %standard-phases + (add-before 'configure 'prepare-build-environment + (lambda* (#:key inputs #:allow-other-keys) + (setenv "CC" "clang") (setenv "CXX" "clang++"))) (add-before 'configure 'set-LDFLAGS-and-CPATH (lambda* (#:key inputs outputs #:allow-other-keys) (setenv "LDFLAGS" @@ -483,35 +491,60 @@ photographic equipment.") (setenv "CPATH" (string-append (assoc-ref inputs "ilmbase") "/include/OpenEXR:" (or (getenv "CPATH") ""))) - #t))))) + #t)) + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (wrap-program (string-append (assoc-ref outputs "out") + "/bin/darktable") + ;; For GtkFileChooserDialog. + `("GSETTINGS_SCHEMA_DIR" = + (,(string-append (assoc-ref inputs "gtk+") + "/share/glib-2.0/schemas")))) + #t))))) (native-inputs - `(("intltool" ,intltool) + `(("clang" ,clang-9) + ("desktop-file-utils" ,desktop-file-utils) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("intltool" ,intltool) + ("llvm" ,llvm) ("perl" ,perl) - ("pkg-config" ,pkg-config))) + ("pkg-config" ,pkg-config) + ("po4a" ,po4a))) (inputs - `(("libxslt" ,libxslt) - ("libxml2" ,libxml2) - ("pugixml" ,pugixml) + `(("cairo" ,cairo) + ("colord-gtk" ,colord-gtk) + ("cups" ,cups) + ("curl" ,curl) + ("dbus-glib" ,dbus-glib) + ("exiv2" ,exiv2) + ("freeimage" ,freeimage) + ("graphicsmagick" ,graphicsmagick) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) ("gtk+" ,gtk+) - ("sqlite" ,sqlite) + ("ilmbase" ,ilmbase) + ("iso-codes" ,iso-codes) + ("json-glib" ,json-glib) + ("lcms" ,lcms) + ("lensfun" ,lensfun) + ("libgphoto2" ,libgphoto2) ("libjpeg" ,libjpeg-turbo) + ("libomp" ,libomp) ("libpng" ,libpng) - ("cairo" ,cairo) - ("lcms" ,lcms) - ("exiv2" ,exiv2) + ("librsvg" ,librsvg) + ("libsecret" ,libsecret) + ("libsoup" ,libsoup) ("libtiff" ,libtiff) - ("curl" ,curl) - ("libgphoto2" ,libgphoto2) - ("dbus-glib" ,dbus-glib) + ("libwebp" ,libwebp) + ("libxml2" ,libxml2) + ("libxslt" ,libxslt) + ("lua" ,lua) ("openexr" ,openexr) - ("ilmbase" ,ilmbase) - ("libsoup" ,libsoup) + ("openjpeg" ,openjpeg) + ("osm-gps-map" ,osm-gps-map) + ("pugixml" ,pugixml) ("python-jsonschema" ,python-jsonschema) - ("libwebp" ,libwebp) - ("lensfun" ,lensfun) - ("librsvg" ,librsvg) - ("json-glib" ,json-glib) - ("freeimage" ,freeimage))) + ("sqlite" ,sqlite))) (home-page "https://www.darktable.org") (synopsis "Virtual lighttable and darkroom for photographers") (description "Darktable is a photography workflow application and RAW @@ -520,7 +553,8 @@ them through a zoomable lighttable and enables you to develop raw images and enhance them.") ;; See src/is_supported_platform.h for supported platforms. (supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux")) - (license license:gpl3+))) + (license (list license:gpl3+ ;; Darktable itself. + license:lgpl2.1+)))) ;; Rawspeed library. (define-public hugin (package