Bug 1211977

Summary: ibus is not started automatically by KDE Plasma on openSUSE Leap 15.5 RC
Product: [openSUSE] openSUSE Distribution Reporter: syuta hashimoto <syuta.hashimoto>
Component: Release NotesAssignee: Fuminobu Takeyama <ftake>
Status: RESOLVED FIXED QA Contact: Lubos Kocman <lubos.kocman>
Severity: Critical    
Priority: P5 - None CC: ftake, koga, meissner, olivier.tilloy, qzhao
Version: Leap 15.5   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE Leap 15.5   
See Also: https://bugzilla.opensuse.org/show_bug.cgi?id=1202841
https://bugzilla.opensuse.org/show_bug.cgi?id=1211336
https://bugzilla.opensuse.org/show_bug.cgi?id=1201728
https://bugzilla.opensuse.org/show_bug.cgi?id=1213156
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description syuta hashimoto 2023-06-03 01:35:15 UTC
On Leap15.5RC, ibus can not start.
We couldn't input Japanese.
Comment 1 Fuminobu Takeyama 2023-06-03 03:11:32 UTC
This bus is same as boo#1202841
https://bugzilla.opensuse.org/show_bug.cgi?id=1202841


Recent changes to 15.5 (after beta phase?) switch to use sytemd-autostart-generator to launch /etc/xdg/autostart/*.desktop on KDE Plasma session instead of KDE itself [1].

It is known that systemd-autostart-generator cannot handle desktop entries that have a command starting a daemonized process and exiting soon (in this case, ibus-daemon -d) [2].

To fix this, I will backport a newer version of ibus-autostart script to Leap 15.5.

[1] https://bugzilla.opensuse.org/show_bug.cgi?id=1201728
[2] https://bugzilla.opensuse.org/show_bug.cgi?id=1201421
Comment 2 Fuminobu Takeyama 2023-06-03 16:04:54 UTC
A fix in Tumbleweed is not applied to Leap 15.5 because ibus version is older than expected. So I took another approach; I modify ibus-autostart so that it starts ibus-daemon without `-d` if the current desktop is KDE.

The updated package is available here:
https://build.opensuse.org/package/show/home:ftake:branches:openSUSE:Leap:15.5:Update/ibus

This package is from SLE 15 SP4. I need help of SLE maintainer.


Until the updated package is released, you can avoid this problem by modifying ibus-autostart as the following:

```
#!/bin/sh

test x"$INPUT_METHOD" = x"ibus" || exit 0

# GNOME starts ibus by itself
case "$WINDOWMANAGER" in
    *gnome*)
        exit 0;;
esac

# sleep for a little while to avoid duplicate startup
# sleep 2

# boo#1211977: xdg-autostart-generator cannot launch ibus with -d
if [ "$XDG_CURRENT_DESKTOP" = "KDE" ]; then
    exec ibus-daemon --xim
fi

ibus-daemon --xim -d
exit 0
```
Comment 3 Fuminobu Takeyama 2023-06-04 02:40:31 UTC
I have submitted a maintenance request:
https://build.opensuse.org/request/show/1090703
Comment 4 Fuminobu Takeyama 2023-06-05 15:38:06 UTC
I've revised the updated package and remove X-GNOME from ibus-autostart.desktop

https://build.opensuse.org/request/show/1090952
Comment 5 Fuminobu Takeyama 2023-07-06 15:05:42 UTC
Also considering fix in systemd side.
Although some issues have been already resolved, but it still has problem:
https://github.com/systemd/systemd/issues/27919
Comment 7 Olivier Tilloy 2023-08-03 09:41:09 UTC
Re-posting here my question from build.suse.de:

Are all the changes to ibus-autostart.desktop (removal of all X-GNOME-* entries) really necessary?

According to systemd-xdg-autostart-generator's man page, no service will be generated if X-GNOME-Autostart-Phase is set to any value, so that one should be removed indeed. But the other keys (X-GNOME-AutoRestart and X-GNOME-Autostart-Notify) don't seem to be considered, so they could stay?
Comment 8 Fuminobu Takeyama 2023-08-03 13:54:25 UTC
(In reply to Olivier Tilloy from comment #7)
> But the other keys (X-GNOME-AutoRestart and
> X-GNOME-Autostart-Notify) don't seem to be considered, so they could stay?

Yes, they should be able to stay.
I removed them all (in Tumbleweed) because ibus-autostart does nothing under GNOME.
Comment 9 Fuminobu Takeyama 2023-08-03 14:04:28 UTC
Since some other packages need to be fixed, fixing KDE or systemd side will be a better approach.
https://bugzilla.opensuse.org/show_bug.cgi?id=1213156
Comment 10 Olivier Tilloy 2023-08-03 15:00:33 UTC
Does this mean that https://build.suse.de/request/show/302830 should be rejected, or is it still needed until KDE and/or systemd are patched?
Comment 11 Fuminobu Takeyama 2023-08-03 16:25:08 UTC
(In reply to Olivier Tilloy from comment #10)
> Does this mean that https://build.suse.de/request/show/302830 should be
> rejected, or is it still needed until KDE and/or systemd are patched?

I hope this fix will be unnecessary soon (but neither of KDE and systemd maintainer would not accept the fixes for now).
Comment 12 Maintenance Automation 2023-09-07 09:10:29 UTC
SUSE-OU-2023:3550-1: An update that has one fix can now be installed.

Category: optional (moderate)
Bug References: 1211977
Sources used:
openSUSE Leap 15.5 (src): ibus-1.5.25-150400.3.3.1
Desktop Applications Module 15-SP4 (src): ibus-1.5.25-150400.3.3.1
Desktop Applications Module 15-SP5 (src): ibus-1.5.25-150400.3.3.1
openSUSE Leap 15.4 (src): ibus-1.5.25-150400.3.3.1

NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination.
Comment 13 syuta hashimoto 2023-09-10 09:23:35 UTC
I confirmed ibus updated and start automatic when KDE plasma start.
You found many issues related this issue. Please create new issue about that.

Thanks your work.