summaryrefslogtreecommitdiff
path: root/gnu/bootloader
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2017-07-02 22:45:33 +0200
committerLudovic Courtès <ludo@gnu.org>2017-07-02 22:52:30 +0200
commit1b0f266e40aead09be95a984bd9c6cec3dff397e (patch)
tree0076be5d4f4fc82114dc27deb5433f5587126266 /gnu/bootloader
parent61f81618a87ce4fc3b93c3ac3fa7aa2f148c1ed8 (diff)
gnu: Switch guile-cairo and dependents to Guile 2.2 again.
Fixes <https://bugs.gnu.org/27551>. Reported by Leo Famulari <leo@famulari.name>. This reinstates the following commits: e3ddb1e83 * gnu: guile-cairo: Switch to Guile 2.2. ae5c6ef39 * gnu: guile-gnome: Update to 2.16.5. 0fd8013fc * gnu: guile-rsvg: Update to commit 05c6a2fd. 66b9183c4 * gnu: guile-lib: Switch to Guile 2.2. and adds the following changes: * gnu/bootloader/grub.scm (svg->png): Add 'package->derivation' call for GUILE-2.2. Pass #:guile-for-build to 'gexp->derivation'. * gnu/build/svg.scm (svg->png): Add 'em' and 'ex' to the 'let-values' form to account for all the values returned by 'rsvg-handle-get-dimensions', which Guile 2.2 does not truncate.
Diffstat (limited to 'gnu/bootloader')
-rw-r--r--gnu/bootloader/grub.scm35
1 files changed, 20 insertions, 15 deletions
diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm
index f1cc3324db9..880491c9832 100644
--- a/gnu/bootloader/grub.scm
+++ b/gnu/bootloader/grub.scm
@@ -34,6 +34,7 @@
34 #:autoload (gnu packages bootloaders) (grub) 34 #:autoload (gnu packages bootloaders) (grub)
35 #:autoload (gnu packages compression) (gzip) 35 #:autoload (gnu packages compression) (gzip)
36 #:autoload (gnu packages gtk) (guile-cairo guile-rsvg) 36 #:autoload (gnu packages gtk) (guile-cairo guile-rsvg)
37 #:autoload (gnu packages guile) (guile-2.2)
37 #:use-module (ice-9 match) 38 #:use-module (ice-9 match)
38 #:use-module (ice-9 regex) 39 #:use-module (ice-9 regex)
39 #:use-module (srfi srfi-1) 40 #:use-module (srfi srfi-1)
@@ -118,21 +119,25 @@ otherwise."
118 119
119(define* (svg->png svg #:key width height) 120(define* (svg->png svg #:key width height)
120 "Build a PNG of HEIGHT x WIDTH from SVG." 121 "Build a PNG of HEIGHT x WIDTH from SVG."
121 (gexp->derivation "grub-image.png" 122 ;; Note: Guile-RSVG & co. are now built for Guile 2.2, so we use 2.2 here.
122 (with-imported-modules '((gnu build svg)) 123 ;; TODO: Remove #:guile-for-build when 2.2 has become the default.
123 #~(begin 124 (mlet %store-monad ((guile (package->derivation guile-2.2 #:graft? #f)))
124 ;; We need these two libraries. 125 (gexp->derivation "grub-image.png"
125 (add-to-load-path (string-append #+guile-rsvg 126 (with-imported-modules '((gnu build svg))
126 "/share/guile/site/" 127 #~(begin
127 (effective-version))) 128 ;; We need these two libraries.
128 (add-to-load-path (string-append #+guile-cairo 129 (add-to-load-path (string-append #+guile-rsvg
129 "/share/guile/site/" 130 "/share/guile/site/"
130 (effective-version))) 131 (effective-version)))
131 132 (add-to-load-path (string-append #+guile-cairo
132 (use-modules (gnu build svg)) 133 "/share/guile/site/"
133 (svg->png #+svg #$output 134 (effective-version)))
134 #:width #$width 135
135 #:height #$height))))) 136 (use-modules (gnu build svg))
137 (svg->png #+svg #$output
138 #:width #$width
139 #:height #$height)))
140 #:guile-for-build guile)))
136 141
137(define* (grub-background-image config #:key (width 1024) (height 768)) 142(define* (grub-background-image config #:key (width 1024) (height 768))
138 "Return the GRUB background image defined in CONFIG with a ratio of 143 "Return the GRUB background image defined in CONFIG with a ratio of