@@ -26,6 +26,7 @@
(define-module (gnu packages inkscape)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
+ #:use-module (guix gexp)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build-system cmake)
@@ -153,87 +154,88 @@ (define-public inkscape/stable
((".*find_package\\(DoubleConversion.*") ""))))))
(build-system cmake-build-system)
(arguments
- `(#:test-target "check" ;otherwise some test binaries are missing
- #:imported-modules (,@%cmake-build-system-modules
+ (list
+ #:test-target "check" ; otherwise some test binaries are missing
+ #:imported-modules `(,@%cmake-build-system-modules
(guix build glib-or-gtk-build-system))
- #:modules ((guix build cmake-build-system)
+ #:modules '((guix build cmake-build-system)
((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
(guix build utils))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
- (assoc-ref glib-or-gtk:%standard-phases
- 'generate-gdk-pixbuf-loaders-cache-file))
- (add-after 'unpack 'patch-icon-cache-generator
- (lambda _
- (substitute* "share/icons/application/CMakeLists.txt"
- (("gtk-update-icon-cache") "true"))))
- (add-after 'unpack 'disable-latex-export-tests
- ;; FIXME: For some reason the test.pdf_tex file generated by the
- ;; "--export-latex" lacks "some text" in its content when run in
- ;; the build environment. Skip the related tests.
- (lambda _
- (substitute* "testfiles/cli_tests/CMakeLists.txt"
- (("add_cli_test\\(export-latex")
- "message(TEST_DISABLED: export-latex"))))
- (add-after 'unpack 'set-home
- ;; Mute Inkscape warnings during tests.
- (lambda _
- (setenv "HOME" (getcwd))))
- ;; Move the check phase after the install phase, as when run in the
- ;; tests, Inkscape relies on files that are not yet installed, such
- ;; as the "share/inkscape/ui/units.xml" file.
- (delete 'check)
- (add-after 'install 'check
- (assoc-ref %standard-phases 'check))
- (add-after 'install 'glib-or-gtk-compile-schemas
- (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
- (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
- (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
- (add-after 'install 'wrap-program
- ;; Ensure Python is available at runtime.
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (wrap-program (string-append out "/bin/inkscape")
- `("GUIX_PYTHONPATH" ":" prefix
- (,(getenv "GUIX_PYTHONPATH")))
- ;; Wrapping GDK_PIXBUF_MODULE_FILE allows Inkscape to load
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
+ (assoc-ref glib-or-gtk:%standard-phases
+ 'generate-gdk-pixbuf-loaders-cache-file))
+ (add-after 'unpack 'patch-icon-cache-generator
+ (lambda _
+ (substitute* "share/icons/application/CMakeLists.txt"
+ (("gtk-update-icon-cache") "true"))))
+ (add-after 'unpack 'disable-latex-export-tests
+ ;; FIXME: For some reason the test.pdf_tex file generated by the
+ ;; "--export-latex" lacks "some text" in its content when run in
+ ;; the build environment. Skip the related tests.
+ (lambda _
+ (substitute* "testfiles/cli_tests/CMakeLists.txt"
+ (("add_cli_test\\(export-latex")
+ "message(TEST_DISABLED: export-latex"))))
+ (add-after 'unpack 'set-home
+ ;; Mute Inkscape warnings during tests.
+ (lambda _
+ (setenv "HOME" (getcwd))))
+ ;; Move the check phase after the install phase, as when run in the
+ ;; tests, Inkscape relies on files that are not yet installed, such
+ ;; as the "share/inkscape/ui/units.xml" file.
+ (delete 'check)
+ (add-after 'install 'check
+ (assoc-ref %standard-phases 'check))
+ (add-after 'install 'glib-or-gtk-compile-schemas
+ (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
+ (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
+ (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
+ (add-after 'install 'wrap-program
+ ;; Ensure Python is available at runtime.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (wrap-program (string-append out "/bin/inkscape")
+ `("GUIX_PYTHONPATH" ":" prefix
+ (,(getenv "GUIX_PYTHONPATH")))
+ ;; Wrapping GDK_PIXBUF_MODULE_FILE allows Inkscape to load
;; its own icons in pure environments.
`("GDK_PIXBUF_MODULE_FILE" =
(,(getenv "GDK_PIXBUF_MODULE_FILE"))))))))))
(inputs
- `(("aspell" ,aspell)
- ("bash-minimal" ,bash-minimal)
- ("autotrace" ,autotrace)
- ("gdl" ,gdl-minimal)
- ("gtkmm" ,gtkmm-3)
- ("gtk" ,gtk+)
- ("gtkspell3" ,gtkspell3)
- ("gsl" ,gsl)
- ("poppler" ,poppler)
- ("lib2geom" ,lib2geom-1.2)
- ("libjpeg" ,libjpeg-turbo)
- ("libpng" ,libpng)
- ("libxml2" ,libxml2)
- ("libxslt" ,libxslt)
- ("libgc" ,libgc)
- ("librsvg" ,librsvg) ; for the pixbuf loader
- ("libsoup" ,libsoup-minimal-2)
- ("libcdr" ,libcdr)
- ("libvisio" ,libvisio)
- ("libwpd" ,libwpd)
- ("libwpg" ,libwpg)
- ("freetype" ,freetype)
- ("popt" ,popt)
- ("potrace" ,potrace)
- ("lcms" ,lcms)
- ("boost" ,boost)
- ("python" ,python-wrapper)
- ("python-cssselect" ,python-cssselect) ; to render qrcode
- ("python-scour" ,python-scour)
- ("python-pyserial" ,python-pyserial)
- ("python-numpy" ,python-numpy)
- ("python-lxml" ,python-lxml)))
+ (list aspell
+ bash-minimal
+ autotrace
+ gdl-minimal
+ gtkmm-3
+ gtk+
+ gtkspell3
+ gsl
+ poppler
+ lib2geom-1.2
+ libjpeg-turbo
+ libpng
+ libxml2
+ libxslt
+ libgc
+ librsvg ; for the pixbuf loader
+ libsoup-minimal-2
+ libcdr
+ libvisio
+ libwpd
+ libwpg
+ freetype
+ popt
+ potrace
+ lcms
+ boost
+ python-wrapper
+ python-cssselect ; to render qrcode
+ python-scour
+ python-pyserial
+ python-numpy
+ python-lxml))
(native-inputs
(list imagemagick ;for tests
intltool