summary refs log tree commit diff
path: root/gnu/system.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2016-08-02 18:05:23 +0200
committerLudovic Courtès <ludo@gnu.org>2016-08-02 18:07:19 +0200
commitab3a64507a792e4da0527b423fbc28f8768e736a (patch)
tree6e754531160bc86c3a0d574fe5daa928748070be /gnu/system.scm
parenta5c376034f0c465c00e88283dae6d59ac49612a9 (diff)
downloadguix-ab3a64507a792e4da0527b423fbc28f8768e736a.tar.gz
system: Define 'GUIX_LOCPATH' to work around 'glibc' package defect.
Our 'glibc' package currently ignores /run/current-system/locale,
although the intent is to look for locales in that directory.

* gnu/packages/base.scm (glibc/linux): Add comment about
/run/current-system/locale being ignored.
* gnu/system.scm (operating-system-environment-variables): Add
'GUIX_LOCPATH'.
* gnu/tests/base.scm (run-basic-test): Add "locale" test.
Diffstat (limited to 'gnu/system.scm')
-rw-r--r--gnu/system.scm7
1 files changed, 6 insertions, 1 deletions
diff --git a/gnu/system.scm b/gnu/system.scm
index 04dd7a845c..d6bf6c413c 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -545,7 +545,12 @@ use 'plain-file' instead~%")
 
     ;; By default, applications that use D-Bus, such as Emacs, abort at startup
     ;; when /etc/machine-id is missing.  Make sure these warnings are non-fatal.
-    ("DBUS_FATAL_WARNINGS" . "0")))
+    ("DBUS_FATAL_WARNINGS" . "0")
+
+    ;; XXX: Normally we wouldn't need to do this, but our glibc@2.23 package
+    ;; looks things up in 'PREFIX/lib/locale' instead of
+    ;; '/run/current-system/locale' as was intended.
+    ("GUIX_LOCPATH" . "/run/current-system/locale")))
 
 (define %setuid-programs
   ;; Default set of setuid-root programs.