hello I thought: - groupreq was used to include a group in the "mandatory" way. - metapkg was a kind of groupreq but with the packagereq tag behaviour ==> could be choosen or not during the installation process. but I found in comps.py: -----8<-------------------------------------------------------- if node.name == 'groupreq': type = node.prop ('type') if not type: type = u'mandatory' if type != 'mandatory' and type != 'default' and type != 'optional': raise CompsException group = totext (node.content) self.groups[group] = (type, group) elif node.name == 'metapkg': type = node.prop ('type') if not type: type = u'default' if type != 'default' and type != 'optional': raise CompsException group = totext (node.content) self.metapkgs[group] = (type, group) -----8<--------------------------------------------------------- this means: - a type option could be specified for the groupreq tag, accepting "mandatory", "optional" and "default" values - the metapkg type could only be "default" or "optional" what I don't understand: - what does <groupreq type="optional"> do ? (different behaviour than <metapkg type="optional") - same for the "default" type. -- Alain