Portage
当前版本 | 3.0.17(2021年3月7日 | )
---|---|
源代码库 | |
编程语言 | Python |
操作系统 | Gentoo Linux和Gentoo/FreeBSD |
平台 | POSIX兼容并支持Python |
类型 | 包管理器 |
许可协议 | GPLv2 |
网站 | http://www.gentoo.org/proj/en/portage/ |
Portage是Gentoo Linux所使用的包管理器,基于ports collection机制。Gentoo因Portage的高度灵活性而被称为元发行版[1]。Gentoo/Alt计划则关注于如何使用Portage管理如BSD、Mac OS X和Solaris等其他操作系统。这些移植中最有名的是Gentoo/FreeBSD计划。
Gentoo的软件包管理器规范计划(Package Manager Specification project,PMS)正致力于Portage的行为的记录标准化,这些措施刻意使Paludis和pkgcore等替代包管理器使用ebuild树和Gentoo系统包。[2]PMS计划的目标是为Portage制定包括特性、ebuild与包管理器行为的权威参考。
概述
[编辑]使用Portage
[编辑]Portage与BSD风格包管理器Ports collection相仿并最早参照了FreeBSD的portage。[3] Portage由Python写成,是Gentoo最重要的工具之一。Portage包含ebuild系统与emerge两个主要部分。ebuild系统构建与安装软件包,emerge为ebuild提供了管理ebuild资源库、解决依赖性与类似问题的接口。(因此这两者的关系与rpm和yum或dpkg和APT的关系相仿。)
Portage有基于GTK+的图形前端Porthole和基于Haskell的图形前端Himerge。
所提供功能
[编辑]Portage主要特色是从源码编译用户所需要安装的软件包。此过程中用户可以调整编译器和目标程序的选项以符合系统需要或自己的喜好。与系统管理相关的功能包括:允许平行版本安装、追踪跨软件包依赖、维护记录已安装软件的数据库、提供本地ebuild库、使本地库与远程库相同步。与个别软件包安装相关的功能有:为目标机器指定编译选项、定制构成软件包的组件。
Portage将ebuild按照稳定程度分为三个级别:stable(如在发行时已无已知的安全问题)、keyword masked(主要对未在目标架构上得到充分测试的包)、hard masked(损坏或极度不安全的包)。
脚注
[编辑]- ^ Gentoo Linux -- About Gentoo. [2013-03-05]. (原始内容存档于2015-03-14).
- ^ Gentoo's official Package Manager Specification (PMS) project. [2013-03-05]. (原始内容存档于2013-04-27).
- ^ Gentoo Linux Documentation - Making the distribution, Part 3. [2013-03-05]. (原始内容存档于2014-12-22).