From 000291fd4325d2afd1f9f93125986275f6e7ab7a Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 22 Oct 2021 00:44:51 -0400 Subject: [PATCH] gnu: librsvg: Preserve the loaders.cache file. Now that we have a search path that honors it on gdk-pixbuf, it is more valuable to keep it. * gnu/packages/gnome.scm (librsvg)[phases]{pre-configure}: Install loaders, cache file to locations derived from %gdk-pixbuf-loaders-cache-file. --- gnu/packages/gnome.scm | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 1e1f989e4b..1e59dfa11b 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3488,17 +3488,20 @@ (define-public librsvg (substitute* '("Makefile.am" "Makefile.in") (("--locked") "")))) (add-before 'configure 'pre-configure - (lambda _ + (lambda* (#:key outputs #:allow-other-keys) (substitute* "gdk-pixbuf-loader/Makefile.in" ;; By default the gdk-pixbuf loader is installed under ;; gdk-pixbuf's prefix. Work around that. (("gdk_pixbuf_moduledir = .*$") (string-append "gdk_pixbuf_moduledir = " - "$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/" - "loaders\n")) - ;; Drop the 'loaders.cache' file, it's in gdk-pixbuf+svg. - (("gdk_pixbuf_cache_file = .*$") - "gdk_pixbuf_cache_file = $(TMPDIR)/loaders.cache\n")))) + "$(prefix)/" + ,(dirname %gdk-pixbuf-loaders-cache-file) "/" + "loaders\n"))) + (substitute* "configure" + (("gdk_pixbuf_cache_file=.*") + (string-append "gdk_pixbuf_cache_file=" + (assoc-ref outputs "out") "/" + ,%gdk-pixbuf-loaders-cache-file "\n"))))) (add-after 'configure 'gnu-configure (lambda* (#:key outputs #:allow-other-keys #:rest args) (apply (assoc-ref gnu:%standard-phases 'configure)