QML modules packaging guidelines

This guidelines are meant to provide consistent naming for QML modules. The reasoning behind this scheme can be found here.

Previous notes

Naming scheme, Qt 5

The naming scheme should follow the following template:

  qml-module-{module-name}[version]
Where module-name is the lower-cased path replacing slashes with '-'. The version is optional if the version is not part of the module path, but required if it's part of it.

Examples

$QT_INSTALL_QML/foo/var/ would be packaged as qml-module-foo-var
$QT_INSTALL_QML/foo/var.2/ would be packaged as qml-module-foo-var2
$QT_INSTALL_QML/foo.2/var/ would be packaged as qml-module-foo2-var
$QT_INSTALL_QML/foo2/var.2/ would be packaged as qml-module-foo2-var2

Naming scheme, Qt 6 and onwards

The naming scheme should follow the following template:

  qml{Qt-major}-module-{module-name}[version]
This is the same as above except that {Qt-major} is added. For Qt 6 this would obviously be 6.

Examples

$QT_INSTALL_QML/foo/var/ would be packaged as qml6-module-foo-var
$QT_INSTALL_QML/foo/var.2/ would be packaged as qml6-module-foo-var2
$QT_INSTALL_QML/foo.2/var/ would be packaged as qml6-module-foo2-var
$QT_INSTALL_QML/foo2/var.2/ would be packaged as qml6-module-foo2-var2