blob: c690b82b2e4dda63a65c3c600e22698f492a9a93 [file] [log] [blame]
Patrick Williamsc124f4f2015-09-15 14:41:29 -05001inherit allarch
2
3SUMMARY = "Operating system identification"
4DESCRIPTION = "The /etc/os-release file contains operating system identification data."
5LICENSE = "MIT"
6LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
7INHIBIT_DEFAULT_DEPS = "1"
8
9do_fetch[noexec] = "1"
10do_unpack[noexec] = "1"
11do_patch[noexec] = "1"
12do_configure[noexec] = "1"
13
14# Other valid fields: BUILD_ID ID_LIKE ANSI_COLOR CPE_NAME
15# HOME_URL SUPPORT_URL BUG_REPORT_URL
16OS_RELEASE_FIELDS = "ID ID_LIKE NAME VERSION VERSION_ID PRETTY_NAME"
17
18ID = "${DISTRO}"
19NAME = "${DISTRO_NAME}"
20VERSION = "${DISTRO_VERSION}${@' (%s)' % DISTRO_CODENAME if 'DISTRO_CODENAME' in d else ''}"
21VERSION_ID = "${DISTRO_VERSION}"
22PRETTY_NAME = "${DISTRO_NAME} ${VERSION}"
23BUILD_ID ?= "${DATETIME}"
24BUILD_ID[vardepsexclude] = "DATETIME"
25
26python do_compile () {
27 import shutil
28 with open(d.expand('${B}/os-release'), 'w') as f:
29 for field in d.getVar('OS_RELEASE_FIELDS', True).split():
30 value = d.getVar(field, True)
31 if value:
32 f.write('{0}={1}\n'.format(field, value))
33 if d.getVar('RPM_SIGN_PACKAGES', True) == '1':
34 rpm_gpg_pubkey = d.getVar('RPM_GPG_PUBKEY', True)
Patrick Williamsf1e5d692016-03-30 15:21:19 -050035 bb.utils.mkdirhier('${B}/rpm-gpg')
36 distro_version = d.getVar('DISTRO_VERSION', True) or "oe.0"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050037 shutil.copy2(rpm_gpg_pubkey, d.expand('${B}/rpm-gpg/RPM-GPG-KEY-%s' % distro_version))
38}
39do_compile[vardeps] += "${OS_RELEASE_FIELDS}"
Patrick Williamsf1e5d692016-03-30 15:21:19 -050040do_compile[depends] += "signing-keys:do_export_public_keys"
Patrick Williamsc124f4f2015-09-15 14:41:29 -050041
42do_install () {
43 install -d ${D}${sysconfdir}
44 install -m 0644 os-release ${D}${sysconfdir}/
45
46 if [ -d "rpm-gpg" ]; then
47 install -d "${D}${sysconfdir}/pki"
48 cp -r "rpm-gpg" "${D}${sysconfdir}/pki/"
49 fi
50}