Am Dienstag, den 07.08.2012, 13:32 -0400 schrieb Bill Nottingham:
This is an annoucement/description for what's going to change in comps for:
	https://fedoraproject.org/wiki/Features/ReworkPackageGroups

Bill,

if this is an announcement, please use devel-announce. I am busy with my dayjob and completely missed this mail. I know that now it's too late to speak up, nevertheless I will because I have some concerns and a lot of questions.

As you've noticed, the package selection screen has changed in anaconda -

How should I have noticed? By the time you wrote your mail anaconda was hardly testable, even with F18 Beta TC2 I didn't manage to do a single successful install yet.

And even if anaconda worked properly, you should keep in mind that the majority of the people affected by your changes are volunteers that do not necessarily have the time to keep rawhide development closely.

there is a list of choices to install on the left pane, and a list of
options in the right pane. We want to describe these choices in comps. Here
is how.

The choices on the left side are called 'environments'. They are defined
in comps like so:

  <environment>
    <id>gnome-desktop</id>
    <name>GNOME Desktop</name>
    <description>GNOME is a desktop.</description>
    <display_order>10</display_order>
    <grouplist>
        <groupid>base-x</groupid>
        <groupid>base</groupid>
        <groupid>core</groupid>
        <groupid>fonts</groupid>
        <groupid>input-methods</groupid>
        <groupid>admin-tools</groupid>
        <groupid>dial-up</groupid>
        <groupid>hardware-support</groupid>
        <groupid>printing</groupid>
        <groupid>graphical-internet</groupid>
        <groupid>gnome-desktop</groupid>
    </grouplist>
    <optionlist>
        <groupid>sound-and-video</groupid>
        <groupid>office</groupid>
        <groupid>eclipse</groupid>
        <groupid>games</groupid>
        <groupid>design-suite</groupid>
        <groupid>electronic-lab</groupid>
    </optionlist>
  </environment>

Each environment has a grouplist that lists the groups that make up this
enviroment - these are the required groups that will be installed if you
select this environment. It also has a list of options for that environment,
which are also groups in comps. Note that these groups do not need to have
optional packages; there is no individual package selection in anaconda.

That is euphemism. What you mean is: Groups *cannot* have optional packages, everything is required. This is just like Windows where one is forced to install everything and remove unwanted stuff later. We discussed this in Blacksburg and I was under the impression that a lot of us did not like this idea. Nevertheless you said that this decision (who made it?) was not up for discussion. I'm sorry, but with this statement, you already killed the discussion before it even started and lost valuable feedback.

What was wrong with the previous design where you had a "Optional packages" button? How can a package maintainer define a default, but not mandatory package?

Example: The Xfce SIG decided to not install xfce4-icon-theme by default. It just takes space and we don't use it. Nevertheless we want to enable users to install it easily. How would we do that? Define an extra group with only xfce4-icon-theme for the Xfce environment?

And even if I cannot do it in anacoda any longer, how would I do it in PackageKit? How can I make something show up in a group there without making if mandatory? How do the new groups translate into PackageKit groups? Will all options be listed in the side pane? Will they dynamically change? Will all packages of a group be selected? How to define conditionals?

As you see there are a lot of questions. And there hardly is any documentation. Did I miss something or is this really all?
https://fedoraproject.org/w/index.php?title=How_to_use_and_edit_comps.xml_for_package_groups&diff=298968&oldid=193124

Whenever an environment is selected in anaconda in the left pane, the right
pane will be populated with:
- the list of options for that environment in comps
- any other user-visible groups in comps
The latter is for compatibility with add-on repoitoriess that exist now.

All the component groups of environments, and groups available as options,
will be able to be installed with kickstart and/or yum post-install via @<name>
syntax. Future work may be done in yum/kickstart to allow specifying
environments directly.

That means what exactly?

Please don't get me wrong, Bill: I appreciate your efforts and your idea to make things easier. Your goal was to allow easy environment specific installations, so the result is just like what you get from a spin. We could have achieved this with the old comps format, without loosing any flexibility. But due to the lack of flexibility we now have, we'll probably have to remove many applications form the groups and as a result, spins will be continue to be different from the installs AND things will become more complicated for users.

Best regards,
Christoph