summaryrefslogtreecommitdiff
path: root/guix/packages.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-01-17 15:45:05 +0100
committerLudovic Courtès <ludo@gnu.org>2013-01-17 15:45:05 +0100
commitaba326f79c188e39368c910ddf1bcd884c68a32c (patch)
tree43bd3200a9a1b979d9b332f8b4e0c1fa8aa6fc0c /guix/packages.scm
parent2a6c679561548b410ea34ff716c1165e8570609a (diff)
packages: Change `base32' to allow non-literal strings.
* guix/packages.scm (base32): Allow arguments that are not literal strings.
Diffstat (limited to 'guix/packages.scm')
-rw-r--r--guix/packages.scm7
1 files changed, 5 insertions, 2 deletions
diff --git a/guix/packages.scm b/guix/packages.scm
index 384db6d362..e65877df58 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -93,9 +93,12 @@ representation."
(syntax-case s ()
((_ str)
(string? (syntax->datum #'str))
+ ;; A literal string: do the conversion at expansion time.
(with-syntax ((bv (nix-base32-string->bytevector
(syntax->datum #'str))))
- #''bv)))))
+ #''bv))
+ ((_ str)
+ #'(nix-base32-string->bytevector str)))))
;; A package.