Summary: | fcitx5 qt6 library cause desktop failed to start, their maintainer suggests rebuilding the package against new qt | ||
---|---|---|---|
Product: | [KDE Neon] neon | Reporter: | hyperrecursion |
Component: | Packages Testing Edition | Assignee: | Carlos De Maine <carlosd.kde> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | cgdlut, hyperrecursion, jr, leonard, neon-bugs, songhda, trulyliu, wengxt |
Priority: | NOR | ||
Version First Reported In: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Neon | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
hyperrecursion
2024-04-13 16:24:53 UTC
Same problem encountered, please help to fix this problem. Same problem here. In short after you installing fcitx5* in the lastest KDE Neon, you might get a black screen after you entered the log in password upon rebooting or logging out. While you still can switch to tty through ctrl+alt+f3, but unable to log into the plasma desktop. It seems this issue is introduced in fcitx-config-qt 5.1.4-0xneon+22.04+jammy+release+build3 whereas the older 5.1.3-1+22.04+jammy+release+build1 works fine. Is there an archive of the prior packages available? For example, something similar to https://snapshot.debian.org/ for Debian? Same issue here. As a temporary solution, ctrl+alt+f3 to switch to tty. install ibus, and use im-config to switch to ibus IME. reboot. plasma-desktop will display normally afterwards. Fcitx dev here, I downloaded https://files.kde.org/neon/images/testing/20240423-0253/neon-testing-20240423-0253.iso and installed it in qemu. So indeed, any program that loads fcitx5's im module would crash immediately. But with my experience on archlinux, it should be fine with either Qt6.6 or Qt 6.7. So I just try this on kwrite, QT_DEBUG_PLUGINS=1 QT_IM_MODULE=fcitx kwrite And it shows following lines: ``` { "IID": "org.qt-project.Qt.QPlatformInputContextFactoryInterface.5.1", "MetaData": { "Keys": [ "fcitx", "fcitx5" ] }, "archlevel": 1, "className": "QFcitx5PlatformInputContextPlugin", "debug": false, "version": 394752 } ``` Comparing to other plugins, they are showing "395008". 394752 is 0x60600, and 395008 is 0x60700, which is the Qt version (major<<16|minor<<8|patch). It clearly indicates that the qt6 part with in fcitx5-qt is built against Qt 6.6, not the Qt 6.7. For qpa platform plugin it's unfortunate that it need to be rebuilt against any Qt minor update. I also tried to rebuild with neon's deb source. Problem also go away, so it seems that a rebuild should fix the issue. For users who hit this issue but still want to use fcitx5, if you ARE planning using wayland, you can: 1. Go to TTY (Ctrl+Alt+F(1,2,3...) 2. Run "im-config -n none", this will disable im-config profile and all the environment variable like QT_IM_MODULE to be set. This is actually OK if you're gonna use wayland. 3. Now you should be able to login, you can go to Systemsettings->Virtual keyboard-> select fcitx5 there. You should be able to use fcitx5 input method as long as application is running under wayland. For more details on other thing to setup, check https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland#KDE_Plasma @Weng Xuetian Which package should be rebuilt? Could you give a simple instruction? (In reply to Weng Xuetian from comment #6) > Fcitx dev here, I downloaded > https://files.kde.org/neon/images/testing/20240423-0253/neon-testing- > 20240423-0253.iso and installed it in qemu. > > So indeed, any program that loads fcitx5's im module would crash > immediately. But with my experience on archlinux, it should be fine with > either Qt6.6 or Qt 6.7. > > So I just try this on kwrite, QT_DEBUG_PLUGINS=1 QT_IM_MODULE=fcitx kwrite > And it shows following lines: > ``` > { > "IID": "org.qt-project.Qt.QPlatformInputContextFactoryInterface.5.1", > "MetaData": { > "Keys": [ > "fcitx", > "fcitx5" > ] > }, > "archlevel": 1, > "className": "QFcitx5PlatformInputContextPlugin", > "debug": false, > "version": 394752 > } > ``` > Comparing to other plugins, they are showing "395008". > 394752 is 0x60600, and 395008 is 0x60700, which is the Qt version > (major<<16|minor<<8|patch). > > It clearly indicates that the qt6 part with in fcitx5-qt is built against Qt > 6.6, not the Qt 6.7. For qpa platform plugin it's unfortunate that it need > to be rebuilt against any Qt minor update. > > I also tried to rebuild with neon's deb source. Problem also go away, so it > seems that a rebuild should fix the issue. > > For users who hit this issue but still want to use fcitx5, if you ARE > planning using wayland, you can: > 1. Go to TTY (Ctrl+Alt+F(1,2,3...) > 2. Run "im-config -n none", this will disable im-config profile and all the > environment variable like QT_IM_MODULE to be set. This is actually OK if > you're gonna use wayland. > 3. Now you should be able to login, you can go to Systemsettings->Virtual > keyboard-> select fcitx5 there. You should be able to use fcitx5 input > method as long as application is running under wayland. > > For more details on other thing to setup, check > https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland#KDE_Plasma Many thanks Orz (In reply to trulyliu from comment #7) > @Weng Xuetian > Which package should be rebuilt? Could you give a simple instruction? apt source fcitx5-qt and use dpkg-buildpackage, you probably want to look up how to build it and you'll also hit some deb lint error... I'm not so sure how neon build the new version of package without https://invent.kde.org/neon/backports-jammy/fcitx5-qt updated with debian upstream.. but it might be a good idea to sync with upstream debian/ in the next update.. (In reply to Weng Xuetian from comment #9) > (In reply to trulyliu from comment #7) > > @Weng Xuetian > > Which package should be rebuilt? Could you give a simple instruction? > > apt source fcitx5-qt and use dpkg-buildpackage, you probably want to look up > how to build it and you'll also hit some deb lint error... > > I'm not so sure how neon build the new version of package without > https://invent.kde.org/neon/backports-jammy/fcitx5-qt updated with debian > upstream.. but it might be a good idea to sync with upstream debian/ in the > next update.. Thanks. I successfully built these packages with some small modifications of files under debian dir. After installing these packages, and uninstalling fcitx-frontend-qt5 and fcitx-frontend-qt6, The plasma-desktop doesn't crash anymore, and fcitx5 works perfectly. I put these packages on github. https://github.com/trulyliu/neon-fictx5-qt/tree/main/deb (In reply to trulyliu from comment #10) > (In reply to Weng Xuetian from comment #9) > > (In reply to trulyliu from comment #7) > > > @Weng Xuetian > > > Which package should be rebuilt? Could you give a simple instruction? > > > > apt source fcitx5-qt and use dpkg-buildpackage, you probably want to look up > > how to build it and you'll also hit some deb lint error... > > > > I'm not so sure how neon build the new version of package without > > https://invent.kde.org/neon/backports-jammy/fcitx5-qt updated with debian > > upstream.. but it might be a good idea to sync with upstream debian/ in the > > next update.. > > > Thanks. > > I successfully built these packages with some small modifications of files > under debian dir. > After installing these packages, and uninstalling fcitx-frontend-qt5 and > fcitx-frontend-qt6, > The plasma-desktop doesn't crash anymore, and fcitx5 works perfectly. > > I put these packages on github. > https://github.com/trulyliu/neon-fictx5-qt/tree/main/deb Good job, Wait for your files to be merged into the official repository. sorry for the delay. this has now been rebuilt and is in the archives |