[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#694913: marked as done (unblock: im-config/0.19)



Your message dated Sun, 09 Dec 2012 00:15:58 +0100
with message-id <50C3CA2E.9060802@thykier.net>
and subject line Re: Bug#694913: unblock: im-config/0.19
has caused the Debian Bug report #694913,
regarding unblock: im-config/0.19
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
694913: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=694913
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please unblock package im-config

Applications started by dbus do not get proper keyboard input for CJK
locales as reported in http://bugs.debian.org/694446.  The proper
functioning input capability with input method is essential for CJK
environment and this must be fixed before the release.

In order to fix this problem, setting of environment variables must be
set before dbus by moving its code execution from im-launch to
70im-config_launch and daemons needs to be started after dbus
via im-launch as in 0.18.

This new split behavior is realized by changing all pre-set
configuration files as the following:
 * set environment variables if $IM_CONFIG_PHASE=1
 * start daemon programs     if $IM_CONFIG_PHASE=2

70im-config_launch and im-launch are changed to use this new feature.

The debdiff against the package in testing is attached.

unblock im-config/0.19

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (10, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.6-trunk-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff -Nru im-config-0.18/70im-config_launch im-config-0.19/70im-config_launch
--- im-config-0.18/70im-config_launch	2012-08-11 15:55:23.000000000 +0900
+++ im-config-0.19/70im-config_launch	2012-11-29 00:12:41.000000000 +0900
@@ -11,6 +11,32 @@
 
 IMLAUNCH=/usr/bin/im-launch
 
+# If already tweaked, keep hands off :-)
+# If im-config is removed but not purged, keep hands off :-)
+if [ -z "$XMODIFIERS" ] && \
+   [ -z "$GTK_IM_MODULE" ] && \
+   [ -z "$QT_IM_MODULE" ] && \
+   [ -z "$QT4_IM_MODULE" ] && \
+   [ -z "$CLUTTER_IM_MODULE" ] && \
+   [ -r /usr/share/im-config/xinputrc.common ]; then
+    IM_CONFIG_PHASE=1
+    export IM_CONFIG_PHASE
+    # initialize all im-config common functions and parameters
+    . /usr/share/im-config/xinputrc.common
+    # source the first found configuration file
+    if [ -r "$IM_CONFIG_XINPUTRC_USR" ]; then
+        . $IM_CONFIG_XINPUTRC_USR
+    elif [ -r "$IM_CONFIG_XINPUTRC_SYS" ]; then
+        . $IM_CONFIG_XINPUTRC_SYS
+    fi
+    # always export variables even for manual configuration.
+    export XMODIFIERS
+    export GTK_IM_MODULE
+    export QT_IM_MODULE
+    export QT4_IM_MODULE
+    export CLUTTER_IM_MODULE
+fi
+
 # Change $STARTUP string to im-launch while keeping the old $STARTUP string
 # as its arguments
 if [ -x "$IMLAUNCH" ]; then
diff -Nru im-config-0.18/data/20_ibus.rc im-config-0.19/data/20_ibus.rc
--- im-config-0.18/data/20_ibus.rc	2011-12-10 22:41:37.000000000 +0900
+++ im-config-0.19/data/20_ibus.rc	2012-11-28 23:22:48.000000000 +0900
@@ -1,9 +1,12 @@
 # start IBus
 # vim: set sts=4 expandtab:
 
+if [ "$IM_CONFIG_PHASE" = 2 ]; then
 # start IBus daemon
 /usr/bin/ibus-daemon --daemonize --xim
+fi
 
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
 # set variables for the plain XIM
 XMODIFIERS=@im=ibus
 
@@ -49,4 +52,4 @@
         break
     fi
 done
-
+fi
diff -Nru im-config-0.18/data/22_fcitx.rc im-config-0.19/data/22_fcitx.rc
--- im-config-0.18/data/22_fcitx.rc	2011-12-10 22:41:32.000000000 +0900
+++ im-config-0.19/data/22_fcitx.rc	2012-11-28 23:22:48.000000000 +0900
@@ -1,9 +1,12 @@
 # start fcitx 
 # vim: set sts=4 expandtab:
 
+if [ "$IM_CONFIG_PHASE" = 2 ]; then
 # start fcitx daemon
 /usr/bin/fcitx &
+fi
 
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
 # set variables for the plain XIM
 XMODIFIERS=@im=fcitx
 
@@ -50,4 +53,4 @@
         break
     fi
 done
-
+fi
diff -Nru im-config-0.18/data/24_uim.rc im-config-0.19/data/24_uim.rc
--- im-config-0.18/data/24_uim.rc	2012-08-25 11:07:35.000000000 +0900
+++ im-config-0.19/data/24_uim.rc	2012-11-28 23:22:48.000000000 +0900
@@ -1,9 +1,12 @@
 # start uim
 # vim: set sts=4 expandtab:
 
+if [ "$IM_CONFIG_PHASE" = 2 ]; then
 # start uim-xim daemon
 /usr/bin/uim-xim &
+fi
 
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
 # set variables for the plain XIM
 XMODIFIERS=@im=uim
 
@@ -66,4 +69,4 @@
 done
 
 CLUTTER_IM_MODULE=xim
-
+fi
diff -Nru im-config-0.18/data/25_hime.rc im-config-0.19/data/25_hime.rc
--- im-config-0.18/data/25_hime.rc	2012-02-05 20:17:27.000000000 +0900
+++ im-config-0.19/data/25_hime.rc	2012-11-28 23:22:48.000000000 +0900
@@ -1,9 +1,12 @@
 # start hime
 # vim: set sts=4 expandtab:
 
+if [ "$IM_CONFIG_PHASE" = 2 ]; then
 # start hime daemon
 /usr/bin/hime &
+fi
 
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
 # set variables for the plain XIM
 XMODIFIERS=@im=hime
 
@@ -43,3 +46,4 @@
 
 # hime has no clutter support, and qt3 immodule is not compiled.
 CLUTTER_IM_MODULE=xim
+fi
diff -Nru im-config-0.18/data/26_gcin.rc im-config-0.19/data/26_gcin.rc
--- im-config-0.18/data/26_gcin.rc	2012-02-05 20:17:27.000000000 +0900
+++ im-config-0.19/data/26_gcin.rc	2012-11-28 23:22:48.000000000 +0900
@@ -1,9 +1,12 @@
 # start gcin
 # vim: set sts=4 expandtab:
 
+if [ "$IM_CONFIG_PHASE" = 2 ]; then
 # start gcin daemon
 /usr/bin/gcin &
+fi
 
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
 # set variables for the plain XIM
 XMODIFIERS=@im=gcin
 
@@ -43,3 +46,4 @@
 
 # gcin has no clutter support, and qt3 immodule is not compiled.
 CLUTTER_IM_MODULE=xim
+fi
diff -Nru im-config-0.18/data/48_scim.rc im-config-0.19/data/48_scim.rc
--- im-config-0.18/data/48_scim.rc	2012-06-29 21:18:43.000000000 +0900
+++ im-config-0.19/data/48_scim.rc	2012-11-28 23:22:48.000000000 +0900
@@ -1,9 +1,12 @@
 # start SCIM
 # vim: set sts=4 expandtab:
 
+if [ "$IM_CONFIG_PHASE" = 2 ]; then
 # start SCIM daemon
 /usr/bin/scim --daemon
+fi
 
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
 # set variables for the plain XIM
 XMODIFIERS=@im=SCIM
 
@@ -95,3 +98,4 @@
         break
     fi
 done
+fi
diff -Nru im-config-0.18/data/50_hangul.rc im-config-0.19/data/50_hangul.rc
--- im-config-0.18/data/50_hangul.rc	2011-12-10 22:41:10.000000000 +0900
+++ im-config-0.19/data/50_hangul.rc	2012-11-28 23:22:48.000000000 +0900
@@ -1,8 +1,11 @@
 # start thai
 # vim: set sts=4 expandtab:
 
+if [ "$IM_CONFIG_PHASE" = 2 ]; then
 /usr/bin/nabi &
+fi
 
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
 # set variables for the plain XIM
 XMODIFIERS="@im=nabi"
 
@@ -40,3 +43,4 @@
 done
 
 CLUTTER_IM_MODULE=xim
+fi
diff -Nru im-config-0.18/data/60_thai.rc im-config-0.19/data/60_thai.rc
--- im-config-0.18/data/60_thai.rc	2011-12-05 23:44:29.000000000 +0900
+++ im-config-0.19/data/60_thai.rc	2012-11-28 23:22:48.000000000 +0900
@@ -1,6 +1,7 @@
 # start thai
 # vim: set sts=4 expandtab:
 
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
 # set variables for the plain XIM
 XMODIFIERS=@im=BasicCheck
 
@@ -30,3 +31,4 @@
 # No IM modules for Qt and Clutter for now
 QT_IM_MODULE=xim
 CLUTTER_IM_MODULE=xim
+fi
diff -Nru im-config-0.18/data/79_xim.rc im-config-0.19/data/79_xim.rc
--- im-config-0.18/data/79_xim.rc	2012-05-09 23:55:40.000000000 +0900
+++ im-config-0.19/data/79_xim.rc	2012-11-28 23:22:48.000000000 +0900
@@ -1,6 +1,8 @@
 # vim: set sts=4 expandtab:
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
 XMODIFIERS=@im=none
 GTK_IM_MODULE=xim
 QT4_IM_MODULE=xim
 CLUTTER_IM_MODULE=xim
+fi
 
diff -Nru im-config-0.18/data/80_kinput2.rc im-config-0.19/data/80_kinput2.rc
--- im-config-0.18/data/80_kinput2.rc	2011-12-05 23:44:29.000000000 +0900
+++ im-config-0.19/data/80_kinput2.rc	2012-11-28 23:22:48.000000000 +0900
@@ -4,6 +4,7 @@
 # Since this is not so used, I only provide canna case only.
 # No one uses freewnn-jserver.
 
+if [ "$IM_CONFIG_PHASE" = 2 ]; then
 # start kinput2 daemon
 if [ -x /usr/bin/kinput2-canna ]; then
     /usr/bin/kinput2-canna -xim &
@@ -12,8 +13,11 @@
     # Alternatively, you can cusomize this as:
     # /usr/bin/kinput2-canna-wnn -wnn -xim &
 fi
+fi
+
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
 XMODIFIERS=@im=kinput2
 GTK_IM_MODULE=xim
 QT_IM_MODULE=xim
 CLUTTER_IM_MODULE=xim
-
+fi
diff -Nru im-config-0.18/data/80_xsunpinyin.rc im-config-0.19/data/80_xsunpinyin.rc
--- im-config-0.18/data/80_xsunpinyin.rc	2011-12-05 23:44:29.000000000 +0900
+++ im-config-0.19/data/80_xsunpinyin.rc	2012-11-28 23:22:48.000000000 +0900
@@ -1,11 +1,15 @@
 # start xsunpinyin 
 # vim: set sts=4 expandtab:
 
+if [ "$IM_CONFIG_PHASE" = 2 ]; then
 # start xsunpinyin daemon
 /usr/bin/xsunpinyin -d
+fi
 
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
 # set variables for the plain XIM
 XMODIFIERS=@im=xsunpinyin
 GTK_IM_MODULE=xim
 QT_IM_MODULE=xim
 CLUTTER_IM_MODULE=xim
+fi
diff -Nru im-config-0.18/debian/changelog im-config-0.19/debian/changelog
--- im-config-0.18/debian/changelog	2012-08-25 13:39:20.000000000 +0900
+++ im-config-0.19/debian/changelog	2012-12-02 11:08:19.000000000 +0900
@@ -1,3 +1,16 @@
+im-config (0.19) unstable; urgency=low
+
+  * Uploading to unstable.
+
+ -- Osamu Aoki <osamu@debian.org>  Sun, 02 Dec 2012 11:07:57 +0900
+
+im-config (0.19~pre1) experimental; urgency=low
+
+  * Fix for programs stared by dbus by moving exporting of environment 
+    variables earlier. Closes: #694446
+
+ -- Osamu Aoki <osamu@debian.org>  Thu, 29 Nov 2012 00:14:56 +0900
+
 im-config (0.18) unstable; urgency=low
 
   * Updated uim support for gtk3 and add uim-xim requirement for XIM.
diff -Nru im-config-0.18/debian/README.Debian im-config-0.19/debian/README.Debian
--- im-config-0.18/debian/README.Debian	2011-12-25 13:22:53.000000000 +0900
+++ im-config-0.19/debian/README.Debian	2012-11-28 23:39:27.000000000 +0900
@@ -18,7 +18,9 @@
    available input methods on the system.
 
 4. Its configuration files are intuitive and its contents can be manually 
-   overridden easily as a POSIX shell hook script.
+   overridden easily as a POSIX shell hook script with following rules:
+     * Environment variables are set if "$IM_CONFIG_PHASE" = 1
+     * Daemon programs are started if "$IM_CONFIG_PHASE" = 2
 
 5. Menu configuration system is smart enough to detect manual changes of
    configuration by editor and honors such changes.
diff -Nru im-config-0.18/im-config.8 im-config-0.19/im-config.8
--- im-config-0.18/im-config.8	2012-08-11 10:55:57.000000000 +0900
+++ im-config-0.19/im-config.8	2012-11-28 23:51:57.000000000 +0900
@@ -70,7 +70,7 @@
 switching keyboard modes with GUI on the fly.
 .PP
 The im\-config package installs a hook script
-\fB/etc/X11/Xsession.d/80im-config_launch\fP. When X starts, it sources this
+\fB/etc/X11/Xsession.d/70im-config_launch\fP. When X starts, it sources this
 file as a POSIX shell code.  Then this hook script tries to source the user
 configuration file \fB~/.xinputrc\fP, if it exists.  Otherwise, this hook
 script sources the system configuration file \fB/etc/X11/xinit/xinputrc\fP.
@@ -87,15 +87,22 @@
 initialization code is defined in the \fI<2 digits number>\fP_\fI<input method
 name>\fP.\fBrc\fP file in \fB/usr/share/im-config/data\fP.
 .PP
-The im\-config hook script, \fB/etc/X11/Xsession.d/80im-config_launch\fP
+The im\-config hook script, \fB/etc/X11/Xsession.d/70im-config_launch\fP,
 exports following variables to X programs: $XMODIFIERS, $GTK_IM_MODULE,
 $QT_IM_MODULE, $QT4_IM_MODULE, and $CLUTTER_IM_MODULE.
 .PP
+The im\-config hook script, \fB/etc/X11/Xsession.d/70im-config_launch\fP,
+also set $STARTUP to use \fB/usr/bin/im-launch\fP for starting required
+daemons.
+.PP
 If you wish to create a custom configuration beyond what \fBim\-config\fP
 can do for you, please copy one of these initialization code files into
 \fB~/.xinputrc\fP or \fB/etc/X11/xinit/xinputrc\fP and edit it to suite your
 need.  For example, \fB02_cjkv.rc\fP tells how input method can be customized
-for each locale.  Please note that this \fI<2 digits number>\fP part of these
+for each locale.  This script should be written to set environment variables if
+"$IM_CONFIG_PHASE" = 1 and to start daemon programs if "$IM_CONFIG_PHASE" = 2 .
+.PP
+Please note that this \fI<2 digits number>\fP part of these
 configuration files may change for every new releases of the im\-config
 package.
 .PP
diff -Nru im-config-0.18/im-launch im-config-0.19/im-launch
--- im-config-0.18/im-launch	2012-08-11 16:02:23.000000000 +0900
+++ im-config-0.19/im-launch	2012-11-29 00:14:47.000000000 +0900
@@ -17,12 +17,8 @@
 
 # If already tweaked, keep hands off :-)
 # If im-config is removed but not purged, keep hands off :-)
-if [ -z "$XMODIFIERS" ] && \
-   [ -z "$GTK_IM_MODULE" ] && \
-   [ -z "$QT_IM_MODULE" ] && \
-   [ -z "$QT4_IM_MODULE" ] && \
-   [ -z "$CLUTTER_IM_MODULE" ] && \
-   [ -r /usr/share/im-config/xinputrc.common ]; then
+if [ "$IM_CONFIG_PHASE" = 1 ]; then
+    IM_CONFIG_PHASE=2
     # initialize all im-config common functions and parameters
     . /usr/share/im-config/xinputrc.common
     # source the first found configuration file
@@ -31,12 +27,6 @@
     elif [ -r "$IM_CONFIG_XINPUTRC_SYS" ]; then
         . $IM_CONFIG_XINPUTRC_SYS
     fi
-    # always export variables even for manual configuration.
-    export XMODIFIERS
-    export GTK_IM_MODULE
-    export QT_IM_MODULE
-    export QT4_IM_MODULE
-    export CLUTTER_IM_MODULE
+    unset IM_CONFIG_PHASE
 fi
-
 exec $IM_START_SESSION

Attachment: signature.asc
Description: Digital signature


--- End Message ---
--- Begin Message ---
On 2012-12-02 09:10, Osamu Aoki wrote:
> Package: release.debian.org
> Severity: normal
> User: release.debian.org@packages.debian.org
> Usertags: unblock
> 
> Please unblock package im-config
> 
> Applications started by dbus do not get proper keyboard input for CJK
> locales as reported in http://bugs.debian.org/694446.  The proper
> functioning input capability with input method is essential for CJK
> environment and this must be fixed before the release.
> 
> In order to fix this problem, setting of environment variables must be
> set before dbus by moving its code execution from im-launch to
> 70im-config_launch and daemons needs to be started after dbus
> via im-launch as in 0.18.
> 
> This new split behavior is realized by changing all pre-set
> configuration files as the following:
>  * set environment variables if $IM_CONFIG_PHASE=1
>  * start daemon programs     if $IM_CONFIG_PHASE=2
> 
> 70im-config_launch and im-launch are changed to use this new feature.
> 
> The debdiff against the package in testing is attached.
> 
> unblock im-config/0.19
> 
> [...]

Unblocked, thanks.

~Niels

--- End Message ---

Reply to: