元软件包和软件包组

来自 Arch Linux 中文维基

软件打包者可以将一组相关的软件包定义为元软件包软件包组。通过安装一个元软件包或软件包组,可以同时安装一系列的软件包。虽然软件包组不是一个软件包,但安装操作和一个真正的软件包相同。请参考 pacman#安装包组PKGBUILD#groups

区别[编辑 | 编辑源代码]

元包和普通包的区别在于元包是空的,存在元包纯粹是为了通过依赖关系将相关包链接在一起。元包,通常(但不总是)以“-meta”结尾,提供与包组类似的功能,因为它可以同时安装或卸载多个相关包。

每个方式都有其优缺点:

元软件包

  • 安装方法和其它软件包一样(pacman#安装指定的包)。
  • 删除方法和其他软件包一样(pacman#删除软件包)。
  • 所有后续加入的软件包都会在更新时自动安装。
  • 无法选择仅安装元软件包依赖的部分软件。
  • 只有删除了元软件包之后,才能删除其依赖的软件包。

软件包组

  • 安装软件包组时会可以选择安装哪些软件包(Pacman#安装包组)。
  • 软件包组仅是一个列表,所以无法删除一个软件包组,pacman -R groupname 会尝试删除软件包组中的所有软件。
  • 新加入软件包组的软件不会在更新时自动安装。
  • 可以选择安装组中的部分软件。
  • 可以选择仅删除软件包组中的部分软件。

元软件包[编辑 | 编辑源代码]

最重要的元软件包是 base。包含了 Arch Linux 安装时需要的最小软件集,包含:

内核是可选依赖,请参考发布说明为什么 base 是元软件包

软件包组[编辑 | 编辑源代码]

重要的软件包组是 base-devel包组。包含编译软件需要的主要工具,例如 GCCmake 等。请参阅makepkg#使用[损坏的链接:无效的章节]

参见[编辑 | 编辑源代码]