diff options
| -rw-r--r-- | gnu/home/services/ssh.scm | 8 | ||||
| -rw-r--r-- | gnu/installer.scm | 7 | ||||
| -rw-r--r-- | gnu/packages/chromium.scm | 2 | ||||
| -rw-r--r-- | gnu/packages/gnome.scm | 4 | ||||
| -rw-r--r-- | gnu/packages/javascript.scm | 2 | ||||
| -rw-r--r-- | gnu/packages/package-management.scm | 4 | ||||
| -rw-r--r-- | gnu/packages/raspberry-pi.scm | 2 | ||||
| -rw-r--r-- | gnu/packages/suckless.scm | 2 | ||||
| -rw-r--r-- | gnu/services.scm | 4 | ||||
| -rw-r--r-- | gnu/services/base.scm | 7 | ||||
| -rw-r--r-- | gnu/services/guix.scm | 23 | ||||
| -rw-r--r-- | gnu/services/web.scm | 6 | ||||
| -rw-r--r-- | gnu/system/image.scm | 13 | ||||
| -rw-r--r-- | gnu/system/install.scm | 2 | ||||
| -rw-r--r-- | guix/packages.scm | 6 | ||||
| -rw-r--r-- | guix/profiles.scm | 37 | ||||
| -rw-r--r-- | guix/scripts/pack.scm | 8 | ||||
| -rw-r--r-- | guix/self.scm | 5 | ||||
| -rw-r--r-- | tests/pack.scm | 7 | ||||
| -rw-r--r-- | tests/profiles.scm | 4 |
20 files changed, 97 insertions, 56 deletions
diff --git a/gnu/home/services/ssh.scm b/gnu/home/services/ssh.scm index 34b1fe46584..295707d59fb 100644 --- a/gnu/home/services/ssh.scm +++ b/gnu/home/services/ssh.scm | |||
| @@ -25,6 +25,7 @@ | |||
| 25 | #:use-module (guix deprecation) | 25 | #:use-module (guix deprecation) |
| 26 | #:use-module (guix diagnostics) | 26 | #:use-module (guix diagnostics) |
| 27 | #:use-module (guix i18n) | 27 | #:use-module (guix i18n) |
| 28 | #:use-module ((guix utils) #:select (%current-system)) | ||
| 28 | #:use-module (gnu services) | 29 | #:use-module (gnu services) |
| 29 | #:use-module (gnu services configuration) | 30 | #:use-module (gnu services configuration) |
| 30 | #:use-module (guix modules) | 31 | #:use-module (guix modules) |
| @@ -32,7 +33,7 @@ | |||
| 32 | #:use-module (gnu home services shepherd) | 33 | #:use-module (gnu home services shepherd) |
| 33 | #:use-module ((gnu home services utils) | 34 | #:use-module ((gnu home services utils) |
| 34 | #:select (object->camel-case-string)) | 35 | #:select (object->camel-case-string)) |
| 35 | #:autoload (gnu packages base) (glibc-utf8-locales) | 36 | #:autoload (gnu packages base) (libc-utf8-locales-for-target) |
| 36 | #:use-module (gnu packages ssh) | 37 | #:use-module (gnu packages ssh) |
| 37 | #:use-module (srfi srfi-1) | 38 | #:use-module (srfi srfi-1) |
| 38 | #:use-module (srfi srfi-9) | 39 | #:use-module (srfi srfi-9) |
| @@ -357,8 +358,9 @@ inserted after each of them." | |||
| 357 | 358 | ||
| 358 | ;; Support non-ASCII file names. | 359 | ;; Support non-ASCII file names. |
| 359 | (setenv "GUIX_LOCPATH" | 360 | (setenv "GUIX_LOCPATH" |
| 360 | #+(file-append glibc-utf8-locales | 361 | #+(file-append |
| 361 | "/lib/locale")) | 362 | (libc-utf8-locales-for-target (%current-system)) |
| 363 | "/lib/locale")) | ||
| 362 | (setlocale LC_ALL "en_US.utf8") | 364 | (setlocale LC_ALL "en_US.utf8") |
| 363 | 365 | ||
| 364 | (call-with-output-file #$output | 366 | (call-with-output-file #$output |
diff --git a/gnu/installer.scm b/gnu/installer.scm index d9b71e2ca8e..db79c115304 100644 --- a/gnu/installer.scm +++ b/gnu/installer.scm | |||
| @@ -85,9 +85,10 @@ version of this file." | |||
| 85 | (define set-utf8-locale | 85 | (define set-utf8-locale |
| 86 | #~(begin | 86 | #~(begin |
| 87 | (setenv "LOCPATH" | 87 | (setenv "LOCPATH" |
| 88 | #$(file-append glibc-utf8-locales "/lib/locale/" | 88 | #$(file-append |
| 89 | (version-major+minor | 89 | (libc-utf8-locales-for-target) "/lib/locale/" |
| 90 | (package-version glibc-utf8-locales)))) | 90 | (version-major+minor |
| 91 | (package-version (libc-utf8-locales-for-target))))) | ||
| 91 | (setlocale LC_ALL "en_US.utf8"))) | 92 | (setlocale LC_ALL "en_US.utf8"))) |
| 92 | 93 | ||
| 93 | (define builder | 94 | (define builder |
diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm index 513e5459381..bc49e24f0e4 100644 --- a/gnu/packages/chromium.scm +++ b/gnu/packages/chromium.scm | |||
| @@ -967,7 +967,7 @@ testing.") | |||
| 967 | (name "ungoogled-chromium-wayland") | 967 | (name "ungoogled-chromium-wayland") |
| 968 | (native-inputs '()) | 968 | (native-inputs '()) |
| 969 | (inputs | 969 | (inputs |
| 970 | (list bash-minimal glibc-utf8-locales ungoogled-chromium)) | 970 | (list bash-minimal (libc-utf8-locales-for-target) ungoogled-chromium)) |
| 971 | (build-system trivial-build-system) | 971 | (build-system trivial-build-system) |
| 972 | (arguments | 972 | (arguments |
| 973 | (list | 973 | (list |
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 0be935585d1..7364655d255 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm | |||
| @@ -5917,7 +5917,7 @@ services for numerous locations.") | |||
| 5917 | gi-docgen | 5917 | gi-docgen |
| 5918 | `(,glib "bin") ;for glib-mkenums | 5918 | `(,glib "bin") ;for glib-mkenums |
| 5919 | gobject-introspection | 5919 | gobject-introspection |
| 5920 | glibc-utf8-locales | 5920 | (libc-utf8-locales-for-target) |
| 5921 | gsettings-desktop-schemas | 5921 | gsettings-desktop-schemas |
| 5922 | pkg-config | 5922 | pkg-config |
| 5923 | python | 5923 | python |
| @@ -9471,7 +9471,7 @@ easy, safe, and automatic.") | |||
| 9471 | (native-inputs | 9471 | (native-inputs |
| 9472 | (list gettext-minimal | 9472 | (list gettext-minimal |
| 9473 | `(,glib "bin") | 9473 | `(,glib "bin") |
| 9474 | glibc-utf8-locales | 9474 | (libc-utf8-locales-for-target) |
| 9475 | gobject-introspection | 9475 | gobject-introspection |
| 9476 | docbook-xsl | 9476 | docbook-xsl |
| 9477 | docbook-xml | 9477 | docbook-xml |
diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index e70aa7d7e1e..2c7ff744ead 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm | |||
| @@ -184,7 +184,7 @@ context menu in TypeScript.") | |||
| 184 | #t)))) | 184 | #t)))) |
| 185 | (native-inputs | 185 | (native-inputs |
| 186 | `(("font-mathjax" ,font-mathjax) | 186 | `(("font-mathjax" ,font-mathjax) |
| 187 | ("glibc-utf8-locales" ,glibc-utf8-locales) | 187 | ("glibc-utf8-locales" ,(libc-utf8-locales-for-target)) |
| 188 | ("uglifyjs" ,node-uglify-js) | 188 | ("uglifyjs" ,node-uglify-js) |
| 189 | ,@(package-native-inputs font-mathjax))) | 189 | ,@(package-native-inputs font-mathjax))) |
| 190 | (synopsis "JavaScript display engine for LaTeX, MathML, and AsciiMath") | 190 | (synopsis "JavaScript display engine for LaTeX, MathML, and AsciiMath") |
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index fb9e57b2e7f..25818944d8e 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm | |||
| @@ -524,7 +524,7 @@ $(prefix)/etc/openrc\n"))) | |||
| 524 | 524 | ||
| 525 | ("git-minimal" ,git-minimal) ;for 'guix perform-download' | 525 | ("git-minimal" ,git-minimal) ;for 'guix perform-download' |
| 526 | 526 | ||
| 527 | ("glibc-utf8-locales" ,glibc-utf8-locales))) | 527 | ("glibc-utf8-locales" ,(libc-utf8-locales-for-target)))) |
| 528 | (propagated-inputs | 528 | (propagated-inputs |
| 529 | `(("guile-gnutls" ,guile-gnutls) | 529 | `(("guile-gnutls" ,guile-gnutls) |
| 530 | ;; Avahi requires "glib" which doesn't cross-compile yet. | 530 | ;; Avahi requires "glib" which doesn't cross-compile yet. |
| @@ -2052,7 +2052,7 @@ cp -r /tmp/locale/*/en_US.*"))) | |||
| 2052 | dbus ; for dbus-daemon | 2052 | dbus ; for dbus-daemon |
| 2053 | gettext-minimal | 2053 | gettext-minimal |
| 2054 | `(,glib "bin") ; for glib-mkenums + gdbus-codegen | 2054 | `(,glib "bin") ; for glib-mkenums + gdbus-codegen |
| 2055 | glibc-utf8-locales | 2055 | (libc-utf8-locales-for-target) |
| 2056 | gobject-introspection | 2056 | gobject-introspection |
| 2057 | libcap | 2057 | libcap |
| 2058 | pkg-config | 2058 | pkg-config |
diff --git a/gnu/packages/raspberry-pi.scm b/gnu/packages/raspberry-pi.scm index 80bfaf0896c..5c25ed96da5 100644 --- a/gnu/packages/raspberry-pi.scm +++ b/gnu/packages/raspberry-pi.scm | |||
| @@ -199,7 +199,7 @@ Raspberry Pi. Note: It does not work on Raspberry Pi 1.") | |||
| 199 | ("ld-wrapper" ,ld-wrapper) | 199 | ("ld-wrapper" ,ld-wrapper) |
| 200 | ("make" ,gnu-make) | 200 | ("make" ,gnu-make) |
| 201 | ("gcc" ,gcc-6) | 201 | ("gcc" ,gcc-6) |
| 202 | ("locales" ,glibc-utf8-locales))) | 202 | ("locales" ,(libc-utf8-locales-for-target)))) |
| 203 | (inputs | 203 | (inputs |
| 204 | `()) | 204 | `()) |
| 205 | (arguments | 205 | (arguments |
diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm index 400832045ff..714225c654b 100644 --- a/gnu/packages/suckless.scm +++ b/gnu/packages/suckless.scm | |||
| @@ -1247,7 +1247,7 @@ a nice format.") | |||
| 1247 | (delete 'configure)))) ;no configure script | 1247 | (delete 'configure)))) ;no configure script |
| 1248 | (native-inputs (list pkg-config)) | 1248 | (native-inputs (list pkg-config)) |
| 1249 | (inputs (list freetype libx11 libxft libxtst libxinerama)) | 1249 | (inputs (list freetype libx11 libxft libxtst libxinerama)) |
| 1250 | (propagated-inputs (list glibc-utf8-locales)) | 1250 | (propagated-inputs (list (libc-utf8-locales-for-target))) |
| 1251 | (home-page "https://tools.suckless.org/x/svkbd/") | 1251 | (home-page "https://tools.suckless.org/x/svkbd/") |
| 1252 | (synopsis "Virtual on-screen keyboard") | 1252 | (synopsis "Virtual on-screen keyboard") |
| 1253 | (description "svkbd is a simple virtual keyboard, intended to be used in | 1253 | (description "svkbd is a simple virtual keyboard, intended to be used in |
diff --git a/gnu/services.scm b/gnu/services.scm index ff153fbc7b2..23c3d8a9f4c 100644 --- a/gnu/services.scm +++ b/gnu/services.scm | |||
| @@ -651,7 +651,9 @@ information is missing, return the empty list (for channels) and possibly | |||
| 651 | ;; Force file names to be decoded as UTF-8. See | 651 | ;; Force file names to be decoded as UTF-8. See |
| 652 | ;; <https://bugs.gnu.org/26353>. | 652 | ;; <https://bugs.gnu.org/26353>. |
| 653 | (setenv "GUIX_LOCPATH" | 653 | (setenv "GUIX_LOCPATH" |
| 654 | #+(file-append glibc-utf8-locales "/lib/locale")) | 654 | #+(file-append |
| 655 | (libc-utf8-locales-for-target (%current-system)) | ||
| 656 | "/lib/locale")) | ||
| 655 | (setlocale LC_CTYPE "en_US.utf8") | 657 | (setlocale LC_CTYPE "en_US.utf8") |
| 656 | (delete-file-recursively "/tmp") | 658 | (delete-file-recursively "/tmp") |
| 657 | (delete-file-recursively "/var/run") | 659 | (delete-file-recursively "/var/run") |
diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 82c69407806..dc001fdef63 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm | |||
| @@ -63,7 +63,9 @@ | |||
| 63 | #:use-module (gnu packages bash) | 63 | #:use-module (gnu packages bash) |
| 64 | #:use-module ((gnu packages base) | 64 | #:use-module ((gnu packages base) |
| 65 | #:select (coreutils glibc glibc/hurd | 65 | #:select (coreutils glibc glibc/hurd |
| 66 | glibc-utf8-locales make-glibc-utf8-locales | 66 | glibc-utf8-locales |
| 67 | libc-utf8-locales-for-target | ||
| 68 | make-glibc-utf8-locales | ||
| 67 | tar canonical-package)) | 69 | tar canonical-package)) |
| 68 | #:use-module ((gnu packages compression) #:select (gzip)) | 70 | #:use-module ((gnu packages compression) #:select (gzip)) |
| 69 | #:use-module (gnu packages fonts) | 71 | #:use-module (gnu packages fonts) |
| @@ -2147,7 +2149,8 @@ raise a deprecation warning if the 'compression-level' field was used." | |||
| 2147 | ;; nars for packages that contain UTF-8 file names such | 2149 | ;; nars for packages that contain UTF-8 file names such |
| 2148 | ;; as 'nss-certs'. See <https://bugs.gnu.org/26948>. | 2150 | ;; as 'nss-certs'. See <https://bugs.gnu.org/26948>. |
| 2149 | (list (string-append "GUIX_LOCPATH=" | 2151 | (list (string-append "GUIX_LOCPATH=" |
| 2150 | #$glibc-utf8-locales "/lib/locale") | 2152 | #$(libc-utf8-locales-for-target) |
| 2153 | "/lib/locale") | ||
| 2151 | "LC_ALL=en_US.utf8") | 2154 | "LC_ALL=en_US.utf8") |
| 2152 | #:log-file "/var/log/guix-publish.log")) | 2155 | #:log-file "/var/log/guix-publish.log")) |
| 2153 | (endpoints #~(let ((ai (false-if-exception | 2156 | (endpoints #~(let ((ai (false-if-exception |
diff --git a/gnu/services/guix.scm b/gnu/services/guix.scm index fe602efb990..389903451a2 100644 --- a/gnu/services/guix.scm +++ b/gnu/services/guix.scm | |||
| @@ -23,7 +23,7 @@ | |||
| 23 | #:use-module (guix records) | 23 | #:use-module (guix records) |
| 24 | #:use-module (guix packages) | 24 | #:use-module (guix packages) |
| 25 | #:use-module ((gnu packages base) | 25 | #:use-module ((gnu packages base) |
| 26 | #:select (glibc-utf8-locales)) | 26 | #:select (libc-utf8-locales-for-target)) |
| 27 | #:use-module (gnu packages admin) | 27 | #:use-module (gnu packages admin) |
| 28 | #:use-module (gnu packages databases) | 28 | #:use-module (gnu packages databases) |
| 29 | #:use-module (gnu packages web) | 29 | #:use-module (gnu packages web) |
| @@ -381,7 +381,8 @@ | |||
| 381 | #:pid-file-timeout 60 | 381 | #:pid-file-timeout 60 |
| 382 | #:environment-variables | 382 | #:environment-variables |
| 383 | `(,(string-append | 383 | `(,(string-append |
| 384 | "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") | 384 | "GUIX_LOCPATH=" |
| 385 | #$(libc-utf8-locales-for-target) "/lib/locale") | ||
| 385 | "LC_ALL=en_US.utf8" | 386 | "LC_ALL=en_US.utf8" |
| 386 | "PATH=/run/current-system/profile/bin" ; for hooks | 387 | "PATH=/run/current-system/profile/bin" ; for hooks |
| 387 | #$@extra-environment-variables) | 388 | #$@extra-environment-variables) |
| @@ -508,7 +509,8 @@ | |||
| 508 | #:user #$user | 509 | #:user #$user |
| 509 | #:environment-variables | 510 | #:environment-variables |
| 510 | `(,(string-append | 511 | `(,(string-append |
| 511 | "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") | 512 | "GUIX_LOCPATH=" |
| 513 | #$(libc-utf8-locales-for-target) "/lib/locale") | ||
| 512 | ;; XDG_CACHE_HOME is used by Guix when caching narinfo files | 514 | ;; XDG_CACHE_HOME is used by Guix when caching narinfo files |
| 513 | "XDG_CACHE_HOME=/var/cache/guix-build-coordinator-agent" | 515 | "XDG_CACHE_HOME=/var/cache/guix-build-coordinator-agent" |
| 514 | "LC_ALL=en_US.utf8") | 516 | "LC_ALL=en_US.utf8") |
| @@ -600,7 +602,8 @@ | |||
| 600 | #:user #$user | 602 | #:user #$user |
| 601 | #:environment-variables | 603 | #:environment-variables |
| 602 | `(,(string-append | 604 | `(,(string-append |
| 603 | "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") | 605 | "GUIX_LOCPATH=" |
| 606 | #$(libc-utf8-locales-for-target) "/lib/locale") | ||
| 604 | "LC_ALL=en_US.utf8") | 607 | "LC_ALL=en_US.utf8") |
| 605 | #:log-file "/var/log/guix-build-coordinator/queue-builds.log")))) | 608 | #:log-file "/var/log/guix-build-coordinator/queue-builds.log")))) |
| 606 | (stop #~(make-kill-destructor)) | 609 | (stop #~(make-kill-destructor)) |
| @@ -712,7 +715,8 @@ ca-certificates.crt file in the system profile." | |||
| 712 | #:pid-file "/var/run/guix-data-service/pid" | 715 | #:pid-file "/var/run/guix-data-service/pid" |
| 713 | #:environment-variables | 716 | #:environment-variables |
| 714 | `(,(string-append | 717 | `(,(string-append |
| 715 | "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") | 718 | "GUIX_LOCPATH=" |
| 719 | #$(libc-utf8-locales-for-target) "/lib/locale") | ||
| 716 | "LC_ALL=en_US.UTF-8") | 720 | "LC_ALL=en_US.UTF-8") |
| 717 | #:log-file "/var/log/guix-data-service/web.log")) | 721 | #:log-file "/var/log/guix-data-service/web.log")) |
| 718 | (stop #~(make-kill-destructor))) | 722 | (stop #~(make-kill-destructor))) |
| @@ -733,7 +737,8 @@ ca-certificates.crt file in the system profile." | |||
| 733 | `("HOME=/var/lib/guix-data-service" | 737 | `("HOME=/var/lib/guix-data-service" |
| 734 | "GIT_SSL_CAINFO=/etc/ssl/certs/ca-certificates.crt" | 738 | "GIT_SSL_CAINFO=/etc/ssl/certs/ca-certificates.crt" |
| 735 | ,(string-append | 739 | ,(string-append |
| 736 | "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") | 740 | "GUIX_LOCPATH=" |
| 741 | #$(libc-utf8-locales-for-target) "/lib/locale") | ||
| 737 | "LC_ALL=en_US.UTF-8") | 742 | "LC_ALL=en_US.UTF-8") |
| 738 | #:log-file "/var/log/guix-data-service/process-jobs.log")) | 743 | #:log-file "/var/log/guix-data-service/process-jobs.log")) |
| 739 | (stop #~(make-kill-destructor)))))) | 744 | (stop #~(make-kill-destructor)))))) |
| @@ -989,7 +994,8 @@ ca-certificates.crt file in the system profile." | |||
| 989 | #:pid-file "/var/run/nar-herder/pid" | 994 | #:pid-file "/var/run/nar-herder/pid" |
| 990 | #:environment-variables | 995 | #:environment-variables |
| 991 | `(,(string-append | 996 | `(,(string-append |
| 992 | "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") | 997 | "GUIX_LOCPATH=" |
| 998 | #$(libc-utf8-locales-for-target) "/lib/locale") | ||
| 993 | "LC_ALL=en_US.utf8" | 999 | "LC_ALL=en_US.utf8" |
| 994 | #$@extra-environment-variables) | 1000 | #$@extra-environment-variables) |
| 995 | #:log-file "/var/log/nar-herder/server.log")) | 1001 | #:log-file "/var/log/nar-herder/server.log")) |
| @@ -1108,7 +1114,8 @@ ca-certificates.crt file in the system profile." | |||
| 1108 | #:directory "/var/lib/bffe" | 1114 | #:directory "/var/lib/bffe" |
| 1109 | #:environment-variables | 1115 | #:environment-variables |
| 1110 | `(,(string-append | 1116 | `(,(string-append |
| 1111 | "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") | 1117 | "GUIX_LOCPATH=" |
| 1118 | #$(libc-utf8-locales-for-target) "/lib/locale") | ||
| 1112 | "LC_ALL=en_US.utf8" | 1119 | "LC_ALL=en_US.utf8" |
| 1113 | #$@extra-environment-variables) | 1120 | #$@extra-environment-variables) |
| 1114 | #:log-file "/var/log/bffe/server.log")) | 1121 | #:log-file "/var/log/bffe/server.log")) |
diff --git a/gnu/services/web.scm b/gnu/services/web.scm index 818226a4f76..023b187cb0d 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm | |||
| @@ -1498,7 +1498,8 @@ files.") | |||
| 1498 | '#$(optional anonip-configuration-regex "--regex")) | 1498 | '#$(optional anonip-configuration-regex "--regex")) |
| 1499 | ;; Run in a UTF-8 locale | 1499 | ;; Run in a UTF-8 locale |
| 1500 | #:environment-variables | 1500 | #:environment-variables |
| 1501 | (list (string-append "GUIX_LOCPATH=" #$glibc-utf8-locales | 1501 | (list (string-append "GUIX_LOCPATH=" |
| 1502 | #$(libc-utf8-locales-for-target) | ||
| 1502 | "/lib/locale") | 1503 | "/lib/locale") |
| 1503 | "LC_ALL=en_US.utf8"))) | 1504 | "LC_ALL=en_US.utf8"))) |
| 1504 | 1505 | ||
| @@ -1976,7 +1977,8 @@ WSGIPassAuthorization On | |||
| 1976 | (define (mumi-shepherd-services config) | 1977 | (define (mumi-shepherd-services config) |
| 1977 | (define environment | 1978 | (define environment |
| 1978 | #~(list "LC_ALL=en_US.utf8" | 1979 | #~(list "LC_ALL=en_US.utf8" |
| 1979 | (string-append "GUIX_LOCPATH=" #$glibc-utf8-locales | 1980 | (string-append "GUIX_LOCPATH=" |
| 1981 | #$(libc-utf8-locales-for-target) | ||
| 1980 | "/lib/locale"))) | 1982 | "/lib/locale"))) |
| 1981 | 1983 | ||
| 1982 | (match config | 1984 | (match config |
diff --git a/gnu/system/image.scm b/gnu/system/image.scm index a990c4f8613..b8258922329 100644 --- a/gnu/system/image.scm +++ b/gnu/system/image.scm | |||
| @@ -466,7 +466,9 @@ used in the image." | |||
| 466 | ;; Allow non-ASCII file names--e.g., 'nss-certs'--to be | 466 | ;; Allow non-ASCII file names--e.g., 'nss-certs'--to be |
| 467 | ;; decoded. | 467 | ;; decoded. |
| 468 | (setenv "GUIX_LOCPATH" | 468 | (setenv "GUIX_LOCPATH" |
| 469 | #+(file-append glibc-utf8-locales "/lib/locale")) | 469 | #+(file-append (libc-utf8-locales-for-target |
| 470 | (%current-system)) | ||
| 471 | "/lib/locale")) | ||
| 470 | (setlocale LC_ALL "en_US.utf8") | 472 | (setlocale LC_ALL "en_US.utf8") |
| 471 | 473 | ||
| 472 | (initializer image-root | 474 | (initializer image-root |
| @@ -633,7 +635,8 @@ used in the image. " | |||
| 633 | 635 | ||
| 634 | ;; Allow non-ASCII file names--e.g., 'nss-certs'--to be decoded. | 636 | ;; Allow non-ASCII file names--e.g., 'nss-certs'--to be decoded. |
| 635 | (setenv "GUIX_LOCPATH" | 637 | (setenv "GUIX_LOCPATH" |
| 636 | #+(file-append glibc-utf8-locales "/lib/locale")) | 638 | #+(file-append (libc-utf8-locales-for-target (%current-system)) |
| 639 | "/lib/locale")) | ||
| 637 | 640 | ||
| 638 | (setlocale LC_ALL "en_US.utf8") | 641 | (setlocale LC_ALL "en_US.utf8") |
| 639 | 642 | ||
| @@ -737,7 +740,8 @@ output file." | |||
| 737 | 740 | ||
| 738 | ;; Allow non-ASCII file names--e.g., 'nss-certs'--to be decoded. | 741 | ;; Allow non-ASCII file names--e.g., 'nss-certs'--to be decoded. |
| 739 | (setenv "GUIX_LOCPATH" | 742 | (setenv "GUIX_LOCPATH" |
| 740 | #+(file-append glibc-utf8-locales "/lib/locale")) | 743 | #+(file-append (libc-utf8-locales-for-target (%current-system)) |
| 744 | "/lib/locale")) | ||
| 741 | (setlocale LC_ALL "en_US.utf8") | 745 | (setlocale LC_ALL "en_US.utf8") |
| 742 | 746 | ||
| 743 | (set-path-environment-variable "PATH" '("bin" "sbin") '(#+tar)) | 747 | (set-path-environment-variable "PATH" '("bin" "sbin") '(#+tar)) |
| @@ -816,7 +820,8 @@ output file." | |||
| 816 | 820 | ||
| 817 | ;; Allow non-ASCII file names--e.g., 'nss-certs'--to be decoded. | 821 | ;; Allow non-ASCII file names--e.g., 'nss-certs'--to be decoded. |
| 818 | (setenv "GUIX_LOCPATH" | 822 | (setenv "GUIX_LOCPATH" |
| 819 | #+(file-append glibc-utf8-locales "/lib/locale")) | 823 | #+(file-append (libc-utf8-locales-for-target (%current-system)) |
| 824 | "/lib/locale")) | ||
| 820 | (setlocale LC_ALL "en_US.utf8") | 825 | (setlocale LC_ALL "en_US.utf8") |
| 821 | 826 | ||
| 822 | (let ((image-root (string-append (getcwd) "/tmp-root")) | 827 | (let ((image-root (string-append (getcwd) "/tmp-root")) |
diff --git a/gnu/system/install.scm b/gnu/system/install.scm index 28161de153c..336d13bd076 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm | |||
| @@ -454,7 +454,7 @@ Access documentation at any time by pressing Alt-F2.\x1b[0m | |||
| 454 | (service gc-root-service-type | 454 | (service gc-root-service-type |
| 455 | (append | 455 | (append |
| 456 | (list bare-bones-os | 456 | (list bare-bones-os |
| 457 | glibc-utf8-locales | 457 | (libc-utf8-locales-for-target system) |
| 458 | texinfo | 458 | texinfo |
| 459 | guile-3.0) | 459 | guile-3.0) |
| 460 | %default-locale-libcs))) | 460 | %default-locale-libcs))) |
diff --git a/guix/packages.scm b/guix/packages.scm index e2e82692ad6..b768dddb5f0 100644 --- a/guix/packages.scm +++ b/guix/packages.scm | |||
| @@ -866,7 +866,11 @@ identifiers. The result is inferred from the file names of patches." | |||
| 866 | ("lzip" ,(ref '(gnu packages compression) 'lzip)) | 866 | ("lzip" ,(ref '(gnu packages compression) 'lzip)) |
| 867 | ("unzip" ,(ref '(gnu packages compression) 'unzip)) | 867 | ("unzip" ,(ref '(gnu packages compression) 'unzip)) |
| 868 | ("patch" ,(ref '(gnu packages base) 'patch)) | 868 | ("patch" ,(ref '(gnu packages base) 'patch)) |
| 869 | ("locales" ,(ref '(gnu packages base) 'glibc-utf8-locales))))) | 869 | ("locales" |
| 870 | ,(parameterize ((%current-target-system #f)) | ||
| 871 | (canonical | ||
| 872 | ((module-ref (resolve-interface '(gnu packages base)) | ||
| 873 | 'libc-utf8-locales-for-target)))))))) | ||
| 870 | 874 | ||
| 871 | (define (default-guile) | 875 | (define (default-guile) |
| 872 | "Return the default Guile package used to run the build code of | 876 | "Return the default Guile package used to run the build code of |
diff --git a/guix/profiles.scm b/guix/profiles.scm index 5d2fb8dc649..ce2f8337bfc 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm | |||
| @@ -1000,8 +1000,9 @@ MANIFEST." | |||
| 1000 | (module-ref (resolve-interface '(gnu packages texinfo)) 'texinfo)) | 1000 | (module-ref (resolve-interface '(gnu packages texinfo)) 'texinfo)) |
| 1001 | (define gzip ;lazy reference | 1001 | (define gzip ;lazy reference |
| 1002 | (module-ref (resolve-interface '(gnu packages compression)) 'gzip)) | 1002 | (module-ref (resolve-interface '(gnu packages compression)) 'gzip)) |
| 1003 | (define glibc-utf8-locales ;lazy reference | 1003 | (define libc-utf8-locales-for-target ;lazy reference |
| 1004 | (module-ref (resolve-interface '(gnu packages base)) 'glibc-utf8-locales)) | 1004 | (module-ref (resolve-interface '(gnu packages base)) |
| 1005 | 'libc-utf8-locales-for-target)) | ||
| 1005 | 1006 | ||
| 1006 | (define build | 1007 | (define build |
| 1007 | (with-imported-modules '((guix build utils)) | 1008 | (with-imported-modules '((guix build utils)) |
| @@ -1043,7 +1044,8 @@ MANIFEST." | |||
| 1043 | 1044 | ||
| 1044 | (setenv "PATH" (string-append #+gzip "/bin")) ;for info.gz files | 1045 | (setenv "PATH" (string-append #+gzip "/bin")) ;for info.gz files |
| 1045 | (setenv "GUIX_LOCPATH" | 1046 | (setenv "GUIX_LOCPATH" |
| 1046 | #+(file-append glibc-utf8-locales "/lib/locale")) | 1047 | #+(file-append (libc-utf8-locales-for-target system) |
| 1048 | "/lib/locale")) | ||
| 1047 | 1049 | ||
| 1048 | (mkdir-p (string-append #$output "/share/info")) | 1050 | (mkdir-p (string-append #$output "/share/info")) |
| 1049 | (exit (every install-info | 1051 | (exit (every install-info |
| @@ -1124,8 +1126,9 @@ MANIFEST. Single-file bundles are required by programs such as Git and Lynx." | |||
| 1124 | ;; See <http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00429.html> | 1126 | ;; See <http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00429.html> |
| 1125 | ;; for a discussion. | 1127 | ;; for a discussion. |
| 1126 | 1128 | ||
| 1127 | (define glibc-utf8-locales ;lazy reference | 1129 | (define libc-utf8-locales-for-target ;lazy reference |
| 1128 | (module-ref (resolve-interface '(gnu packages base)) 'glibc-utf8-locales)) | 1130 | (module-ref (resolve-interface '(gnu packages base)) |
| 1131 | 'libc-utf8-locales-for-target)) | ||
| 1129 | 1132 | ||
| 1130 | (define build | 1133 | (define build |
| 1131 | (with-imported-modules '((guix build utils)) | 1134 | (with-imported-modules '((guix build utils)) |
| @@ -1159,9 +1162,11 @@ MANIFEST. Single-file bundles are required by programs such as Git and Lynx." | |||
| 1159 | ;; Some file names in the NSS certificates are UTF-8 encoded so | 1162 | ;; Some file names in the NSS certificates are UTF-8 encoded so |
| 1160 | ;; install a UTF-8 locale. | 1163 | ;; install a UTF-8 locale. |
| 1161 | (setenv "LOCPATH" | 1164 | (setenv "LOCPATH" |
| 1162 | (string-append #+glibc-utf8-locales "/lib/locale/" | 1165 | (string-append #+(libc-utf8-locales-for-target system) |
| 1166 | "/lib/locale/" | ||
| 1163 | #+(version-major+minor | 1167 | #+(version-major+minor |
| 1164 | (package-version glibc-utf8-locales)))) | 1168 | (package-version |
| 1169 | (libc-utf8-locales-for-target system))))) | ||
| 1165 | (setlocale LC_ALL "en_US.utf8") | 1170 | (setlocale LC_ALL "en_US.utf8") |
| 1166 | 1171 | ||
| 1167 | (match (append-map ca-files '#$(manifest-inputs manifest)) | 1172 | (match (append-map ca-files '#$(manifest-inputs manifest)) |
| @@ -1999,19 +2004,21 @@ are cross-built for TARGET." | |||
| 1999 | (and (derivation? drv) (gexp-input drv))) | 2004 | (and (derivation? drv) (gexp-input drv))) |
| 2000 | extras)) | 2005 | extras)) |
| 2001 | 2006 | ||
| 2002 | (define glibc-utf8-locales ;lazy reference | 2007 | (define libc-utf8-locales-for-target ;lazy reference |
| 2003 | (module-ref (resolve-interface '(gnu packages base)) | 2008 | (module-ref (resolve-interface '(gnu packages base)) |
| 2004 | 'glibc-utf8-locales)) | 2009 | 'libc-utf8-locales-for-target)) |
| 2005 | 2010 | ||
| 2006 | (define set-utf8-locale | 2011 | (define set-utf8-locale |
| 2007 | ;; Some file names (e.g., in 'nss-certs') are UTF-8 encoded so | 2012 | ;; Some file names (e.g., in 'nss-certs') are UTF-8 encoded so |
| 2008 | ;; install a UTF-8 locale. | 2013 | ;; install a UTF-8 locale. |
| 2009 | #~(begin | 2014 | (let ((locales (libc-utf8-locales-for-target |
| 2010 | (setenv "LOCPATH" | 2015 | (or system (%current-system))))) |
| 2011 | #$(file-append glibc-utf8-locales "/lib/locale/" | 2016 | #~(begin |
| 2012 | (version-major+minor | 2017 | (setenv "LOCPATH" |
| 2013 | (package-version glibc-utf8-locales)))) | 2018 | #$(file-append locales "/lib/locale/" |
| 2014 | (setlocale LC_ALL "en_US.utf8"))) | 2019 | (version-major+minor |
| 2020 | (package-version locales)))) | ||
| 2021 | (setlocale LC_ALL "en_US.utf8")))) | ||
| 2015 | 2022 | ||
| 2016 | (define builder | 2023 | (define builder |
| 2017 | (with-imported-modules '((guix build profiles) | 2024 | (with-imported-modules '((guix build profiles) |
diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm index bdbea49910c..8071840de15 100644 --- a/guix/scripts/pack.scm +++ b/guix/scripts/pack.scm | |||
| @@ -137,7 +137,8 @@ dependencies are registered." | |||
| 137 | 137 | ||
| 138 | ;; Make sure non-ASCII file names are properly handled. | 138 | ;; Make sure non-ASCII file names are properly handled. |
| 139 | (setenv "GUIX_LOCPATH" | 139 | (setenv "GUIX_LOCPATH" |
| 140 | #+(file-append glibc-utf8-locales "/lib/locale")) | 140 | #+(file-append (libc-utf8-locales-for-target (%current-system)) |
| 141 | "/lib/locale")) | ||
| 141 | (setlocale LC_ALL "en_US.utf8") | 142 | (setlocale LC_ALL "en_US.utf8") |
| 142 | 143 | ||
| 143 | (sql-schema #$schema) | 144 | (sql-schema #$schema) |
| @@ -209,7 +210,10 @@ GLIBC-UT8-LOCALES package." | |||
| 209 | (profile-locales? profile)) | 210 | (profile-locales? profile)) |
| 210 | #~(begin | 211 | #~(begin |
| 211 | (setenv "GUIX_LOCPATH" | 212 | (setenv "GUIX_LOCPATH" |
| 212 | #+(file-append glibc-utf8-locales "/lib/locale")) | 213 | #+(file-append (let-system (system target) |
| 214 | (libc-utf8-locales-for-target | ||
| 215 | (or target system))) | ||
| 216 | "/lib/locale")) | ||
| 213 | (setlocale LC_ALL "en_US.utf8")) | 217 | (setlocale LC_ALL "en_US.utf8")) |
| 214 | #~(setenv "GUIX_LOCPATH" "unset for tests"))) | 218 | #~(setenv "GUIX_LOCPATH" "unset for tests"))) |
| 215 | 219 | ||
diff --git a/guix/self.scm b/guix/self.scm index a1f235659d7..f3785489590 100644 --- a/guix/self.scm +++ b/guix/self.scm | |||
| @@ -73,7 +73,10 @@ | |||
| 73 | ("po4a" . ,(ref 'gettext 'po4a)) | 73 | ("po4a" . ,(ref 'gettext 'po4a)) |
| 74 | ("gettext-minimal" . ,(ref 'gettext 'gettext-minimal)) | 74 | ("gettext-minimal" . ,(ref 'gettext 'gettext-minimal)) |
| 75 | ("gcc-toolchain" . ,(ref 'commencement 'gcc-toolchain)) | 75 | ("gcc-toolchain" . ,(ref 'commencement 'gcc-toolchain)) |
| 76 | ("glibc-utf8-locales" . ,(ref 'base 'glibc-utf8-locales)) | 76 | ("glibc-utf8-locales" . ,(delay |
| 77 | ((module-ref (resolve-interface | ||
| 78 | '(gnu packages base)) | ||
| 79 | 'libc-utf8-locales-for-target)))) | ||
| 77 | ("graphviz" . ,(ref 'graphviz 'graphviz-minimal)) | 80 | ("graphviz" . ,(ref 'graphviz 'graphviz-minimal)) |
| 78 | ("font-ghostscript" . ,(ref 'ghostscript 'font-ghostscript)) | 81 | ("font-ghostscript" . ,(ref 'ghostscript 'font-ghostscript)) |
| 79 | ("texinfo" . ,(ref 'texinfo 'texinfo))))) | 82 | ("texinfo" . ,(ref 'texinfo 'texinfo))))) |
diff --git a/tests/pack.scm b/tests/pack.scm index 8fdaed01688..ac78817a700 100644 --- a/tests/pack.scm +++ b/tests/pack.scm | |||
| @@ -30,7 +30,7 @@ | |||
| 30 | #:use-module (guix modules) | 30 | #:use-module (guix modules) |
| 31 | #:use-module (guix utils) | 31 | #:use-module (guix utils) |
| 32 | #:use-module (gnu packages) | 32 | #:use-module (gnu packages) |
| 33 | #:use-module ((gnu packages base) #:select (glibc-utf8-locales)) | 33 | #:use-module ((gnu packages base) #:select (libc-utf8-locales-for-target)) |
| 34 | #:use-module (gnu packages bootstrap) | 34 | #:use-module (gnu packages bootstrap) |
| 35 | #:use-module ((gnu packages package-management) #:select (rpm)) | 35 | #:use-module ((gnu packages package-management) #:select (rpm)) |
| 36 | #:use-module ((gnu packages compression) #:select (squashfs-tools)) | 36 | #:use-module ((gnu packages compression) #:select (squashfs-tools)) |
| @@ -197,8 +197,9 @@ | |||
| 197 | ;; Make sure non-ASCII file names are properly | 197 | ;; Make sure non-ASCII file names are properly |
| 198 | ;; handled. | 198 | ;; handled. |
| 199 | (setenv "GUIX_LOCPATH" | 199 | (setenv "GUIX_LOCPATH" |
| 200 | #+(file-append glibc-utf8-locales | 200 | #+(file-append |
| 201 | "/lib/locale")) | 201 | (libc-utf8-locales-for-target) |
| 202 | "/lib/locale")) | ||
| 202 | (setlocale LC_ALL "en_US.utf8") | 203 | (setlocale LC_ALL "en_US.utf8") |
| 203 | 204 | ||
| 204 | (mkdir #$output) | 205 | (mkdir #$output) |
diff --git a/tests/profiles.scm b/tests/profiles.scm index 9c419ada934..ddd6d74f3b6 100644 --- a/tests/profiles.scm +++ b/tests/profiles.scm | |||
| @@ -463,7 +463,7 @@ | |||
| 463 | (target -> "arm-linux-gnueabihf") | 463 | (target -> "arm-linux-gnueabihf") |
| 464 | (grep (package->cross-derivation packages:grep target)) | 464 | (grep (package->cross-derivation packages:grep target)) |
| 465 | (sed (package->cross-derivation packages:sed target)) | 465 | (sed (package->cross-derivation packages:sed target)) |
| 466 | (locales (package->derivation packages:glibc-utf8-locales)) | 466 | (locales (package->derivation (packages:libc-utf8-locales-for-target))) |
| 467 | (drv (profile-derivation manifest | 467 | (drv (profile-derivation manifest |
| 468 | #:hooks '() | 468 | #:hooks '() |
| 469 | #:locales? #t | 469 | #:locales? #t |
| @@ -482,7 +482,7 @@ | |||
| 482 | (derivation-file-name grep)) | 482 | (derivation-file-name grep)) |
| 483 | (string=? (find-input packages:sed) | 483 | (string=? (find-input packages:sed) |
| 484 | (derivation-file-name sed)) | 484 | (derivation-file-name sed)) |
| 485 | (string=? (find-input packages:glibc-utf8-locales) | 485 | (string=? (find-input (packages:libc-utf8-locales-for-target)) |
| 486 | (derivation-file-name locales)))))) | 486 | (derivation-file-name locales)))))) |
| 487 | 487 | ||
| 488 | (test-assert "package->manifest-entry defaults to \"out\"" | 488 | (test-assert "package->manifest-entry defaults to \"out\"" |
