Skip to content

Keyboard layout switching broken on Ubuntu 25.10 with ppa:kubuntu-ppa/backports #1466

@danielzgtg

Description

@danielzgtg

Summary

After adding ppa:kubuntu-ppa/backports to Ubuntu 25.10, fcitx5 cannot change from my Dvorak default English layout to QWERTY.

home@daniel-desktop3:~$ LC_ALL=C apt-cache policy kwin-wayland
kwin-wayland:
  Installed: 4:6.5.3-0ubuntu1~ubuntu25.10~ppa1
  Candidate: 4:6.5.3-0ubuntu1~ubuntu25.10~ppa1
  Version table:
 *** 4:6.5.3-0ubuntu1~ubuntu25.10~ppa1 500
        500 https://ppa.launchpadcontent.net/kubuntu-ppa/backports/ubuntu questing/main amd64 Packages
        100 /var/lib/dpkg/status
     4:6.4.5-0ubuntu3 500
        500 https://gpl.savoirfairelinux.net/pub/mirrors/ubuntu questing/universe amd64 Packages

Workarounds:

  • Switch to Rime Chinese and press shift
  • Run busctl emit --user /kxkbrc org.kde.kconfig.notify ConfigChanged a{saay} 1 Layout 4 10 76 97 121 111 117 116 76 105 115 116 12 68 105 115 112 108 97 121 78 97 109 101 115 11 86 97 114 105 97 110 116 76 105 115 116 3 85 115 101 for every layout group change

Steps to Reproduce

  1. Have a Dvorak English layout group and a normal QWERTY English layout group
  2. Use Kubuntu 25.10, and see there is NO problem
  3. sudo add-apt-repository ppa:kubuntu-ppa/backports && sudo apt update && sudo apt upgrade && sudo reboot
  4. Press Super+Space or run `dbus-send --type=method_call --dest=org.fcitx.Fcitx5 /controller org.fcitx.Fcitx.Controller1.SwitchInputMethodGroup string:"name of Dvorak group"
  5. Try typing, and see it is stuck in Dvorak, despite the keyboard changing in KDE systemsettings

Expected Behavior

The KDE desktop environment's active English keyboard should change like in Kubuntu 25.10 and before.

Output of fcitx5-diagnose command

System Info:

  1. uname -a:

    Linux daniel-desktop3 6.17.0-7-generic #7-Ubuntu SMP PREEMPT_DYNAMIC Sat Oct 18 10:10:29 UTC 2025 x86_64 GNU/Linux
    
  2. lsb_release -a:

    Distributor ID: Ubuntu
    Description:    Ubuntu 25.10
    Release:        25.10
    Codename:       questing
    
  3. lsb_release -d:

    Description:    Ubuntu 25.10
    
  4. /etc/lsb-release:

    DISTRIB_ID=Ubuntu
    DISTRIB_RELEASE=25.10
    DISTRIB_CODENAME=questing
    DISTRIB_DESCRIPTION="Ubuntu 25.10"
    
  5. /etc/os-release:

    PRETTY_NAME="Ubuntu 25.10"
    NAME="Ubuntu"
    VERSION_ID="25.10"
    VERSION="25.10 (Questing Quokka)"
    VERSION_CODENAME=questing
    ID=ubuntu
    ID_LIKE=debian
    HOME_URL="https://www.ubuntu.com/"
    SUPPORT_URL="https://help.ubuntu.com/"
    BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
    PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
    UBUNTU_CODENAME=questing
    LOGO=ubuntu-logo
    
  6. Desktop Environment:

    Desktop environment is kde.

  7. XDG SESSION TYPE:

    XDG_SESSION_TYPE='wayland'
    
  8. Bash Version:

    BASH_VERSION='5.2.37(1)-release'
    

Environment:

  1. DISPLAY:

    DISPLAY=':0'
    
    
    WAYLAND_DISPLAY='wayland-0'
    
  2. Keyboard Layout:

    1. 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(dvorak)+inet(evdev)+level3(ralt_switch_multikey)"        };
          xkb_geometry  { include "pc(pc105)"     };
      };
      
    2. xprop:

      _XKB_RULES_NAMES(STRING) = "evdev", "pc105", "us", "dvorak", "lv3:ralt_switch_multikey"
      
  3. Locale:

    1. All locales:

      C
      C.utf8
      en_AG
      en_AG.utf8
      en_AU.utf8
      en_BW.utf8
      en_CA.utf8
      en_DK.utf8
      en_GB.utf8
      en_HK.utf8
      en_IE.utf8
      en_IL
      en_IL.utf8
      en_IN
      en_IN.utf8
      en_NG
      en_NG.utf8
      en_NZ.utf8
      en_PH.utf8
      en_SG.utf8
      en_US.utf8
      en_ZA.utf8
      en_ZM
      en_ZM.utf8
      en_ZW.utf8
      es_ES.utf8
      fr_FR.utf8
      ja_JP.utf8
      POSIX
      zh_CN.utf8
      zh_HK.utf8
      zh_SG.utf8
      zh_TW.utf8
      
    2. Current locale:

      LANG=fr_FR.UTF-8
      LANGUAGE=en
      LC_CTYPE="fr_FR.UTF-8"
      LC_NUMERIC="fr_FR.UTF-8"
      LC_TIME=fr_FR.UTF-8
      LC_COLLATE="fr_FR.UTF-8"
      LC_MONETARY=C
      LC_MESSAGES="fr_FR.UTF-8"
      LC_PAPER="fr_FR.UTF-8"
      LC_NAME="fr_FR.UTF-8"
      LC_ADDRESS="fr_FR.UTF-8"
      LC_TELEPHONE="fr_FR.UTF-8"
      LC_MEASUREMENT="fr_FR.UTF-8"
      LC_IDENTIFICATION="fr_FR.UTF-8"
      LC_ALL=
      
  4. Directories:

    1. Home:

      /home/home
      
    2. ${XDG_CONFIG_HOME}:

      Environment variable XDG_CONFIG_HOME is not set.

      Current value of XDG_CONFIG_HOME is ~/.config (/home/home/.config).

    3. Fcitx5 Settings Directory:

      Current fcitx5 settings directory is ~/.config/fcitx5 (/home/home/.config/fcitx5).

  5. Current user:

    The script is run as home (1000).

Fcitx State:

  1. executable:

    Found fcitx5 at /usr/bin/fcitx5.

  2. version:

    Fcitx version: 5.1.14

  3. process:

    Found 2 fcitx5 processes:

      18402 fcitx5-wayland-
      18404 fcitx5
    
  4. fcitx5-remote:

    fcitx5-remote works properly.

  5. DBus interface:

    Using dbus-send to check dbus.

    Owner of DBus name org.fcitx.Fcitx5 is :1.30.

    PID of DBus name org.fcitx.Fcitx5 owner is 18404.

    Debug information from dbus:

       Group [x11::0] has 0 InputContext(s)
    Group [wayland:] has 10 InputContext(s)
      IC [3268e7f5ff884bf396debe4667322205] program:org.kde.konsole frontend:wayland cap:72 focus:1
      IC [8a64e3bdb78444a59fa64d134212dcc5] program:systemsettings frontend:dbus cap:1e001800072 focus:0
      IC [b7477f17fa984559b47f1973d52f585e] program:systemsettings frontend:wayland cap:72 focus:0
      IC [d4aaf848e7f54331a0407e8edc938672] program:org.kde.konsole frontend:wayland cap:72 focus:0
      IC [8f0be45b59a24dc1a8df437c73eb09bf] program:org.kde.konsole frontend:wayland cap:72 focus:0
      IC [d70ca2050f8d4b29a83de663223cdc93] program:kate frontend:dbus cap:e001800072 focus:0
      IC [8b3f27e913b04398941119e0c49f1d96] program:org.kde.kate frontend:wayland cap:72 focus:0
      IC [303d3c8ee2464eeb83f5ddcbc6043219] program:org.kde.konsole frontend:wayland cap:72 focus:0
      IC [aea961d5f6a244c2bf7af998e1050fd6] program:firefox frontend:wayland cap:72 focus:0
      IC [d27fdefc3f454ba6a054125742a85874] program: frontend:wayland cap:72 focus:0
    Input Context without group
    

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:

  1. ${XMODIFIERS}:

    Environment variable XMODIFIERS is set to "@im=fcitx" correctly.
    Xim Server Name from Environment variable is fcitx.

  2. XIM_SERVERS on root window:

    Xim server name is the same with that set in the environment variable.

Qt:

  1. qt4 - ${QT4_IM_MODULE}:

    Environment variable QT_IM_MODULE is set to "fcitx" correctly.

    fcitx5-qt4-immodule-probing not found.

  2. qt5 - ${QT_IM_MODULE}:

    Environment variable QT_IM_MODULE is set to "fcitx" correctly.

    Using fcitx5-qt5-immodule-probing to check the actual im module to be used under current environment:

    QT_QPA_PLATFORM=wayland
    QT_IM_MODULE=fcitx
    IM_MODULE_CLASSNAME=fcitx::QFcitxPlatformInputContext
    
  3. qt6 - ${QT_IM_MODULE}:

    Environment variable QT_IM_MODULE is set to "fcitx" correctly.

    Using fcitx5-qt6-immodule-probing to check the actual im module to be used under current environment:

    QT_QPA_PLATFORM=wayland
    QT_IM_MODULE=fcitx
    IM_MODULE_CLASSNAME=fcitx::QFcitxPlatformInputContext
    
  4. Qt IM module files:

    Found fcitx5 qt6 module: /lib/x86_64-linux-gnu/fcitx5/qt6/libfcitx-quickphrase-editor5.so.
    Found fcitx5 im module for qt5: /lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.so.
    Found unknown fcitx qt module: /lib/x86_64-linux-gnu/qt6/plugins/plasma/kcms/systemsettings/kcm_fcitx5.so.
    Found fcitx5 im module for qt6: /lib/x86_64-linux-gnu/qt6/plugins/platforminputcontexts/libfcitx5platforminputcontextplugin.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:

  1. gtk - ${GTK_IM_MODULE}:

    Environment variable GTK_IM_MODULE is set to "fcitx" correctly.

    fcitx5-gtk2-immodule-probing not found.

    Using fcitx5-gtk3-immodule-probing to check the actual im module to be used under current environment:

    GTK_IM_MODULE=fcitx
    

    Using fcitx5-gtk4-immodule-probing to check the actual im module to be used under current environment:

    GTK_IM_MODULE=fcitx
    
  2. gtk-query-immodules:

    1. gtk 2:

      Cannot find gtk-query-immodules for gtk 2

      Cannot find fcitx5 im module for gtk 2.

    2. gtk 3:

      Cannot find gtk-query-immodules for gtk 3

      Cannot find fcitx5 im module for gtk 3.

  3. Gtk IM module cache:

    1. gtk 2:

      Found immodules cache for gtk 2.24.33 at /lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache.
      Version Line:

      # Created by /usr/lib/x86_64-linux-gnu/libgtk2.0-0t64/gtk-query-immodules-2.0 from gtk+-2.24.33
      

      Failed to find fcitx5 in immodule cache at /lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache

      Cannot find fcitx5 im module for gtk 2 in cache.

    2. gtk 3:

      Found immodules cache for gtk 3.24.50 at /lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules.cache.
      Version Line:

      # Created by /usr/lib/x86_64-linux-gnu/libgtk-3-0t64/gtk-query-immodules-3.0 from gtk+-3.24.50
      

      Found fcitx5 im modules for gtk 3.24.50.

      "/usr/lib/x86_64-linux-gnu/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:*" 
      
  4. Gtk IM module files:

    1. gtk 2:

      All found Gtk 2 immodule files exist.

    2. gtk 3:

      All found Gtk 3 immodule files exist.

    3. gtk 4:

      All found Gtk 4 immodule files exist.

Configuration:

Fcitx Addons:

  1. Addon Config Dir:

    Found fcitx5 addon config directory: /usr/share/fcitx5/addon.

  2. Addon List:

    1. Found 22 enabled addons:

      Classic User Interface 5.1.14
      Clipboard 5.1.14
      DBus 5.1.14
      DBus Frontend 5.1.14
      Emoji 5.1.14
      Fcitx4 Frontend 5.1.14
      Hangul 5.1.7
      IBus Frontend 5.1.14
      Input method selector 5.1.14
      Keyboard 5.1.14
      Mozc 
      Status Notifier 5.1.14
      Notification 5.1.14
      Quick Phrase 5.1.14
      Rime 5.1.11
      Spell 5.1.14
      Unicode 5.1.14
      DBus Virtual Keyboard 5.1.14
      Wayland 5.1.14
      Wayland Input method frontend 5.1.14
      XCB 5.1.14
      X Input Method Frontend 5.1.14
      
    2. Found 1 disabled addons:

      KDE Input Method Panel 5.1.14
      
  3. Addon Libraries:

    All libraries for all addons are found.

  4. User Interface:

    Found 2 enabled user interface addons:

    Classic User Interface
    DBus Virtual Keyboard
    

Input Methods:

  1. /home/home/.config/fcitx5/profile:

    [Groups/0]
    # Group Name
    Name=Q
    # Layout
    Default Layout=us-alt-intl
    # Default Input Method
    DefaultIM=keyboard-us-alt-intl
    
    [Groups/0/Items/0]
    # Name
    Name=keyboard-us-alt-intl
    # Layout
    Layout=
    
    [Groups/1]
    # Group Name
    Name=K
    # Layout
    Default Layout=us
    # Default Input Method
    DefaultIM=hangul
    
    [Groups/1/Items/0]
    # Name
    Name=hangul
    # Layout
    Layout=us
    
    [Groups/2]
    # Group Name
    Name=Z
    # Layout
    Default Layout=us-alt-intl
    # Default Input Method
    DefaultIM=rime
    
    [Groups/2/Items/0]
    # Name
    Name=rime
    # Layout
    Layout=us
    
    [Groups/3]
    # Group Name
    Name=J
    # Layout
    Default Layout=jp-us
    # Default Input Method
    DefaultIM=mozc
    
    [Groups/3/Items/0]
    # Name
    Name=mozc
    # Layout
    Layout=jp-us
    
    [Groups/4]
    # Group Name
    Name="Group 1"
    # Layout
    Default Layout=us-dvorak
    # Default Input Method
    DefaultIM=keyboard-us-dvorak
    
    [Groups/4/Items/0]
    # Name
    Name=keyboard-us-dvorak
    # Layout
    Layout=
    
    [Groups/5]
    # Group Name
    Name=G
    # Layout
    Default Layout=gr-polytonic
    # Default Input Method
    DefaultIM=keyboard-gr-polytonic
    
    [Groups/5/Items/0]
    # Name
    Name=keyboard-gr-polytonic
    # Layout
    Layout=
    
    [Groups/6]
    # Group Name
    Name=R
    # Layout
    Default Layout=ru
    # Default Input Method
    DefaultIM=keyboard-ru
    
    [Groups/6/Items/0]
    # Name
    Name=keyboard-ru
    # Layout
    Layout=
    
    [GroupOrder]
    0="Group 1"
    1=Z
    2=Q
    3=J
    4=K
    5=G
    6=R
    

Log:

  1. date:

    Tue Dec  9 07:15:05 EST 2025
    
  2. /home/home/.config/fcitx5/crash.log:

    /home/home/.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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions