diff options
author | Ludovic Courtès <ludo@gnu.org> | 2012-07-01 17:32:03 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2012-07-02 16:07:26 +0200 |
commit | e4c245f8a5f6b6485f980b9c4274909ee8ef567a (patch) | |
tree | b2151bbd1cba6d62bf221c8ab927050b33185aaa | |
parent | 03671375b6eda0d47452780d91fd3af7bde791aa (diff) | |
download | guix-e4c245f8a5f6b6485f980b9c4274909ee8ef567a.tar.gz |
Add a `base32' macro, for convenience.
* guix/packages.scm (base32): New macro. * distro/base.scm (libsigsegv, gawk, hello): Use it.
-rw-r--r-- | distro/base.scm | 9 | ||||
-rw-r--r-- | guix/packages.scm | 12 |
2 files changed, 15 insertions, 6 deletions
diff --git a/distro/base.scm b/distro/base.scm index 9570b6d684..ca98bf0d69 100644 --- a/distro/base.scm +++ b/distro/base.scm @@ -36,8 +36,7 @@ (method http-fetch) (uri "http://ftp.gnu.org/gnu/libsigsegv/libsigsegv-2.10.tar.gz") (sha256 - (nix-base32-string->bytevector ; TODO: make conversion implicit - "16hrs8k3nmc7a8jam5j1fpspd6sdpkamskvsdpcw6m29vnis8q44")))) + (base32 "16hrs8k3nmc7a8jam5j1fpspd6sdpkamskvsdpcw6m29vnis8q44")))) (build-system gnu-build-system) (outputs '("out" "lib")) ; separate libdir from the rest (home-page "http://www.gnu.org/software/libsigsegv/") @@ -59,8 +58,7 @@ handlers, distributed shared memory, and more.") (method http-fetch) (uri "http://ftp.gnu.org/gnu/gawk/gawk-4.0.0.tar.bz2") (sha256 - (nix-base32-string->bytevector - "0sss7rhpvizi2a88h6giv0i7w5h07s2fxkw3s6n1hqvcnhrfgbb0")))) + (base32 "0sss7rhpvizi2a88h6giv0i7w5h07s2fxkw3s6n1hqvcnhrfgbb0")))) (build-system gnu-build-system) (arguments (case-lambda ((system) @@ -94,8 +92,7 @@ code.") (method http-fetch) (uri "http://ftp.gnu.org/gnu/hello/hello-2.8.tar.gz") (sha256 - (nix-base32-string->bytevector ; TODO: make conversion implicit - "0wqd8sjmxfskrflaxywc7gqw7sfawrfvdxd9skxawzfgyy0pzdz6")))) + (base32 "0wqd8sjmxfskrflaxywc7gqw7sfawrfvdxd9skxawzfgyy0pzdz6")))) (build-system gnu-build-system) (arguments '(#:configure-flags `("--disable-dependency-tracking" diff --git a/guix/packages.scm b/guix/packages.scm index 0d5823ad5d..1d0cf229b7 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -35,6 +35,7 @@ package-source-method package-source-sha256 package-source-file-name + base32 package package? @@ -102,6 +103,17 @@ etc." (file-name package-source-file-name ; optional file name (default #f))) +(define-syntax base32 + (lambda (s) + "Return the bytevector corresponding to the given Nix-base32 +representation." + (syntax-case s () + ((_ str) + (string? (syntax->datum #'str)) + (with-syntax ((bv (nix-base32-string->bytevector + (syntax->datum #'str)))) + #''bv))))) + ;; A package. (define-record-type* <package> package make-package |