doc/tags-and-attributes.txt
author Stephen Hahn <sch@Sun.COM>
Mon, 31 Mar 2008 13:53:12 -0700
changeset 293 c0af9237a26a
parent 30 f06ad6cb4b3f
child 1957 59237f3157c1
permissions -rw-r--r--
updates to spur discussion
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9
ea161eb06d14 begin list of flavours
"Stephen Hahn <sch@sun.com>"
parents:
diff changeset
     1
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
     2
PSARC/2008/190
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
     3
pkg(5): image packaging system
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
     4
30
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
     5
TAGS AND ATTRIBUTES
16
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
     6
30
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
     7
1.  Definitions
16
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
     8
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
     9
    Both packages and actions within a package can carry metadata, which
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    10
    we informally refer to as attributes and tags.
16
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
    11
30
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
    12
    Attributes:  settings that apply to an entire package.  Introduction
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
    13
    of an attribute that causes different deliveries by the client could
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
    14
    cause a conflict with the versioning algebra, so we attempt to avoid
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
    15
    them.
16
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
    16
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    17
    Tags are the settings that affect individual files within a package.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    18
    Tags may eventually have values, depending on how many tags are
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    19
    required to handle the SPARC-based platform binaries.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    20
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    21
2.  Attribute and tag syntax and namespace
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    22
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    23
2.1.  Syntax
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    24
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    25
    The syntax for attributes and tags is similar to that used for
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    26
    pkg(5) and smf(5) FMRIs.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    27
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    28
    [org_prefix,][name][:locale]
9
ea161eb06d14 begin list of flavours
"Stephen Hahn <sch@sun.com>"
parents:
diff changeset
    29
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    30
    The organizational prefix is a forward-ordered or reverse-ordered
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    31
    domain name, followed by a common.  The name field is a  
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    32
    The default locale, if the locale field is omitted is "C", a 7-bit
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    33
    ASCII locale.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    34
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    35
    Each of these fields is [A-Za-z][A-Za-z0-9_-.]*.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    36
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    37
2.2.  Unprefixed attributes and tags.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    38
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    39
    All unprefixed attributes and tags are reserved for use by the
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    40
    framework.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    41
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    42
    Generally, unprefixed tags are introduced in the definition of an
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    43
    action.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    44
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    45
2.3.  Attributes and tags common to all packages
16
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
    46
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    47
    The "pkg" attribute is to be used for attributes common to all
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    48
    packages, regardless of which particular OS platforms that a specific
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    49
    package may target.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    50
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    51
2.3.1.  Common attributes
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    52
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    53
    pkg.name
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    54
       A short, descriptive name for the package.  In accordance with
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    55
       2.1 above, pkg.name:fr would be the descriptive name in French.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    56
       Exact numerical version strings are discouraged in the
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    57
       descriptive name.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    58
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    59
       Example:  "Apache HTTPD Web Server 2.x"
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    60
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    61
    pkg.description
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    62
       A descriptive paragraph for the package.  Exact numerical version
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    63
       strings can be embedded in the paragraph.
16
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
    64
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    65
    pkg.detailed_url
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    66
       One or more URLs to pages or sites with further information about
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    67
       the package.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    68
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    69
2.3.2.  Common tags
16
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
    70
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    71
    pkg.debug
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    72
       This file is used when the package is intended to be installed in
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    73
       a debug configuration.  For example, we expect to deliver a debug
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    74
       version of the kernel, in addition to the standard non-debug
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    75
       version.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    76
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    77
    XXX pkg.platform
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    78
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    79
    XXX ISA (particularly need to know i386 on i86pc vs amd64 on i86pc)
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    80
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    81
    pkg.compatibility
9
ea161eb06d14 begin list of flavours
"Stephen Hahn <sch@sun.com>"
parents:
diff changeset
    82
	(for shipping non-bleeding edge .so.x.y.z copies, perhaps)
ea161eb06d14 begin list of flavours
"Stephen Hahn <sch@sun.com>"
parents:
diff changeset
    83
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    84
2.4.  Attributes common to all packages for an OS platform
30
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
    85
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    86
    Each OS platform is expected to define a string representing that
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    87
    platform.  For example, the OpenSolaris platform is represented by
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    88
    the string "opensolaris".
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    89
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    90
    XXX Or "osol"?
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    91
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    92
2.4.1.  OpenSolaris attributes
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    93
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    94
    opensolaris.arc_url
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    95
        One or more URLs associated with the ARC case or cases
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    96
	associated with the component(s) delivered by the package.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    97
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    98
    opensolaris.maintainer
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
    99
        A human readable string describing the entity providing the
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   100
	package.  For an individual, this string is expected to be their
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   101
	name, or name and email.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   102
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   103
    opensolaris.maintainer_url
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   104
        A URL associated with the entity providing the package.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   105
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   106
    opensolaris.upstream
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   107
	A human readable string describing the entity that creates the
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   108
	software.  For an individual, this string is expected to be
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   109
	their name, or name and email.
30
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   110
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   111
    opensolaris.upstream_url
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   112
        A URL associated with the entity that creates the 
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   113
	software delivered within the package.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   114
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   115
    opensolaris.source_url
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   116
        A URL to the source code bundle, if appropriate, for the package.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   117
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   118
    opensolaris.repository_url
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   119
        A URL to the source code repository, if appropriate, for the
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   120
	package.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   121
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   122
    opensolaris.repository_changeset
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   123
        A changeset ID for the version of the source code contained in
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   124
	opensolaris.repository_url.
30
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   125
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   126
    opensolaris.gui.classification
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   127
        A list of labels classifying the package into the categories
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   128
	shared among pkg(5) graphical clients.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   129
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   130
2.5.  Organization specific attributes
30
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   131
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   132
    Organizations wishing to provide a package with additional metadata
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   133
    or to amend an existing package's metadata (in a repository that
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   134
    they have control over) must use an organization-specific prefix.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   135
    For example, a service organization might introduce
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   136
    "service.example.com,support_level" or
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   137
    "com.example.service,support_level" to describe a level of support
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   138
    for a package and its contents.
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   139
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   140
3.3.  Attributes best avoided
16
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   141
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   142
built-on release
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   143
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   144
    One problem we may run into is packages that have been built on a
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   145
    release newer than that on the image.  These packages should be
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   146
    evaluated as unsuitable for the image, and not offered in the graph.
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   147
    There are a few ways to handle this case:
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   148
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   149
    1.  Separate repository.  All packages offered by a repository were
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   150
	built on a known system configuration.  This change requires
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   151
	negotiation between client and server for a built-on match
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   152
	condition.  It also means that multiple repositories are needed
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   153
	for a long lifecycle distribution.
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   154
30
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   155
    2.  Attributes.  Each package comes with a built-on attribute.  This
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   156
	means that clients move from one built-on release to another
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   157
	triggered by conditions set by the base package on the client.
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   158
	Another drawback is that it becomes impossible to request a
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   159
	specific package by an FMRI, without additional knowledge.
16
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   160
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   161
    3.  Additional version specifier.  We could extend
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   162
	release,branch:timestamp to release,built,branch:timestamp--or
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   163
	fold the built and branch version together.  Since the built
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   164
	portion must reserve major.minor.micro, that means we move to a
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   165
	package FMRI that looks like
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   166
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   167
	[email protected],5.11.0.1:timestamp
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   168
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   169
	This choice looks awkward.  We could instead treat the built
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   170
	portion as having a default value on a particular client.  Then
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   171
	the common specifier would be
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   172
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   173
	name@release[,build]-branch:timestamp
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   174
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   175
        build would be the highest available valid release for the
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   176
	image.
34fa0ef929b0 record JES requirements; build-binary ties are versions not flavours
"Stephen Hahn <sch@sun.com>"
parents: 9
diff changeset
   177
30
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   178
    The meaning of the built-on version could be controversial.  A
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   179
    simple approach would be to base it on base/minimal's release,
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   180
    rather than uname(1) output.
f06ad6cb4b3f stop using flavour terminology
Stephen Hahn <sch@sun.com>
parents: 16
diff changeset
   181
293
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   182
c0af9237a26a updates to spur discussion
Stephen Hahn <sch@Sun.COM>
parents: 30
diff changeset
   183