Open rapiz1 opened 3 years ago
I need the segfault logs, not the logs from when it was running fine. Unfortunately the DrKonqi is in the system tray, which you can't access when plasmashell has crashed.
Krunner should still work even if plasmashell
crashes, so just press Alt+F2
during the black screen. Then run plasmawindowed org.kde.plasma.systemtray
to show the system tray in an independant window.
Copy the stack trace in the developer info tab (don't submit it to kde).
You should also be able to open firefox with krunner too.
Gonna need to be more specific. I installed plasma5-applets-eventcalendar
via AUR. Looks like KHolidays is displayed. Haven't logged into Google Calendar yet.
It seems that only v69 release is compatible with qt-declarative 5.15.1. I tried old v66, v67, and v68, all of them break plasmashell.
Then it's either: https://github.com/Zren/plasma-applet-eventcalendar/compare/v68...v69
canberra-gtk-play
and using libcanberra.so
calls in python (neither should crash plasmashell
). I may have left a QtMultimedia import somewhere though.Will check both this afternoon. Thanks for figuring out that it's probably people using an older version of the widget.
Does AUR not automatically update? Or are people not uninstalling eventcalendar in ~/.local/share/plasma/plasmoids/
before installing the AUR package to /usr/share/plasma/plasmoids/
?
# First uninstall v69
kpackagetool5 --type=Plasma/Applet --remove org.kde.plasma.eventcalendar # ~/.local/share/plasma/plasmoids/...
pacman -R plasma5-applets-eventcalandar # /usr/share/plasma/plasmoids/...
# Then installed v68 from git
git clone https://github.com/Zren/plasma-applet-eventcalendar
cd plasma-applet-eventcalendar
git checkout v68
kpackagetool5 --type=Plasma/Applet --install package/
kstart5 -- plasmashell --replace
# crashed!
Now to isolate the commit that fixes the bug with --upgrade
:
git checkout 83e08ab; kpackagetool5 --type=Plasma/Applet --upgrade package/; kstart5 -- plasmashell --replace
Note that 83e08ab
works, but the commit before and after crash plasma. Also note to self, I forked a v68release
branch for the v68 so that the major changes would all go in v69.
Having this applet installed from AUR should get updated in the user side, right?
I don't use Arch/AUR, so I don't know if it updates manually or when pacman updates.
To check if you have an older version of eventcalendar installed, run:
grep Version ~/.local/share/plasma/plasmoids/org.kde.plasma.eventcalendar/metadata.desktop /usr/share/plasma/plasmoids/org.kde.plasma.eventcalendar/metadata.desktop
If you see:
/home/zren/.local/share/plasma/plasmoids/org.kde.plasma.eventcalendar/metadata.desktop:X-KDE-PluginInfo-Version=66
/usr/share/plasma/plasmoids/org.kde.plasma.eventcalendar/metadata.desktop:X-KDE-PluginInfo-Version=69
Then you have 2 versions installed. The ~/.local/share
with v66 (for the local user) overrides the /usr/share
v69 install (for all users).
To enter this bug, you would have installed v66 from the Add Widgets > Download New Widgets. It installs to ~/.local/share/
as you never entered your password to install it, and it only installed to the logged in user.
Later on, the user may have noticed plasma5-applets-eventcalendar
on the AUR and installed it as sudo/root. That installed it for all users.
Since the user never uninstalled the ~/.local/share
version, Plasma kept using the older v66.
To fix, delete the ~/.local/share/plasma/plasmoids/org.kde.plasma.eventcalendar
folder to uninstall that.
For users in other distros, the Discover updater used to update widgets in ~/.local/share
, but it seems buggy atm (fixed in Plasma 5.20 apparently). So make sure you have updated to v69.
grep Version ~/.local/share/plasma/plasmoids/org.kde.plasma.eventcalendar/metadata.desktop
To fix, delete the ~/.local/share/plasma/plasmoids/org.kde.plasma.eventcalendar
folder to uninstall the old version, then reinstall it via Add Widgets > Download New Widgets.
If only I had came here first. I ended up coming to the same solution after 2 hours of messing about :laughing:
I had an old version installed and it crashed plasmashell after an update. I ended up removing my plasma-org.kde.plasma.desktop-appletsrc
config and starting from scratch. But even after installing the AUR package it would still crash.
Eventually I found that I had to manually remove the local folder as described above. For some reason KDE doesn't seem to be able to do it from the widget gui menu. IIRC I also had similar problems trying to install it from there in the first place.
Does AUR not automatically update?
There is probably a way to have it auto update but from my experience on Arch even the normal non AUR updates are manual by default.
And thank you so much for making this widget! It is vastly superior to all other clocks I have tried. :smiley:
I was struggling with this crash for a while until I finally found it may be related to eventcalendar, and then Googling that led me here.
I only had the ~/.local/share
install, so I deleted the folder as instructed, and installed plasma5-applets-eventcalendar
from AUR and that solved it indeed. Thank you @Zren !
Does AUR not automatically update?
That depends. AUR is stuff not officially supported, so it's a case of "you are on your own, it's your responsibility to keep stuff in order." Some people do everything manually, while others, like me, use a so called "AUR helper" which is like a package manager for AUR, so when I run a system update it updates everything, AUR included.
I think the issue is that lot of people, me included, uses or used the "Add Widgets > Download New Widgets" route to get plasmoids.
I'm not sure if I'd be butting in here, or adding to the topic. "Crash on arch (Qt 5.15.1)" fits my issue, which is also connected to qt5-declarative.
In my case, it's not EventCalandar, but the much more basic PanelSpacer. In short, setting a panel spacer to be flexible vs. static, crashes plasmashell, and the segfault is coming from libQt5Qml 5.15.1. The twist is that this issue only manifests in archlinux32, and not at all with the 64-bit archlinux.
For example, this code works on both platforms:
panelSpacer = panel.addWidget("org.kde.plasma.panelspacer");
panelSpacer.writeConfig("expanding", "false");
panelSpacer.writeConfig("length", 32);
This works only on the 64-bit platform, but causes a plasmashell crash on the 32-bit platform:
panelSpacer = panel.addWidget("org.kde.plasma.panelspacer");
Same with this this - works on 64-bit arch, crashes plasmashell on 32-bit arch32:
panelSpacer = panel.addWidget("org.kde.plasma.panelspacer");
panelSpacer.writeConfig("expanding", "true");
I'm attaching the stack strace which poiints directly to QV4::QObjectWrapper::getProperty
It'd be great to get some feedback on this, even if you'd prefer I open this as a separate ticket.
Hello, adding to this to report that v69 of the applet still crashes latte-dock. I run Manjaro KDE and I have just updated Qt to 5.15.1, I had the eventcalendar widget on a latte dock instead of a normal plasma panel so that is what crashed upon rebooting. I have deleted the local version from Discover and installed v69 from the AUR, now the behaviour with regular plasma panels is as expected but if I add the widget to my latte dock then that is not able to restart (manually or via reboot).
https://www.reddit.com/r/kde/comments/j48t0f/today_in_my_kde_manjaro_after_an_update_and_a/
Has a screenshot with a stacktrace. It seems the plasmashell
segfault is printed to journalctl -b0
by the systemd-coredump
process.
It appears to be some bug in GridLayout
, which makes sense as when I bisected my commits earlier, this commit might have fixed things. It made no sense why it fixed it though. Added the ?w=1
to ignore whitespace changes.
I still need to do some testing to reproduce that this fixes it, as I remember being uncertain that was the right commit when I first tested in an Arch VM.
Ooooh, looks like coredumpctl -1 info
is what you're suppose to use to find the last segfault. journalctl -b0
can display them, but I was wondering why journalctl -b0 _COMM=systemd-coredump
was not working to filter just them.
It looks like the implicitSize
of the GridLayout
has a deep stack in the popup. Possible infinite loop? or just a deep nest of visual elements? Once I removed the useless ColumnLayout
and the pointless Layout.fillWidth
+ Layout.fillHeight
it began to work for users in v69.
// PopupView.qml (FullRepresentation)
MouseArea {
ColumnLayout {
anchors.fill: parent
ColumnLayout {
Layout.fillWidth: true
Layout.fillHeight: true
MeteogramView {}
TimerView {}
MonthView {}
AgendaView {}
}
}
}
Oct 03 14:56:21 chris-desktop systemd-coredump[174599]: [🡕] Process 174573 (plasmoidviewer) of user 1000 dumped core.
Stack trace of thread 174573:
#0 0x00007f681498f758 n/a (libQt5Gui.so.5 + 0x49d758)
#1 0x00007f68149930ce _ZNK17QGridLayoutEngine22ensureColumnAndRowDataEP18QGridLayoutRowDataP14QGridLayoutBoxPKdS5_N2Qt11OrientationEPK24QAbstractLayoutStyleInfo (libQt5Gui.so.5 + 0x4a10ce)
#2 0x00007f68149934d6 _ZNK17QGridLayoutEngine8sizeHintEN2Qt8SizeHintERK6QSizeFPK24QAbstractLayoutStyleInfo (libQt5Gui.so.5 + 0x4a14d6)
#3 0x00007f67f8232d5e n/a (libqquicklayoutsplugin.so + 0x10d5e)
#4 0x00007f67f82306ba n/a (libqquicklayoutsplugin.so + 0xe6ba)
#5 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#6 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#7 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#8 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#9 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#10 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#11 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#12 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#13 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#14 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#15 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#16 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#17 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#18 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#19 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#20 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#21 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#22 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#23 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#24 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#25 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#26 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#27 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#28 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#29 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#30 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#31 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#32 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#33 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#34 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#35 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#36 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#37 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#38 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#39 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#40 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#41 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#42 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#43 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#44 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#45 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#46 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#47 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#48 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#49 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#50 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#51 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#52 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#53 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#54 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#55 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#56 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#57 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#58 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#59 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
#60 0x00007f67f823072f n/a (libqquicklayoutsplugin.so + 0xe72f)
#61 0x00007f67f82352b6 n/a (libqquicklayoutsplugin.so + 0x132b6)
#62 0x00007f67f8232a22 n/a (libqquicklayoutsplugin.so + 0x10a22)
#63 0x00007f6815a9b4f1 _ZN10QQuickItem15setImplicitSizeEdd (libQt5Quick.so.5 + 0x23e4f1)
@itsmeciao I can seem to reproduce the latte-dock
crash with v69. I'm using Manjaro's community/latte-dock 0.9.11-1
.
Can you run the following?
coredumpctl info latte-dock > ~/Desktop/latte-dock-segfaults.log
Hello @Zren, sorry for some reason I didn't get notified when you mentioned me, I just casually found your comment while coming to check if there were any updates.
@itsmeciao I can seem to reproduce the
latte-dock
crash with v69. I'm using Manjaro'scommunity/latte-dock 0.9.11-1
.
I have just tried readding eventcalendar to my latte docks and it looks like I cannot reproduce the crash anymore either. Which is strange because, other than removing eventcalendar from the docks and placing another digital clock widget, I have not made any changes to my system these past days, and Manjaro hasn't received updates since. So now I have just readded the widget to both screen's docks, applied different settings to them and I will try to play around with them a little and see if I can spot anything unusual again.
Thanks and sorry again that I did not see your comment.
I don't know what version to provide. But it's necessary to bring up an issue anyway. In AUR someone also mention it.