[fedora-india] Tip of the day: Package Groups

Rahul Sundaram sundaram at fedoraproject.org
Mon Jan 5 10:49:29 UTC 2009


Hi,

You are probably already familiar with the concept of groupinstall in 
yum which allows for example, installing LXDE desktop environment in one 
go.

# yum grouplist - shows a list of groups

# yum groupinstall "SUGAR Desktop Environment" - installs sugar 
environment developed for OLPC.

Unlike meta packages which are essentially empty packages which depends 
on a set of other packages, groups (defined via comps.xml) is more 
flexible and doesn't require rebuilding packages to redefine the set to 
be installed and can have mandatory, default, optional and conditional 
types.

The format is defined in more detail at

https://fedoraproject.org/wiki/PackageMaintainers/CompsXml

  * Mandatory - selected by default and cannot be unselected during 
installation

  * Default - selected by default but can be unselected

  * Optional - not selected by default

  * Mandatory - selected depending on the presence of other packages

The last one is interesting.  If you want say, Hindi support, you can do

# yum groupinstall hindi-support

This can optionally pull in the Openoffice.org hindi support sub-package 
depending on whether or not, Openoffice.org was already installed.  yum 
groupinfo on any particular group would let you know, what each group 
contains and the types of various packages as well.

Hidden groups:
-------------

Groups can also be defined as hidden by package maintainers so that it 
is not normally end user visible. Language support groups are normally 
hidden. If you would like to see such groups, you can do

# yum grouplist hidden

The @ trick
------------

In the good old days of up2date, groups used to be indicated with @ and 
this is the same in kickstart as well. Recently this has been added to 
yum as well. So instead of doing yum groupinstall foo, you can very well 
do yum install @foo. This works for all the other yum commands as well.

Aliases
-------

Many of the groups have an alias defined in comps.xml file. Normally 
when users want to figure out, how to install a group, they do a yum 
grouplist and then copy paste that to the groupinstall. Instead, if you 
note the alias, it is much easier to type. Combing that with the @ trick 
mentioned earlier, you can for example, do

# yum install @sugar-desktop.

This works well for say kde-desktop or lxde-desktop as well.  I don't 
think yum supports listing aliases directly so I generally lookup, the 
xml file itself at

http://cvs.fedoraproject.org/viewvc/comps/comps-f10.xml.in?view=markup

There are dozens of yum plugins if you want to list more data. We will 
look at those another day.  Hope that helps.

Rahul




More information about the Fedora-india mailing list