Gentoo Linux Portage

Gentoo is sometimes referred to as a "meta-distribution" due to the flexibility of Portage which allows it to manage other operating systems as well. In addition to Gentoo Linux there exist Portage implementations for FreeBSD, Mac OS X and Sun Solaris.

Portage consists of a hierarchal tree of ebuilds (currently more than 10,000 in Gentoo Linux) and management utilities such as emerge and a suite of related tools packaged as gentoolkit. Ebuilds contain metadata about each package as well as the instructions on how to compile, install and configure a software package. Through the use of profiles and emerge, users and developers can use Portage to install and maintain the packages that make up the underlying operating system and the applications on a system.

Portage derives its name and general design from the BSD ports system of FreeBSD/NetBSD/OpenBSD. Traditionally ports is implemented as a complex tree of Makefiles. Both compile packages from source and allow users to safely install and uninstall software from a system and automatically handle dependencies. The intent behind Portage is to harness the strength of Python to create a next-generation ports system that is more powerful while being easier to use and maintain. A system managed by Portage can be compiled "on the fly". The act of installing Gentoo Linux from scratch involves setting up enough of a working compiler and build environment through which Portage can download source code from the Internet and build the rest of the "core" of the system and any desired applications. However, Portage does support the use of prebuilt packages for those wishing to quickly setup a fully working system.

Browse the Portage Tree

app-accessibility app-admin app-antivirus app-arch app-backup
app-benchmarks app-cdr app-crypt app-dicts app-doc
app-editors app-emacs app-emulation app-forensics app-i18n
app-laptop app-leechcraft app-misc app-mobilephone app-office
app-officeext app-pda app-portage app-shells app-text
app-vim app-xemacs dev-ada dev-cpp dev-db
dev-dotnet dev-embedded dev-games dev-haskell dev-java
dev-lang dev-libs dev-lisp dev-lua dev-ml
dev-perl dev-php dev-python dev-qt dev-ruby
dev-scheme dev-tcltk dev-tex dev-texlive dev-util
dev-vcs eclass games-action games-arcade games-board
games-emulation games-engines games-fps games-kids games-misc
games-mud games-puzzle games-roguelike games-rpg games-server
games-simulation games-sports games-strategy games-util gnome-base
gnome-extra gnustep-apps gnustep-base gnustep-libs gpe-base
gpe-utils java-virtuals kde-base kde-misc licenses
lxde-base mail-client mail-filter mail-mta media-fonts
media-gfx media-libs media-plugins media-radio media-sound
media-tv media-video metadata net-analyzer net-dialup
net-dns net-firewall net-fs net-ftp net-im
net-irc net-libs net-mail net-misc net-nds
net-news net-nntp net-p2p net-print net-proxy
net-voip net-wireless net-zope perl-core profiles
razorqt-base rox-base rox-extra sci-astronomy sci-biology
sci-calculators sci-chemistry sci-electronics sci-geosciences sci-libs
sci-mathematics sci-misc sci-physics sci-visualization scripts
sec-policy sys-apps sys-auth sys-block sys-boot
sys-cluster sys-devel sys-firmware sys-freebsd sys-fs
sys-infiniband sys-kernel sys-libs sys-power sys-process
virtual www-apache www-apps www-client www-misc
www-plugins www-servers x11-apps x11-base x11-drivers
x11-libs x11-misc x11-plugins x11-proto x11-terms
x11-themes x11-wm xfce-base xfce-extra