Demonstrating mozc with Webconverger

This post was prompted by nikkei_linux magazine in Japan. Since I'm a fan of Japanese people and culture, it was time to work on restoring at least the J of CJK support.

Years ago CJK was simply supported in Webconverger by the appropriate SCIM based packages in Linux distributions. I am well versed in this after working on a Korean distribution called Hannux in another life.

For old versions of Webconverger, one needed to simply add the packages:

ttf-vlgothic scim-anthy scim-uim scim-skk scim-prime scim-canna scim-tables-ja

And it worked amazingly, considering SCIM was written in a billion lines of bonkers C++. Unsurprisingly SCIM became unmaintained and I removed the CJK support because it was bulking the image too much.

Now we have ibus which replaces the functionally of the unmaintained SCIM project and allows input method switching in Xorg.

However Japanese users I'm told do not like basic ibus and want mozc too.

So after several hours of moaning, the new Webconverger the development process requires to tweak the existing chroot. We need to add the following packages:

ibus-mozc mozc-utils-gui ttf-vlgothic ibus-gtk

Building these and their dependencies would take a LOT of time, so I am thankful Webconverger is still based upon Debian packaging .

To get the ibus daemon running you need to add into ~/.xinitrc:

export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
ibus-daemon -x -d

And you need to ibus-setup in advance with by extracting in ~webc:

curl -s http://archive.webconverger.com/japanese-mozc-gconf.tar.gz  |  tar zxvf -

Finally outside the chroot, you need to append locale=ja on the --bootappend-live line of auto/config.

Here is my complete work log to guide you through the currently cumbersome process.

  1. Installing the relevant packages and dependencies
  2. ibus environment details for .xinitrc
  3. the bonkers gconf configuration preset
  4. locale=ja on the boot parameter

At this stage with our unstable git-fs work on trunk, dbus needs to be installed. So work from the 14.1 tag to be sure.

Hopefully this gave you some insight to a Webconverger build and with Japanese developer support, we can have Japanese support by default in Webconverger. If you don't manage to build it, try this demo.