#193 RFE: Recreate comps.xml
Closed: Fixed Opened by kanarip.

let's see if we can recreate the comps files from whatever comps files are in the repositories we load, so that anaconda displays as much as it can but not more then there is


We can now choose between the revisor recreated comps from CVS or the comps from the repositories loaded, but we do not yet recreate the comps.xml file that ends up on the media; for that we would use the Group: RPM header??

We can now choose between the revisor recreated comps from CVS or the comps from the repositories loaded, but we do not yet recreate the comps.xml file that ends up on the media; for that we would use the Group: RPM header??

Please review the attached patch.
It provides basic comps.xml filtering functionality, removing any extra packages and groups that will not end up on install media.

For some details please see this thread:
http://lists.fedoraunity.org/pipermail/revisor-users/2007-November/000521.html

Please review the attached patch.
It provides basic comps.xml filtering functionality, removing any extra packages and groups that will not end up on install media.

For some details please see this thread:
http://lists.fedoraunity.org/pipermail/revisor-users/2007-November/000521.html

I forgot to say that the patch is against revisor-2.0.5-9.fc9

I forgot to say that the patch is against revisor-2.0.5-9.fc9

New implementation of filterComps() and added insertPackagesWithoutComps()
pungi.patch

New implementation of filterComps() and added insertPackagesWithoutComps()
pungi.patch

As of the second patch there is a new implementation of filterComps()
It is eliminating empty groups (as before), + groups that list only mandatory packages (e.g. Virtualization will list kernel-xen and appear as empty category).

Added is insertPackagesWithoutComps() which is creating a dummy group for all packages not listed explicitly in comps.xml. This will bring in any 3rd party packages as well as packages brought in as dependencies (e.g. libraries).
The dummy group and all packages are marked as default.

Please revise and feel free to include upstream the parts you like.

PS: the comps cleanup code is probably something that may go in Pungi as well.

As of the second patch there is a new implementation of filterComps()
It is eliminating empty groups (as before), + groups that list only mandatory packages (e.g. Virtualization will list kernel-xen and appear as empty category).

Added is insertPackagesWithoutComps() which is creating a dummy group for all packages not listed explicitly in comps.xml. This will bring in any 3rd party packages as well as packages brought in as dependencies (e.g. libraries).
The dummy group and all packages are marked as default.

Please revise and feel free to include upstream the parts you like.

PS: the comps cleanup code is probably something that may go in Pungi as well.

I have applied the revisor patch in http://kanarip.fedorapeople.org/revisor/2.0.5-13git20071123/

Please see if this is what you had in mind for it to happen.

I want to add to the second patch, that removing groups that only have mandatory packages disables additional repositories to add to that group when the comps from the spun media is being reused, and it disables selection even of the mandatory package.

I have applied the revisor patch in http://kanarip.fedorapeople.org/revisor/2.0.5-13git20071123/

Please see if this is what you had in mind for it to happen.

I want to add to the second patch, that removing groups that only have mandatory packages disables additional repositories to add to that group when the comps from the spun media is being reused, and it disables selection even of the mandatory package.

Patch applied to 2.0.5-13
2.0.5-13-compsfilter.patch

Patch applied to 2.0.5-13
2.0.5-13-compsfilter.patch

The applied patch is missing indentations on some lines which causes Python to throw IndentationError:
Lines (from 2.0.5-13-compsfilter.patch) are: 86, 94, 99, 100, 103, 113, 120, 125, 126, 127, 134, 139

The applied patch is missing indentations on some lines which causes Python to throw IndentationError:
Lines (from 2.0.5-13-compsfilter.patch) are: 86, 94, 99, 100, 103, 113, 120, 125, 126, 127, 134, 139

I notices you may be using other indentations then we do from the patches you have submitted, as I had to replace all tabs for 4 spaces each.

You can also use the mock built RPMs as from 2.0.5-9 to 2.0.5-13, some other bugs have been solved as well, or pull from the GIT repository at git://git.fedoraproject.org/git/hosted/revisor -this enables you to work in the source tree directly -see also 'Running Revisor From Source' in http://revisor.fedoraunity.org/documentation/building-revisor-from-source/

I notices you may be using other indentations then we do from the patches you have submitted, as I had to replace all tabs for 4 spaces each.

You can also use the mock built RPMs as from 2.0.5-9 to 2.0.5-13, some other bugs have been solved as well, or pull from the GIT repository at git://git.fedoraproject.org/git/hosted/revisor -this enables you to work in the source tree directly -see also 'Running Revisor From Source' in http://revisor.fedoraunity.org/documentation/building-revisor-from-source/

Implemented. Due to a bug in xslt it is not yet entirely completely what we want but it'll work itself out.

Implemented. Due to a bug in xslt it is not yet entirely completely what we want but it'll work itself out.

Metadata Update from @kanarip:
- Issue assigned to kanarip
- Issue set to the milestone: 2.1.0 Release

Metadata