bootloader: grub: Use 'with-extensions'.

* gnu/bootloader/grub.scm (svg->png): Use 'with-extensions'.  Remove
'add-to-load-path' calls.
* gnu/build/svg.scm: Use (rsvg) and (cairo) the normal way.  Remove
'module-autoload!' calls.
This commit is contained in:
Ludovic Courtès 2018-05-28 21:47:01 +02:00
parent 31a5d694a3
commit 33d8a87104
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
2 changed files with 9 additions and 21 deletions

View File

@ -123,19 +123,12 @@ otherwise."
"Build a PNG of HEIGHT x WIDTH from SVG." "Build a PNG of HEIGHT x WIDTH from SVG."
(gexp->derivation "grub-image.png" (gexp->derivation "grub-image.png"
(with-imported-modules '((gnu build svg)) (with-imported-modules '((gnu build svg))
#~(begin (with-extensions (list guile-rsvg guile-cairo)
;; We need these two libraries. #~(begin
(add-to-load-path (string-append #+guile-rsvg (use-modules (gnu build svg))
"/share/guile/site/" (svg->png #+svg #$output
(effective-version))) #:width #$width
(add-to-load-path (string-append #+guile-cairo #:height #$height))))))
"/share/guile/site/"
(effective-version)))
(use-modules (gnu build svg))
(svg->png #+svg #$output
#:width #$width
#:height #$height)))))
(define* (grub-background-image config #:key (width 1024) (height 768)) (define* (grub-background-image config #:key (width 1024) (height 768))
"Return the GRUB background image defined in CONFIG with a ratio of "Return the GRUB background image defined in CONFIG with a ratio of

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -18,16 +18,11 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu build svg) (define-module (gnu build svg)
#:use-module (rsvg)
#:use-module (cairo)
#:use-module (srfi srfi-11) #:use-module (srfi srfi-11)
#:export (svg->png)) #:export (svg->png))
;; We need Guile-RSVG and Guile-Cairo. Load them lazily, at run time, to
;; allow compilation to proceed. See also <http://bugs.gnu.org/12202>.
(module-autoload! (current-module)
'(rsvg) '(rsvg-handle-new-from-file))
(module-autoload! (current-module)
'(cairo) '(cairo-image-surface-create))
(define* (downscaled-surface surface (define* (downscaled-surface surface
#:key #:key
source-width source-height source-width source-height