<group> <id>text-internet</id> <name>Text-based Internet</name> <name xml:lang="it">Internet text-based</name> <description>This group includes text-based email, Web, and chat clients. These applications do not require the X Window System.</description> <description xml:lang="it">Questo gruppo include e-mail, Web e chat client text-based. Tali applicazioni non richiedono il sistema X Window.</description>
<uservisible>true</uservisible> <default>true</default> <grouplist> <groupreq>base</groupreq> </grouplist> <packagelist> <packagereq type="default">fetchmail</packagereq> <packagereq type="optional">epic</packagereq> <packagereq type="optional">lynx</packagereq> <packagereq type="default">mutt</packagereq> <packagereq type="optional">ncftp</packagereq> <packagereq type="optional">pine</packagereq> <packagereq type="default">slrn</packagereq> </packagelist> </group>
http://rhlinux.redhat.com/anaconda/comps.html
The comps file is then broken into several different sections. The first is the group lists, which describe the different groups (or components) available for selection during a Red Hat Linux installation. This includes group names, descriptions and lists of included packages. The second section is a group hierarchy. This defines an ordering of the groups by breaking them down into categories. Finally, there is a section with the list of packages included and their resolved dependencies.
A group has quite a few different attributes which are required for proper operation. The following is a list of attributes and what they're used for. Groups are defined within the <group></group> tag.
A simple group definition:
<group> <id>somegroup</id> <name>Sample Group</name> <default>true</default> <uservisible>false</uservisible> <description>This is a silly sample group</description> <packagelist> <packagereq type="mandatory">bash</packagereq> <packagereq type="default">cpio</packagereq> </packagelist> </group>
packagelist: (REQUIRED) This is a list of packages included within the group. (list)
o packagereq: Name of package to include. (string)
Attributes are:
+ type: Whether the package is a mandatory part of the group, a package which is installed by default with the group, or a package which can be optionally selected for installation as part of a group. (enum: "mandatory", "default", "optional")
+ requires: This package will only be installed if the required package is also installed. Note that this attribute is not guaranteed to continue working with its current semantics in the future.