[RFC] higher level tool for generating locale data needed

Mike Frysinger vapier@gentoo.org
Wed Oct 14 14:45:00 GMT 2015


localedef is a fine tool -- it generates a single locale with the requested
parameters and that's it.  but in practice, distro maintainers need something
higher level: they need to generate all the locales that the system supports.
how do they do that today ?  lots-o-pain:
- Debian: sets of wrapper scripts including one called `locale-gen` that reads
  /etc/locale.gen and then takes care of generating all the locales listed there
  via localedef; if no locales are listed, manually grub around installed glibc
  files and parse their content/meaning to come up with the list to generate
- Ubuntu: same deal pretty much as Debian
- Gentoo: same high-level concept as Debian (script+config), but more user
  friendly interface and runs in parallel
- Fedora/RedHat: runs localedef by hand in rpm spec file
- Arch Linux: same deal as Debian, but diff scripts
i assume other distros fall into similar buckets.

can we standardize this in glibc itself ?  either in a new program (let's call
it "locale-gen" since distros that support it have standardized on that), or in
localdef itself.

requirements:
- generate in parallel (generating 400+ locales in serial is sloooow)
- respect a config file (let's just use /etc/locale.gen as it too is standard)
- option to automatically generate all available locales (in case config is 
  empty)
- option to generate locales with the user-friendly name
  e.g. this is good: locale-gen en_US.UTF-8
  e.g. this is bad: localedef -i en_US -f UTF-8 en_US.UTF-8

nice-to-have:
- option to incrementally sync locale state to a config by either deleting or
  adding locales

thoughts ?
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20151014/8f42b49a/attachment.sig>


More information about the Libc-alpha mailing list