From Gentoo Wiki
Jump to:navigation Jump to:search

IBus (Intelligent Input Bus) is an open source input framework for Linux and Unix.


USE flags

USE flags for app-i18n/ibus Intelligent Input Bus for Linux / Unix OS

X Add support for X11
emoji Enable support for Emoji
gtk Add support for x11-libs/gtk+ (The GIMP Toolkit)
gtk2 Enable support for x11-libs/gtk+:2
introspection Add support for GObject based introspection
kde Add support for software made by KDE, a free software community
nls Add Native Language Support (using gettextGNU locale utilities)
python Add optional support/bindings for the Python language
test Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently)
unicode Enable support for Unicode choice
vala Enable bindings for dev-lang/vala
wayland Enable dev-libs/wayland backend


Except for the basic IBus framework, one or more engines should be installed. For example:

root #emerge --ask app-i18n/ibus ibus-libpinyin


For IBus to work with Qt 5 / KDE 5 / Plasma, the ibus USE flag needs to be set on at least dev-qt/qtgui and kde-plasma/plasma-desktop:

FILE /etc/portage/package.use/ibus
dev-qt/qtgui ibus
kde-plasma/plasma-desktop ibus

And those packages rebuilt to reflect that change:

root #emerge --ask --oneshot --newuse dev-qt/qtgui kde-plasma/plasma-desktop


Have a look at the eix output for more available engines:

user $eix -c -S engine app-i18n/ibus

For graphical toolkit integration, app-i18n/ibus offers gtk (this refers to gtk+:2) and gtk3 flags.

The app-i18n/im-chooser package can helpful for selecting the preferred input method. As of now all im-chooser packages in the Portage tree are marked unstable.

If nothing starts (no ibus daemon) when a user logs in, put the following in the ~/.xprofile or ~/.xinitrc file:

FILE ~/.xprofile or ~/.xinitrc
export XMODIFIERS=@im=ibus
export GTK_IM_MODULE=ibus
export QT_IM_MODULE=ibus

# Use `xim` in case some apps (like Chromium) refuse to work with IBus
# export GTK_IM_MODULE=xim
# export QT_IM_MODULE=xim

ibus-daemon -drx

The installation can be finely tuned by running:

user $ibus-setup

ibus-setup can be used to set the preferred input methods, the system keyboard, or to add an icon in the taskbar.

When using GNOME, type "ibus" in the search bar and launch "ibus-preferences"
The Input Method Panel widget in KDE may provide a better integrated experience with IBus on KDE. In 64-bit architectures, to launch IBus with Input Method Panel, first enable the widget and then run:
user $ibus-daemon -drx --panel=/usr/lib64/libexec/kimpanel-ibus-panel

You may also use the command-line ibus utility, if you can't or don't want to use ibus-setup:

user $ibus list-engine
user $ibus engine m17n:t:unicode # For example
Compose key will stop working when ibus engine is not xkb:*

To inform Qt ibus is now the input method, run:

user $qtconfig

See also