summary refs log tree commit diff
path: root/gnu/packages/base.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-10-03 18:02:30 +0200
committerLudovic Courtès <ludo@gnu.org>2015-10-03 20:17:09 +0200
commitf2d7bbb537dd3e3fa3b0215549640d2d9c0aeaec (patch)
tree7690676f938c31938dcfcb521fa74fdb53822f07 /gnu/packages/base.scm
parentfbb909ac7e947ebc8aea2c2efca7df3a78dfc3c4 (diff)
downloadguix-f2d7bbb537dd3e3fa3b0215549640d2d9c0aeaec.tar.gz
gnu: glibc: Look for locale data in versioned sub-directories.
* gnu/packages/base.scm (glibc)[native-search-paths]: Add
  'lib/locale/VERSION' for 'GUIX_LOCPATH'.
  (glibc-locales, glibc-utf8-locales): Write to a VERSION
  sub-directory.
* guix/profiles.scm (ca-certificate-bundle): Adjust LOCPATH value
  accordingly.
Diffstat (limited to 'gnu/packages/base.scm')
-rw-r--r--gnu/packages/base.scm11
1 files changed, 7 insertions, 4 deletions
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 5fa8beb26a..80b0332de7 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -620,7 +620,8 @@ store.")
     ;; distros.
     (list (search-path-specification
            (variable "GUIX_LOCPATH")
-           (files '("lib/locale")))))
+           (files (list (string-append "lib/locale/" version)
+                        "lib/locale")))))
 
    (synopsis "The GNU C Library")
    (description
@@ -663,7 +664,8 @@ the 'share/locale' sub-directory of this package.")
                    ;; Use $(libdir)/locale as is the case by default.
                    (list (string-append "libc_cv_localedir="
                                         (assoc-ref %outputs "out")
-                                        "/lib/locale")))))))))
+                                        "/lib/locale/"
+                                        ,(package-version glibc))))))))))
 
 (define-public glibc-utf8-locales
   (package
@@ -672,7 +674,7 @@ the 'share/locale' sub-directory of this package.")
     (source #f)
     (build-system trivial-build-system)
     (arguments
-     '(#:modules ((guix build utils))
+     `(#:modules ((guix build utils))
        #:builder (begin
                    (use-modules (srfi srfi-1)
                                 (guix build utils))
@@ -680,7 +682,8 @@ the 'share/locale' sub-directory of this package.")
                    (let* ((libc      (assoc-ref %build-inputs "glibc"))
                           (gzip      (assoc-ref %build-inputs "gzip"))
                           (out       (assoc-ref %outputs "out"))
-                          (localedir (string-append out "/lib/locale")))
+                          (localedir (string-append out "/lib/locale/"
+                                                    ,version)))
                      ;; 'localedef' needs 'gzip'.
                      (setenv "PATH" (string-append libc "/bin:" gzip "/bin"))