elementary / seeds

12 stars 6 forks source link

Desktop: remove im-config #102

Closed lenemter closed 1 year ago

lenemter commented 1 year ago

Fixes https://github.com/elementary/switchboard-plug-keyboard/issues/439 Not complete but still a fix for https://github.com/elementary/wingpanel-indicator-keyboard/issues/108

im-config provides an autostart file for ibus-daemon (the cause of https://github.com/elementary/switchboard-plug-keyboard/issues/439), which on first launch sets redundant engines in org.freedesktop.ibus.general preload-engines and then the switchboard plug syncs them to the org.gnome.desktop.input-sources sources which results in https://github.com/elementary/wingpanel-indicator-keyboard/issues/108.

Autostart file for ibus is already being created by the switchboard plug and the user can disable/enable it through Applications -> Startup.

I'm not sure if it does anything besides that, so I'd like to get review from @ryonakano since he probably knows about this more than me.

ryonakano commented 1 year ago

Hmm, is it really the solution removing im-config? Doesn't this result that CJK users can't type their language out of box unless they open Keyboard Plug (which I guess CJK users would report issues then)? FYI I installed Ubuntu 22.04 LTS in English (which means no CJK input methods installed) but im-config is installed and ibus-daemon running by default.

Can't we address elementary/switchboard-plug-keyboard#439 in another way, like by changing the overrides below for example? (which would conflict with the shortcut of Applications Menu though…)

https://github.com/elementary/default-settings/blob/37ef6062a8651875dd9d927c5730155c8b26e953/overrides/default-settings.gschema.override.in#L1-L2

lenemter commented 1 year ago

Doesn't this result that CJK users can't type their language out of box unless they open Keyboard Plug (which I guess CJK users would report issues then)?

When the user setups input methods through the switchboard plug, it will add ibus-daemon to the autostart, so it should work. Or do you mean it can cause problems directly after installation?

Can't we address https://github.com/elementary/switchboard-plug-keyboard/issues/439 in another way, like by changing the overrides below for example? (which would conflict with the shortcut of Applications Menu though…)

I just can't understand what we're doing wrong that ibus-daemon adds some random engines to preload-engines. I think there's something more to that than the default settings. I noticed that it triggers this when changing version (org.freedesktop.ibus.general version), tried the same settings on Ubuntu 22.04 and the issue didn't occur ¯\_(ツ)_/¯

ryonakano commented 1 year ago

When the user setups input methods through the switchboard plug, it will add ibus-daemon to the autostart, so it should work.

No, CJK users don't use Keyboard plug to set up input method editor; they expects input method editor for their language is already added and available after installation of OS with no additional operations, which means ibus-daemon should starts automatically without opening Keyboard plug. (if you choose your language and your keyboard during installation, you would expect the installed OS should use that language and keyboard by default. Similarly, if I choose Japanese and Japanese keyboard during installation, I expect the installed OS should use Japanese and ibus-mozc (which is Japanese input method editor) is added and I can type Japanese by default.)

I just can't understand what we're doing wrong that ibus-daemon adds some random engines to preload-engines.

I'm not sure neither unfortunately, but the behavior of elementary OS may be wrong? I installed elementary OS and Ubuntu 22.04 LTS in Russian and the value of the keys (out of box) were completely different:

Key Value on elementary OS Value on Ubuntu 22.04 LTS
org.freedesktop.ibus.general preload-engines ['xkb:us::eng', 'xkb:ru::rus'] []
org.gnome.desktop.input-sources sources [('xkb', 'ru')] [('xkb', 'us'), ('xkb', 'ru')]
lenemter commented 1 year ago

Closing because https://github.com/elementary/switchboard-plug-keyboard/pull/468 was merged.