Release notes for 6.0 (wrynose)
This document lists new features and enhancements for the Yocto Project 6.0 Release (codename “wrynose”). For a list of breaking changes and migration guides, see the Migration notes for 6.0 (wrynose) section.
The 6.0 (wrynose) release is the new LTS release after 5.0 (scarthgap). If you are migrating from the 5.0 version, be sure to read the previous migration guides:
See also the list of new features and enhancements of the previous releases:
New Features / Enhancements in 6.0
Linux kernel XXX, gcc XXX, glibc XXX, LLVM XXX, and over XXX other recipe upgrades
Minimum Python version required on the host: XXX.
New variables:
The OPENSSH_HOST_KEY_DIR variable can be used to specify the directory where OpenSSH host keys are stored. The default value is
/etc/ssh(addd80d)The OPENSSH_HOST_KEY_DIR_READONLY_CONFIG variable can be used to specify the directory where OpenSSH host keys are stored when the device uses a read-only filesystem. The default value is
/var/run/ssh(addd80d)The SPDX_INCLUDE_KERNEL_CONFIG can be set to “1” to export the Linux kernel configuration (
CONFIG_*parameters) into the SPDX document when using the create-spdx class (228a968)The SPDX_INCLUDE_PACKAGECONFIG variable can be set to “1” to export a recipe’s PACKAGECONFIG features (enabled/disabled) into the SPDX document when using the create-spdx class (228a968)
The SPDX_PACKAGE_URL allows specifying a space-separated list of Package URLs (purls) for the software Package when using the create-spdx class (874b2d3)
The SPDX_CONCLUDED_LICENSE allows specifying the
hasConcludedLicenseobject of individual SBOM packages when using the create-spdx class (bb21c6a)The FIT_MKIMAGE_EXTRA_OPTS variable allows passing extra options to the
mkimagecommand when creating a FIT image with the kernel-fit-image class (d925d67)The FIT_CONF_MAPPINGS variable allows mapping extra configurations to existing ones or rename an existing configuration in FIT images created with the kernel-fit-image class (e30f809)
The UBOOT_CONFIG_FRAGMENTS and UBOOT_FRAGMENTS allow supplying additional configuration fragments to the existing U-Boot configuration. See the definition of the variables for more information, and the documentation of the uboot-config class (9e96d3d)
The IMAGE_EXTRA_PARTITION_FILES allows specifying extra files from the deploy directory (DEPLOY_DIR_IMAGE) to install in a WIC partition created with the
extra_partitionplugin (e152607)
Kernel-related changes:
New core recipes:
libconfig: Import recipe from https://git.openembedded.org/meta-openembedded/, needed by one of the Mesa recipes (1a0196a)python3-sphinxcontrib-svg2pdfconverter: Used for the generation of the Yocto Project documentation (f3f0019)python3-pyzstd: Import from meta-python, needed by theukifytool of systemd v258 (88a2713)python3-uv-build: This recipe adds theuvPython build backend, required bypython3-cryptography(0880cd2)blueprint-compiler: Add the recipe as it became a dependency of theepiphanyrecipe after its upgrade to 49.2 (4212392)
New core classes:
Global configuration changes:
base-passwd: Add aclockgroup as systemd version v258 introduces this group to enable applications like linuxptp to open clocks without root privileges (aad8493)bitbake.conf:remove DEBUG_PREFIX_MAP from TARGET_LDFLAGS (1797741)
The default definition of TARGET_LDFLAGS used to contain the value of DEBUG_PREFIX_MAP, to fix binary reproducibility issues. This was no longer needed after the originating GCC bug was fixed (1797741)
Switch BB_SIGNATURE_HANDLER to
OEEquivHashand BB_HASHSERVE toautoby default (5596ea1, 4a38840)
The uninative class is now enabled by default. This allows reuse of native sstate built on one distro on another (722897f)
The no-static-libs.inc file, disabling most static libraries in various recipes, is now included by default in the default distro setup (appearing as the
nodistroDISTRO) (03fc931)The security_flags.inc file, adding various security related flags to the default compiler and linker, is now included by default in the default distro setup (appearing as
nodistroDISTRO) (4c2d64c)The yocto-space-optimize.inc file, adding various space optimization tweaks, is now included by default in the default distro setup (appearing as
nodistroDISTRO) (175fcf9)
Architecture-specific changes:
QEMU /
runqemuchanges:qemuboot`: Make the tap interface nameserver configurable through QB_TAP_NAMESERVER (0e8c258)qemu: Disable thelibkeyutilsfeature (30cc9f5)runqemu-extract-sdk: Support thetar.zstformat (650bb45)qemurunner: Improveqmpmodule detection (a7386d0)runqemu: Support.tar.zst,.tar,xz,.tarrootfs archive types (3a6172f)
Documentation changes:
Go changes:
Rust changes:
Enable dynamic linking with llvm. This allows dynamically linking to
libLLVM.soinstead of linking statically (74ba238)
Wic Image Creator changes:
wic/engine: Fix copying directories into wic image withext*partitions (1ed38af)
SDK-related changes:
Testing-related changes:
ptest support was added for the following recipes:
selftests: Use SHA256 keys for RPM tests (692919b)oeqa: Open JSON files to parse in a context manager (e96baf5)resulttool: Add ptest support to the JUnit output format (2abe2d7)do_testimage: Print last lines of kernel log on test fail (fea3c44)
reproducible: Use the jQuery CDN instead ofjquery-native(d3ee549)selftest: Test installation of recipes with complex packaging (6f3aab6)
Utility script changes:
bitbake-config-build: It is now possible to disable all fragments starting with a prefix by issuingbitbake-config-build disable-fragment <prefix>/(573695d)recipetool: Support PEP639-variant of license key in Pythonpyproject.tomlfiles (9d1a7bb)create-pull-request: Keep commit hash to be pulled in cover email (c78f5ae)yocto-check-layer: Add messages intest_readmeassertions (9fe883c)
BitBake changes:
bitbake-layers:Add a
--show-variantsoption to theshow-recipessubcommand to display BBCLASSEXTEND variants (353d5e9)Fix the branch detection method of
layerindex-fetch(af9dd01)
bitbake-setup:Implement symlinking local sources into builds with the
--use-local-sourceoption of theinitsubcommand (ed5a3a0)Correct several scenarios in layer updates (aa15cc7)
Source in the
git-remotesection can now be specified more simply with theuriproperty, instead of theremotesproperty (7941a5d). For example:"bitbake": { "git-remote": { "uri": "https://git.openembedded.org/bitbake", "branch": "master", "rev": "master" } }
Use the internal registry if run from a Git checkout, from a remote BitBake repository otherwise (675e907)
Fragments passed in the
oe-fragments-one-ofproperty can now contain descriptions (29f2cee)Improve the readability of choices during the bitbake-setup init command (d970063)
Enable coloring of the diff outputs when using the bitbake-setup status or bitbake-setup update commands
cooker: Use BB_HASHSERVE_DB_DIR as hash server database location. If unset, the existing behavior is preserved (b339d05)bitbake-getvar: Show close matches when no providers are found (1f8fa7c)
Packaging changes:
Clang/LLVM related changes:
SPDX-related changes:
spdx30_tasks: Fix SPDX_CUSTOM_ANNOTATION_VARS implementation (52ab3b6)kernel: Add a task to export the kernel configuration to SPDX (228a968)
Add support for exporting the PACKAGECONFIG to SPDX (7ec61ac)
Add suport for package URLs (PURLs) through SPDX_PACKAGE_URL (874b2d3)
create-spdx-2.2: Add CVEs in CVE_CHECK_IGNORE to the list of fixed CVEs in the output SBOM (f852522)
devtoolchanges:Patchtest-related changes:
Security changes:
A new document was added to the Yocto Project documentation: Yocto Project Security Reference. It is intended to document how to report vulnerabilities to the Yocto Project security team.
cve-check-related changes:
cve-update-nvd2-native: Use maximum CVSS score when extracting it from multiple sources (4f6192f)
New PACKAGECONFIG options for individual recipes:
curl:schannelgstreamer1.0-plugins-good:qt6libinput:lua,libwacom,mtdevmesa:expat,zlibopenssl:legacyopkg:acl,xattrpython3-cryptography:legacy-openssl
systemd related changes:
Package
ukifyseparately, with thesystemd-ukifypackage name (e924274)
U-Boot related changes:
uboot-config: Add support for generating the U-Boot initial environment in binary format using UBOOT_INITIAL_ENV_BINARY (cf11b14)
A new way of specifying multiple U-Boot configurations has been added (cd9e730). See U-Boot configuration flow changes (ref-classes-uboot-config)
Miscellaneous changes:
curl: EnsureCURL_CA_BUNDLEfrom host environment is respected (545e43a)weston: Add PipeWire as runtime dependency whenpipewireis part of PACKAGECONFIG (9f52867)uki: Use basename of device trees available via KERNEL_DEVICETREE (27a7fbb)
rpcbind: Set the owner of/run/rpcbindtorpc(80e4289)udev-extraconf: Splitautomountandautonetinto seperate packages (udev-extraconf-automountandudev-extraconf-autonet) (08662d7)e2fsprogs: Fix a bug for files larger than 2GB (683a1e7)mesa: Add support for thevirtio,gfxstream,hasvkVulkan drivers (8e7ffdc, 3b56f14)mesa: Drop VDPAU remnants in the recipe after upstream support was removed (3b05f58)cross: Propagate dependencies to
outhash, improving hash equivalence (267b651)run-postinsts: Propagate exit status to therun-postinsts.servicesystemd service (7f74d88)freetype: Use meson instead of autotools* (7395e4f)wpa-supplicant:overlayfs: Remove helper unit (623c20f)kea: Replacekeactrlwith kea daemons (kea-dhcp*) in initscripts (7f9d929), and removekeactrlfrom the recipe (08c3877)initramfs-framework: Add handover of PID 1’s arguments to modules (a0ab3d1)perl: Providepod2man(in the recipe’s PROVIDES definition). This is used by many other recipes to produce man pages. This allows existing recipes to explicitly depend onpod2man-nativeto produce man pages (1d1e55d)build-sysroots: Add sysroot tasks to default build and remove warning (e73f150)Licenses and manifests are now deployed in the SDK when setting COPY_LIC_DIRS and/or COPY_LIC_MANIFEST, for both host and target sysroots (f757ae4)
openssl: Disable TLS 1.0/1.1 by default (d5501e7)python3-cryptography: Disablelegacy-opensslfeature by default (1acd199)openssl: Add support for config snippet includes. This can be done by installing extra configuration files in${sysconfdir}/ssl/openssl.cnf.d/(34bafcf)busybox: Enable SELinux support if DISTRO_FEATURES containsselinux(c544f12)coreutils:killanduptimeare no longer provided by the recipe (cedeb95)
Known Issues in 6.0
Recipe License changes in 6.0
The following changes have been made to the LICENSE values set by recipes:
Recipe |
Previous value |
New value |
|---|---|---|
|
Previous value |
New value |
Security Fixes in 6.0
The following CVEs have been fixed:
Recipe |
CVE IDs |
|---|---|
|
CVE-xxx-xxxx, … |
Recipe Upgrades in 6.0
The following recipes have been upgraded:
Recipe |
Previous version |
New version |
|---|---|---|
|
Previous version |
New version |
Contributors to 6.0
Thanks to the following people who contributed to this release: