在Fedora系统中,Anaconda安装系统时的包选择界面以及包管理器Pirut界面上面,所有的软件包都是以组的方式组织管理的!每个组都包含一些必选软件包和可选软件包,而一些软件包不属于任何组,无法通过这个结构浏览到!
软件包分类由compsXML文件来定义,位于/var/cache/yum/*/comps*.xml每个软件库(Repository)有自己的comps文件定义。如下格式的XML文件,
short-group-id
human-readable-group-name
true
always-installed-package
installed-by-default-package
not-installed-by-default-package
other-package">conditional-installed-package
...
...
simple-category-id
human-readable-category-name
category-description
5
short-group-id
...
...
如上所示,标签定义分类组,而标签定义包的分组。xml:lang定义的文本可以用来定义软件包描述的不同语言的版本。
那些标签值为mandatory的包会在该组被选中的情况下自动安装。conditional的软件包则是可选的。但是当出现依赖关系需要是该包被视作必须安装包。使用default或optional来修饰该组的可选包,default表示默认选中该组会被安装,否则不被默认安装!
下载本文示例代码
阅读(360) | 评论(0) | 转发(0) |