subtree updates

meta-security: 93f2146211..7628a3e90b:
  Anton Antonov (3):
        Parsec-service: Update installation procedure
        Parsec-service: Fix arm32 build
        meta-parsec: Update Parsec runtime tests

  Armin Kuster (20):
        fscrypt: add distro_check on pam
        meta-security: move perl and python recipes to dynamic layers structure
        packagegroup-core-security: remove pkgs
        packagegroup-core-security: add perl pkgs grps
        packagegroup-core-security: add dynamic python pkgs
        arpwatch: add postfix to pkg config
        suricata: drop nfnetlink from pkg config
        packagegroup-core-security.bb: fix suricata inclusion
        layer.conf: fix up layer dependancies.
        ima-evm-utils: Update to 1.4
        aide: Update 01.17.4
        ossec-hids: update to 3.7.0
        suricata: update to 5.0.5
        samhain: update to 4.4.9
        tpm2-pkcs11: tpm2-pkcs11 module missing
        tpm2-tools: Add missing rdepends
        oeqa/cases/tpm2: fix and enhance test suite
        meta-parsec: Add pkg grps
        meta-parsec: add build image.
        oeqa: add parsec runtime tests

  Jeremy A. Puhlman (2):
        aide: Add depend on audit when audit is enabled.
        lib-perl: prefix man pages to avoid conflicting with base perl

  Josh Harley (1):
        Add EROFS support to dm-verity-img class

  Lei Maohui (1):
        layer.conf: Added BBFILES_DYNAMIC for dynamic-layers.

meta-openembedded: 77c2fda04e..a9e6d16e66:
  Alejandro Enedino Hernandez Samaniego (1):
        cryptsetup: Add luks2 configure options defaults

  Alex Kiernan (2):
        ulogd2: Add recipe
        libcoap: Add recipe

  Armin Kuster (13):
        meta-python-image: Fix build depends
        crda: move to a dynamic-layer for python
        cyrus-sasl: move from meta-networking to meta-oe
        netplan: move from meta-networking to meta-oe
        nvmetcli: move recipe to meta-oe
        packagegroup-meta-oe: update pkg group
        python3-ldap: move to meta-python
        packagegroup-meta-python.bb: update pkg group
        firewalld: move to dynamic meta-python layer
        packagegroup-meta-networking: update pkg group
        meta-networking: drop meta-python layer depends
        meta-gnome: fix layer depends.
        layer.conf: Post release codename changes

  Bartosz Golaszewski (19):
        python3-pyfanotify: new package
        python3-toolz: new package
        python3-cytoolz: new package
        python3-decouple: new package
        python3-eth-hash: new package
        python3-eth-typing: new package
        python3-eth-utils: new package
        python3-eth-keys: new package
        python3-eth-keyfile: new package
        python3-hexbytes: new package
        python3-rlp: new package
        python3-eth-rlp: new package
        python3-parsimonious: new package
        python3-eth-abi: new package
        python3-eth-account: new package
        python3-lru-dict: new package
        python3-web3: new package
        python3-inotify: new package
        speedtest-cli: drop the recipe

  Changqing Li (1):
        zabbix: upgrade 5.2.6 -> 6.0.4

  Chase Qi (1):
        kernel-selftest: install kselftest runner

  Claudius Heine (1):
        btrfsmaintenance: add recipe for btrfsmaintenance scripts

  Denys Dmytriyenko (2):
        devmem2: reinstate previous patches, removed by mistake
        devmem2: add support for different page sizes

  Diego Sueiro (1):
        bats: upgrade 1.6.0 -> 1.6.1

  Gianfranco (3):
        sdbus-c++-libsystemd: Bump SRCREV to last commit of 250-stable branch
        sdbus-c++: Bump version from 1.00 to 1.1.0
        libmtp: Add doxygen-native dependency in case documentation build is enabled in PACKAGECONFIG. This fixes a FTBFS due to missing dependency.

  Gianfranco Costamagna (1):
        vboxguestdrivers: upgrade 6.1.32 -> 6.1.34

  Jiaqing Zhao (2):
        openldap: Remove libgcrypt dependency
        openldap: Upgrade 2.5.9 -> 2.5.12

  Joerg Vehlow (1):
        jq: Fix typo OE_EXTRACONF -> EXTRA_OECONF

  Julien STEPHAN (1):
        libcamera: fix packaging

  Kai Kang (3):
        conntrack-tools: fix postinst script
        wxwidgets: enable to use private fonts
        python3-wxgtk4: backport patch to fix svg issue

  Khem Raj (12):
        ufw: Fix packaging errors found with ppc64
        libcereal: Enable for glibc/ppc
        mimic: Use special rateconv.c license
        makedumpfile: Use right TARGET for ppc32
        evince: Add dbus to depnedencies on non-x11 builds
        evolution-data-server: Do not pass --library-path to gir compiler
        python3-wxgtk4: Needs x11 for sip module
        zfs: Fix build on musl systems
        zfs: Disable on riscv32
        zfs: Disable on mips
        zfs: Make systemd and sysvinit into packageconfigs
        sdbus-c++: Link with libatomic on mips/ppc32

  Markus Volk (1):
        minidlna: fix obsolete license warning

  Martin Jansa (1):
        ostree: prevent ostree-native depending on target virtual/kernel to provide kernel-module-overlay

  Michael Opdenacker (1):
        devmem2: update SRC_URI according to redirect

  Mingli Yu (1):
        s-nail: Set VAL_MTA

  Nicolas Dechesne (1):
        imlib2: update SRC_URI

  Peter Kjellerstedt (1):
        libwebsockets: Avoid absolute paths in *.cmake files in the sysroot

  Portia (1):
        cpulimit: introduce support for this package

  Randy MacLeod (1):
        intel-speed-select: Add libnl dependency and extend CFLAGS

  Richard Neill (1):
        bats: Add patch to fix false-negatives caused by teardown code

  Ross Burton (1):
        Revert "python3-cbor2: upgrade 5.4.2 -> 5.4.3"

  Samuli Piippo (1):
        python3-qface: upgrade 2.0.7 -> 2.0.8

  Teresa Remmet (1):
        meta-networking: Add meta-python to BBFILES_DYNAMIC

  Vyacheslav Yurkov (1):
        polkit: add udisks2 rule

  Windel Bouwman (1):
        Add zfs recipe

  Xu Huan (17):
        python3-astroid: upgrade 2.11.2 -> 2.11.3
        python3-bitstruct: upgrade 8.14.0 -> 8.14.1
        python3-cachecontrol: upgrade 0.12.10 -> 0.12.11
        python3-engineio: upgrade 4.3.1 -> 4.3.2
        python3-flask-socketio: upgrade 5.1.1 -> 5.1.2
        python3-google-api-python-client: upgrade 2.43.0 -> 2.45.0
        python3-graphviz: upgrade 0.19.2 -> 0.20
        python3-cbor2: upgrade 5.4.2 -> 5.4.3
        python3-click: upgrade 8.1.2 -> 8.1.3
        python3-flask-login: upgrade 0.6.0 -> 0.6.1
        python3-flask: upgrade 2.1.1 -> 2.1.2
        python3-google-api-core: upgrade 2.7.1 -> 2.7.3
        python3-google-auth: upgrade 2.6.3 -> 2.6.6
        python3-mypy: upgrade 0.942 -> 0.950
        python3-pyalsaaudio: upgrade 0.9.0 -> 0.9.2
        python3-grpcio-tools: upgrade 1.45.0 -> 1.46.0
        python3-pychromecast: upgrade 11.0.0 -> 12.1.1

  Yi Zhao (1):
        networkmanager: fix parallel build failure

  wangmy (41):
        python3-sentry-sdk: upgrade 1.5.8 -> 1.5.10
        python3-socketio: upgrade 5.5.2 -> 5.6.0
        python3-textparser: upgrade 0.23.0 -> 0.24.0
        python3-twisted: upgrade 22.2.0 -> 22.4.0
        python3-websockets: upgrade 10.2 -> 10.3
        fuse3: upgrade 3.10.5 -> 3.11.0
        zenity: upgrade 3.42.0 -> 3.42.1
        babeld: upgrade 1.11 -> 1.12
        cifs-utils: upgrade 6.14 -> 6.15
        nbdkit: upgrade 1.31.1 -> 1.31.2
        stunnel: upgrade 5.63 -> 5.64
        tgt: upgrade 1.0.79 -> 1.0.82
        wolfssl: upgrade 5.2.0 -> 5.3.0
        ctags: upgrade 5.9.20220417.0 -> 5.9.20220501.0
        freerdp: upgrade 2.6.1 -> 2.7.0
        fwupd-efi: upgrade 1.2 -> 1.3
        htop: upgrade 3.1.2 -> 3.2.0
        hwdata: upgrade 0.358 -> 0.359
        icewm: upgrade 2.9.6 -> 2.9.7
        iwd: upgrade 1.26 -> 1.27
        jemalloc: upgrade 5.2.1 -> 5.3.0
        libmbim: upgrade 1.26.2 -> 1.26.4
        libyang: upgrade 2.0.164 -> 2.0.194
        nano: upgrade 6.2 -> 6.3
        phoronix-test-suite: upgrade 10.8.2 -> 10.8.3
        php: upgrade 8.1.4 -> 8.1.5
        pkcs11-helper: upgrade 1.28.0 -> 1.29.0
        poppler: upgrade 22.04.0 -> 22.05.0
        toybox: upgrade 0.8.6 -> 0.8.7
        unixodbc: upgrade 2.3.9 -> 2.3.11
        xmlsec1: upgrade 1.2.33 -> 1.2.34
        gtk4: upgrade 4.6.3 -> 4.6.4
        nbdkit: upgrade 1.31.2 -> 1.31.5
        ctags: upgrade 5.9.20220501.0 -> 5.9.20220508.0
        openjpeg: upgrade 2.4.0 -> 2.5.0
        php: upgrade 8.1.5 -> 8.1.6
        postgresql: upgrade 14.2 -> 14.3
        phpmyadmin: upgrade 5.1.3 -> 5.2.0
        python3-aiohue: upgrade 3.0.11 -> 4.4.1
        python3-awesomeversion : add recipe
        python3-traitlets: upgrade 5.1.1 -> 5.2.0

  zhengrq.fnst (12):
        glibmm-2.68: upgrade 2.70.0 -> 2.72.1
        gnome-text-editor: upgrade 42.0 -> 42.1
        apitrace: upgrade 10.0 -> 11.0
        libconfig-general-perl: upgrade 2.63 -> 2.65
        gpsd: upgrade 3.23.1 -> 3.24
        mbw: upgrade 1.4 -> 1.5
        gtk4: upgrade 4.6.2 -> 4.6.3
        python3-antlr4-runtime: upgrade 4.9.2 -> 4.10
        python3-booleanpy: upgrade 3.8 -> 4.0
        python3-pika: upgrade 1.2.0 -> 1.2.1
        python3-autobahn: upgrade 22.3.2 -> 22.4.2
        python3-bitarray: upgrade 2.4.1 -> 2.5.0

  zhengruoqin (7):
        python3-imageio: upgrade 2.17.0 -> 2.18.0
        python3-langtable: upgrade 0.0.57 -> 0.0.58
        python3-paramiko: upgrade 2.10.3 -> 2.10.4
        python3-protobuf: upgrade 3.20.0 -> 3.20.1
        python3-pylint: upgrade 2.13.5 -> 2.13.7
        python3-pymongo: upgrade 4.1.0 -> 4.1.1
        python3-regex: upgrade 2022.3.15 -> 2022.4.24

poky: 9e55696042..13d70e57f8:
  Alex Kiernan (7):
        eudev: Upgrade 3.2.10 -> 3.2.11
        eudev: Add PACKAGECONFIG for manpages & selinux
        pypi.bbclass: Set CVE_PRODUCT to PYPI_PACKAGE
        openssh: Add openssh-sftp-server to openssh RDEPENDS
        eudev: Convert dependencies to PACKAGECONFIG
        eudev: Cleanup redundant configuration
        eudev: Use PACKAGE_BEFORE_PN/${PN}, clean up spaces

  Alexander Kanavin (106):
        systemd: upgrade 250.4 -> 250.5
        python3-cryptography: upgrade 36.0.2 -> 37.0.1
        util-linux: upgrade 2.37.4 -> 2.38
        vulkan: upgrade 1.3.204.1 -> 1.3.211.0
        libnl: upgrade 3.5.0 -> 3.6.0
        libsdl2: upgrade 2.0.20 -> 2.0.22
        mesa: upgrade 22.0.0 -> 22.0.2
        python3-babel: upgrade 2.9.1 -> 2.10.1
        python3-mako: upgrade 1.1.6 -> 1.2.0
        python3-pygments: upgrade 2.11.2 -> 2.12.0
        at-spi2-core: upgrade 2.44.0 -> 2.44.1
        bind: upgrade 9.18.1 -> 9.18.2
        cronie: upgrade 1.6.0 -> 1.6.1
        diffoscope: upgrade 208 -> 211
        dnf: upgrade 4.11.1 -> 4.12.0
        ell: upgrade 0.49 -> 0.50
        epiphany: upgrade 42.0 -> 42.2
        ffmpeg: upgrade 5.0 -> 5.0.1
        fribidi: upgrade 1.0.11 -> 1.0.12
        harfbuzz: upgrade 4.2.0 -> 4.2.1
        libinput: upgrade 1.19.3 -> 1.19.4
        libmnl: upgrade 1.0.4 -> 1.0.5
        libnotify: upgrade 0.7.9 -> 0.7.11
        libpipeline: upgrade 1.5.5 -> 1.5.6
        libseccomp: upgrade 2.5.3 -> 2.5.4
        libx11: upgrade 1.7.5 -> 1.8
        lttng-tools: upgrade 2.13.4 -> 2.13.7
        mmc-utils: upgrade to latest revision
        neard: upgrade 0.16 -> 0.18
        pango: upgrade 1.50.6 -> 1.50.7
        parted: upgrade 3.4 -> 3.5
        piglit: upgrade to latest revision
        python3-cryptography-vectors: upgrade 36.0.2 -> 37.0.1
        python3-dtschema: upgrade 2022.1 -> 2022.4
        python3-hypothesis: upgrade 6.44.0 -> 6.46.0
        python3-jinja2: upgrade 3.1.1 -> 3.1.2
        python3-pygobject: upgrade 3.42.0 -> 3.42.1
        python3-pytest: upgrade 7.1.1 -> 7.1.2
        repo: upgrade 2.23 -> 2.24.1
        sqlite3: upgrade 3.38.2 -> 3.38.3
        vala: upgrade 0.56.0 -> 0.56.1
        vte: upgrade 0.66.2 -> 0.68.0
        webkitgtk: upgrade 2.36.0 -> 2.36.1
        xorgproto: upgrade 2021.5 -> 2022.1
        xwayland: upgrade 22.1.0 -> 22.1.1
        sysvinit: update 3.02 -> 3.04
        pciutils: update 3.7.0 -> 3.8.0
        elfutils: update 0.186 -> 0.187
        git: update 2.35.3 -> 2.36.0
        libdnf: update 0.66.0 -> 0.67.0
        llvm: update 14.0.1 -> 14.0.3
        rsync: update 3.2.3 -> 3.2.4
        lsof: update 4.94.0 -> 4.95.0
        libhandy: update 1.5.0 -> 1.6.2
        librsvg: update 2.54.0 -> 2.54.1
        xauth: update 1.1.1 -> 1.1.2
        gnupg: update 2.3.4 -> 2.3.6
        qemu: update 6.2.0 -> 7.0.0
        stress-ng: disable apparmor from the correct spot
        coreutils: update 9.0 -> 9.1
        python3-setuptools: upgrade 59.5.0 -> 62.3.1
        go: upgrade 1.18.1 -> 1.18.2
        iptables: upgrade 1.8.7 -> 1.8.8
        gnu-config: update to latest version
        u-boot: upgrade 2022.01 -> 2022.04
        python3-pip: update 22.0.4 -> 22.1
        libxcb: update 1.14 -> 1.15
        xcb-proto: upgrade 1.14.1 -> 1.15
        systemtap: update 4.6 -> 4.7
        vulkan-samples: update to latest revision
        curl: upgrade 7.83.0 -> 7.83.1
        diffoscope: upgrade 211 -> 212
        git: upgrade 2.36.0 -> 2.36.1
        gnutls: upgrade 3.7.4 -> 3.7.5
        gst-devtools: upgrade 1.20.1 -> 1.20.2
        gstreamer1.0-libav: upgrade 1.20.1 -> 1.20.2
        gstreamer1.0-omx: upgrade 1.20.1 -> 1.20.2
        gstreamer1.0-plugins-bad: upgrade 1.20.1 -> 1.20.2
        gstreamer1.0-plugins-base: upgrade 1.20.1 -> 1.20.2
        gstreamer1.0-plugins-good: upgrade 1.20.1 -> 1.20.2
        gstreamer1.0-plugins-ugly: upgrade 1.20.1 -> 1.20.2
        gstreamer1.0-python: upgrade 1.20.1 -> 1.20.2
        gstreamer1.0-rtsp-server: upgrade 1.20.1 -> 1.20.2
        gstreamer1.0: upgrade 1.20.1 -> 1.20.2
        gstreamer1.0-vaapi: upgrade 1.20.1 -> 1.20.2
        libcgroup: upgrade 2.0.1 -> 2.0.2
        libnotify: upgrade 0.7.11 -> 0.7.12
        librsvg: upgrade 2.54.1 -> 2.54.3
        mesa: upgrade 22.0.2 -> 22.0.3
        mobile-broadband-provider-info: upgrade 20220315 -> 20220511
        piglit: upgrade to latest revision
        psmisc: upgrade 23.4 -> 23.5
        python3-bcrypt: upgrade 3.2.0 -> 3.2.2
        python3-cryptography: upgrade 37.0.1 -> 37.0.2
        python3-cryptography-vectors: upgrade 37.0.1 -> 37.0.2
        python3-hypothesis: upgrade 6.46.0 -> 6.46.4
        python3-jsonschema: upgrade 4.4.0 -> 4.5.1
        python3-markdown: upgrade 3.3.6 -> 3.3.7
        python3-more-itertools: upgrade 8.12.0 -> 8.13.0
        python3-pbr: upgrade 5.8.1 -> 5.9.0
        python3-pyparsing: upgrade 3.0.8 -> 3.0.9
        repo: upgrade 2.24.1 -> 2.25
        sqlite3: upgrade 3.38.3 -> 3.38.5
        stress-ng: upgrade 0.14.00 -> 0.14.01
        python3-setuptools-rust: update 1.1.2 -> 1.3.0
        python3: use built-in distutils for ptest, rather than setuptools' 'fork'

  Andrej Valek (1):
        kernel: add missing path to search for debug files

  Arkadiusz Drabczyk (1):
        overview-manual: fix a forgotten link

  Aryaman Gupta (1):
        e2fsprogs: update upstream status

  Bruce Ashfield (23):
        linux-yocto/5.15: arm: poky-tiny cleanup and fixes
        linux-yocto/5.10: update to v5.10.110
        linux-yocto/5.10: base: enable kernel crypto userspace API
        linux-yocto/5.15: update to v5.15.33
        linux-yocto/5.15: base: enable kernel crypto userspace API
        linux-yocto/5.15: kasan: fix BUG: sleeping function called from invalid context
        linux-yocto/5.15: fix ppc boot
        linux-yocto/5.15: netfilter: conntrack: avoid useless indirection during conntrack destruction
        linux-yocto/5.10: update to v5.10.112
        linux-yocto/5.15: update to v5.15.35
        linux-yocto/5.15: Fix CVE-2022-28796
        linux-yocto: enable powerpc debug fragment
        linux-yocto/5.15: fix -standard kernel build issue
        linux-yocto/5.15: update to v5.15.36
        linux-yocto/5.15: fix qemuarm graphical boot
        strace: fix ptest failure in landlock
        yocto-bsps: update to v5.15.36
        yocto-bsps: update to v5.10.113
        linux-yocto/5.15: update to v5.15.37
        linux-yocto/5.10: update to v5.10.113
        linux-yocto/5.15: update to v5.15.38
        linux-yocto/5.10: update to v5.10.114
        lttng-modules: fix build against 5.18-rc7+

  Changqing Li (1):
        eudev: create static-nodes in init script

  Chanho Park (2):
        externalsrc.bbclass: support crate fetcher on externalsrc
        cargo_common.bbclass: enable bitbake vendoring for externalsrc

  Claudius Heine (3):
        classes: rootfs-postcommands: add skip option to overlayfs_qa_check
        overlayfs: add docs about skipping QA check & service dependencies
        wic: added fspassno parameter to partition

  Davide Gardenal (4):
        cve-check: add JSON format to summary output
        cve-check: fix symlinks where link and output path are equal
        rootfs-postcommands: fix symlinks where link and output path are equal
        openssl: minor security upgrade 3.0.2 -> 3.0.3

  Dmitry Baryshkov (3):
        linux-firmware: upgrade 20220411 -> 20220509
        linux-firmware: package new Qualcomm firmware
        image.bbclass: allow overriding dependency on virtual/kernel:do_deploy

  Felix Moessbauer (1):
        wic/plugins/rootfs: Fix permissions when splitting rootfs folders across partitions

  Gunjan Gupta (2):
        bitbake: fetch2/osc: Small fixes for osc fetcher
        bitbake: fetch2/osc: Add support to query latest revision

  Jacob Kroon (1):
        Revert "image.bbclass: allow overriding dependency on virtual/kernel:do_deploy"

  Jiaqing Zhao (5):
        libxml2: Upgrade 2.9.13 -> 2.9.14
        systemd: Drop 0001-test-parse-argument-Include-signal.h.patch
        systemd: Remove __compare_fn_t type in musl-specific patch
        systemd: Drop 0002-don-t-use-glibc-specific-qsort_r.patch
        systemd: Correct path returned in sd_path_lookup()

  Jon Mason (1):
        qemuarmv5: use arm-versatile-926ejs KMACHINE

  Kai Kang (1):
        wpa-supplicant: update config for gnutls

  Khem Raj (15):
        qemu: Add packageconfig for libbpf support
        linux-yocto: Enable powerpc-debug fragment for ppc64 LE
        musl: Upgrade to tip of trunk
        systemd: Fix build regression with latest update
        gcc: upgrade 11.3 -> 12.1
        libstd-rs: Forward port rust libc patches
        gdb: Upgrade to 12.1
        bash: build with bash_cv_getcwd_malloc=yes on musl too
        ovmf: Fix native build with gcc-12
        elfutils: Disable stringop-overflow warning for build host
        musl-locales: Switch SRC_URI to new location
        systemd: Drop redundant musl patches
        systemd: Document future actions needed for set of musl patches
        systemd: Drop 0016-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch
        systemd: Update patch status

  Konrad Weihmann (1):
        linux-firmware: replace mkdir by install

  Kory Maincent (1):
        images_types: isolate the write of UBI configuration

  Leon Anavi (1):
        image_types/runqemu-addptable2image: Fix a minor typo

  Markus Volk (2):
        mesa.inc: package 00-radv-defaults.conf
        libsdl2: add PACKAGECONFIG for libusb1 and remove obsolete options

  Marta Rybczynska (3):
        cve-update-db-native: update the CVE database once a day only
        cve-update-db-native: let the user to drive the update interval
        cve-check: Fix report generation

  Martin Jansa (1):
        bitbake: osc: fix DeprecationWarning

  Michael Halstead (5):
        releases: update to include 3.1.16
        scripts/autobuilder-worker-prereq-tests: update to use yocto 4.0
        scripts/autobuilder-worker-prereq-tests: add additional limit testing
        releases: update to include 3.4.4
        releases: include 4.0.1

  Michael Opdenacker (12):
        MAINTAINERS.md: no more need for a prelink-cross maintainer
        dev-manual: further gdb usage simplifications
        doc/Makefile: fix epub and latexpdf targets
        manuals: fix name capitalization issues
        doc: standards for project and file names
        manuals: improve the width of diagrams
        manuals: improve documentation for TEMPLATECONF
        overview-manual: remove confusing and unnecessary paragraph about site.conf
        manuals: add quoting to references to bitbake.conf
        manuals: add missing space in appends
        manuals: add documentation for WKS_FILES
        migration guides: release notes for 3.4.3 and 3.4.4

  Mingli Yu (1):
        python3-cryptography: remove --benchmark-disable option

  Peter Kjellerstedt (4):
        base-passwd: Regenerate the patches
        base-passwd: Update to 3.5.52
        base-passwd: Update the status for two patches
        librsvg: Drop the dependency on libcroco

  Quentin Schulz (2):
        docs: set_versions.py: remove hardknott from active releases list
        docs: set_versions.py: show release name in switchers.js

  Raphael Teller (1):
        kernel.bbclass: Do not overwrite recipe's custom postinst

  Richard Purdie (25):
        bitbake: cookerdata: Change emphasis in error message to be clearer to users
        cairo: Add missing GPLv3 license checksum entry
        libgcrypt: Drop GPLv3 license after upstream changes
        base: Avoid circular references to our own scripts
        scripts: Make git intercept global
        scripts/git: Ensure we don't have circular references
        abi_version/sstate: Bump hashequiv and sstate versions due to git changes
        vim: Upgrade 8.2.4681 -> 8.2.4912
        package: Ensure we track whether PRSERV was active or not
        libgcrypt: Fix reproducibility issues in ptest
        liberror-perl: Update sstate/equiv versions to clean cache
        freetype: Upgrade 2.12.0 -> 2.12.1
        bitbake: fetch/git : Use cat as pager
        pciutils: Add make-native dependency
        sanity: Don't warn about make 4.2.1 for mint
        bitbake: build: Add clean_stamp API function to allow removal of task stamps
        staging: Fix rare sysroot corruption issue
        selftest/imagefeatures/overlayfs: Always append to DISTRO_FEATURES
        udev-extraconf/initrdscripts/parted: Rename mount.blacklist -> mount.ignorelist
        layer.conf: Don't use indirect help2man-native dependencies
        rust-common: Fix sstate signatures between arm hf and non-hf
        rust-common: Drop LLVM_TARGET and simplify
        rust-common: Fix native signature dependency issues
        scripts/patchreview: Add commit to stored json data
        scripts/patchreview: Make json output human parsable

  Robert Joslyn (1):
        powerpc: Remove invalid GLIBC_EXTRA_OECONF

  Roland Hieber (1):
        bitbake: cache: correctly handle file names containing colons

  Ross Burton (4):
        oeqa/selftest: add test for git working correctly inside pseudo
        Revert "bitbake.conf: mark all directories as safe for git to read"
        kernel-yocto.bbclass: say what SRC_URI entry is being dropped
        oeqa/selftest/cve_check: add tests for recipe and image reports

  Rouven Czerwinski (1):
        kbd: fix pam DISTRO_FEATURES check

  Samuli Piippo (1):
        binutils: Bump to latest 2.38 release branch

  Schmidt, Adriaan (1):
        bitbake: bitbake-diffsigs: break on first dependent task difference

  Simone Weiss (1):
        libgcrypt: Add ptest

  Steve Sakoman (2):
        virgl: skip headless test on alma 8.6
        python3: fix reproducibility issue with python3-core

  Sundeep KOKKONDA (3):
        dev-manual: improvements for gdbserver configuration
        rust-common: Ensure sstate signatures have correct dependencues for do_rust_gen_targets
        rust-common: Fix for target definitions returning 'NoneType' for arm

  Thomas Epperson (1):
        dev-manual: fix documentation for bmaptool usage

  Thomas Perrot (1):
        man-pages: add an alternative link name for crypt_r.3

  Tomasz Dziendzielski (1):
        bitbake: data: Do not depend on vardepvalueexclude flag

  Trevor Woerner (1):
        DISTRO_FEATURES: remove uclibc remnants

  Zoltán Böszörményi (2):
        npm.bbclass: Fix file permissions before opening it for writing
        npm.bbclass: Don't create /usr/lib/node symlink

  leimaohui (1):
        cve-check.bbclass: Added do_populate_sdk[recrdeptask].

  wangmy (1):
        librepo: upgrade 1.14.2 -> 1.14.3

meta-raspberrypi: c97a9e34ab..62a84833d9:
  Andrei Gherzan (1):
        Revert "kmod: Enable xz compression"

  Khem Raj (3):
        rpi-config: Add option to enable One-wire interface
        linux-firmware-rpidistro: Create brcmfmac43455-sdio.raspberrypi,4-model-b.bin symlink
        linux-raspberrypi: Upgrade to 5.15.38

Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
Change-Id: If15534d7da5bfa78ef2224bb09ff1a8eb96a0e10
diff --git a/meta-openembedded/meta-filesystems/conf/layer.conf b/meta-openembedded/meta-filesystems/conf/layer.conf
index 75a27d6..205768e 100644
--- a/meta-openembedded/meta-filesystems/conf/layer.conf
+++ b/meta-openembedded/meta-filesystems/conf/layer.conf
@@ -15,4 +15,4 @@
 
 LAYERDEPENDS_filesystems-layer = "core openembedded-layer"
 
-LAYERSERIES_COMPAT_filesystems-layer = "kirkstone"
+LAYERSERIES_COMPAT_filesystems-layer = "kirkstone langdale"
diff --git a/meta-openembedded/meta-filesystems/recipes-filesystems/zfs/zfs/0001-Define-strndupa-if-it-does-not-exist.patch b/meta-openembedded/meta-filesystems/recipes-filesystems/zfs/zfs/0001-Define-strndupa-if-it-does-not-exist.patch
new file mode 100644
index 0000000..8bb8b94
--- /dev/null
+++ b/meta-openembedded/meta-filesystems/recipes-filesystems/zfs/zfs/0001-Define-strndupa-if-it-does-not-exist.patch
@@ -0,0 +1,36 @@
+From 54883e714b7fd1e7f4ce47eb1fc09adff35d561e Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Sat, 7 May 2022 12:15:22 -0700
+Subject: [PATCH] Define strndupa if it does not exist
+
+musl e.g. does not supply strndupa, unlike glibc
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ etc/systemd/system-generators/zfs-mount-generator.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/etc/systemd/system-generators/zfs-mount-generator.c b/etc/systemd/system-generators/zfs-mount-generator.c
+index b806339..592d2f9 100644
+--- a/etc/systemd/system-generators/zfs-mount-generator.c
++++ b/etc/systemd/system-generators/zfs-mount-generator.c
+@@ -47,6 +47,15 @@
+ #define	STRCMP ((int(*)(const void *, const void *))&strcmp)
+ #define	PID_T_CMP ((int(*)(const void *, const void *))&pid_t_cmp)
+ 
++#ifndef strndupa
++#define strndupa(s, n) \
++       (__extension__ ({const char *__in = (s);                    \
++                        size_t __len = strnlen (__in, (n)) + 1;    \
++                        char *__out = (char *) alloca (__len);     \
++                        __out[__len-1] = '\0';                     \
++                        (char *) memcpy (__out, __in, __len-1);}))
++#endif
++
+ static int
+ pid_t_cmp(const pid_t *lhs, const pid_t *rhs)
+ {
+-- 
+2.36.0
+
diff --git a/meta-openembedded/meta-filesystems/recipes-filesystems/zfs/zfs_2.1.4.bb b/meta-openembedded/meta-filesystems/recipes-filesystems/zfs/zfs_2.1.4.bb
new file mode 100644
index 0000000..dd676c9
--- /dev/null
+++ b/meta-openembedded/meta-filesystems/recipes-filesystems/zfs/zfs_2.1.4.bb
@@ -0,0 +1,61 @@
+SUMMARY = "OpenZFS on Linux and FreeBSD"
+DESCRIPTION = "OpenZFS on Linux and FreeBSD"
+LICENSE = "CDDL-1.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=7087caaf1dc8a2856585619f4a787faa"
+HOMEPAGE ="https://github.com/openzfs/zfs"
+
+SRC_URI = "https://github.com/openzfs/zfs/releases/download/${BPN}-${PV}/${BPN}-${PV}.tar.gz \
+           file://0001-Define-strndupa-if-it-does-not-exist.patch \
+"
+SRC_URI[sha256sum] = "3b52c0d493f806f638dca87dde809f53861cd318c1ebb0e60daeaa061cf1acf6"
+
+# Using both 'module' and 'autotools' classes seems a bit odd, they both
+# define a do_compile function.
+# That's why we opt for module-base, also this prevents module splitting.
+inherit module-base pkgconfig autotools
+
+DEPENDS = "virtual/kernel zlib util-linux libtirpc openssl curl"
+
+PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd sysvinit', d)}"
+
+PACKAGECONFIG[pam] = "--enable-pam --with-pamconfigsdir=${datadir}/pam-configs --with-pammoduledir=${libdir}/security, --disable-pam"
+PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,"
+PACKAGECONFIG[sysvinit] = "--enable-sysvinit,--disable-sysvinit,"
+
+EXTRA_OECONF:append = " \
+    --disable-pyzfs \
+    --with-linux=${STAGING_KERNEL_DIR} --with-linux-obj=${STAGING_KERNEL_BUILDDIR} \
+    --with-mounthelperdir=${base_sbin} \
+    --with-udevdir=${base_libdir}/udev \
+    --without-dracutdir \
+    "
+
+EXTRA_OEMAKE:append = " \
+    INSTALL_MOD_PATH=${D}${root_prefix} \
+    "
+
+do_install:append() {
+    # /usr/share/zfs contains the zfs-tests folder which we do not need:
+    rm -rf ${D}${datadir}/zfs
+
+    rm -rf ${D}${datadir}/initramfs-tools
+}
+
+FILES:${PN} += "\
+    ${base_sbindir}/* \
+    ${base_libdir}/* \
+    ${sysconfdir}/* \
+    ${sbindir}/* \
+    ${bindir}/* \
+    ${libexecdir}/${BPN}/* \
+    ${libdir}/* \
+    "
+
+FILES:${PN}-dev += "\
+    ${prefix}/src/zfs-${PV}/* \
+    ${prefix}/src/spl-${PV}/* \
+    "
+# Not yet ported to rv32
+COMPATIBLE_HOST:riscv32 = "null"
+# conflicting definition of ABS macro from asm/asm.h from kernel
+COMPATIBLE_HOST:mips = "null"
diff --git a/meta-openembedded/meta-filesystems/recipes-support/fuse/fuse3_3.10.5.bb b/meta-openembedded/meta-filesystems/recipes-support/fuse/fuse3_3.11.0.bb
similarity index 94%
rename from meta-openembedded/meta-filesystems/recipes-support/fuse/fuse3_3.10.5.bb
rename to meta-openembedded/meta-filesystems/recipes-support/fuse/fuse3_3.11.0.bb
index e0cf209..0b9164f 100644
--- a/meta-openembedded/meta-filesystems/recipes-support/fuse/fuse3_3.10.5.bb
+++ b/meta-openembedded/meta-filesystems/recipes-support/fuse/fuse3_3.11.0.bb
@@ -13,7 +13,7 @@
 
 SRC_URI = "https://github.com/libfuse/libfuse/releases/download/fuse-${PV}/fuse-${PV}.tar.xz \
 "
-SRC_URI[sha256sum] = "b2e283485d47404ac896dd0bb7f7ba81e1470838e677e45f659804c3a3b69666"
+SRC_URI[sha256sum] = "8982c4c521daf3974dda8a5d55d575c988da13a571970f00aea149eb54fdf14c"
 
 S = "${WORKDIR}/fuse-${PV}"
 
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/btrfsmaintenance/btrfsmaintenance_0.5.bb b/meta-openembedded/meta-filesystems/recipes-utils/btrfsmaintenance/btrfsmaintenance_0.5.bb
new file mode 100644
index 0000000..a4573cf
--- /dev/null
+++ b/meta-openembedded/meta-filesystems/recipes-utils/btrfsmaintenance/btrfsmaintenance_0.5.bb
@@ -0,0 +1,62 @@
+
+SUMMARY = "Services for periodic btrfs maintenance tasks"
+DESCRIPTION = "A set of scripts supplementing the btrfs filesystem and aims \
+    to automate a few maintenance tasks. This means the scrub, balance, trim \
+    or defragmentation."
+HOMEPAGE = "https://github.com/kdave/btrfsmaintenance"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=892f569a555ba9c07a568a7c0c4fa63a"
+
+SECTION = "base"
+
+DEPENDS = "btrfs-tools"
+
+SRC_URI = "git://github.com/kdave/${BPN};branch=master;protocol=https \
+    file://0001-change-sysconfig-path-to-etc-default.patch \
+    file://0002-add-WantedBy-directive-to-btrfsmaintenance-refresh.s.patch \
+"
+SRCREV = "be42cb6267055d125994abd6927cf3a26deab74c"
+
+UPSTREAM_CHECK_URI = "https://github.com/kdave/${BPN}/tags"
+UPSTREAM_CHECK_REGEX = "${BPN}/releases/tag/v(?P<pver>\d+(?:\.\d+)*)"
+
+RDEPENDS:${PN} = "bash"
+
+S="${WORKDIR}/git"
+
+inherit allarch
+
+do_configure[noexec] = "1"
+do_compile[noexec] = "1"
+
+do_install() {
+    install -Dm0644 ${S}/btrfsmaintenance-refresh.path \
+        ${D}${systemd_system_unitdir}/btrfsmaintenance-refresh.path
+    install -Dm0644 ${S}/*.timer \
+        ${D}${systemd_system_unitdir}
+    install -Dm0644 ${S}/*.service \
+        ${D}${systemd_system_unitdir}
+
+    install -Dm0644 ${S}/btrfsmaintenance-functions \
+        ${D}${datadir}/${PN}/btrfsmaintenance-functions
+    install -Dm0755 ${S}/*.sh \
+        ${D}${datadir}/${PN}
+
+    install -Dm0644 ${S}/sysconfig.btrfsmaintenance \
+        ${D}${sysconfdir}/default/btrfsmaintenance
+}
+
+inherit systemd
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE:${PN} = " \
+    btrfs-scrub.timer \
+    btrfs-scrub.service \
+    btrfs-trim.timer \
+    btrfs-trim.service \
+    btrfs-balance.timer \
+    btrfs-balance.service \
+    btrfs-defrag.timer \
+    btrfs-defrag.service \
+    btrfsmaintenance-refresh.service \
+    btrfsmaintenance-refresh.path \
+"
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/btrfsmaintenance/files/0001-change-sysconfig-path-to-etc-default.patch b/meta-openembedded/meta-filesystems/recipes-utils/btrfsmaintenance/files/0001-change-sysconfig-path-to-etc-default.patch
new file mode 100644
index 0000000..d425206
--- /dev/null
+++ b/meta-openembedded/meta-filesystems/recipes-utils/btrfsmaintenance/files/0001-change-sysconfig-path-to-etc-default.patch
@@ -0,0 +1,47 @@
+From b49dbe17e0d9ae463e5a34e6991aa2d3c70d2fb1 Mon Sep 17 00:00:00 2001
+From: Claudius Heine <ch@denx.de>
+Date: Wed, 11 May 2022 14:33:13 +0200
+Subject: [PATCH] change sysconfig path to /etc/default
+
+OE uses /etc/default for service configuration, not /etc/sysconfig which
+is used by SUSE and RedHat based distributions.
+
+Change the files accordingly
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Claudius Heine <ch@denx.de>
+---
+ btrfsmaintenance-refresh.path    | 4 ++--
+ btrfsmaintenance-refresh.service | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/btrfsmaintenance-refresh.path b/btrfsmaintenance-refresh.path
+index d56ad11..f0b4132 100644
+--- a/btrfsmaintenance-refresh.path
++++ b/btrfsmaintenance-refresh.path
+@@ -1,8 +1,8 @@
+ [Unit]
+-Description=Watch /etc/sysconfig/btrfsmaintenance
++Description=Watch /etc/default/btrfsmaintenance
+ 
+ [Path]
+-PathChanged=/etc/sysconfig/btrfsmaintenance
++PathChanged=/etc/default/btrfsmaintenance
+ 
+ [Install]
+ WantedBy=multi-user.target
+diff --git a/btrfsmaintenance-refresh.service b/btrfsmaintenance-refresh.service
+index 4ed1eb4..d6225a6 100644
+--- a/btrfsmaintenance-refresh.service
++++ b/btrfsmaintenance-refresh.service
+@@ -1,5 +1,5 @@
+ [Unit]
+-Description=Update cron periods from /etc/sysconfig/btrfsmaintenance
++Description=Update cron periods from /etc/default/btrfsmaintenance
+ 
+ [Service]
+ ExecStart=/usr/share/btrfsmaintenance/btrfsmaintenance-refresh-cron.sh systemd-timer
+-- 
+2.33.3
+
diff --git a/meta-openembedded/meta-filesystems/recipes-utils/btrfsmaintenance/files/0002-add-WantedBy-directive-to-btrfsmaintenance-refresh.s.patch b/meta-openembedded/meta-filesystems/recipes-utils/btrfsmaintenance/files/0002-add-WantedBy-directive-to-btrfsmaintenance-refresh.s.patch
new file mode 100644
index 0000000..0da7992
--- /dev/null
+++ b/meta-openembedded/meta-filesystems/recipes-utils/btrfsmaintenance/files/0002-add-WantedBy-directive-to-btrfsmaintenance-refresh.s.patch
@@ -0,0 +1,33 @@
+From 420ae0f395838b852ae8b8fe5528056c36dc0919 Mon Sep 17 00:00:00 2001
+From: Claudius Heine <ch@denx.de>
+Date: Wed, 11 May 2022 15:14:22 +0200
+Subject: [PATCH] add WantedBy directive to btrfsmaintenance-refresh.service
+
+Just trigger the service on the first boot, to configure services to the
+configuration file deployed in the package, afterwards disable the
+service, so that is only triggered when the configuration file has
+changed.
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Claudius Heine <ch@denx.de>
+---
+ btrfsmaintenance-refresh.service | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/btrfsmaintenance-refresh.service b/btrfsmaintenance-refresh.service
+index d6225a6..58d0e09 100644
+--- a/btrfsmaintenance-refresh.service
++++ b/btrfsmaintenance-refresh.service
+@@ -3,4 +3,8 @@ Description=Update cron periods from /etc/default/btrfsmaintenance
+ 
+ [Service]
+ ExecStart=/usr/share/btrfsmaintenance/btrfsmaintenance-refresh-cron.sh systemd-timer
++ExecStart=systemctl disable btrfsmaintenance-refresh.service
+ Type=oneshot
++
++[Install]
++WantedBy=multi-user.target
+-- 
+2.33.3
+
diff --git a/meta-openembedded/meta-gnome/conf/layer.conf b/meta-openembedded/meta-gnome/conf/layer.conf
index 2fb3485..d4d167d 100644
--- a/meta-openembedded/meta-gnome/conf/layer.conf
+++ b/meta-openembedded/meta-gnome/conf/layer.conf
@@ -15,9 +15,9 @@
 # cause compatibility issues with other layers
 LAYERVERSION_gnome-layer = "1"
 
-LAYERDEPENDS_gnome-layer = "core openembedded-layer networking-layer"
+LAYERDEPENDS_gnome-layer = "core openembedded-layer networking-layer meta-python"
 
-LAYERSERIES_COMPAT_gnome-layer = "kirkstone"
+LAYERSERIES_COMPAT_gnome-layer = "kirkstone langdale"
 
 SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += "\
   faenza-icon-theme->gdk-pixbuf \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_42.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_42.2.bb
index af6d74c..c9e5617 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_42.2.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evince/evince_42.2.bb
@@ -14,7 +14,7 @@
     orc \
     adwaita-icon-theme \
     libhandy \
-    ${@bb.utils.contains('DISTRO_FEATURES','x11','gnome-desktop','',d)} \
+    ${@bb.utils.contains('DISTRO_FEATURES','x11','gnome-desktop','dbus',d)} \
 "
 
 GNOMEBASEBUILDCLASS = "meson"
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-cmake-Do-not-export-CC-into-gir-compiler.patch b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-cmake-Do-not-export-CC-into-gir-compiler.patch
index 8fd077c..fda84ac 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-cmake-Do-not-export-CC-into-gir-compiler.patch
+++ b/meta-openembedded/meta-gnome/recipes-gnome/evolution-data-server/evolution-data-server/0001-cmake-Do-not-export-CC-into-gir-compiler.patch
@@ -1,6 +1,6 @@
---- a/cmake/modules/GObjectIntrospection.cmake	2022-03-06 18:10:47.724184883 +0100
-+++ b/cmake/modules/GObjectIntrospection.cmake	2022-03-06 18:10:12.560450948 +0100
-@@ -122,9 +122,7 @@
+--- a/cmake/modules/GObjectIntrospection.cmake
++++ b/cmake/modules/GObjectIntrospection.cmake
+@@ -122,9 +122,7 @@ macro(gir_add_introspection gir)
  		file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/${_gir_name}_files "${_gir_files}")
  
  		add_custom_command(
@@ -11,3 +11,11 @@
  				${INTROSPECTION_SCANNER_ARGS}
  				--namespace=${_gir_namespace}
  				--nsversion=${_gir_version}
+@@ -240,7 +238,6 @@ macro(gir_add_introspection_simple gir_l
+ 		${_gir_identifies_prefixes}
+ 		${_gir_deps}
+ 		--add-include-path=${SHARE_INSTALL_PREFIX}/gir-1.0
+-		--library-path=${LIB_INSTALL_DIR}
+ 		${_extra_library_path}
+ 		--pkg-export ${pkg_export_prefix}-${gir_library_version}
+ 		--c-include=${c_include}
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gnome-text-editor/gnome-text-editor_42.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/gnome-text-editor/gnome-text-editor_42.1.bb
similarity index 84%
rename from meta-openembedded/meta-gnome/recipes-gnome/gnome-text-editor/gnome-text-editor_42.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gnome-text-editor/gnome-text-editor_42.1.bb
index 01504b1..7efc686 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gnome-text-editor/gnome-text-editor_42.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gnome-text-editor/gnome-text-editor_42.1.bb
@@ -19,7 +19,7 @@
 ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
 REQUIRED_DISTRO_FEATURES = "opengl"
 
-SRC_URI[archive.sha256sum] = "0e32140ee1c13428563bcd5f784e61ee22ffd1ad27d8c02283b4358a81dfab50"
+SRC_URI[archive.sha256sum] = "a3c8508033bfb63a8b48a062ac1e67b2c333ba0153879b38c661968a103ad15c"
 
 FILES:${PN} += " \
     ${datadir}/metainfo \
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/gtk4/gtk4_4.6.2.bb b/meta-openembedded/meta-gnome/recipes-gnome/gtk4/gtk4_4.6.4.bb
similarity index 97%
rename from meta-openembedded/meta-gnome/recipes-gnome/gtk4/gtk4_4.6.2.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/gtk4/gtk4_4.6.4.bb
index fdfe363..9f47371 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/gtk4/gtk4_4.6.2.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/gtk4/gtk4_4.6.4.bb
@@ -33,7 +33,7 @@
 UPSTREAM_CHECK_REGEX = "gtk-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar.xz"
 
 SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk/${MAJ_VER}/gtk-${PV}.tar.xz"
-SRC_URI[sha256sum] = "ff263af609a50eb76056653592d929459aef4819a444c436f6d52c6f63c1faec"
+SRC_URI[sha256sum] = "a79a2bbcc7931b703fc4fa1fcbe1b906e229a1522d854d522801766a79bcac9f"
 
 S = "${WORKDIR}/gtk-${PV}"
 
diff --git a/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.42.0.bb b/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.42.1.bb
similarity index 88%
rename from meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.42.0.bb
rename to meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.42.1.bb
index ba2d459..d48eb82 100644
--- a/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.42.0.bb
+++ b/meta-openembedded/meta-gnome/recipes-gnome/zenity/zenity_3.42.1.bb
@@ -14,7 +14,7 @@
 
 REQUIRED_DISTRO_FEATURES = "x11"
 
-SRC_URI[archive.sha256sum] = "c24c7fe6bb43163ced8adf232d583b2e013d3ba6c28deb5fcf807985e3deb5ef"
+SRC_URI[archive.sha256sum] = "a08e0c8e626615ee2c23ff74628eba6f8b486875dd54371ca7e2d7605b72a87c"
 SRC_URI += "file://0001-Harcode-shebang-to-avoid-pointing-to-build-system-s-.patch"
 
 PACKAGECONFIG[libnotify] = "-Dlibnotify=true,-Dlibnotify=false,libnotify"
diff --git a/meta-openembedded/meta-initramfs/conf/layer.conf b/meta-openembedded/meta-initramfs/conf/layer.conf
index c63383f..6aa64f1 100644
--- a/meta-openembedded/meta-initramfs/conf/layer.conf
+++ b/meta-openembedded/meta-initramfs/conf/layer.conf
@@ -16,7 +16,7 @@
 BBFILE_PRIORITY_meta-initramfs = "5"
 LAYERDEPENDS_meta-initramfs = "core"
 
-LAYERSERIES_COMPAT_meta-initramfs = "kirkstone"
+LAYERSERIES_COMPAT_meta-initramfs = "kirkstone langdale"
 
 SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \
   dracut->virtual/kernel \
diff --git a/meta-openembedded/meta-multimedia/conf/layer.conf b/meta-openembedded/meta-multimedia/conf/layer.conf
index b5120bb..ee6694c 100644
--- a/meta-openembedded/meta-multimedia/conf/layer.conf
+++ b/meta-openembedded/meta-multimedia/conf/layer.conf
@@ -31,4 +31,4 @@
 
 LAYERDEPENDS_multimedia-layer = "core openembedded-layer meta-python"
 
-LAYERSERIES_COMPAT_multimedia-layer = "kirkstone"
+LAYERSERIES_COMPAT_multimedia-layer = "kirkstone langdale"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera.bb
index 7136260..0b9f3f7 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/libcamera/libcamera.bb
@@ -64,10 +64,10 @@
 
 FILES:${PN}-dev = "${includedir} ${libdir}/pkgconfig"
 FILES:${PN}-dev += " ${libdir}/libcamera.so"
-FILES:${PN}-dev += " ${libdir}/libcamera.so.0"
+FILES:${PN} += " ${libdir}/libcamera.so.0"
 FILES:${PN} += " ${libdir}/libcamera.so.0.0.0"
 FILES:${PN}-dev += " ${libdir}/libcamera-base.so"
-FILES:${PN}-dev += " ${libdir}/libcamera-base.so.0"
+FILES:${PN} += " ${libdir}/libcamera-base.so.0"
 FILES:${PN} += " ${libdir}/libcamera-base.so.0.0.0"
 FILES:${PN} += " ${libdir}/v4l2-compat.so"
 FILES:${PN}-gst = "${libdir}/gstreamer-1.0/libgstlibcamera.so"
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/mimic/mimic_1.3.0.1.bb b/meta-openembedded/meta-multimedia/recipes-multimedia/mimic/mimic_1.3.0.1.bb
index ac0165a..76f5119 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/mimic/mimic_1.3.0.1.bb
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/mimic/mimic_1.3.0.1.bb
@@ -7,7 +7,7 @@
 LICENSE = "MIT & \
            PD & \
            CMU-Tex & \
-           BSD & \
+           rateconv & \
            BSD-2-Clause & \
            BSD-3-Clause & \
            flite & \
diff --git a/meta-openembedded/meta-multimedia/recipes-multimedia/minidlna/minidlna.inc b/meta-openembedded/meta-multimedia/recipes-multimedia/minidlna/minidlna.inc
index b913a83..4959a3c 100644
--- a/meta-openembedded/meta-multimedia/recipes-multimedia/minidlna/minidlna.inc
+++ b/meta-openembedded/meta-multimedia/recipes-multimedia/minidlna/minidlna.inc
@@ -1,6 +1,6 @@
 DESCRIPTION = "MiniDLNA (aka ReadyDLNA) is server software with the aim of \
 being fully compliant with DLNA/UPnP-AV clients."
-LICENSE = "GPL-2.0|BSD-3-Clause"
+LICENSE = "GPL-2.0-only|BSD-3-Clause"
 DEPENDS = "ffmpeg flac libav jpeg sqlite3 libexif libogg libid3tag libvorbis"
 
 # because it depends on libav which has commercial flag
diff --git a/meta-openembedded/meta-networking/conf/layer.conf b/meta-openembedded/meta-networking/conf/layer.conf
index 3f9699a..fd28f30 100644
--- a/meta-openembedded/meta-networking/conf/layer.conf
+++ b/meta-openembedded/meta-networking/conf/layer.conf
@@ -15,9 +15,8 @@
 
 LAYERDEPENDS_networking-layer = "core"
 LAYERDEPENDS_networking-layer += "openembedded-layer"
-LAYERDEPENDS_networking-layer += "meta-python"
 
-LAYERSERIES_COMPAT_networking-layer = "kirkstone"
+LAYERSERIES_COMPAT_networking-layer = "kirkstone langdale"
 
 LICENSE_PATH += "${LAYERDIR}/licenses"
 
@@ -25,3 +24,6 @@
   wireguard-tools->wireguard-module \
   wireless-regdb->crda \
 "
+BBFILES_DYNAMIC += " \
+    meta-python:${LAYERDIR}/dynamic-layers/meta-python/recipes-*/*/*.bb \
+"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/0001-Make-alpha2-to-be-3-characters-long.patch b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/0001-Make-alpha2-to-be-3-characters-long.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/crda/crda/0001-Make-alpha2-to-be-3-characters-long.patch
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/0001-Make-alpha2-to-be-3-characters-long.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/0001-Makefile-respect-LDFLAGS-for-libreg.patch b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/0001-Makefile-respect-LDFLAGS-for-libreg.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/crda/crda/0001-Makefile-respect-LDFLAGS-for-libreg.patch
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/0001-Makefile-respect-LDFLAGS-for-libreg.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/crda-4.14-python-3.patch b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/crda-4.14-python-3.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/crda/crda/crda-4.14-python-3.patch
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/crda-4.14-python-3.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/do-not-run-ldconfig-if-destdir-is-set.patch b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/do-not-run-ldconfig-if-destdir-is-set.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/crda/crda/do-not-run-ldconfig-if-destdir-is-set.patch
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/do-not-run-ldconfig-if-destdir-is-set.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/fix-gcc-6-unused-variables.patch b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/fix-gcc-6-unused-variables.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/crda/crda/fix-gcc-6-unused-variables.patch
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/fix-gcc-6-unused-variables.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/fix-issues-when-USE_OPENSSL-1.patch b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/fix-issues-when-USE_OPENSSL-1.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/crda/crda/fix-issues-when-USE_OPENSSL-1.patch
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/fix-issues-when-USE_OPENSSL-1.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/fix-linking-of-libraries-used-by-reglib.patch b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/fix-linking-of-libraries-used-by-reglib.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/crda/crda/fix-linking-of-libraries-used-by-reglib.patch
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/fix-linking-of-libraries-used-by-reglib.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/make.patch b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/make.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/crda/crda/make.patch
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/make.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda/use-target-word-size-instead-of-host-s.patch b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/use-target-word-size-instead-of-host-s.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/crda/crda/use-target-word-size-instead-of-host-s.patch
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda/use-target-word-size-instead-of-host-s.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/crda/crda_3.18.bb b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda_3.18.bb
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/crda/crda_3.18.bb
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/crda/crda_3.18.bb
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/firewalld/files/firewalld.init b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/firewalld/files/firewalld.init
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/firewalld/files/firewalld.init
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/firewalld/files/firewalld.init
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.9.4.bb b/meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/firewalld/firewalld_0.9.4.bb
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/firewalld/firewalld_0.9.4.bb
rename to meta-openembedded/meta-networking/dynamic-layers/meta-python/recipes-connectivity/firewalld/firewalld_0.9.4.bb
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0001-libnm-client-test-add-dependency-libnm_client_public.patch b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0001-libnm-client-test-add-dependency-libnm_client_public.patch
new file mode 100644
index 0000000..6be2d4b
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager/0001-libnm-client-test-add-dependency-libnm_client_public.patch
@@ -0,0 +1,34 @@
+From 7b5dc04e1fcc28dc653fb7bf0e9dda3700d93218 Mon Sep 17 00:00:00 2001
+From: Yi Zhao <yi.zhao@windriver.com>
+Date: Tue, 3 May 2022 15:30:37 +0800
+Subject: [PATCH] libnm-client-test: add dependency libnm_client_public_dep
+
+Fix parallel build error:
+| In file included from ../NetworkManager-1.36.0/src/libnm-client-test/nm-test-utils-impl.c:10:
+| ../NetworkManager-1.36.0/src/libnm-client-public/NetworkManager.h:47:10: fatal error: nm-enum-types.h: No such file or directory
+|    47 | #include "nm-enum-types.h"
+|       |          ^~~~~~~~~~~~~~~~~
+
+Upstream-Status: Submitted
+[https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1206]
+
+Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
+---
+ src/libnm-client-test/meson.build | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/libnm-client-test/meson.build b/src/libnm-client-test/meson.build
+index 8e2fba1130..bcac437702 100644
+--- a/src/libnm-client-test/meson.build
++++ b/src/libnm-client-test/meson.build
+@@ -13,6 +13,7 @@ libnm_client_test = static_library(
+   ],
+   dependencies: [
+     libnm_core_public_dep,
++    libnm_client_public_dep,
+     glib_dep,
+   ],
+ )
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.36.2.bb b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.36.2.bb
index b09ff18..6c665d5 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.36.2.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/networkmanager/networkmanager_1.36.2.bb
@@ -29,6 +29,7 @@
     file://enable-dhcpcd.conf \
     file://enable-iwd.conf \
     file://0001-do-not-ask-host-for-ifcfg-defaults.patch \
+    file://0001-libnm-client-test-add-dependency-libnm_client_public.patch \
 "
 SRC_URI[sha256sum] = "ab855cbe3b41832e9a3b003810e7c7313dfe19e630d29806d14d87fdd1470cab"
 
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/ufw/ufw_0.36.1.bb b/meta-openembedded/meta-networking/recipes-connectivity/ufw/ufw_0.36.1.bb
index 6dca784..b6a768e 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/ufw/ufw_0.36.1.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/ufw/ufw_0.36.1.bb
@@ -63,7 +63,7 @@
 FILES:${PN} += " \
                 ${sbindir}/* \
                 ${datadir}/ufw/* \
-                /lib/ufw/* \
+                ${nonarch_base_libdir}/ufw/* \
                 ${sysconfdir}/ufw/* \
                 ${sysconfdir}/default/ufw \
 "
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.2.0.bb b/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.3.0.bb
similarity index 93%
rename from meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.2.0.bb
rename to meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.3.0.bb
index 78a24bc..40a48f6 100644
--- a/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.2.0.bb
+++ b/meta-openembedded/meta-networking/recipes-connectivity/wolfssl/wolfssl_5.3.0.bb
@@ -13,7 +13,7 @@
 RPROVIDES:${PN} = "cyassl"
 
 SRC_URI = "git://github.com/wolfSSL/wolfssl.git;protocol=https;branch=master"
-SRCREV = "e6c07a296d2996e8d5c3cc615dfc50013bbcc794"
+SRCREV = "e722c15be860794179082a05d09e6a90dc77ccf0"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb b/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
index 892ecc7..143e487 100644
--- a/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
+++ b/meta-openembedded/meta-networking/recipes-core/packagegroups/packagegroup-meta-networking.bb
@@ -31,7 +31,6 @@
     "
 
 RDEPENDS:packagegroup-meta-networking-connectivity = "\
-    crda \
     daq \
     adcli \
     ${@bb.utils.contains("DISTRO_FEATURES", "bluetooth x11", "blueman", "", d)} \
@@ -49,14 +48,13 @@
     vlan \
     vpnc \
     ez-ipupdate \
-    firewalld \
+    ${@bb.utils.contains("BBFILE_COLLECTIONS", "meta-python", "firewalld", "", d)} \
     freeradius \
     mbedtls \
     miniupnpd \
     mosquitto \
     nanomsg \
     nng \
-    netplan \
     networkmanager-openvpn \
     networkmanager \
     openconnect \
@@ -100,7 +98,6 @@
 RDEPENDS:packagegroup-meta-networking-daemons:remove:libc-musl = "opensaf"
 
 RDEPENDS:packagegroup-meta-networking-devtools = "\
-    python3-ldap \
     python3-scapy \
 "
 
@@ -241,7 +238,6 @@
     ndpi \
     ntopng \
     nuttcp \
-    nvmetcli \
     open-isns \
     openipmi \
     phytool \
diff --git a/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap/0001-coap_session.c-Balance-SESSIONS_ADD-and-SESSIONS_DEL.patch b/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap/0001-coap_session.c-Balance-SESSIONS_ADD-and-SESSIONS_DEL.patch
new file mode 100644
index 0000000..c8ac848
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap/0001-coap_session.c-Balance-SESSIONS_ADD-and-SESSIONS_DEL.patch
@@ -0,0 +1,51 @@
+From c56a64ff4df7eecb6c88ff929497bcd0d65934f2 Mon Sep 17 00:00:00 2001
+From: Jon Shallow <supjps-libcoap@jpshallow.com>
+Date: Fri, 22 Apr 2022 13:15:39 +0100
+Subject: [PATCH] coap_session.c: Balance SESSIONS_ADD and SESSIONS_DELETE
+ usage
+
+Upstream-Status: Backport [https://github.com/obgm/libcoap/commit/7e20aa9ef17277f39203334404e6c776b1171a7d]
+Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
+Signed-off-by: Alex Kiernan <alexk@zuma.ai>
+---
+ src/coap_session.c | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/src/coap_session.c b/src/coap_session.c
+index 77cae598f0af..536e57573361 100644
+--- a/src/coap_session.c
++++ b/src/coap_session.c
+@@ -813,6 +813,12 @@ coap_session_create_client(
+   return session;
+ 
+ error:
++  /*
++   * Need to add in the session as coap_session_release()
++   * will call SESSIONS_DELETE in coap_session_free().
++   */
++  if (session)
++    SESSIONS_ADD(ctx->sessions, session);
+   coap_session_release(session);
+   return NULL;
+ }
+@@ -1133,11 +1139,17 @@ coap_session_t *coap_new_server_session(
+   if (session) {
+     coap_log(LOG_DEBUG, "***%s: new incoming session\n",
+              coap_session_str(session));
++    /* Returned session may already have been released and is now NULL */
+     session = coap_session_accept(session);
+   }
+   return session;
+ 
+ error:
++  /*
++   * Need to add in the session as coap_session_release()
++   * will call SESSIONS_DELETE in coap_session_free().
++   */
++  SESSIONS_ADD(ep->sessions, session);
+   coap_session_free(session);
+   return NULL;
+ }
+-- 
+2.35.1
+
diff --git a/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap/0001-libcoap-Fix-gnu-configize-error.patch b/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap/0001-libcoap-Fix-gnu-configize-error.patch
new file mode 100644
index 0000000..64f8d3a
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap/0001-libcoap-Fix-gnu-configize-error.patch
@@ -0,0 +1,44 @@
+From 25f1bebf1bc4c8da47f976d24a7a424253744e2e Mon Sep 17 00:00:00 2001
+From: Alex Kiernan <alex.kiernan@gmail.com>
+Date: Wed, 24 Mar 2021 09:10:17 +0000
+Subject: [PATCH] libcoap: Fix gnu-configize error
+
+Fix:
+
+  autoreconf: running: gnu-configize
+  gnu-configize: 'configure.ac' or 'configure.in' is required
+  autoreconf: gnu-configize failed with exit status: 1
+
+We're not pulling in the ext/tinydtls submodule, so this fails.
+
+Upstream-Status: Inappropriate [oe-specific]
+Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
+Signed-off-by: Alex Kiernan <alexk@zuma.ai>
+---
+ configure.ac | 13 -------------
+ 1 file changed, 13 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 9f51f4c67557..559808e03aa2 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -472,19 +472,6 @@ if test "x$build_dtls" = "xyes"; then
+         have_tinydtls="no" # don't confuse AC_MSG_RESULT at the end of the script
+     fi
+ 
+-    # The user wants to use explicit TinyDTLS if '--with-tinydtls was set'.
+-    if test "x$with_tinydtls" = "xyes" ; then
+-        if test -d "$srcdir/ext/tinydtls"; then
+-           AC_CONFIG_SUBDIRS([ext/tinydtls])
+-           have_tinydtls="yes"
+-         else
+-           have_tinydtls="no" # don't confuse AC_MSG_RESULT at the end of the script
+-         fi
+-         have_gnutls="no" # don't confuse AC_MSG_RESULT at the end of the script
+-         have_openssl="no" # don't confuse AC_MSG_RESULT at the end of the script
+-         have_mbedtls="no" # don't confuse AC_MSG_RESULT at the end of the script
+-    fi
+-
+     if test "$TLSCOUNT" -eq 0; then
+       # The user hasn't requested the use of a specific cryptography library
+       # we try first GnuTLS for usability ...
diff --git a/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap/run-ptest b/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap/run-ptest
new file mode 100644
index 0000000..b56ffe6
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap/run-ptest
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+if /usr/lib/libcoap/ptest/testdriver; then
+	echo "PASS: libcoap"
+else
+	echo "FAIL: libcoap"
+fi
diff --git a/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap_4.3.0.bb b/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap_4.3.0.bb
new file mode 100644
index 0000000..aba81d1
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-devtools/libcoap/libcoap_4.3.0.bb
@@ -0,0 +1,58 @@
+SUMMARY = "A C implementation of the Constrained Application Protocol"
+DESCRIPTION = "libcoap implements a lightweight application-protocol for \
+devices that are constrained their resources such as computing power, \
+RF range, memory, bandwith, or network packet sizes."
+HOMEPAGE ="https://libcoap.net/"
+
+LICENSE = "BSD-2-Clause & BSD-1-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e44b3af4925ec58e9f49b9ff143b5493"
+
+SRC_URI = "git://github.com/obgm/libcoap.git;branch=main;protocol=https \
+           file://0001-libcoap-Fix-gnu-configize-error.patch \
+           file://0001-coap_session.c-Balance-SESSIONS_ADD-and-SESSIONS_DEL.patch \
+           file://run-ptest \
+           "
+SRCREV = "1da37b9abbe871675d5939395b498324ccc8ecfe"
+
+S = "${WORKDIR}/git"
+
+inherit autotools manpages pkgconfig ptest
+
+PACKAGECONFIG ?= "\
+    async openssl tcp \
+    ${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
+"
+PACKAGECONFIG[async] = "--enable-async,--disable-async"
+PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls,,openssl mbedtls"
+PACKAGECONFIG[manpages] = "--enable-documentation --enable-doxygen --enable-manpages,--disable-documentation,asciidoc-native doxygen-native graphviz-native"
+PACKAGECONFIG[mbedtls] = "--with-mbedtls,--without-mbedtls,mbedtls,,gnutls openssl"
+PACKAGECONFIG[openssl] = "--with-openssl,--without-openssl,openssl,,gnutls mbedtls"
+PACKAGECONFIG[small-stack] = "--enable-small-stack,--disable-small-stack"
+PACKAGECONFIG[tcp] = "--enable-tcp,--disable-tcp"
+PACKAGECONFIG[tests] = "--enable-tests,--disable-tests,cunit"
+
+EXTRA_OECONF = "\
+    --with-epoll --enable-add-default-names \
+    --without-tinydtls \
+    ${@bb.utils.contains_any('PACKAGECONFIG', 'gnutls openssl mbedtls', '--enable-dtls', '--disable-dtls', d)} \
+"
+
+python () {
+    if d.getVar('PTEST_ENABLED') == "1":
+        d.setVar('DISABLE_STATIC', '')
+}
+
+export SGML_CATALOG_FILES="file://${STAGING_ETCDIR_NATIVE}/xml/catalog"
+
+do_install_ptest () {
+	install -d ${D}${PTEST_PATH}
+	install -m 0755 ${WORKDIR}/run-ptest ${D}${PTEST_PATH}/run-ptest
+	install -m 0755 ${B}/tests/testdriver ${D}${PTEST_PATH}/testdriver
+}
+
+PACKAGE_BEFORE_PN += "\
+    ${PN}-bin \
+"
+
+FILES:${PN}-bin = "${bindir}"
+FILES:${PN}-dev += "${datadir}/${BPN}/examples"
diff --git a/meta-openembedded/meta-networking/recipes-extended/tgt/tgt_git.bb b/meta-openembedded/meta-networking/recipes-extended/tgt/tgt_git.bb
index 42141cb..ada0fd1 100644
--- a/meta-openembedded/meta-networking/recipes-extended/tgt/tgt_git.bb
+++ b/meta-openembedded/meta-networking/recipes-extended/tgt/tgt_git.bb
@@ -4,8 +4,8 @@
 LIC_FILES_CHKSUM = "file://scripts/tgtd.spec;beginline=7;endline=7;md5=21c19ea7dad04648b9c2f791b6e29b4c"
 DEPENDS = "sg3-utils libaio"
 
-SRCREV = "b43dbc6711e43c0a32cc4d9df22884841d911d51"
-PV = "1.0.79+git${SRCPV}"
+SRCREV = "fd4ca0546aa20fa9627c41ca2028db26e11f8d56"
+PV = "1.0.82"
 
 SRC_URI = "git://github.com/fujita/tgt.git;branch=master;protocol=https \
 	file://0001-Correct-the-path-of-header-files-check-in-Yocto-buil.patch \
diff --git a/meta-openembedded/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.6.bb b/meta-openembedded/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.6.bb
index e76238f..50f7ced 100644
--- a/meta-openembedded/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.6.bb
+++ b/meta-openembedded/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.6.bb
@@ -35,5 +35,5 @@
 
 # fix error message: Do not forget that you need *root* or CAP_NET_ADMIN capabilities ;-)
 pkg_postinst:${PN} () {
-    setcap cap_net_admin+ep $D/${sbindir}/conntrack"
-}
\ No newline at end of file
+    setcap cap_net_admin+ep "$D/${sbindir}/conntrack"
+}
diff --git a/meta-openembedded/meta-networking/recipes-filter/ulogd2/ulogd2/ulogd.init b/meta-openembedded/meta-networking/recipes-filter/ulogd2/ulogd2/ulogd.init
new file mode 100644
index 0000000..05d284e
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/ulogd2/ulogd2/ulogd.init
@@ -0,0 +1,180 @@
+#! /bin/sh
+### BEGIN INIT INFO
+# Provides:          ulogd2 ulogd
+# Required-Start:    $local_fs
+# Should-Start:
+# Required-Stop:     $local_fs
+# Should-Stop:
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: Userspace logging daemon for netfilter/iptables
+### END INIT INFO
+
+# The definition of actions: (From LSB 3.1.0)
+# start         start the service
+# stop          stop the service
+# restart       stop and restart the service if the service is already running,
+#               otherwise start the service
+# try-restart	restart the service if the service is already running
+# reload	cause the configuration of the service to be reloaded without
+#               actually stopping and restarting the service
+# force-reload	cause the configuration to be reloaded if the service supports
+#               this, otherwise restart the service if it is running
+# status	print the current status of the service
+
+# The start, stop, restart, force-reload, and status actions shall be supported
+# by all init scripts; the reload and the try-restart actions are optional
+
+# PATH should only include /usr/* if it runs after the mountnfs.sh script
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+
+DESC="Userspace logging daemon for netfilter/iptables"
+NAME="ulogd"
+DAEMON=/usr/sbin/$NAME
+DAEMON_ARGS="-d"
+PIDFILE=/var/run/$NAME.pid
+
+. /etc/init.d/functions || exit 1
+
+# Exit if the package is not installed
+[ -x "$DAEMON" ] || exit 0
+
+# Read configuration variable file if it is present
+[ -r /etc/default/$NAME ] && . /etc/default/$NAME
+
+#
+# Function that starts the daemon/service
+#
+do_start() {
+	local status pid
+
+	status=0
+	pid=`pidofproc $NAME` || status=$?
+	case $status in
+	0)
+		echo "$DESC already running ($pid)."
+		exit 1
+		;;
+	*)
+		echo "Starting $DESC ..."
+		exec $DAEMON $DAEMON_ARGS >/dev/null 2>&1 || status=$?
+		echo "ERROR: Failed to start $DESC."
+		exit $status
+		;;
+	esac
+
+	# Add code here, if necessary, that waits for the process to be ready
+	# to handle requests from services started subsequently which depend
+	# on this one.  As a last resort, sleep for some time.
+}
+
+#
+# Function that stops the daemon/service
+#
+do_stop() {
+	local pid status
+
+	status=0
+	pid=`pidofproc $NAME` || status=$?
+	case $status in
+	0)
+		# Exit when fail to stop, the kill would complain when fail
+		kill -s 15 $pid >/dev/null && rm -f $PIDFILE && \
+			echo "Stopped $DESC ($pid)." || exit $?
+		;;
+	*)
+		echo "$DESC is not running; none killed." >&2
+		;;
+	esac
+
+	# Wait for children to finish too if this is a daemon that forks
+	# and if the daemon is only ever run from this initscript.
+	# If the above conditions are not satisfied then add some other code
+	# that waits for the process to drop all resources that could be
+	# needed by services started subsequently.  A last resort is to
+	# sleep for some time.
+	return $status
+}
+
+#
+# Function that sends a SIGHUP to the daemon/service
+#
+do_reload() {
+	local pid status
+
+	status=0
+        # If the daemon can reload its configuration without
+        # restarting (for example, when it is sent a SIGHUP),
+        # then implement that here.
+	pid=`pidofproc $NAME` || status=$?
+	case $status in
+	0)
+		echo "Reloading $DESC ..."
+		kill -s 1 $pid || exit $?
+		;;
+	*)
+		echo "$DESC is not running; none reloaded." >&2
+		;;
+	esac
+	exit $status
+}
+
+
+#
+# Function that shows the daemon/service status
+#
+status_of_proc () {
+	local pid status
+
+	status=0
+	# pidof output null when no program is running, so no "2>/dev/null".
+	pid=`pidofproc $NAME` || status=$?
+	case $status in
+	0)
+		echo "$DESC is running ($pid)."
+		exit 0
+		;;
+	*)
+		echo "$DESC is not running." >&2
+		exit $status
+		;;
+	esac
+}
+
+case "$1" in
+start)
+	do_start
+	;;
+stop)
+	do_stop || exit $?
+	;;
+status)
+	status_of_proc
+	;;
+restart)
+	# Always start the service regardless the status of do_stop
+	do_stop
+	do_start
+	;;
+try-restart|force-reload)
+	# force-reload is the same as reload or try-restart according
+	# to its definition, the reload is not implemented here, so
+	# force-reload is the alias of try-restart here, but it should
+	# be the alias of reload if reload is implemented.
+	#
+	# Only start the service when do_stop succeeds
+	do_stop && do_start
+	;;
+reload)
+	# If the "reload" action is implemented properly, then let the
+	# force-reload be the alias of reload, and remove it from
+	# try-restart|force-reload)
+	#
+	do_reload
+	;;
+*)
+	echo "Usage: $0 {start|stop|status|restart|try-restart|force-reload}" >&2
+	exit 3
+	;;
+esac
+
diff --git a/meta-openembedded/meta-networking/recipes-filter/ulogd2/ulogd2/ulogd.service b/meta-openembedded/meta-networking/recipes-filter/ulogd2/ulogd2/ulogd.service
new file mode 100644
index 0000000..cf62962
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/ulogd2/ulogd2/ulogd.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Netfilter Ulogd daemon
+Before=network-pre.target
+Wants=network-pre.target
+
+[Service]
+ExecStart=@SBINDIR@/ulogd
+ExecReload=kill -HUP ${MAINPID}
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta-openembedded/meta-networking/recipes-filter/ulogd2/ulogd2_2.0.7.bb b/meta-openembedded/meta-networking/recipes-filter/ulogd2/ulogd2_2.0.7.bb
new file mode 100644
index 0000000..7a307dc
--- /dev/null
+++ b/meta-openembedded/meta-networking/recipes-filter/ulogd2/ulogd2_2.0.7.bb
@@ -0,0 +1,80 @@
+SUMMARY = "Userspace logging daemon for netfilter/iptables"
+DESCRIPTION = "ulogd-2.x provides a flexible, almost universal logging daemon for \
+netfilter logging. This encompasses both packet-based logging (logging of \
+policy violations) and flow-based logging, e.g. for accounting purpose."
+HOMEPAGE = "https://www.netfilter.org/projects/ulogd/index.html"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://COPYING;md5=c93c0550bd3173f4504b2cbd8991e50b"
+
+DEPENDS = "libnfnetlink"
+PROVIDES = "ulogd"
+
+PV .= "+git${SRCPV}"
+
+SRC_URI = "git://git.netfilter.org/ulogd2;branch=master \
+           file://ulogd.init \
+           file://ulogd.service \
+"
+SRCREV = "5f9628c9273815b6e560603427fe86118e7cb5bb"
+
+S = "${WORKDIR}/git"
+
+inherit autotools manpages pkgconfig systemd update-rc.d
+
+PACKAGECONFIG ?= "dbi json nfacct nfct nflog pcap sqlite3 ulog"
+PACKAGECONFIG[dbi] = "--enable-dbi,--disable-dbi,libdbi"
+PACKAGECONFIG[json] = "--enable-json,--disable-json,jansson"
+PACKAGECONFIG[manpages] = ""
+PACKAGECONFIG[mysql] = "--enable-mysql,--disable-mysql,mysql5"
+PACKAGECONFIG[nfacct] = "--enable-nfacct,--disable-nfacct,libnetfilter-acct"
+PACKAGECONFIG[nfct] = "--enable-nfct,--disable-nfct,libnetfilter-conntrack"
+PACKAGECONFIG[nflog] = "--enable-nflog,--disable-nflog,libnetfilter-log"
+PACKAGECONFIG[pcap] = "--enable-pcap,--disable-pcap,libpcap"
+PACKAGECONFIG[pgsql] = "--enable-pgsql,--disable-pgsql,postgresql"
+PACKAGECONFIG[sqlite3] = "--enable-sqlite3,--disable-sqlite3,sqlite3"
+PACKAGECONFIG[ulog] = "--enable-ulog,--disable-ulog"
+
+do_install:append () {
+	install -d ${D}${sysconfdir}
+	install -m 0644 ${B}/ulogd.conf ${D}${sysconfdir}/ulogd.conf
+
+	install -d ${D}${mandir}/man8
+	install -m 0644 ${S}/ulogd.8 ${D}${mandir}/man8/ulogd.8
+
+	install -d ${D}${systemd_system_unitdir}
+	install -m 0644 ${WORKDIR}/ulogd.service ${D}${systemd_system_unitdir}
+	sed -i -e 's,@SBINDIR@,${sbindir},g' ${D}${systemd_system_unitdir}/ulogd.service
+
+	install -d ${D}${sysconfdir}/init.d
+	install -m 755 ${WORKDIR}/ulogd.init ${D}${sysconfdir}/init.d/ulogd
+}
+
+PACKAGES += "${PN}-plugins"
+ALLOW_EMPTY:${PN}-plugins = "1"
+
+PACKAGES_DYNAMIC += "^${PN}-plugin-.*$"
+NOAUTOPACKAGEDEBUG = "1"
+
+CONFFILES:${PN} = "${sysconfdir}/ulogd.conf"
+RRECOMMENDS:${PN} += "${PN}-plugins"
+
+FILES:${PN}-dbg += "${sbindir}/.debug"
+
+python split_ulogd_libs () {
+    libdir = d.expand('${libdir}/ulogd')
+    dbglibdir = os.path.join(libdir, '.debug')
+
+    split_packages = do_split_packages(d, libdir, r'^ulogd_.*\_([A-Z0-9]*).so', '${PN}-plugin-%s', 'ulogd2 %s plugin', prepend=True)
+    split_dbg_packages = do_split_packages(d, dbglibdir, r'^ulogd_.*\_([A-Z0-9]*).so', '${PN}-plugin-%s-dbg', 'ulogd2 %s plugin - Debugging files', prepend=True, extra_depends='${PN}-dbg')
+
+    if split_packages:
+        pn = d.getVar('PN')
+        d.setVar('RRECOMMENDS:' + pn + '-plugins', ' '.join(split_packages))
+        d.appendVar('RRECOMMENDS:' + pn + '-dbg', ' ' + ' '.join(split_dbg_packages))
+}
+PACKAGESPLITFUNCS:prepend = "split_ulogd_libs "
+
+SYSTEMD_SERVICE:${PN} = "ulogd.service"
+
+INITSCRIPT_NAME = "ulogd"
+INITSCRIPT_PARAMS = "defaults"
diff --git a/meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.11.bb b/meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.12.bb
similarity index 94%
rename from meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.11.bb
rename to meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.12.bb
index dd1d693..747c16c 100644
--- a/meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.11.bb
+++ b/meta-openembedded/meta-networking/recipes-protocols/babeld/babeld_1.12.bb
@@ -13,7 +13,7 @@
 LIC_FILES_CHKSUM = "file://LICENCE;md5=411a48ac3c2e9e0911b8dd9aed26f754"
 
 SRC_URI = "gitsm://github.com/jech/babeld.git;protocol=https;branch=master"
-SRCREV = "f82a10e97a02849cd82087863055c9af08ca3454"
+SRCREV = "420a7087b7d6350084edfd7d1aef8a62209cbf04"
 
 UPSTREAM_CHECK_GITTAGREGEX = "babeld-(?P<pver>\d+(\.\d+)+)"
 
diff --git a/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.14.bb b/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.15.bb
similarity index 97%
rename from meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.14.bb
rename to meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.15.bb
index d4cdda0..a009a26 100644
--- a/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.14.bb
+++ b/meta-openembedded/meta-networking/recipes-support/cifs/cifs-utils_6.15.bb
@@ -4,7 +4,7 @@
 LICENSE = "GPL-3.0-only & LGPL-3.0-only"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
-SRCREV = "8c06dce7d596e478c20bc54bdcec87ad97f80a1b"
+SRCREV = "58ca03f183b375cb723097a241bc2fc2254dab21"
 SRC_URI = "git://git.samba.org/cifs-utils.git;branch=master"
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.31.1.bb b/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.31.5.bb
similarity index 95%
rename from meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.31.1.bb
rename to meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.31.5.bb
index 1fea2f5..79b0001 100644
--- a/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.31.1.bb
+++ b/meta-openembedded/meta-networking/recipes-support/nbdkit/nbdkit_1.31.5.bb
@@ -12,7 +12,7 @@
 SRC_URI = "git://github.com/libguestfs/nbdkit.git;protocol=https;branch=master \
 "
 
-SRCREV = "ff4bc950c336477de1765ab1f0826c199f013ffd"
+SRCREV = "a671de5017546149ef38bfdbdae95c675538b93b"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.63.bb b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.64.bb
similarity index 92%
rename from meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.63.bb
rename to meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.64.bb
index 325737e..13ecd5c 100644
--- a/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.63.bb
+++ b/meta-openembedded/meta-networking/recipes-support/stunnel/stunnel_5.64.bb
@@ -11,7 +11,7 @@
            file://fix-openssl-no-des.patch \
 "
 
-SRC_URI[sha256sum] = "c74c4e15144a3ae34b8b890bb31c909207301490bd1e51bfaaa5ffeb0a994617"
+SRC_URI[sha256sum] = "eebe53ed116ba43b2e786762b0c2b91511e7b74857ad4765824e7199e6faf883"
 
 inherit autotools bash-completion pkgconfig
 
diff --git a/meta-openembedded/meta-oe/conf/layer.conf b/meta-openembedded/meta-oe/conf/layer.conf
index 88715d5..34aa295 100644
--- a/meta-openembedded/meta-oe/conf/layer.conf
+++ b/meta-openembedded/meta-oe/conf/layer.conf
@@ -42,7 +42,7 @@
 
 LAYERDEPENDS_openembedded-layer = "core"
 
-LAYERSERIES_COMPAT_openembedded-layer = "kirkstone"
+LAYERSERIES_COMPAT_openembedded-layer = "kirkstone langdale"
 
 LICENSE_PATH += "${LAYERDIR}/licenses"
 
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-benchmark/speedtest-cli/speedtest-cli_2.1.3.bb b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-benchmark/speedtest-cli/speedtest-cli_2.1.3.bb
deleted file mode 100644
index df577b1..0000000
--- a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-benchmark/speedtest-cli/speedtest-cli_2.1.3.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-SUMMARY = "Command line interface for testing internet bandwidth using speedtest.net"
-AUTHOR = "Matt Martz"
-
-LICENSE="Apache-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
-
-inherit setuptools3
-
-SRC_URI = "git://github.com/sivel/speedtest-cli.git;branch=master;protocol=https"
-SRCREV = "42e96b13dda2afabbcec2622612d13495a415caa"
-
-S = "${WORKDIR}/git"
-
-RDEPENDS:${PN} = "python3 python3-setuptools-scm"
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan/0001-Makefile-do-not-use-Werror.patch b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/netplan/netplan/0001-Makefile-do-not-use-Werror.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan/0001-Makefile-do-not-use-Werror.patch
rename to meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/netplan/netplan/0001-Makefile-do-not-use-Werror.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan/0001-Makefile-fix-parallel-build-failure.patch b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/netplan/netplan/0001-Makefile-fix-parallel-build-failure.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan/0001-Makefile-fix-parallel-build-failure.patch
rename to meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/netplan/netplan/0001-Makefile-fix-parallel-build-failure.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan/0001-don-t-fail-if-GLOB_BRACE-is-not-defined.patch b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/netplan/netplan/0001-don-t-fail-if-GLOB_BRACE-is-not-defined.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan/0001-don-t-fail-if-GLOB_BRACE-is-not-defined.patch
rename to meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/netplan/netplan/0001-don-t-fail-if-GLOB_BRACE-is-not-defined.patch
diff --git a/meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan_0.104.bb b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/netplan/netplan_0.104.bb
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-connectivity/netplan/netplan_0.104.bb
rename to meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/netplan/netplan_0.104.bb
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-core/packagegroups/packagegroup-meta-oe.bbappend b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-core/packagegroups/packagegroup-meta-oe.bbappend
index 09f3e34..ae4d380 100644
--- a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-core/packagegroups/packagegroup-meta-oe.bbappend
+++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-core/packagegroups/packagegroup-meta-oe.bbappend
@@ -14,6 +14,7 @@
     mozjs \
 "
 RDEPENDS:packagegroup-meta-oe-support += "\
+    nvmetcli \
     smem \
 "
 RDEPENDS:packagegroup-meta-oe-extended:remove:libc-musl = "lcdproc"
diff --git a/meta-openembedded/meta-networking/recipes-support/nvmetcli/nvmetcli_0.7.bb b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-support/nvmetcli/nvmetcli_0.7.bb
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-support/nvmetcli/nvmetcli_0.7.bb
rename to meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-support/nvmetcli/nvmetcli_0.7.bb
diff --git a/meta-openembedded/meta-oe/licenses/rateconv b/meta-openembedded/meta-oe/licenses/rateconv
new file mode 100644
index 0000000..a0f5683
--- /dev/null
+++ b/meta-openembedded/meta-oe/licenses/rateconv
@@ -0,0 +1,27 @@
+Authors:	Markus Mummert
+
+Copyright (c) 1992, 1995 by Markus Mummert
+
+License:
+ Redistribution and use of this software, modifcation and inclusion
+   into other forms of software are permitted provided that the following
+   conditions are met:
+
+   1. Redistributions of this software must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+   2. If this software is redistributed in a modified condition
+      it must reveal clearly that it has been modified.
+
+   THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS''
+   AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+   TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+   PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR
+   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+   OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
+   USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
+   DAMAGE.
+
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/mbw/mbw_git.bb b/meta-openembedded/meta-oe/recipes-benchmark/mbw/mbw_git.bb
index 52b9399..cfdcfeb 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/mbw/mbw_git.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/mbw/mbw_git.bb
@@ -2,13 +2,13 @@
 HOMEPAGE = "http://github.com/raas/mbw"
 SECTION = "console/tests"
 LICENSE = "LGPL-2.1-only"
-LIC_FILES_CHKSUM = "file://mbw.spec;beginline=1;endline=10;md5=bbb77813272134a5c461f71abe945bef"
+LIC_FILES_CHKSUM = "file://mbw.spec;beginline=1;endline=10;md5=34d71e08e6337a8411d82d7dd0c54fe2"
 
 SRC_URI = "git://github.com/raas/${BPN}.git;branch=master;protocol=https"
 
-SRCREV = "2a15026ff65160127204881263464b1740a57198"
+SRCREV = "d2cd3d36c353fee578f752c4e65a8c1efcee002c"
 
-PV = "1.4+git${SRCPV}"
+PV = "1.5"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_10.8.2.bb b/meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_10.8.3.bb
similarity index 90%
rename from meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_10.8.2.bb
rename to meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_10.8.3.bb
index 825f702..a4d586e 100644
--- a/meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_10.8.2.bb
+++ b/meta-openembedded/meta-oe/recipes-benchmark/phoronix-test-suite/phoronix-test-suite_10.8.3.bb
@@ -6,8 +6,7 @@
 SECTION = "console/tests"
 
 SRC_URI = "http://www.phoronix-test-suite.com/releases/${BP}.tar.gz"
-SRC_URI[md5sum] = "459c3c45b39bb3d720ddc8ba5f944332"
-SRC_URI[sha256sum] = "86681343d20415831ab16ef6c3d1c317e2345e771925e0698ae920a03a9eaab6"
+SRC_URI[sha256sum] = "4b742e28a9542fe2b57aacb691159d69d3e1c77d95da6d24b7867889ce84ba80"
 
 S = "${WORKDIR}/phoronix-test-suite"
 
diff --git a/meta-openembedded/meta-oe/recipes-bsp/fwupd/fwupd-efi_1.2.bb b/meta-openembedded/meta-oe/recipes-bsp/fwupd/fwupd-efi_1.3.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-bsp/fwupd/fwupd-efi_1.2.bb
rename to meta-openembedded/meta-oe/recipes-bsp/fwupd/fwupd-efi_1.3.bb
index bcad241..b53cabe 100644
--- a/meta-openembedded/meta-oe/recipes-bsp/fwupd/fwupd-efi_1.2.bb
+++ b/meta-openembedded/meta-oe/recipes-bsp/fwupd/fwupd-efi_1.3.bb
@@ -4,7 +4,7 @@
 
 SRC_URI = "git://github.com/fwupd/fwupd-efi;protocol=https;branch=main \
            file://cc.patch"
-SRCREV = "8de5918507dcc797e612aac688d6b60b90053f54"
+SRCREV = "36ce593f58e391cca43fd388824496ff98d83480"
 S = "${WORKDIR}/git"
 
 DEPENDS = "gnu-efi"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.26.bb b/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.27.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.26.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.27.bb
index 6248850..dc29bc3 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.26.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/iwd/iwd_1.27.bb
@@ -8,7 +8,7 @@
 SRC_URI = "https://www.kernel.org/pub/linux/network/wireless/${BP}.tar.xz \
            file://0001-build-Use-abs_top_srcdir-instead-of-abs_srcdir-for-e.patch \
            "
-SRC_URI[sha256sum] = "0ff4541c2b7f14ec010c3cbd1f02350f1b58cb0c103412db22550e90d8040d6b"
+SRC_URI[sha256sum] = "013b4a0a79629c20d915954fc3b5d0620ef6e0d6065db3c342f4b3f9111f46ec"
 
 inherit autotools manpages pkgconfig python3native systemd
 
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.26.2.bb b/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.26.4.bb
similarity index 88%
rename from meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.26.2.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.26.4.bb
index 66d55f9..97f3f68 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.26.2.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/libmbim/libmbim_1.26.4.bb
@@ -12,4 +12,4 @@
 inherit autotools pkgconfig bash-completion gobject-introspection
 
 SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "10c77bf5b5eb8c92ba80e9b519923ad9b898362bc8e1928e2bc9a17eeba649af"
+SRC_URI[sha256sum] = "f688cec4c4586a17575f5e327448ce62f2000ef6a07c9e4589873d4a68568ad9"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libmtp/libmtp_1.1.19.bb b/meta-openembedded/meta-oe/recipes-connectivity/libmtp/libmtp_1.1.19.bb
index b4cbb79..3483db3 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/libmtp/libmtp_1.1.19.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/libmtp/libmtp_1.1.19.bb
@@ -30,7 +30,7 @@
 "
 
 PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'largefile', d)}"
-PACKAGECONFIG[doxygen] = "--enable-doxygen,--disable-doxygen"
+PACKAGECONFIG[doxygen] = "--enable-doxygen,--disable-doxygen,doxygen-native"
 PACKAGECONFIG[largefile] = "--enable-largefile,--disable-largefile"
 PACKAGECONFIG[mtpz] = "--enable-mtpz,--disable-mtpz,libgcrypt"
 
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_4.2.2.bb b/meta-openembedded/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_4.2.2.bb
index a5fcb8d..2a3a4eb 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_4.2.2.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_4.2.2.bb
@@ -41,3 +41,6 @@
 RDEPENDS:${PN} += " ${@bb.utils.contains('PACKAGECONFIG', 'libev', '${PN}-evlib-ev', '', d)}"
 
 RDEPENDS:${PN}-dev += " ${@bb.utils.contains('PACKAGECONFIG', 'static', '${PN}-staticdev', '', d)}"
+
+# Avoid absolute paths to end up in the sysroot.
+SSTATE_SCAN_FILES += "*.cmake"
diff --git a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.6.bb b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_6.0.4.bb
similarity index 92%
rename from meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.6.bb
rename to meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_6.0.4.bb
index 66c8075..583ebac 100644
--- a/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_5.2.6.bb
+++ b/meta-openembedded/meta-oe/recipes-connectivity/zabbix/zabbix_6.0.4.bb
@@ -23,13 +23,13 @@
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 
-SRC_URI = "https://cdn.zabbix.com/zabbix/sources/stable/5.2/${BPN}-${PV}.tar.gz \
+SRC_URI = "https://cdn.zabbix.com/zabbix/sources/stable/6.0/${BPN}-${PV}.tar.gz \
     file://0001-Fix-configure.ac.patch \
     file://zabbix-agent.service \
 "
 
-SRC_URI[md5sum] = "31dab3535a1fa212f5724902727f6d4d"
-SRC_URI[sha256sum] = "76cb704f2a04fbc87bb3eff44fa71339c355d467f7bbd8fb53f8927c760e1680"
+SRC_URI[md5sum] = "a4f60d529c18c1332354bddd402b561b"
+SRC_URI[sha256sum] = "5743b6cc2e29d9bd242aa88b2835f3ded0be177509000d84db74e1159c5afa75"
 
 inherit autotools-brokensep linux-kernel-base pkgconfig systemd useradd
 
diff --git a/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm-2.68_2.70.0.bb b/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm-2.68_2.72.1.bb
similarity index 89%
rename from meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm-2.68_2.70.0.bb
rename to meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm-2.68_2.72.1.bb
index 278cfd8..f13cf9d 100644
--- a/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm-2.68_2.70.0.bb
+++ b/meta-openembedded/meta-oe/recipes-core/glib-2.0/glibmm-2.68_2.72.1.bb
@@ -13,7 +13,7 @@
 
 SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}"
 
-SRC_URI[archive.sha256sum] = "8008fd8aeddcc867a3f97f113de625f6e96ef98cf7860379813a9c0feffdb520"
+SRC_URI[archive.sha256sum] = "2a7649a28ab5dc53ac4dabb76c9f61599fbc628923ab6a7dd74bf675d9155cd8"
 
 S = "${WORKDIR}/${GNOMEBN}-${PV}"
 
diff --git a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
index 765edc5..756ba46 100644
--- a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
+++ b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb
@@ -122,6 +122,7 @@
 RDEPENDS:packagegroup-meta-oe-bsp:remove:riscv32 = "efivar efibootmgr fwupd fwupd-efi"
 
 RDEPENDS:packagegroup-meta-oe-connectivity ="\
+    cyrus-sasl \
     gammu \
     gattlib \
     gensio \
diff --git a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-1.1.0/7f437a6e06d2ec3abd3e2fd1101ab6aab386bc44.patch b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-1.1.0/7f437a6e06d2ec3abd3e2fd1101ab6aab386bc44.patch
new file mode 100644
index 0000000..641935f
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-1.1.0/7f437a6e06d2ec3abd3e2fd1101ab6aab386bc44.patch
@@ -0,0 +1,54 @@
+commit 7f437a6e06d2ec3abd3e2fd1101ab6aab386bc44
+Author: Stanislav Angelovic <stanislav.angelovic@siemens.com>
+Date:   Thu Jan 27 13:38:19 2022 +0100
+
+    fix(tests): printer for std::chrono in googletest v1.11.0
+
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index fbf198c..ec42e55 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -19,7 +19,7 @@ if (NOT TARGET GTest::gmock)
+     if (NOT TARGET GTest::gmock)
+         include(FetchContent)
+ 
+-        message("Fetching googletest...")
++        message("Fetching googletest v${GOOGLETEST_VERSION}...")
+         FetchContent_Declare(googletest
+                             GIT_REPOSITORY ${GOOGLETEST_GIT_REPO}
+                             GIT_TAG        release-${GOOGLETEST_VERSION}
+diff --git a/tests/integrationtests/Defs.h b/tests/integrationtests/Defs.h
+index 2f129a4..2bfc7c9 100644
+--- a/tests/integrationtests/Defs.h
++++ b/tests/integrationtests/Defs.h
+@@ -56,20 +56,18 @@ const bool DEFAULT_BLOCKING_VALUE{true};
+ 
+ constexpr const double DOUBLE_VALUE{3.24L};
+ 
+-/** Duration stream operator for human readable gtest value output.
+- *
+- * Note that the conversion to double is lossy if the input type has 64 or more bits.
+- * This is ok for our integration tests because they don't have very
+- * accurate timing requirements.
+- *
+- * @return human readable duration in seconds
+- */
++}}
++
++namespace testing::internal {
++
++// Printer for std::chrono::duration types.
++// This is a workaround, since it's not a good thing to add this to std namespace.
+ template< class Rep, class Period >
+-static std::ostream& operator<<(std::ostream& os, const std::chrono::duration<Rep, Period>& d)
+-{
++void PrintTo(const ::std::chrono::duration<Rep, Period>& d, ::std::ostream* os) {
+     auto seconds = std::chrono::duration_cast<std::chrono::duration<double>>(d);
+-    return os << seconds.count() << " s";
++    *os << seconds.count() << "s";
++}
++
+ }
+-}}
+ 
+ #endif /* SDBUS_CPP_INTEGRATIONTESTS_DEFS_H_ */
diff --git a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-1.0.0/run-ptest b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-1.1.0/run-ptest
similarity index 100%
rename from meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-1.0.0/run-ptest
rename to meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-1.1.0/run-ptest
diff --git a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-libsystemd_250.3.bb b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-libsystemd_250.3.bb
index 6bb5f7a..d5c799a 100644
--- a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-libsystemd_250.3.bb
+++ b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++-libsystemd_250.3.bb
@@ -10,7 +10,7 @@
 
 DEPENDS += "gperf-native gettext-native util-linux libcap util-linux python3-jinja2-native"
 
-SRCREV = "1b003bbc806198dbdd57b405d968f30565495e70"
+SRCREV = "73be9643910c3f7f3ff84765d63060846c110016"
 SRCBRANCH = "v250-stable"
 SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=https;branch=${SRCBRANCH} \
            file://static-libsystemd-pkgconfig.patch \
diff --git a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++_1.0.0.bb b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++_1.1.0.bb
similarity index 75%
rename from meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++_1.0.0.bb
rename to meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++_1.1.0.bb
index 39f0b4c..03d1356 100644
--- a/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++_1.0.0.bb
+++ b/meta-openembedded/meta-oe/recipes-core/sdbus-c++/sdbus-c++_1.1.0.bb
@@ -16,10 +16,11 @@
 
 DEPENDS += "expat"
 
-SRCREV = "65782bbf435d91e5eb6af9ddab110df406a824a9"
+SRCREV = "bca8e81037766a0454740c40307eea32831c101f"
 
 SRC_URI = "git://github.com/Kistler-Group/sdbus-cpp.git;protocol=https;branch=master"
-SRC_URI += "file://run-ptest"
+SRC_URI += "file://run-ptest \
+            file://7f437a6e06d2ec3abd3e2fd1101ab6aab386bc44.patch "
 
 EXTRA_OECMAKE = "-DBUILD_CODE_GEN=OFF \
                  -DBUILD_DOC=ON \
@@ -27,6 +28,11 @@
 
 S = "${WORKDIR}/git"
 
+# Link libatomic on architectures without 64bit atomics fixes
+# libsdbus-c++.so.1.1.0: undefined reference to `__atomic_load_8'
+LDFLAGS:append:mips = " -Wl,--no-as-needed -latomic -Wl,--as-needed"
+LDFLAGS:append:powerpc = " -Wl,--no-as-needed -latomic -Wl,--as-needed"
+
 do_install:append() {
     if ! ${@bb.utils.contains('PTEST_ENABLED', '1', 'true', 'false', d)}; then
         rm -rf ${D}${sysconfdir}/dbus-1
diff --git a/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.8.6.bb b/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.8.7.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.8.6.bb
rename to meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.8.7.bb
index 50ce50d..3441568 100644
--- a/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.8.6.bb
+++ b/meta-openembedded/meta-oe/recipes-core/toybox/toybox_0.8.7.bb
@@ -9,7 +9,7 @@
 
 SRC_URI = "http://www.landley.net/toybox/downloads/${BPN}-${PV}.tar.gz \
            "
-SRC_URI[sha256sum] = "4298c90a2b238348e4fdc9f89eb4988356c80da3f0cf78c279d2e82b9119034b"
+SRC_URI[sha256sum] = "b508bf336f82cb0739b77111f945931d1a143b5a53905cb753cd2607cfdd1494"
 
 SECTION = "base"
 
diff --git a/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.4.3.bb b/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.4.3.bb
index 8f9f663..435b554 100644
--- a/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.4.3.bb
+++ b/meta-openembedded/meta-oe/recipes-crypto/cryptsetup/cryptsetup_2.4.3.bb
@@ -70,6 +70,7 @@
 PACKAGECONFIG[nettle] = "--with-crypto_backend=nettle,,nettle"
 PACKAGECONFIG[luks2] = "--with-default-luks-format=LUKS2,--with-default-luks-format=LUKS1"
 
+
 EXTRA_OECONF = "--enable-static"
 # Building without largefile is not supported by upstream
 EXTRA_OECONF += "--enable-largefile"
@@ -78,6 +79,17 @@
 # There's no recipe for libargon2 yet
 EXTRA_OECONF += "--disable-libargon2"
 
+# libcryptsetup default PBKDF algorithm, Argon2 memory cost (KB), parallel threads and iteration time (ms)
+LUKS2_PBKDF ?= "argon2i"
+LUKS2_MEMORYKB ?= "1048576"
+LUKS2_PARALLEL_THREADS ?= "4"
+LUKS2_ITERTIME ?= "2000"
+
+EXTRA_OECONF += "--with-luks2-pbkdf=${LUKS2_PBKDF} \
+    --with-luks2-memory-kb=${LUKS2_MEMORYKB} \
+    --with-luks2-parallel-threads=${LUKS2_PARALLEL_THREADS} \
+    --with-luks2-iter-time=${LUKS2_ITERTIME}"
+
 FILES:${PN} += "${@bb.utils.contains('DISTRO_FEATURES','systemd','${exec_prefix}/lib/tmpfiles.d/cryptsetup.conf', '', d)}"
 
 RDEPENDS:${PN} = " \
diff --git a/meta-openembedded/meta-oe/recipes-crypto/pkcs11-helper/pkcs11-helper_1.28.0.bb b/meta-openembedded/meta-oe/recipes-crypto/pkcs11-helper/pkcs11-helper_1.29.0.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-crypto/pkcs11-helper/pkcs11-helper_1.28.0.bb
rename to meta-openembedded/meta-oe/recipes-crypto/pkcs11-helper/pkcs11-helper_1.29.0.bb
index 68ae94b..a34a4b9 100644
--- a/meta-openembedded/meta-oe/recipes-crypto/pkcs11-helper/pkcs11-helper_1.28.0.bb
+++ b/meta-openembedded/meta-oe/recipes-crypto/pkcs11-helper/pkcs11-helper_1.29.0.bb
@@ -19,7 +19,7 @@
 
 S = "${WORKDIR}/git"
 # v1.27
-SRCREV = "a4b46d545c33459610d4b4ae85a43a76e03a8c5e"
+SRCREV = "2306f896c2f3c147792300155316fd65825aabad"
 
 UPSTREAM_CHECK_GITTAGREGEX = "pkcs11-helper-(?P<pver>\d+(\.\d+)+)"
 
diff --git a/meta-openembedded/meta-oe/recipes-dbs/postgresql/files/0001-configure.ac-bypass-autoconf-2.69-version-check.patch b/meta-openembedded/meta-oe/recipes-dbs/postgresql/files/0001-configure.ac-bypass-autoconf-2.69-version-check.patch
index 39ec7c2..78f2458 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/postgresql/files/0001-configure.ac-bypass-autoconf-2.69-version-check.patch
+++ b/meta-openembedded/meta-oe/recipes-dbs/postgresql/files/0001-configure.ac-bypass-autoconf-2.69-version-check.patch
@@ -1,4 +1,4 @@
-From 9c9ac8b64f940bf69ecdc92abca9b58f12b401c3 Mon Sep 17 00:00:00 2001
+From f7084ba49758a6b8db46b917b7c0f831bd65a08f Mon Sep 17 00:00:00 2001
 From: Yi Fan Yu <yifan.yu@windriver.com>
 Date: Fri, 5 Feb 2021 17:15:42 -0500
 Subject: [PATCH] configure.ac: bypass autoconf 2.69 version check
@@ -14,12 +14,12 @@
  1 file changed, 4 deletions(-)
 
 diff --git a/configure.ac b/configure.ac
-index 3b148b6..94f39c5 100644
+index d3c55f2..9120184 100644
 --- a/configure.ac
 +++ b/configure.ac
 @@ -19,10 +19,6 @@ m4_pattern_forbid(^PGAC_)dnl to catch undefined macros
  
- AC_INIT([PostgreSQL], [14.2], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/])
+ AC_INIT([PostgreSQL], [14.3], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/])
  
 -m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.69], [], [m4_fatal([Autoconf version 2.69 is required.
 -Untested combinations of 'autoconf' and PostgreSQL versions are not
diff --git a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_14.2.bb b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_14.3.bb
similarity index 79%
rename from meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_14.2.bb
rename to meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_14.3.bb
index 52e8867..c686c9b 100644
--- a/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_14.2.bb
+++ b/meta-openembedded/meta-oe/recipes-dbs/postgresql/postgresql_14.3.bb
@@ -10,4 +10,4 @@
    file://remove_duplicate.patch \
 "
 
-SRC_URI[sha256sum] = "2cf78b2e468912f8101d695db5340cf313c2e9f68a612fb71427524e8c9a977a"
+SRC_URI[sha256sum] = "279057368bf59a919c05ada8f95c5e04abb43e74b9a2a69c3d46a20e07a9af38"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_10.0.bb b/meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_11.0.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_10.0.bb
rename to meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_11.0.bb
index d4d8d8e..1e5798d 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_10.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/apitrace/apitrace_11.0.bb
@@ -5,7 +5,7 @@
 LIC_FILES_CHKSUM = "file://LICENSE;md5=aeb969185a143c3c25130bc2c3ef9a50 \
                     file://thirdparty/snappy/COPYING;md5=f62f3080324a97b3159a7a7e61812d0c"
 
-SRCREV = "d28a980802ad48568c87da02d630c8babfe163bb"
+SRCREV = "c54d99563414cd178abec7cf7d9663eb949a0f51"
 PV .= "+10.0.1+git${SRCPV}"
 SRC_URI = "gitsm://github.com/${BPN}/${BPN}.git;branch=master;protocol=https \
           "
diff --git a/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20220417.0.bb b/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20220508.0.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20220417.0.bb
rename to meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20220508.0.bb
index 0d32861..02f01cc 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20220417.0.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20220508.0.bb
@@ -14,7 +14,7 @@
 
 inherit autotools-brokensep pkgconfig manpages
 
-SRCREV = "0d63a383b7b21a94d849ed01116cde0a628e95a9"
+SRCREV = "3f9e162a2a2d49920550bddb6de9da46a8340a41"
 SRC_URI = "git://github.com/universal-ctags/ctags;branch=master;protocol=https"
 
 S = "${WORKDIR}/git"
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jemalloc/files/0001-Makefile.in-make-sure-doc-generated-before-install.patch b/meta-openembedded/meta-oe/recipes-devtools/jemalloc/files/0001-Makefile.in-make-sure-doc-generated-before-install.patch
deleted file mode 100644
index 0a1fe6d..0000000
--- a/meta-openembedded/meta-oe/recipes-devtools/jemalloc/files/0001-Makefile.in-make-sure-doc-generated-before-install.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 1efb45330f5dbe475a092cda6982e6d7e135485a Mon Sep 17 00:00:00 2001
-From: Mingli Yu <mingli.yu@windriver.com>
-Date: Tue, 10 Aug 2021 13:02:18 +0000
-Subject: [PATCH] Makefile.in: make sure doc generated before install
-
-There is a race between the doc generation and the doc installation,
-so make the install depend on the build for doc to fix the error occurs
-sometimes as below:
- | TOPDIR/tmp-glibc/hosttools/install: cannot stat 'doc/jemalloc.3': No such file or directory
- | make: *** [Makefile:513: install_doc_man] Error 1
-
-Upstream-Status: Submitted [https://github.com/jemalloc/jemalloc/pull/2108]
-
-Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
----
- Makefile.in | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 7128b007..ab94f0c8 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -501,14 +501,14 @@ install_lib: install_lib_static
- endif
- install_lib: install_lib_pc
- 
--install_doc_html:
-+install_doc_html: build_doc_html
- 	$(INSTALL) -d $(DATADIR)/doc/jemalloc$(install_suffix)
- 	@for d in $(DOCS_HTML); do \
- 	echo "$(INSTALL) -m 644 $$d $(DATADIR)/doc/jemalloc$(install_suffix)"; \
- 	$(INSTALL) -m 644 $$d $(DATADIR)/doc/jemalloc$(install_suffix); \
- done
- 
--install_doc_man:
-+install_doc_man: build_doc_man
- 	$(INSTALL) -d $(MANDIR)/man3
- 	@for d in $(DOCS_MAN3); do \
- 	echo "$(INSTALL) -m 644 $$d $(MANDIR)/man3"; \
--- 
-2.29.2
-
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jemalloc/jemalloc_5.2.1.bb b/meta-openembedded/meta-oe/recipes-devtools/jemalloc/jemalloc_5.3.0.bb
similarity index 91%
rename from meta-openembedded/meta-oe/recipes-devtools/jemalloc/jemalloc_5.2.1.bb
rename to meta-openembedded/meta-oe/recipes-devtools/jemalloc/jemalloc_5.3.0.bb
index 8618c8c..950b64e 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/jemalloc/jemalloc_5.2.1.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/jemalloc/jemalloc_5.3.0.bb
@@ -14,14 +14,13 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=ea061f8731d5e6a5761dfad951ef5f5f"
 
 SRC_URI = "git://github.com/jemalloc/jemalloc.git;branch=master;protocol=https \
-           file://0001-Makefile.in-make-sure-doc-generated-before-install.patch \
            file://run-ptest \
-"
+           "
 
 # Workaround for https://github.com/llvm/llvm-project/issues/52765
 SRC_URI:append:libc-glibc:toolchain-clang = " file://0001-test-Disable-optimization-with-clang-for-aligned_all.patch "
 
-SRCREV = "ea6b3e973b477b8061e0076bb257dbd7f3faa756"
+SRCREV = "54eaed1d8b56b1aa528be3bdd1877e59c56fa90c"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/jq/jq_git.bb b/meta-openembedded/meta-oe/recipes-devtools/jq/jq_git.bb
index d0c70da..8b0218c 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/jq/jq_git.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/jq/jq_git.bb
@@ -21,7 +21,7 @@
 PACKAGECONFIG[maintainer-mode] = "--enable-maintainer-mode,--disable-maintainer-mode,flex-native bison-native"
 PACKAGECONFIG[oniguruma] = "--with-oniguruma,--without-oniguruma,onig"
 
-OE_EXTRACONF += " \
+EXTRA_OECONF += " \
     --disable-valgrind \
 "
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/perl/libconfig-general-perl_2.63.bb b/meta-openembedded/meta-oe/recipes-devtools/perl/libconfig-general-perl_2.65.bb
similarity index 64%
rename from meta-openembedded/meta-oe/recipes-devtools/perl/libconfig-general-perl_2.63.bb
rename to meta-openembedded/meta-oe/recipes-devtools/perl/libconfig-general-perl_2.65.bb
index b12e2e4..ecc89d0 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/perl/libconfig-general-perl_2.63.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/perl/libconfig-general-perl_2.65.bb
@@ -1,15 +1,14 @@
 DESCRIPTION = "Config file parser module"
 HOMEPAGE = "http://search.cpan.org/dist/Config-General/"
-LICENSE = "Artistic-1.0 | GPL-1.0-or-later"
+LICENSE = "Artistic-2.0 | GPL-1.0-or-later"
 SECTION = "libs"
-LIC_FILES_CHKSUM = "file://README;beginline=90;endline=90;md5=3ba4bbac1e79a08332688196f637d2b2"
+LIC_FILES_CHKSUM = "file://README;beginline=90;endline=90;md5=53fe13727e61798809ec5c160dc93e6e"
 
 SRCNAME = "Config-General"
 
 SRC_URI = "http://search.cpan.org/CPAN/authors/id/T/TL/TLINDEN/${SRCNAME}-${PV}.tar.gz"
 
-SRC_URI[md5sum] = "e3ea2a6dc76931cf638b5227aceabf60"
-SRC_URI[sha256sum] = "0a9bf977b8aabe76343e88095d2296c8a422410fd2a05a1901f2b20e2e1f6fad"
+SRC_URI[sha256sum] = "4d6d5754be3a9f30906836f0cc10e554c8832e14e7a1341efb15b05d706fc58f"
 
 S = "${WORKDIR}/${SRCNAME}-${PV}"
 
diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_8.1.4.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_8.1.6.bb
similarity index 98%
rename from meta-openembedded/meta-oe/recipes-devtools/php/php_8.1.4.bb
rename to meta-openembedded/meta-oe/recipes-devtools/php/php_8.1.6.bb
index bf6c543..96af595 100644
--- a/meta-openembedded/meta-oe/recipes-devtools/php/php_8.1.4.bb
+++ b/meta-openembedded/meta-oe/recipes-devtools/php/php_8.1.6.bb
@@ -33,7 +33,7 @@
           "
 
 S = "${WORKDIR}/php-${PV}"
-SRC_URI[sha256sum] = "b3f688cb69758523838b8e7f509aaef0152133d9b84a84a0b7cf68eeafc1df76"
+SRC_URI[sha256sum] = "7b353304b7407554f70d3e101a226a1fc22decae5c4c42ed270c4e389bfa1b66"
 
 inherit autotools pkgconfig python3native gettext
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/icewm/icewm_2.9.6.bb b/meta-openembedded/meta-oe/recipes-extended/icewm/icewm_2.9.7.bb
similarity index 94%
rename from meta-openembedded/meta-oe/recipes-extended/icewm/icewm_2.9.6.bb
rename to meta-openembedded/meta-oe/recipes-extended/icewm/icewm_2.9.7.bb
index 2112b62..00377bc 100644
--- a/meta-openembedded/meta-oe/recipes-extended/icewm/icewm_2.9.6.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/icewm/icewm_2.9.7.bb
@@ -5,7 +5,7 @@
 SRC_URI = "https://github.com/ice-wm/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.lz \
            file://0001-configure.ac-skip-running-test-program-when-cross-co.patch \
            "
-SRC_URI[sha256sum] = "f8f453fc1f0009e3e7f113fd128638770894d004a3b60202922e2c7347c30607"
+SRC_URI[sha256sum] = "c25f78e3f3ad49fbebc715691689d0ad1fda46b2e2537ad69e3332a54b81c72a"
 
 UPSTREAM_CHECK_URI = "https://github.com/ice-wm/${BPN}/releases"
 
diff --git a/meta-openembedded/meta-oe/recipes-extended/libyang/libyang_2.0.164.bb b/meta-openembedded/meta-oe/recipes-extended/libyang/libyang_2.0.194.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-extended/libyang/libyang_2.0.164.bb
rename to meta-openembedded/meta-oe/recipes-extended/libyang/libyang_2.0.194.bb
index 2817be7..548dcdd 100644
--- a/meta-openembedded/meta-oe/recipes-extended/libyang/libyang_2.0.164.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/libyang/libyang_2.0.194.bb
@@ -6,7 +6,7 @@
 
 LIC_FILES_CHKSUM = "file://LICENSE;md5=f3916d7d8d42a6508d0ea418cfff10ad"
 
-SRCREV = "a0cc89516ab5eca84d01c85309f320a94752a64c"
+SRCREV = "87375f15159545a87a1e0de200f5d9d67e9091d7"
 
 SRC_URI = "git://github.com/CESNET/libyang.git;branch=master;protocol=https \
            file://libyang-add-stdint-h.patch \
diff --git a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2022.2.bb b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2022.2.bb
index 24a7513..50d0548 100644
--- a/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2022.2.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/ostree/ostree_2022.2.bb
@@ -201,7 +201,7 @@
 "
 RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-utils glibc-localedata-en-us"
 
-RRECOMMENDS:${PN} += "kernel-module-overlay"
+RRECOMMENDS:${PN}:append:class-target = " kernel-module-overlay"
 
 SYSTEMD_SERVICE:${PN} = "ostree-remount.service ostree-finalize-staged.path"
 SYSTEMD_SERVICE:${PN}-switchroot = "ostree-prepare-root.service"
diff --git a/meta-openembedded/meta-oe/recipes-extended/polkit/files/50-org.freedesktop.udiskie.rules b/meta-openembedded/meta-oe/recipes-extended/polkit/files/50-org.freedesktop.udiskie.rules
new file mode 100644
index 0000000..2ffa408
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/polkit/files/50-org.freedesktop.udiskie.rules
@@ -0,0 +1,24 @@
+polkit.addRule(function(action, subject) {
+  var YES = polkit.Result.YES;
+  var permission = {
+    // required for udisks1:
+    "org.freedesktop.udisks.filesystem-mount": YES,
+    "org.freedesktop.udisks.luks-unlock": YES,
+    "org.freedesktop.udisks.drive-eject": YES,
+    "org.freedesktop.udisks.drive-detach": YES,
+    // required for udisks2:
+    "org.freedesktop.udisks2.filesystem-mount": YES,
+    "org.freedesktop.udisks2.encrypted-unlock": YES,
+    "org.freedesktop.udisks2.eject-media": YES,
+    "org.freedesktop.udisks2.power-off-drive": YES,
+    // required for udisks2 if using udiskie from another seat (e.g. systemd):
+    "org.freedesktop.udisks2.filesystem-mount-other-seat": YES,
+    "org.freedesktop.udisks2.filesystem-unmount-others": YES,
+    "org.freedesktop.udisks2.encrypted-unlock-other-seat": YES,
+    "org.freedesktop.udisks2.eject-media-other-seat": YES,
+    "org.freedesktop.udisks2.power-off-drive-other-seat": YES
+  };
+  if (subject.isInGroup("plugdev")) {
+    return permission[action.id];
+  }
+});
diff --git a/meta-openembedded/meta-oe/recipes-extended/polkit/polkit-group-rule-udisks2.bb b/meta-openembedded/meta-oe/recipes-extended/polkit/polkit-group-rule-udisks2.bb
new file mode 100644
index 0000000..ae024d0
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/polkit/polkit-group-rule-udisks2.bb
@@ -0,0 +1,17 @@
+DESCRIPTION = "Polkit rule to allow non-priviledged users mount/umount block devices via udisks2"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
+
+require polkit-group-rule.inc
+
+# The file originates from https://github.com/coldfix/udiskie/wiki/Permissions
+SRC_URI = "file://50-org.freedesktop.udiskie.rules"
+
+RDEPENDS_${PN} += "udisks2"
+
+do_install() {
+    install -m 0755 ${WORKDIR}/50-org.freedesktop.udiskie.rules ${D}${sysconfdir}/polkit-1/rules.d
+}
+
+USERADD_PACKAGES = "${PN}"
+GROUPADD_PARAM:${PN} = "--system plugdev"
diff --git a/meta-openembedded/meta-oe/recipes-extended/s-nail/files/0001-make.rc-set-VAL_MTA.patch b/meta-openembedded/meta-oe/recipes-extended/s-nail/files/0001-make.rc-set-VAL_MTA.patch
new file mode 100644
index 0000000..f4decda
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-extended/s-nail/files/0001-make.rc-set-VAL_MTA.patch
@@ -0,0 +1,48 @@
+From da8c7a027390de7828d4272a3c8bcdbffbac25ad Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Thu, 5 May 2022 16:57:48 +0800
+Subject: [PATCH] make.rc: set VAL_MTA
+
+Some build server may provide sendmail like /usr/lib/sendmail which
+may result the VAL_MTA to be /usr/lib/sendmail, but the sendmail
+is actually /usr/sbin/sendmail on the target.
+
+Fixes:
+  # echo "invalide address email" | s-nail -s "test mail" -r test@test.com tester@test.com
+  s-nail: Cannot start /usr/lib/sendmail: executable not found (adjust *mta* variable)
+  /home/root/dead.letter 10/234
+  s-nail: ... message not sent
+
+  # which sendmail
+  /usr/sbin/sendmail
+
+Upstream-Status: Inappropriate[oe-specific]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ make.rc | 9 +--------
+ 1 file changed, 1 insertion(+), 8 deletions(-)
+
+diff --git a/make.rc b/make.rc
+index 98bd968..45ac0d4 100644
+--- a/make.rc
++++ b/make.rc
+@@ -96,14 +96,7 @@ VAL_MAIL=`\
+ 
+ # Path to the local MTA (Mail-Transfer-Agent).
+ # MTA aliases (aliases(5)) are optionally supported via OPT_MTA_ALIASES.
+-VAL_MTA=`\
+-   if [ -x /usr/bin/sendmail ]; then \
+-      echo /usr/bin/sendmail;\
+-   elif [ -x /usr/lib/sendmail ]; then \
+-      echo /usr/lib/sendmail;\
+-   else \
+-      echo /usr/sbin/sendmail;\
+-   fi`
++VAL_MTA=/usr/sbin/sendmail
+ 
+ # Today a lot of systems no longer use sendmail(1), but a different MTA.
+ # To ensure compatibility with sendmail(1), a system called
+-- 
+2.25.1
+
diff --git a/meta-openembedded/meta-oe/recipes-extended/s-nail/s-nail_14.9.24.bb b/meta-openembedded/meta-oe/recipes-extended/s-nail/s-nail_14.9.24.bb
index bc514b5..539f9c3 100644
--- a/meta-openembedded/meta-oe/recipes-extended/s-nail/s-nail_14.9.24.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/s-nail/s-nail_14.9.24.bb
@@ -6,7 +6,8 @@
 LIC_FILES_CHKSUM = "file://COPYING;md5=87266591c81260f10221f1f38872d023"
 
 SRC_URI = "https://ftp.sdaoden.eu/${BP}.tar.xz \
-           file://make-errors.patch"
+           file://make-errors.patch \
+           file://0001-make.rc-set-VAL_MTA.patch"
 SRC_URI[sha256sum] = "2714d6b8fb2af3b363fc7c79b76d058753716345d1b6ebcd8870ecd0e4f7ef8c"
 
 DEPENDS = "coreutils-native"
diff --git a/meta-openembedded/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb b/meta-openembedded/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
index 6b57cb5..5565a28 100644
--- a/meta-openembedded/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
+++ b/meta-openembedded/meta-oe/recipes-extended/wxwidgets/wxwidgets_3.1.5.bb
@@ -54,7 +54,7 @@
 
 # Note on toolkit-PACKAGECONFIGs: select exactly one of 'no_gui' / 'gtk' / 'qt'
 PACKAGECONFIG[no_gui] = "-DwxUSE_GUI=OFF,,,,,qt gtk opengl"
-PACKAGECONFIG[gtk] = "-DwxBUILD_TOOLKIT=gtk3 -DwxUSE_GUI=ON,,gtk+3,,,no_gui qt"
+PACKAGECONFIG[gtk] = "-DwxBUILD_TOOLKIT=gtk3 -DwxUSE_GUI=ON -DwxUSE_PRIVATE_FONTS=ON,,gtk+3,,,no_gui qt"
 PACKAGECONFIG[qt] = "-DwxBUILD_TOOLKIT=qt  -DwxUSE_GUI=ON,,qtbase,,,no_gui gtk"
 python () {
     pkgconfig = d.getVar('PACKAGECONFIG')
diff --git a/meta-openembedded/meta-oe/recipes-graphics/imlib2/imlib2_git.bb b/meta-openembedded/meta-oe/recipes-graphics/imlib2/imlib2_git.bb
index 56d41cd..869f812 100644
--- a/meta-openembedded/meta-oe/recipes-graphics/imlib2/imlib2_git.bb
+++ b/meta-openembedded/meta-oe/recipes-graphics/imlib2/imlib2_git.bb
@@ -14,7 +14,7 @@
 
 AUTO_LIBNAME_PKGS = ""
 
-SRC_URI = "git://git.enlightenment.org/legacy/${BPN}.git;protocol=https;branch=master"
+SRC_URI = "git://git.enlightenment.org/old/legacy-${BPN}.git;protocol=https;branch=master"
 S = "${WORKDIR}/git"
 
 PACKAGECONFIG ??= "jpeg png zlib ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/0001-This-patch-fixed-include-dir-to-usr-include-.-Obviou.patch b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/0001-This-patch-fixed-include-dir-to-usr-include-.-Obviou.patch
deleted file mode 100644
index 663f499..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/0001-This-patch-fixed-include-dir-to-usr-include-.-Obviou.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 3e4fe4c42d4d63c36df966baea87da6fbc032553 Mon Sep 17 00:00:00 2001
-From: Lei Maohui <leimaohui@cn.fujitsu.com>
-Date: Thu, 7 Jan 2021 16:05:28 +0900
-Subject: [PATCH] This patch fixed include dir to /usr/include/. Obviously, it
- is not suitble for cross-compile. So, removed this patch temporarily.
-https://github.com/uclouvain/openjpeg/issues/1174
-
-Upsteam-Status: Pending
-https://github.com/uclouvain/openjpeg/issues/1320
-
-Signed-off-by: Lei Maohui <leimaohui@cn.fujitsu.com>
----
- cmake/OpenJPEGConfig.cmake.in | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/cmake/OpenJPEGConfig.cmake.in b/cmake/OpenJPEGConfig.cmake.in
-index 8a726697..2925108a 100644
---- a/cmake/OpenJPEGConfig.cmake.in
-+++ b/cmake/OpenJPEGConfig.cmake.in
-@@ -27,8 +27,12 @@ if(EXISTS ${SELF_DIR}/OpenJPEGTargets.cmake)
-   # This is an install tree
-   include(${SELF_DIR}/OpenJPEGTargets.cmake)
- 
-+  # We find a relative path from the PKG directory to header files.
-+  set(PKG_DIR "@CMAKE_INSTALL_PREFIX@/@OPENJPEG_INSTALL_PACKAGE_DIR@")
-   set(INC_DIR "@CMAKE_INSTALL_PREFIX@/@OPENJPEG_INSTALL_INCLUDE_DIR@")
--  get_filename_component(OPENJPEG_INCLUDE_DIRS "${INC_DIR}" ABSOLUTE)
-+  file(RELATIVE_PATH PKG_TO_INC_RPATH "${PKG_DIR}" "${INC_DIR}")
-+
-+  get_filename_component(OPENJPEG_INCLUDE_DIRS "${SELF_DIR}/${PKG_TO_INC_RPATH}" ABSOLUTE)
- 
- else()
-   if(EXISTS ${SELF_DIR}/OpenJPEGExports.cmake)
--- 
-2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2021-29338.patch b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2021-29338.patch
deleted file mode 100644
index a7c2bb4..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2021-29338.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-Upstream-Status: Backport [https://github.com/uclouvain/openjpeg/pull/1395/commits/f0727df]
-CVE: CVE-2021-29338
-
-Signed-off-by: Kai Kang <kai.kang@windriver.com>
-
-From f0727df07c4d944d7d1c5002451cfbc9545d3288 Mon Sep 17 00:00:00 2001
-From: Brad Parham <brad.a.parham@intel.com>
-Date: Wed, 12 Jan 2022 12:20:28 +0100
-Subject: [PATCH] Fix integer overflow in num_images
-
-Includes the fix for CVE-2021-29338
-Credit to @kaniini based on #1346
-Fixes #1338
----
- src/bin/jp2/opj_compress.c   | 4 ++--
- src/bin/jp2/opj_decompress.c | 5 ++---
- src/bin/jp2/opj_dump.c       | 7 ++++---
- 3 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/src/bin/jp2/opj_compress.c b/src/bin/jp2/opj_compress.c
-index 8c71d4536..1399d5277 100644
---- a/src/bin/jp2/opj_compress.c
-+++ b/src/bin/jp2/opj_compress.c
-@@ -1959,9 +1959,9 @@ int main(int argc, char **argv)
-         num_images = get_num_images(img_fol.imgdirpath);
-         dirptr = (dircnt_t*)malloc(sizeof(dircnt_t));
-         if (dirptr) {
--            dirptr->filename_buf = (char*)malloc(num_images * OPJ_PATH_LEN * sizeof(
-+            dirptr->filename_buf = (char*)calloc(num_images, OPJ_PATH_LEN * sizeof(
-                     char)); /* Stores at max 10 image file names*/
--            dirptr->filename = (char**) malloc(num_images * sizeof(char*));
-+            dirptr->filename = (char**) calloc(num_images, sizeof(char*));
-             if (!dirptr->filename_buf) {
-                 ret = 0;
-                 goto fin;
-diff --git a/src/bin/jp2/opj_decompress.c b/src/bin/jp2/opj_decompress.c
-index fc0012b63..e1217f891 100644
---- a/src/bin/jp2/opj_decompress.c
-+++ b/src/bin/jp2/opj_decompress.c
-@@ -1374,14 +1374,13 @@ int main(int argc, char **argv)
-             return EXIT_FAILURE;
-         }
-         /* Stores at max 10 image file names */
--        dirptr->filename_buf = (char*)malloc(sizeof(char) *
--                                             (size_t)num_images * OPJ_PATH_LEN);
-+        dirptr->filename_buf = calloc((size_t) num_images, sizeof(char) * OPJ_PATH_LEN);
-         if (!dirptr->filename_buf) {
-             failed = 1;
-             goto fin;
-         }
- 
--        dirptr->filename = (char**) malloc((size_t)num_images * sizeof(char*));
-+        dirptr->filename = (char**) calloc((size_t) num_images, sizeof(char*));
- 
-         if (!dirptr->filename) {
-             failed = 1;
-diff --git a/src/bin/jp2/opj_dump.c b/src/bin/jp2/opj_dump.c
-index 6111d2ab6..d2646f10e 100644
---- a/src/bin/jp2/opj_dump.c
-+++ b/src/bin/jp2/opj_dump.c
-@@ -515,13 +515,14 @@ int main(int argc, char *argv[])
-         if (!dirptr) {
-             return EXIT_FAILURE;
-         }
--        dirptr->filename_buf = (char*)malloc((size_t)num_images * OPJ_PATH_LEN * sizeof(
--                char)); /* Stores at max 10 image file names*/
-+        /* Stores at max 10 image file names*/
-+        dirptr->filename_buf = (char*) calloc((size_t) num_images,
-+                                              OPJ_PATH_LEN * sizeof(char));
-         if (!dirptr->filename_buf) {
-             free(dirptr);
-             return EXIT_FAILURE;
-         }
--        dirptr->filename = (char**) malloc((size_t)num_images * sizeof(char*));
-+        dirptr->filename = (char**) calloc((size_t) num_images, sizeof(char*));
- 
-         if (!dirptr->filename) {
-             goto fails;
diff --git a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2022-1122.patch b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2022-1122.patch
deleted file mode 100644
index 8aa9c15..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg/CVE-2022-1122.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-Upstream-Status: Backport [https://github.com/uclouvain/openjpeg/commit/0afbdcf3e6d0d2bd2e16a0c4d513ee3cf86e460d]
-CVE: CVE-2022-1122
-
-While this patch improves things re-CVE-2022-1122, the defect is undergoing re-analysis and there may be follow-up commits.
-
-From 0afbdcf3e6d0d2bd2e16a0c4d513ee3cf86e460d Mon Sep 17 00:00:00 2001
-From: xiaoxiaoafeifei <lliangliang2007@163.com>
-Date: Wed, 14 Jul 2021 09:35:13 +0800
-Subject: [PATCH] Fix segfault in src/bin/jp2/opj_decompress.c due to
- uninitialized pointer (fixes #1368) (#1369)
-
----
- src/bin/jp2/opj_decompress.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/bin/jp2/opj_decompress.c b/src/bin/jp2/opj_decompress.c
-index 0e028735..18ead672 100644
---- a/src/bin/jp2/opj_decompress.c
-+++ b/src/bin/jp2/opj_decompress.c
-@@ -1356,7 +1356,7 @@ int main(int argc, char **argv)
-         int it_image;
-         num_images = get_num_images(img_fol.imgdirpath);
- 
--        dirptr = (dircnt_t*)malloc(sizeof(dircnt_t));
-+        dirptr = (dircnt_t*)calloc(1, sizeof(dircnt_t));
-         if (!dirptr) {
-             destroy_parameters(&parameters);
-             return EXIT_FAILURE;
--- 
-2.25.1
-
diff --git a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb
deleted file mode 100644
index f248619..0000000
--- a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.4.0.bb
+++ /dev/null
@@ -1,25 +0,0 @@
-DESCRIPTION = "OpenJPEG library is an open-source JPEG 2000 codec"
-HOMEPAGE = "http://www.openjpeg.org"
-LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=c648878b4840d7babaade1303e7f108c"
-
-DEPENDS = "libpng tiff lcms zlib"
-
-SRC_URI = " \
-    git://github.com/uclouvain/openjpeg.git;branch=master;protocol=https \
-    file://0002-Do-not-ask-cmake-to-export-binaries-they-don-t-make-.patch \
-    file://0001-This-patch-fixed-include-dir-to-usr-include-.-Obviou.patch \
-    file://CVE-2021-29338.patch \
-    file://CVE-2022-1122.patch \
-"
-SRCREV = "37ac30ceff6640bbab502388c5e0fa0bff23f505"
-S = "${WORKDIR}/git"
-
-inherit cmake
-
-# for multilib
-EXTRA_OECMAKE += "-DOPENJPEG_INSTALL_LIB_DIR=${@d.getVar('baselib').replace('/', '')}"
-
-FILES:${PN} += "${libdir}/openjpeg*"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.5.0.bb b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.5.0.bb
new file mode 100644
index 0000000..c71e535
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-graphics/openjpeg/openjpeg_2.5.0.bb
@@ -0,0 +1,21 @@
+DESCRIPTION = "OpenJPEG library is an open-source JPEG 2000 codec"
+HOMEPAGE = "http://www.openjpeg.org"
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=c648878b4840d7babaade1303e7f108c"
+
+DEPENDS = "libpng tiff lcms zlib"
+
+SRC_URI = "git://github.com/uclouvain/openjpeg.git;branch=master;protocol=https \
+           file://0002-Do-not-ask-cmake-to-export-binaries-they-don-t-make-.patch \
+           "
+SRCREV = "a5891555eb49ed7cc26b2901ea680acda136d811"
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+# for multilib
+EXTRA_OECMAKE += "-DOPENJPEG_INSTALL_LIB_DIR=${@d.getVar('baselib').replace('/', '')}"
+
+FILES:${PN} += "${libdir}/openjpeg*"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/intel-speed-select/intel-speed-select.bb b/meta-openembedded/meta-oe/recipes-kernel/intel-speed-select/intel-speed-select.bb
index c895e6c..23ea0d8 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/intel-speed-select/intel-speed-select.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/intel-speed-select/intel-speed-select.bb
@@ -11,10 +11,13 @@
 COMPATIBLE_HOST = '(x86_64|i.86).*-linux'
 COMPATIBLE_HOST:libc-musl = 'null'
 
+DEPENDS = "libnl"
+
 do_populate_lic[depends] += "virtual/kernel:do_patch"
 
 B = "${WORKDIR}/${BPN}-${PV}"
 
+CFLAGS += "-I${STAGING_INCDIR}/libnl3"
 EXTRA_OEMAKE = "-C ${S}/tools/power/x86/intel-speed-select O=${B} CROSS=${TARGET_PREFIX} CC="${CC}" LD="${LD}" AR=${AR} ARCH=${ARCH}"
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/meta-openembedded/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb b/meta-openembedded/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
index d5e8e4b..3d97ea0 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/kernel-selftest/kernel-selftest.bb
@@ -85,7 +85,13 @@
     for i in ${TEST_LIST}
     do
         oe_runmake -C ${S}/tools/testing/selftests/${i} INSTALL_PATH=${D}/usr/kernel-selftest/${i} install
+        # Install kselftest-list.txt that required by kselftest runner.
+        oe_runmake -s --no-print-directory COLLECTION=${i} -C ${S}/tools/testing/selftests/${i} emit_tests \
+            >> ${D}/usr/kernel-selftest/kselftest-list.txt
     done
+    # Install kselftest runner.
+    install -m 0755 ${S}/tools/testing/selftests/run_kselftest.sh ${D}/usr/kernel-selftest/
+    cp -R --no-dereference --preserve=mode,links -v ${S}/tools/testing/selftests/kselftest ${D}/usr/kernel-selftest/
     if [ -e ${D}/usr/kernel-selftest/bpf/test_offload.py ]; then
 	sed -i -e '1s,#!.*python3,#! /usr/bin/env python3,' ${D}/usr/kernel-selftest/bpf/test_offload.py
     fi
@@ -127,7 +133,7 @@
 INHIBIT_PACKAGE_DEBUG_SPLIT="1"
 FILES:${PN} += "/usr/kernel-selftest"
 
-RDEPENDS:${PN} += "python3"
+RDEPENDS:${PN} += "python3 perl"
 # tools/testing/selftests/vm/Makefile doesn't respect LDFLAGS and tools/testing/selftests/Makefile explicitly overrides to empty
 INSANE_SKIP:${PN} += "ldflags"
 
diff --git a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.7.1.bb b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.7.1.bb
index c3f965b..eb004c2 100644
--- a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.7.1.bb
+++ b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.7.1.bb
@@ -36,9 +36,13 @@
 # If we do not specify TARGET, makedumpfile will build for the host but use the
 # target gcc.
 #
+
+MAKEDUMPFILE_TARGET ?= "${TARGET_ARCH}"
+MAKEDUMPFILE_TARGET:powerpc = "ppc"
+
 EXTRA_OEMAKE = "\
     LINKTYPE=static \
-    TARGET=${TARGET_ARCH} \
+    TARGET=${MAKEDUMPFILE_TARGET} \
     ${PACKAGECONFIG_CONFARGS} \
 "
 
diff --git a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.23.1.bb b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.24.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.23.1.bb
rename to meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.24.bb
index 410db92..245f872 100644
--- a/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.23.1.bb
+++ b/meta-openembedded/meta-oe/recipes-navigation/gpsd/gpsd_3.24.bb
@@ -8,7 +8,7 @@
 SRC_URI = "${SAVANNAH_GNU_MIRROR}/${BPN}/${BP}.tar.gz \
            file://gpsd.init \
            "
-SRC_URI[sha256sum] = "0b991ce9a46538c4ea450f7a8ee428ff44fb4f8d665fddf2ffe40fe0ae9a6c09"
+SRC_URI[sha256sum] = "00ee13f615655284874a661be13553abe66128e6deb5cd648af9bc0cb345fe5c"
 
 inherit scons update-rc.d python3-dir python3native systemd update-alternatives pkgconfig
 
diff --git a/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/0001-sample-Rename-dprintf-to-cyrus_dprintf.patch b/meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/0001-sample-Rename-dprintf-to-cyrus_dprintf.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/0001-sample-Rename-dprintf-to-cyrus_dprintf.patch
rename to meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/0001-sample-Rename-dprintf-to-cyrus_dprintf.patch
diff --git a/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/CVE-2019-19906.patch b/meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/CVE-2019-19906.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/CVE-2019-19906.patch
rename to meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/CVE-2019-19906.patch
diff --git a/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/Fix-hardcoded-libdir.patch b/meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/Fix-hardcoded-libdir.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/Fix-hardcoded-libdir.patch
rename to meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/Fix-hardcoded-libdir.patch
diff --git a/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/avoid-to-call-AC_TRY_RUN.patch b/meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/avoid-to-call-AC_TRY_RUN.patch
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/avoid-to-call-AC_TRY_RUN.patch
rename to meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/avoid-to-call-AC_TRY_RUN.patch
diff --git a/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/debian_patches_0014_avoid_pic_overwrite.diff b/meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/debian_patches_0014_avoid_pic_overwrite.diff
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/debian_patches_0014_avoid_pic_overwrite.diff
rename to meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/debian_patches_0014_avoid_pic_overwrite.diff
diff --git a/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/saslauthd.conf b/meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/saslauthd.conf
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/saslauthd.conf
rename to meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/saslauthd.conf
diff --git a/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/saslauthd.service b/meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/saslauthd.service
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl/saslauthd.service
rename to meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl/saslauthd.service
diff --git a/meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl_2.1.28.bb b/meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl_2.1.28.bb
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-daemons/cyrus-sasl/cyrus-sasl_2.1.28.bb
rename to meta-openembedded/meta-oe/recipes-networking/cyrus-sasl/cyrus-sasl_2.1.28.bb
diff --git a/meta-openembedded/meta-oe/recipes-support/cpulimit/cpulimit/0001-Remove-sys-sysctl.h-and-add-missing-libgen.h-include.patch b/meta-openembedded/meta-oe/recipes-support/cpulimit/cpulimit/0001-Remove-sys-sysctl.h-and-add-missing-libgen.h-include.patch
new file mode 100644
index 0000000..50d0342
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/cpulimit/cpulimit/0001-Remove-sys-sysctl.h-and-add-missing-libgen.h-include.patch
@@ -0,0 +1,41 @@
+From 41cfba0840f58555593fd4bee07db77221043e0b Mon Sep 17 00:00:00 2001
+From: Portia <stephensportia@gmail.com>
+Date: Sun, 1 May 2022 12:43:35 +1000
+Subject: [PATCH] Remove sys/sysctl.h and add missing libgen.h include
+
+- sys/sysctl.h has been deprecated and should be removed
+- Adds missing libgen.h include when calling basename()
+
+Upstream-Status: Inactive-Upstream [2015]
+Signed-off-by: Portia <stephensportia@gmail.com>
+---
+ src/cpulimit.c      | 1 -
+ src/process_group.c | 1 +
+ 2 files changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/cpulimit.c b/src/cpulimit.c
+index 50eabea..5b0ec49 100644
+--- a/src/cpulimit.c
++++ b/src/cpulimit.c
+@@ -38,7 +38,6 @@
+ #include <string.h>
+ #include <sys/stat.h>
+ #include <sys/time.h>
+-#include <sys/sysctl.h>
+ #include <sys/resource.h>
+ #include <sys/types.h>
+ #include <sys/wait.h>
+diff --git a/src/process_group.c b/src/process_group.c
+index 06d73a6..d4f6fab 100644
+--- a/src/process_group.c
++++ b/src/process_group.c
+@@ -24,6 +24,7 @@
+ #include <limits.h>
+ #include <sys/time.h>
+ #include <signal.h>
++#include <libgen.h>
+
+ #include <assert.h>
+
+--
+2.25.1
diff --git a/meta-openembedded/meta-oe/recipes-support/cpulimit/cpulimit_0.2.bb b/meta-openembedded/meta-oe/recipes-support/cpulimit/cpulimit_0.2.bb
new file mode 100644
index 0000000..3ee2b5c
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/cpulimit/cpulimit_0.2.bb
@@ -0,0 +1,22 @@
+SUMMARY = "cpulimit is a tool which limits the CPU usage of a process"
+HOMEPAGE = "http://cpulimit.sourceforge.net"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=86c1c0d961a437e529db93aa3bb32dc4"
+SRCREV ?= "f4d2682804931e7aea02a869137344bb5452a3cd"
+
+SRC_URI = "git://g...@github.com/opsengine/cpulimit.git;protocol=https;branch=master \
+           file://0001-Remove-sys-sysctl.h-and-add-missing-libgen.h-include.patch \
+           "
+
+S = "${WORKDIR}/git"
+
+do_compile() {
+    oe_runmake all
+}
+do_install() {
+    install -d ${D}${sbindir}
+    install -m 0755 ${B}/src/${PN} ${D}${sbindir}/
+}
+
+CFLAGS += "${LDFLAGS}"
+
diff --git a/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2.bb b/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2.bb
index 92c05fe..70d4135 100644
--- a/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2.bb
+++ b/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2.bb
@@ -3,8 +3,11 @@
 LIC_FILES_CHKSUM = "file://devmem2.c;endline=38;md5=a9eb9f3890384519f435aedf986297cf"
 PR = "r7"
 
-SRC_URI = "http://www.free-electrons.com/pub/mirror/devmem2.c;downloadfilename=devmem2-new.c \
-          " 
+SRC_URI = "https://bootlin.com/pub/mirror/devmem2.c;downloadfilename=devmem2-new.c \
+           file://devmem2-fixups-2.patch;apply=yes;striplevel=0 \
+           file://0001-devmem.c-ensure-word-is-32-bit-and-add-support-for-6.patch \
+           file://0001-devmem2-support-different-page-sizes-at-run-time.patch \
+"
 
 S = "${WORKDIR}"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2/0001-devmem.c-ensure-word-is-32-bit-and-add-support-for-6.patch b/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2/0001-devmem.c-ensure-word-is-32-bit-and-add-support-for-6.patch
new file mode 100644
index 0000000..2a57f29
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2/0001-devmem.c-ensure-word-is-32-bit-and-add-support-for-6.patch
@@ -0,0 +1,70 @@
+From 1360a907879dd24041797a3b709d49aeac2ab444 Mon Sep 17 00:00:00 2001
+From: Denys Dmytriyenko <denys@ti.com>
+Date: Tue, 29 May 2018 16:55:42 -0400
+Subject: [PATCH] devmem.c: ensure word is 32-bit and add support for 64-bit
+ long
+
+Signed-off-by: Denys Dmytriyenko <denys@ti.com>
+---
+ devmem2.c | 23 +++++++++++++++++------
+ 1 file changed, 17 insertions(+), 6 deletions(-)
+
+diff --git a/devmem2.c b/devmem2.c
+index 5845381..68131b2 100644
+--- a/devmem2.c
++++ b/devmem2.c
+@@ -39,6 +39,7 @@
+ 
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <stdint.h>
+ #include <unistd.h>
+ #include <string.h>
+ #include <errno.h>
+@@ -69,7 +70,7 @@ int main(int argc, char **argv) {
+ 	if(argc < 2) {
+ 		fprintf(stderr, "\nUsage:\t%s { address } [ type [ data ] ]\n"
+ 			"\taddress : memory address to act upon\n"
+-			"\ttype    : access operation type : [b]yte, [h]alfword, [w]ord\n"
++			"\ttype    : access operation type : [b]yte, [h]alfword, [w]ord, [l]ong\n"
+ 			"\tdata    : data to be written\n\n",
+ 			argv[0]);
+ 		exit(1);
+@@ -103,9 +104,14 @@ int main(int argc, char **argv) {
+ 			read_result = *((unsigned short *) virt_addr);
+ 			break;
+ 		case 'w':
+-			data_size = sizeof(unsigned long);
++			data_size = sizeof(uint32_t);
+ 			virt_addr = fixup_addr(virt_addr, data_size);
+-			read_result = *((unsigned long *) virt_addr);
++			read_result = *((uint32_t *) virt_addr);
++			break;
++		case 'l':
++			data_size = sizeof(uint64_t);
++			virt_addr = fixup_addr(virt_addr, data_size);
++			read_result = *((uint64_t *) virt_addr);
+ 			break;
+ 		default:
+ 			fprintf(stderr, "Illegal data type '%c'.\n", access_type);
+@@ -129,9 +135,14 @@ int main(int argc, char **argv) {
+ 				read_result = *((unsigned short *) virt_addr);
+ 				break;
+ 			case 'w':
+-				virt_addr = fixup_addr(virt_addr, sizeof(unsigned long));
+-				*((unsigned long *) virt_addr) = write_val;
+-				read_result = *((unsigned long *) virt_addr);
++				virt_addr = fixup_addr(virt_addr, sizeof(uint32_t));
++				*((uint32_t *) virt_addr) = write_val;
++				read_result = *((uint32_t *) virt_addr);
++				break;
++			case 'l':
++				virt_addr = fixup_addr(virt_addr, sizeof(uint64_t));
++				*((uint64_t *) virt_addr) = write_val;
++				read_result = *((uint64_t *) virt_addr);
+ 				break;
+ 		}
+ 		sprintf(fmt_str, "Write at address 0x%%08lX (%%p): 0x%%0%dlX, "
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2/0001-devmem2-support-different-page-sizes-at-run-time.patch b/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2/0001-devmem2-support-different-page-sizes-at-run-time.patch
new file mode 100644
index 0000000..0da0732
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2/0001-devmem2-support-different-page-sizes-at-run-time.patch
@@ -0,0 +1,35 @@
+From 0f6af48b2fbc71ec8abe862d3e9eb6da7b03538b Mon Sep 17 00:00:00 2001
+From: Denys Dmytriyenko <denys@ti.com>
+Date: Wed, 8 Aug 2018 14:38:00 -0400
+Subject: [PATCH] devmem2: support different page sizes at run-time
+
+Signed-off-by: Denys Dmytriyenko <denys@ti.com>
+---
+ devmem2.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/devmem2.c b/devmem2.c
+index 68131b2..76af2d6 100644
+--- a/devmem2.c
++++ b/devmem2.c
+@@ -53,8 +53,6 @@
+ #define FATAL do { fprintf(stderr, "Error at line %d, file %s (%d) [%s]\n", \
+   __LINE__, __FILE__, errno, strerror(errno)); exit(1); } while(0)
+  
+-#define MAP_SIZE 4096UL
+-#define MAP_MASK (MAP_SIZE - 1)
+ 
+ static inline void *fixup_addr(void *addr, size_t size);
+ 
+@@ -66,6 +64,8 @@ int main(int argc, char **argv) {
+ 	int access_type = 'w';
+ 	char fmt_str[128];
+ 	size_t data_size;
++	unsigned long MAP_SIZE = sysconf(_SC_PAGE_SIZE);
++	unsigned long MAP_MASK = (MAP_SIZE - 1);
+ 	
+ 	if(argc < 2) {
+ 		fprintf(stderr, "\nUsage:\t%s { address } [ type [ data ] ]\n"
+-- 
+2.7.4
+
diff --git a/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2/devmem2-fixups-2.patch b/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2/devmem2-fixups-2.patch
new file mode 100644
index 0000000..4517797
--- /dev/null
+++ b/meta-openembedded/meta-oe/recipes-support/devmem2/devmem2/devmem2-fixups-2.patch
@@ -0,0 +1,91 @@
+--- devmem2.c	2004-08-05 01:55:25.000000000 +0200
++++ devmem2_modif.c	2011-01-13 15:48:37.798799784 +0100
+@@ -45,12 +45,16 @@
+ #define MAP_SIZE 4096UL
+ #define MAP_MASK (MAP_SIZE - 1)
+ 
++static inline void *fixup_addr(void *addr, size_t size);
++
+ int main(int argc, char **argv) {
+     int fd;
+     void *map_base, *virt_addr; 
+-	unsigned long read_result, writeval;
++	unsigned long read_result, write_val;
+ 	off_t target;
+ 	int access_type = 'w';
++	char fmt_str[128];
++	size_t data_size;
+ 	
+ 	if(argc < 2) {
+ 		fprintf(stderr, "\nUsage:\t%s { address } [ type [ data ] ]\n"
+@@ -79,38 +83,51 @@
+     virt_addr = map_base + (target & MAP_MASK);
+     switch(access_type) {
+ 		case 'b':
++			data_size = sizeof(unsigned char);
++			virt_addr = fixup_addr(virt_addr, data_size);
+ 			read_result = *((unsigned char *) virt_addr);
+ 			break;
+ 		case 'h':
++			data_size = sizeof(unsigned short);
++			virt_addr = fixup_addr(virt_addr, data_size);
+ 			read_result = *((unsigned short *) virt_addr);
+ 			break;
+ 		case 'w':
++			data_size = sizeof(unsigned long);
++			virt_addr = fixup_addr(virt_addr, data_size);
+ 			read_result = *((unsigned long *) virt_addr);
+ 			break;
+ 		default:
+ 			fprintf(stderr, "Illegal data type '%c'.\n", access_type);
+ 			exit(2);
+ 	}
+-    printf("Value at address 0x%X (%p): 0x%X\n", target, virt_addr, read_result); 
++	sprintf(fmt_str, "Read at address  0x%%08lX (%%p): 0x%%0%dlX\n", 2*data_size);
++    printf(fmt_str, (unsigned long)target, virt_addr, read_result);
+     fflush(stdout);
+ 
+ 	if(argc > 3) {
+-		writeval = strtoul(argv[3], 0, 0);
++		write_val = strtoul(argv[3], 0, 0);
+ 		switch(access_type) {
+ 			case 'b':
+-				*((unsigned char *) virt_addr) = writeval;
++				virt_addr = fixup_addr(virt_addr, sizeof(unsigned char));
++				*((unsigned char *) virt_addr) = write_val;
+ 				read_result = *((unsigned char *) virt_addr);
+ 				break;
+ 			case 'h':
+-				*((unsigned short *) virt_addr) = writeval;
++				virt_addr = fixup_addr(virt_addr, sizeof(unsigned short));
++				*((unsigned short *) virt_addr) = write_val;
+ 				read_result = *((unsigned short *) virt_addr);
+ 				break;
+ 			case 'w':
+-				*((unsigned long *) virt_addr) = writeval;
++				virt_addr = fixup_addr(virt_addr, sizeof(unsigned long));
++				*((unsigned long *) virt_addr) = write_val;
+ 				read_result = *((unsigned long *) virt_addr);
+ 				break;
+ 		}
+-		printf("Written 0x%X; readback 0x%X\n", writeval, read_result); 
++		sprintf(fmt_str, "Write at address 0x%%08lX (%%p): 0x%%0%dlX, "
++			"readback 0x%%0%dlX\n",	2*data_size, 2*data_size);
++		printf(fmt_str, (unsigned long)target, virt_addr,
++			write_val, read_result);
+ 		fflush(stdout);
+ 	}
+ 	
+@@ -119,3 +136,12 @@
+     return 0;
+ }
+ 
++static inline void *fixup_addr(void *addr, size_t size)
++{
++#ifdef FORCE_STRICT_ALIGNMENT
++	unsigned long aligned_addr = (unsigned long)addr;
++	aligned_addr &= ~(size - 1);
++	addr = (void *)aligned_addr;
++#endif
++	return addr;
++}
diff --git a/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_2.6.1.bb b/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_2.7.0.bb
similarity index 97%
rename from meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_2.6.1.bb
rename to meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_2.7.0.bb
index ece2f56..0645ccd 100644
--- a/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_2.6.1.bb
+++ b/meta-openembedded/meta-oe/recipes-support/freerdp/freerdp_2.7.0.bb
@@ -13,7 +13,7 @@
 PE = "1"
 PKGV = "${GITPKGVTAG}"
 
-SRCREV = "658a72980f6e93241d927c46cfa664bf2547b8b1"
+SRCREV = "40ee5d3bcc70343af6c0300d71968858c1f1948f"
 SRC_URI = "git://github.com/FreeRDP/FreeRDP.git;branch=stable-2.0;protocol=https \
     file://winpr-makecert-Build-with-install-RPATH.patch \
 "
diff --git a/meta-openembedded/meta-oe/recipes-support/htop/htop_3.1.2.bb b/meta-openembedded/meta-oe/recipes-support/htop/htop_3.2.0.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-support/htop/htop_3.1.2.bb
rename to meta-openembedded/meta-oe/recipes-support/htop/htop_3.2.0.bb
index 4fe7098..12b110e 100644
--- a/meta-openembedded/meta-oe/recipes-support/htop/htop_3.1.2.bb
+++ b/meta-openembedded/meta-oe/recipes-support/htop/htop_3.2.0.bb
@@ -9,7 +9,7 @@
 SRC_URI = "git://github.com/htop-dev/htop.git;branch=main;protocol=https \
            file://0001-Use-pkg-config.patch \
 "
-SRCREV = "d73783d6dbec4a8d9d20d744bf2b5e6a7073aa46"
+SRCREV = "c7413fd6771b65388bea14ef42863444c6eaa419"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_0.358.bb b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_0.359.bb
similarity index 91%
rename from meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_0.358.bb
rename to meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_0.359.bb
index 59513bb..3564854 100644
--- a/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_0.358.bb
+++ b/meta-openembedded/meta-oe/recipes-support/hwdata/hwdata_0.359.bb
@@ -5,7 +5,7 @@
 LICENSE = "GPL-2.0-or-later | XFree86-1.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=1556547711e8246992b999edd9445a57"
 
-SRCREV = "ae144d896eea90e527a57276accaf0da043c9f83"
+SRCREV = "bf3322565b3bf5c35c90e42ca6cf4928f2f2d481"
 SRC_URI = "git://github.com/vcrhonek/${BPN}.git;branch=master;protocol=https"
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/libcereal/libcereal_1.3.2.bb b/meta-openembedded/meta-oe/recipes-support/libcereal/libcereal_1.3.2.bb
index fc4fad7..80c962e 100644
--- a/meta-openembedded/meta-oe/recipes-support/libcereal/libcereal_1.3.2.bb
+++ b/meta-openembedded/meta-oe/recipes-support/libcereal/libcereal_1.3.2.bb
@@ -45,6 +45,6 @@
 
 BBCLASSEXTEND = "native nativesdk"
 
-#it needs to work with CXXFLAGS += " -mlong-double-64" but ppc64 only supports 128bit long double
-COMPATIBLE_HOST:powerpc64le = "null"
-COMPATIBLE_HOST:powerpc = "null"
+#it needs to work with CXXFLAGS += " -mlong-double-64" but ppc only supports 128bit long double
+COMPATIBLE_HOST:powerpc:libc-musl = "null"
+COMPATIBLE_HOST:powerpc64le:libc-musl = "null"
diff --git a/meta-openembedded/meta-oe/recipes-support/nano/nano_6.2.bb b/meta-openembedded/meta-oe/recipes-support/nano/nano_6.3.bb
similarity index 87%
rename from meta-openembedded/meta-oe/recipes-support/nano/nano_6.2.bb
rename to meta-openembedded/meta-oe/recipes-support/nano/nano_6.3.bb
index 0be0224..6d22bfc 100644
--- a/meta-openembedded/meta-oe/recipes-support/nano/nano_6.2.bb
+++ b/meta-openembedded/meta-oe/recipes-support/nano/nano_6.3.bb
@@ -13,7 +13,7 @@
 PV_MAJOR = "${@d.getVar('PV').split('.')[0]}"
 
 SRC_URI = "https://nano-editor.org/dist/v${PV_MAJOR}/nano-${PV}.tar.xz"
-SRC_URI[sha256sum] = "2bca1804bead6aaf4ad791f756e4749bb55ed860eec105a97fba864bc6a77cb3"
+SRC_URI[sha256sum] = "eb532da4985672730b500f685dbaab885a466d08fbbf7415832b95805e6f8687"
 
 UPSTREAM_CHECK_URI = "https://ftp.gnu.org/gnu/nano"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/openldap/openldap/openldap-2.4.28-gnutls-gcrypt.patch b/meta-openembedded/meta-oe/recipes-support/openldap/openldap/openldap-2.4.28-gnutls-gcrypt.patch
deleted file mode 100644
index 8cfd003..0000000
--- a/meta-openembedded/meta-oe/recipes-support/openldap/openldap/openldap-2.4.28-gnutls-gcrypt.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-From http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-nds/openldap/files/
-
-Upstream-Status: Pending
-
---- a/configure.ac
-+++ b/configure.ac
-@@ -1263,7 +1263,7 @@ if test $ol_link_tls = no ; then
- 				ol_link_tls=yes
- 				WITH_TLS_TYPE=gnutls
- 
--				TLS_LIBS="-lgnutls"
-+				TLS_LIBS="-lgnutls -lgcrypt"
- 
- 				AC_DEFINE(HAVE_GNUTLS, 1, 
- 					[define if you have GNUtls])
diff --git a/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.5.9.bb b/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.5.12.bb
similarity index 96%
rename from meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.5.9.bb
rename to meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.5.12.bb
index 5ac5660..e4475e5 100644
--- a/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.5.9.bb
+++ b/meta-openembedded/meta-oe/recipes-support/openldap/openldap_2.5.12.bb
@@ -7,7 +7,7 @@
 # basically BSD.  opensource.org does not record this license
 # at present (so it is apparently not OSI certified).
 LICENSE = "OpenLDAP"
-LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=5cc6ef74da4ad25d707c4f5903d64975 \
+LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=beceb5ac7100b6430640c61655b25c1f \
                     file://LICENSE;md5=153d07ef052c4a37a8fac23bc6031972 \
                     "
 SECTION = "libs"
@@ -15,7 +15,6 @@
 LDAP_VER = "${@'.'.join(d.getVar('PV').split('.')[0:2])}"
 
 SRC_URI = "http://www.openldap.org/software/download/OpenLDAP/openldap-release/${BP}.tgz \
-    file://openldap-2.4.28-gnutls-gcrypt.patch \
     file://use-urandom.patch \
     file://initscript \
     file://slapd.service \
@@ -26,8 +25,7 @@
     file://0001-librewrite-include-ldap_pvt_thread.h-before-redefini.patch \
 "
 
-SRC_URI[md5sum] = "237fc2d881c27f8dd5d9f396e2865c11"
-SRC_URI[sha256sum] = "c08e12f4ca5803d5d9f9948c70ad3491282cda3c17ec8b655dcbcb2364e6fb9e"
+SRC_URI[sha256sum] = "d5086cbfc49597fa7d0670a429a9054552d441b16ee8b2435412797ab0e37b96"
 
 DEPENDS = "util-linux groff-native"
 
@@ -51,7 +49,7 @@
                    ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
 "
 #--with-tls              with TLS/SSL support auto|openssl|gnutls [auto]
-PACKAGECONFIG[gnutls] = "--with-tls=gnutls,,gnutls libgcrypt"
+PACKAGECONFIG[gnutls] = "--with-tls=gnutls,,gnutls"
 PACKAGECONFIG[openssl] = "--with-tls=openssl,,openssl"
 
 PACKAGECONFIG[sasl] = "--with-cyrus-sasl,--without-cyrus-sasl,cyrus-sasl"
diff --git a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_22.04.0.bb b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_22.05.0.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-support/poppler/poppler_22.04.0.bb
rename to meta-openembedded/meta-oe/recipes-support/poppler/poppler_22.05.0.bb
index b7cdb4f..9a7d9ef 100644
--- a/meta-openembedded/meta-oe/recipes-support/poppler/poppler_22.04.0.bb
+++ b/meta-openembedded/meta-oe/recipes-support/poppler/poppler_22.05.0.bb
@@ -7,7 +7,7 @@
            file://0001-Do-not-overwrite-all-our-build-flags.patch \
            file://basename-include.patch \
            "
-SRC_URI[sha256sum] = "813fb4b90e7bda63df53205c548602bae728887a60f4048aae4dbd9b1927deff"
+SRC_URI[sha256sum] = "a969ced458e050d6202367bd7427054e2bd19bae39e8f969910d3b9151abf958"
 
 DEPENDS = "fontconfig zlib cairo lcms glib-2.0"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/unixodbc/unixodbc_2.3.9.bb b/meta-openembedded/meta-oe/recipes-support/unixodbc/unixodbc_2.3.11.bb
similarity index 88%
rename from meta-openembedded/meta-oe/recipes-support/unixodbc/unixodbc_2.3.9.bb
rename to meta-openembedded/meta-oe/recipes-support/unixodbc/unixodbc_2.3.11.bb
index c194739..c7d23d1 100644
--- a/meta-openembedded/meta-oe/recipes-support/unixodbc/unixodbc_2.3.9.bb
+++ b/meta-openembedded/meta-oe/recipes-support/unixodbc/unixodbc_2.3.11.bb
@@ -11,7 +11,7 @@
 SRC_URI = "http://ftp.unixodbc.org/unixODBC-${PV}.tar.gz \
            file://do-not-use-libltdl-source-directory.patch \
 "
-SRC_URI[sha256sum] = "52833eac3d681c8b0c9a5a65f2ebd745b3a964f208fc748f977e44015a31b207"
+SRC_URI[sha256sum] = "d9e55c8e7118347e3c66c87338856dad1516b490fb7c756c1562a2c267c73b5c"
 
 UPSTREAM_CHECK_REGEX = "unixODBC-(?P<pver>\d+(\.\d+)+)\.tar"
 
diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.32.bb b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.34.bb
similarity index 96%
rename from meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.32.bb
rename to meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.34.bb
index a8cf326..5e0accb 100644
--- a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.32.bb
+++ b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.34.bb
@@ -16,7 +16,7 @@
     file://0001-utils-fix-build-against-5.15-libc-headers-headers.patch \
 "
 
-SRC_URI[sha256sum] = "5d11384200b4e943ad0056d2cf75980ae4bee852c89650e2914e1b34eedc2d2c"
+SRC_URI[sha256sum] = "9c3ce1829432e5b8374f950698587038f45fb0492147dc200e59edb9bb75eb49"
 
 S ?= "${WORKDIR}/vbox_module"
 S:task-patch = "${WORKDIR}/${VBOX_NAME}"
diff --git a/meta-openembedded/meta-oe/recipes-support/xmlsec1/xmlsec1_1.2.33.bb b/meta-openembedded/meta-oe/recipes-support/xmlsec1/xmlsec1_1.2.34.bb
similarity index 95%
rename from meta-openembedded/meta-oe/recipes-support/xmlsec1/xmlsec1_1.2.33.bb
rename to meta-openembedded/meta-oe/recipes-support/xmlsec1/xmlsec1_1.2.34.bb
index 0cca2fe..3e8772e 100644
--- a/meta-openembedded/meta-oe/recipes-support/xmlsec1/xmlsec1_1.2.33.bb
+++ b/meta-openembedded/meta-oe/recipes-support/xmlsec1/xmlsec1_1.2.34.bb
@@ -22,7 +22,7 @@
     file://ensure-search-path-non-host.patch \
     "
 
-SRC_URI[sha256sum] = "26041d35a20a245ed5a2fb9ee075f10825664d274220cb5190340fa87a4d0931"
+SRC_URI[sha256sum] = "52ced4943f35bd7d0818a38298c1528ca4ac8a54440fd71134a07d2d1370a262"
 
 inherit autotools-brokensep ptest pkgconfig
 
diff --git a/meta-openembedded/meta-oe/recipes-test/bats/bats_1.6.0.bb b/meta-openembedded/meta-oe/recipes-test/bats/bats_1.6.1.bb
similarity index 85%
rename from meta-openembedded/meta-oe/recipes-test/bats/bats_1.6.0.bb
rename to meta-openembedded/meta-oe/recipes-test/bats/bats_1.6.1.bb
index 7ea1aa8..7d72a51 100644
--- a/meta-openembedded/meta-oe/recipes-test/bats/bats_1.6.0.bb
+++ b/meta-openembedded/meta-oe/recipes-test/bats/bats_1.6.1.bb
@@ -6,9 +6,12 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE.md;md5=2970203aedf9e829edb96a137a4fe81b"
 
-SRC_URI = "git://github.com/bats-core/bats-core.git;branch=master;protocol=https"
-# v1.4.1
-SRCREV = "210acf3a8ed318ddedad3137c15451739beba7d4"
+SRC_URI = "\
+  git://github.com/bats-core/bats-core.git;branch=version/1.6.x;protocol=https \
+  "
+
+# v1.6.1
+SRCREV = "1977254c2a7faa2e0af17355856f91dc471d1daa"
 
 S = "${WORKDIR}/git"
 
diff --git a/meta-openembedded/meta-perl/conf/layer.conf b/meta-openembedded/meta-perl/conf/layer.conf
index 3cb9571..007ae2f 100644
--- a/meta-openembedded/meta-perl/conf/layer.conf
+++ b/meta-openembedded/meta-perl/conf/layer.conf
@@ -15,4 +15,4 @@
 
 LAYERDEPENDS_perl-layer = "core openembedded-layer"
 
-LAYERSERIES_COMPAT_perl-layer = "kirkstone"
+LAYERSERIES_COMPAT_perl-layer = "kirkstone langdale"
diff --git a/meta-openembedded/meta-python/conf/layer.conf b/meta-openembedded/meta-python/conf/layer.conf
index e444498..481e4ea 100644
--- a/meta-openembedded/meta-python/conf/layer.conf
+++ b/meta-openembedded/meta-python/conf/layer.conf
@@ -14,6 +14,6 @@
 
 LAYERDEPENDS_meta-python = "core (>= 12) openembedded-layer"
 
-LAYERSERIES_COMPAT_meta-python = "kirkstone"
+LAYERSERIES_COMPAT_meta-python = "kirkstone langdale"
 
 LICENSE_PATH += "${LAYERDIR}/licenses"
diff --git a/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb b/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
index f7bf365..6ca652e 100644
--- a/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
+++ b/meta-openembedded/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb
@@ -12,9 +12,9 @@
 # FORTRAN:forcevariable = ",fortran"
 RDEPENDS:packagegroup-meta-python3 = "\
     ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "python3-systemd", "", d)} \
-    ${@bb.utils.contains("DISTRO_FEATURES", "x11", "python3-blivetgui", "", d)} \
+    ${@bb.utils.contains("DISTRO_FEATURES", "x11 systemd", "python3-blivetgui", "", d)} \
     gyp \
-    pamela \
+    ${@bb.utils.contains("DISTRO_FEATURES", "pam", "pamela", "", d)} \
     pyrtm \
     python3-absl \
     python3-aenum \
@@ -52,7 +52,7 @@
     python3-bitstring \
     python3-bitstruct \
     python3-blinker \
-    python3-blivet \
+    ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "python3-blivet", "", d)} \
     python3-booleanpy \
     python3-cachecontrol \
     python3-cached-property \
@@ -84,13 +84,15 @@
     python3-croniter \
     python3-cson \
     python3-custom-inherit \
-    python3-cvxopt \
+    ${@bb.utils.contains_any('FORTRAN', [',fortran',',f77'], 'python3-cvxopt', '', d)} \
     python3-cycler \
+    python3-cytoolz \
     python3-dateparser \
     python3-dateutil \
     python3-dbus-next \
     python3-dbussy \
     python3-decorator \
+    python3-decouple \
     python3-defusedxml \
     python3-dill \
     python3-diskcache \
@@ -108,6 +110,14 @@
     python3-email-validator \
     python3-engineio \
     python3-et-xmlfile \
+    python3-eth-abi \
+    python3-eth-account \
+    python3-eth-hash \
+    python3-eth-keyfile \
+    python3-eth-keys \
+    python3-eth-rlp \
+    python3-eth-typing \
+    python3-eth-utils \
     python3-evdev \
     python3-execnet \
     python3-fann2 \
@@ -176,6 +186,7 @@
     python3-imgtool \
     python3-incremental \
     python3-inflection \
+    python3-inotify \
     python3-intelhex \
     python3-intervals \
     python3-ipaddress \
@@ -209,9 +220,11 @@
     python3-lazy-object-proxy \
     python3-libconf \
     python3-license-expression \
+    python3-ldap \
     python3-lockfile \
     python3-lorem \
     python3-lrparsing \
+    python3-lru-dict \
     python3-luma-core \
     python3-luma-oled \
     python3-lxml \
@@ -252,6 +265,7 @@
     python3-paramiko \
     python3-parse \
     python3-parse-type \
+    python3-parsimonious \
     python3-parso \
     python3-passlib \
     python3-pastedeploy \
@@ -300,6 +314,7 @@
     python3-pydicti \
     python3-pyephem \
     python3-pyexpect \
+    python3-pyfanotify \
     python3-pyfirmata \
     python3-pyflakes \
     python3-pyhamcrest \
@@ -327,7 +342,7 @@
     python3-pyscaffold \
     python3-pyserial \
     python3-pysonos \
-    python3-pystemd \
+    ${@bb.utils.contains("DISTRO_FEATURES", "systemd", "python3-pystemd", "", d)} \
     python3-pytest-asyncio \
     python3-pytest-benchmark \
     python3-pytest-cache \
@@ -363,6 +378,7 @@
     python3-rfc3339-validator \
     python3-rfc3986-validator \
     python3-rfc3987 \
+    python3-rlp \
     python3-robotframework \
     python3-robotframework-seriallibrary \
     python3-rsa \
@@ -403,6 +419,7 @@
     python3-thrift \
     python3-tinyrecord \
     python3-tornado \
+    python3-toolz \
     python3-tqdm \
     python3-trafaret \
     python3-trafaret-config \
@@ -427,6 +444,7 @@
     python3-visitor \
     python3-waitress \
     python3-watchdog \
+    python3-web3 \
     python3-webcolors \
     python3-webencodings \
     python3-websocket-client \
@@ -464,6 +482,7 @@
     python3-dominate-ptest \
     python3-geojson-ptest \
     python3-gunicorn-ptest \
+    python3-hexbytes \
     python3-html2text-ptest \
     python3-inflection-ptest \
     python3-intervals-ptest \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_3.0.11.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_4.4.1.bb
similarity index 73%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_3.0.11.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_4.4.1.bb
index 47d9964..b3a88fb 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_3.0.11.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-aiohue_4.4.1.bb
@@ -4,7 +4,7 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=dab31a1d28183826937f4b152143a33f"
 
-SRC_URI[sha256sum] = "31c0b90d7dc2b62f5e1a93e78b2c0d6360ef6c0a87485c217a4f394c937fce7d"
+SRC_URI[sha256sum] = "fa3bb0cf68aefdd0710704443c896abda69ae227500ad9539ac6c3d1d6dad804"
 
 inherit pypi setuptools3
 
@@ -12,4 +12,5 @@
 	${PYTHON_PN}-aiohttp \
 	${PYTHON_PN}-asyncio-throttle \
 	${PYTHON_PN}-profile \
+        ${PYTHON_PN}-awesomeversion \
 "
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-antlr4-runtime_4.10.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-antlr4-runtime_4.10.bb
new file mode 100644
index 0000000..01f1720
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-antlr4-runtime_4.10.bb
@@ -0,0 +1,11 @@
+SUMMARY = "ANTLR runtime for Python"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://PKG-INFO;md5=6e514123aedb5d9fb133d1bc6c598d46"
+
+SRC_URI[sha256sum] = "061a49bc72ae05a35d9b61c0ba0ac36c0397708819f02fbfb20a80e47d287a1b"
+
+PYPI_PACKAGE = "antlr4-python3-runtime"
+
+inherit pypi python_setuptools_build_meta
+
+BBCLASSEXTEND = "nativesdk native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-antlr4-runtime_4.9.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-antlr4-runtime_4.9.2.bb
deleted file mode 100644
index 8a19b6c..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-antlr4-runtime_4.9.2.bb
+++ /dev/null
@@ -1,11 +0,0 @@
-SUMMARY = "ANTLR runtime for Python"
-LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://PKG-INFO;md5=c96f0ee5f5d08fd4387e5f00507bb13e"
-
-SRC_URI[sha256sum] = "31f5abdc7faf16a1a6e9bf2eb31565d004359b821b09944436a34361929ae85a"
-
-PYPI_PACKAGE = "antlr4-python3-runtime"
-
-inherit pypi python_setuptools_build_meta
-
-BBCLASSEXTEND = "nativesdk native"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.11.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.11.3.bb
similarity index 89%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.11.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.11.3.bb
index c52008e..a2e9111 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.11.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-astroid_2.11.3.bb
@@ -4,7 +4,7 @@
 LICENSE = "LGPL-2.1-only"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=a70cf540abf41acb644ac3b621b2fad1"
 
-SRC_URI[sha256sum] = "8d0a30fe6481ce919f56690076eafbb2fb649142a89dc874f1ec0e7a011492d0"
+SRC_URI[sha256sum] = "4e5ba10571e197785e312966ea5efb2f5783176d4c1a73fa922d474ae2be59f7"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_22.3.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_22.4.2.bb
similarity index 86%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_22.3.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_22.4.2.bb
index 78514a4..3dc3083 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_22.3.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-autobahn_22.4.2.bb
@@ -3,7 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=97c0bda20ad1d845c6369c0e47a1cd98"
 
-SRC_URI[sha256sum] = "58a887c7a196bb08d8b6624cb3695f493a9e5c9f00fd350d8d6f829b47ff9036"
+SRC_URI[sha256sum] = "57b7acf228d50d83cf327372b889e2a168a869275b26e17917ed0b4cf4d823a6"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-awesomeversion_22.5.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-awesomeversion_22.5.1.bb
new file mode 100644
index 0000000..cdb8969
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-awesomeversion_22.5.1.bb
@@ -0,0 +1,9 @@
+DESCRIPTION = "One version package to rule them all, One version package to find them, One version package to bring them all, and in the darkness bind them."
+HOMEPAGE = "https://pypi.org/project/awesomeversion/"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENCE.md;md5=92622b5a8e216099be741d78328bae5d"
+
+SRC_URI[sha256sum] = "84bcd85ab1bb9a287cfd1b2e5145f888b6e02ef3e3a63a07453f10f2f6e50fe3"
+
+inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_2.4.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_2.5.0.bb
similarity index 77%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_2.4.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_2.5.0.bb
index fbb89b8..bb80c4a 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_2.4.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-bitarray_2.5.0.bb
@@ -3,7 +3,7 @@
 LICENSE = "PSF-2.0"
 LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=2ad702cdcd49e8d2ac01d7e7d0810d2d"
 
-SRC_URI[sha256sum] = "faeca03f979e992cc76f7406af7eb9795cb111b8d8969c891a032bd7497c87da"
+SRC_URI[sha256sum] = "5abed04adcd2031f6e714993d95223bf9ae85354c640c270b2ed6f46b83573ba"
 
 inherit setuptools3 pypi
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-bitstruct_8.14.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-bitstruct_8.14.1.bb
similarity index 79%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-bitstruct_8.14.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-bitstruct_8.14.1.bb
index f0aa321..77ef985 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-bitstruct_8.14.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-bitstruct_8.14.1.bb
@@ -3,7 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=d9aa4ec07de78abae21c490c9ffe61bd"
 
-SRC_URI[sha256sum] = "230c191c75f1526f6922cdb08eab6f52c055452e2239bf5638f02e9cfd382c91"
+SRC_URI[sha256sum] = "d38131bd447b6af5b8f464c4878797c87a5d9da1c95b9357e071c424fde5f055"
 
 PYPI_PACKAGE = "bitstruct"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-booleanpy_3.8.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-booleanpy_3.8.bb
deleted file mode 100644
index a1ce7ea..0000000
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-booleanpy_3.8.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-SUMMARY = "Define boolean algebras, create and parse boolean expressions and create custom boolean DSL"
-HOMEPAGE = "https://github.com/bastikr/boolean.py"
-
-LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=9b58494d4f385978ca5a7ef4f6abca53"
-
-SRC_URI[md5sum] = "83ccc145ba74a585637124c8bc648333"
-SRC_URI[sha256sum] = "cc24e20f985d60cd4a3a5a1c0956dd12611159d32a75081dabd0c9ab981acaa4"
-
-PYPI_PACKAGE = "boolean.py"
-
-inherit pypi setuptools3
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-booleanpy_4.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-booleanpy_4.0.bb
new file mode 100644
index 0000000..41fd3d9
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-booleanpy_4.0.bb
@@ -0,0 +1,13 @@
+SUMMARY = "Define boolean algebras, create and parse boolean expressions and create custom boolean DSL"
+HOMEPAGE = "https://github.com/bastikr/boolean.py"
+
+LICENSE = "BSD-2-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=d118b5feceee598ebeca76e13395c2bd"
+
+SRC_URI[sha256sum] = "17b9a181630e43dde1851d42bef546d616d5d9b4480357514597e78b203d06e4"
+
+PYPI_PACKAGE = "boolean.py"
+
+inherit pypi setuptools3
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-cachecontrol_0.12.10.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-cachecontrol_0.12.11.bb
similarity index 84%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-cachecontrol_0.12.10.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-cachecontrol_0.12.11.bb
index 58c157b..fc2b0ae 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-cachecontrol_0.12.10.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-cachecontrol_0.12.11.bb
@@ -1,13 +1,13 @@
 SUMMARY = "httplib2 caching for requests"
 HOMEPAGE = "https://pypi.org/project/CacheControl/"
 LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=12;endline=12;md5=62d6ee40749ec0b76d8a1200a1562369"
+LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=12;endline=12;md5=942a721dac34d073453642ffe5fcf546"
 
 # On PyPi, this is "CacheControl", rather than "cachecontrol", so we need to
 # override PYPI_PACKAGE so fetch succeeds.
 PYPI_PACKAGE = "CacheControl"
 
-SRC_URI[sha256sum] = "d8aca75b82eec92d84b5d6eb8c8f66ea16f09d2adb09dbca27fe2d5fc8d3732d"
+SRC_URI[sha256sum] = "a5b9fcc986b184db101aa280b42ecdcdfc524892596f606858e0b7a8b4d9e144"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-click_8.1.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-click_8.1.3.bb
similarity index 91%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-click_8.1.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-click_8.1.3.bb
index a623fe1..006742f 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-click_8.1.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-click_8.1.3.bb
@@ -8,7 +8,7 @@
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=1fa98232fd645608937a0fdc82e999b8"
 
-SRC_URI[sha256sum] = "479707fe14d9ec9a0757618b7a100a0ae4c4e236fac5b7f80ca68028141a1a72"
+SRC_URI[sha256sum] = "7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e"
 
 inherit pypi setuptools3 ptest
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-cytoolz_0.11.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-cytoolz_0.11.2.bb
new file mode 100644
index 0000000..14f597c
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-cytoolz_0.11.2.bb
@@ -0,0 +1,12 @@
+SUMMARY = "Cython implementation of the toolz package, which provides high \
+performance utility functions for iterables, functions, and dictionaries."
+HOMEPAGE = "https://github.com/pytoolz/cytoolz"
+SECTION = "devel/python"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=efbcddfa5610ca0c07ecfa274a82b373"
+
+SRC_URI[sha256sum] = "ea23663153806edddce7e4153d1d407d62357c05120a4e8485bddf1bd5ab22b4"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += "python3-toolz"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-decouple_3.6.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-decouple_3.6.bb
new file mode 100644
index 0000000..772ee7f
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-decouple_3.6.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Strict separation of settings from code."
+HOMEPAGE = "https://github.com/henriquebastos/python-decouple/"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=a46375b26bb7d7603565d829a2a51782"
+
+SRC_URI[sha256sum] = "2838cdf77a5cf127d7e8b339ce14c25bceb3af3e674e039d4901ba16359968c7"
+
+PYPI_PACKAGE = "python-decouple"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += " \
+    python3-shell \
+    python3-stringold \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_4.3.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_4.3.2.bb
similarity index 82%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_4.3.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_4.3.2.bb
index 35e8d79..e9891bc 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_4.3.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-engineio_4.3.2.bb
@@ -17,4 +17,4 @@
 	python3-asyncio \
 "
 
-SRC_URI[sha256sum] = "6e1d26977ffefe3b7da1b5df7a8750aedc7686da8201cd90daf36693db122489"
+SRC_URI[sha256sum] = "e02f8d6686663408533726be2d4ceb403914fd17285d247791c6a91623777bdd"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-abi_3.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-abi_3.0.0.bb
new file mode 100644
index 0000000..e1f220a
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-abi_3.0.0.bb
@@ -0,0 +1,18 @@
+SUMMARY = "Python utilities for working with Ethereum ABI definitions, especially encoding and decoding."
+HOMEPAGE = "https://github.com/ethereum/eth-abi"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=bf9691ead96f1163622689e47ce3f366"
+
+SRC_URI[sha256sum] = "31578b179cf9430c21ac32a4e5f401c14b6e2cc1fd64ca3587cd354068217804"
+
+PYPI_PACKAGE = "eth_abi"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += " \
+    python3-eth-typing \
+    python3-eth-utils \
+    python3-parsimonious \
+    python3-setuptools \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-account_0.6.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-account_0.6.1.bb
new file mode 100644
index 0000000..9c87d3f
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-account_0.6.1.bb
@@ -0,0 +1,18 @@
+SUMMARY = "Assign Ethereum transactions and messages with local private keys."
+HOMEPAGE = "https://github.com/ethereum/eth-account"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=287820ad3553117aa2f92bf84c219324"
+
+SRC_URI[sha256sum] = "54b0b7d661e73f4cd12d508c9baa5c9a6e8c194aa7bafc39277cd673683ae50e"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += " \
+    python3-bitarray \
+    python3-cytoolz \
+    python3-eth-abi \
+    python3-eth-keyfile \
+    python3-eth-rlp \
+    python3-hexbytes \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-hash_0.3.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-hash_0.3.2.bb
new file mode 100644
index 0000000..c9630b1
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-hash_0.3.2.bb
@@ -0,0 +1,9 @@
+SUMMARY = "The Ethereum hashing function, keccak256, sometimes (erroneously) called sha3."
+HOMEPAGE = "https://github.com/ethereum/eth-hash"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=287820ad3553117aa2f92bf84c219324"
+
+SRC_URI[sha256sum] = "3f40cecd5ead88184aa9550afc19d057f103728108c5102f592f8415949b5a76"
+
+inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-keyfile/0001-setup-don-t-use-setuptools-markdown.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-keyfile/0001-setup-don-t-use-setuptools-markdown.patch
new file mode 100644
index 0000000..7b81203
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-keyfile/0001-setup-don-t-use-setuptools-markdown.patch
@@ -0,0 +1,36 @@
+From 4348c72877e049804c7cdb7eec7a6bcd7ac2ea1d Mon Sep 17 00:00:00 2001
+From: Bartosz Golaszewski <brgl@bgdev.pl>
+Date: Wed, 11 May 2022 13:21:30 +0200
+Subject: [PATCH] setup: don't use setuptools-markdown
+
+This project is deprecated and irrelevant for the functionality of
+eth-keyfile. We don't support it in meta-python so just drop it from
+the dependencies.
+
+Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
+---
+ setup.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index cbb7f4c..7702aa4 100644
+--- a/setup.py
++++ b/setup.py
+@@ -51,14 +51,12 @@ setup(
+         "A library for handling the encrypted keyfiles used to store ethereum "
+         "private keys."
+     ),
+-    long_description_markdown_filename='README.md',
+     author='Piper Merriam',
+     author_email='pipermerriam@gmail.com',
+     url='https://github.com/ethereum/eth-keyfile',
+     include_package_data=True,
+     install_requires=install_requires,
+     extras_require=deps,
+-    setup_requires=['setuptools-markdown'],
+     py_modules=['eth_keyfile'],
+     license="MIT",
+     zip_safe=False,
+-- 
+2.34.1
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-keyfile_0.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-keyfile_0.6.0.bb
new file mode 100644
index 0000000..9477632
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-keyfile_0.6.0.bb
@@ -0,0 +1,16 @@
+SUMMARY = "A library for handling the encrypted keyfiles used to store ethereum private keys."
+HOMEPAGE = "https://github.com/ethereum/eth-keyfile"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=2beaef1b1764f4d6b46084c885b4bcad"
+
+SRC_URI[sha256sum] = "d30597cdecb8ccd3b56bb275cd86fcdc7a279f86eafa92ddc49f66512f0bff67"
+SRC_URI += "file://0001-setup-don-t-use-setuptools-markdown.patch"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += " \
+    python3-eth-keys \
+    python3-pycryptodome \
+    python3-setuptools \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-keys_0.4.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-keys_0.4.0.bb
new file mode 100644
index 0000000..b0b1aad
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-keys_0.4.0.bb
@@ -0,0 +1,11 @@
+SUMMARY = "A common API for Ethereum key operations with pluggable backends."
+HOMEPAGE = "https://github.com/ethereum/eth-keys"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=2beaef1b1764f4d6b46084c885b4bcad"
+
+SRC_URI[sha256sum] = "7d18887483bc9b8a3fdd8e32ddcb30044b9f08fcb24a380d93b6eee3a5bb3216"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += "python3-eth-utils"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-rlp_0.3.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-rlp_0.3.0.bb
new file mode 100644
index 0000000..d19a657
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-rlp_0.3.0.bb
@@ -0,0 +1,15 @@
+SUMMARY = "RLP definitions for common Ethereum objects in Python"
+HOMEPAGE = "https://github.com/ethereum/eth-rlp"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=287820ad3553117aa2f92bf84c219324"
+
+SRC_URI[sha256sum] = "f3263b548df718855d9a8dbd754473f383c0efc82914b0b849572ce3e06e71a6"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} = " \
+    python3-eth-utils \
+    python3-hexbytes \
+    python3-rlp \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-typing_3.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-typing_3.0.0.bb
new file mode 100644
index 0000000..a500d5b
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-typing_3.0.0.bb
@@ -0,0 +1,9 @@
+SUMMARY = "Common type annotations for ethereum python packages."
+HOMEPAGE = "https://github.com/ethereum/eth-typing"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=bf9691ead96f1163622689e47ce3f366"
+
+SRC_URI[sha256sum] = "079e4c41e98cf2635d3830a99f3cbd7b1d73d2368464d4493c002bece545184a"
+
+inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-utils/0001-setup-don-t-use-setuptools-markdown.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-utils/0001-setup-don-t-use-setuptools-markdown.patch
new file mode 100644
index 0000000..3c3c527
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-utils/0001-setup-don-t-use-setuptools-markdown.patch
@@ -0,0 +1,37 @@
+From bc86d603e632ce61de4ae7a5d4bcef080cbdb160 Mon Sep 17 00:00:00 2001
+From: Bartosz Golaszewski <brgl@bgdev.pl>
+Date: Wed, 11 May 2022 13:45:06 +0200
+Subject: [PATCH] setup: don't use setuptools-markdown
+
+This project is deprecated and irrelevant for the functionality of
+eth-utils. We don't support it in meta-python so just drop it from
+the dependencies.
+
+Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
+---
+ setup.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index 5717d5b..cb62132 100644
+--- a/setup.py
++++ b/setup.py
+@@ -37,7 +37,6 @@ setup(
+     # *IMPORTANT*: Don't manually change the version here. Use the 'bumpversion' utility.
+     version='1.1.2',
+     description="""Common utility functions for ethereum codebases.""",
+-    long_description_markdown_filename='README.md',
+     author='Piper Merriam',
+     author_email='pipermerriam@gmail.com',
+     url='https://github.com/ethereum/eth_utils',
+@@ -48,7 +47,6 @@ setup(
+         "toolz>0.8.2,<1;implementation_name=='pypy'",
+         "cytoolz>=0.8.2,<1.0.0;implementation_name=='cpython'",
+     ],
+-    setup_requires=['setuptools-markdown'],
+     extras_require=extras_require,
+     py_modules=['eth_utils'],
+     license="MIT",
+-- 
+2.34.1
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-utils_2.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-utils_2.0.0.bb
new file mode 100644
index 0000000..ff7caf5
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-eth-utils_2.0.0.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Common utility functions for codebases which interact with ethereum."
+HOMEPAGE = "https://github.com/ethereum/eth-utils"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=287820ad3553117aa2f92bf84c219324"
+
+SRC_URI[sha256sum] = "32f50edb14c5be0c4f0e8c2e6117286ccc5dfda21d170f358add554a048398e3"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += " \
+    python3-eth-hash \
+    python3-eth-typing \
+    python3-setuptools \
+    python3-toolz \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-login_0.6.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-login_0.6.1.bb
similarity index 84%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-flask-login_0.6.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-flask-login_0.6.1.bb
index dd295cf..d19acd9 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-login_0.6.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-login_0.6.1.bb
@@ -6,7 +6,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=8aa87a1cd9fa41d969ad32cfdac2c596"
 
-SRC_URI[sha256sum] = "aa84fcfb4c3cf09ca58c08e816b7bce73f1349ba1cf13d00d8dffc5872d5fcf6"
+SRC_URI[sha256sum] = "1306d474a270a036d6fd14f45640c4d77355e4f1c67ca4331b372d3448997b8c"
 
 PYPI_PACKAGE = "Flask-Login"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-socketio_5.1.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-socketio_5.1.2.bb
similarity index 81%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-flask-socketio_5.1.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-flask-socketio_5.1.2.bb
index 00e9580..1e5d775 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-socketio_5.1.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask-socketio_5.1.2.bb
@@ -9,7 +9,7 @@
 
 PYPI_PACKAGE = "Flask-SocketIO"
 
-SRC_URI[sha256sum] = "1efdaacc7a26e94f2b197a80079b1058f6aa644a6094c0a322349e2b9c41f6b1"
+SRC_URI[sha256sum] = "933bcc887ef463a9b78d76f8f86174f63a32d12a5406b99f452cdf3b129ebba3"
 
 RDEPENDS:${PN} += "\
     ${PYTHON_PN}-flask \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask_2.1.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask_2.1.2.bb
similarity index 86%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-flask_2.1.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-flask_2.1.2.bb
index 24a7047..7d290a4 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-flask_2.1.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-flask_2.1.2.bb
@@ -6,7 +6,7 @@
 LICENSE = "BSD-3-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=ffeffa59c90c9c4a033c7574f8f3fb75"
 
-SRC_URI[sha256sum] = "a8c9bd3e558ec99646d177a9739c41df1ded0629480b4c8d2975412f3c9519c8"
+SRC_URI[sha256sum] = "315ded2ddf8a6281567edb27393010fe3406188bafbfe65a3339d5787d89e477"
 
 PYPI_PACKAGE = "Flask"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-core_2.7.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-core_2.7.3.bb
similarity index 87%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-core_2.7.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-core_2.7.3.bb
index 55884e9..3422dd7 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-core_2.7.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-core_2.7.3.bb
@@ -6,7 +6,7 @@
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "b0fa577e512f0c8e063386b974718b8614586a798c5894ed34bedf256d9dae24"
+SRC_URI[sha256sum] = "17957f0704cbe95bd2ce25019efd2046423978594d181d4263e5dcffd2dbbc79"
 
 RDEPENDS:${PN} += "\
     ${PYTHON_PN}-asyncio \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.43.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.45.0.bb
similarity index 86%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.43.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.45.0.bb
index b645686..070a5b5 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.43.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-google-api-python-client_2.45.0.bb
@@ -4,7 +4,7 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
 
-SRC_URI[sha256sum] = "ccd16b3aa92070d3777c4b188669820aacdd70695a87cfc8dbb330f6be9578f7"
+SRC_URI[sha256sum] = "375ce07994fdc187b25cc86788048ad30f8d55ff077d5e34cfcd6cbbea697128"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-google-auth_2.6.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-google-auth_2.6.6.bb
similarity index 87%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-google-auth_2.6.3.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-google-auth_2.6.6.bb
index ee5311f..d51790f 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-google-auth_2.6.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-google-auth_2.6.6.bb
@@ -6,7 +6,7 @@
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "d65bb0e3701eaaa64fd2aa85e1325580524b0bddc6dc5db3ab89c481b6a20141"
+SRC_URI[sha256sum] = "1ba4938e032b73deb51e59c4656a00e0939cf0b1112575099f136babb4563312"
 
 RDEPENDS:${PN} += "\
     ${PYTHON_PN}-asyncio \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-graphviz_0.19.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-graphviz_0.20.bb
similarity index 79%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-graphviz_0.19.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-graphviz_0.20.bb
index 3cae196..81b5912 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-graphviz_0.19.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-graphviz_0.20.bb
@@ -3,7 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=951dd0868a9606c867ffda0ea3ea6da2"
 
-SRC_URI[sha256sum] = "7c90cebc147c18bcdffcd3c76db58cbface5d45fe0247a2f3bfb144d32a8c77c"
+SRC_URI[sha256sum] = "76bdfb73f42e72564ffe9c7299482f9d72f8e6cb8d54bce7b48ab323755e9ba5"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.45.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.46.0.bb
similarity index 82%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.45.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.46.0.bb
index 1e919dd..9569e8e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.45.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-grpcio-tools_1.46.0.bb
@@ -10,7 +10,7 @@
 DEPENDS += "${PYTHON_PN}-grpcio"
 
 SRC_URI += "file://0001-setup.py-Do-not-mix-C-and-C-compiler-options.patch"
-SRC_URI[sha256sum] = "a016cfc21e0d91b3b036d3d4f968d1fdea865dfa03524cb1fbeca84719fd45a2"
+SRC_URI[sha256sum] = "9295bf9b1e6dd5bcb260d594745fa3d6a089daade28f3a80cb2bc976b5359b7d"
 
 RDEPENDS:${PN} = "${PYTHON_PN}-grpcio"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-hexbytes_0.2.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-hexbytes_0.2.2.bb
new file mode 100644
index 0000000..89792d9
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-hexbytes_0.2.2.bb
@@ -0,0 +1,9 @@
+SUMMARY = "Python bytes subclass that decodes hex, with a readable console output."
+HOMEPAGE = "https://github.com/ethereum/hexbytes"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=287820ad3553117aa2f92bf84c219324"
+
+SRC_URI[sha256sum] = "a5881304d186e87578fb263a85317c808cf130e1d4b3d37d30142ab0f7898d03"
+
+inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-imageio_2.17.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-imageio_2.18.0.bb
similarity index 81%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-imageio_2.17.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-imageio_2.18.0.bb
index 53f61e8..2aa6b09 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-imageio_2.17.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-imageio_2.18.0.bb
@@ -5,7 +5,7 @@
 LICENSE = "BSD-2-Clause"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=24cb9a367a9e641b459a01c4d15256ba"
 
-SRC_URI[sha256sum] = "b21f009e52eb22b02b839f3bf2ae5374aaf0886317313c1358c6014e5383b539"
+SRC_URI[sha256sum] = "090898c48532631ab11c74ae743e64c24dabda45c16db46f7e3bec9e2d8f422f"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
new file mode 100644
index 0000000..524c3a0
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
@@ -0,0 +1,14 @@
+SUMMARY = "An adapter to Linux kernel support for inotify directory-watching."
+AUTHOR = "Dustin Oprea"
+HOMEPAGE = "https://pypi.org/project/inotify/"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://setup.py;md5=79b7ec72aa0d446a552d3cceb5799e41;beginline=28;endline=28"
+
+SRC_URI[sha256sum] = "974a623a338482b62e16d4eb705fb863ed33ec178680fc3e96ccdf0df6c02a07"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += " \
+    python3-ctypes \
+    python3-logging \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-langtable_0.0.57.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-langtable_0.0.58.bb
similarity index 86%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-langtable_0.0.57.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-langtable_0.0.58.bb
index 948f765..025ceb6 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-langtable_0.0.57.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-langtable_0.0.58.bb
@@ -6,7 +6,7 @@
 
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
-SRC_URI[sha256sum] = "6c3c0a6577652c81871cbaf139046e1c88ead8439c585bd83976b3092f57e9d7"
+SRC_URI[sha256sum] = "47128c06008acedee1745f2d56151461d94526b2be95a4124692013af35496b6"
 
 inherit pypi setuptools3 python3native
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-lru-dict_1.1.7.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-lru-dict_1.1.7.bb
new file mode 100644
index 0000000..0a0682e
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-lru-dict_1.1.7.bb
@@ -0,0 +1,9 @@
+SUMMARY = "A fixed size dict like container which evicts Least Recently Used (LRU) items once size limit is exceeded."
+HOMEPAGE = "https://github.com/amitdev/lru-dict"
+SECTION = "devel/python"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=9d10a486ee04034fdef5162fd791f153"
+
+SRC_URI[sha256sum] = "45b81f67d75341d4433abade799a47e9c42a9e22a118531dcb5e549864032d7c"
+
+inherit pypi setuptools3
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-mypy_0.942.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-mypy_0.950.bb
similarity index 86%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-mypy_0.942.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-mypy_0.950.bb
index 5b4b6d5..c268ade 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-mypy_0.942.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-mypy_0.950.bb
@@ -7,7 +7,7 @@
 
 inherit pypi python_setuptools_build_meta
 
-SRC_URI[sha256sum] = "17e44649fec92e9f82102b48a3bf7b4a5510ad0cd22fa21a104826b5db4903e2"
+SRC_URI[sha256sum] = "1b333cfbca1762ff15808a0ef4f71b5d3eed8528b23ea1c3fb50543c867d68de"
 
 BBCLASSEXTEND = "native"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-paramiko_2.10.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-paramiko_2.10.4.bb
similarity index 82%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-paramiko_2.10.3.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-paramiko_2.10.4.bb
index 9f7f458..3173687 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-paramiko_2.10.3.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-paramiko_2.10.4.bb
@@ -3,7 +3,7 @@
 LICENSE = "LGPL-2.1-only"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=fd0120fc2e9f841c73ac707a30389af5"
 
-SRC_URI[sha256sum] = "ddb1977853aef82804b35d72a0e597b244fa326c404c350bd00c5b01dbfee71a"
+SRC_URI[sha256sum] = "3d2e650b6812ce6d160abff701d6ef4434ec97934b13e95cf1ad3da70ffb5c58"
 
 PYPI_PACKAGE = "paramiko"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-parsimonious_0.9.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-parsimonious_0.9.0.bb
new file mode 100644
index 0000000..5a604fa
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-parsimonious_0.9.0.bb
@@ -0,0 +1,11 @@
+SUMMARY = "Parsimonious aims to be the fastest arbitrary-lookahead parser written in pure Python."
+HOMEPAGE = "https://github.com/erikrose/parsimonious"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=3396ea30f9d21389d7857719816f83b5"
+
+SRC_URI[sha256sum] = "b2ad1ae63a2f65bd78f5e0a8ac510a98f3607a43f1db2a8d46636a5d9e4a30c1"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += "python3-regex"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pika_1.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pika_1.2.1.bb
similarity index 73%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pika_1.2.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pika_1.2.1.bb
index aa3179f..38f84cf 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pika_1.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pika_1.2.1.bb
@@ -6,9 +6,9 @@
 SECTION = "devel/python"
 HOMEPAGE = "https://pika.readthedocs.io"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=278bdfee5b51616941c1f6b2f1cfcb99"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=678ec81495ba50edf81e84e4f1aa69f3"
 
-SRC_URI[sha256sum] = "f023d6ac581086b124190cb3dc81dd581a149d216fa4540ac34f9be1e3970b89"
+SRC_URI[sha256sum] = "e5fbf3a0a3599f4e114f6e4a7af096f9413a8f24f975c2657ba2fac3c931434f"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.20.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.20.1.bb
similarity index 91%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.20.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.20.1.bb
index 5c4de4a..976d2aa 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.20.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-protobuf_3.20.1.bb
@@ -7,7 +7,7 @@
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "71b2c3d1cd26ed1ec7c8196834143258b2ad7f444efff26fdc366c6f5e752702"
+SRC_URI[sha256sum] = "adc31566d027f45efe3f44eeb5b1f329da43891634d61c75a5944e9be6dd42c9"
 
 # http://errors.yoctoproject.org/Errors/Details/184715/
 # Can't find required file: ../src/google/protobuf/descriptor.proto
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyalsaaudio_0.9.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyalsaaudio_0.9.2.bb
similarity index 61%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pyalsaaudio_0.9.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pyalsaaudio_0.9.2.bb
index 862c3d5..e7e706c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyalsaaudio_0.9.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyalsaaudio_0.9.2.bb
@@ -5,8 +5,7 @@
 
 inherit pypi setuptools3
 
-SRC_URI[md5sum] = "48c40424a79c2568676a41643d93f1f7"
-SRC_URI[sha256sum] = "3ca069c736c8ad2a3047b5033468d983a2480f94fad4feb0169c056060e01e69"
+SRC_URI[sha256sum] = "e74a66d6c7a6bcceb990df66d3ebc0fe382fc9d765f35f050f9d98c695304b36"
 
 DEPENDS += "alsa-lib"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_11.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_12.1.1.bb
similarity index 83%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_11.0.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_12.1.1.bb
index f556963..b34c78e 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_11.0.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pychromecast_12.1.1.bb
@@ -3,7 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=b1dbd4e85f47b389bdadee9c694669f5"
 
-SRC_URI[sha256sum] = "151723b178110052b673b8765a120c85d16eae8c22d75575dceebe2be1eb1ef6"
+SRC_URI[sha256sum] = "9545a22acdadc96603f76d7878c6ea17baf1328260cf560c887c8c12aad4c82c"
 
 PYPI_PACKAGE = "PyChromecast"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyfanotify/0001-ext-define-FNM_EXTMATCH-if-not-already-defined.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyfanotify/0001-ext-define-FNM_EXTMATCH-if-not-already-defined.patch
new file mode 100644
index 0000000..933e086
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyfanotify/0001-ext-define-FNM_EXTMATCH-if-not-already-defined.patch
@@ -0,0 +1,31 @@
+From 9e7894b97ae7afe43a9901b774de5aef401549ac Mon Sep 17 00:00:00 2001
+From: Bartosz Golaszewski <brgl@bgdev.pl>
+Date: Thu, 28 Apr 2022 16:32:06 +0200
+Subject: [PATCH] ext: define FNM_EXTMATCH if not already defined
+
+On musl this constant is not defined. Define it locally if not present.
+
+Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
+---
+Upstream-Status: Inappropriate
+
+ src/ext.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/ext.c b/src/ext.c
+index 2ba9a14..98ffc20 100644
+--- a/src/ext.c
++++ b/src/ext.c
+@@ -18,6 +18,9 @@
+ #include <sys/un.h>
+ #include <unistd.h>
+ 
++#ifndef FNM_EXTMATCH
++#define FNM_EXTMATCH 0
++#endif
+ 
+ PyDoc_STRVAR(ext__doc__,
+ "Wrapper for fanotify.\n"
+-- 
+2.32.0
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pyfanotify_0.1.3.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyfanotify_0.1.3.bb
new file mode 100644
index 0000000..a7c8f95
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pyfanotify_0.1.3.bb
@@ -0,0 +1,18 @@
+SUMMARY = "Python wrapper for Linux fanotify."
+HOMEPAGE = "https://github.com/baskiton/pyfanotify"
+AUTHOR = "Alexander Baskikh"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=636a36c9df04efcfacf839b8866d9a37"
+
+SRC_URI += "file://0001-ext-define-FNM_EXTMATCH-if-not-already-defined.patch"
+SRC_URI[sha256sum] = "0efa73922fd705b4e8f8f0b51cb88198ceef66cc309e1de21674ef44c879029d"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += " \
+    python3-crypt \
+    python3-datetime \
+    python3-logging \
+    python3-multiprocessing \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pylint_2.13.5.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pylint_2.13.7.bb
similarity index 86%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pylint_2.13.5.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pylint_2.13.7.bb
index f64d976..0aa645c 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pylint_2.13.5.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pylint_2.13.7.bb
@@ -3,7 +3,7 @@
 LICENSE = "GPL-2.0-only"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=c107cf754550e65755c42985a5d4e9c9"
 
-SRC_URI[sha256sum] = "dab221658368c7a05242e673c275c488670144123f4bd262b2777249c1c0de9b"
+SRC_URI[sha256sum] = "911d3a97c808f7554643bcc5416028cfdc42eae34ed129b150741888c688d5d5"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_4.1.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_4.1.1.bb
similarity index 90%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_4.1.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_4.1.1.bb
index d47dfec..7bde4ff 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_4.1.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-pymongo_4.1.1.bb
@@ -8,7 +8,7 @@
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
 
-SRC_URI[sha256sum] = "dbba77bc0b706c7ee496fc75a6c6ed406d85f6091d5fec488a8944c3828e6462"
+SRC_URI[sha256sum] = "d7b8f25c9b0043cbaf77b8b895814e33e7a3c807a097377c07e1bd49946030d5"
 
 inherit pypi setuptools3
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-qface_2.0.7.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-qface_2.0.8.bb
similarity index 85%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-qface_2.0.7.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-qface_2.0.8.bb
index c42b91f..47a34d4 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-qface_2.0.7.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-qface_2.0.8.bb
@@ -2,7 +2,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=eee61e10a40b0e3045ee5965bcd9a8b5"
 
-SRC_URI[sha256sum] = "fae48ba129c55da8445580eb711905c03911c4250761c0cd53c67e33495b0cee"
+SRC_URI[sha256sum] = "eccee7dbc4290c5a4e394df8d527f39148e0de0ff22c6b260f48c48f12b3beb4"
 
 inherit pypi python_setuptools_build_meta
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2022.3.15.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2022.4.24.bb
similarity index 78%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2022.3.15.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2022.4.24.bb
index 9633385..28e1600 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2022.3.15.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-regex_2022.4.24.bb
@@ -5,7 +5,7 @@
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "0a7b75cc7bb4cc0334380053e4671c560e31272c9d2d5a6c4b8e9ae2c9bd0f82"
+SRC_URI[sha256sum] = "92183e9180c392371079262879c6532ccf55f808e6900df5d9f03c9ca8807255"
 
 RDEPENDS:${PN} += " \
 	python3-stringold \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-rlp/0001-setup-don-t-use-setuptools-markdown.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-rlp/0001-setup-don-t-use-setuptools-markdown.patch
new file mode 100644
index 0000000..643d296
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-rlp/0001-setup-don-t-use-setuptools-markdown.patch
@@ -0,0 +1,35 @@
+From 5a2db801c6520be296cee9cba0e0e4ffac68430c Mon Sep 17 00:00:00 2001
+From: Bartosz Golaszewski <brgl@bgdev.pl>
+Date: Wed, 11 May 2022 15:11:19 +0200
+Subject: [PATCH] setup: don't use setuptools-markdown
+
+This project is deprecated and irrelevant for the functionality of
+pyrlp. We don't support it in meta-python so just drop it from the
+dependencies.
+
+Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
+---
+ setup.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index 1055fb1..55fca24 100755
+--- a/setup.py
++++ b/setup.py
+@@ -46,13 +46,11 @@ setup(
+     # *IMPORTANT*: Don't manually change the version here. See README for more.
+     version='3.0.0',
+     description="A package for Recursive Length Prefix encoding and decoding",
+-    long_description_markdown_filename='README.md',
+     author="jnnk",
+     author_email='jnnknnj@gmail.com',
+     url='https://github.com/ethereum/pyrlp',
+     packages=find_packages(exclude=["tests", "tests.*"]),
+     include_package_data=True,
+-    setup_requires=['setuptools-markdown'],
+     install_requires=[
+         "eth-utils>=2.0.0,<3",
+     ],
+-- 
+2.34.1
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-rlp_3.0.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-rlp_3.0.0.bb
new file mode 100644
index 0000000..e747ae3
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-rlp_3.0.0.bb
@@ -0,0 +1,14 @@
+SUMMARY = "A Python implementation of Recursive Length Prefix encoding (RLP)."
+HOMEPAGE = "https://github.com/ethereum/pyrlp"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=00854fa80a84236706b11f47f23e61e7"
+
+SRC_URI[sha256sum] = "63b0465d2948cd9f01de449d7adfb92d207c1aef3982f20310f8009be4a507e8"
+SRC_URI += "file://0001-setup-don-t-use-setuptools-markdown.patch"
+
+inherit pypi setuptools3
+
+DEPENDS += "python3-pip-native"
+
+RDEPENDS:${PN} += "python3-eth-utils"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.5.8.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.5.10.bb
similarity index 82%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.5.8.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.5.10.bb
index cf1337e..7076e19 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.5.8.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-sentry-sdk_1.5.10.bb
@@ -7,7 +7,7 @@
 
 RDEPENDS:${PN} += "python3-urllib3"
 
-SRC_URI[sha256sum] = "38fd16a92b5ef94203db3ece10e03bdaa291481dd7e00e77a148aa0302267d47"
+SRC_URI[sha256sum] = "0a9eb20a84f4c17c08c57488d59fdad18669db71ebecb28fb0721423a33535f9"
 
 PYPI_PACKAGE = "sentry-sdk"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.5.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.6.0.bb
similarity index 89%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.5.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.6.0.bb
index 6611743..d762611 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.5.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-socketio_5.6.0.bb
@@ -9,7 +9,7 @@
 
 PYPI_PACKAGE = "python-socketio"
 
-SRC_URI[sha256sum] = "6213f7dfbb87e554472d11151f96bae9059854aa88e4a1e0fa6e97cca1c3fcf4"
+SRC_URI[sha256sum] = "f1f2eabdea500dbcb384902418cacedd98b7fe4d0fed818415ddf8af10e428fa"
 
 PACKAGECONFIG ?= "asyncio_client client"
 PACKAGECONFIG[asyncio_client] = ",,,${PYTHON_PN}-aiohttp ${PYTHON_PN}-websockets"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-textparser_0.23.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-textparser_0.24.0.bb
similarity index 66%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-textparser_0.23.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-textparser_0.24.0.bb
index 0c626e7..8db949d 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-textparser_0.23.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-textparser_0.24.0.bb
@@ -3,8 +3,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=fe9942a8bba5458a9dbd11277bc347ad"
 
-SRC_URI[md5sum] = "d5378eac93406156e9029114aaa1b515"
-SRC_URI[sha256sum] = "f009d0f6f78aa7c1e648dca4e3961f6d67495f7f520f1a705245ffad33f4b470"
+SRC_URI[sha256sum] = "56f708e75aa9d002adb76d823ba6ef166d7ecec1e3e4ca4c1ca103f817568335"
 
 PYPI_PACKAGE = "textparser"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-toolz_0.11.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-toolz_0.11.2.bb
new file mode 100644
index 0000000..a597641
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-toolz_0.11.2.bb
@@ -0,0 +1,14 @@
+SUMMARY = "A set of utility functions for iterators, functions, and dictionaries."
+HOMEPAGE = "https://github.com/pytoolz/toolz"
+SECTION = "devel/python"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=ca09cab178326d18433aae982d1edf5d"
+
+SRC_URI[sha256sum] = "6b312d5e15138552f1bda8a4e66c30e236c831b612b2bf0005f8a1df10a4bc33"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += " \
+    python3-json \
+    python3-math \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-traitlets_5.1.1.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-traitlets_5.2.0.bb
similarity index 65%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-traitlets_5.1.1.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-traitlets_5.2.0.bb
index 8f80426..56ebaac 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-traitlets_5.1.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-traitlets_5.2.0.bb
@@ -2,11 +2,11 @@
 HOMEPAGE = "http://ipython.org"
 AUTHOR = "IPython Development Team <ipython-dev@scipy.org>"
 LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://COPYING.md;md5=eec4de4d599518742e54e75954e33b46"
+LIC_FILES_CHKSUM = "file://COPYING.md;md5=9c125dfc5ff5364d40b5f56f02cd9de3"
 
 PYPI_PACKAGE = "traitlets"
 
-SRC_URI[sha256sum] = "059f456c5a7c1c82b98c2e8c799f39c9b8128f6d0d46941ee118daace9eb70c7"
+SRC_URI[sha256sum] = "60474f39bf1d39a11e0233090b99af3acee93bbc2281777e61dd8c87da8a0014"
 
 RDEPENDS:${PN} = "\
     ${PYTHON_PN}-ipython-genutils \
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_22.2.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_22.4.0.bb
similarity index 98%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_22.2.0.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_22.4.0.bb
index f4575c9..9429f8f 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_22.2.0.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-twisted_22.4.0.bb
@@ -7,7 +7,7 @@
 LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=0f8d67f84b6e178c92d471011b2245fc"
 
-SRC_URI[sha256sum] = "57f32b1f6838facb8c004c89467840367ad38e9e535f8252091345dba500b4f2"
+SRC_URI[sha256sum] = "a047990f57dfae1e0bd2b7df2526d4f16dcdc843774dc108b78c52f2a5f13680"
 
 PYPI_PACKAGE = "Twisted"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-web3_5.29.0.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-web3_5.29.0.bb
new file mode 100644
index 0000000..660d4f6
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-web3_5.29.0.bb
@@ -0,0 +1,20 @@
+SUMMARY = "A Python library for interacting with Ethereum."
+HOMEPAGE = "https://github.com/ethereum/web3.py"
+SECTION = "devel/python"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=1dc2732bdc5e50382737979791cbb3b7"
+
+SRC_URI[sha256sum] = "a78acc0f0150013755398ae185c8c7063d9db0777aa09733de22242a746bd30c"
+
+inherit pypi setuptools3
+
+RDEPENDS:${PN} += " \
+    python3-aiohttp \
+    python3-distutils \
+    python3-eth-account \
+    python3-idna \
+    python3-lru-dict \
+    python3-requests \
+    python3-setuptools \
+    python3-websockets \
+"
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_10.2.bb b/meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_10.3.bb
similarity index 78%
rename from meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_10.2.bb
rename to meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_10.3.bb
index c8179df..64b96d3 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_10.2.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-websockets_10.3.bb
@@ -6,7 +6,7 @@
 
 inherit pypi setuptools3
 
-SRC_URI[sha256sum] = "8351c3c86b08156337b0e4ece0e3c5ec3e01fcd14e8950996832a23c99416098"
+SRC_URI[sha256sum] = "fc06cc8073c8e87072138ba1e431300e2d408f054b27047d047b549455066ff4"
 
 BBCLASSEXTEND = "native nativesdk"
 
diff --git a/meta-openembedded/meta-python/recipes-devtools/python3-wxgtk4/python3-wxgtk4/0001-Update-Cython-version-to-fix-NanoSVG-issues-with-Pyt.patch b/meta-openembedded/meta-python/recipes-devtools/python3-wxgtk4/python3-wxgtk4/0001-Update-Cython-version-to-fix-NanoSVG-issues-with-Pyt.patch
new file mode 100644
index 0000000..6be56cb
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python3-wxgtk4/python3-wxgtk4/0001-Update-Cython-version-to-fix-NanoSVG-issues-with-Pyt.patch
@@ -0,0 +1,861 @@
+Upstream-Status: Backport [https://github.com/wxWidgets/Phoenix/commit/b40ab0f8]
+
+Signed-off-by: Kai Kang <kai.kang@windriver.com>
+
+From b40ab0f806bdf7aa0c0a51a8c4876ac47754515d Mon Sep 17 00:00:00 2001
+From: Scott Talbert <swt@techie.net>
+Date: Thu, 7 Oct 2021 17:53:05 -0400
+Subject: [PATCH] Update Cython version to fix NanoSVG issues with Python 3.10
+
+---
+ requirements/devel.txt |   2 +-
+ wx/svg/_nanosvg.c      | 554 ++++++++++++++++++++++++++---------------
+ 2 files changed, 359 insertions(+), 197 deletions(-)
+
+diff --git a/requirements/devel.txt b/requirements/devel.txt
+index 1d427be0..18164bdc 100644
+--- a/requirements/devel.txt
++++ b/requirements/devel.txt
+@@ -9,7 +9,7 @@ wheel
+ twine
+ requests
+ requests[security]
+-cython==0.29.21
++cython==0.29.24
+ pytest
+ pytest-xdist
+ pytest-forked
+diff --git a/wx/svg/_nanosvg.c b/wx/svg/_nanosvg.c
+index d8f1e158..fd4a5a67 100644
+--- a/wx/svg/_nanosvg.c
++++ b/wx/svg/_nanosvg.c
+@@ -1,4 +1,4 @@
+-/* Generated by Cython 0.29.21 */
++/* Generated by Cython 0.29.24 */
+ 
+ /* BEGIN: Cython Metadata
+ {
+@@ -33,15 +33,17 @@
+ }
+ END: Cython Metadata */
+ 
++#ifndef PY_SSIZE_T_CLEAN
+ #define PY_SSIZE_T_CLEAN
++#endif /* PY_SSIZE_T_CLEAN */
+ #include "Python.h"
+ #ifndef Py_PYTHON_H
+     #error Python headers needed to compile C extensions, please install development version of Python.
+ #elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000)
+     #error Cython requires Python 2.6+ or Python 3.3+.
+ #else
+-#define CYTHON_ABI "0_29_21"
+-#define CYTHON_HEX_VERSION 0x001D15F0
++#define CYTHON_ABI "0_29_24"
++#define CYTHON_HEX_VERSION 0x001D18F0
+ #define CYTHON_FUTURE_DIVISION 0
+ #include <stddef.h>
+ #ifndef offsetof
+@@ -459,8 +461,12 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) {
+ #endif
+ #if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND)
+   #define CYTHON_PEP393_ENABLED 1
++  #if defined(PyUnicode_IS_READY)
+   #define __Pyx_PyUnicode_READY(op)       (likely(PyUnicode_IS_READY(op)) ?\
+                                               0 : _PyUnicode_Ready((PyObject *)(op)))
++  #else
++  #define __Pyx_PyUnicode_READY(op)       (0)
++  #endif
+   #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GET_LENGTH(u)
+   #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
+   #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   PyUnicode_MAX_CHAR_VALUE(u)
+@@ -469,7 +475,11 @@ static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) {
+   #define __Pyx_PyUnicode_READ(k, d, i)   PyUnicode_READ(k, d, i)
+   #define __Pyx_PyUnicode_WRITE(k, d, i, ch)  PyUnicode_WRITE(k, d, i, ch)
+   #if defined(PyUnicode_IS_READY) && defined(PyUnicode_GET_SIZE)
++  #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03090000
++  #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : ((PyCompactUnicodeObject *)(u))->wstr_length))
++  #else
+   #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u)))
++  #endif
+   #else
+   #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != PyUnicode_GET_LENGTH(u))
+   #endif
+@@ -1736,33 +1746,38 @@ static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object);
+ static void __Pyx_AddTraceback(const char *funcname, int c_line,
+                                int py_line, const char *filename);
+ 
++/* GCCDiagnostics.proto */
++#if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))
++#define __Pyx_HAS_GCC_DIAGNOSTIC
++#endif
++
+ /* CIntToPy.proto */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value);
+ 
++/* CIntFromPy.proto */
++static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *);
++
+ /* CIntToPy.proto */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value);
+ 
+ /* CIntToPy.proto */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_char(char value);
+ 
++/* CIntFromPy.proto */
++static CYTHON_INLINE char __Pyx_PyInt_As_char(PyObject *);
++
+ /* CIntToPy.proto */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_unsigned_char(unsigned char value);
+ 
++/* CIntFromPy.proto */
++static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *);
++
+ /* CIntToPy.proto */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg_SVGpaintType(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType value);
+ 
+ /* CIntToPy.proto */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_unsigned_int(unsigned int value);
+ 
+-/* CIntFromPy.proto */
+-static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *);
+-
+-/* CIntFromPy.proto */
+-static CYTHON_INLINE char __Pyx_PyInt_As_char(PyObject *);
+-
+-/* CIntFromPy.proto */
+-static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *);
+-
+ /* CIntToPy.proto */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg_SVGfillRule(enum __pyx_t_2wx_3svg_8_nanosvg_SVGfillRule value);
+ 
+@@ -1844,6 +1859,7 @@ typedef struct {
+     PyObject *gi_qualname;
+     PyObject *gi_modulename;
+     PyObject *gi_code;
++    PyObject *gi_frame;
+     int resume_label;
+     char is_running;
+ } __pyx_CoroutineObject;
+@@ -14641,11 +14657,9 @@ if (!__Pyx_RefNanny) {
+   #endif
+   /*--- Library function declarations ---*/
+   /*--- Threads initialization code ---*/
+-  #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS
+-  #ifdef WITH_THREAD /* Python build with threading support? */
++  #if defined(WITH_THREAD) && PY_VERSION_HEX < 0x030700F0 && defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS
+   PyEval_InitThreads();
+   #endif
+-  #endif
+   /*--- Module creation code ---*/
+   #if CYTHON_PEP489_MULTI_PHASE_INIT
+   __pyx_m = __pyx_pyinit_module;
+@@ -16766,7 +16780,7 @@ invalid_keyword:
+ #if CYTHON_COMPILING_IN_CPYTHON
+ static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {
+     PyObject *result;
+-    ternaryfunc call = func->ob_type->tp_call;
++    ternaryfunc call = Py_TYPE(func)->tp_call;
+     if (unlikely(!call))
+         return PyObject_Call(func, arg, kw);
+     if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
+@@ -17149,7 +17163,7 @@ static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObjec
+         if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) {
+             return __Pyx_PyObject_CallMethO(func, arg);
+ #if CYTHON_FAST_PYCCALL
+-        } else if (PyCFunction_GET_FLAGS(func) & METH_FASTCALL) {
++        } else if (__Pyx_PyFastCFunction_Check(func)) {
+             return __Pyx_PyCFunction_FastCall(func, &arg, 1);
+ #endif
+         }
+@@ -18800,7 +18814,8 @@ static PyObject *
+ __Pyx_CyFunction_reduce(__pyx_CyFunctionObject *m, CYTHON_UNUSED PyObject *args)
+ {
+ #if PY_MAJOR_VERSION >= 3
+-    return PyUnicode_FromString(m->func.m_ml->ml_name);
++    Py_INCREF(m->func_qualname);
++    return m->func_qualname;
+ #else
+     return PyString_FromString(m->func.m_ml->ml_name);
+ #endif
+@@ -19443,37 +19458,6 @@ bad:
+     Py_XDECREF(py_frame);
+ }
+ 
+-/* CIntToPy */
+-static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
+-    const long neg_one = (long) ((long) 0 - (long) 1), const_zero = (long) 0;
+-    const int is_unsigned = neg_one > const_zero;
+-    if (is_unsigned) {
+-        if (sizeof(long) < sizeof(long)) {
+-            return PyInt_FromLong((long) value);
+-        } else if (sizeof(long) <= sizeof(unsigned long)) {
+-            return PyLong_FromUnsignedLong((unsigned long) value);
+-#ifdef HAVE_LONG_LONG
+-        } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
+-            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
+-#endif
+-        }
+-    } else {
+-        if (sizeof(long) <= sizeof(long)) {
+-            return PyInt_FromLong((long) value);
+-#ifdef HAVE_LONG_LONG
+-        } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
+-            return PyLong_FromLongLong((PY_LONG_LONG) value);
+-#endif
+-        }
+-    }
+-    {
+-        int one = 1; int little = (int)*(unsigned char *)&one;
+-        unsigned char *bytes = (unsigned char *)&value;
+-        return _PyLong_FromByteArray(bytes, sizeof(long),
+-                                     little, !is_unsigned);
+-    }
+-}
+-
+ /* CIntFromPyVerify */
+ #define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\
+     __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0)
+@@ -19497,148 +19481,31 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
+     }
+ 
+ /* CIntToPy */
+-static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) {
+-    const int neg_one = (int) ((int) 0 - (int) 1), const_zero = (int) 0;
+-    const int is_unsigned = neg_one > const_zero;
+-    if (is_unsigned) {
+-        if (sizeof(int) < sizeof(long)) {
+-            return PyInt_FromLong((long) value);
+-        } else if (sizeof(int) <= sizeof(unsigned long)) {
+-            return PyLong_FromUnsignedLong((unsigned long) value);
+-#ifdef HAVE_LONG_LONG
+-        } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) {
+-            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
+-#endif
+-        }
+-    } else {
+-        if (sizeof(int) <= sizeof(long)) {
+-            return PyInt_FromLong((long) value);
+-#ifdef HAVE_LONG_LONG
+-        } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) {
+-            return PyLong_FromLongLong((PY_LONG_LONG) value);
+-#endif
+-        }
+-    }
+-    {
+-        int one = 1; int little = (int)*(unsigned char *)&one;
+-        unsigned char *bytes = (unsigned char *)&value;
+-        return _PyLong_FromByteArray(bytes, sizeof(int),
+-                                     little, !is_unsigned);
+-    }
+-}
+-
+-/* CIntToPy */
+-static CYTHON_INLINE PyObject* __Pyx_PyInt_From_char(char value) {
+-    const char neg_one = (char) ((char) 0 - (char) 1), const_zero = (char) 0;
+-    const int is_unsigned = neg_one > const_zero;
+-    if (is_unsigned) {
+-        if (sizeof(char) < sizeof(long)) {
+-            return PyInt_FromLong((long) value);
+-        } else if (sizeof(char) <= sizeof(unsigned long)) {
+-            return PyLong_FromUnsignedLong((unsigned long) value);
+-#ifdef HAVE_LONG_LONG
+-        } else if (sizeof(char) <= sizeof(unsigned PY_LONG_LONG)) {
+-            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
+-#endif
+-        }
+-    } else {
+-        if (sizeof(char) <= sizeof(long)) {
+-            return PyInt_FromLong((long) value);
+-#ifdef HAVE_LONG_LONG
+-        } else if (sizeof(char) <= sizeof(PY_LONG_LONG)) {
+-            return PyLong_FromLongLong((PY_LONG_LONG) value);
+-#endif
+-        }
+-    }
+-    {
+-        int one = 1; int little = (int)*(unsigned char *)&one;
+-        unsigned char *bytes = (unsigned char *)&value;
+-        return _PyLong_FromByteArray(bytes, sizeof(char),
+-                                     little, !is_unsigned);
+-    }
+-}
+-
+-/* CIntToPy */
+-static CYTHON_INLINE PyObject* __Pyx_PyInt_From_unsigned_char(unsigned char value) {
+-    const unsigned char neg_one = (unsigned char) ((unsigned char) 0 - (unsigned char) 1), const_zero = (unsigned char) 0;
+-    const int is_unsigned = neg_one > const_zero;
+-    if (is_unsigned) {
+-        if (sizeof(unsigned char) < sizeof(long)) {
+-            return PyInt_FromLong((long) value);
+-        } else if (sizeof(unsigned char) <= sizeof(unsigned long)) {
+-            return PyLong_FromUnsignedLong((unsigned long) value);
+-#ifdef HAVE_LONG_LONG
+-        } else if (sizeof(unsigned char) <= sizeof(unsigned PY_LONG_LONG)) {
+-            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
+-#endif
+-        }
+-    } else {
+-        if (sizeof(unsigned char) <= sizeof(long)) {
+-            return PyInt_FromLong((long) value);
+-#ifdef HAVE_LONG_LONG
+-        } else if (sizeof(unsigned char) <= sizeof(PY_LONG_LONG)) {
+-            return PyLong_FromLongLong((PY_LONG_LONG) value);
+-#endif
+-        }
+-    }
+-    {
+-        int one = 1; int little = (int)*(unsigned char *)&one;
+-        unsigned char *bytes = (unsigned char *)&value;
+-        return _PyLong_FromByteArray(bytes, sizeof(unsigned char),
+-                                     little, !is_unsigned);
+-    }
+-}
+-
+-/* CIntToPy */
+-static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg_SVGpaintType(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType value) {
+-    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) ((enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) 0 - (enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) 1), const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) 0;
+-    const int is_unsigned = neg_one > const_zero;
+-    if (is_unsigned) {
+-        if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) < sizeof(long)) {
+-            return PyInt_FromLong((long) value);
+-        } else if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) <= sizeof(unsigned long)) {
+-            return PyLong_FromUnsignedLong((unsigned long) value);
+-#ifdef HAVE_LONG_LONG
+-        } else if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) <= sizeof(unsigned PY_LONG_LONG)) {
+-            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
++static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
+ #endif
+-        }
+-    } else {
+-        if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) <= sizeof(long)) {
+-            return PyInt_FromLong((long) value);
+-#ifdef HAVE_LONG_LONG
+-        } else if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) <= sizeof(PY_LONG_LONG)) {
+-            return PyLong_FromLongLong((PY_LONG_LONG) value);
++    const long neg_one = (long) -1, const_zero = (long) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
+ #endif
+-        }
+-    }
+-    {
+-        int one = 1; int little = (int)*(unsigned char *)&one;
+-        unsigned char *bytes = (unsigned char *)&value;
+-        return _PyLong_FromByteArray(bytes, sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType),
+-                                     little, !is_unsigned);
+-    }
+-}
+-
+-/* CIntToPy */
+-static CYTHON_INLINE PyObject* __Pyx_PyInt_From_unsigned_int(unsigned int value) {
+-    const unsigned int neg_one = (unsigned int) ((unsigned int) 0 - (unsigned int) 1), const_zero = (unsigned int) 0;
+     const int is_unsigned = neg_one > const_zero;
+     if (is_unsigned) {
+-        if (sizeof(unsigned int) < sizeof(long)) {
++        if (sizeof(long) < sizeof(long)) {
+             return PyInt_FromLong((long) value);
+-        } else if (sizeof(unsigned int) <= sizeof(unsigned long)) {
++        } else if (sizeof(long) <= sizeof(unsigned long)) {
+             return PyLong_FromUnsignedLong((unsigned long) value);
+ #ifdef HAVE_LONG_LONG
+-        } else if (sizeof(unsigned int) <= sizeof(unsigned PY_LONG_LONG)) {
++        } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
+             return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
+ #endif
+         }
+     } else {
+-        if (sizeof(unsigned int) <= sizeof(long)) {
++        if (sizeof(long) <= sizeof(long)) {
+             return PyInt_FromLong((long) value);
+ #ifdef HAVE_LONG_LONG
+-        } else if (sizeof(unsigned int) <= sizeof(PY_LONG_LONG)) {
++        } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
+             return PyLong_FromLongLong((PY_LONG_LONG) value);
+ #endif
+         }
+@@ -19646,14 +19513,21 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_unsigned_int(unsigned int value)
+     {
+         int one = 1; int little = (int)*(unsigned char *)&one;
+         unsigned char *bytes = (unsigned char *)&value;
+-        return _PyLong_FromByteArray(bytes, sizeof(unsigned int),
++        return _PyLong_FromByteArray(bytes, sizeof(long),
+                                      little, !is_unsigned);
+     }
+ }
+ 
+ /* CIntFromPy */
+ static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {
+-    const int neg_one = (int) ((int) 0 - (int) 1), const_zero = (int) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const int neg_one = (int) -1, const_zero = (int) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
+     const int is_unsigned = neg_one > const_zero;
+ #if PY_MAJOR_VERSION < 3
+     if (likely(PyInt_Check(x))) {
+@@ -19840,9 +19714,92 @@ raise_neg_overflow:
+     return (int) -1;
+ }
+ 
++/* CIntToPy */
++static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) {
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const int neg_one = (int) -1, const_zero = (int) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
++    const int is_unsigned = neg_one > const_zero;
++    if (is_unsigned) {
++        if (sizeof(int) < sizeof(long)) {
++            return PyInt_FromLong((long) value);
++        } else if (sizeof(int) <= sizeof(unsigned long)) {
++            return PyLong_FromUnsignedLong((unsigned long) value);
++#ifdef HAVE_LONG_LONG
++        } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) {
++            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
++#endif
++        }
++    } else {
++        if (sizeof(int) <= sizeof(long)) {
++            return PyInt_FromLong((long) value);
++#ifdef HAVE_LONG_LONG
++        } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) {
++            return PyLong_FromLongLong((PY_LONG_LONG) value);
++#endif
++        }
++    }
++    {
++        int one = 1; int little = (int)*(unsigned char *)&one;
++        unsigned char *bytes = (unsigned char *)&value;
++        return _PyLong_FromByteArray(bytes, sizeof(int),
++                                     little, !is_unsigned);
++    }
++}
++
++/* CIntToPy */
++static CYTHON_INLINE PyObject* __Pyx_PyInt_From_char(char value) {
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const char neg_one = (char) -1, const_zero = (char) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
++    const int is_unsigned = neg_one > const_zero;
++    if (is_unsigned) {
++        if (sizeof(char) < sizeof(long)) {
++            return PyInt_FromLong((long) value);
++        } else if (sizeof(char) <= sizeof(unsigned long)) {
++            return PyLong_FromUnsignedLong((unsigned long) value);
++#ifdef HAVE_LONG_LONG
++        } else if (sizeof(char) <= sizeof(unsigned PY_LONG_LONG)) {
++            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
++#endif
++        }
++    } else {
++        if (sizeof(char) <= sizeof(long)) {
++            return PyInt_FromLong((long) value);
++#ifdef HAVE_LONG_LONG
++        } else if (sizeof(char) <= sizeof(PY_LONG_LONG)) {
++            return PyLong_FromLongLong((PY_LONG_LONG) value);
++#endif
++        }
++    }
++    {
++        int one = 1; int little = (int)*(unsigned char *)&one;
++        unsigned char *bytes = (unsigned char *)&value;
++        return _PyLong_FromByteArray(bytes, sizeof(char),
++                                     little, !is_unsigned);
++    }
++}
++
+ /* CIntFromPy */
+ static CYTHON_INLINE char __Pyx_PyInt_As_char(PyObject *x) {
+-    const char neg_one = (char) ((char) 0 - (char) 1), const_zero = (char) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const char neg_one = (char) -1, const_zero = (char) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
+     const int is_unsigned = neg_one > const_zero;
+ #if PY_MAJOR_VERSION < 3
+     if (likely(PyInt_Check(x))) {
+@@ -20029,9 +19986,54 @@ raise_neg_overflow:
+     return (char) -1;
+ }
+ 
++/* CIntToPy */
++static CYTHON_INLINE PyObject* __Pyx_PyInt_From_unsigned_char(unsigned char value) {
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const unsigned char neg_one = (unsigned char) -1, const_zero = (unsigned char) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
++    const int is_unsigned = neg_one > const_zero;
++    if (is_unsigned) {
++        if (sizeof(unsigned char) < sizeof(long)) {
++            return PyInt_FromLong((long) value);
++        } else if (sizeof(unsigned char) <= sizeof(unsigned long)) {
++            return PyLong_FromUnsignedLong((unsigned long) value);
++#ifdef HAVE_LONG_LONG
++        } else if (sizeof(unsigned char) <= sizeof(unsigned PY_LONG_LONG)) {
++            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
++#endif
++        }
++    } else {
++        if (sizeof(unsigned char) <= sizeof(long)) {
++            return PyInt_FromLong((long) value);
++#ifdef HAVE_LONG_LONG
++        } else if (sizeof(unsigned char) <= sizeof(PY_LONG_LONG)) {
++            return PyLong_FromLongLong((PY_LONG_LONG) value);
++#endif
++        }
++    }
++    {
++        int one = 1; int little = (int)*(unsigned char *)&one;
++        unsigned char *bytes = (unsigned char *)&value;
++        return _PyLong_FromByteArray(bytes, sizeof(unsigned char),
++                                     little, !is_unsigned);
++    }
++}
++
+ /* CIntFromPy */
+ static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {
+-    const long neg_one = (long) ((long) 0 - (long) 1), const_zero = (long) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const long neg_one = (long) -1, const_zero = (long) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
+     const int is_unsigned = neg_one > const_zero;
+ #if PY_MAJOR_VERSION < 3
+     if (likely(PyInt_Check(x))) {
+@@ -20218,9 +20220,92 @@ raise_neg_overflow:
+     return (long) -1;
+ }
+ 
++/* CIntToPy */
++static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg_SVGpaintType(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType value) {
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) -1, const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
++    const int is_unsigned = neg_one > const_zero;
++    if (is_unsigned) {
++        if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) < sizeof(long)) {
++            return PyInt_FromLong((long) value);
++        } else if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) <= sizeof(unsigned long)) {
++            return PyLong_FromUnsignedLong((unsigned long) value);
++#ifdef HAVE_LONG_LONG
++        } else if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) <= sizeof(unsigned PY_LONG_LONG)) {
++            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
++#endif
++        }
++    } else {
++        if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) <= sizeof(long)) {
++            return PyInt_FromLong((long) value);
++#ifdef HAVE_LONG_LONG
++        } else if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType) <= sizeof(PY_LONG_LONG)) {
++            return PyLong_FromLongLong((PY_LONG_LONG) value);
++#endif
++        }
++    }
++    {
++        int one = 1; int little = (int)*(unsigned char *)&one;
++        unsigned char *bytes = (unsigned char *)&value;
++        return _PyLong_FromByteArray(bytes, sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGpaintType),
++                                     little, !is_unsigned);
++    }
++}
++
++/* CIntToPy */
++static CYTHON_INLINE PyObject* __Pyx_PyInt_From_unsigned_int(unsigned int value) {
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const unsigned int neg_one = (unsigned int) -1, const_zero = (unsigned int) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
++    const int is_unsigned = neg_one > const_zero;
++    if (is_unsigned) {
++        if (sizeof(unsigned int) < sizeof(long)) {
++            return PyInt_FromLong((long) value);
++        } else if (sizeof(unsigned int) <= sizeof(unsigned long)) {
++            return PyLong_FromUnsignedLong((unsigned long) value);
++#ifdef HAVE_LONG_LONG
++        } else if (sizeof(unsigned int) <= sizeof(unsigned PY_LONG_LONG)) {
++            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
++#endif
++        }
++    } else {
++        if (sizeof(unsigned int) <= sizeof(long)) {
++            return PyInt_FromLong((long) value);
++#ifdef HAVE_LONG_LONG
++        } else if (sizeof(unsigned int) <= sizeof(PY_LONG_LONG)) {
++            return PyLong_FromLongLong((PY_LONG_LONG) value);
++#endif
++        }
++    }
++    {
++        int one = 1; int little = (int)*(unsigned char *)&one;
++        unsigned char *bytes = (unsigned char *)&value;
++        return _PyLong_FromByteArray(bytes, sizeof(unsigned int),
++                                     little, !is_unsigned);
++    }
++}
++
+ /* CIntToPy */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg_SVGfillRule(enum __pyx_t_2wx_3svg_8_nanosvg_SVGfillRule value) {
+-    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGfillRule neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGfillRule) ((enum __pyx_t_2wx_3svg_8_nanosvg_SVGfillRule) 0 - (enum __pyx_t_2wx_3svg_8_nanosvg_SVGfillRule) 1), const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGfillRule) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGfillRule neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGfillRule) -1, const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGfillRule) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
+     const int is_unsigned = neg_one > const_zero;
+     if (is_unsigned) {
+         if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGfillRule) < sizeof(long)) {
+@@ -20251,7 +20336,14 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg
+ 
+ /* CIntToPy */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg_SVGflags(enum __pyx_t_2wx_3svg_8_nanosvg_SVGflags value) {
+-    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGflags neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGflags) ((enum __pyx_t_2wx_3svg_8_nanosvg_SVGflags) 0 - (enum __pyx_t_2wx_3svg_8_nanosvg_SVGflags) 1), const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGflags) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGflags neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGflags) -1, const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGflags) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
+     const int is_unsigned = neg_one > const_zero;
+     if (is_unsigned) {
+         if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGflags) < sizeof(long)) {
+@@ -20282,7 +20374,14 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg
+ 
+ /* CIntToPy */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg_SVGlineCap(enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineCap value) {
+-    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineCap neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineCap) ((enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineCap) 0 - (enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineCap) 1), const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineCap) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineCap neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineCap) -1, const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineCap) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
+     const int is_unsigned = neg_one > const_zero;
+     if (is_unsigned) {
+         if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineCap) < sizeof(long)) {
+@@ -20313,7 +20412,14 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg
+ 
+ /* CIntToPy */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg_SVGlineJoin(enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineJoin value) {
+-    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineJoin neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineJoin) ((enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineJoin) 0 - (enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineJoin) 1), const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineJoin) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineJoin neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineJoin) -1, const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineJoin) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
+     const int is_unsigned = neg_one > const_zero;
+     if (is_unsigned) {
+         if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGlineJoin) < sizeof(long)) {
+@@ -20344,7 +20450,14 @@ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg
+ 
+ /* CIntToPy */
+ static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum____pyx_t_2wx_3svg_8_nanosvg_SVGspreadType(enum __pyx_t_2wx_3svg_8_nanosvg_SVGspreadType value) {
+-    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGspreadType neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGspreadType) ((enum __pyx_t_2wx_3svg_8_nanosvg_SVGspreadType) 0 - (enum __pyx_t_2wx_3svg_8_nanosvg_SVGspreadType) 1), const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGspreadType) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wconversion"
++#endif
++    const enum __pyx_t_2wx_3svg_8_nanosvg_SVGspreadType neg_one = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGspreadType) -1, const_zero = (enum __pyx_t_2wx_3svg_8_nanosvg_SVGspreadType) 0;
++#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
++#pragma GCC diagnostic pop
++#endif
+     const int is_unsigned = neg_one > const_zero;
+     if (is_unsigned) {
+         if (sizeof(enum __pyx_t_2wx_3svg_8_nanosvg_SVGspreadType) < sizeof(long)) {
+@@ -20907,6 +21020,30 @@ PyObject *__Pyx_Coroutine_MethodReturn(CYTHON_UNUSED PyObject* gen, PyObject *re
+     }
+     return retval;
+ }
++#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03030000 && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3)
++static CYTHON_INLINE
++PyObject *__Pyx_PyGen_Send(PyGenObject *gen, PyObject *arg) {
++#if PY_VERSION_HEX <= 0x030A00A1
++    return _PyGen_Send(gen, arg);
++#else
++    PyObject *result;
++    if (PyIter_Send((PyObject*)gen, arg ? arg : Py_None, &result) == PYGEN_RETURN) {
++        if (PyAsyncGen_CheckExact(gen)) {
++            assert(result == Py_None);
++            PyErr_SetNone(PyExc_StopAsyncIteration);
++        }
++        else if (result == Py_None) {
++            PyErr_SetNone(PyExc_StopIteration);
++        }
++        else {
++            _PyGen_SetStopIterationValue(result);
++        }
++        Py_CLEAR(result);
++    }
++    return result;
++#endif
++}
++#endif
+ static CYTHON_INLINE
+ PyObject *__Pyx_Coroutine_FinishDelegation(__pyx_CoroutineObject *gen) {
+     PyObject *ret;
+@@ -20943,12 +21080,12 @@ static PyObject *__Pyx_Coroutine_Send(PyObject *self, PyObject *value) {
+         #endif
+         #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03030000 && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3)
+         if (PyGen_CheckExact(yf)) {
+-            ret = _PyGen_Send((PyGenObject*)yf, value == Py_None ? NULL : value);
++            ret = __Pyx_PyGen_Send((PyGenObject*)yf, value == Py_None ? NULL : value);
+         } else
+         #endif
+         #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03050000 && defined(PyCoro_CheckExact) && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3)
+         if (PyCoro_CheckExact(yf)) {
+-            ret = _PyGen_Send((PyGenObject*)yf, value == Py_None ? NULL : value);
++            ret = __Pyx_PyGen_Send((PyGenObject*)yf, value == Py_None ? NULL : value);
+         } else
+         #endif
+         {
+@@ -21032,7 +21169,7 @@ static PyObject *__Pyx_Generator_Next(PyObject *self) {
+         #endif
+         #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03030000 && (defined(__linux__) || PY_VERSION_HEX >= 0x030600B3)
+         if (PyGen_CheckExact(yf)) {
+-            ret = _PyGen_Send((PyGenObject*)yf, NULL);
++            ret = __Pyx_PyGen_Send((PyGenObject*)yf, NULL);
+         } else
+         #endif
+         #ifdef __Pyx_Coroutine_USED
+@@ -21192,6 +21329,7 @@ static int __Pyx_Coroutine_clear(PyObject *self) {
+     }
+ #endif
+     Py_CLEAR(gen->gi_code);
++    Py_CLEAR(gen->gi_frame);
+     Py_CLEAR(gen->gi_name);
+     Py_CLEAR(gen->gi_qualname);
+     Py_CLEAR(gen->gi_modulename);
+@@ -21208,7 +21346,7 @@ static void __Pyx_Coroutine_dealloc(PyObject *self) {
+         if (PyObject_CallFinalizerFromDealloc(self))
+ #else
+         Py_TYPE(gen)->tp_del(self);
+-        if (self->ob_refcnt > 0)
++        if (Py_REFCNT(self) > 0)
+ #endif
+         {
+             return;
+@@ -21235,7 +21373,7 @@ static void __Pyx_Coroutine_del(PyObject *self) {
+     }
+ #if !CYTHON_USE_TP_FINALIZE
+     assert(self->ob_refcnt == 0);
+-    self->ob_refcnt = 1;
++    __Pyx_SET_REFCNT(self, 1);
+ #endif
+     __Pyx_PyThreadState_assign
+     __Pyx_ErrFetch(&error_type, &error_value, &error_traceback);
+@@ -21302,17 +21440,17 @@ static void __Pyx_Coroutine_del(PyObject *self) {
+     }
+     __Pyx_ErrRestore(error_type, error_value, error_traceback);
+ #if !CYTHON_USE_TP_FINALIZE
+-    assert(self->ob_refcnt > 0);
++    assert(Py_REFCNT(self) > 0);
+     if (--self->ob_refcnt == 0) {
+         return;
+     }
+     {
+-        Py_ssize_t refcnt = self->ob_refcnt;
++        Py_ssize_t refcnt = Py_REFCNT(self);
+         _Py_NewReference(self);
+-        self->ob_refcnt = refcnt;
++        __Pyx_SET_REFCNT(self, refcnt);
+     }
+ #if CYTHON_COMPILING_IN_CPYTHON
+-    assert(PyType_IS_GC(self->ob_type) &&
++    assert(PyType_IS_GC(Py_TYPE(self)) &&
+            _Py_AS_GC(self)->gc.gc_refs != _PyGC_REFS_UNTRACKED);
+     _Py_DEC_REFTOTAL;
+ #endif
+@@ -21378,6 +21516,27 @@ __Pyx_Coroutine_set_qualname(__pyx_CoroutineObject *self, PyObject *value, CYTHO
+     Py_XDECREF(tmp);
+     return 0;
+ }
++static PyObject *
++__Pyx_Coroutine_get_frame(__pyx_CoroutineObject *self, CYTHON_UNUSED void *context)
++{
++    PyObject *frame = self->gi_frame;
++    if (!frame) {
++        if (unlikely(!self->gi_code)) {
++            Py_RETURN_NONE;
++        }
++        frame = (PyObject *) PyFrame_New(
++            PyThreadState_Get(),            /*PyThreadState *tstate,*/
++            (PyCodeObject*) self->gi_code,  /*PyCodeObject *code,*/
++            __pyx_d,                 /*PyObject *globals,*/
++            0                               /*PyObject *locals*/
++        );
++        if (unlikely(!frame))
++            return NULL;
++        self->gi_frame = frame;
++    }
++    Py_INCREF(frame);
++    return frame;
++}
+ static __pyx_CoroutineObject *__Pyx__Coroutine_New(
+             PyTypeObject* type, __pyx_coroutine_body_t body, PyObject *code, PyObject *closure,
+             PyObject *name, PyObject *qualname, PyObject *module_name) {
+@@ -21411,6 +21570,7 @@ static __pyx_CoroutineObject *__Pyx__Coroutine_NewInit(
+     gen->gi_modulename = module_name;
+     Py_XINCREF(code);
+     gen->gi_code = code;
++    gen->gi_frame = NULL;
+     PyObject_GC_Track(gen);
+     return gen;
+ }
+@@ -21534,6 +21694,8 @@ static PyGetSetDef __pyx_Generator_getsets[] = {
+      (char*) PyDoc_STR("name of the generator"), 0},
+     {(char *) "__qualname__", (getter)__Pyx_Coroutine_get_qualname, (setter)__Pyx_Coroutine_set_qualname,
+      (char*) PyDoc_STR("qualified name of the generator"), 0},
++    {(char *) "gi_frame", (getter)__Pyx_Coroutine_get_frame, NULL,
++     (char*) PyDoc_STR("Frame of the generator"), 0},
+     {0, 0, 0, 0, 0}
+ };
+ static PyTypeObject __pyx_GeneratorType_type = {
+-- 
+2.33.0
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python3-wxgtk4/python3-wxgtk4_4.1.1.bb b/meta-openembedded/meta-python/recipes-devtools/python3-wxgtk4/python3-wxgtk4_4.1.1.bb
index 3583acc..4d739b8 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python3-wxgtk4/python3-wxgtk4_4.1.1.bb
+++ b/meta-openembedded/meta-python/recipes-devtools/python3-wxgtk4/python3-wxgtk4_4.1.1.bb
@@ -11,6 +11,7 @@
 SRC_URI += "file://add-back-option-build-base.patch \
             file://wxgtk-fixup-build-scripts.patch \
             file://sip-fix-override-functions.patch \
+            file://0001-Update-Cython-version-to-fix-NanoSVG-issues-with-Pyt.patch \
             "
 SRC_URI[sha256sum] = "00e5e3180ac7f2852f342ad341d57c44e7e4326de0b550b9a5c4a8361b6c3528"
 
@@ -18,7 +19,7 @@
 
 inherit pypi setuptools3 pkgconfig features_check
 
-ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+REQUIRED_DISTRO_FEATURES = "x11"
 
 export WX_CONFIG = "'${RECIPE_SYSROOT_NATIVE}${bindir}/wx-config --prefix=${STAGING_EXECPREFIXDIR} --baselib=${baselib}'"
 
diff --git a/meta-openembedded/meta-networking/recipes-devtools/python/python3-ldap_3.4.0.bb b/meta-openembedded/meta-python/recipes-networking/python/python3-ldap_3.4.0.bb
similarity index 100%
rename from meta-openembedded/meta-networking/recipes-devtools/python/python3-ldap_3.4.0.bb
rename to meta-openembedded/meta-python/recipes-networking/python/python3-ldap_3.4.0.bb
diff --git a/meta-openembedded/meta-webserver/conf/layer.conf b/meta-openembedded/meta-webserver/conf/layer.conf
index 5ae5e79..bfcd968 100644
--- a/meta-openembedded/meta-webserver/conf/layer.conf
+++ b/meta-openembedded/meta-webserver/conf/layer.conf
@@ -17,7 +17,7 @@
 
 LAYERDEPENDS_webserver = "core openembedded-layer"
 
-LAYERSERIES_COMPAT_webserver = "kirkstone"
+LAYERSERIES_COMPAT_webserver = "kirkstone langdale"
 
 LICENSE_PATH += "${LAYERDIR}/licenses"
 
diff --git a/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.3.bb b/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.2.0.bb
similarity index 94%
rename from meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.3.bb
rename to meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.2.0.bb
index 7ccc05e..45de455 100644
--- a/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.1.3.bb
+++ b/meta-openembedded/meta-webserver/recipes-php/phpmyadmin/phpmyadmin_5.2.0.bb
@@ -11,7 +11,7 @@
            file://apache.conf \
 "
 
-SRC_URI[sha256sum] = "c562feddc0f8ff5e69629113f273a0d024a65fb928c48e89ce614744d478296f"
+SRC_URI[sha256sum] = "66da31ca295f06182ac3f2e6e96057dc824c459baedf4b29de6ed0d3be039230"
 
 UPSTREAM_CHECK_URI = "https://www.phpmyadmin.net/downloads/"
 UPSTREAM_CHECK_REGEX = "phpMyAdmin-(?P<pver>\d+(\.\d+)+)-all-languages.tar.xz"
diff --git a/meta-openembedded/meta-xfce/conf/layer.conf b/meta-openembedded/meta-xfce/conf/layer.conf
index 28dfc5b..5785421 100644
--- a/meta-openembedded/meta-xfce/conf/layer.conf
+++ b/meta-openembedded/meta-xfce/conf/layer.conf
@@ -19,7 +19,7 @@
 LAYERDEPENDS_xfce-layer += "meta-python"
 LAYERDEPENDS_xfce-layer += "networking-layer"
 
-LAYERSERIES_COMPAT_xfce-layer = "kirkstone"
+LAYERSERIES_COMPAT_xfce-layer = "kirkstone langdale"
 
 SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += "\
   openzone->gdk-pixbuf \