summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/os-release
diff options
context:
space:
mode:
authorArmin Kuster <akuster808@gmail.com>2023-05-03 10:31:18 -0400
committerRichard Purdie <richard.purdie@linuxfoundation.org>2023-05-05 11:07:21 +0100
commit9730770e3b5a48775ddc89acd0f029e34f135bba (patch)
tree5365649b953c8aac97f4c9dff1c3a06efe956d4a /meta/recipes-core/os-release
parente57c5de6c64f0ae146cde235ab83c22e51216c5c (diff)
downloadopenembedded-core-9730770e3b5a48775ddc89acd0f029e34f135bba.tar.gz
os-release: Add CPE_NAME
Its time we add the CPE_NAME to os-release. The vendor field is hardcoded to "openembedded" as it is the base framework. We will use "DISTRO" to identify which variation of openembedded is being used. Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/os-release')
-rw-r--r--meta/recipes-core/os-release/os-release.bb15
1 files changed, 15 insertions, 0 deletions
diff --git a/meta/recipes-core/os-release/os-release.bb b/meta/recipes-core/os-release/os-release.bb
index 860ee97224..8906906bc3 100644
--- a/meta/recipes-core/os-release/os-release.bb
+++ b/meta/recipes-core/os-release/os-release.bb
@@ -16,6 +16,7 @@ do_configure[noexec] = "1"
# HOME_URL SUPPORT_URL BUG_REPORT_URL
OS_RELEASE_FIELDS = "\
ID ID_LIKE NAME VERSION VERSION_ID VERSION_CODENAME PRETTY_NAME \
+ CPE_NAME \
"
OS_RELEASE_UNQUOTED_FIELDS = "ID VERSION_ID VARIANT_ID"
@@ -25,6 +26,20 @@ VERSION = "${DISTRO_VERSION}${@' (%s)' % DISTRO_CODENAME if 'DISTRO_CODENAME' in
VERSION_ID = "${DISTRO_VERSION}"
VERSION_CODENAME = "${DISTRO_CODENAME}"
PRETTY_NAME = "${DISTRO_NAME} ${VERSION}"
+
+# The vendor field is hardcoded to "openembedded" deliberately. We'd
+# advise developers leave it as this value to clearly identify the
+# underlying build environment from which the OS was constructed. We
+# understand people will want to identify themselves as the people who
+# built the image, we'd suggest using the DISTRO element to do this, so
+# that is customisable.
+# This end result combines to mean systems can be traced back to both who
+# built them and which system was used, which is ultimately the goal of
+# the CPE.
+
+CPE_DISTRO ??= "${DISTRO}"
+CPE_NAME="cpe:/o:openembedded:${CPE_DISTRO}:${VERSION_ID}"
+
BUILD_ID ?= "${DATETIME}"
BUILD_ID[vardepsexclude] = "DATETIME"