Package: release.debian.org Severity: normal User: release.debian....@packages.debian.org Usertags: unblock
Please unblock package im-config (explain the reason for the unblock here) This is to fix very nasty latency bug on Gnome wayland: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=925160 https://bugs.kali.org/view.php?id=5357 (Reported in Kali) Unlike the previous fix for #925160 bug, I changed im-config code at imconfig_find_files_with_prefixpath_glob which reduced diff significantly following suggestion by YOSHINO-san. * Minimal change from the testing 0.39-1 upload aiming for buster release. Basically, changelog 0.40-1 to 0.40-2 are only for historical value. Actual code change recorded in the 0.41-1 entry is from 0.39-1. * The slow execution #925160 bug is addressed by disabling useless checks by imconfig_find_files_with_prefixpath_glob. * The 0.39-1 upload caused regression on the most common Gnome wayland system with ibus since Gnome also tries to set up input method. This regression is fixed by making 70-im-config and im-launch.desktop conditional to the existence of ibus-daemon. These 2 fixed Closes: #925160 * The 0.39-1 upload caused another regression of lost $HOME value. This regression is fixed by adding HOME to the env command argument in im-launch. This bug caused to miss ~/.xinputrc setting * House keeping to erase conffile introduced by some unstable packages using dpkg-maintscript-helper. Closes: #926016 (include/attach the debdiff against the package in testing) diff -Nru im-config-0.39/70-im-config im-config-0.43/70-im-config --- im-config-0.39/70-im-config 2019-03-09 02:09:03.000000000 +0900 +++ im-config-0.43/70-im-config 2019-03-31 23:02:22.000000000 +0900 @@ -1,8 +1,12 @@ #! /bin/sh +if ! [ -e "/usr/bin/ibus-daemon" ]; then + if [ -r /etc/X11/Xsession.d/70im-config_launch ]; then . /etc/X11/Xsession.d/70im-config_launch # always export variables even for manual configuration. env | grep -E '^(IM_CONFIG_PHASE|XMODIFIERS|GTK_IM_MODULE|QT_IM_MODULE|QT4_IM_MODULE|CLUTTER_IM_MODULE)=' fi + +fi diff -Nru im-config-0.39/debian/changelog im-config-0.43/debian/changelog --- im-config-0.39/debian/changelog 2019-03-09 02:09:41.000000000 +0900 +++ im-config-0.43/debian/changelog 2019-03-30 21:06:10.000000000 +0900 @@ -1,3 +1,57 @@ +im-config (0.43-1) unstable; urgency=medium + + * Minimal change from the testing 0.39-1 upload aiming for buster release. + * The slow execution #925160 bug is addressed by disabling useless + checks by imconfig_find_files_with_prefixpath_glob. + * The 0.39-1 upload caused regression on the most common Gnome wayland + system with ibus since Gnome also tries to set up input method. + This regression is fixed by making 70-im-config and + im-launch.desktop conditional to the existence of ibus-daemon. + Closes: #925160 + * The 0.39-1 upload caused another regression of lost $HOME value. + This regression is fixed by adding HOME to the env command argument + in im-launch. + * House keeping to erase conffile introduced by some unstable packages + using dpkg-maintscript-helper. Closes: #926016 + + -- Osamu Aoki <os...@debian.org> Sat, 30 Mar 2019 21:06:10 +0900 + +im-config (0.42-1) unstable; urgency=medium + + * Better fix to reopened #925160 by: + - Fix glob to use "*-*-*" + - Use "emulate -R sh" trick (not script with "find") for zsh + - Save environment variables to avoid running the problematic + slow code twice + - Check the existence of ibus-daemon to disable + systemd.environment-generator script. + - Separate wayland code from Xsession ones. + - Move one line code from desktop to separated wayland code. + * The above combination. Closes: #925160 + + -- Osamu Aoki <os...@debian.org> Sat, 30 Mar 2019 00:55:07 +0900 + +im-config (0.41-1) unstable; urgency=medium + + * Refine environment variable handling. + * Add autopkgtest. + + -- Osamu Aoki <os...@debian.org> Sun, 24 Mar 2019 11:37:32 +0900 + +im-config (0.40-1) unstable; urgency=medium + + [ YOSHINO Yoshihito ] + * Speed up by avoid using "find" but work around sddm+zsh + problem originally reported at Bug#905129. + + [ Osamu Aoki ] + * Disable im-config for Gnome on wayland by default. + Closes: #925160, #877312 + * Add im-launch-wayland to simplify code. + * Avoid running time consuming code section twice. + + -- Osamu Aoki <os...@debian.org> Sun, 24 Mar 2019 05:03:35 +0900 + im-config (0.39-1) unstable; urgency=medium [ YOSHINO Yoshihito ] diff -Nru im-config-0.39/debian/maintscript im-config-0.43/debian/maintscript --- im-config-0.39/debian/maintscript 1970-01-01 09:00:00.000000000 +0900 +++ im-config-0.43/debian/maintscript 2019-03-30 21:06:10.000000000 +0900 @@ -0,0 +1,3 @@ +rm_conffile /etc/xdg/autostart/im-launch-wayland.desktop 0.43-1~ im-config + + diff -Nru im-config-0.39/debian/README.Debian im-config-0.43/debian/README.Debian --- im-config-0.39/debian/README.Debian 2018-08-05 01:26:03.000000000 +0900 +++ im-config-0.43/debian/README.Debian 2019-03-30 21:06:10.000000000 +0900 @@ -1,9 +1,25 @@ im-config for Debian Osamu Aoki <os...@debian.org> -If you are using systemd, relogin with GDM may not restart the X session -to update the system with the newly set im-config parameters. You have -to restart the X session explicitly using the service(8) command (or -reboot the system). +See the latest info at: https://wiki.debian.org/InputMethodBuster + +For Gnome on wayland environment with ibus package installed, im-config +is automatically disabled. Gnome supports ibus internally. You still +need to enable each input engine via Gnome "Settings" -> "Region & +Languages" --> "Input Sources". + +For Gnome on wayland environment without ibus package installed, +im-config is enabled to support non-ibus input method. If you install +only uim, it is supported as the system wide choice. The start up of +uim takes several seconds. So be patient. + +For Gnome on wayland, fcitx and scim are not tested well with im-config. +You may need to disable im-config by setting it to `none`. + +For other classical X system, im-config should still work. + +In order to ensure im-config settings to be updated, you should restart +the session reboot the system. (Yes, you should be able to use +systemctl but it is prone for problems.) This documents only top down views of the im-config package and how it is used with the input method packages. You should consult the im-config(8) @@ -84,7 +100,7 @@ - Clutter IM module: ibus-clutter - EMACS (optional optimization): ibus-el [Note] - These are optional. (Otherwise, xim is used) + These are optional. (xim is not used since it is problematic) Installing them will improve user experience. Both ibus-gtk and ibus-gtk3 are required to be installed to activate GTK IM module with im-config. diff -Nru im-config-0.39/im-launch im-config-0.43/im-launch --- im-config-0.39/im-launch 2019-03-09 02:09:03.000000000 +0900 +++ im-config-0.43/im-launch 2019-03-31 07:32:36.000000000 +0900 @@ -17,6 +17,7 @@ [ "$IM_CONFIG_PHASE" = 1 ]; then # If tweaked, keep hands off :-) if ! env -i \ + HOME="$HOME" \ IM_CONFIG_SET_XMODIFIERS="$XMODIFIERS" \ IM_CONFIG_SET_GTK_IM_MODULE="$GTK_IM_MODULE" \ IM_CONFIG_SET_QT_IM_MODULE="$QT_IM_MODULE" \ diff -Nru im-config-0.39/im-launch.desktop im-config-0.43/im-launch.desktop --- im-config-0.39/im-launch.desktop 2019-03-09 02:09:03.000000000 +0900 +++ im-config-0.43/im-launch.desktop 2019-03-31 01:33:01.000000000 +0900 @@ -1,5 +1,5 @@ [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 'if ! [ -e "/usr/bin/ibus-daemon" ] && [ "x$XDG_SESSION_TYPE" = "xwayland" ] ; then exec env IM_CONFIG_CHECK_ENV=1 im-launch true; fi' TryExec=im-launch Type=Application diff -Nru im-config-0.39/share/xinputrc.common.in im-config-0.43/share/xinputrc.common.in --- im-config-0.39/share/xinputrc.common.in 2018-08-03 22:18:44.000000000 +0900 +++ im-config-0.43/share/xinputrc.common.in 2019-03-31 01:33:01.000000000 +0900 @@ -121,15 +121,10 @@ # imconfig_find_files_with_prefixpath_glob /usr/lib \ # '/usr/lib/*/gtk-2.0/*/im_fcitx.so' \ # '/usr/lib/gtk-2.0/*/im_fcitx.so' +### DISABLED for #925160 bug +# This check was meant for setting IM_* to xim or not. +# Setting IM_* to xim comes with many issues such as lost key stroke. +# Not worth doing it anymore. Let's always set IM_* to non-xim. imconfig_find_files_with_prefixpath_glob () { - _PREFIX_PATH="$1" - shift - _RESULT="" - for _STRING_WITH_GLOB in "$@"; do - _TMP_RESULT="$(find "${_PREFIX_PATH}" -path "${_STRING_WITH_GLOB}")" - if [ "x${_TMP_RESULT}" != "x" ]; then - _RESULT="$(printf '%s\n%s' "${_RESULT}" "${_TMP_RESULT}")" - fi - done - printf '%s' "${_RESULT}" + printf '%s' "FOUND" } unblock im-config/0.43-1 -- System Information: Debian Release: buster/sid APT prefers testing APT policy: (500, 'testing'), (10, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 4.19.0-4-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled