If ibus works in some programs and not in others, that sounds as if your environmental variables are either wrong or the libraries they refer to are missing. I see there's logic in the ibus file to only set the variables if the actual libraries are installed. Otherwise, $GTK_IM_MODULE and $QT_IM_MODULE (and perhaps $XMODIFIERS) being empty suggests that your im-switch choice is pointing to the wrong file, likely 'default' or 'none'. And setting it aright is what's difficult. So from the top, you first need the ibus-gtk and ibus-qt4 libraries installed. Then you need the proper environmental variables set, as gained by pointing the xinput-lang_LANG alternative for your locale to the /etc/X11/xinit/xinput.d/ibus file. This bug obstructs that by not making ibus available to the all_ALL locale, which seems to get used even though you use an en_AU locale (and I an en_US). I'm not sure why xinput doesn't simply interpret ours as en_US. Said file must also be properly configured - as it is notably not in Skim bug #403004. 1) I've only recently found out about the kalternatives program, available from lucid universe. With it you can graphically add /etc/X11/xinit/xinput.d/ibus to the xinput-all_ALL alternative, and then use im-switch to change to it. I'm unsure of whether this will persist through an ibus package update. It will install itself into System Settings -> Advanced tab -> System section, and obviously if you want to make system-wide changes you'll have to open System Settings with kdesudo. Alternatively from a terminal, 'kdesudo kcmshell4 kalternatives'. 2) You can also add the choice to the xinput-all_ALL alternative from a terminal by using the 'update-alternatives --install' command. When I toiled with it I strugged with its syntax and gave up, so kalternatives might be an easier approach. 3) While an even grittier solution, you can also add the choice manually by adding the entry to the /var/lib/dpkg/alternatives/xinput-all_ALL file, where the alternative's choices are listed. Entries consist of two lines; the first pointing to the file in /etc/X11/xinit/xinput.d/, the second it's numerical priority. I'm positive this gets overwritten at package updates though, at which point you'll have to redo your changes and set your xinput.d choice once more. So you'd need to add the following lines to said file; /etc/X11/xinit/xinput.d/ibus 99 4) You can also probably overwrite one of the other files in /etc/X11/xinit/xinput.d/ with the content of the ibus file. They are installed as part of the im-switch package and don't see a lot of updates, so if manual changes keep getting overwritten I guess this is a workaround worth considering. Then you could just set your xinput alternative to 'none' or 'default' or whichever you cloned the ibus file to. I'm currently using UIM, which does set itself up as a choice for xinput-all_ALL. And even in Lucid my machine becomes all_ALL, after having set it up to use a Swedish locale and an English translation in Ubiquity, at time of installation. I'm not sure if that's the real bug, but this would be very easy to fix in ibus by merely removing that commenting hashmark, as detailed in the original entry. Unless, of course, there's rationale behind it being there.