QML: a packagers nightmare. Assistance please.

Scarlett Moore scarlett.gately.moore at gmail.com
Wed Nov 8 16:11:29 GMT 2023


While I have everyone's attention. The part that is getting me ( and
our linters ) is qml installation paths seem all over the place
For example plasma-framework we have

org.kde.plasma.plasmoids

which I read in the docs is "identified" qml which states it must be
installed into the QML import path which is normally ( and our linter
is set to ) /usr/lib/{arch_triplet}/qt{version}/qml
https://doc.qt.io/qt-6/qtqml-modules-identifiedmodules.html

However, these are getting installed to /usr/share/plasma/plasmoids

This doesn't follow the folder path ( eg. org/kde/plasma/plasmoids )
nor the normal qml import path. Or am I missing something?
If it is our mistake to not have this in our import path and our
linter is confused somehow, how would I add it? /usr/share or
/usr/share/plasma but then wouldn't it still be looking for the
org/kde/plasma/plasmoids?
Thanks for any help, I am really trying to figure this stuff out, but
I am lost in a sea of docs.
Scarlett

On Wed, Nov 8, 2023 at 4:48 AM David Redondo <kde at david-redondo.de> wrote:
>
> Am Mittwoch, 8. November 2023, 12:22:33 CET schrieb Scarlett Moore:
> > Hi everyone,
> > As we progress through the Qt6 transition I have been trying to keep
> > up on our QML dependencies and I keep tripping over circular
> > dependency nightmare. We switched to a mega package format which
> > includes qml modules. So we have big issues when frameworks like kwin
> > depends on plasma-workspace. Introduced here:
> >
> > https://invent.kde.org/plasma/kwin/-/commit/028dd552cfb9d826b40b9620d869c98d
> > 2aa3dca3?page=2
> >
> > Is it intended that qml modules in plasma-workspace are allowed to be
> > used by frameworks? Are we wrong to bundle QML inside a mega package
> > or is the framework wrong for depending on QML further up the stack?
> > Any help or insight would be much appreciated.
>
>
> CC'ing plasma-devel and distributions so stakeholders can chime in.
>
> From what I am seeing this patch causes KWin to import a qml module that lives
> in plasma-workspace
>
> import org.kde.plasma.workspace.components 2.0 as WorkspaceComponents
>
> At the same time plasma-workspace build depends on KWin due to the need of the
> DBus xml files.
>
> So the situation right now is that plasma-workspace build depends on KWin and
> KWin has a runtime dependency on plasma-workspace.
> I think it's not a full cycle since installing plasma-workspace does not need
> anything from KWin but maybe it can cause problems for distributions?
>
> David
>
>


More information about the kde-devel mailing list