3

I have to manually start ibus each time I have to boot in to my kubuntu 20.04. I have tried several methods including adding the ibus-daemon into my start up application. I also followed this links.

How to add iBus to start up applications?

I have also included these lines in my ~/.bashrc

export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus

and relogged in. Still it does not work out for me. Anybody have a suggestion on how to resolve this issue?

To mention, I have installed ibus avro in my kubuntu 20.04.

  • Does ibus open when you run the command ibus-daemon in a terminal? Also, try adding the "Input Method Panel" widget to your panel – Archisman Panigrahi Jul 05 '20 at 11:43
  • yes, ibus opens , and could you tell me how to add the input method panel?? I cannot find that out. – lone wolf Jul 05 '20 at 11:49
  • I have added the input method panel. but whenever I close the ibus-daemon on terminal, the panel disappears. – lone wolf Jul 05 '20 at 12:06
  • I did not experience this issue in KDE Neon (based on 18.04). Could you edit your question and add the version of Kubuntu you are using? – Archisman Panigrahi Jul 05 '20 at 16:21
  • Just to ensure, how did you add ibus-daemon to autostart? Did you create a new entry in system settings > Startup and Shutdown > autostart? Or did you use some other method? Also, try the following. Search for Input method in the menu, and choose ibus inside it. – Archisman Panigrahi Jul 05 '20 at 16:28
  • I used the first command that you mentioned. it worked for me after I start it up this morning, but it did not work for me yesterday after logging in several times. do not know why.. – lone wolf Jul 06 '20 at 12:35
  • Can you Bangla write with ibus-avro in Qt apps like Kate, Dolphin, etc.? In 18.04 one could not write with ibus in Qt apps due to a bug. Patches were released to fixed it, but it does not work for me in KDE Neon. I wanted to know if this works in Kubuntu 20.04 (because I am planning to upgrade to 20.04). – Archisman Panigrahi Jul 07 '20 at 04:54
  • @ArchismanPanigrahi: That bug (bug #1844853) was temporarily fixed in Ubuntu after about a week. – Gunnar Hjalmarsson Jul 07 '20 at 14:57
  • @GunnarHjalmarsson For some reason it does not work in KDE Neon (I once opened a github issue of ibus-avro regarding this), despite using version 2.56.4-0ubuntu0.18.04.6 of libglib2.0. But I guess it has been fixed in Kubuntu 20.04, to which I will upgrade soon. – Archisman Panigrahi Jul 07 '20 at 17:18
  • @ArchismanPanigrahi: KDE Neon means that you have newer KDE/Qt stuff, so that may be a KDE/Qt bug which is not present in standard Ubuntu/Kubuntu. – Gunnar Hjalmarsson Jul 07 '20 at 17:42
  • @ArchismanPanigrahi: Please note that the IBus security patch, which triggered the issue initially, was disabled almost instantly, and since then IBus has worked also on Qt apps AFAIK. – Gunnar Hjalmarsson Jul 07 '20 at 17:47

2 Answers2

2

Those variables should not be set in ~/.bashrc, since that won't make them available everywhere in the graphical environment.

To make IBus start automatically at login and set the appropriate variables correctly, open the Input Method tool and select "ibus".

Alternatively you can do it with this terminal command:

im-config -n ibus

(That also makes ibus-daemon in the startup application redundant.)

Gunnar Hjalmarsson
  • 33,540
  • 3
  • 64
  • 94
  • Can this be automated with the post-install script of ibus-avro (and possibly other ibus engines)? A lot of users face this issue. A lot of hassle and bug reports would not appear if ibus automatically made itself the default input method right after installation. Advanced users might want to use a different input method despite ibus being installed. But they can change that themselves, and the default behavior can be made more convenient for average users – Archisman Panigrahi Jul 06 '20 at 18:10
  • @ArchismanPanigrahi: You make a valid point indeed. It's actually an im-config configuration thing and not specific to ibus-avro. So far im-config has been disabled by default on Kubuntu (and some other flavors) unless you have a CJKV locale. Why? Because users who don't need input methods experienced other kinds of issues if IBus is launched and configured by default. But lately I have noticed this issue, and tend to think that we should change it after all so im-config is set to launch/configure IBus irrespective of locale. You may want to file a bug about it: ubuntu-bug im-config – Gunnar Hjalmarsson Jul 06 '20 at 18:28
  • @ArchismanPanigrahi: Your question inspired me to post this topic. – Gunnar Hjalmarsson Jul 06 '20 at 22:26
  • I would be happy to file a bug report. But I am somewhat unsure what to write in the bug report as I don't know the technical details. Shall I ask im-config to be enabled by default? Could you provide a link about the "other kind of issues" you mentioned? Suggestion: When a user installs an ibus engine which also pulls ibus, enable im-config with the post-install script of the ibus engine. Otherwise, no need to enable im-config. – Archisman Panigrahi Jul 07 '20 at 04:44
  • @ArchismanPanigrahi: I no longer think a bug is necessary. Instead I wrote that discourse message to reach out to the maintainers of the affected flavors. I want their input before making the change. And no, I don't think that messing with post install scripts in respective input engine would be a good solution. Changing this code is what I have in mind. – Gunnar Hjalmarsson Jul 07 '20 at 09:44
  • @ArchismanPanigrahi: This has now been changed, so as from Kubuntu 20.10 you'll normally not need to deal with im-config. – Gunnar Hjalmarsson Sep 16 '20 at 12:58
  • Thank you for the update. – Archisman Panigrahi Sep 16 '20 at 13:53
0

The following worked for me with IBus 1.5.22 and Kubuntu 20.04:

System Settings -> Startup and Shutdown -> AutoStart -> Add Program -> Type /usr/bin/ibus-daemon and click OK -> In the properties window for the newly added entry -> Application -> Command: /usr/bin/ibus-daemon -dr (Notice the -dr. If I only use -d, it works at startup but not at login after logout) -> OK -> Close -> Logout and Login.