summary refs log tree commit diff
path: root/gnu/services/base.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2017-07-27 14:48:38 +0200
committerLudovic Courtès <ludo@gnu.org>2017-07-27 14:51:03 +0200
commit412701b0e5e073e6767eed162c14698db99df69c (patch)
treea3863d9ca2381242f969790dbba1f5af87115d52 /gnu/services/base.scm
parent138fe4119881577249be7362b3ea3b1125837902 (diff)
downloadguix-412701b0e5e073e6767eed162c14698db99df69c.tar.gz
services: guix-publish: Run in a UTF-8 locale.
Works around <https://bugs.gnu.org/26948>.

* gnu/services/base.scm (guix-publish-shepherd-service): Pass
  #:environment-variables to 'make-forkexec-constructor'.
Diffstat (limited to 'gnu/services/base.scm')
-rw-r--r--gnu/services/base.scm12
1 files changed, 10 insertions, 2 deletions
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index 813535ed65..e28e0d7ac5 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -37,7 +37,7 @@
   #:use-module ((gnu packages linux)
                 #:select (alsa-utils crda eudev e2fsprogs fuse gpm kbd lvm2 rng-tools))
   #:use-module ((gnu packages base)
-                #:select (canonical-package glibc))
+                #:select (canonical-package glibc glibc-utf8-locales))
   #:use-module (gnu packages bash)
   #:use-module (gnu packages package-management)
   #:use-module (gnu packages linux)
@@ -1499,7 +1499,15 @@ failed to register hydra.gnu.org public key: ~a~%" status))))))))
                                    #~())
                             #$@(if cache
                                    #~((string-append "--cache=" #$cache))
-                                   #~()))))
+                                   #~()))
+
+                      ;; Make sure we run in a UTF-8 locale so we can produce
+                      ;; nars for packages that contain UTF-8 file names such
+                      ;; as 'nss-certs'.  See <https://bugs.gnu.org/26948>.
+                      #:environment-variables
+                      (list (string-append "GUIX_LOCPATH="
+                                           #$glibc-utf8-locales "/lib/locale")
+                            "LC_ALL=en_US.utf8")))
             (stop #~(make-kill-destructor)))))))
 
 (define %guix-publish-accounts