diff options
author | Pavel Zhukov <pavel@zhukoff.net> | 2022-09-05 18:24:48 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-09-08 14:59:39 +0100 |
commit | 912b35e6e6df1e904cf9f4296d242a07943cf7b3 (patch) | |
tree | 96d8e85d1564a1eb0850e175a4f2d1bcba0a6b42 /meta/classes-recipe/core-image.bbclass | |
parent | 685de2f859312015aa6bc3c8ca822609d816a1f0 (diff) | |
download | poky-912b35e6e6df1e904cf9f4296d242a07943cf7b3.tar.gz |
core-image.bbclass: Exclude openssh complementary packages
Openssh (main) package may be marked for installation via complementary
packages mechanism if sftp-server is installed
and this causes conflict with dropbear [Yocto #14858] [1].
Excluding openssh complementary packages if packagegroup-core-ssh-dropbear
is in PACKAGE_INSTALL fixes this issue.
To install openssh complementary packages in the images with
ssh-server-dropbear they may be added manually into the list because
they will be excluded from the installation even if corresonding class
(dev-pkg or dbg-pkgs) inherited.
[1]
Error:
Problem: problem with installed package dropbear-2020.81-r0.core2_64
- package dropbear-2020.81-r0.core2_64 conflicts with openssh provided by openssh-8.9p1-r0.core2_64
- package openssh-8.9p1-r0.core2_64 conflicts with dropbear provided by dropbear-2020.81-r0.core2_64
- package openssh-ptest-8.9p1-r0.core2_64 requires openssh, but none of the providers can be installed
- conflicting requests
(try to add '--allowerasing' to command line to replace conflicting packages or '--skip-broken' to skip uninstallable packages)
(From OE-Core rev: fa08030b32c2bf77889c23f964892f46e84994a3)
Signed-off-by: Pavel Zhukov <pavel@zhukoff.net>
Signed-off-by: Pavel Zhukov <pavel.zhukov@huawei.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes-recipe/core-image.bbclass')
-rw-r--r-- | meta/classes-recipe/core-image.bbclass | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/meta/classes-recipe/core-image.bbclass b/meta/classes-recipe/core-image.bbclass index 4b5f2c99c4..90d9eb9d3f 100644 --- a/meta/classes-recipe/core-image.bbclass +++ b/meta/classes-recipe/core-image.bbclass | |||
@@ -62,6 +62,10 @@ FEATURE_PACKAGES_hwcodecs = "${MACHINE_HWCODECS}" | |||
62 | # IMAGE_FEATURES_REPLACES_foo = 'bar1 bar2' | 62 | # IMAGE_FEATURES_REPLACES_foo = 'bar1 bar2' |
63 | # Including image feature foo would replace the image features bar1 and bar2 | 63 | # Including image feature foo would replace the image features bar1 and bar2 |
64 | IMAGE_FEATURES_REPLACES_ssh-server-openssh = "ssh-server-dropbear" | 64 | IMAGE_FEATURES_REPLACES_ssh-server-openssh = "ssh-server-dropbear" |
65 | # Do not install openssh complementary packages if either packagegroup-core-ssh-dropbear or dropbear | ||
66 | # is installed # to avoid openssh-dropbear conflict | ||
67 | # see [Yocto #14858] for more information | ||
68 | PACKAGE_EXCLUDE_COMPLEMENTARY:append = "${@bb.utils.contains_any('PACKAGE_INSTALL', 'packagegroup-core-ssh-dropbear dropbear', 'openssh', '' , d)}" | ||
65 | 69 | ||
66 | # IMAGE_FEATURES_CONFLICTS_foo = 'bar1 bar2' | 70 | # IMAGE_FEATURES_CONFLICTS_foo = 'bar1 bar2' |
67 | # An error exception would be raised if both image features foo and bar1(or bar2) are included | 71 | # An error exception would be raised if both image features foo and bar1(or bar2) are included |