From 8a12350e00b5443a24f3d6c7693fdde9fcb7319f Mon Sep 17 00:00:00 2001 From: Sujith H Date: Mon, 8 Sep 2014 12:58:36 +0100 Subject: os-release: Adding a new recipe for operating system identification The /etc/os-release will have the operating system identification data. Tested on target with systemd enabled. Here is the sample file looks in the file: ID=poky-ivi-systemd NAME=Yocto GENIVI Baseline (Poky/meta-ivi) VERSION=6.0+snapshot-20140721 (daisy) VERSION_ID=6.0+snapshot-20140721 PRETTY_NAME=Yocto GENIVI Baseline (Poky/meta-ivi) 6.0+snapshot-20140721 (daisy) Signed-off-by: Christopher Larson Signed-off-by: Sujith H Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/recipes-core/os-release/os-release.bb | 36 ++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 meta/recipes-core/os-release/os-release.bb (limited to 'meta') diff --git a/meta/recipes-core/os-release/os-release.bb b/meta/recipes-core/os-release/os-release.bb new file mode 100644 index 0000000000..33e958137f --- /dev/null +++ b/meta/recipes-core/os-release/os-release.bb @@ -0,0 +1,36 @@ +inherit allarch + +SUMMARY = "Operating system identification" +DESCRIPTION = "The /etc/os-release file contains operating system identification data." +LICENSE = "MIT" +INHIBIT_DEFAULT_DEPS = "1" + +do_fetch[noexec] = "1" +do_unpack[noexec] = "1" +do_patch[noexec] = "1" +do_configure[noexec] = "1" + +# Other valid fields: BUILD_ID ID_LIKE ANSI_COLOR CPE_NAME +# HOME_URL SUPPORT_URL BUG_REPORT_URL +OS_RELEASE_FIELDS = "ID ID_LIKE NAME VERSION VERSION_ID PRETTY_NAME" + +ID = "${DISTRO}" +NAME = "${DISTRO_NAME}" +VERSION = "${DISTRO_VERSION}${@' (%s)' % DISTRO_CODENAME if 'DISTRO_CODENAME' in d else ''}" +VERSION_ID = "${DISTRO_VERSION}" +PRETTY_NAME = "${DISTRO_NAME} ${VERSION}" +BUILD_ID ?= "${DATETIME}" + +python do_compile () { + with open(d.expand('${B}/os-release'), 'w') as f: + for field in d.getVar('OS_RELEASE_FIELDS', True).split(): + value = d.getVar(field, True) + if value: + f.write('{0}={1}\n'.format(field, value)) +} +do_compile[vardeps] += "${OS_RELEASE_FIELDS}" + +do_install () { + install -d ${D}${sysconfdir} + install -m 0644 os-release ${D}${sysconfdir}/ +} -- cgit 1.2.3-korg