Bug#891068: im-config: Failed to setup fcitx when zsh used as login shell
Control: tag -1 - upstream ¡Hola! El 2018-03-21 a las 19:04 +0800, 崔灏 escribió: Hi, Hmmm SDDM change shell parsing Xsession, then things may break. Are you sure im-config is the problem? I agree it's likely SDDM is to blame, not im-config. I think that what is to blame here is the zsh's nomatch option that's being set to be used even in a non interactive script. Please move this option to your zshrc file. As some background information: Running the XSession without the Xsession wrapper shipped by sddm ignores the /etc/profile and $HOME/.profile files (and in particular for zsh, also the zlogin and zprofile files), this causes that the shells run under the graphical user session to start an interactive session without loading the commands set to be run in a login session, which is an undesirable state. In particular for zsh this also causes an incomplete PATH. The workaround that's in place in sddm has been in use for many years now (it was previously part of kdm), and fcitx has been successfully used with it. Happy hacking, -- "The cheapest, fastest and most reliable components of a computer system are those that aren't there." -- Gordon Bell Saludos /\/\ /\ >< `/ signature.asc Description: PGP signature
Bug#891068: im-config: Failed to setup fcitx when zsh used as login shell
control: reassign -1 src:sddm control: retitle -1 sddm should call Xsession with default shell (/bin/sh) Hi, As discussed in https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=891068 sddm calls Xsession with user login shell instead of default shell (/bin/sh). This cuases problem if user uses zsh etc. Regards, Osamu
Bug#891068: im-config: Failed to setup fcitx when zsh used as login shell
Hi, > Hmmm SDDM change shell parsing Xsession, then things may break. > > Are you sure im-config is the problem? I agree it's likely SDDM is to blame, not im-config. Maybe I should "forward" this bug to sddm package or its upstream. I am new to Debian's reportbug. How should I deal with this bug report? -- 崔灏 / CUI Hao Homepage: i-yu.me Twitter: @cuihaoleo
Bug#891068: im-config: Failed to setup fcitx when zsh used as login shell
Hi, > Not sure whether im-config or display manager (SDDM) should be blamed. > Personally I think that system-wide Xsession scripts should be called > with system default shell (/bin/sh) instead of user login shell. Xsession scripts should be called with system default shell (/bin/sh) --- I agree. I have /bin/sh = dash. So this is OK. If you replace system default shell (/bin/sh) with zsh, it may break things. Zsh is mostly /bin/sh compatible but not 100%. Hmmm SDDM change shell parsing Xsession, then things may break. Are you sure im-config is the problem? Osamu
Bug#891068: im-config: Failed to setup fcitx when zsh used as login shell
Package: im-config Version: 0.34-1 Severity: important Tags: upstream Dear Maintainer, On a fresh Debian testing desktop with KDE Plasma and zh_CN locale, fcitx is the default input method. im-config Xsession scripts should set up environment variables for desktop. After changing user login shell to zsh, im-config failed to set up environment variables correctly, which makes fcitx not work in QT windows. The problem is that Xsession scripts is executed with user login shell, and some im-config scripts don't behave properly with zsh. For example, in /usr/share/im-config/data/22_fcitx.rc: ``` for IM_CONFIG_MARKER in /usr/lib/*/gtk-2.0/*/immodules/im-fcitx.so \ /usr/lib/gtk-2.0/*/immodules/im-fcitx.so ; do if [ -e $IM_CONFIG_MARKER ]; then IM_CONFIG_MARKER2=1 break fi done ``` zsh refused to enter the loop because globbing has no matches: ``` zsh: no matches found: /usr/lib/gtk-2.0/*/immodules/im-fcitx.so ``` According to: http://zsh.sourceforge.net/Doc/Release/Options.html This (nomatch) is the default behaviour for zsh (and maybe csh?), but not bash (which will simply delete it from the argument list and generate no errors). Not sure whether im-config or display manager (SDDM) should be blamed. Personally I think that system-wide Xsession scripts should be called with system default shell (/bin/sh) instead of user login shell. -- System Information: Debian Release: buster/sid APT prefers testing APT policy: (500, 'testing'), (50, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.14.0-3-amd64 (SMP w/8 CPU cores) Locale: LANG=zh_CN.UTF-8, LC_CTYPE=zh_CN.UTF-8 (charmap=UTF-8), LANGUAGE=zh_CN:zh (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages im-config depends on: ii gettext-base 0.19.8.1-4 Versions of packages im-config recommends: ii kde-baseapps-bin 4:16.08.3-3 ii kdialog 4:17.08.3-2 ii whiptail 0.52.20-2 ii x11-common1:7.7+19 ii zenity3.27.90-1 im-config suggests no packages. -- no debconf information