Bug 488965 - KCMs with any InlineMessages or a KNewStuff dialog break in System Settings but work in KCMShell6: Cannot assign object of type "TP.IconPropertiesGroup" to property of type "IconPropertiesGroup_QMLTYPE_101*" as the former is neither the same as the latter
Summary: KCMs with any InlineMessages or a KNewStuff dialog break in System Settings b...
Status: RESOLVED FIXED
Alias: None
Product: systemsettings
Classification: Applications
Component: general (show other bugs)
Version: 6.1.3
Platform: Fedora RPMs Linux
: HI major
Target Milestone: ---
Assignee: Plasma Bugs List
URL: https://www.mediafire.com/file/2pvn6a...
Keywords: regression
: 488767 488776 488810 488985 489018 489037 489064 489712 490171 (view as bug list)
Depends on:
Blocks:
 
Reported: 2024-06-22 11:03 UTC by Roke Julian Lockhart Beedell
Modified: 2024-09-07 17:34 UTC (History)
19 users (show)

See Also:
Latest Commit:
Version Fixed In: 6.2.0
Sentry Crash Report:


Attachments
Reproduction screencast. (2.52 MB, video/webm)
2024-06-22 11:03 UTC, Roke Julian Lockhart Beedell
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Roke Julian Lockhart Beedell 2024-06-22 11:03:07 UTC
Created attachment 170809 [details]
Reproduction screencast.

STEPS TO REPRODUCE

1.  Updated OS using `plasma-discover`.
2.  `systemctl reboot`.
3.  `systemsettings`.
4.  Select any of the KCMs depicted at https://www.mediafire.com/file/2pvn6adh2tgh0te/Screencast_20240622_115500.webm/file - the "Colour & Theme" ones are all broken.

OBSERVED RESULT

> **Error loading QML file.**
> 
> ```log
> qrc:/kcm/kcm_sddm/main.qml:38 Type NewStuff.Action unavailable
> qrc:/qt/qml/org/kde/newstuff/Action.qml:167 Type NewStuff.Page unavailable
> qrc:/qt/qml/org/kde/newstuff/Page.qml:133 Type Kirigami.InlineMessage unavailable
> file:///usr/lib64/qt6/qml/org/kde/kirigami/InlineMessage.qml:63 Type KT.InlineMessage unavailable
> qrc:/qt/qml/org/kde/kirigami/templates/InlineMessage.qml:123 Cannot assign object of type "TP.IconPropertiesGroup" to property of type "IconPropertiesGroup_QMLTYPE_81*" as the former is neither the same as the latter nor a sub-class of it.
> ```

EXPECTED RESULT

All KCMs listed should be visible via `systemsettings`.

SOFTWARE/OS VERSIONS

Operating System: Fedora Linux 40
KDE Plasma Version: 6.1.0
KDE Frameworks Version: 6.3.0
Qt Version: 6.7.1
Kernel Version: 6.9.5-200.fc40.x86_64 (64-bit)
Graphics Platform: Wayland
Processors: 12 × AMD Ryzen 5 7600X 6-Core Processor
Memory: 30.5 GiB of RAM
Graphics Processor: AMD Radeon RX 5700
Manufacturer: ASRock
Product Name: X670E Taichi
Comment 1 Antonio Rojas 2024-06-22 12:24:47 UTC

*** This bug has been marked as a duplicate of bug 488326 ***
Comment 2 Nate Graham 2024-06-29 19:40:24 UTC

*** This bug has been marked as a duplicate of bug 487904 ***
Comment 3 Nate Graham 2024-07-01 16:55:17 UTC
Thanks for the screencast, that was very useful! It helped me see that the problem affects all KCMs using Kirigami.InlineMessage.
Comment 4 Roke Julian Lockhart Beedell 2024-07-01 16:56:18 UTC
(In reply to Nate Graham from comment #3)
My pleasure.
Comment 5 Roke Julian Lockhart Beedell 2024-07-01 18:14:17 UTC
Considering https://bugs.kde.org/show_bug.cgi?id=488326#c29, should this still be RESOLVED DUPLICATE?
Comment 6 Nate Graham 2024-07-01 18:15:27 UTC
Let's use this as the master bug for the issue where the issue is seen in all KCMs that use Kirigami.InlineMessage directly or KNS (the KNS dialog has an InlineMessage in it), where the icon is not overridden by the implementation.

This one does seem to get fixed if you delete the contents of ~/.cache, and we haven't gotten any new bug reports about it since the initial release of Plasma 6.1.
Comment 7 Nate Graham 2024-07-01 18:15:53 UTC
*** Bug 489018 has been marked as a duplicate of this bug. ***
Comment 8 Nate Graham 2024-07-01 18:15:59 UTC
*** Bug 488899 has been marked as a duplicate of this bug. ***
Comment 9 Nate Graham 2024-07-01 18:16:08 UTC
*** Bug 489064 has been marked as a duplicate of this bug. ***
Comment 10 Nate Graham 2024-07-01 18:16:19 UTC
*** Bug 488810 has been marked as a duplicate of this bug. ***
Comment 11 Nate Graham 2024-07-01 18:16:24 UTC
*** Bug 489037 has been marked as a duplicate of this bug. ***
Comment 12 Nate Graham 2024-07-01 18:16:29 UTC
*** Bug 488985 has been marked as a duplicate of this bug. ***
Comment 13 Nate Graham 2024-07-01 18:17:03 UTC
*** Bug 488776 has been marked as a duplicate of this bug. ***
Comment 14 Nate Graham 2024-07-01 18:17:08 UTC
*** Bug 488767 has been marked as a duplicate of this bug. ***
Comment 15 s.overvliet 2024-07-02 17:58:42 UTC
Hi,

I'm attempting to remotely assist with this, KDE Neon 'user' plain vanilla install on a Linx 1010B tablet.
ISO used to install was "neon-user-20240620-0718.iso", the problem persists through updating to KDE 6.1.1.

KDE Plasma 6.1.1
Framework 6.3.0
Qt 6.7.0
Kernel 6.5.0-41generic

Unfortunately deleting the contents of ~./cache does not offer a solution.
When attempting to access the firewall settings through System Settings > Wi-Fi & Networking > Firewall:

---8><---
Error loading QML file.

qrc:/kcm/kcm_firewall/main.qml:152 Type Kirigami.InlineMessage unavailable
file:///usr/lib/x86_64-linux-gnu/qt6/qml/org/kde/kirigami/InlineMessage.qml:63 Type KT.InlineMessage unavailable
qrc:/qt/qml/org/kde/kirigami/templates/InlineMessage.qml:123 Cannot assign object of type "TP.IconPropertiesGroup" to property of type "IconPropertiesGroup_QMLTYPE_85*" as the former is neither the same as the latter nor a sub-class of it.
---8><---
Comment 16 s.overvliet 2024-07-03 21:13:18 UTC
(In reply to s.overvliet from comment #15)

I was able to reproduce the situation on another machine, clean offline install.
ISO used (https://files.kde.org/neon/images/user/20240627-0718/neon-user-20240627-0718.iso) was downloaded today (3/7/2024).
Installed the system without an internet connection, rebooted, Clicked through System Settings > Wi-Fi & Internet > Firewall and was able to access the settings and toggle the firewall on/off just fine.
Connected to Wi-Fi, allowed the system to update, rebooted, and now the firewall section is bricked like it is on the other system.

Current system:

KDE 6.1.2
Framework 6.3.0
Qt 6.7.0
Kernel 6.5.0-41-generic
Comment 17 Antonio Rojas 2024-07-04 06:19:46 UTC
*** Bug 489712 has been marked as a duplicate of this bug. ***
Comment 18 Bruno 2024-07-07 18:42:34 UTC
Same bug with Opensuse Tumbleweed.

qrc:/kcm/kcm_keys/main.qml:66 Type Kirigami.InlineMessage unavailable
file:///usr/lib64/qt6/qml/org/kde/kirigami/InlineMessage.qml:63 Type KT.InlineMessage unavailable
qrc:/qt/qml/org/kde/kirigami/templates/InlineMessage.qml:123 Cannot assign object of type "TP.IconPropertiesGroup" to property of type "IconPropertiesGroup_QMLTYPE_64*" as the former is neither the same as the latter nor a sub-class of it.
Comment 19 TraceyC 2024-07-08 16:44:14 UTC
Marking confirmed
Comment 20 duha.bugs 2024-07-12 14:32:21 UTC
*** Bug 490171 has been marked as a duplicate of this bug. ***
Comment 21 s.overvliet 2024-07-20 17:09:55 UTC
(In reply to s.overvliet from comment #16)
> (In reply to s.overvliet from comment #15)

Appears to be fixed with the updates Neon received today/this week?
The various system settings panels are accessible again, but i'm unable to determine what was fixed. Could anybody elaborate?
Some version numbers changed:

KDE 6.1.3
Framework 6.4.0
Qt 6.7.0
Kernel 6.5.0-44-generic
Comment 22 TraceyC 2024-07-22 16:15:06 UTC
This also appears fixed in my Neon VM. I am able to load the KCMs shown in the recording

Operating System: KDE neon 6.0
KDE Plasma Version: 6.1.3
KDE Frameworks Version: 6.4.0
Qt Version: 6.7.0

Roke, are you still seeing the bug on a fully updated Neon install?

If anyone else following this report can still reproduce the problem, please add a comment. Thanks!
Comment 23 Roke Julian Lockhart Beedell 2024-07-22 16:49:10 UTC
(In reply to TraceyC from comment #22)

I'm not using Neon; Fedora 40, albeit fully updated. I've not experienced this since I reported it, actually: to verify, performing the actions depicted in https://bugs.kde.org/attachment.cgi?id=170809&action=edit doesn't yield any broken KCMs anymore.

Operating System: Fedora Linux 40
KDE Plasma Version: 6.1.2
KDE Frameworks Version: 6.3.0
Qt Version: 6.7.2
Comment 24 TraceyC 2024-07-22 21:07:26 UTC
Roke,

Thanks for responding. My apologies for mixing up your distro. I'm glad the settings are all loading now. If the problem recurs, feel free to re-open this bug.
Comment 25 Roke Julian Lockhart Beedell 2024-07-23 18:41:54 UTC
(In reply to TraceyC from comment #24)
Thanks.
Comment 26 Anthony Fieroni 2024-08-03 12:55:55 UTC
Reopened. Steps to reproduce:
1. Open systemsettings
2. Click on Mouse and Touchpad -> Touchpad (It doesn't load, but breaks the qml objects)
3. Open Keyboard Shortcuts, Display and monitor, Bluetooth, Color management, WiFi and Internet and so on.

If you never open Touchpad it never happen, so bug is there.
Comment 27 postix 2024-08-03 12:58:21 UTC
Can confirm the steps above on Fedora 40 with Plasma 6.1.3, Frameworks 6.4.0 and Qt 6.7.2
Comment 28 Vic 2024-08-04 14:15:37 UTC
Same problem here. Touchpad settings doesn't show at all, half of all modules give out the QML error. Is there a fix yet?
Comment 29 Vic 2024-08-04 14:34:42 UTC
(Fedora 40 plasma 6.1.3) Also it looks to be affiliated with Telegram Desktop somehow. First installation and start of Telegram allegedly caused the System Settings errors. After a couple of reinstallations, settings are completely OK with running Telegram.

Actions:
- Quitting telegram brought back the system errors (touchpad options missing and a bunch of QML errors).
- Even after reopening telegram and/or closing again, sytem errors stay.

I'm guessing has something to do with shared Qt dependencies.
Comment 30 TraceyC 2024-08-05 15:55:54 UTC
I can reproduce the bug in 6.1.3, but not in git-master. This fix is merged in 6.2 and will be on your systems when they are updated to 6.2.

on git-master
- Opened Touchpad settings and then Keyboard Shortcuts - both loaded properly
- Closed settings
- Installed Telegram from native package (not flatpak or snap), launched it and connected my account
- Opened Touchpad settings and then Keyboard Shortcuts - both loaded properly again
Comment 31 TraceyC 2024-08-05 16:31:33 UTC
There is work being done and additional discussion in Bug 488326. If you would like to follow the progress of further development on this, that's the one to follow.
Comment 32 Vic 2024-08-05 16:46:14 UTC
(In reply to TraceyC from comment #31)
> There is work being done and additional discussion in Bug 488326. If you
> would like to follow the progress of further development on this, that's the
> one to follow.

Thanks for info. Managed to consistently reproduce the bug independently form any action with Telegram. Will be discussing it there.
Comment 33 Marco Martin 2024-08-14 08:29:22 UTC
Git commit c80d4cb0063950e74ec00bbb8868572ead150126 by Marco Martin.
Committed on 09/08/2024 at 12:58.
Pushed by mart into branch 'master'.

Set a QQmlEngine property on the QApplication

By setting the "__qmlEngine" property to the QApplication,
if multiple QML-based kcms get loaded, all of them will reuse
this same QQmlEngine instance, working around types mismatches

M  +1    -0    src/kcmshell/CMakeLists.txt
M  +3    -0    src/kcmshell/main.cpp

https://invent.kde.org/frameworks/kcmutils/-/commit/c80d4cb0063950e74ec00bbb8868572ead150126
Comment 34 Anthony Fieroni 2024-09-07 17:25:37 UTC
(In reply to TraceyC from comment #30)
> I can reproduce the bug in 6.1.3, but not in git-master. This fix is merged
> in 6.2 and will be on your systems when they are updated to 6.2.
> 
> on git-master
> - Opened Touchpad settings and then Keyboard Shortcuts - both loaded properly
> - Closed settings
> - Installed Telegram from native package (not flatpak or snap), launched it
> and connected my account
> - Opened Touchpad settings and then Keyboard Shortcuts - both loaded
> properly again

Telegram or any other Qt doesn't matter, memory isn't shared, every process loads its own copy of shared libraries. They are shared during linking. So you could test only what I've mention above (https://bugs.kde.org/show_bug.cgi?id=488965#c26). Qt fixed bug is unrelated because it's "fixed" for Qt 6.7 but bug still exists in Qt 6.7.2. I don't see changes in master (Plasma 6.2)