krunner and discover not working after upgrade

Started by finotti, 2026/09/23, 16:32:30

Previous topic - Next topic

finotti

Indeed, those packages had different versions:

$ dpkg -l|grep libcurl4-gnutls:amd64
ii  libcurl4-gnutls:amd64                                    8.22.0-1                                  amd64        easy-to-use client-side URL transfer library (GnuTLS flavour)

 $ dpkg -l|grep libselinux1:amd64
ii  libselinux1:amd64                                        3.11-2                                    amd64        SELinux runtime shared libraries

So, I just did another full-upgrade and now they seem to match:

$  dpkg -l|grep libcurl4-gnutls:amd64
ii  libcurl4-gnutls:amd64                                    8.23.0~rc1-2                              amd64        easy-to-use client-side URL transfer library (GnuTLS flavour)

$  dpkg -l|grep libselinux1:amd64
ii  libselinux1:amd64                                        3.11-2.1                                  amd64        SELinux runtime shared libraries

By krunner (and the plasmashell) still fail to start... :-(

finotti

The error message was a bit different, though, and shows some QML related issue (it seems):

$ krunner
KCrash: Application 'krunner' crashing... crashRecursionCounter = 2
KCrash: Application Name = krunner path = /usr/bin pid = 6956
KCrash: Arguments: /usr/bin/krunner
KCrash: Attempting to start /usr/lib/x86_64-linux-gnu/libexec/drkonqi
qrc:/ui/MainPage.qml:71:9: QML MainPageButton: Binding loop detected for property "icon.height":
qrc:/ui/MainPageButton.qml:15:5
qrc:/ui/MainPage.qml:53:9: QML MainPageButton: Binding loop detected for property "icon.height":
qrc:/ui/MainPageButton.qml:15:5
org.kde.drkonqi: Failed to get properties QDBusError("org.freedesktop.DBus.Error.UnknownInterface", "Unknown interface 'org.freedesktop.systemd1.Service'.")
QThread::setPriority: Cannot set priority, thread is not running
adjusting gdb profile for size MemoryFence::Size::Spacious
QSocketNotifier: Invalid socket 6 and type 'Read', disabling...

Here is a new GDB back trace:

Thread 1 "krunner" received signal SIGSEGV, Segmentation fault.
0x00007ffff3cecdc8 in FcCharSetFindLeafForward (fcs=fcs@entry=0xfefefefefefefefe, start=start@entry=0, num=num@entry=37) at ./src/fccharset.c:103
⚠️ warning: 103 ./src/fccharset.c: No such file or directory
(gdb) bt
#0  0x00007ffff3cecdc8 in FcCharSetFindLeafForward (fcs=fcs@entry=0xfefefefefefefefe, start=start@entry=0, num=num@entry=37) at ./src/fccharset.c:103
#1  0x00007ffff3cedbb1 in FcCharSetFindLeafPos (fcs=0xfefefefefefefefe, ucs4=<optimized out>) at ./src/fccharset.c:129
#2  FcCharSetFindLeaf (fcs=0xfefefefefefefefe, ucs4=<optimized out>) at ./src/fccharset.c:135
#3  IA__FcCharSetHasChar (fcs=0xfefefefefefefefe, ucs4=<optimized out>) at ./src/fccharset.c:557
#4  IA__FcCharSetHasChar (fcs=0xfefefefefefefefe, ucs4=9679) at ./src/fccharset.c:551
#5  0x00007ffff5c9d3fd in QFontEngineMultiFontConfig::shouldLoadFontEngineForCharacter (this=0x5555558488d0, at=1, ucs4=<optimized out>)
    at ./src/gui/text/unix/qfontenginemultifontconfig.cpp:30
#6  QFontEngineMulti::stringToCMap (this=0x5555558488d0, str=<optimized out>, len=<optimized out>, glyphs=0x7fffffffc940, nglyphs=0x7fffffffc90c, flags=...)
    at ./src/gui/text/qfontengine.cpp:2072
#7  0x00007ffff5d0f642 in QTextEngine::shapeText (this=0x5555558ad3d0, item=<optimized out>) at ./src/gui/text/qtextengine.cpp:1464
#8  0x00007ffff5d3f436 in QTextLine::layout_helper (this=this@entry=0x7fffffffcea0, maxGlyphs=maxGlyphs@entry=2147483647) at ./src/gui/text/qtextlayout.cpp:1875
#9  0x00007ffff5d4078f in QTextLine::setLineWidth (this=this@entry=0x7fffffffcea0, width=<optimized out>) at ./src/gui/text/qtextlayout.cpp:1626
#10 0x00007ffff76aea16 in QQuickTextPrivate::setLineGeometry (this=this@entry=0x5555559d7ff0, line=..., lineWidth=<optimized out>, height=@0x7fffffffce80: 0)
    at ./src/quick/items/qquicktext.cpp:1303
#11 0x00007ffff76af911 in QQuickTextPrivate::setupTextLayout (this=this@entry=0x5555559d7ff0, baseline=baseline@entry=0x7fffffffcff0) at ./src/quick/items/qquicktext.cpp:916
#12 0x00007ffff76b1f57 in QQuickTextPrivate::updateSize (this=this@entry=0x5555559d7ff0) at ./src/quick/items/qquicktext.cpp:493
#13 0x00007ffff76b3982 in QQuickTextPrivate::updateLayout (this=<optimized out>) at ./src/quick/items/qquicktext.cpp:267
#14 0x00007fffea14f326 in QQuickLabel::componentComplete (this=0x5555559d7f00) at ./src/quicktemplates/qquicklabel.cpp:525
#15 0x00007ffff6fd1d70 in QQmlObjectCreator::finalize (this=0x55555581e3e0, interrupt=...) at ./src/qml/qml/qqmlobjectcreator.cpp:1642
#16 0x00007ffff6f3d6c5 in QQmlComponentPrivate::complete (enginePriv=0x5555556fe800, state=state@entry=0x555555d356c0) at ./src/qml/qml/ftw/qbipointer_p.h:134
#17 0x00007ffff6f40bfc in QQmlComponentPrivate::completeCreate (this=0x555555d35640) at ./src/qml/qml/qqmlcomponent.cpp:1357
#18 0x00007ffff7f50045 in PlasmaQuick::SharedQmlEngine::completeInitialization (this=0x7fffffffd890, initialProperties=...) at ./src/plasmaquick/sharedqmlengine.cpp:272
#19 0x000055555556124f in View::View (this=this@entry=0x7fffffffd8e0, engine=engine@entry=0x7fffffffd890) at ./krunner/view.cpp:75
#20 0x000055555555db7b in main (argc=<optimized out>, argv=<optimized out>) at ./krunner/main.cpp:106

Teriarch

#17
The recursive pull in (according to your previous debug data) yield
differences of files within the following packages:
ii  libkf6idletime6:amd    646.30.0-2    amd64    library to provide information about idle time
ii  libtdb1:amd64            2:1.4.15+samba4.25.0+dfsg-1    amd64    Trivial Database - shared library
ii  python3-psutil            7.2.2-1    amd64    module providing convenience functions for managing processes (Python3)
Can you check again on coincidence of versions of those packages.
These are the only differences I am currently aware of.  Your failing krunner pulls all the following libraries,
not pulled by my working one:
/usr/lib/python3.14/lib-dynload/_asyncio.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/_bz2.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/_ctypes.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/_curses.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/_decimal.cpython-314-x86_64-linux-gnu.so

/usr/lib/python3.14/lib-dynload/_hashlib.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/_hmac.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/_interpreters.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/_lzma.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/mmap.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/_queue.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/resource.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/_ssl.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/_uuid.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3.14/lib-dynload/_zstd.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3/dist-packages/_brotli.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3/dist-packages/greenlet/_greenlet.cpython-314-x86_64-linux-gnu.so
/usr/lib/python3/dist-packages/psutil/_psutil_linux.abi3.so
/usr/lib/python3/dist-packages/psutil/_psutil_posix.abi3.so
/usr/lib/python3/dist-packages/tornado/speedups.abi3-x86_64-linux-gnu.so
/usr/lib/x86_64-linux-gnu/gconv/ISO8859-1.so
/usr/lib/x86_64-linux-gnu/gio/modules/libgvfsdbus.so
/usr/lib/x86_64-linux-gnu/gvfs/libgvfscommon.so
/usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4
/usr/lib/x86_64-linux-gnu/libdebuginfod.so.1
/usr/lib/x86_64-linux-gnu/libffi.so.8.5.0
/usr/lib/x86_64-linux-gnu/libipt.so.2
/usr/lib/x86_64-linux-gnu/libjson-c.so.5
/usr/lib/x86_64-linux-gnu/libKF6IdleTime.so.6
/usr/lib/x86_64-linux-gnu/libKF6SyntaxHighlighting.so.6
/usr/lib/x86_64-linux-gnu/libKF6Wallet.so.6
/usr/lib/x86_64-linux-gnu/libKirigamiLayoutsPrivate.so.6
/usr/lib/x86_64-linux-gnu/libKirigamiTemplates.so.6
/usr/lib/x86_64-linux-gnu/libncursesw.so.6
/usr/lib/x86_64-linux-gnu/libnss_mdns4_minimal.so.2
/usr/lib/x86_64-linux-gnu/libnss_myhostname.so.2
/usr/lib/x86_64-linux-gnu/libnss_mymachines.so.2
/usr/lib/x86_64-linux-gnu/libpython3.14.so.1.0
/usr/lib/x86_64-linux-gnu/libQt6QuickControls2Impl.so.6
/usr/lib/x86_64-linux-gnu/libreadline.so.8
/usr/lib/x86_64-linux-gnu/libselinux.so.1
/usr/lib/x86_64-linux-gnu/libsource-highlight.so.4
/usr/lib/x86_64-linux-gnu/libtdb.so.1
/usr/lib/x86_64-linux-gnu/libxxhash.so.0
/usr/lib/x86_64-linux-gnu/qt6/plugins/kf6/kirigami/platform/org.kde.desktop.so
/usr/lib/x86_64-linux-gnu/qt6/plugins/tls/libqcertonlybackend.so
/usr/lib/x86_64-linux-gnu/qt6/plugins/tls/libqopensslbackend.so
/usr/lib/x86_64-linux-gnu/qt6/qml/org/kde/config/libKF6ConfigQmlplugin.so
/usr/lib/x86_64-linux-gnu/qt6/qml/org/kde/desktop/private/liborg_kde_desktop_private.so
/usr/lib/x86_64-linux-gnu/qt6/qml/org/kde/kirigami/layouts/private/libKirigamiLayoutsPrivateplugin.so
/usr/lib/x86_64-linux-gnu/qt6/qml/org/kde/kirigami/templates/libKirigamiTemplatesplugin.so
/usr/lib/x86_64-linux-gnu/qt6/qml/org/kde/qqc2desktopstyle/private/libqqc2desktopstyleplugin.so
/usr/lib/x86_64-linux-gnu/qt6/qml/org/kde/sonnet/libsonnetquickplugin.so
/usr/lib/x86_64-linux-gnu/qt6/qml/QtQuick/Controls/impl/libqtquickcontrols2implplugin.so
All their md5sums point to current sid versions except for those mentioned in the beginning.
Can you check again what happens after the update? A possible suspect could be python3-psutil
since your version is part of forky, not of sid.

P.S: If the update does not resolve the issue, can you check whether we are faced with a local
configuration problem, try:
$ XDG_RUNTIME_DIR=/run/user/$(id -u) HOME=$(mktemp -d) krunner --replace

finotti

I think I might have found out the problem, although I am not 100% sure.

I have three systems running siduction, all up-to-date, and only one had this problem.  One of them, which does not have the problem, also has Kubuntu.  After an update yesterday, plasmashell in Kubuntu started crashing as well, but that seems to have happened to everyone using Kubuntu and Google Chrome: https://www.reddit.com/r/Kubuntu/comments/1wq4d2r/plasma_shell_crashing/

It seems that "Chrome is writing corrupt fontconfig cache data".  So, I've removed, in Kubuntu and siduction affected system, '.cache/fontconfig' and set up Chrome to use a different directory for its own font cache, as described here: https://www.reddit.com/r/Kubuntu/comments/1wo84kz/how_to_fix_crashes_when_googlechrome_corrupts/, more precisely, on this post.  I also removed, as suggested in that post, fonts-katex, to be safe.

So far, both systems are running without problems (including krunner).

I checked my three systems running siduction, all of which have Google Chrome (from Google's source) installed.  The difference seems to be that only one had fonts-katex installed...

I will keep my fingers crossed that this was the actual problem, although it does seem quite likely at this point.

@Teriarch: I cannot thank you enough for your patience and willingness to help!

Teriarch

#19
> It seems that "Chrome is writing corrupt fontconfig cache data"

That was a very difficult one indeed. In hindsight gdb was right all along
(kind of) when it reported:
(gdb) bt
#0  0x00007ffff3cecdc8 in FcCharSetFindLeafForward (fcs=fcs@entry=0xfefefefefefefefe, start=start@entry=0, num=num@entry=37) at ./src/fccharset.c:103
And we suspected library  libfontconfig to be somehow involved. But some other program corrupting the fontcache
was indeed a far fetch. Anyways, I am glad you finally resolved the issue (besides all the fun that we had).