问题描述
我一直试图理解 Debian 的 contrib 和非自由部分之间的区别,如 Chapter 2 of the Debian Policy Manual 中所述。
contrib 包只是非自由软件的包装吗?就像 Ubuntu 中的 flashplugin-nonfree
一样?
其次,Debian 的非自由部分是否对应于 Ubuntu 的多元宇宙或受限存储库,或者是两者的结合?
最佳回答
简而言之,Ubuntu 的归档分区的含义如下:
1) main
:免费软件,Canonical官方支持
2) universe
:免费软件,不受 Canonical 支持
3) restricted
:Canonical官方支持的非自由软件(主要包括设备驱动程序等)
4) multiverse
:Canonical 不支持的非自由软件(flashplugin-nonfree 在此出现)
Debian 有以下几个部门:
1) main
:所有遵循 DFSG(Debian 自由软件指南)的自由软件
2) contrib
:遵循 DFSG 但依赖于 non-free
中的软件的自由软件。
3)non-free
:各种不遵循DFSG的非自由软件。
由于 Debian 不会根据支持来区分软件包(因为 Debian 社区支持所有软件包),因此 contrib
和 non-free
软件包对应于 Ubuntu 中的 Restricted
/Multiverse
。默认情况下,所有 contrib
和 non-free
包在同步时都会进入 Multiverse
。如果 Canonical 打算支持它们,它们将被移至 restricted
。
次佳回答
non-free
适用于 straight-up 不免费的软件包。唯一的要求是它们是可重新分发的。 Debian项目认为non-free
不是Debian的一部分,只是为了方便用户而提供。
contrib
适用于本身免费但依赖于 non-free
中的包的包。它也不被视为 Debian 的一部分。
由于Debian没有main/restricted和universe/multiverse的区别(并且Ubuntu没有non-free和contrib的区别),non-free和contrib的联合大致对应于restricted和multiverse的联合。