Switzerland/get mo

From OLPC
< Switzerland
Revision as of 21:16, 11 March 2008 by Vorburger (talk | contribs) (New page: = get_mo, "for Dummies" = Looking for an easy way to quickly install .MO "language packages" (e.g. German and French) to an XO? Look no further - OLPC.ch provides this page for your conv...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

get_mo, "for Dummies"

Looking for an easy way to quickly install .MO "language packages" (e.g. German and French) to an XO? Look no further - OLPC.ch provides this page for your convenience! This uses the File:Get mo.rb.txt script from OLPC's Niklaus Giger.

Open the Terminal activity, make sure you have all other Activities closed (e.g. don't keep Browse etc. running) and then type this:

  $ su -
  # yum install ruby
  # mkdir get_mo; cd ~
  # wget http://wiki.laptop.org/images/d/d4/Get_mo.rb.txt
  # mv Get_mo.rb.txt get_mo.rb
  # chmod +x get_mo.rb
  # ./get_mo.rb
  # cd /usr/share/locale
  # tar -jvxf /root/get_mo/mo_files.tar.bz2
  # exit
  $ sugar-control-panel -s language German/Switzerland

Now press ctrl-alt-erase, just as the message says... and see Sugar in German!


ToDo

  • Rewrite in Python, not Ruby? (more XO like, and prevent yum install ruby... Space constraints!)
  • Link this page/tool from Translation-related Wiki pages
  • Announce this page/tool on translation-related mailing lists
  • Announce this page/tool to olpc-de and Austria, could be handy?
  • Find list of Activities automatically, instead of hard-coding... contact the web server to get all available translations (just try)
  • Specify what language(s) to install as an option


Troubleshooting

If you get this kind of error, then you ran sugar-control-panel as root and forget the exit above to become olpc again.

 Traceback (most recent call last):
   File "/usr/bin/sugar-control-panel", line 26, in <module>
     sys.path.insert(0, env.get_shell_path())
   File "/usr/lib/python2.5/site-packages/sugar/env.py", line 90, in get_shell_path
     return _get_sugar_path('shell', path)
   File "/usr/lib/python2.5/site-packages/sugar/env.py", line 36, in _get_sugar_path
     raise RuntimeError("The SUGAR_PATH environment variable is not set.")
 RuntimeError: The SUGAR_PATH environment variable is not set.


PS: Usage Information printed by get_mo (slightly inaccurate, because you ran this on the XO itself)

 Hi!
 You just successfully created the file mo_files.tar.bz2.
 Now we have to transfer it to the OLPC e.g. by copying
 onto a flash stick or via a network copy utility like scp.
 A USB flash will be mounted automatically if you insert it
 into the OLPC and will appear under a name like /media/MyUsbStick
 On the OLPC:
 Open the terminal activity
 become root by calling "su" (no password needed by default)
 Then get the file, e.g. by using
 bash-3.2# scp user@10.0.2.1:/path/to/mo_files.tar.bz2 /home/olpc/
 Now you have to unpack it
 bash-3.2# cd /usr/share/locale
 bash-3.2# tar -jvxf /home/olpc/mo_files.tar.bz2
 To permanently set the desired language you have:
 edit /etc/sysconfig/i18n and change
 LANG=C
 to something like
 LANG=de_CH # für die deutsche Schweiz
 or
 LANG=de_FR # pour la Suisse romande
 Set the correct keyboard mapping yo have to to edit
 /etc/keyboard
 Set it to
 KEYTABLE="sg"
 XKB_MODEL="olpc"
 XKB_LAYOUT="ch"
 XKB_VARIANT=""
 Prenez "sf" au lieu de "sg" si vous voulez un clavier Suisse romande.
 If you want to change the keyboard layout just for the current session
 use "setxkbmap ch".

 Set the desired language (German/Switzerland fuer Deutsch or French/Switzerland pour choisir le francais)
 $ sugar-control-panel -s language German/Switzerland
 Now we have to restart the X-server, e.g.
 by pressing ctrl-alt-erase
 by calling as root killall X
 by rebooting