X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=man%2Fos-release.xml;h=7d799721de9e4afd4589eeee81c47a24f836dd4f;hb=96b0cb1181afba513e547a9233b7acd4ff622a94;hp=c6eb28f395f3d2112192ad845e87182248426f14;hpb=e17fb72914e328f962e5df1bf88f301c0e7fa6e1;p=elogind.git diff --git a/man/os-release.xml b/man/os-release.xml index c6eb28f39..7d799721d 100644 --- a/man/os-release.xml +++ b/man/os-release.xml @@ -58,23 +58,37 @@ contains operating system identification data. The basic file format of - os-release is a - newline-separated list of environment-like - shell-compatible variable assignments. It is possible - to source the configuration from shell scripts, - however, beyond mere variable assignments no shell - features are supported, allowing applications to read - the file without implementing a shell compatible - execution engine. + os-release is a newline-separated + list of environment-like shell-compatible variable + assignments. It is possible to source the + configuration from shell scripts, however, beyond mere + variable assignments no shell features are supported + (this means variable expansion is explicitly not + supported), allowing applications to read the file + without implementing a shell compatible execution + engine. Variable assignment values should be enclosed + in double or single quotes if they include spaces, + semicolons or other special characters outside of A-Z, + a-z, 0-9. All strings should be in UTF-8 format, and + non-printable characters should not be used. If double + or single quotes or backslashes are to be used within + variable assignments they should be escaped with + backslashes, following shell style. It is not + supported to concatenate multiple individually quoted + strings. Lines beginning with "#" shall be ignored as + comments. /etc/os-release contains data that is defined by the operating system vendor and should not be changed by the administrator. - Depending on the operating system other - configuration files might be checked for OS - identification as well, however only as - fallback. + As this file only encodes names and identifiers + it should not be localized. + + For a longer rationale for + /etc/os-release please refer to + the Announcement of /etc/os-release. @@ -90,10 +104,10 @@ A string identifying the operating system, without a - version string, and not necessarily - suitable for presentation to the - user. If not set defaults to - Linux. Example: + version component, and suitable for + presentation to the user. If not set + defaults to + NAME=Linux. Example: NAME=Fedora or NAME="Debian GNU/Linux". @@ -104,35 +118,46 @@ A string identifying the operating system version, - excluding any name information and - suitable for presentation to the - user. Example: - VERSION=15 or - VERSION="15 - (Rawhide)". + excluding any OS name information, + possibly including a release code + name, and suitable for presentation to + the user. This field is + optional. Example: + VERSION=17 or + VERSION="17 (Beefy + Miracle)". ID= A lower-case string + (no spaces or other characters outside + of 0-9, a-z, ".", "_" and "-") identifying the operating system, excluding any version information and - suitable for processing by scripts. If - not set defaults to - linux. Example: - ID=fedora. + suitable for processing by scripts or + usage in generated file names. If not + set defaults to + ID=linux. Example: + ID=fedora or + ID=debian. VERSION_ID= A lower-case string - (mostly numeric) identifying the - operating system version, excluding - any name information and suitable for - processing by scripts. Example: - VERSION_ID=15. + (mostly numeric, no spaces or other + characters outside of 0-9, a-z, ".", + "_" and "-") identifying the operating + system version, excluding any OS name + information or release code name, and + suitable for processing by scripts or + usage in generated file names. This + field is optional. Example: + VERSION_ID=17 or + VERSION_ID=11.04. @@ -141,11 +166,12 @@ A pretty operating system name in a format suitable for presentation to the user. May or may - not contain an OS version of some - kind, as suitable. If not set defaults - to Linux. Example: - PRETTY_NAME=Fedora 15 - (Rawhide). + not contain a release code name or OS + version of some kind, as suitable. If + not set defaults to + PRETTY_NAME="Linux". Example: + PRETTY_NAME="Fedora 17 (Beefy + Miracle)". @@ -157,37 +183,62 @@ should be specified as string suitable for inclusion in the ESC [ m ANSI/ECMA-48 escape code for setting - graphical rendition. Example: - ANSI_COLOR=0;31 for - red, or - ANSI_COLOR=1;34 for - light blue. + graphical rendition. This field is + optional. Example: + ANSI_COLOR="0;31" + for red, or + ANSI_COLOR="1;34" + for light blue. + + + + CPE_NAME= + + A CPE name for the + operating system, following the Common + Platform Enumeration + Specification as proposed by + the MITRE Corporation. This field + is optional. Example: + CPE_NAME="cpe:/o:fedoraproject:fedora:17" + - If you interpreting this file from code or a - shell script, use the ID and VERSION_ID fields. When - looking for an OS indetification string for - presentation to the user use the PRETTY_STRING - field. + If you are reading this file from C code or a + shell script to determine the OS or a specific version + of it, use the ID and VERSION_ID fields. When looking + for an OS identification string for presentation to + the user use the PRETTY_NAME field. + + Note that operating system vendors may choose + not to provide version information, for example to + accommodate for rolling releases. In this case VERSION + and VERSION_ID may be unset. Applications should not + rely on these fields to be set. Example NAME=Fedora -VERSION=15 (Rawhide) +VERSION="17 (Beefy Miracle)" ID=fedora -VERSION_ID=15 -PRETTY_NAME=Fedora 15 (Rawhide) -ANSI_COLOR=0;34 +VERSION_ID=17 +PRETTY_NAME="Fedora 17 (Beefy Miracle)" +ANSI_COLOR="0;34" +CPE_NAME="cpe:/o:fedoraproject:fedora:17" See Also systemd1, - lsb_release1 + lsb_release1, + hostname5, + machine-id5, + machine-info5