Handing QML dependencies

Hefee hefee at debian.org
Sat Oct 12 14:51:02 BST 2024


Hey,

After some more work: Say hello to dh_qmldeps

( do not mix it with dh_qmlcdeps ;) Anyways are qmlc files still a thing in Qt 
6?

dh_qmldeps is a layer on top of  pkgkde-getqmldepends to make it more usable 
in dh.

How to use dh_qmldeps:
*  add dh-sequence-qmldeps as build depends 
 * and ${qml6:Depends} to Depends/Recommends of the package you want to add    
qmldepends

and most of the time that's it. (okay the need to have qml module installed is 
not solved yet).

dh_qmldeps will try to find in every binary package for qml files and warn if 
${qml6:Depends} is missing somewhere.
If it is a single bin package it will fall back to **/*.qml, if no qml files 
are found in the binary package.

To modify the behavior of dh_qmldeps, you can add:
* debian/qmldepends.overrides:
   <qml.module.name> <debian_pkg_list>
  (this will resolve the qml depdendecy <qml.module.name> to the 
<debian_pkg_list> (splitted by ", ", you can also add version dependencies (>= 
X.Y)
    (see neochat [1] or kreversi - both used that to fix the internal shipped 
qml modules in the binary)

* debian/<pkg>.qmlfiles
  the arguments for qmlimportscanner, to override the automatic detection of 
files
   (see kosmindoormap [2]
   that package ship multiple packages have qml dependencies:
     - kosmindoormap-demo
     - qml6-module-org-kde-kosmindoormap
)

To get more an idea where we want to go, I started to add qml packages to the 
dev packages. I started with some leaf libs: libkdegams, kpublictransport, 
kosmindoormap, kopeninghours

The next days, I'll start with some documentation on our website.

I'm happy for any feedback and help.

Regards,

hefee

[1] https://salsa.debian.org/qt-kde-team/kde/neochat/-/blob/debian/
experimental/debian/qmldeps.overrides
[2] https://salsa.debian.org/qt-kde-team/kde/kosmindoormap/-/blob/debian/
experimental/debian/kosmindoormap-demo.qmlfiles?ref_type=heads
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: This is a digitally signed message part.
URL: <http://alioth-lists.debian.net/pipermail/pkg-kde-talk/attachments/20241012/c72256bf/attachment.sig>


More information about the pkg-kde-talk mailing list