project jira-projects / Miscellaneous avatar

jira-projects/MISC#36: Zoom breaks Terminator by unnecessarily requiring ibus



Issue Information

Issue Type: issue
Status: closed
Reported By: btasker
Assigned To: btasker

Created: 04-Jun-24 11:18



Description

I've just run into this again (updated Zoom without thinking about it), so need to remember how I resolved it last time.

The underlying issue is that zoom lists ibus as a dependency, but this causes issues in terminator

If you split and group panes, any keystrokes get registered twice in the other panes

Terminator with two grouped panes. Input has been repeated into the other pane but each keystroke is registered twice. Bloody zoom

There's a thread where developers and maintainers flagged this to Zoom and Zoom refused to change things despite ibus not being a hard requirement (apparently it's only needed to support remote control...)



Toggle State Changes

Activity


assigned to @btasker

The issue with ibus is pretty longstanding

  • https://bugs.launchpad.net/terminator/+bug/1318542
  • https://bugs.launchpad.net/ubuntu/+source/terminator/+bug/819775
  • https://github.com/gnome-terminator/terminator/issues/623
  • https://askubuntu.com/questions/1189243/why-is-terminator-sending-double-characters-to-terminals-that-arent-selected-in

Worth noting, too, that it doesn't only affect terminator - other software is affected too.

There are workaround which involve editing terminator but have mixed results (and workarounds implemented at the terminator level have tended to break).

I think the solution I probably used last time was to patch ibus out of the deb as a dependancy

changed title from Zoom breaks Terminator by requiring ibus to Zoom breaks Terminator by {+unnecessarily +}requiring ibus

changed the description

Although I could patch it out of the zoom package again, it's only come back the next time that there's a forced upgrade.

In the absence of an actual fix, I think I want something that'll stick around between upgrades.

The issue only occurs when ibus is running, so perhaps the answer is as simple as making it exit

ibus exit 2>/dev/null

We redirect stderr because it'll print Can't connect to IBus. if it already wasn't running.

I've added that to ~/.bashrc, so whenever a new terminator window (or pane) is opened it'll kill IBus.

That's not going to help if something starts ibus when I'm midway through doing something, but I can always kill ibus manually at that point.