summary refs log tree commit diff
path: root/gnu/home/services.scm
diff options
context:
space:
mode:
authorJustin Martin <jaming@protonmail.com>2022-02-01 14:48:35 -0500
committerLudovic Courtès <ludo@gnu.org>2022-02-05 00:59:30 +0100
commit41efa45508b292d947371dd6b9df943c33727c3d (patch)
tree79a86c3774e8ce83cce61902e8e4cb6b6bf5c8a2 /gnu/home/services.scm
parent04cd0ece6219fef2f18ee62442a913a02495fb50 (diff)
downloadguix-41efa45508b292d947371dd6b9df943c33727c3d.tar.gz
home: services: import i18n module.
Fixes <https://issues.guix.gnu.org/53701>.
Reported by Roland Everaert <r.everaert@protonmail.com>
and Holger Peters <holger.peters@posteo.de>.

* gnu/home/services.scm (%initialize-gettext): remove setlocale for guile scripts.
(compute-on-first-login-script): add module import for i18n.
(compute-on-change-gexp): add module import for i18n.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/home/services.scm')
-rw-r--r--gnu/home/services.scm14
1 files changed, 8 insertions, 6 deletions
diff --git a/gnu/home/services.scm b/gnu/home/services.scm
index 1c860d7b01..b7ea6f08dd 100644
--- a/gnu/home/services.scm
+++ b/gnu/home/services.scm
@@ -30,6 +30,7 @@
   #:use-module (guix discovery)
   #:use-module (guix diagnostics)
   #:use-module (guix i18n)
+  #:use-module (guix modules)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match)
 
@@ -282,13 +283,13 @@ will be put in @file{~/.guix-home/files}.")))
   #~(begin
       (bindtextdomain %gettext-domain
                       (string-append #$guix "/share/locale"))
-      (textdomain %gettext-domain)
-      (setlocale LC_ALL "")))
+      (textdomain %gettext-domain)))
 
 (define (compute-on-first-login-script _ gexps)
   (program-file
    "on-first-login"
-   #~(begin
+   (with-imported-modules (source-module-closure '((guix i18n)))
+     #~(begin
        (use-modules (guix i18n))
        #$%initialize-gettext
 
@@ -309,7 +310,7 @@ will be put in @file{~/.guix-home/files}.")))
              (display (G_ "XDG_RUNTIME_DIR doesn't exists, on-first-login script
 won't execute anything.  You can check if xdg runtime directory exists,
 XDG_RUNTIME_DIR variable is set to appropriate value and manually execute the
-script by running '$HOME/.guix-home/on-first-login'")))))))
+script by running '$HOME/.guix-home/on-first-login'"))))))))
 
 (define (on-first-login-script-entry on-first-login)
   "Return, as a monadic value, an entry for the on-first-login script
@@ -401,7 +402,8 @@ with one gexp, but many times, and all gexps must be idempotent.")))
 ;;;
 
 (define (compute-on-change-gexp eval-gexps? pattern-gexp-tuples)
-  #~(begin
+  (with-imported-modules (source-module-closure '((guix i18n)))
+    #~(begin
       (use-modules (guix i18n))
 
       #$%initialize-gettext
@@ -486,7 +488,7 @@ with one gexp, but many times, and all gexps must be idempotent.")))
             (display (G_ "On-change gexps evaluation finished.\n\n")))
           (display "\
 On-change gexps won't be evaluated; evaluation has been disabled in the
-service configuration"))))
+service configuration")))))
 
 (define home-run-on-change-service-type
   (service-type (name 'home-run-on-change)