ほとんどのバリアントは任意の数の値を設定できます。たとえば、arch バリアントには、i386、sparc、ppc、arm、またはディストリビューションでサポートされているどんなアーキテクチャーでも設定できます。(Oracle Solaris では i386 と sparc のみが使用されます。)例外は debug バリアントです。debug バリアントには、true または false のみを設定でき、ほかの値では動作が不確定になります。file アクションに非デバッグバージョンとデバッグバージョンの両方がある場合、次の例に示すように、両方のバージョンに該当する debug バリアントが明示的に設定されている必要があります。
file group=sys mode=0644 overlay=allow owner=root \ path=etc/motd pkg.csize=115 pkg.size=103 preserve=true \ variant.debug.osnet=true file group=sys mode=0644 overlay=allow owner=root \ path=etc/motd pkg.csize=68 pkg.size=48 preserve=true \ variant.debug.osnet=false
Oracle Solaris では、次のバリアントタグが一般に使用されます。
|
ファセットはブール型です。それらには true (有効) または false (無効) のみ設定できます。デフォルトで、イメージ内のすべてのファセットは、true に設定されていると見なされます。アクションのファセットタグの値には true のみを指定すべきであり、それ以外の値では動作が不確定になります。
イメージに設定されるファセットは、doc.man などの完全なファセットか、locale.* などのパターンになります。この柔軟性は、ファセット名前空間の一部を無効にし、その中の個々のファセットのみを有効にする場合に役立ちます。たとえば、次の例に示すように、すべてのロケールを無効にしてから、1 つか 2 つの特定のロケールのみを有効にすることができます。
$ pkg change-facet 'locale.*=false' [output about packages being updated] $ pkg change-facet locale.en_US=true [output about packages being updated]
次のリストに、Oracle Solaris で使用される小さなファセットタグの例を示します。
facet.devel facet.doc facet.doc.html facet.doc.info facet.doc.man facet.doc.pdf facet.locale.de facet.locale.en_GB facet.locale.en_US facet.locale.fr facet.locale.ja_JP facet.locale.zh_CN