diff -up yum-3.4.3/docs/comps.rng.orig yum-3.4.3/docs/comps.rng
--- yum-3.4.3/docs/comps.rng.orig 2011-06-28 22:27:22.000000000 +0200
+++ yum-3.4.3/docs/comps.rng 2016-06-30 14:30:03.980476903 +0200
@@ -21,14 +21,22 @@
<ref name="group"/>
</oneOrMore>
<zeroOrMore>
+ <ref name="environment"/>
+ </zeroOrMore>
+ <zeroOrMore>
<ref name="category"/>
</zeroOrMore>
- <optional>
- <interleave><!-- We don't care what order these are in -->
+ <interleave><!-- We don't care what order these are in -->
+ <optional>
<ref name="whiteout"/>
+ </optional>
+ <optional>
<ref name="blacklist"/>
- </interleave>
- </optional>
+ </optional>
+ <optional>
+ <ref name="langpacks"/>
+ </optional>
+ </interleave>
</element>
</define>
<define name="group">
@@ -37,14 +45,18 @@
<a:documentation>This defines a package group.</a:documentation>
<interleave>
<ref name="id"/>
- <element name="default" a:defaultValue="true">
- <a:documentation>Should the group be enabled by default?</a:documentation>
- <ref name="boolean"/>
- </element>
- <element name="uservisible" a:defaultValue="true">
- <a:documentation>Should the group be visible to users?</a:documentation>
- <ref name="boolean"/>
- </element>
+ <optional>
+ <element name="default" a:defaultValue="true">
+ <a:documentation>Should the group be enabled by default?</a:documentation>
+ <ref name="boolean"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="uservisible" a:defaultValue="true">
+ <a:documentation>Should the group be visible to users?</a:documentation>
+ <ref name="boolean"/>
+ </element>
+ </optional>
<optional>
<element name="display_order">
<ref name="positiveInteger"/>
@@ -72,6 +84,9 @@
<oneOrMore>
<ref name="groupreq"/>
</oneOrMore>
+ <zeroOrMore>
+ <ref name="metapkg"/>
+ </zeroOrMore>
</element>
</define>
<define name="groupreq">
@@ -79,23 +94,39 @@
<ref name="groupname"/>
</element>
</define>
+ <define name="metapkg">
+ <element name="metapkg">
+ <ref name="packagename"/>
+ <optional>
+ <attribute name="type">
+ <choice>
+ <value>mandatory</value>
+ <value>default</value>
+ <value>optional</value>
+ </choice>
+ </attribute>
+ </optional>
+ </element>
+ </define>
<define name="packagelist">
<element name="packagelist">
- <oneOrMore>
+ <zeroOrMore>
<ref name="packagereq"/>
- </oneOrMore>
+ </zeroOrMore>
</element>
</define>
<define name="packagereq">
<element name="packagereq">
<choice>
- <attribute name="type" a:defaultValue="optional">
- <choice>
- <value>mandatory</value>
- <value>default</value>
- <value>optional</value>
- </choice>
- </attribute>
+ <optional>
+ <attribute name="type" a:defaultValue="optional">
+ <choice>
+ <value>mandatory</value>
+ <value>default</value>
+ <value>optional</value>
+ </choice>
+ </attribute>
+ </optional>
<group>
<attribute name="type" a:defaultValue="conditional">
<choice>
@@ -112,9 +143,30 @@
<ref name="boolean"/>
</attribute>
</optional>
+ <optional>
+ <attribute name="arch">
+ <ref name="string"/>
+ </attribute>
+ </optional>
<ref name="packagename"/>
</element>
</define>
+ <define name="environment">
+ <element name="environment">
+ <interleave>
+ <ref name="id"/>
+ <optional>
+ <element name="display_order">
+ <ref name="positiveInteger"/>
+ </element>
+ </optional>
+ <ref name="grouplist"/>
+ <optional>
+ <ref name="optionlist"/>
+ </optional>
+ </interleave>
+ </element>
+ </define>
<define name="category">
<element name="category">
<interleave>
@@ -135,9 +187,21 @@
</oneOrMore>
</element>
</define>
+ <define name="optionlist">
+ <element name="optionlist">
+ <oneOrMore>
+ <ref name="groupid"/>
+ </oneOrMore>
+ </element>
+ </define>
<define name="groupid">
<element name="groupid">
<ref name="string"/>
+ <optional>
+ <attribute name="default" a:defaultValue="false">
+ <ref name="boolean"/>
+ </attribute>
+ </optional>
</element>
</define>
<define name="id">
@@ -182,6 +246,29 @@
</group>
</choice>
</define>
+ <define name="langpacks">
+ <a:documentation>
+ The "langpacks" item is a list of package-to-langpack mappings used
+ by the yum-langpacks plugin.
+
+ An example is:
+ <match name="foo" install="foo-lang-%s">
+ When the 'foo' package is installed, the 'foo-lang-(language code)' package
+ will be installed for any configured languages.
+ </a:documentation>
+ <element name="langpacks">
+ <zeroOrMore>
+ <element name="match">
+ <attribute name="name">
+ <ref name="string"/>
+ </attribute>
+ <attribute name="install">
+ <ref name="string"/>
+ </attribute>
+ </element>
+ </zeroOrMore>
+ </element>
+ </define>
<define name="blacklist">
<a:documentation>
The "blacklist" is a list of packages that will be *removed* if found
@@ -257,7 +344,7 @@
<data type="string"/>
</define>
<define name="ID">
- <data type="ID"/>
+ <data type="string"/>
</define>
<!-- Should be a regexp -->
<define name="locale">
diff -up yum-3.4.3/yum.spec.orig yum-3.4.3/yum.spec
--- yum-3.4.3/yum.spec.orig 2016-06-30 14:30:03.980476903 +0200
+++ yum-3.4.3/yum.spec 2016-06-30 14:30:35.545325463 +0200
@@ -347,7 +347,7 @@ exit 0
%files -f %{name}.lang
%defattr(-, root, root, -)
-%doc README AUTHORS COPYING TODO INSTALL ChangeLog PLUGINS
+%doc README AUTHORS COPYING TODO INSTALL ChangeLog PLUGINS docs/comps.rng
%if %{move_yum_conf_back}
%config(noreplace) %{_sysconfdir}/yum.conf
%dir %{_sysconfdir}/yum.repos.d