After you've installed FreeBSD on your computer you may want to set the console to include your language to avoid having to read things in a translitaration (in links, for example). The following is an article that will help you set your console to allow you to read and type in Ukrainian and English.

Ukrainianizing the FreeBSD console

This article uses the KOI8-U encoding, which is a superset of KOI8-R charset and therefore allows the user to read to type in both Ukrainian and Russian.
The first step is changing the ~/.login_conf in the users directory. The following lines must be included in the file for enabling Ukrainian language:

me:\
:charset=KOI8-U:\

The next line is necessary for enabling Ukrainian filenames. It also changes the system language, system messages and applications localizations' localization to Ukrainian.

:lang=uk_UA.KOI8-U:

If you don't requre your console to talk to you in Ukrainian, comment all these lines out! You will still be able to read texts in Ukrainian or Russian and you will still be able to type in these languages in text editors that allow doing so (ee, vi). You will also be able to read and send information from and to the Internet in both Ukrainian and Russian and even set the menus in links to Ukrainian or Russian.

Next, you have to enter the system with administrative rights. (su)

The following user login class has to be added to /etc/rc.conf file for enabling the Ukrainian (or Russian) users:

ukrainian|Ukrainian users:\
:charset=KOI8-U:\
:lang=uk_UA.KOI8-U:\
:tc=default:

After these lines have been added to /etc/login.conf you must rebuild the user database:

cap_mkdb /etc/login.conf

After theis the login 'ukrainian' must be given to the users that read Ukrainian (Russian). When creating new users user class ukrainian must be specified. If the existing users would like to be changed to a ukrainian class the following command must be run:

pw usermod "USER_NAME" -L ukrainian

Tuning the system console:

First the /etc/rc.conf must be edited to include system fonts, keyboard layout and screen character map.

The font names must match filenames in the /usr/share/syscons/fonts directory excluding the .fnt suffix. In the same manner the name of the keyboard layout and the name of the screen character map should match the names of the files in the corresponding directories: /usr/share/syscons/keymaps and /usr/share/syscons/scrnmaps [exluding the suffixes] The following lines should be added to the /etc/rc.conf:

keymap="ua.koi8-u.shift.alt"
#this keymap allows for typing in both Ukrainian and Russian
scrnmap="koi8-u2cp866u"
font8x16="cp866u-8x16"
font8x14="cp866u-8x14"
font8x8="cp866u-8x8"

Next step is setting up the type of console in which users will be working - it should be changed to Ukrainian. This is done in the /etc/ttys for every ttyv* the console type should be changed to cons25u

That's it. Now reboot the machine.

** The cyrilic keyboard layout will be slightly different to the one used in modern MS Windows (R) and looks more like the layout of old AT keyboards.

** Changing the keyboard layout from latin to cyrrilics is made by the use of the Caps Lock key or by pressing the right Ctrl key. The Caps-Lock function is turned on by pressing Shift-CapsLock, the same key combination switches it off. In console mode, the CapsLock indicator on the keyboard signifies that the cyrrilic keys are on.

Updated 2004 Aug 24 21:17
by Stan.