[PATCH] gnu: glibc-utf8-locales: Hide the package.

  • Done
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Maxim Cournoyer
Owner
unassigned
Submitted by
Maxim Cournoyer
Severity
normal
M
M
Maxim Cournoyer wrote on 27 Feb 2022 05:10
(address . guix-patches@gnu.org)(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)
20220227041059.1322-1-maxim.cournoyer@gmail.com
This package has a long history of confusing users, due to containing only a
small, arbitrary subset of UTF-8 locales.

* gnu/packages/base.scm (glibc-utf8-locales): Define as a hidden package.
* doc/guix.texi (Application Setup): Do not mention glibc-utf8-locales.
Instead, provide an example for defining a custom locales package.
---
doc/guix.texi | 20 ++++++++++++++++++--
gnu/packages/base.scm | 3 ++-
2 files changed, 20 insertions(+), 3 deletions(-)

Toggle diff (47 lines)
diff --git a/doc/guix.texi b/doc/guix.texi
index a6437729ff..69a4073603 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -1867,8 +1867,24 @@ $ export GUIX_LOCPATH=$HOME/.guix-profile/lib/locale
Note that the @code{glibc-locales} package contains data for all the
locales supported by the GNU@tie{}libc and weighs in at around
-917@tie{}MiB@. Alternatively, the @code{glibc-utf8-locales} is smaller but
-limited to a few UTF-8 locales.
+930@tie{}MiB@footnote{The size of the @code{glibc-locales} package is
+reduced down to about 213@tie{}MiB with store deduplication and further
+down to about 67@tie{}MiB when using a zstd-compressed Btrfs file
+system.}. If you only need a few locales, you can define your custom
+locales package via the @code{make-glibc-utf8-locales} procedure from
+the @code{(gnu packages base)} module. The following example defines a
+package containing the various Canadian UTF-8 locales known to the
+GNU@tie{}libc, that weighs around 14@tie{}MiB:
+
+@lisp
+(use-modules (gnu packages base))
+
+(define my-glibc-locales
+ (make-glibc-utf8-locales
+ glibc
+ #:locales (list "en_CA" "fr_CA" "ik_CA" "iu_CA" "shs_CA")
+ #:name "glibc-canadian-utf8-locales"))
+@end lisp
The @env{GUIX_LOCPATH} variable plays a role similar to @env{LOCPATH}
(@pxref{Locale Names, @env{LOCPATH},, libc, The GNU C Library Reference
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index 76a65f25b3..419ab6906a 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -1171,7 +1171,8 @@ (define file
(define-public glibc-locales
(make-glibc-locales glibc))
(define-public glibc-utf8-locales
- (make-glibc-utf8-locales glibc))
+ (hidden-package
+ (make-glibc-utf8-locales glibc)))
;; Packages provided to ease use of binaries linked against the previous libc.
(define-public glibc-locales-2.29
--
2.34.0
L
L
Ludovic Courtès wrote on 27 Feb 2022 17:35
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)(address . 54178@debbugs.gnu.org)
87czj8w9mb.fsf@gnu.org
Hi,

Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:

Toggle quote (7 lines)
> This package has a long history of confusing users, due to containing only a
> small, arbitrary subset of UTF-8 locales.
>
> * gnu/packages/base.scm (glibc-utf8-locales): Define as a hidden package.
> * doc/guix.texi (Application Setup): Do not mention glibc-utf8-locales.
> Instead, provide an example for defining a custom locales package.

LGTM!

Ludo’.
M
M
Maxim Cournoyer wrote on 28 Feb 2022 02:24
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 54178-done@debbugs.gnu.org)
87wnhfu6jp.fsf@gmail.com
Hello!

Ludovic Courtès <ludo@gnu.org> writes:

Toggle quote (13 lines)
> Hi,
>
> Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:
>
>> This package has a long history of confusing users, due to containing only a
>> small, arbitrary subset of UTF-8 locales.
>>
>> * gnu/packages/base.scm (glibc-utf8-locales): Define as a hidden package.
>> * doc/guix.texi (Application Setup): Do not mention glibc-utf8-locales.
>> Instead, provide an example for defining a custom locales package.
>
> LGTM!

Pushed, thank you!

Maxim
Closed
?