test_asynchronous_lock: test waiting
[portage.git] / man / portage.5
index c3e8d8655baf9b4ae2263ca2de6f54998dec6cda..27c1d7c71edd6ddd9e252ce975bc1914e66a9f19 100644 (file)
@@ -1,4 +1,4 @@
-.TH "PORTAGE" "5" "Aug 2008" "Portage 2.2" "Portage"
+.TH "PORTAGE" "5" "May 2011" "Portage VERSION" "Portage"
 .SH NAME
 portage \- the heart of Gentoo
 .SH "DESCRIPTION"
@@ -17,11 +17,10 @@ If you are looking for information on how to emerge something, please see
 .TP
 .BR /etc/
 .nf
-make.globals
 .BR make.conf (5)
 .fi
 .TP
-.BR /etc/make.profile/
+\fB/etc/make.profile/\fR or \fB/etc/portage/make.profile/\fR
 site\-specific overrides go in \fB/etc/portage/profile/\fR
 .nf
 deprecated
@@ -29,6 +28,7 @@ eapi
 make.defaults
 packages
 packages.build
+package.accept_keywords
 package.keywords
 package.mask
 package.provided
@@ -48,8 +48,12 @@ virtuals
 bashrc
 categories
 color.map
+license_groups
+make.conf
 mirrors
 modules
+package.accept_keywords
+package.env
 package.keywords
 package.license
 package.mask
@@ -85,6 +89,11 @@ use.desc
 use.local.desc
 .fi
 .TP
+.BR /usr/share/portage/config/
+.nf
+make.globals
+.fi
+.TP
 .BR /var/cache/edb/
 misc internal cache files
 .TP
@@ -95,7 +104,6 @@ database to track installed packages
 .nf
 config
 world
-world_sets
 .fi
 .SH "GLOSSARY"
 In the following sections, some terminology may be foreign to you or used 
@@ -134,16 +142,11 @@ More reading:
 .BR /etc/
 .RS
 .TP
-.BR make.globals
-The global default settings for Portage.  This comes from the portage package 
-itself.  Settings in \fBmake.conf\fR override values here.  The format 
-is described extensivly in \fBmake.conf\fR(5).
-.TP
 .BR make.conf
 The global custom settings for Portage.  See \fBmake.conf\fR(5).
 .RE
 .TP
-.BR /etc/make.profile/
+\fB/etc/make.profile/\fR or \fB/etc/portage/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 
@@ -153,7 +156,9 @@ 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 \fB/etc/make.profile/\fR does, except parent). Do NOT edit the
 settings in \fB/etc/make.profile/\fR because they WILL be lost with the next
-`emerge \-\-sync`.
+`emerge \-\-sync`. If both \fB/etc/make.profile/\fR and
+\fB/etc/portage/make.profile/\fR exist, then \fB/etc/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
@@ -373,6 +378,14 @@ a '\-'.
 \- 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
 This controls what packages will provide a virtual by default.  For example, 
@@ -405,9 +418,9 @@ it were a single file.
 
 .I Example:
 .nf
-/etc/portage/package.keywords/common
-/etc/portage/package.keywords/e17
-/etc/portage/package.keywords/kde
+/etc/portage/package.accept_keywords/common
+/etc/portage/package.accept_keywords/e17
+/etc/portage/package.accept_keywords/kde
 .fi
 .RS
 .TP
@@ -437,6 +450,10 @@ media\-other
 .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).
+If present, this file will override settings from /etc/make.conf.
+.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 
@@ -482,10 +499,16 @@ listed in \fBPORTDIR_OVERLAY\fR or a cvs tree, run `emerge \-\-regen`
 to keep all metadata in that format alone (useful for querying), enable
 FEATURES="metadata-transfer" in \fBmake.conf\fR(5).
 .TP
-.BR package.keywords
-Per\-package KEYWORDS.  Useful for mixing unstable packages in with a normally 
+\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.
+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
@@ -521,10 +544,28 @@ 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.keywords like this:
+package.accept_keywords like this:
 
 games-fps/quake3-demo x86
 
+.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).
+
+.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 to be augmented for a single package.
@@ -628,9 +669,26 @@ masters = gentoo kde
 .TP
 .BR /etc/portage/env/
 .RS
-In this directory additional package-specific bashrc files can be created.
-Portage will source all of them after \fB/etc/portage/bashrc\fR in the following
-order:
+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.
+
+set_unless_changed and unset_unless_changed functions can be used to set or
+unset given variables only if these variable have not been set to values
+different than values set in make.conf. This functionality can be useful for
+temporary overriding of these variables during emerge invocation. Variables
+set without using set_unless_changed will unconditionally override variables
+set during emerge invocation.
+
+.I Syntax:
+.nf
+set_unless_changed VARIABLE=VALUE
+unset_unless_changed VALUE
+.fi
+
+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}
@@ -733,6 +791,12 @@ FSF-APPROVED @GPL-COMPATIBLE Apache-1.1 BSD-4 MPL-1.0 MPL-1.1
 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.
@@ -855,6 +919,16 @@ 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 here. The format 
+is described extensivly in \fBmake.conf\fR(5).
+.RE
+.TP
 .BR /var/cache/edb/
 .RS
 This directory is used to store internal portage cache files.  The names and
@@ -900,9 +974,9 @@ 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_php` and you do not have apache 
-already, then "dev\-php/mod_php" is recorded in the world file but 
-"net\-www/apache" is not.  For more information, review \fBemerge\fR(1).
+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
@@ -915,15 +989,6 @@ 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 @ character.
-
-.I Example:
-.nf
-@kde
-.fi
 .RE
 .SH "REPORTING BUGS"
 Please report bugs via http://bugs.gentoo.org/
@@ -932,6 +997,7 @@ Please report bugs via http://bugs.gentoo.org/
 Marius Mauch <genone@gentoo.org>
 Mike Frysinger <vapier@gentoo.org>
 Drake Wyrm <wyrm@haell.com>
+Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
 .fi
 .SH "SEE ALSO"
 .BR emerge (1),