diff options
author | Remco van 't Veer <remco@remworks.net> | 2025-03-12 10:41:37 +0100 |
---|---|---|
committer | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2025-03-13 10:10:07 +0900 |
commit | e124661486ec722b5c09a94b416f0104b9dde5a4 (patch) | |
tree | 66b01a482020293ecef268f5713d0cbfcffd13e0 | |
parent | 4da217b7d98c02e2794424cc5e9d54050187396b (diff) |
gnu: cairo: Fix regression writing PDFs with fonts via graft.
Fix out of memory errors when writing PDFs with fonts embedded in
xournalpp and others. See also:
https://gitlab.freedesktop.org/cairo/cairo/-/issues/870
* gnu/packages/gtk.scm (cairo)[replacement]: New field pointing to cairo-1.18.4.
* gnu/packages/gtk.scm (cairo-1.18.4): Add package.
Change-Id: I6efa5a3acdf39fe78e558173f896f3a6abbc5c27
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
-rw-r--r-- | gnu/packages/gtk.scm | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 846103ff9e..0fe1f8a016 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -38,6 +38,7 @@ ;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2024 John Kehayias <john.kehayias@protonmail.com> ;;; Copyright © 2025 Florian Pelz <pelzflorian@pelzflorian.de> +;;; Copyright © 2025 Remco van 't Veer <remco@remworks.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -172,6 +173,7 @@ such as mate-panel and xfce4-panel.") (package (name "cairo") (version "1.18.2") + (replacement cairo-1.18.4) (source (origin (method url-fetch) @@ -238,6 +240,21 @@ output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB.") ;; Hide and have cairo-with-documentation public. (properties '((hidden? . #t))))) +;;; TODO: This newer version resolves an issue when writing PDFs. Remove +;;; after ungrafting cairo. +(define cairo-1.18.4 + (package + (inherit cairo) + (version "1.18.4") + (source + (origin + (method url-fetch) + (uri + (string-append "https://cairographics.org/releases/cairo-" + version ".tar.xz")) + (sha256 + (base32 "1jrcqfcna0358aqrk7rnys1hwq6k36ilr9r62bg26j3fi8hdhpj4")))))) + (define-public cairo-with-documentation ;; cairo's docs must be built in a separate package since it requires ;; gtk-doc, which in turn depends on cairo. |