1# 2# CDDL HEADER START 3# 4# This file and its contents are supplied under the terms of the 5# Common Development and Distribution License ("CDDL"), version 1.0. 6# You may only use this file in accordance with the terms of version 7# 1.0 of the CDDL. 8# 9# A full copy of the text of the CDDL should have accompanied this 10# source. A copy of the CDDL is also available via the Internet at 11# http://www.illumos.org/license/CDDL. 12# 13# CDDL HEADER END 14# 15 16# 17# Copyright 2016 Nexenta Systems, Inc. All rights reserved. 18# 19 20# 21# The default for payload-bearing actions in this package is to appear in the 22# global zone only. See the include file for greater detail, as well as 23# information about overriding the defaults. 24# 25# 26# CDDL HEADER START 27# 28# The contents of this file are subject to the terms of the 29# Common Development and Distribution License (the "License"). 30# You may not use this file except in compliance with the License. 31# 32# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 33# or http://www.opensolaris.org/os/licensing. 34# See the License for the specific language governing permissions 35# and limitations under the License. 36# 37# When distributing Covered Code, include this CDDL HEADER in each 38# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 39# If applicable, add the following below this CDDL HEADER, with the 40# fields enclosed by brackets "[]" replaced with your own identifying 41# information: Portions Copyright [yyyy] [name of copyright owner] 42# 43# CDDL HEADER END 44# 45 46# 47# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 48# 49 50# 51# For packagers: 52# 53# This ruleset is useful for "system" components-- ones which are expected 54# to appear primarily in the global zone, but which may have some small 55# pieces (man pages, header files) which may need to appear in all zones. 56# 57# The current rules specify that all payload-bearing actions (file, 58# dir, hardlink, link) should appear *only* in the global zone, with 59# the following exceptions: 60# 61# - man pages appear in all zones 62# - header files appear in all zones 63# - mdb(1) modules appear in all zones 64# 65# You may well have other actions which you wish to appear in all zones. 66# An example would be an administrative utility for a driver which has 67# been virtualized to work within zones. For those actions you wish to 68# appear in all zones, add the following attribute to your action. 69# 70# variant.opensolaris.zone=__NODEFAULT 71# 72# You DO NOT need to specify __NODEFAULT for man pages, headers, or 73# mdb modules, as those are covered by the automatic rules below. 74# 75# Note: When you specify variant.opensolaris.zone=__NODEFAULT, the 76# net effect is that *no* variant.opensolaris.zone attribute will 77# appear in the post-processed manifest. 78# 79 80# 81# For packaging nerds: 82# 83# We have a problem to solve here: To make an action appear in all zones, 84# it should have *no* variant.opensolaris.zone attribute. So it's a bit 85# more complicated to use "default". 86# 87# Here's what we do: we use "default" to set all payload bearing actions 88# which have no variant.opensolaris.zone attribute to be 89# variant.opensolaris.zone=global. For those actions which need to appear 90# in all zones, the packager must specify 91# variant.opensolaris.zone=__NODEFAULT. Additionally we have some rules 92# which set __NODEFAULT for a few classes of well known things, like man 93# pages and headers. 94# 95# We then go through and clean up all of the __NODEFAULTed attributes by 96# simply deleting them. 97# 98 99# Man pages should appear in all zones. 100 101# Headers should appear in all zones. 102 103# MDB modules should appear in all zones, as one might debug a crash dump 104# in a zone. 105 106# Everything else is global zone only unless the user overrides 107# action-by-action with __NODEFAULT. 108 109# 110# Buff out the __NODEFAULT attributes. 111# 112set name=pkg.fmri value=pkg:/driver/storage/nvme@0.5.11,5.11-0.155.53 113set name=pkg.description value="Driver for Intel NVMe 1.1b compliant storage devices" 114set name=pkg.summary value="NVMe driver" 115set name=info.classification value=org.opensolaris.category.2008:System/Hardware 116set name=variant.arch value=i386 117dir group=sys mode=0755 owner=root path=kernel variant.opensolaris.zone=global 118dir group=sys mode=0755 owner=root path=kernel/drv variant.opensolaris.zone=global 119dir group=sys mode=0755 owner=root path=kernel/drv/amd64 variant.opensolaris.zone=global 120dir group=sys mode=0755 owner=root path=usr variant.opensolaris.zone=global 121dir group=bin mode=0755 owner=root path=usr/sbin variant.opensolaris.zone=global 122dir group=sys mode=0755 owner=root path=usr/share variant.opensolaris.zone=global 123dir group=bin mode=0755 owner=root path=usr/share/man 124dir facet.doc.man=true group=bin mode=0755 owner=root path=usr/share/man/man7d 125driver alias=pciclass,010802 alias=pciexclass,010802 class=disk name=nvme perms="* 0600 root sys" 126file NOHASH group=sys mode=0755 owner=root path=kernel/drv/amd64/nvme reboot-needed=true variant.opensolaris.zone=global 127file NOHASH group=sys mode=0644 owner=root path=kernel/drv/nvme.conf variant.opensolaris.zone=global 128file NOHASH group=bin mode=0555 owner=root path=usr/sbin/nvmeadm variant.opensolaris.zone=global 129file NOHASH facet.doc.man=true group=bin mode=0444 owner=root path=usr/share/man/man1m/nvmeadm.1m 130file NOHASH facet.doc.man=true group=bin mode=0444 owner=root path=usr/share/man/man7d/nvme.7d 131license lic_CDDL license=lic_CDDL 132# 133# CDDL HEADER START 134# 135# The contents of this file are subject to the terms of the 136# Common Development and Distribution License (the "License"). 137# You may not use this file except in compliance with the License. 138# 139# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 140# or http://www.opensolaris.org/os/licensing. 141# See the License for the specific language governing permissions 142# and limitations under the License. 143# 144# When distributing Covered Code, include this CDDL HEADER in each 145# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 146# If applicable, add the following below this CDDL HEADER, with the 147# fields enclosed by brackets "[]" replaced with your own identifying 148# information: Portions Copyright [yyyy] [name of copyright owner] 149# 150# CDDL HEADER END 151# 152 153# 154# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 155# 156 157# 158# These actions represent settings which should appear in every package. 159# 160 161# 162# Name the consolidation this package came from. 163# 164set name=org.opensolaris.consolidation value=osnet 165 166# 167# Indicate that the package was published in a zones aware 168# fashion. 169# 170set name=variant.opensolaris.zone value=global value=nonglobal 171# 172# CDDL HEADER START 173# 174# The contents of this file are subject to the terms of the 175# Common Development and Distribution License (the "License"). 176# You may not use this file except in compliance with the License. 177# 178# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 179# or http://www.opensolaris.org/os/licensing. 180# See the License for the specific language governing permissions 181# and limitations under the License. 182# 183# When distributing Covered Code, include this CDDL HEADER in each 184# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 185# If applicable, add the following below this CDDL HEADER, with the 186# fields enclosed by brackets "[]" replaced with your own identifying 187# information: Portions Copyright [yyyy] [name of copyright owner] 188# 189# CDDL HEADER END 190# 191 192# 193# Copyright 2010 Sun Microsystems, Inc. All rights reserved. 194# Use is subject to license terms. 195# 196 197# 198# Only publish packages for the currently specified architecture 199# 200# This is somewhat nonintuitive. In English: 201# 202# For any action of type "set", 203# if the "name" property matches the regex "variant.arch", 204# and *every* occurrence of the "value" property does not match 205# $ARCH, then don't publish it. 206# 207# ...in other words, if *any* occurrence of "value" matches i386, 208# then the negative lookahead assertion in the regex will fail, and we 209# won't abort based on the action. 210# 211 212# 213# Catch don't-publish settings from manifest-embedded transforms 214# 215# 216# CDDL HEADER START 217# 218# The contents of this file are subject to the terms of the 219# Common Development and Distribution License (the "License"). 220# You may not use this file except in compliance with the License. 221# 222# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 223# or http://www.opensolaris.org/os/licensing. 224# See the License for the specific language governing permissions 225# and limitations under the License. 226# 227# When distributing Covered Code, include this CDDL HEADER in each 228# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 229# If applicable, add the following below this CDDL HEADER, with the 230# fields enclosed by brackets "[]" replaced with your own identifying 231# information: Portions Copyright [yyyy] [name of copyright owner] 232# 233# CDDL HEADER END 234# 235 236# 237# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 238# 239 240# 241# This file and its contents are supplied under the terms of the 242# Common Development and Distribution License ("CDDL"), version 1.0. 243# You may only use this file in accordance with the terms of version 244# 1.0 of the CDDL. 245# 246# A full copy of the text of the CDDL should have accompanied this 247# source. A copy of the CDDL is also available via the Internet 248# at http://www.illumos.org/license/CDDL. 249# 250 251# Copyright 2011, Richard Lowe 252 253# Manual pages are documentation, and more specifically 'man' documentation 254# 255# CDDL HEADER START 256# 257# The contents of this file are subject to the terms of the 258# Common Development and Distribution License (the "License"). 259# You may not use this file except in compliance with the License. 260# 261# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 262# or http://www.opensolaris.org/os/licensing. 263# See the License for the specific language governing permissions 264# and limitations under the License. 265# 266# When distributing Covered Code, include this CDDL HEADER in each 267# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 268# If applicable, add the following below this CDDL HEADER, with the 269# fields enclosed by brackets "[]" replaced with your own identifying 270# information: Portions Copyright [yyyy] [name of copyright owner] 271# 272# CDDL HEADER END 273# 274 275# 276# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 277# Copyright 2011, Richard Lowe 278# 279 280# 281# For kernel/drv, set .conf files to mode 0644. Assume all other 282# files there are drivers, and give them mode 0755 and reboot-needed. 283# 284# The (?<!r) construct in the reboot-needed transform is a negative 285# lookbehind assertion: it says "only match this regex if the 286# previously matched text does NOT match regex r." So it will match 287# all files in the various kernel trees, except for .conf files. 288# 289 290 291# 292# Non-global zones should not have content in kernel, usr/kernel (and 293# other kernel dirs) or in boot/. 294# 295 296 297# 298# shared objects should generally have mode 0755 299# 300 301# 302# Catch some of the collections of largely read-only files 303# 304 305 306# 307# For what's left, go with root:bin 0644, +x for directories 308# 309 310# 311# Default values for legacy actions 312# 313# 314# CDDL HEADER START 315# 316# The contents of this file are subject to the terms of the 317# Common Development and Distribution License (the "License"). 318# You may not use this file except in compliance with the License. 319# 320# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 321# or http://www.opensolaris.org/os/licensing. 322# See the License for the specific language governing permissions 323# and limitations under the License. 324# 325# When distributing Covered Code, include this CDDL HEADER in each 326# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 327# If applicable, add the following below this CDDL HEADER, with the 328# fields enclosed by brackets "[]" replaced with your own identifying 329# information: Portions Copyright [yyyy] [name of copyright owner] 330# 331# CDDL HEADER END 332# 333 334# 335# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. 336# 337 338# 339# Pull out the license paths for staging in the proto area. Ignore 340# those with no path separators, as that indicates a file kept in 341# $SRC/pkg/license_files, rather than alongside the associated source. 342# 343 344# 345# Ordering is important here, and the last line wins. 346# 347# The default of "current" is provided by the calling environment, 348# rather than a print operation. 349# 350depend fmri=consolidation/osnet/osnet-incorporation type=require 351depend fmri=__TBD pkg.debug.depend.file=blkdev pkg.debug.depend.path=kernel/drv/amd64 pkg.debug.depend.path=platform/i86hvm/kernel/drv/amd64 pkg.debug.depend.path=platform/i86pc/kernel/drv/amd64 pkg.debug.depend.path=platform/i86xpv/kernel/drv/amd64 pkg.debug.depend.path=usr/kernel/drv/amd64 pkg.debug.depend.reason=kernel/drv/amd64/nvme pkg.debug.depend.type=elf type=require variant.opensolaris.zone=global 352depend fmri=__TBD pkg.debug.depend.file=libc.so.1 pkg.debug.depend.path=lib pkg.debug.depend.path=usr/lib pkg.debug.depend.reason=usr/sbin/nvmeadm pkg.debug.depend.type=elf type=require variant.opensolaris.zone=global 353depend fmri=__TBD pkg.debug.depend.file=libdevinfo.so.1 pkg.debug.depend.path=lib pkg.debug.depend.path=usr/lib pkg.debug.depend.reason=usr/sbin/nvmeadm pkg.debug.depend.type=elf type=require variant.opensolaris.zone=global 354depend fmri=__TBD pkg.debug.depend.file=sata pkg.debug.depend.path=kernel/misc/amd64 pkg.debug.depend.path=platform/i86hvm/kernel/misc/amd64 pkg.debug.depend.path=platform/i86pc/kernel/misc/amd64 pkg.debug.depend.path=platform/i86xpv/kernel/misc/amd64 pkg.debug.depend.path=usr/kernel/misc/amd64 pkg.debug.depend.reason=kernel/drv/amd64/nvme pkg.debug.depend.type=elf type=require variant.opensolaris.zone=global 355