Table of Contents _________________ 1. The problem 2. What I've tried
1 The problem ============= I've installed the package `ibus-rime'. The expected behavior is F4 to show a dialog for choosing RIME options (see this screenshot of that dialog which I took in my other Arch Linux system where I also use RIME: [4]). However, in my system that uses Guix System, pressing F4 doesn't show such dialog in some applications (please see list of applications below). Pressing F4 shows dialog with RIME options in + flameshot [1] + okular + vlc Pressing F4 doesn't show dialog with RIME options in + audacity * + chromium * + fontforge [2] [3] + gedit * + inkscape * + libreoffice * + thunar * + xournalpp * + zathura * ,* The asterisk mean that I was able to use RIME in another system that uses Arch Linux and have RIME installed. [1] flameshot is used for taking screenshots on the fly so this app doesn't have noticeable input boxes. You can make it show an input box by trying to save a screenshot to a location instead of copying it to the clipboard. [2] fontforge is used for previewing fonts. One way to show an input box is to click on (menu bar) "Element" > "Font Info" > "Copyright". [3] fontforge was the only application where F4 didn't show the pop-up dialog in my other system that uses Arch Linux. [4] < https://upload.wikimedia.org/wikipedia/commons/2/2b/RIME_options_inside_LibreOffice.png > 2 What I've tried ================= I tried setting the following environment variables in my guix home configuration both in `home-environment-variables-service-type' (which adds them to `~/.guix-home/setup-environment') and in `home-bash-configuration' (which adds them to `~/.bash_profile'). Below you can read the relevant part (just in case this helps, you can find my complete configuration in <https://paste.debian.net/1275411/> ) ,---- | (home-environment | | (... some omitted lines ...) | | (services | (list | (simple-service | 'some-useful-env-vars-service | home-environment-variables-service-type | '(("EDITOR" . "emacsclient") | ("GTK_IM_MODULE" . "ibus") | ("XMODIFIERS" . "@im=ibus") | ("QT_IM_MODULE" . "ibus"))) | (service | home-bash-service-type | (home-bash-configuration | (environment-variables | `(("GTK_IM_MODULE" . "ibus") | ("QT_IM_MODULE" . "ibus") | ("XMODIFIERS" . "@im=ibus") | ("GUIX_GTK2_IM_MODULE_FILE" . "/run/current-system/profile/lib/gtk-2.0/2.10.0/immodules-gtk2.cache") | ("GUIX_GTK3_IM_MODULE_FILE" . "/run/current-system/profile/lib/gtk-3.0/3.0.0/immodules-gtk3.cache"))) | (aliases | '(("grep" . "grep --color=auto") | ("ll" . "ls -l") | ("ls" . "ls -p --color=auto") | ("d" . "cd ~/Downloads"))))) | | (... some omitted lines ...) | | ) | | (... some omitted lines ...)) `---- I've set those environment variables because that's what `ibus-setup' recommends setting when you execute it without having executed `ibus-daemon' beforehand. This means that if I execute the following commands. ,---- | pkill ibus-daemon | ibus-setup `---- The following dialog is shown. ,---- | The IBus daemon is not running. Do you wish to start it? | [No] [Yes] `---- If I press `[Yes]', the following dialog, which contains information about the environment variables, is shown. ,---- | IBus has been started! If you cannot use IBUS, add the following lines to your $HOME/.bashrc; then relog into your desktop. | | export GTK_IM_MODULE=ibus | export XMODIFIIERS=@im=ibus | export QT_IM_MODULE=ibus | | [OK] `---- In addition to that, I found [this guide] and [this guide] that provides instructions on how to install ibus on GuixSystem. Both guides also set those environment variables. [this guide] <https://guix.org.cn/wiki/guix-system-gnome-ibus/> [this guide] <https://guix.org.cn/wiki/input-method/>