A journey to resolve the xdg-autostart-generator issue
A package maintainer of the openSUSE M17N project since 2011. Developing packages related to input methods (e.g., IBus and Mozc) and Japanese fonts. As a member of Japan openSUSE User Group, organizing meetups, having seminars at OSS events, and publishing Geeko Magazine. openSUSE.Asia Organization Committee (2014-). openSUSE.Asia Summit 2017 Tokyo Committee Chair.
After updating KDE Plasma 5.25, several applications do not start automatically when a user login a desktop session on both openSUSE Tumbleweed and Leap 15.5. This issue affects input methods such as IBus and Fcitx, which are essential for us.
The cause of this problem is the systemd-xdg-autostart-generator. systemd-xdg-autostart-generator is a new mechanism to launch applications listed in autostart directories (e.g., /etc/xdg/autostart) at session startup. Instead of a desktop environment, systemd launches those applications as user services. Plasma adopted and started to use this mechanism by default since version 5.25.
However, due to the following problems, systemd-xdg-autostart-generator cannot start desktop files derived from a former version of openSUSE.
- systemd-xdg-autostart-generator inappropriately ignores desktop files with X-GNOME-Autostart-Phase key
- systemd-xdg-autostart-generator kills daemonized applications
In this talk, I will explain the following topics:
- A basic concept of Systemd user service and Systemd generator
- Technical details of those bugs of systemd-xdg-autostart-generator
- A root cause of Bug 2 and how state transition of a systemd service happens inside Systemd.
- A story until this problem is fixed in Leap 15.5
- 2023 October 21 - 13:30
- 30 min
- openSUSE.Asia Summit 2023
- Main Track