The meta-snapd Yocto meta-layer needs some love. There are the following things to do:
- The list of supported Yocto releases needs to be gardened to contain the LTS versions
- Master must build with yocto master correctly
- Snapd is somewhat out of date, although I’ve started work to get to snapd 2.60 pull request in late 2023.
- There’s no CI, making reviews slower, see Yocto CI forum thread
I plan on getting
master branch to build with yocto master and to contain latest snapd. From there on I will go over the LTS releases and see if we can easily support them. My current goal is to just test x86_64 in qemu, although I’m open to community support for things like meta-raspberrypi.
All right, this thread is need of an update!
My current plan for Yocto, in very high-level terms is as follows:
- Maintain all active Yocto branches as branches of https://github.com/snapcore/meta-snapd
- Focus on snapd, disable blind patching of the kernel
- Modify the layer to dynamically include patches for certain kernels if a corresponding layer is present, for example to build stock kernels for qemu or to build a kernel for raspberry pi if the appropriate layer is presnt
- Accept patches to maintain patches for certain vendor kernels (e.g. NPX layers, intel layers)
- Work with apparmor upstream on a reference set of patches for certain kernel versions (TBD)
- CI/CD everything
I will be posting updates as I make progress through this list. Note that I plan to disable patching of the kernel for combinations that do not have a well-supported/maintained apparmor kernel tree as to not to get stuck on maintaining kernels.
I’ve posted a simple bump patch for kikrstone: https://github.com/snapcore/meta-snapd/pull/45
I’ve posted some more patches and I’ve added a table on Distribution support status - snapd - snapcraft.io. The kirkstone release now has up-to-date snapd for both 5.10 and 5.15 linux-yocto kernels.