| .TH "PORTAGE" "5" "Feb 2014" "Portage VERSION" "Portage" |
| .SH NAME |
| portage \- the heart of Gentoo |
| .SH "DESCRIPTION" |
| The current portage code uses many different configuration files, most of which |
| are unknown to users and normal developers. Here we will try to collect all |
| the odds and ends so as to help users more effectively utilize portage. This |
| is a reference only for files which do not already have a man page. |
| |
| All files in the make.profile directory may be tweaked via parent profiles |
| when using cascading profiles. For more info, please see |
| http://www.gentoo.org/proj/en/releng/docs/cascading-profiles.xml |
| .IP Note: |
| If you are looking for information on how to emerge something, please see |
| .BR emerge (1). |
| .SH "SYNOPSIS" |
| .TP |
| \fB/etc/portage/make.profile/\fR or \fB/etc/make.profile/\fR |
| site\-specific overrides go in \fB/etc/portage/profile/\fR |
| .nf |
| deprecated |
| eapi |
| make.defaults |
| packages |
| packages.build |
| package.accept_keywords |
| package.bashrc |
| package.keywords |
| package.mask |
| package.provided |
| package.unmask |
| package.use |
| package.use.force |
| package.use.mask |
| package.use.stable.force |
| package.use.stable.mask |
| parent |
| profile.bashrc |
| use.force |
| use.mask |
| use.stable.mask |
| use.stable.force |
| virtuals |
| .fi |
| .TP |
| .BR /etc/portage/ |
| .nf |
| bashrc |
| categories |
| color.map |
| license_groups |
| .BR make.conf (5) |
| mirrors |
| modules |
| package.accept_keywords |
| package.accept_restrict |
| package.env |
| package.keywords |
| package.license |
| package.mask |
| package.properties |
| package.unmask |
| package.use |
| repos.conf |
| .fi |
| .TP |
| .BR /etc/portage/env/ |
| package-specific bashrc files |
| .TP |
| .BR /etc/portage/profile/ |
| site-specific overrides of \fB/etc/portage/make.profile/\fR |
| .TP |
| .BR /etc/portage/sets/ |
| user\-defined package sets |
| .TP |
| .BR /usr/portage/metadata/ |
| .nf |
| layout.conf |
| .fi |
| .TP |
| .BR /usr/portage/profiles/ |
| .nf |
| arch.list |
| categories |
| info_pkgs |
| info_vars |
| license_groups |
| make.defaults |
| package.mask |
| package.unmask |
| package.use |
| package.use.force |
| package.use.mask |
| package.use.stable.force |
| package.use.stable.mask |
| profiles.desc |
| repo_name |
| thirdpartymirrors |
| use.desc |
| use.force |
| use.local.desc |
| use.mask |
| use.stable.mask |
| use.stable.force |
| .fi |
| .TP |
| .BR /usr/share/portage/config/ |
| .nf |
| make.globals |
| repos.conf |
| .fi |
| .TP |
| .BR /var/cache/edb/ |
| misc internal cache files |
| .TP |
| .BR /var/db/pkg/ |
| database to track installed packages |
| .TP |
| .BR /var/lib/portage/ |
| .nf |
| config |
| world |
| world_sets |
| .fi |
| .SH "GLOSSARY" |
| In the following sections, some terminology may be foreign to you or used |
| with meaning specific to Portage. Please see the referenced manpages for |
| more detailed explanations. |
| .RS |
| .TP |
| .B DEPEND atom |
| An atom is either of the form category/package or consists of an operator |
| followed by category/package followed by a hyphen and a version specification. |
| An atom might be suffixed by a slot specification. |
| .br |
| More reading: |
| .BR ebuild (5) |
| |
| .B Extended Atom Syntax |
| .br |
| The following atom syntax extensions are only supported in user |
| configuration files and command line arguments for programs such as |
| \fBemerge(1)\fR: |
| .RS |
| .TP |
| .B Repository Constraints |
| Atoms with repository constraints have a '::' separator appended to the |
| right side, followed by a repository name. Each repository name should |
| correspond to the value of a \fBrepo_name\fR entry from one of the |
| repositories that is configured in \fBrepos.conf\fR file. |
| |
| .I Examples: |
| .nf |
| # match sed from the 'gentoo' repository |
| sys\-apps/sed::gentoo |
| # match kdelibs from the 'kde\-testing' repository |
| kde\-base/kdelibs::kde\-testing |
| # match empathy from the 'gnome' repository |
| net\-im/empathy::gnome |
| .fi |
| .TP |
| .B Wildcard Patterns |
| Atoms containing wildcard patterns are of the form category/package, where |
| the special '*' wildcard character substitutes for an arbitrary number |
| of normal characters. More than one '*' character is allowed, but not two |
| next to each other. |
| |
| .I Examples: |
| .nf |
| # match anything with a version containing 9999, which can be used in |
| # package.mask to prevent emerge --autounmask from selecting live ebuilds |
| =*/*-*9999* |
| # match anything with a version containing _beta |
| =*/*-*_beta* |
| # match anything from the 'sys\-apps' category |
| sys\-apps/* |
| # match packages named 'zlib' from any category |
| */zlib |
| # match any package from a category that begins with 'net\-' |
| net\-*/* |
| # match any package name from any category |
| */* |
| # match any package from the 'gentoo' repository |
| */*::gentoo |
| .fi |
| .RE |
| .TP |
| .B KEYWORD |
| Each architecture has a unique KEYWORD. |
| .br |
| More reading: |
| .BR ebuild (5) |
| .TP |
| .B virtual |
| A DEPEND atom that is part of the "virtual" category. They are used |
| when different packages can satisfy a dependency and only one of them is |
| needed. |
| .br |
| More reading: |
| .BR ebuild (5) |
| .RE |
| .SH "SPECIFIC FILE DESCRIPTIONS" |
| .TP |
| \fB/etc/portage/make.profile/\fR or \fB/etc/make.profile/\fR |
| This is usually just a symlink to the correct profile in |
| \fB/usr/portage/profiles/\fR. Since it is part of the portage tree, it |
| may easily be updated/regenerated by running `emerge \-\-sync`. It defines |
| what a profile is (usually arch specific stuff). If you need a custom |
| profile, then you should make your own \fBmake.profile\fR |
| directory and populate it. However, if you just wish to override some |
| settings, use \fB/etc/portage/profile/\fR (it supports all of the same file |
| types that \fBmake.profile\fR does, except parent). Do NOT edit the |
| settings in \fBmake.profile\fR because they WILL be lost with the next |
| `emerge \-\-sync`. If both \fB/etc/portage/make.profile/\fR and |
| \fB/etc/make.profile/\fR exist, then \fB/etc/portage/make.profile/\fR |
| will be preferred. |
| |
| Any file in this directory, directories of other profiles or top-level |
| "profiles" directory that begins with "package." or "use." can be more than |
| just a flat file. If it is a directory, then all the files in that directory |
| will be sorted in ascending alphabetical order by file name and summed together |
| as if it were a single file. Note that this behavior is only supported since |
| portage-2.1.6.7, and it is not included in PMS at this time. |
| |
| .I Example: |
| .nf |
| ${repository_location}/profiles/package.mask/removals |
| ${repository_location}/profiles/package.mask/testing |
| .fi |
| .RS |
| .TP |
| .BR deprecated |
| The existence of this file marks a profile as deprecated, meaning it is |
| not supported by Gentoo anymore. The first line must be the profile to which |
| users are encouraged to upgrade, optionally followed by some instructions |
| explaining how they can upgrade. |
| |
| .I Example: |
| .nf |
| default-linux/x86/2005.0 |
| # emerge -n '>=sys-apps/portage-2.0.51' |
| # rm -f /etc/portage/make.profile |
| # ln -s /usr/portage/profiles/default-linux/alpha/2005.0 \ |
| /etc/portage/make.profile |
| .fi |
| .TP |
| .BR eapi |
| The first line of this file specifies the \fBEAPI\fR to which files in the |
| same directory conform. See \fBebuild\fR(5) for information about \fBEAPI\fR |
| and related features. Beginning with \fBEAPI 5\fR, new USE |
| configuration files are supported: use.stable.mask, |
| use.stable.force, package.use.stable.mask and |
| package.use.stable.force. These files behave similarly to |
| previously supported USE configuration files, except that they |
| only influence packages that are merged due to a stable keyword. |
| .TP |
| .BR make.defaults |
| The profile default settings for Portage. The general format is described |
| in \fBmake.conf\fR(5). The \fImake.defaults\fR for your profile defines a |
| few specific variables too: |
| |
| .PD 0 |
| .RS |
| .TP |
| .BR ARCH |
| Architecture type (x86/ppc/hppa/etc...). |
| .TP |
| \fBIUSE_IMPLICIT\fR = \fI[space delimited list of USE flags]\fR |
| Defines implicit \fBIUSE\fR for ebuilds using \fBEAPI 5\fR or |
| later. Flags that come from \fBUSE_EXPAND\fR or |
| \fBUSE_EXPAND_UNPREFIXED\fR variables do not belong in |
| \fBIUSE_IMPLICIT\fR, since \fBUSE_EXPAND_VALUES_*\fR variables |
| are used to define implicit \fBIUSE\fR for those flags. See |
| \fBebuild\fR(5) for more information about \fBIUSE\fR. |
| .TP |
| .B USERLAND = \fI"GNU"\fR |
| Support BSD/cygwin/etc... |
| .TP |
| \fBUSE_EXPAND\fR = \fI[space delimited list of variable names]\fR |
| Any variable listed here will be used to augment USE by inserting a new flag |
| for every value in that variable, so USE_EXPAND="FOO" and FOO="bar bla" results |
| in USE="foo_bar foo_bla". |
| .TP |
| \fBUSE_EXPAND_HIDDEN\fR = \fI[space delimited list of variable names]\fR |
| Names of \fBUSE_EXPAND\fR variables that should not be shown in the verbose |
| merge list output of the \fBemerge\fR(1) command. |
| .TP |
| \fBUSE_EXPAND_IMPLICIT\fR = \fI[space delimited list of variable names]\fR |
| Defines \fBUSE_EXPAND\fR and \fBUSE_EXPAND_UNPREFIXED\fR |
| variables for which the corresponding USE flags may have |
| implicit \fBIUSE\fR for ebuilds using \fBEAPI 5\fR or later. |
| .TP |
| \fBUSE_EXPAND_UNPREFIXED\fR = \fI[space delimited list of variable names]\fR |
| Any variable listed here will be used to augment USE by |
| inserting a new flag for every value in that variable, so |
| USE_EXPAND_UNPREFIXED="FOO" and FOO="bar bla" results in |
| USE="bar bla". |
| .TP |
| \fBUSE_EXPAND_VALUES_ARCH\fR = \fI[space delimited list of ARCH values]\fR |
| Defines ARCH values used to generate implicit |
| \fBIUSE\fR for ebuilds using \fBEAPI 5\fR or later. |
| .TP |
| \fBUSE_EXPAND_VALUES_ELIBC\fR = \fI[space delimited list of ELIBC values]\fR |
| Defines ELIBC values used to generate implicit |
| \fBIUSE\fR for ebuilds using \fBEAPI 5\fR or later. |
| .TP |
| \fBUSE_EXPAND_VALUES_KERNEL\fR = \fI[space delimited list of KERNEL values]\fR |
| Defines KERNEL values used to generate implicit |
| \fBIUSE\fR for ebuilds using \fBEAPI 5\fR or later. |
| .TP |
| \fBUSE_EXPAND_VALUES_USERLAND\fR = \fI[space delimited list of USERLAND \ |
| values]\fR |
| Defines USERLAND values used to generate implicit |
| \fBIUSE\fR for ebuilds using \fBEAPI 5\fR or later. |
| .TP |
| .B ELIBC = \fI"glibc"\fR |
| Support uClibc/BSD libc/etc... |
| .TP |
| .B PROFILE_ONLY_VARIABLES = \fI"ARCH"\fR |
| Prevent critical variables from being changed by the user in make.conf |
| or the env. |
| .TP |
| .BR PROFILE_ARCH |
| Distinguish machines classes that have the same \fBARCH\fR. All sparc |
| machines have ARCH=sparc but set this to either 'sparc32' or 'sparc64'. |
| .TP |
| .BR BOOTSTRAP_USE |
| Special USE flags which may be needed when bootstrapping from stage1 to stage2. |
| .RE |
| .PD 1 |
| .TP |
| .BR packages |
| Provides the list of packages that compose the special \fIsystem\fR set. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- one DEPEND atom per line |
| \- packages to be added to the system set begin with a * |
| \- atoms without * only appear for legacy reasons |
| .fi |
| .I Note: |
| In a cascading profile setup, you can remove packages in children |
| profiles which were added by parent profiles by prefixing the atom with |
| a '\-'. |
| |
| .I Example: |
| .nf |
| # i am a comment ! |
| # pull in a version of glibc less than 2.3 |
| *<sys\-libs/glibc\-2.3 |
| # pull in any version of bash |
| *app\-shells/bash |
| # pull in a version of readline earlier than 4.2 |
| *<sys\-libs/readline\-4.2 |
| .fi |
| .TP |
| .BR packages.build |
| A list of packages (one per line) that make up a stage1 tarball. Really only |
| useful for stage builders. |
| .TP |
| .BR package.bashrc |
| Per-package bashrc mechanism. Contains a list of bashrc files to be sourced |
| before emerging a given atom. The bashrc files must be stored in bashrc/, in |
| the profile directory. |
| |
| .I Note: |
| .nf |
| \- The bashrc files will be sourced after profile.bashrc for the same profile. |
| \- profile-formats in metadata/layout.conf must contain profile-bashrcs for this |
| to be enabled. |
| .fi |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments). |
| \- one atom per line with space-delimited list of bashrc files. |
| .fi |
| |
| .I Example: |
| .nf |
| # By setting INSTALL_MASK in bashrc/nostandardconf.conf, we can avoid installing |
| # the standard configuration and enable another package to install it. |
| net-misc/dhcp nostardardconf.conf |
| .fi |
| .TP |
| .BR package.provided |
| A list of packages (one per line) that portage should assume have been |
| provided. Useful for porting to non-Linux systems. Basically, it's a |
| list that replaces the \fBemerge \-\-inject\fR syntax. |
| |
| For example, if you manage your own copy of a 2.6 kernel, then you can |
| tell portage that 'sys-kernel/development-sources-2.6.7' is already taken |
| care of and it should get off your back about it. |
| |
| Portage will not attempt to update a package that is listed here unless |
| another package explicitly requires a version that is newer than what |
| has been listed. Dependencies that are satisfied by package.provided |
| entries may cause installed packages satisfying equivalent dependencies |
| to be removed by \fBemerge\fR(1) \fB\-\-depclean\fR actions (see the |
| \fBACTIONS\fR section of the \fBemerge\fR(1) man page for more information). |
| |
| Virtual packages (virtual/*) should not be specified in package.provided, |
| since virtual packages themselves do not provide any files, and |
| package.provided is intended to represent packages that do provide files. |
| Depending on the type of virtual, it may be necessary to add an entry to the |
| virtuals file and/or add a package that satisfies a virtual to |
| package.provided. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- one DEPEND atom per line |
| \- relational operators are not allowed |
| \- must include a version |
| .fi |
| |
| .I Example: |
| .nf |
| # you take care of the kernel |
| sys-kernel/development-sources-2.6.7 |
| |
| # you installed your own special copy of QT |
| x11-libs/qt-3.3.0 |
| |
| # you have modular X but packages want monolithic |
| x11-base/xorg-x11-6.8 |
| .fi |
| .TP |
| \fBpackage.use.force\fR and \fBpackage.use.stable.force\fR |
| Per\-package USE flag forcing. |
| |
| .I Note: |
| In a cascading profile setup, you can remove USE flags in children |
| profiles which were added by parent profiles by prefixing the flag with |
| a '\-'. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- one DEPEND atom per line with space-delimited USE flags |
| .fi |
| |
| .I Example: |
| .nf |
| # force docs for GTK 2.x |
| =x11\-libs/gtk+\-2* doc |
| # unforce mysql support for QT |
| x11\-libs/qt \-mysql |
| .fi |
| .TP |
| \fBpackage.use.mask\fR and \fBpackage.use.stable.mask\fR |
| Per\-package USE flag masks. |
| |
| .I Note: |
| In a cascading profile setup, you can remove USE flags in children |
| profiles which were added by parent profiles by prefixing the flag with |
| a '\-'. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- one DEPEND atom per line with space-delimited USE flags |
| .fi |
| |
| .I Example: |
| .nf |
| # mask docs for GTK 2.x |
| =x11\-libs/gtk+\-2* doc |
| # unmask mysql support for QT |
| x11\-libs/qt \-mysql |
| .fi |
| .TP |
| .BR parent |
| This contains paths to the parent profiles (one per line). They may be either |
| relative (to the location of the profile) or absolute. Most commonly this file |
| contains '..' to indicate the directory above. Utilized only in cascading |
| profiles. |
| |
| When multiple parent profiles are specified, they are inherited in order from |
| the first line to the last. |
| |
| If \fBlayout.conf\fR is new enough, you can also use the <repo>:<path> |
| syntax. The <repo> is the same string as is stored in the \fBrepo_name\fR |
| file (or omitted to refer to the current repo), and <path> is a subdir starting |
| at profiles/. |
| .TP |
| .BR profile.bashrc |
| If needed, this file can be used to set up a special environment for ebuilds, |
| different from the standard root environment. The syntax is the same as for |
| any other bash script. |
| .TP |
| \fBuse.force\fR and \fBuse.stable.force\fR |
| Some USE flags don't make sense to disable under certain conditions. Here we |
| list forced flags. |
| |
| .I Note: |
| In a cascading profile setup, you can remove USE flags in children |
| profiles which were added by parent profiles by prefixing the flag with |
| a '\-'. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- one USE flag per line |
| .fi |
| .TP |
| \fBuse.mask\fR and \fBuse.stable.mask\fR |
| Some USE flags don't make sense on some archs (for example altivec on |
| non\-ppc or mmx on non\-x86), or haven't yet been tested. Here we list |
| the masked ones. |
| |
| .I Note: |
| In a cascading profile setup, you can remove USE flags in children |
| profiles which were added by parent profiles by prefixing the flag with |
| a '\-'. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- one USE flag per line |
| .fi |
| |
| .I Example: |
| .nf |
| # mask doc |
| doc |
| # unmask mysql |
| \-mysql |
| .fi |
| .TP |
| .BR virtuals |
| The virtuals file controls default preferences for virtuals that |
| are defined via the \fBPROVIDE\fR ebuild variable (see |
| \fBebuild\fR(5)). Since Gentoo now uses \fBGLEP 37\fR virtuals |
| instead of \fBPROVIDE\fR virtuals, the virtuals file is |
| irrelevant for all Gentoo ebuilds. However, it is still possible |
| for third\-parties to distribute ebuilds that make use of |
| \fBPROVIDE\fR. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- one virtual and DEPEND atom base pair per line |
| .fi |
| |
| .I Example: |
| .nf |
| # use net\-mail/ssmtp as the default mta |
| virtual/mta net\-mail/ssmtp |
| # use app\-dicts/aspell\-en as the default dictionary |
| virtual/aspell\-dict app\-dicts/aspell\-en |
| .fi |
| .RE |
| .TP |
| .BR /etc/portage/ |
| Any file in this directory that begins with "package." or is repos.conf can be |
| more than just a flat file. If it is a directory, then all the files in that |
| directory will be sorted in ascending alphabetical order by file name and summed |
| together as if it were a single file. |
| |
| .I Example: |
| .nf |
| /etc/portage/package.accept_keywords/common |
| /etc/portage/package.accept_keywords/e17 |
| /etc/portage/package.accept_keywords/kde |
| .fi |
| .RS |
| .TP |
| .BR bashrc |
| If needed, this file can be used to set up a special environment for ebuilds, |
| different from the standard root environment. The syntax is the same as for |
| any other bash script. |
| |
| Additional package-specific bashrc files can be created in /etc/portage/env. |
| .TP |
| .BR categories |
| A simple list of valid categories that may be used in repositories and PKGDIR |
| (see \fBmake.conf\fR(5)). This allows for custom categories to be created. |
| |
| .I Format: |
| .nf |
| \- one category per line |
| .fi |
| |
| .I Example: |
| .nf |
| app\-hackers |
| media\-other |
| .fi |
| .TP |
| .BR color.map |
| Contains variables customizing colors. See \fBcolor.map\fR(5). |
| .TP |
| .BR make.conf |
| The global custom settings for Portage. See \fBmake.conf\fR(5). |
| .TP |
| .BR mirrors |
| Whenever portage encounters a mirror:// style URI it will look up the actual |
| hosts here. If the mirror set is not found here, it will check the global |
| mirrors file at /usr/portage/profiles/thirdpartymirrors. You may also set a |
| special mirror type called "local". This list of mirrors will be checked |
| before GENTOO_MIRRORS and will be used even if the package has |
| RESTRICT="mirror" or RESTRICT="fetch". |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- mirror type followed by a list of hosts |
| .fi |
| |
| .I Example: |
| .nf |
| # local private mirrors used only by my company |
| local ftp://192.168.0.3/mirrors/gentoo http://192.168.0.4/distfiles |
| |
| # people in japan would want to use the japanese mirror first |
| sourceforge http://keihanna.dl.sourceforge.net/sourceforge |
| |
| # people in tawain would want to use the local gnu mirror first |
| gnu ftp://ftp.nctu.edu.tw/UNIX/gnu/ |
| .fi |
| .TP |
| .BR modules |
| This file can be used to override the metadata cache implementation. In |
| practice, portdbapi.auxdbmodule is the only variable that the user will want to |
| override. |
| |
| .I Example: |
| .nf |
| portdbapi.auxdbmodule = portage.cache.sqlite.database |
| .fi |
| |
| After changing the portdbapi.auxdbmodule setting, it may be necessary to |
| transfer or regenerate metadata cache. Users of the rsync tree need to |
| run `emerge \-\-metadata` if they have enabled FEATURES="metadata-transfer" |
| in \fBmake.conf\fR(5). In order to regenerate metadata for repositories |
| not distributing pregenerated metadata cache, run `emerge \-\-regen` |
| (see \fBemerge\fR(1)). If you use something like the sqlite module and want |
| to keep all metadata in that format alone (useful for querying), enable |
| FEATURES="metadata-transfer" in \fBmake.conf\fR(5). |
| .TP |
| \fBpackage.accept_keywords\fR and \fBpackage.keywords\fR |
| Per\-package ACCEPT_KEYWORDS. Useful for mixing unstable packages in with a |
| normally stable system or vice versa. This will allow ACCEPT_KEYWORDS to be |
| augmented for a single package. If both \fBpackage.accept_keywords\fR and |
| \fBpackage.keywords\fR are present, both of them will be used, and values |
| from \fBpackage.accept_keywords\fR will override values from |
| \fBpackage.keywords\fR. The \fBpackage.accept_keywords\fR file is |
| intended to replace the \fBpackage.keywords\fR file, since |
| profiles support a different form of \fBpackage.keywords\fR which |
| modifies effective KEYWORDS (rather than ACCEPT_KEYWORDS). |
| |
| .I Format: |
| .nf |
| \- comment lines begin with # (no inline comments) |
| \- one DEPEND atom per line followed by additional KEYWORDS |
| \- lines without any KEYWORDS imply unstable host arch |
| |
| .I Example: |
| # always use unstable libgd |
| media\-libs/libgd ~x86 |
| # only use stable mplayer |
| media\-video/mplayer \-~x86 |
| # always use unstable netcat |
| net-analyzer/netcat |
| .fi |
| |
| .I Note: |
| .fi |
| In addition to the normal values from ACCEPT_KEYWORDS package.keywords supports |
| three special tokens: |
| |
| .nf |
| \fB*\fR package is visible if it is stable on any architecture |
| \fB~*\fR package is visible if it is in testing on any architecture |
| \fB**\fR package is always visible (KEYWORDS are ignored completely) |
| .fi |
| |
| .I Additional Note: |
| If you encounter the \fB-*\fR KEYWORD, this indicates that the package is known |
| to be broken on all systems which are not otherwise listed in KEYWORDS. For |
| example, a binary only package which is built for x86 will look like: |
| |
| games-fps/quake3-demo-1.11.ebuild:KEYWORDS="-* x86" |
| |
| If you wish to accept this package anyways, then use one of the other keywords |
| in your package.accept_keywords like this: |
| |
| games-fps/quake3-demo x86 |
| |
| .TP |
| .BR package.accept_restrict |
| This will allow ACCEPT_RESTRICT (see \fBmake.conf\fR(5)) to be augmented for a |
| single package. |
| |
| .I Format: |
| .nf |
| \- comment lines begin with # (no inline comments) |
| \- one DEPEND atom per line followed by additional RESTRICT tokens |
| .fi |
| .TP |
| .BR package.env |
| Per\-package environment variable settings. Entries refer to |
| environment files that are placed in the \fB/etc/portage/env/\fR |
| directory and have the same format as \fBmake.conf\fR(5). Note that these |
| files are interpreted much earlier than the package\-specific \fIbashrc\fR |
| files which are described in a later section about \fB/etc/portage/env/\fR. |
| Beginners should be careful to recognize the difference between these two types |
| of files. When environment variable settings are all that's needed, |
| \fBpackage.env\fR is the recommended approach to use. |
| |
| .I Format: |
| .nf |
| \- comment lines begin with # (no inline comments) |
| \- one DEPEND atom per line followed by name(s) of environment file(s) |
| .fi |
| |
| .I Example: |
| .nf |
| # use environment variables from /etc/portage/env/glibc.conf for the glibc \ |
| package |
| sys\-libs/glibc glibc.conf |
| .fi |
| |
| .TP |
| .BR package.license |
| This will allow ACCEPT_LICENSE (see \fBmake.conf\fR(5)) to be augmented for a |
| single package. |
| |
| .I Format: |
| .nf |
| \- comment lines begin with # (no inline comments) |
| \- one DEPEND atom per line followed by additional licenses or groups |
| .fi |
| .TP |
| .BR package.mask |
| A list of package atoms to mask. Useful if specific versions of packages do |
| not work well for you. For example, you swear by the Nvidia drivers, but only |
| versions earlier than 1.0.4496. No problem! |
| |
| .I Format: |
| .nf |
| \- comment lines begin with # (no inline comments) |
| \- one DEPEND atom per line |
| .fi |
| |
| .I Example: |
| .nf |
| # mask out versions 1.0.4496 of the nvidia |
| # drivers and later |
| >=media\-video/nvidia\-kernel\-1.0.4496 |
| >=media\-video/nvidia\-glx\-1.0.4496 |
| .fi |
| .TP |
| .BR package.properties |
| This will allow ACCEPT_PROPERTIES (see \fBmake.conf\fR(5)) to be augmented for |
| a single package. |
| |
| .I Format: |
| .nf |
| \- comment lines begin with # (no inline comments) |
| \- one DEPEND atom per line followed by additional properties |
| .fi |
| .TP |
| .BR package.unmask |
| Just like package.mask above, except here you list packages you want to |
| unmask. Useful for overriding the global package.mask file (see |
| above). Note that this does not override packages that are masked via |
| KEYWORDS. |
| .TP |
| .BR package.use |
| Per\-package USE flags. Useful for tracking local USE flags or for |
| enabling USE flags for certain packages only. Perhaps you develop GTK |
| and thus you want documentation for it, but you don't want |
| documentation for QT. Easy as pie my friend! |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- one DEPEND atom per line with space-delimited USE flags |
| .fi |
| |
| .I Example: |
| .nf |
| # turn on docs for GTK 2.x |
| =x11\-libs/gtk+\-2* doc |
| # disable mysql support for QT |
| x11\-libs/qt \-mysql |
| .fi |
| .TP |
| .BR repos.conf |
| Specifies \fIsite\-specific\fR repository configuration information. |
| .br |
| Configuration specified in \fBrepos.conf\fR can be overriden by \fBPORTAGE_REPOSITORIES\fR |
| environmental variable, which has the same format as \fBrepos.conf\fR. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- configuration of each repository is specified in a section starting with \ |
| "[${repository_name}]" |
| \- attributes are specified in "${attribute} = ${value}" format |
| .fi |
| |
| .I Attributes supported in DEFAULT section: |
| .RS |
| .RS |
| .TP |
| .B main\-repo |
| Specifies main repository. |
| .TP |
| .B eclass\-overrides |
| Makes all repositories inherit eclasses from specified repositories. |
| .br |
| Setting this attribute is generally not recommended since resulting changes |
| in eclass inheritance may trigger performance issues due to invalidation |
| of metadata cache. |
| .br |
| When 'force = eclass\-overrides' attribute is not set, \fBegencache\fR(1), |
| \fBemirrordist\fR(1) and \fBrepoman\fR(1) ignore this attribute, |
| since operations performed by these tools are inherently |
| \fBnot\fR \fIsite\-specific\fR. |
| .TP |
| .B force |
| Specifies names of attributes, which should be forcefully respected by |
| \fBegencache\fR(1), \fBemirrordist\fR(1) and \fBrepoman\fR(1). |
| .br |
| Valid values: aliases, eclass\-overrides, masters |
| .RE |
| |
| .I Attributes supported in sections of repositories: |
| .RS |
| .TP |
| .B aliases |
| Specifies aliases of given repository. |
| .br |
| Setting this attribute is generally not recommended since resulting changes |
| in eclass inheritance may trigger performance issues due to invalidation |
| of metadata cache. |
| .br |
| When 'force = aliases' attribute is not set, \fBegencache\fR(1), |
| \fBemirrordist\fR(1) and \fBrepoman\fR(1) ignore this attribute, |
| since operations performed by these tools are inherently |
| \fBnot\fR \fIsite\-specific\fR. |
| .TP |
| .B eclass\-overrides |
| Makes given repository inherit eclasses from specified repositories. |
| .br |
| Setting this attribute is generally not recommended since resulting changes |
| in eclass inheritance may trigger performance issues due to invalidation |
| of metadata cache. |
| .br |
| When 'force = eclass\-overrides' attribute is not set, \fBegencache\fR(1), |
| \fBemirrordist\fR(1) and \fBrepoman\fR(1) ignore this attribute, |
| since operations performed by these tools are inherently |
| \fBnot\fR \fIsite\-specific\fR. |
| .TP |
| .B force |
| Specifies names of attributes, which should be forcefully respected by |
| \fBegencache\fR(1), \fBemirrordist\fR(1) and \fBrepoman\fR(1). |
| .br |
| Valid values: aliases, eclass\-overrides, masters |
| .TP |
| .B location |
| Specifies location of given repository. |
| .TP |
| .B masters |
| Specifies master repositories of given repository. |
| .br |
| Setting this attribute is generally not recommended since resulting changes |
| in eclass inheritance may trigger performance issues due to invalidation |
| of metadata cache. |
| .br |
| When 'force = masters' attribute is not set, \fBegencache\fR(1), |
| \fBemirrordist\fR(1) and \fBrepoman\fR(1) ignore this attribute, |
| since operations performed by these tools are inherently |
| \fBnot\fR \fIsite\-specific\fR. |
| .TP |
| .B priority |
| Specifies priority of given repository. |
| .TP |
| .B sync\-cvs\-repo |
| Specifies CVS repository. |
| .TP |
| .B sync\-type |
| Specifies type of synchronization performed by `emerge \-\-sync`. |
| .br |
| Valid non\-empty values: cvs, git, rsync |
| .br |
| This attribute can be set to empty value to disable synchronization of given |
| repository. Empty value is default. |
| .TP |
| .B sync\-uri |
| Specifies URI of repository used for synchronization performed by `emerge |
| \-\-sync`. |
| .br |
| This attribute can be set to empty value to disable synchronization of given |
| repository. Empty value is default. |
| .RS |
| .TP |
| Syntax: |
| cvs: [cvs://]:access_method:[username@]hostname[:port]:/path |
| .br |
| git: (git|git+ssh|http|https)://[username@]hostname[:port]/path |
| .br |
| rsync: (rsync|ssh)://[username@]hostname[:port]/(module|path) |
| .TP |
| Examples: |
| .RS |
| rsync://private\-mirror.com/portage\-module |
| .br |
| rsync://rsync\-user@private\-mirror.com:873/gentoo\-portage |
| .br |
| ssh://ssh\-user@192.168.0.1:22/usr/portage |
| .br |
| ssh://ssh\-user@192.168.0.1:22/\\${HOME}/portage\-storage |
| .RE |
| .TP |
| Note: For the ssh:// scheme, key\-based authentication might be of interest. |
| .RE |
| .RE |
| |
| .I Example: |
| .nf |
| [DEFAULT] |
| # make gentoo the main repository, which makes it the default master |
| # repository for repositories that do not specify masters |
| main\-repo = gentoo |
| # make all repositories inherit eclasses from the java\-overlay and |
| # java\-experimental repositories, with eclasses from java\-experimental |
| # taking precedence over those from java\-overlay |
| eclass\-overrides = java\-overlay java\-experimental |
| |
| [gentoo] |
| # repos with higher priorities are preferred when ebuilds with equal versions |
| # are found in multiple repos (see the `emerge \-\-info \-\-verbose` repo |
| # display for a listing of repos and their corresponding priorities). |
| priority = 9999 |
| # disable all eclass overrides for ebuilds from the gentoo repository |
| eclass\-overrides = |
| # when processing metadata/layout.conf from other repositories, substitute |
| # 'gentoo' in place of references to repositories named 'foo' and 'bar', |
| # and discard the 'baz' alias contained in gentoo's layout.conf |
| aliases = foo bar -baz |
| |
| [kde-testing] |
| # override the metadata/layout.conf masters setting from the kde-testing repo |
| masters = gentoo kde |
| |
| [python] |
| # override the metadata/layout.conf masters setting from the python repo, |
| # so that settings won't be inherited from those masters, and so that |
| # those master repos won't be required as dependencies (the user must |
| # ensure that any required dependencies such as eclasses are satisfied) |
| masters = |
| |
| # Repository 'gentoo' synchronized using CVS |
| [gentoo] |
| location = /usr/portage |
| sync\-type = cvs |
| sync\-uri = :pserver:anonymous@anoncvs.gentoo.org:/var/cvsroot |
| sync\-cvs\-repo = gentoo\-x86 |
| .fi |
| .RE |
| .RE |
| .TP |
| .BR /etc/portage/env/ |
| .RS |
| In this directory additional package\-specific bashrc files can be created. |
| Note that if package\-specific environment variable settings are all that's |
| needed, then \fB/etc/portage/package.env\fR should be used instead of the |
| bashrc approach that is described here. Also note that special variables |
| such as \fBFEATURES\fR and \fBINSTALL_MASK\fR will not produce the intended |
| results if they are set in bashrc, and therefore |
| \fB/etc/portage/package.env\fR should be used instead. Lastly, note that these |
| files are interpreted much later than the portage environment file |
| \fBpackage.env\fR. |
| |
| Portage will source all of these bashrc files after \fB/etc/portage/bashrc\fR |
| in the following order: |
| .nr step 1 1 |
| .IP \n[step]. 3 |
| /etc/portage/env/${CATEGORY}/${PN} |
| .IP \n+[step]. |
| /etc/portage/env/${CATEGORY}/${PN}:${SLOT} |
| .IP \n+[step]. |
| /etc/portage/env/${CATEGORY}/${P} |
| .IP \n+[step]. |
| /etc/portage/env/${CATEGORY}/${PF} |
| .RE |
| .TP |
| .BR /etc/portage/sets/ |
| .RS |
| For each file in this directory, a package set is created with its name |
| corresponding to the name of the file. Each file should contain a list |
| of package atoms and nested package sets, one per line. When a package |
| set is referenced as an \fBemerge\fR(1) argument or when it is |
| referenced as a nested package set (inside of another package set), the |
| set name is prefixed with \fB@\fR. |
| |
| Also see \fB/var/lib/portage/world_sets\fR and the \fBemerge\fR(1) |
| \fB\-\-list\-sets\fR option. |
| .RE |
| .TP |
| .BR /usr/portage/metadata/ |
| .RS |
| .TP |
| .BR layout.conf |
| Specifies information about the repository layout. |
| \fISite-specific\fR overrides to \fBlayout.conf\fR settings may be specified in |
| \fB/etc/portage/repos.conf\fR. |
| Settings in \fBrepos.conf\fR take precedence over settings in |
| \fBlayout.conf\fR, except tools such as \fBrepoman\fR(1) and \fBegencache\fR(1) |
| ignore "aliases", "eclass-overrides" and "masters" attributes set in |
| \fBrepos.conf\fR since their operations are inherently \fBnot\fR |
| \fIsite\-specific\fR. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- attributes are specified in "${attribute} = ${value}" format |
| .fi |
| |
| .I Supported attributes. |
| .RS |
| .RS |
| .TP |
| .BR aliases |
| Behaves like an "aliases" attribute in \fBrepos.conf\fR. |
| .TP |
| .BR eapis\-banned |
| List of EAPIs which are not allowed in this repo. |
| .TP |
| .BR eapis\-deprecated |
| List of EAPIs which are allowed but generate warnings when used. |
| .TP |
| .BR masters |
| Names of repositories which satisfy dependencies on eclasses and from which |
| settings specified in various repository\-level files (\fBpackage.mask\fR, |
| \fBpackage.use.mask\fR, \fBuse.mask\fR etc.) are inherited. Each repository |
| name should correspond to the value of a \fBrepo_name\fR entry from one of |
| the repositories that is configured in \fBrepos.conf\fR file. Repositories |
| listed toward the right of the \fBmasters\fR list take precedence over those |
| listed toward the left of the list. |
| .TP |
| .BR repo\-name " = <value of profiles/repo_name>" |
| The name of this repository (overrides profiles/repo_name if it exists). |
| .TP |
| .BR sign\-commits " = [true|" false "]" |
| Boolean value whether we should sign commits in this repo. |
| .TP |
| .BR sign\-manifests " = [" true "|false]" |
| Boolean value whether we should sign Manifest files in this repo. |
| .TP |
| .BR thin\-manifests " = [true|" false "]" |
| Boolean value whether Manifest files contain only DIST entries. |
| .TP |
| .BR use\-manifests " = [" strict "|true|false]" |
| How Manifest files get used. Possible values are "strict" (require an entry |
| for every file), "true" (if an entry exists for a file, enforce it), or "false" |
| (don't check Manifest files at all). |
| .TP |
| .BR manifest\-hashes |
| List of hashes to generate/check in Manifest files. Valid hashes depend on the |
| current version of portage; see the portage.const.MANIFEST2_HASH_FUNCTIONS |
| constant for the current list. |
| .TP |
| .BR update\-changelog " = [true|" false "]" |
| The default setting for repoman's --echangelog option. |
| .TP |
| .BR cache\-formats " = [pms] [md5-dict]" |
| The cache formats supported in the metadata tree. There is the old "pms" format |
| and the newer/faster "md5-dict" format. Default is to detect dirs. |
| .TP |
| .BR profile\-formats " = [pms|portage-1|portage-2|profile-bashrcs]" |
| Control functionality available to profiles in this repo such as which files |
| may be dirs, or the syntax available in parent files. Use "portage-2" if you're |
| unsure. The default is "portage-1-compat" mode which is meant to be compatible |
| with old profiles, but is not allowed to be opted into directly. |
| Setting profile-bashrcs will enable the per-profile bashrc mechanism |
| \fBpackage.bashrc\fR. |
| .RE |
| .RE |
| |
| .RS |
| .I Example: |
| .nf |
| # Specify the repository name (overriding profils/repo_name). |
| repo\-name = foo-overlay |
| |
| # eclasses provided by java-overlay take precedence over identically named |
| # eclasses that are provided by gentoo |
| masters = gentoo java-overlay |
| |
| # indicate that this repo can be used as a substitute for foo-overlay |
| aliases = foo-overlay |
| |
| # indicate that ebuilds with the specified EAPIs are banned |
| eapis\-banned = 0 1 |
| |
| # indicate that ebuilds with the specified EAPIs are deprecated |
| eapis\-deprecated = 2 3 |
| |
| # sign commits in this repo, which requires Git >=1.7.9, and |
| # key configured by `git config user.signingkey key_id` |
| sign\-commits = true |
| |
| # do not sign Manifest files in this repo |
| sign\-manifests = false |
| |
| # Manifest files only contain DIST entries |
| thin\-manifests = true |
| |
| # indicate that this repo requires manifests for each package, and is |
| # considered a failure if a manifest file is missing/incorrect |
| use\-manifests = strict |
| |
| # customize the set of hashes generated for Manifest entries |
| manifest\-hashes = SHA256 SHA512 WHIRLPOOL |
| |
| # indicate that this repo enables repoman's --echangelog=y option automatically |
| update\-changelog = true |
| |
| # indicate that this repo contains both md5-dict and pms cache formats, |
| # which may be generated by egencache(1) |
| cache\-formats = md5-dict pms |
| |
| # indicate that this repo contains profiles that may use directories for |
| # package.mask, package.provided, package.use, package.use.force, |
| # package.use.mask, package.use.stable.force, package.use.stable.mask, |
| # use.force, use.mask, use.stable.force, and use.stable.mask. |
| # profile\-formats = portage-1 |
| # indicate that paths such as 'gentoo:targets/desktop' or ':targets/desktop' in |
| # profile parent files can be used to express paths relative to the root |
| # 'profiles' directory of a repository (when the repo name is omitted before |
| # the colon, it refers to the current repository the parent file is inside) |
| profile\-formats = portage-2 |
| .fi |
| .RE |
| .RE |
| .TP |
| .BR /usr/portage/profiles/ |
| Global Gentoo settings that are controlled by the developers. To override |
| these settings, you can use the files in \fB/etc/portage/\fR. |
| .RS |
| .TP |
| .BR arch.list |
| A list of all valid KEYWORDS. This does not include modifiers. |
| |
| .I Format: |
| .nf |
| \- one KEYWORD per line |
| .fi |
| |
| .I Example: |
| .nf |
| x86 |
| ppc |
| sparc |
| .fi |
| .TP |
| .BR categories |
| A simple list of valid categories that may be used in repositories and PKGDIR |
| (see \fBmake.conf\fR(5)). |
| |
| .I Format: |
| .nf |
| \- one category per line |
| .fi |
| |
| .I Example: |
| .nf |
| app\-admin |
| dev\-lang |
| games\-strategy |
| sys\-kernel |
| .fi |
| .TP |
| .BR info_pkgs |
| A list of all the packages which will be displayed when you run `emerge info`. |
| .TP |
| .BR info_vars |
| A list of all the variables which will be displayed when you run `emerge info`. |
| .TP |
| .BR license_groups |
| This contains groups of licenses that may be specifed in the |
| \fBACCEPT_LICENSE\fR variable (see \fBmake.conf\fR(5)). Refer |
| to GLEP 23 for further information: |
| \fIhttp://www.gentoo.org/proj/en/glep/glep-0023.html\fR. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- one group name, followed by list of licenses and nested groups |
| \- nested groups are prefixed with the '@' symbol |
| .fi |
| |
| .I Example: |
| .nf |
| # The FSF-APPROVED group includes the entire GPL-COMPATIBLE group and more. |
| FSF-APPROVED @GPL-COMPATIBLE Apache-1.1 BSD-4 MPL-1.0 MPL-1.1 |
| # The GPL-COMPATIBLE group includes all licenses compatible with the GNU GPL. |
| GPL-COMPATIBLE Apache-2.0 BSD BSD-2 GPL-2 GPL-3 LGPL-2.1 LGPL-3 X11 ZLIB |
| .fi |
| .TP |
| .BR package.accept_keywords |
| Per\-package ACCEPT_KEYWORDS for profiles. This has the same format and |
| behavior as /etc/portage/package.accept_keywords, including the ability |
| to list atoms without any keywords in order to accept unstable variants |
| of all stable keywords listed in ACCEPT_KEYWORDS. |
| .TP |
| .BR package.keywords |
| Per\-profile KEYWORDS. Useful for cases in which the effective KEYWORDS of a |
| given package should vary depending on which profile the user has selected. |
| |
| .I Format: |
| .nf |
| \- comment lines begin with # (no inline comments) |
| \- one DEPEND atom per line followed by additional KEYWORDS |
| .fi |
| |
| .I Example: |
| .nf |
| # add stable keyword to libgd |
| media\-libs/libgd x86 |
| # remove stable keyword from mplayer and add unstable keyword |
| media\-video/mplayer \-x86 ~x86 |
| # remove all keywords from netcat |
| net-analyzer/netcat -* |
| .fi |
| .TP |
| .BR package.mask |
| This contains a list of DEPEND atoms for packages that should not be installed |
| in any profile. Useful for adding the latest KDE betas and making sure no |
| one accidentally upgrades to them. Also useful for quickly masking specific |
| versions due to security issues. ALWAYS include a comment explaining WHY the |
| package has been masked and WHO is doing the masking. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- one DEPEND atom per line |
| .fi |
| |
| .I Example: |
| .nf |
| # masked for security reasons |
| <sys\-libs/zlib\-1.1.4 |
| # <caleb@gentoo.org> (10 Sep 2003) |
| # new kde betas |
| =kde\-base/kde\-3.2.0_beta1 |
| =kde\-base/kdeaccessibility\-3.2.0_beta1 |
| .fi |
| .TP |
| .BR profiles.desc |
| List all the current stable and development profiles. If a profile is listed |
| here, then it will be checked by repoman. |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- one profile list per line in format: arch dir status |
| \- arch must be listed in arch.list |
| \- dir is relative to profiles.desc |
| \- status must be 'stable', 'dev', or 'exp' |
| .fi |
| |
| .I Example: |
| .nf |
| alpha default/linux/alpha/10.0 stable |
| m68k default/linux/m68k/10.0 dev |
| x86 default/linux/x86/10.0 stable |
| x86-linux prefix/linux/x86 exp |
| .fi |
| .TP |
| .BR repo_name |
| The first line of the file should define a unique repository name. The name |
| may contain any of the characters [A\-Za\-z0\-9_\-]. It must not begin with a |
| hyphen. If the repo\-name attribute is specified in layout.conf, then that |
| setting will take precedence. |
| .TP |
| .BR thirdpartymirrors |
| Controls the mapping of mirror:// style URIs to actual lists of |
| mirrors. Keeps us from overloading a single server. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- mirror type followed by a list of hosts |
| .fi |
| |
| .I Example: |
| .nf |
| sourceforge http://aleron.dl.sourceforge.net/sourceforge \ |
| http://unc.dl.sourceforge.net/sourceforge |
| |
| gentoo http://distro.ibiblio.org/pub/linux/distributions/gentoo/distfiles/ \ |
| ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo/distfiles |
| |
| kernel http://www.kernel.org/pub http://www.us.kernel.org/pub |
| .fi |
| .TP |
| .BR use.desc |
| All global USE flags must be listed here with a description of what they do. |
| |
| .I Format: |
| .nf |
| \- comments begin with # (no inline comments) |
| \- use flag \- some description |
| .fi |
| |
| .I Example: |
| .nf |
| 3dfx \- Adds support for 3dfx video cards |
| acl \- Adds support for Access Control Lists |
| doc \- Adds extra documentation |
| .fi |
| .TP |
| .BR use.local.desc |
| All local USE flags are listed here along with the package and a |
| description. This file is automatically generated from the |
| metadata.xml files that are included with each individual package. |
| Refer to GLEP 56 for further information: |
| \fIhttp://www.gentoo.org/proj/en/glep/glep-0056.html\fR. |
| |
| .nf |
| .I Format: |
| \- comments begin with # (no inline comments) |
| \- package:use flag \- description |
| |
| .I Example: |
| app\-editors/nano:justify \- Toggles the justify option |
| dev\-libs/DirectFB:fusion \- Adds Multi Application support |
| games\-emulation/xmess:net \- Adds network support |
| .fi |
| .RE |
| .TP |
| .BR /usr/share/portage/config/ |
| .RS |
| .TP |
| .BR make.globals |
| The global default settings for Portage. This comes from the portage package |
| itself. Settings in \fBmake.conf\fR or \fBpackage.env\fR override values set |
| here. The format is described extensively in \fBmake.conf\fR(5). |
| .TP |
| .BR repos.conf |
| The default configuration of repositories for Portage. This comes from |
| the portage package itself. Settings in \fB/etc/portage/repos.conf\fR |
| override values set here. The format is described extensively in section |
| for \fB/etc/portage/repos.conf\fR. |
| .RE |
| .TP |
| .BR /var/cache/edb/ |
| .RS |
| This directory is used to store internal portage cache files. The names and |
| purpose of these files are not documented on purpose so as to keep down bitrot |
| as internals change. If you aren't working on portage internally, then the |
| details most likely do not matter to you. |
| |
| This entire directory can be safely deleted. It is highly recommended you do |
| not do this however as it can be a time consuming process to generate them all |
| again. |
| .RE |
| .TP |
| .BR /var/db/pkg/ |
| .RS |
| All installed package information is recorded here. If portage thinks you have |
| a package installed, it is usually because it is listed here. |
| |
| The format follows somewhat closely that of the portage tree. There is a |
| directory for each category and a package-version subdirectory for each package |
| you have installed. |
| |
| Inside each package directory are misc files that describe the installed |
| contents of the package as well as build time information (so that the package |
| can be unmerged without needing the portage tree). |
| |
| The exact file contents and format are not described here again so that things |
| can be changed quickly. Generally though there is one file per environment |
| variable that "matters" (like CFLAGS) with the contents stored inside of it. |
| Another common file is the CONTENTS file which lists the path and hashes of |
| all objects that the package installed onto your system. |
| .RE |
| .TP |
| .BR /var/lib/portage/ |
| .RS |
| .TP |
| .BR config |
| Hashes which are used to determine whether files in config protected |
| directories have been modified since being installed. Files which have not |
| been modified will automatically be unmerged. |
| .TP |
| .BR world |
| Every time you emerge a package, the package that you requested is |
| recorded here. Then when you run `emerge world \-up`, the list of |
| packages is read from this file. Note that this does not mean that the |
| packages that were installed as dependencies are listed here. For |
| example, if you run `emerge mod_wsgi` and you do not have apache |
| already, then "www\-apache/mod_wsgi" is recorded in the world file but |
| "www\-servers/apache" is not. For more information, review \fBemerge\fR(1). |
| |
| .I Format: |
| .nf |
| \- one DEPEND atom base per line |
| .fi |
| |
| .I Example: |
| .nf |
| games\-misc/fortune\-mod\-gentoo\-dev |
| dev\-libs/uclibc |
| app\-cdr/cdemu |
| .fi |
| .TP |
| .BR world_sets |
| This is like the world file but instead of package atoms it contains |
| packages sets which always begin with the \fB@\fR character. Use |
| \fB/etc/portage/sets/\fR to define user package sets. |
| |
| .I Example: |
| .nf |
| @kde |
| .fi |
| .RE |
| .SH "REPORTING BUGS" |
| Please report bugs via http://bugs.gentoo.org/ |
| .SH "AUTHORS" |
| .nf |
| Marius Mauch <genone@gentoo.org> |
| Mike Frysinger <vapier@gentoo.org> |
| Drake Wyrm <wyrm@haell.com> |
| Arfrever Frehtes Taifersar Arahesis <arfrever@apache.org> |
| .fi |
| .SH "SEE ALSO" |
| .BR emerge (1), |
| .BR ebuild (1), |
| .BR ebuild (5), |
| .BR make.conf (5), |
| .BR color.map (5) |