Please unblock package im-config.
[ Reason ]
The file /etc/xdg/autostart/im-launch.desktop had an Exec line which
proved to be incompatible with the parser of systemd boot. That Exec
line has therefore been simplified in im-config 0.55-2.
[ Impact ]
The issue resulted in im-config failing to start the IM framework, e.g.
fcitx5, when logging in to a Plasma (Wayland) session. That's an
annoyance which will be fixed with the version in unstable.
[ Tests ]
Manually installed the binary built by version 0.55-2 of the im-config
source, and confirmed that the bug was fixed as expected.
[ Risks ]
The change is a targeted trivial fix to address the issue at hand. Can't
think of any adverse side effects.
[ Checklist ]
[x] all changes are documented in the d/changelog
[x] I reviewed all changes and I approve them
[x] attach debdiff against the package in testing
diff --git a/debian/changelog b/debian/changelog
@@ -1,3 +1,11 @@
+im-config (0.55-2) unstable; urgency=medium
+ * systemd boot compatible Exec line in im-launch.desktop
+ - Fixes issue with the IM framework not being started automatically
+ when logging in to a Plasma (Wayland) session (closes: #1033097).
+ -- Gunnar Hjalmarsson <gunna...@debian.org> Mon, 20 Mar 2023 11:47:27 +0100
im-config (0.55-1) unstable; urgency=medium
* Set GTK_IM_MODULE in GNOME on Xorg sessions (closes: #1031227)
diff --git a/debian/patches/series b/debian/patches/series
@@ -0,0 +1 @@
new file mode 100644
@@ -0,0 +1,55 @@
+From: Gunnar Hjalmarsson <gunna...@debian.org>
+Date: Mon, 20 Mar 2023 09:55:59 +0100
+Subject: systemd boot compatible Exec line in im-launch.desktop
+im-launch.desktop is autostarted, and the Exec line has up to now
+contained a condition so /usr/bin/im-launch has only been started in
+However, as from KDE Plasma 5.25 systemd boot is enabled by default,
+and that feature fails to parse the previous Exec line in
+im-launch.desktop. An example consequence is that fcitx5 is not started
+automatically at login to a KDE Plasma (Wayland) or Kubuntu (Wayland)
+This commit fixes the issue by moving the mentioned condition from
+im-launch.desktop to the top of /usr/bin/im-launch, resulting in an
+Exec line simple enough for systemd boot to parse.
+ im-launch | 6 ++++++
+ im-launch.desktop | 2 +-
+ 2 files changed, 7 insertions(+), 1 deletion(-)
+diff --git a/im-launch b/im-launch
+index 4845f92..721a24a 100755
+@@ -13,6 +13,12 @@ if [ "x$1" = "x-h" ] || [ "x$1" = "x--help" ] || [ "x$1" =
"x" ]; then
+ exit 1
++if [ "$1" = 'true' ] && [ "$XDG_SESSION_TYPE" != 'wayland' ]; then
++ # This program was autostarted, but was already run at the
++ # start of an X session, so don't run it now too.
++ exit 0
+ if [ "$IM_CONFIG_CHECK_ENV" = 1 ] && \
+ [ "$IM_CONFIG_PHASE" = 1 ]; then
+ # If tweaked, keep hands off :-)
+diff --git a/im-launch.desktop b/im-launch.desktop
+index 7e3b624..e8d5e70 100644
+@@ -1,6 +1,6 @@
+ [Desktop Entry]
+-Exec=sh -c 'if [ "x$XDG_SESSION_TYPE" = "xwayland" ] ; then exec env
IM_CONFIG_CHECK_ENV=1 im-launch true; fi'
++Exec=sh -c 'IM_CONFIG_CHECK_ENV=1 im-launch true'