Yocto Project 6.0 "wrynose" is out — and I contributed!
The Yocto Project 6.0, codenamed wrynose, was released on May 13, 2026. This is the new Long-Term Support (LTS) release, succeeding 5.0 "scarthgap". I am happy to have my name in the contributors list for this release, and I wanted to take the opportunity to write a short overview of what is new.
If you are migrating from 5.0, make sure to read the migration guides for the intermediate releases: 5.1 (styhead), 5.2 (walnascar), and 5.3 (whinlatter).
Major component upgrades
The toolchain and core components received significant version bumps:
- Linux kernel 6.18
- GCC 15.2
- glibc 2.43
- LLVM/Clang 22.1.3
- Python 3.14.4
- systemd 259.5
- Go 1.26.2, Rust 1.94.1
- QEMU 10.2.0
- U-Boot 2026.01
Over 300 recipe upgrades in total.
Rust in the Linux kernel
One of the most significant additions is first-class Rust support for building the Linux kernel and out-of-tree kernel modules:
- A new kernel-yocto-rust class adds the required dependencies to build Rust components of the kernel.
- A new module-rust class supports building out-of-tree Rust kernel modules. A skeleton example is available under meta-skeleton/recipes-kernel/rust-out-of-tree-module.
- Enabling Rust in the kernel is now as simple as adding rust to KERNEL_FEATURES in a recipe that inherits kernel-yocto.
Security improvements on by default
Several security and hardening features that were previously opt-in are now enabled by default in the nodistro setup:
- security_flags.inc — adds security-related compiler and linker flags.
- no-static-libs.inc — disables most static libraries.
- uninative — allows reuse of native sstate built on one distro on another, also enabled by default now.
- OpenSSL now disables TLS 1.0/1.1 by default.
New SBOM and CVE tooling
The CVE analysis and SBOM generation story got a major overhaul:
- A new sbom-cve-check class replaces the old cve-check class for post-build CVE analysis of images. It uses the new python3-sbom-cve-check tool internally.
- A new sbom-cve-check-recipe class allows CVE analysis at the recipe level, without building the full software.
- SPDX 2.2 support has been dropped; the project now supports SPDX 3 only.
- New variables SPDX_INCLUDE_KERNEL_CONFIG and SPDX_INCLUDE_PACKAGECONFIG allow exporting richer metadata into SPDX documents.
BitBake and tooling improvements
bitbake-setup received a lot of love in this release:
- Non-destructive update behavior: local commits and modifications are preserved during bitbake-setup update.
- Shared State is now shared between builds by default (SSTATE_DIR and BB_HASHSERVE_DB_DIR set in site.conf).
- VSCode configuration files are now generated by default.
- The unpack_update() function allows updating a Git repository in-place.
WIC is now an external project
The WIC image creator tool has been extracted from OpenEmbedded-Core and is now maintained as a standalone project. The recipe in OE-Core now builds from this external source. A new wicenv image type was also added.
devtool IDE integration
The devtool ide-sdk command saw several improvements:
- gdbserver attach mode support.
- GDB pretty-printing for C++ STL types.
- Kernel module development support.
What's next
As an LTS release, wrynose will receive long-term maintenance. If you are on scarthgap (5.0), now is a good time to plan your migration. The migration guide is available at the Yocto Project documentation.