Bug 1179903

Summary: RFE: for environments, provide a means of listing which groupids in optionlist are default
Product: [Fedora] Fedora Reporter: David Shea <dshea>
Component: libcompsAssignee: Jindrich Luza <jluza>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: jluza, jsilhan
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-01-08 14:41:25 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1179905    

Description David Shea 2015-01-07 18:42:25 UTC
For example, here is the current rawhide Xfce environment comps definition:

  <environment>
    <id>xfce-desktop-environment</id>
    <_name>Xfce Desktop</_name>
    <_description>A lightweight desktop environment that works well on low end machines.</_description>
    <display_order>15</display_order>
    <grouplist>
      <groupid>base-x</groupid>
      <groupid>standard</groupid>
      <groupid>core</groupid>
      <groupid>admin-tools</groupid>
      <groupid>dial-up</groupid>
      <groupid>fedora-release-nonproduct</groupid>
      <groupid>fonts</groupid>
      <groupid>input-methods</groupid>
      <groupid>multimedia</groupid>
      <groupid>networkmanager-submodules</groupid>
      <groupid>hardware-support</groupid>
      <groupid>printing</groupid>
      <groupid>guest-desktop-agents</groupid>
      <groupid>xfce-desktop</groupid>
    </grouplist>
    <optionlist>
      <groupid default="true">xfce-apps</groupid>
      <groupid default="true">xfce-media</groupid>
      <groupid>xfce-extra-plugins</groupid>
      <groupid>xfce-office</groupid>
      <groupid>3d-printing</groupid>
      <groupid>cloud-management</groupid>
    </optionlist>
  </environment>

I need a way, given an object for xfce-dekstop-environment, to list "xfce-apps" and "xfce-media". In yum this was exposed as yum.comps.Environment.defaultoptions.

Comment 1 Jindrich Luza 2015-01-08 09:57:55 UTC
Will this help you?

import libcomps

comps = libcomps.Comps()
comps.fromxml_f("comps-rawhide.xml")
print [x.id for x in comps.environments]
env = comps.environments["xfce-desktop-environment"]
print [x.name for x in env.option_ids if x.default]

Comment 2 David Shea 2015-01-08 14:41:25 UTC
Perfect. Thanks, and sorry for the noise.