Locales: Difference between revisions

m `supportedLocales` is supposed to be declared within a single i18n layer, as can be seen here:
Pigs (talk | contribs)
m Add category, fix formatting
Line 1: Line 1:
NixOS allows to set the default [https://en.wikipedia.org/wiki/Locale_(computer_software) locale] as well as individual locales in the system configuration file:


{{file|/etc/nixos/configuration.nix|nix|<nowiki>
  # Mandatory
  i18n.defaultLocale = "en_US.UTF-8";


NixOS allows to set the default locale as well as individual locales in the configuration file:<syntaxhighlight lang="bash">
  # Optionally (BEWARE: requires a different format with the added /UTF-8)
configuration.nix
  i18n.supportedLocales = ["en_US.UTF-8/UTF-8" "es_VE.UTF-8/UTF-8"];
{...}


# Mandatory
  # Optionally
i18n.defaultLocale = "en_US.UTF-8";
  i18n.extraLocaleSettings = {
 
# Optionally (BEWARE: requires a different format with the added /UTF-8)
i18n.supportedLocales = ["en_US.UTF-8/UTF-8" "es_VE.UTF-8/UTF-8"];
 
# Optionally
i18n.extraLocaleSettings = {
     # LC_ALL = "en_US.UTF-8"; # This overrides all other LC_* settings.
     # LC_ALL = "en_US.UTF-8"; # This overrides all other LC_* settings.
     LC_CTYPE = "en_US.UTF8";
     LC_CTYPE = "en_US.UTF8";
Line 26: Line 23:
     LC_COLLATE = "es_VE.UTF-8";
     LC_COLLATE = "es_VE.UTF-8";
   };
   };
</syntaxhighlight>'''defaultLocale''' will set the language and the character set systemwide to the desired value. Specifically, defaultLocale will define the <code>LANG</code> environment variable.
</nowiki>
}}
 
{{nixos:option|i18n.defaultLocale}} will set the language and the character set systemwide to the desired value. Specifically, defaultLocale will define the <code>LANG</code> environment variable.


In addition, with '''supportedLocales''', the system will also support Venezuelan Spanish. The value <code>"all"</code> means that all locales supported by Glibc will be installed. A full list of supported locales can be found at https://sourceware.org/git/?p=glibc.git;a=blob;f=localedata/SUPPORTED.
In addition, with {{nixos:option|i18n.supportedLocales}}, the system will also support Venezuelan Spanish. The value <code>"all"</code> means that all locales supported by Glibc will be installed. A full list of supported locales can be found at https://sourceware.org/git/?p=glibc.git;a=blob;f=localedata/SUPPORTED.


And in the '''extraLocaleSettings''', it is possible to set the LC locales individually. This does allow fine-grained adjustments of the used locales. In the above example a mix of American English and Venezuelan Spanish is used. It is also possible to find these settings at [https://search.nixos.org/options NixOS options]. Just search for i18 locale.
And in the {{nixos:option|i18n.extraLocaleSettings}}, it is possible to set the LC locales individually. This does allow fine-grained adjustments of the used locales. In the above example a mix of American English and Venezuelan Spanish is used. It is also possible to find these settings at [https://search.nixos.org/options NixOS options]. Just search for i18 locale.


'''BEWARE:''' The setting <code>i18n.supportedLocales</code> requires a different format to <code>i18n.extraLocaleSettings</code>  with the added <code>/UTF-8</code>. Otherwise, your locale settings will likely not work.
{{note|The setting <code>i18n.supportedLocales</code> requires a different format to <code>i18n.extraLocaleSettings</code>  with the added <code>/UTF-8</code>. Otherwise, your locale settings will likely not work.}}


== Troubleshooting when using nix on non-NixOS linux distributions ==
== Troubleshooting when using nix on non-NixOS linux distributions ==
Line 67: Line 67:
}
}
</syntaxhighlight>
</syntaxhighlight>
[[Category:Configuration]]