GNOME-Shell GJS Plugin for IBus
JavaScript Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


It is a GNOME-Shell GJS Plugin for IBus
The ibus-gjs works with ibus on gnome-shell.
So you need to install gnome-shell and ibus and enable 3D accelerator with
your graphics card to launch gnome-shell.

Build and install from source

The build make & make install expect to install the files into system
directories since we'd try to integrate this module into upstream gnome-shell.
 - js files are installed in 
 - extension files are installed in

To work with gnome-shell 3.4 or later, the latest ibus 1.4.99 and
ibus-xkb is required.

You need to enable gobject-introspection in the latest ibus and
disable engine and UI so that ibus-xkb's ones are used instead.
If you use dconf, the following patch is required for ibus:

ibus would be built with the following configure options:

# cd ibus-
# ./configure --prefix=/usr \
              --disable-engine --disable-ui --prefix=/usr \
              --enable-dconf --disable-gconf \

ibus-xkb would be built with the following configure options:

# cd ibus-xkb-
# ./configure --prefix=/usr --enable-dconf --disable-gconf

Need to enable the ibus extension by manual after you install ibus-gjs:

Run gnome-tweak-tool on gnome-shell and enable the extension of
"Input-Method Status Indicator"


Set a gsetting value by manual:
% gsettings get enabled-extensions
% gsettings set enabled-extensions "['']"
% gsettings get enabled-extensions

Download and install from web site

You can install ibus-gjs with the user privilege.
You need to uninstall the ibus-gjs if you installed it.
1. Run gnome-shell
2. Enable "Input-Method Status Indicator" below

The community version disables an ibus xkb feature because the Fedora
specific feature is not upstreamed in ibus yet.
You could see that user.patch disables XKB in ibusPanel.js and xkbLayout.js.
So if you would use this on Fedora, you could enable XKB to modify
ibusPanel.js and xkbLayout.js by manual.

Actually the web site dowloads the ibjs-gjs files under the user directory
and enables the gsettings above.

% cd $HOME
% mkdir -p .local/share/gnome-shell/extensions/
% cp /usr/share/gnome-shell/extensions/* \
% mkdir .local/share/gnome-shell/extensions/
% cp /usr/share/gnome-shell/js/ui/status/ibus/* \
% cd .local/share/gnome-shell/extensions/
% patch -p1 < user.patch

(To upload the files in,
bump the version in metadata.json and
% cd
% zip -r \
  extension.js ibus metadata.json stylesheet.css

Installation failure

The gnome-shell extension module has the version information of gnome-shell
and gjs, and gnome-shell checks the versions.
If the versions are not matched, the gnome-shell ibus extension is not enabled.
You could check if the versions are matched by manual.

% rpm -q gnome-shell
% rpm -q gjs
% egrep 'shell-version|js-version' \
{"shell-version": ["3.2"],
 "js-version": ["1.30"],