ibus is an Intelligent Input Bus. It is a new input framework for the Linux OS. It provides a fully featured and user friendly input method user interface.
This package is known to build and work properly using an LFS 11.3 platform.
Download (HTTP): https://github.com/ibus/ibus/releases/download/1.5.27/ibus-1.5.27.tar.gz
Download MD5 sum: 3590d33fbd84e041acb75fcee818b504
Download size: 3.6 MB
Estimated disk space required: 66 MB (add 3 MB for tests)
Estimated build time: 0.2 SBU (Using parallelism=4; add 0.6 SBU for tests)
Unicode Character Database: https://www.unicode.org/Public/zipped/15.0.0/UCD.zip
DConf-0.40.0, ISO Codes-4.12.0, and Vala-0.56.4
gobject-introspection-1.74.0, GTK+-2.24.33, and libnotify-0.8.1
GTK+-3.24.36 (to build IM module for it), GTK-4.8.3 (to build IM module for it), D-Bus Python-1.3.2 and PyGObject-3.42.2 (both to build the Python support library), GTK-Doc-1.33.2, and libxkbcommon-1.5.0, Wayland-1.21.0 (both to build the Wayland support programs), and EmojiOne
User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/ibus
If the optional Unicode Character Database was downloaded, install
it now as the root
user:
mkdir -p /usr/share/unicode/ucd && unzip -uo ../UCD.zip -d /usr/share/unicode/ucd
Be sure to also remove the --disable-unicode-dict in the configure step below.
Fix an issue with deprecated schema entries:
sed -i 's@/desktop/ibus@/org/freedesktop/ibus@g' \ data/dconf/org.freedesktop.ibus.gschema.xml
Install ibus by running the following commands:
./configure --prefix=/usr \ --sysconfdir=/etc \ --disable-python2 \ --disable-emoji-dict \ --disable-unicode-dict \ --disable-systemd-services && rm -f tools/main.c && make
To test the results, issue: make -k check. The test named ibus-compose fails because it uses some locales not installed in LFS. The test named ibus-keypress is known to fail in a Wayland based desktop environment. The test named xkb-latin-layouts is known to fail with a recent xkeyboard-config release. The test named test-override-ibus.py is known to fail if Python support library is enabled.
Now, as the root
user:
make install && gzip -dfv /usr/share/man/man{{1,5}/ibus*.gz,5/00-upstream-settings.5.gz}
--disable-emoji-dict
: This
switch disables the use of emoticon dictionaries. Omit if you
installed the optional package.
--disable-unicode-dict
:
This switch disables the use of unicode dictionaries. Omit if you
installed the optional Unicode Character Database.
rm -f tools/main.c: This command removes a generated file that was not removed when packaging.
--disable-gtk2
: This switch disables
building the GTK+ 2 immodule. Use
it if you have not installed GTK+
2.
--enable-gtk4
: This switch enables
building the GTK 4 immodule. Use
it if you have installed GTK 4.
--enable-python-library
: This switch
enables building the Python
support library. Use it if you have installed the optional
dependencies.
--enable-wayland
: This switch enables
building the Wayland support
programs. Use it if you have installed the optional dependencies.
--with-python=python3
: This switch
makes the configure
script look for Python 3. Use it
if you want to build the Python 3
support library alongside the Python
2 one.
--enable-gtk-doc
: Use this parameter if
GTK-Doc is installed and you wish
to rebuild and install the API documentation.
gzip -dfv ...: Decompress installed man pages in accordance with other man pages.
If GTK+-3 or GTK+-2 are installed and --disable-gtk{3,2}
are not used, the ibus IM module
for GTK+-3 or GTK+-2 will be installed. As the root
user, update a cache file of GTK+-3 or
GTK+-2 so the GTK-based applications can find the newly installed
IM module and use ibus as an input method:
gtk-query-immodules-3.0 --update-cache
The command above updates the cache file for GTK+-3. For GTK+-2, use gtk-query-immodules-2.0 instead of gtk-query-immodules-3.0. GTK-4 does not require a cache file for IM modules.