From 958f5d244bc59637e472171d2d8d3a4c10471626 Mon Sep 17 00:00:00 2001 From: Samuel Dolt Date: Mon, 13 Mar 2023 11:11:31 +0100 Subject: [PATCH 1/2] feat(coreos-image.bbclass): use coreos specific package-group for IMAGE_INSTALL --- .../classes/coreos-image.bbclass | 12 ++--------- .../packagegroups/packagegroup-coreos-base.bb | 21 +++++++++++++++++++ .../packagegroups/packagegroup-coreos-boot.bb | 13 ++++++++++++ 3 files changed, 36 insertions(+), 10 deletions(-) create mode 100644 layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-base.bb create mode 100644 layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-boot.bb diff --git a/layers/meta-belden-coreos/classes/coreos-image.bbclass b/layers/meta-belden-coreos/classes/coreos-image.bbclass index d2898c4..685ea48 100644 --- a/layers/meta-belden-coreos/classes/coreos-image.bbclass +++ b/layers/meta-belden-coreos/classes/coreos-image.bbclass @@ -64,17 +64,9 @@ PACKAGE_EXCLUDE_COMPLEMENTARY:append = "${@bb.utils.contains_any('PACKAGE_INSTAL # IMAGE_FEATURES_CONFLICTS_foo = 'bar1 bar2' # An error exception would be raised if both image features foo and bar1(or bar2) are included -# packagegroup-core-boot will install the EFI_PROVIDER package if EFI is in Machine -# feature. We use this variable to install more EFI related tools -COREOS_IMAGE_EFI_PROVIDER_EXTRA = " \ - ${@'efibootguard-tools' if d.getVar('EFI_PROVIDER') == 'efibootguard' else ''} \ -" - COREOS_IMAGE_BASE_INSTALL = "\ - packagegroup-core-boot \ - packagegroup-base-extended \ - ${@bb.utils.contains("MACHINE_FEATURES", "efi", "${COREOS_IMAGE_EFI_PROVIDER_EXTRA}", "", d)} \ - os-release \ + packagegroup-coreos-boot \ + packagegroup-coreos-base \ " COREOS_IMAGE_EXTRA_INSTALL ?= "" diff --git a/layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-base.bb b/layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-base.bb new file mode 100644 index 0000000..4aced9a --- /dev/null +++ b/layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-base.bb @@ -0,0 +1,21 @@ +SUMMARY = "Merge machine and distro options to create a basic machine task/package" +PR = "r1" + +# +# packages which content depend on MACHINE_FEATURES need to be MACHINE_ARCH +# +PACKAGE_ARCH = "${MACHINE_ARCH}" + +inherit packagegroup + +# packagroup-coreos-boot will ensure that EFI_PROVIDER is installed +# But we want to have Linux user space tools installed as well here +COREOS_IMAGE_EFI_PROVIDER_EXTRA = " \ + ${@'efibootguard-tools' if d.getVar('EFI_PROVIDER') == 'efibootguard' else ''} \ +" + +RDEPENDS:${PN} = "\ + packagegroup-core-base-extended \ + os-release \ + ${@bb.utils.contains("MACHINE_FEATURES", "efi", "${COREOS_IMAGE_EFI_PROVIDER_EXTRA}", "", d)} \ +" diff --git a/layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-boot.bb b/layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-boot.bb new file mode 100644 index 0000000..3cd7833 --- /dev/null +++ b/layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-boot.bb @@ -0,0 +1,13 @@ +SUMMARY = "Minimal boot requirements" +DESCRIPTION = "The minimal set of packages required to boot CoreOS" +PR = "r1" + +# packages which content depend on MACHINE_FEATURES need to be MACHINE_ARCH +# As we expect this group to become machine dependants it's already set +PACKAGE_ARCH = "${MACHINE_ARCH}" + +inherit packagegroup + +RDEPENDS:${PN} = "\ + packagegroup-core-boot \ +" From 5bddcaad7adf75ec63c18f72d8455204edf39cf4 Mon Sep 17 00:00:00 2001 From: Samuel Dolt Date: Mon, 13 Mar 2023 11:12:15 +0100 Subject: [PATCH 2/2] feat(coreos-container-image.bbclass): use coreos specific package-group for IMAGE_INSTALL --- .../classes/coreos-container-image.bbclass | 12 +++--------- .../packagegroups/packagegroup-coreos-container.bb | 13 +++++++++++++ 2 files changed, 16 insertions(+), 9 deletions(-) create mode 100644 layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-container.bb diff --git a/layers/meta-belden-coreos/classes/coreos-container-image.bbclass b/layers/meta-belden-coreos/classes/coreos-container-image.bbclass index a432b89..4d29305 100644 --- a/layers/meta-belden-coreos/classes/coreos-container-image.bbclass +++ b/layers/meta-belden-coreos/classes/coreos-container-image.bbclass @@ -9,15 +9,9 @@ NO_RECOMMENDATIONS = "1" # the host, thus we can't use linux-dummy has the default kernel provider. IMAGE_CONTAINER_NO_DUMMY = "1" - -# Only install a reduced set of packages in a container. This correspond to -# a subset of packagegroup-core-boot -COREOS_CONTAINER_IMAGE_BASE_INSTALL = '\ - base-files \ - base-passwd \ - netbase \ - os-release \ - ' +COREOS_CONTAINER_IMAGE_BASE_INSTALL = "\ + packagegroup-coreos-container \ +" COREOS_CONTAINER_IMAGE_EXTRA_INSTALL ?= "" IMAGE_INSTALL ?= "${COREOS_CONTAINER_IMAGE_BASE_INSTALL} ${COREOS_CONTAINER_IMAGE_EXTRA_INSTALL}" diff --git a/layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-container.bb b/layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-container.bb new file mode 100644 index 0000000..1dff123 --- /dev/null +++ b/layers/meta-belden-coreos/recipes-core/packagegroups/packagegroup-coreos-container.bb @@ -0,0 +1,13 @@ +SUMMARY = "Basic set of package for container" +PR = "r1" + +inherit packagegroup + +# Only install a reduced set of packages in a container. This correspond to +# a subset of packagegroup-core-boot +RDEPENDS:${PN} = "\ + base-files \ + base-passwd \ + netbase \ + os-release \ +"