gnu: inkscape: Wrap GDK_PIXBUF_MODULE_FILE.

Fixes <https://issues.guix.gnu.org/55634>.

* gnu/packages/inkscape.scm (inkscape)
[phases]{wrap-program}: Override phase.

Reported-by: Maxime Devos <maximedevos@telenet.be>
This commit is contained in:
Maxim Cournoyer 2022-07-12 16:20:29 -04:00
parent 7dcba233a3
commit b1523ffac5
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -267,5 +267,18 @@ (define-public inkscape
(lambda _
(substitute* "testfiles/src/path-boolop-test.cpp"
(("PathBoolopTest, UnionOutside(Swap)?.*" all)
(string-append all " GTEST_SKIP();\n")))))))))
(string-append all " GTEST_SKIP();\n")))))
(replace '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 (modify-inputs (package-inputs inkscape/stable)
(append librsvg))) ;for the pixbuf loader
(properties (alist-delete 'hidden? (package-properties inkscape/stable)))))