PKGSRC简介
pkgsrc: The NetBSD Packages Collection
The NetBSD Packages Collection (pkgsrc) 是在NetBSD系统以及其他UNIX-Like系统中构建第三方软件的一个框架。现在包含了7300多个软件包。在所支持的平台上,它使得自由的配置软件成为可能,并切极易构建。
为什么使用 pkgsrc
首先,pkgsrc 是一个基于源码的软件包管理系统。在 Unix/Linux 社区中,软件包的 source vs binary 争论一直没有停息过,但有一点共识,基于源码的软件包管理系统会给用户更多的控制权力,基于二进制的软件包系统则更容易使用。pkgsrc 也可以提供二进制的软件包,但它的优势不在于此,所以这篇文章只专注在使用源码编译软件包方面。
更广泛的软件
pkgsrc 使用的是 BSD 许可证,与其他的自由软件许可证相比,较为宽松。而且,pkgsrc 实际上分发的是软件包的 patch,不会与许多软件的授权许可冲突,避免了二进制软件包和直接分发源码包形式下的种种限制。因此,用户可以广泛地使用大量的优秀软件。例如,在许多自由软件包管理系统中无法包含的 java, mplayer, acrobat reader, opera 这些优秀软件,用户必须自己动手下载安装,但在 pkgsrc 仍可以通过软件包管理系统工具进行安装。
适合哪类用户
如果你是属于喜欢频繁地更新尝试各种软件的用户,并且主要工作在大型的桌面环境下,那么采用 pkgsrc 来管理和更新软件,的确是一件痛苦的事情。比如,当一个 gnome 下的基础组件升级时,经常会牵一发而动全身,需要更新整个 gnome 套件。
如果你是一个系统管理员,需要一个稳定安全的服务器,对 apache 这类软件的安装,既希望能自己设置编译成符合自己要求的系统,又能避免时刻监视安全通报和手动下载源码与打补丁,pkgsrc 正好符合你的要求,它可以帮助你轻松地维护系统,在编译时给你调节系统所需的足够的灵活性,让你定制一套符合自己要求的服务器。
如果你是一个软件开发人员,需要参考借鉴自由软件源码,经常到处搜寻代码范例。由于 pkgsrc 已经按照功能对数千套自由软件进行了分类,可以让你方便地找到和下载自由软件的源码。另外,在软件的编译安装过程中,你可以同时学习到成熟软件所采用的项目管理方法。
适用的系统
pkgsrc 可以广泛地应用到 Unix/Linux 系统上,现在 NetBSD、 DragonFly BSD 和 FreeDarwin 是正式采用它作为自己软件包管理的系统,SUN 也推荐在 Solaris 上面使用 pkgsrc 来安装第三方的软件。对于其他只提供 base 和使用二进制软件包管理系统的 GNU/Linux 发行版,也都可以使用 pkgsrc。