Yocto: Difference between revisions

From KDE Community Wiki
Line 1: Line 1:
= Yocto [DRAFT] =
= KDE in Yocto =


KDE currently ships two Yocto meta layers that are supposed to ease the use of KDE Frameworks, Plasma and Applications for device creators.
KDE currently ships two Yocto meta layers that are supposed to ease the use of KDE Frameworks, Plasma and Applications for device creators.
Line 12: Line 12:
== Usage ==
== Usage ==


== Layer Development ==
= Layer Development [DRAFT] =
All changes to the meta-layers are supposed to be proposed as merge-requests in the GitLab repositories and be reviewed before being merged. The main reasons for defaulting to code-reviews is the complexity of the Bitbake language together with the absence of static code check tooling as well as the quality demands of users of the Yocto layers.


=== CI Approach [DRAFT] ===
== CI Approach [DRAFT] ==
'''Scope:'''
'''Scope:'''
* The goal of the CI tooling is to automatically check the compatibility of the layers with regard to a certain release of the Yocto project in combination with a certain release in relation to a certain release of meta-qt{5|6}
* The goal of the CI tooling is to automatically check the compatibility of the layers with regard to a certain release of the Yocto project in combination with a certain release in relation to a certain release of meta-qt{5|6}
Line 20: Line 21:
* The CI shall ensure that backports to older Yocto layers are compatible with older Bitbake versions and recipes
* The CI shall ensure that backports to older Yocto layers are compatible with older Bitbake versions and recipes


=== Branch / Merge Strategy [DRAFT] ===
== Branch / Merge Strategy [DRAFT] ==
* application releases are updated in the master branch
* application releases are updated in the master branch
** exception is if the tracking branch for an old Yocto LTS release shall be updated to version older than in the master branch
** exception is if the tracking branch for an old Yocto LTS release shall be updated to version older than in the master branch
* change from the master branch that shall be used for older Yocto releases shall be cherry-picked
* change from the master branch that shall be used for older Yocto releases shall be cherry-picked

Revision as of 13:02, 2 October 2022

KDE in Yocto

KDE currently ships two Yocto meta layers that are supposed to ease the use of KDE Frameworks, Plasma and Applications for device creators.

Usage

Layer Development [DRAFT]

All changes to the meta-layers are supposed to be proposed as merge-requests in the GitLab repositories and be reviewed before being merged. The main reasons for defaulting to code-reviews is the complexity of the Bitbake language together with the absence of static code check tooling as well as the quality demands of users of the Yocto layers.

CI Approach [DRAFT]

Scope:

  • The goal of the CI tooling is to automatically check the compatibility of the layers with regard to a certain release of the Yocto project in combination with a certain release in relation to a certain release of meta-qt{5|6}
  • The CI shall ensure that there is a documented compatible combination of Yocto meta-layers
  • The CI shall ensure that backports to older Yocto layers are compatible with older Bitbake versions and recipes

Branch / Merge Strategy [DRAFT]

  • application releases are updated in the master branch
    • exception is if the tracking branch for an old Yocto LTS release shall be updated to version older than in the master branch
  • change from the master branch that shall be used for older Yocto releases shall be cherry-picked