SUMMARY On NixOS 22.11, and also on unstable (plasma 5.27.3), executing `plasmashell -v` outputs the name of the program and the version, but then segfaults. As a comparison, executing `kbroadcastnotification -v`, gives a similar output but does not segfault. Please see the issue reported on the nix repo https://github.com/NixOS/nixpkgs/issues/220168#issuecomment-1475003453 The segfault seem to be the cause for an issue on latte-dock https://github.com/NixOS/nixpkgs/issues/212828 STEPS TO REPRODUCE If you are on NixOS: 1. Open konsole 2. `plasmashell -v` will segfault If you don't have NixOS, a quick way to reproduce is: 1. Download the official NixOS virtualbox ova from https://nixos.org/download.html#nixos-virtualbox 2. Import it in VirtualBox 3. Start the vm 4. Open konsole 5. `plasmashell -v` will segfault OBSERVED RESULT [:~] % plasmashell -v plasmashell 5.26.5 zsh: segmentation fault (core dumped) plasmashell -v EXPECTED RESULT No segfault SOFTWARE/OS VERSIONS Linux/KDE Plasma: NixOS 22.11 KDE Plasma Version: 5.26.5 KDE Frameworks Version: 5.100.0 Qt Version: 5.15.7 ADDITIONAL INFORMATION This is the backtrace that I could produce. I am trying hard to get the debugging symbols working but it seems they are not loading. ``` Thread 2 "QDBusConnection" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7ffff076c640 (LWP 43533)] 0x00007ffff53bdc6c in QObject::disconnect(QObject const*, char const*, QObject const*, char const*) () from /nix/store/mcg2zb0kvb8vqlipmnyc0yyklmasg202-qtbase-5.15.7/lib/libQt5Core.so.5 (gdb) bt #0 0x00007ffff53bdc6c in QObject::disconnect(QObject const*, char const*, QObject const*, char const*) () from /nix/store/mcg2zb0kvb8vqlipmnyc0yyklmasg202-qtbase-5.15.7/lib/libQt5Core.so.5 #1 0x00007ffff5d14608 in ?? () from /nix/store/mcg2zb0kvb8vqlipmnyc0yyklmasg202-qtbase-5.15.7/lib/libQt5DBus.so.5 #2 0x00007ffff5d06568 in ?? () from /nix/store/mcg2zb0kvb8vqlipmnyc0yyklmasg202-qtbase-5.15.7/lib/libQt5DBus.so.5 #3 0x00007ffff5199e41 in ?? () from /nix/store/mcg2zb0kvb8vqlipmnyc0yyklmasg202-qtbase-5.15.7/lib/libQt5Core.so.5 #4 0x00007ffff4c33e86 in start_thread (arg=<optimized out>) at pthread_create.c:442 #5 0x00007ffff4cbad70 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 ``` This is the relevant `dbus-monitor` output: ``` method call time=1679500202.855109 sender=:1.214 -> destination=org.freedesktop.DBus serial=1 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=Hello method return time=1679500202.855125 sender=org.freedesktop.DBus -> destination=:1.214 serial=1 reply_serial=1 string ":1.214" signal time=1679500202.855132 sender=org.freedesktop.DBus -> destination=(null destination) serial=185 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged string ":1.214" string "" string ":1.214" signal time=1679500202.855154 sender=org.freedesktop.DBus -> destination=:1.214 serial=2 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired string ":1.214" method call time=1679500202.855475 sender=:1.214 -> destination=org.freedesktop.portal.Desktop serial=2 path=/org/freedesktop/portal/desktop; interface=org.freedesktop.DBus.Properties; member=Get string "org.freedesktop.portal.Screenshot" string "version" method return time=1679500202.855735 sender=:1.4 -> destination=:1.214 serial=362 reply_serial=2 variant uint32 2 method call time=1679500202.995686 sender=:1.214 -> destination=org.freedesktop.DBus serial=3 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch string "type='signal',path='/plasmashellrc',interface='org.kde.kconfig.notify',member='ConfigChanged'" method call time=1679500202.995812 sender=:1.214 -> destination=org.freedesktop.DBus serial=4 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch string "type='signal',path='/kdeglobals',interface='org.kde.kconfig.notify',member='ConfigChanged'" method call time=1679500202.996948 sender=:1.214 -> destination=org.freedesktop.DBus serial=5 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch string "type='signal',path='/BreezeStyle',interface='org.kde.Breeze.Style',member='reparseConfiguration'" method call time=1679500202.996996 sender=:1.214 -> destination=org.freedesktop.DBus serial=6 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch string "type='signal',path='/BreezeDecoration',interface='org.kde.Breeze.Style',member='reparseConfiguration'" method call time=1679500202.997079 sender=:1.214 -> destination=org.freedesktop.DBus serial=7 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch string "type='signal',path='/KGlobalSettings',interface='org.kde.KGlobalSettings',member='notifyChange'" method call time=1679500202.997089 sender=:1.214 -> destination=org.freedesktop.DBus serial=8 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=AddMatch string "type='signal',path='/KWin',interface='org.kde.KWin',member='reloadConfig'" signal time=1679500203.003356 sender=org.freedesktop.DBus -> destination=:1.214 serial=5 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost string ":1.214" signal time=1679500203.003369 sender=org.freedesktop.DBus -> destination=(null destination) serial=186 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameOwnerChanged string ":1.214" string ":1.214" string "" ```
Thank you for the bug report! Please note that Plasma 5.26.5 will not be supported for much longer by KDE; supported versions are 5.27, and 5.27 or newer. Please upgrade to the latest version as soon as your distribution makes it available to you. Plasma is a fast-moving project, and bugs in one version are often fixed in the next one.
Thank you @ Bug Janitor Service I updated my system to NixOS unstable and the crash still happens. I updated the bug description accordingly. SOFTWARE/OS VERSIONS Linux/KDE Plasma: NixOS unstable KDE Plasma Version: 5.27.3 KDE Frameworks Version: 5.104.0 Qt Version: 5.15.8
Without the relevant symbols this looks more like an issue in Qt to me, but without them I can't do anything here really
(In reply to David Redondo from comment #3) > Without the relevant symbols this looks more like an issue in Qt to me, but > without them I can't do anything here really I finally managed to build plasma-workspace with Qt debugging symbols. Please see the backtrace: ``` Thread 2 "QDBusConnection" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7ffff0a3c640 (LWP 470584)] 0x00007ffff524b5fa in QObject::disconnect (sender=0x591fa0, signal=signal@entry=0x0, receiver=receiver@entry=0x7fffec001c00, method=method@entry=0x0) at kernel/qobject.cpp:3141 3141 kernel/qobject.cpp: No such file or directory. (gdb) bt #0 0x00007ffff524b5fa in QObject::disconnect (sender=0x591fa0, signal=signal@entry=0x0, receiver=receiver@entry=0x7fffec001c00, method=method@entry=0x0) at kernel/qobject.cpp:3141 #1 0x00007ffff5cc4f40 in QObject::disconnect (member=0x0, receiver=0x7fffec001c00, this=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobject.h:359 #2 QDBusConnectionPrivate::closeConnection (this=this@entry=0x7fffec001c00) at qdbusintegrator.cpp:1162 #3 0x00007ffff5cb9f40 in QDBusConnectionManager::run ( this=0x7ffff5d24060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:189 #4 0x00007ffff50b8814 in QThreadPrivate::start ( arg=0x7ffff5d24060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:330 #5 0x00007ffff4888e86 in start_thread (arg=<optimized out>) at pthread_create.c:442 #6 0x00007ffff490fd30 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 ```
Indeed I would not suspect anything kde related at first glance, please report to qt
(In reply to David Redondo from comment #5) > Indeed I would not suspect anything kde related at first glance, please > report to qt Reported at https://bugreports.qt.io/browse/QTBUG-112258
(In reply to David Redondo from comment #5) > Indeed I would not suspect anything kde related at first glance, please > report to qt @David Redondo Please check the reply from Qt https://bugreports.qt.io/browse/QTBUG-112258?focusedCommentId=714487&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-714487. Any idea how to move forward?
Looks like only NixOS is affected
Can you run `QDBUS_DEBUG=1 plasmashell -v` and post the output here?
(In reply to Fushan Wen from comment #9) > Can you run `QDBUS_DEBUG=1 plasmashell -v` and post the output here? [:~] % QDBUS_DEBUG=1 plasmashell -v QDBusConnectionPrivate(0x7efd38001c00) : connected successfully QDBusConnectionPrivate(0x7efd38001c00) got message (signal): QDBusMessage(type=Signal, service="org.freedesktop.DBus", path="/org/freedesktop/DBus", interface="org.freedesktop.DBus", member="NameAcquired", signature="s", contents=(":1.524") ) QDBusConnectionPrivate(0x7efd38001c00) delivery is suspended QDBusConnectionPrivate(0x7efd38001c00) sending message: QDBusMessage(type=MethodCall, service="org.freedesktop.portal.Desktop", path="/org/freedesktop/portal/desktop", interface="org.freedesktop.DBus.Properties", member="Get", signature="", contents=("org.freedesktop.portal.Screenshot", "version") ) QDBusConnectionPrivate(0x7efd38001c00) got message reply: QDBusMessage(type=MethodReturn, service=":1.4", signature="v", contents=([Variant(uint): 2]) ) QDBusConnectionPrivate(0x7efd38001c00) Adding rule: "type='signal',path='/plasmashellrc',interface='org.kde.kconfig.notify',member='ConfigChanged'" QDBusConnectionPrivate(0x7efd38001c00) Adding rule: "type='signal',path='/kdeglobals',interface='org.kde.kconfig.notify',member='ConfigChanged'" QDBusConnectionPrivate(0x7efd38001c00) Adding rule: "type='signal',path='/BreezeStyle',interface='org.kde.Breeze.Style',member='reparseConfiguration'" QDBusConnectionPrivate(0x7efd38001c00) Adding rule: "type='signal',path='/BreezeDecoration',interface='org.kde.Breeze.Style',member='reparseConfiguration'" QDBusConnectionPrivate(0x7efd38001c00) Adding rule: "type='signal',path='/KGlobalSettings',interface='org.kde.KGlobalSettings',member='notifyChange'" QDBusConnectionPrivate(0x7efd38001c00) Adding rule: "type='signal',path='/KWin',interface='org.kde.KWin',member='reloadConfig'" plasmashell 5.27.3 QDBusConnectionPrivate(0x7efd38001c00) Disconnected zsh: segmentation fault (core dumped) QDBUS_DEBUG=1 plasmashell -v [:~] 139 %