Closed sci-42ver closed 5 months ago
add rime=5 to option.
I don’t like rime populate to /tmp so it’s explicitly disabled and use stderr instead.
On Sun, Apr 14, 2024 at 21:12 unknown @.***> wrote:
In weasel the log is well. But for fcitx5 with Exec=env LD_PRELOAD=/usr/lib/liblua5.4.so /usr/bin/fcitx5 --verbose=default=5,key_trace=5 https://groups.google.com/g/fcitx-dev/c/iMPgRYp6eKM/m/mqyBz5YJEgAJ in /usr/share/applications/org.fcitx.Fcitx5.desktop, it fails with nothing with /tmp/rime*. I use wayland in kde6 following the official instruction https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland#KDE_Plasma. Here /usr/lib/liblua5.4.so is to make easy_en work https://github.com/BlindingDark/rime-easy-en?tab=readme-ov-file#lua-native-module .
$ fcitx5-diagnose# System Info:
uname -a
:Linux fooArch 6.8.5-arch1-1 #1 SMP PREEMPT_DYNAMIC Thu, 11 Apr 2024 01:47:33 +0000 x86_64 GNU/Linux
lsb_release -a
:LSB Version: n/a Distributor ID: Arch Description: Arch Linux Release: rolling Codename: n/a
lsb_release -d
:Description: Arch Linux
/etc/lsb-release
:DISTRIB_ID="Arch" DISTRIB_RELEASE="rolling" DISTRIB_DESCRIPTION="Arch Linux"
/etc/os-release
:NAME="Arch Linux" PRETTY_NAME="Arch Linux" ID=arch BUILD_ID=rolling ANSI_COLOR="38;2;23;147;209" HOME_URL="https://archlinux.org/" DOCUMENTATION_URL="https://wiki.archlinux.org/" SUPPORT_URL="https://bbs.archlinux.org/" BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues" PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/" LOGO=archlinux-logo
Desktop Environment:
Desktop environment is
kde
.XDG SESSION TYPE:
XDG_SESSION_TYPE='wayland'
Bash Version:
BASH_VERSION='5.2.26(1)-release'
Environment:
DISPLAY:
DISPLAY=':1' WAYLAND_DISPLAY='wayland-0'
Keyboard Layout:
setxkbmap
:WARNING: Running setxkbmap against an Xwayland server xkb_keymap { xkb_keycodes { include "evdev+aliases(qwerty)" }; xkb_types { include "complete" }; xkb_compat { include "complete" }; xkb_symbols { include "pc+us+inet(evdev)" }; xkb_geometry { include "pc(pc105)" }; };
xprop
:_XKB_RULES_NAMES(STRING) = "evdev", "pc105", "us", "", ""
Locale:
All locales:
C C.utf8 en_US.utf8 POSIX zh_CN.utf8
Current locale:
LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL=en_US.UTF-8
Directories:
Home:
/home/foo_arch
${XDG_CONFIG_HOME}
:Environment variable
XDG_CONFIG_HOME
is not set.Current value of
XDG_CONFIG_HOME
is~/.config
(/home/foo_arch/.config
).Fcitx5 Settings Directory:
Current fcitx5 settings directory is
~/.config/fcitx5
(/home/foo_arch/.config/fcitx5
).Current user:
The script is run as foo_arch (1000).
Fcitx State:
executable:
Found fcitx5 at
/usr/bin/fcitx5
.version:
Fcitx version:
5.1.8
process:
Found 1 fcitx5 process:
852 fcitx5
fcitx5-remote
:
fcitx5-remote
works properly.DBus interface:
Using
dbus-send
to check dbus.Owner of DBus name
org.fcitx.Fcitx5
is:1.16
.PID of DBus name
org.fcitx.Fcitx5
owner is852
.Debug information from dbus:
Group [wayland:] has 7 InputContext(s) IC [9d4a689c4b28417384d7a483deecb21d] program:google-chrome frontend:wayland cap:72 focus:0 IC [90df313c07f1421a818b1bb47c2d6c21] program:google-chrome frontend:wayland cap:72 focus:0 IC [03f44bd034fe4035a838762694ba2a3b] program:google-chrome frontend:wayland cap:72 focus:0 IC [ae0f66c8d02846fd9f00f8493b7451e4] program:org.kde.okular frontend:wayland cap:d0072 focus:0 IC [06c5c51613b948d48d9cb16c8c9de707] program:code-insiders-url-handler frontend:wayland cap:72 focus:0 IC [977e257bea7e435f94049f65abcf0888] program:org.kde.konsole frontend:wayland cap:72 focus:1 IC [a3405452b0dd4cf19603dbccfaa8708a] program: frontend:wayland cap:72 focus:0 Group [x11::1] has 0 InputContext(s) Input Context without group
Fcitx Configure UI:
Config Tool Wrapper:
Found fcitx5-configtool at
/usr/bin/fcitx5-configtool
.Config GUI for qt:
Found
fcitx5-config-qt
at/usr/bin/fcitx5-config-qt
.Config GUI for kde:
kcmshell5
not found.Frontends setup:
The environment variable checked by this script only shows the environment under current shell. It is still possible that you did not set the environment to the whole graphic desktop session. You may inspect the actual environment variable of a certain process by using
xargs -0 -L1 /proc/$PID/environ
for a certain process that you find not working.Xim:
${XMODIFIERS}
:Environment variable XMODIFIERS is set to @.***=fcitx" correctly. Xim Server Name from Environment variable is fcitx.
XIM_SERVERS on root window:
Xim server name is the same with that set in the environment variable.
Qt:
qt4 -
${QT4_IM_MODULE}
:Please set environment variable QT_IM_MODULE to "fcitx" using the tool your distribution provides or add
export QT_IM_MODULE=fcitx
to your~/.xprofile
. See Input Method Related Environment Variables: QT_IM_MODULE.
fcitx5-qt4-immodule-probing
not found.qt5 -
${QT_IM_MODULE}
:Please set environment variable QT_IM_MODULE to "fcitx" using the tool your distribution provides or add
export QT_IM_MODULE=fcitx
to your~/.xprofile
. See Input Method Related Environment Variables: QT_IM_MODULE.It is OK to use qt5 built-in Wayland im module if your compositor fully supports text-input protocol used by qt5.
Using fcitx5-qt5-immodule-probing to check the actual im module to be used under current environment:
QT_QPA_PLATFORM=wayland QT_IM_MODULE= IM_MODULE_CLASSNAME=QtWaylandClient::QWaylandInputContext
qt6 -
${QT_IM_MODULE}
:Please set environment variable QT_IM_MODULE to "fcitx" using the tool your distribution provides or add
export QT_IM_MODULE=fcitx
to your~/.xprofile
. See Input Method Related Environment Variables: QT_IM_MODULE.It is OK to use qt6 built-in Wayland im module if your compositor fully supports text-input protocol used by qt6.
Using fcitx5-qt6-immodule-probing to check the actual im module to be used under current environment:
QT_QPA_PLATFORM=wayland QT_IM_MODULE= IM_MODULE_CLASSNAME=QtWaylandClient::QWaylandInputContext
Qt IM module files:
Found fcitx5 qt5 module:
/usr/lib/fcitx5/qt5/libfcitx-quickphrase-editor5.so
. Found fcitx5 qt6 module:/usr/lib/fcitx5/qt6/libfcitx-quickphrase-editor5.so
. Found fcitx5 im module for qt:/usr/lib/qt/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so
. Found fcitx5 im module for qt6:/usr/lib/qt6/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so
. Found unknown fcitx qt module:/usr/lib/qt6/plugins/plasma/kcms/systemsettings/kcm_fcitx5.so
.Following error may not be accurate because guessing Qt version from path depends on how your distribution packages Qt. It is not a critical error if you do not use any Qt application with certain version of Qt or you are using text-input support by Qt under Wayland. Cannot find fcitx5 input method module for Qt4.
Gtk:
gtk -
${GTK_IM_MODULE}
:Please set environment variable GTK_IM_MODULE to "fcitx" using the tool your distribution provides or add
export GTK_IM_MODULE=fcitx
to your~/.xprofile
. See Input Method Related Environment Variables: GTK_IM_MODULE.It is OK to use gtk built-in Wayland im module if your compositor fully supports text-input protocol used by gtk.
Using fcitx5-gtk2-immodule-probing to check the actual im module to be used under current environment:
GTK_IM_MODULE=fcitx5
Using fcitx5-gtk3-immodule-probing to check the actual im module to be used under current environment:
GTK_IM_MODULE=wayland
Using fcitx5-gtk4-immodule-probing to check the actual im module to be used under current environment:
gtk-query-immodules
:
gtk 2:
Found
gtk-query-immodules
for gtk2.24.33
at/usr/bin/gtk-query-immodules-2.0
. Version Line:# Created by /usr/bin/gtk-query-immodules-2.0 from gtk+-2.24.33
Found fcitx5 im modules for gtk
2.24.33
."/usr/lib/gtk-2.0/2.10.0/immodules/im-fcitx5.so" "fcitx" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" "fcitx5" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*"
gtk 3:
Found
gtk-query-immodules
for gtk3.24.41
at/usr/bin/gtk-query-immodules-3.0
. Version Line:# Created by /usr/bin/gtk-query-immodules-3.0 from gtk+-3.24.41
Found fcitx5 im modules for gtk
3.24.41
."/usr/lib/gtk-3.0/3.0.0/immodules/im-fcitx5.so" "fcitx" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" "fcitx5" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*"
Gtk IM module cache:
gtk 2:
Found immodules cache for gtk
2.24.33
at/usr/lib/gtk-2.0/2.10.0/immodules.cache
. Version Line:# Created by /usr/bin/gtk-query-immodules-2.0 from gtk+-2.24.33
Found fcitx5 im modules for gtk
2.24.33
."/usr/lib/gtk-2.0/2.10.0/immodules/im-fcitx5.so" "fcitx" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" "fcitx5" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*"
gtk 3:
Found immodules cache for gtk
3.24.41
at/usr/lib/gtk-3.0/3.0.0/immodules.cache
. Version Line:# Created by /usr/bin/gtk-query-immodules-3.0 from gtk+-3.24.41
Found fcitx5 im modules for gtk
3.24.41
."/usr/lib/gtk-3.0/3.0.0/immodules/im-fcitx5.so" "fcitx" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*" "fcitx5" "Fcitx5 (Flexible Input Method Framework5)" "fcitx5" "/usr/locale" "ja:ko:zh:*"
Gtk IM module files:
gtk 2:
All found Gtk 2 immodule files exist.
gtk 3:
All found Gtk 3 immodule files exist.
gtk 4:
All found Gtk 4 immodule files exist.
Configuration:## Fcitx Addons:
Addon Config Dir:
Found fcitx5 addon config directory:
/usr/share/fcitx5/addon
.Addon List:
Found 28 enabled addons:
Simplified and Traditional Chinese Translation 5.1.4 Classic User Interface 5.1.8 Clipboard 5.1.8 Cloud Pinyin 5.1.4 DBus 5.1.8 DBus Frontend 5.1.8 Emoji 5.1.8 Fcitx4 Frontend 5.1.8 Full width character 5.1.4 IBus Frontend 5.1.8 Input method selector 5.1.8 Keyboard 5.1.8 KDE Input Method Panel 5.1.8 Status Notifier 5.1.8 Notification 5.1.8 Pinyin 5.1.4 Extra Pinyin functionality 5.1.4 Punctuation 5.1.4 Quick Phrase 5.1.8 Rime 5.1.5 Spell 5.1.8 Table 5.1.4 Unicode 5.1.8 DBus Virtual Keyboard 5.1.8 Wayland 5.1.8 Wayland Input method frontend 5.1.8 XCB 5.1.8 X Input Method Frontend 5.1.8
Found 0 disabled addons:
Addon Libraries:
All libraries for all addons are found.
User Interface:
Found 3 enabled user interface addons:
Classic User Interface KDE Input Method Panel DBus Virtual Keyboard
Input Methods:
/home/foo_arch/.config/fcitx5/profile
:[Groups/0] # Group Name Name=pinyin # Layout Default Layout=us # Default Input Method DefaultIM=keyboard-us [Groups/0/Items/0] # Name Name=shuangpin # Layout Layout= [Groups/0/Items/1] # Name Name=keyboard-us # Layout Layout= [Groups/1] # Group Name Name=rime # Layout Default Layout=us # Default Input Method DefaultIM=rime [Groups/1/Items/0] # Name Name=rime # Layout Layout= [GroupOrder] 0=rime 1=pinyin
Log:
date
:Mon Apr 15 12:06:20 PM CST 2024
/home/foo_arch/.config/fcitx5/crash.log
:
/home/foo_arch/.config/fcitx5/crash.log
not found. Warning: the output of fcitx5-diagnose contains sensitive information, including the distribution name, kernel version, name of currently running programs, etc. Though such information can be helpful to developers for diagnostic purpose, please double check and remove as necessary before posting it online publicly.— Reply to this email directly, view it on GitHub https://github.com/fcitx/fcitx5-rime/issues/96, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAB7MZAEPL4XEOZKVV4KM4TY5NHTNAVCNFSM6AAAAABGGR5LF6VHI2DSMVQWIX3LMV43ASLTON2WKOZSGI2DENRWGAZTSNA . You are receiving this because you are subscribed to this thread.Message ID: @.***>
Fine. Then we can view the log in journalctl -b
.
In sudo journalctl -b | grep fcitx5
it has the following log when booting
Apr 15 13:13:35 CzgArch fcitx5[1090]: E2024-04-15 13:13:35.325791 addonloader.cpp:61] Failed to create addon: dbus Unable to request dbus name. Is there another fcitx already running?
Apr 15 13:13:35 CzgArch fcitx5[1090]: I2024-04-15 13:13:35.325824 addonmanager.cpp:189] Could not load addon dbus
Apr 15 13:13:35 CzgArch fcitx5[1090]: I2024-04-15 13:13:35.325892 addonmanager.cpp:296] Unloading addon pinyinhelper
Apr 15 13:13:35 CzgArch fcitx5[1090]: I2024-04-15 13:13:35.325923 addonmanager.cpp:296] Unloading addon unicode
Apr 15 13:13:35 CzgArch fcitx5[1090]: I2024-04-15 13:13:35.325949 addonmanager.cpp:296] Unloading addon waylandim
Apr 15 13:13:35 CzgArch fcitx5[1090]: I2024-04-15 13:13:35.325983 addonmanager.cpp:296] Unloading addon keyboard
Apr 15 13:13:35 CzgArch fcitx5[1090]: I2024-04-15 13:13:35.326097 addonmanager.cpp:296] Unloading addon imselector
Apr 15 13:13:35 CzgArch fcitx5[1090]: I2024-04-15 13:13:35.326117 addonmanager.cpp:296] Unloading addon clipboard
Apr 15 13:13:35 CzgArch fcitx5[1090]: I2024-04-15 13:13:35.326148 addonmanager.cpp:296] Unloading addon quickphrase
Apr 15 13:13:35 CzgArch fcitx5[1090]: I2024-04-15 13:13:35.326292 addonmanager.cpp:296] Unloading addon xcb
Apr 15 13:13:35 CzgArch fcitx5[1090]: I2024-04-15 13:13:35.326456 addonmanager.cpp:296] Unloading addon wayland
But ps aux | grep fcitx
only shows one fcitx5 running. I can use qdbus
. Fcitx5-rime works well in Chrome and Vscode using wayland. It seems the addons are loaded well by viewing 'Found 28 enabled addons:' part in fcitx5-diagnose
although the log has "Unloading addon ...".
@sci-42ver Usually it means you have multiple autostart method. You can check on pid so you know which one is the currently running one.
journalctl
seems to defaultly use the parent pid in the log
$ journalctl -b
Apr 16 08:05:39 CzgArch fcitx5[1074]: I2024-04-16 08:05:39.073414 addonmanager.cpp:296] Unloading addon wayland
Apr 16 08:05:39 CzgArch kwin_wayland_wrapper[825]: I20240416 08:05:39.075751 135316499334848 prism.cc:76] loading prism file: ...
$ ps -p 1074
PID TTY TIME CMD
$ ps -p 825
PID TTY TIME CMD
825 ? 00:00:06 fcitx5
$ ps aux | grep 825
czg_arch 825 0.4 0.8 608964 136372 ? Sl 00:05 0:06 /usr/bin/fcitx5 --verbose=default=4,rime=5 -d > /home/czg_arch/fcitx5.log 2>&1
I seems to only have one autostart method org.fcitx.Fcitx5.desktop
which will be called by Virtual keyboard.
# https://wiki.archlinux.org/title/KDE#Autostart
$ ls -Al ~/.config/autostart
total 0
$ ls -Al ~/.config/plasma-workspace/env/
total 0
$ ls -Al /etc/xdg/autostart
total 72
-rw-r--r-- 1 root root 292 Mar 17 00:40 at-spi-dbus-bus.desktop
-rw-r--r-- 1 root root 2263 Apr 7 21:35 baloo_file.desktop
-rw-r--r-- 1 root root 223 Jan 18 04:32 geoclue-demo-agent.desktop
-rw-r--r-- 1 root root 1755 Mar 28 18:53 gmenudbusmenuproxy.desktop
-rw-r--r-- 1 root root 3022 Mar 28 19:12 kaccess.desktop
-rw-r--r-- 1 root root 1419 Mar 28 18:43 kglobalacceld.desktop
-rw-r--r-- 1 root root 1218 Mar 3 22:57 org.fcitx.Fcitx5.desktop
-rw-r--r-- 1 root root 1422 Mar 28 19:04 org.kde.discover.notifier.desktop
-rw-r--r-- 1 root root 3346 Mar 28 18:53 org.kde.plasmashell.desktop
-rw-r--r-- 1 root root 5445 Mar 28 19:10 pam_kwallet_init.desktop
-rw-r--r-- 1 root root 5553 Mar 28 19:02 polkit-kde-authentication-agent-1.desktop
-rw-r--r-- 1 root root 6899 Mar 28 19:01 powerdevil.desktop
-rw-r--r-- 1 root root 5370 Jan 17 21:36 pulseaudio.desktop
-rw-r--r-- 1 root root 1683 Mar 28 18:53 xembedsniproxy.desktop
In
weasel
the log is well. But for fcitx5 withExec=env LD_PRELOAD=/usr/lib/liblua5.4.so /usr/bin/fcitx5 --verbose=default=5,key_trace=5
in/usr/share/applications/org.fcitx.Fcitx5.desktop
, it fails with generating files/tmp/rime*
. I use wayland in kde6 and follows the official instruction by using Virtual keyboard and other configs.Here
/usr/lib/liblua5.4.so
is to make easy_en work.I tried disabling
lua
plugins temporarily wherelog
functions may cause the original log unavailable, but the problem is still there.