]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commit
package_manager/oe-pkgdata-util: fix complementary package installation
authorChen Qi <Qi.Chen@windriver.com>
Wed, 24 Sep 2025 08:42:33 +0000 (16:42 +0800)
committerMathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Wed, 22 Oct 2025 16:17:27 +0000 (18:17 +0200)
commitd3114ec59884fc866c41d9f5b1a674752fb6b6b4
treeb5a8340cd49da12ff6c1887857de172c859477c3
parent6087bddc6cc272255e4ec0437d603b48d74e0d7f
package_manager/oe-pkgdata-util: fix complementary package installation

We currently have a problem regarding complementary package installation,
that is, if 'oe-pkgdata-util glob' maps out packages that are not in
the oe-rootfs-repo, we will get error like below:

  No match for argument: lib32-glibc-locale-en-gb
  Error: Unable to find a match: lib32-glibc-locale-en-gb

Here are the steps to reproduce the issue:
1. Add the following lines to local.conf:
   require conf/multilib.conf
   MULTILIBS ?= "multilib:lib32"
   DEFAULTTUNE:virtclass-multilib-lib32 ?= "core2-32"
   IMAGE_INSTALL:append = " lib32-sysstat"
2. bitbake lib32-glibc-locale && bitbake core-image-full-cmdline

This problem appears because:
1) At do_rootfs time, we first contruct a repo with a filtering
   mechanism to ensure we don't pull in unneeded packages.[1]
2) oe-pkgdata-util uses the pkgdata without filtering.

In order to avoid any hardcoding that might grow in the future[2], we need
to give 'oe-pkgdata-util glob' some filtering ability.

So this patch does the following things:
1) Add a new option, '-a/--allpkgs', to 'oe-pkgdata-util glob'.
   This gives it a filtering mechanism. As it's an option, people who use
   'oe-pkgdata-util glob' command could use it as before.
2) Add to package_manager 'list_all' function implementations which
   list all available functions in our filtered repo.

[1] https://git.openembedded.org/openembedded-core/commit/?id=85e72e129362db896b0d368077033e4a2e373cf9
[2] https://lists.openembedded.org/g/openembedded-core/message/221449

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
meta/lib/oe/package_manager/__init__.py
meta/lib/oe/package_manager/deb/__init__.py
meta/lib/oe/package_manager/ipk/__init__.py
meta/lib/oe/package_manager/rpm/__init__.py
scripts/oe-pkgdata-util