This is Gentoo's testing wiki. It is a non-operational environment and its textual content is outdated.

Please visit our production wiki at https://wiki.gentoo.org

Project:Prefix

From Gentoo Wiki (test)
Jump to:navigation Jump to:search
Gentoo Prefix
Description To bring out the virtues of Gentoo on different operating systems, the Gentoo Prefix project develops and maintains a way of installing Gentoo systems in a non-standard location, designated by a "prefix".
Project email prefix@gentoo.org
IRC channel #gentoo-prefix
Lead(s)
No lead election date set
Member(s)
Subproject(s)
(and inherited member(s))
Parent Project Gentoo
Project listing

To bring out the virtues of Gentoo Linux on different operating systems, the Gentoo Prefix project develops and maintains a way of installing Gentoo systems in a non-standard location, designated by a "prefix".

Usually, Gentoo Linux's package manager (portage) installs in the root of the filesystem hierarchy known as /. On systems other than Gentoo Linux, this usually results in problems, due to conflicts of software packages, unless the OS is adapted like Gentoo FreeBSD. Instead, Gentoo Prefix installs within an offset, known as a prefix, allowing users to install Gentoo in another location in the filesystem hierarchy, hence avoiding conflicts. Next to this offset, Gentoo Prefix runs unprivileged, meaning no root user or rights are required to use it.

By using an offset (the "prefix" location), it is possible for many "alternative" user groups to benefit from a large part of the packages in the Gentoo Linux Portage tree. Currently users of the following systems successfully run Gentoo Prefix: Mac OS X on Intel, Linux on x86, x86_64 and arm, Solaris 10 on Sparc, Sparc/64, x86 and x86_64, AIX on PPC, Windows on x86 and x86_64. Other platforms have been successfully used in the past.

Getting started

Bootstrapping

To get a prefixed Portage installed on your system, you need to go through a few steps we call bootstrapping. Note that, for systems where bash is missing, you need to bootstrap it first with the bootstrap-bash.sh script.

Helper scripts

To ease the setup of a prefixed Portage installation, the Gentoo Prefix project provides a script called bootstrap-prefix.sh. This script is a sort of kickstart in the bootstrap process, automating downloading the Portage tree, installing Portage and the necessary temporary helper applications. In addition, it tries to setup a profile and prepares those settings that it can deduce automatically.

Bootstrap guides

The following guides give a detailed description on how to install a Gentoo Prefix system:

Special notes for Microsoft Windows

Gentoo Prefix can be bootstrapped on Cygwin (64bit). As Microsoft has discontinued the Interix system, we had no option than to follow that decision, even if the outdated Interix installers still might work.

With little restrictions and additional setup, Windows users can install Gentoo Prefix in Cygwin using the General bootstrap process. The documentation and ISO images for the Interix port of Gentoo Prefix on our mirrors still applies to Windows XP and Server 2003.

Developer platforms

Platform matrix

To keep track of the supported platforms, the following matrix is maintained. It also provides feedback on which developer is maintaining the platform or has direct access to such systems.

Fabian Groffen (grobian) Michael Haubenwallner (haubi) Benda Xu (heroxbd) other support
x86-linux x o good
amd64-linux x o x excellent
arm-linux x good
arm64-linux x good
ppc-aix x ok
x64-cygwin x ok
ppc-macos o bad
x86-macos o a bad
x64-macos x a excellent
m68k-mint a ok
sparc-solaris o x a good
sparc64-solaris o a bad
x86-solaris o x a good
x64-solaris x good
x86-winnt o bad

Legend:

Symbol Meaning
x actively maintained by developer
o accessible to developer
v outdated
a actively maintained by a user/contributor
e experimental effort by user/contributor

A community-maintained table is also available here.

Resources

Resources offered by the prefix project include:

  • Technical documentation - How Gentoo Prefix works, and what changes are necessary to get ebuilds working.
  • Use cases - An article with a global overview of Gentoo Prefix, including use cases examplifying who could benefit from a Prefix installation.
  • FAQ - Frequently Asked Questions about the Gentoo Prefix project.
  • Gentoo On Unrooted Android - Gentoo Prefix on Android

Hall of Fame

Over time, developers come and go again. Some mysteriously disappear, others loose interest and decide to leave. For all past contributors we would like to express our gratitude towards them for helping the Prefix project to become what it is today.

Past Prefix developers Contributions
ferringb Initial Portage developer to start the Prefix branch.
kito First prototypes of Prefix using a tree, Mac OS X installer, many first time engineering and development tasks.
exg Prefix Portage maintainer.
genstef Import of gtk+, qt4 and X11 applications for Mac OS X.
pipping Many package additions for Perl, Python, Ruby and Java, lots of Mac OS X targeted fixes and features, pioneer for Darwin9 (Leopard 10.5) support.
drizzt Mostly reviving Solaris 9 support, by fixing packages in the tree.
Christian Faulhammer (fauli) Gave FreeBSD 8 support a boost, some Interix testing.
Markus Duft (mduft) Gentoo Prefix on Interix and Windows.
Jeremy Olexa (darkside) Lots of support for various arches, merges to gx86, user support.
redlizard Initiated Prefix/libc, early works of the RAP (RAP Aint Prefix) project.

This page is based on a document formerly found on our main website gentoo.org.
The following people contributed to the original document: Fabian Groffen (grobian)
They are listed here because wiki history does not allow for any external attribution. If you edit the wiki article, please do not add yourself here; your contributions are recorded on each article's associated history page.