summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-02-25 13:58:15 +0100
committerLudovic Courtès <ludo@gnu.org>2015-02-25 14:13:30 +0100
commitc9505f3ffa9597c6d765d871d800e56fb45dd7ef (patch)
tree5d8108a70971594ada16749c74f5454f0749e5a0
parent5e5784a91d6d92ef7c6dfe289989cd24ee4fc372 (diff)
gnu: Add glibc-utf8-locales.
* gnu/packages/base.scm (glibc-utf8-locales): New variable.
-rw-r--r--gnu/packages/base.scm44
1 files changed, 43 insertions, 1 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 3f2bd92bed..9c5d6b7b27 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -29,6 +29,7 @@
#:use-module (gnu packages ed)
#:use-module (gnu packages guile)
#:use-module (gnu packages multiprecision)
+ #:use-module (gnu packages compression)
#:use-module (gnu packages perl)
#:use-module (gnu packages linux)
#:use-module (gnu packages texinfo)
@@ -36,7 +37,8 @@
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
- #:use-module (guix build-system gnu))
+ #:use-module (guix build-system gnu)
+ #:use-module (guix build-system trivial))
;;; Commentary:
;;;
@@ -556,6 +558,46 @@ the 'share/locale' sub-directory of this package.")
(assoc-ref %outputs "out")
"/lib/locale")))))))))
+(define-public glibc-utf8-locales
+ (package
+ (name "glibc-utf8-locales")
+ (version (package-version glibc))
+ (source #f)
+ (build-system trivial-build-system)
+ (arguments
+ '(#:modules ((guix build utils))
+ #:builder (begin
+ (use-modules (srfi srfi-1)
+ (guix build utils))
+
+ (let* ((libc (assoc-ref %build-inputs "glibc"))
+ (gzip (assoc-ref %build-inputs "gzip"))
+ (out (assoc-ref %outputs "out"))
+ (localedir (string-append out "/lib/locale")))
+ ;; 'localedef' needs 'gzip'.
+ (setenv "PATH" (string-append libc "/bin:" gzip "/bin"))
+
+ (mkdir-p localedir)
+ (every (lambda (locale)
+ (zero? (system* "localedef" "--no-archive"
+ "--prefix" localedir "-i" locale
+ "-f" "UTF-8"
+ (string-append localedir "/"
+ locale
+ ".UTF-8"))))
+
+ ;; These are the locales commonly used for
+ ;; tests---e.g., in Guile's i18n tests.
+ '("de_DE" "el_GR" "en_US" "fr_FR" "tr_TR"))))))
+ (inputs `(("glibc" ,glibc)
+ ("gzip" ,gzip)))
+ (synopsis "Small sample of UTF-8 locales")
+ (description
+ "This package provides a small sample of UTF-8 locales mostly useful in
+test environments.")
+ (home-page (package-home-page glibc))
+ (license (package-license glibc))))
+
(define-public tzdata
(package
(name "tzdata")