aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-10-20 09:34:23 +0200
committerLudovic Courtès <ludo@gnu.org>2020-10-20 16:30:15 +0200
commite21e0affd9d31a0e58d4df7c15b2b851be43279b (patch)
tree81adb5f0faaa7f079b58c937886ad70adeda08c5
parent8db4ebb0cd9bfdcf1aea63eb8d20eb6af0c87c93 (diff)
downloadguix-e21e0affd9d31a0e58d4df7c15b2b851be43279b.tar.gz
guix-e21e0affd9d31a0e58d4df7c15b2b851be43279b.zip
gnu: poppler: Always use the same 'cairo-sans-poppler' variant.
* gnu/packages/gtk.scm (cairo-sans-poppler): New variable. * gnu/packages/pdf.scm (poppler)[inputs]: Use it instead of locally-created variant.
-rw-r--r--gnu/packages/gtk.scm6
-rw-r--r--gnu/packages/pdf.scm4
2 files changed, 7 insertions, 3 deletions
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 8cd2824ce3..4e58c65ead 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -173,6 +173,12 @@ affine transformation (scale, rotation, shear, etc.).")
(license license:lgpl2.1) ; or Mozilla Public License 1.1
(home-page "https://cairographics.org/")))
+(define-public cairo-sans-poppler
+ ;; Variant used to break the dependency cycle between Poppler and Cairo.
+ (package/inherit cairo
+ (inputs (alist-delete "poppler" (package-inputs cairo)))
+ (properties `((hidden? . #t)))))
+
(define-public cairo-xcb
(package
(inherit cairo)
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index c9cce98e7f..45bbab56c1 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -191,9 +191,7 @@ please install the @code{flyer-composer-gui} package.")))
;; To build poppler-glib (as needed by Evince), we need Cairo and
;; GLib. But of course, that Cairo must not depend on Poppler.
- ("cairo" ,(package (inherit cairo)
- (inputs (alist-delete "poppler"
- (package-inputs cairo)))))))
+ ("cairo" ,cairo-sans-poppler)))
(propagated-inputs
;; As per poppler-cairo and poppler-glib.pc.
;; XXX: Ideally we'd propagate Cairo too, but that would require a