Openembedded Core Discussions
 help / color / mirror / Atom feed
From: akuster <akuster@mvista.com>
To: Mark Hatle <mark.hatle@windriver.com>,
	 openembedded-core@lists.openembedded.org
Subject: Re: [PATCH] os-release: Adding a new recipe for operating system identification
Date: Sat, 02 Aug 2014 20:19:31 -0700	[thread overview]
Message-ID: <53DDAA43.6040709@mvista.com> (raw)
In-Reply-To: <53DBA20E.8040709@windriver.com>



On 08/01/2014 07:19 AM, Mark Hatle wrote:
> While not exactly the same thing, there is a similar file being
> generated when LSB is enabled.  It can be used outside of the LSB
> configuration as well.
>
> The recipe is simply 'lsb'.  It provides some basic initscript functions
> (required by the lsb) as well as the /etc/lsb-release file which is
> pretty close to the output below.
>
> I have wondered in the past if we should add a similar file to what the
> LSB or below is doing to 'base-files'.

That sound good to me. There seems to be a move in the community at 
large to support "/os-release".

         1. Announcement of /etc/os-release
            http://0pointer.de/blog/projects/os-release

         2. Common Platform Enumeration Specification
            http://cpe.mitre.org/specification/

         3. RFC3986 format
            https://tools.ietf.org/html/rfc3986


I tried the patch an it looks good.

many thanks,
Armin

>
> --Mark
>
> On 8/1/14, 8:16 AM, Sujith H wrote:
>> From: Sujith H <Sujith_Haridasan@mentor.com>
>>
>> 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 <kergoth@gmail.com>
>> Signed-off-by: Sujith H <Sujith_Haridasan@mentor.com>
>> ---
>>   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
>>
>> 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 0000000..33e9581
>> --- /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}/
>> +}
>>
>


      reply	other threads:[~2014-08-03  3:19 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-01 13:16 [PATCH] os-release: Adding a new recipe for operating system identification Sujith H
2014-08-01 14:19 ` Mark Hatle
2014-08-03  3:19   ` akuster [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53DDAA43.6040709@mvista.com \
    --to=akuster@mvista.com \
    --cc=mark.hatle@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox