Package: release.debian.org
Severity: normal
User: release.debian....@packages.debian.org
Usertags: unblock
X-Debbugs-Cc: debian-input-met...@lists.debian.org

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

--
Cheers,
Gunnar Hjalmarsson
diff --git a/debian/changelog b/debian/changelog
index 
c5ae651c299c0765505947febdacd33e21490a5d..8f623fc6535339c94bee79c31ce9e891a888d3d5
 100644
--- 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
index 
e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6639a6d9c04ac850f554da420891f57a857f0275
 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -0,0 +1 @@
+systemd_boot_compatible_Exec_line_in_im-launch.desktop.patch
diff --git 
a/debian/patches/systemd_boot_compatible_Exec_line_in_im-launch.desktop.patch 
b/debian/patches/systemd_boot_compatible_Exec_line_in_im-launch.desktop.patch
new file mode 100644
index 
0000000000000000000000000000000000000000..1f0fdbc2aeae3757dc77e9f5f673d12c663d8150
--- /dev/null
+++ 
b/debian/patches/systemd_boot_compatible_Exec_line_in_im-launch.desktop.patch
@@ -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
+wayland sessions.
+
+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)
+session.
+
+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.
+
+Bug-KDE: https://bugs.kde.org/show_bug.cgi?id=455252
+Bug-Debian: https://bugs.debian.org/1033097
+Origin: https://salsa.debian.org/input-method-team/im-config/-/commit/5a979231
+---
+ 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
+--- a/im-launch
++++ b/im-launch
+@@ -13,6 +13,12 @@ if [ "x$1" = "x-h" ] || [ "x$1" = "x--help" ] || [ "x$1" = 
"x" ]; then
+     exit 1
+ fi
+ 
++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
++fi
++
+ 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
+--- a/im-launch.desktop
++++ b/im-launch.desktop
+@@ -1,6 +1,6 @@
+ [Desktop Entry]
+ Name=im-launch
+-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'
+ TryExec=im-launch
+ Type=Application
+ NoDisplay=true

Reply via email to