Ethiopian Setup

From OLPC
Revision as of 23:20, 6 October 2007 by Bernie (talk | contribs)
Jump to: navigation, search

Development is being tracked here: http://www.codewiz.org/wiki/EthiopianLocale

  • Update your OS image if it's older than 612
  • Boot, switch to the console (alt-F1) and login as root.
  • Edit /etc/rpm/macros.pilgrim and add am_ET to the list of %_install_langs.
  • Add the olpc-bernie yum repository:
cd /etc/yum.repos.d
wget http://www.codewiz.org/pub/olpc-bernie/olpc-bernie.repo
  • Install a few updates from olpc-bernie:
yum update libX11
  • For glibc, yum will not work because we install the i686 package even though uname -m says i586. Additionally, a glibc utility ran by the post install scriptlet breaks on JFFS2 because it depends on an unsupported filesystem feature. So we need to play a few dirty tricks around the package installation:
cd /
wget http://www.codewiz.org/pub/olpc-bernie/i386/os/glibc-2.6.90-17.i686.rpm
wget http://www.codewiz.org/pub/olpc-bernie/i386/os/glibc-common-2.6.90-17.i386.rpm
mount -t ramfs none /usr/lib/locale
rpm -U --ignorearch glibc-2.6.90-17.i686.rpm glibc-common-2.6.90-17.i386.rpm
mv /usr/lib/locale/locale-archive /
umount /usr/lib/locale
mv /locale-archive /usr/lib/locale

NOTE: any version of glibc below 2.6.90-17 won't work!

  • Set the LANG environment variable in /etc/sysconfig/i18n
LANG=am_ET.UTF-8
  • To use the XKB Ethiopian layout along with US layout, you need to edit /etc/X11/xorg.conf. This will make "us" the first and "et" a second layout:
XkbLayout "us,et"
XkbVariant "olpc2,basic"

Alternatively, you can do that on the fly by opening the developer console (Alt-=) and type:

setxkbmap -model olpc 'us(olpc2),et'

  • You can switch between IM in the Write activity through the RMB context menu, although the Amharic IM only appears to work the the "us" XKB keyboard layout.
  • You can toggle between the us and the et layouts by hitting the group switch key, which is mapped to the rightmost key below enter (labeled multiply/divide on US keyboards).