A locale determines language and encoding for system and programs' messages, representation of dates and so on.
OpenIndiana stores default (system) locale settings in /etc/default/init file. So, if you want to change them after install, you should edit this file and reboot your system.
To ensure that a desired locale is present on your system, you can use locale command.
If the desired locale is not present, you should install it. For example, to install Russian locale from package repository, use the following command
# pkg install system/locale/support/russian
For example, to set Russian locale and Moscow timezone, you should set the following variables in /etc/default/init fle:
Here C_COLLATE determines text sorting order,
LC_CTYPE determines character classification, for example this setting is necessary for tolower (3C) to work correctly,
LC_MESSAGES determines language for system messages (usually you don't want to change it - it is important to read them even if your environment is mangled in any way),
LC_MONETARY determines currency symbols and name,
LC_NUMERIC determines representation of numeric data (for example, use "." or "," as decimal separator),
LC_TIME determines date and time representation and settings (e.g., first day of the week),
TZ determines current timezone.
To set TZ variable you can use tzselect program.
It will ask you questions about your region, country and time zone and output detailed information about selected timezone, including suitable TZ value (for example, Europe/Moscow), which you can substitute in /etc/default/init file.