-# Copyright 1999-2006 Gentoo Foundation
+# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Id$
# Contains local system settings for Portage system
# Please review 'man make.conf' for more information.
# If you set a CFLAGS above, then this line will set your default C++ flags to
# the same settings.
#CXXFLAGS="${CFLAGS}"
+#
+# If you set a CFLAGS above, then this line will set your default FORTRAN 77
+# flags to the same settings.
+#FFLAGS="${CFLAGS}"
+#
+# If you set a FFLAGS above, then this line will set your default FORTRAN
+# flags to the same settings for modern build systems
+#FCFLAGS="${FFLAGS}"
+
# Advanced Masking
# ================
# PORTDIR is the location of the portage tree. This is the repository
# for all profile information as well as all ebuilds. If you change
# this, you must update your /etc/make.profile symlink accordingly.
+# ***Warning***
+# Data stored inside PORTDIR is in peril of being overwritten or deleted by
+# the emerge --sync command. The default value of PORTAGE_RSYNC_OPTS
+# will protect the default locations of DISTDIR and PKGDIR, but users are
+# warned that any other locations inside PORTDIR are not necessarily safe
+# for data storage.
#PORTDIR=/usr/portage
#
# DISTDIR is where all of the source code tarballs will be placed for
-# emerges. The source code is maintained here unless you delete
-# it. The entire repository of tarballs for gentoo is 9G. This is
-# considerably more than any user will ever download. 2-3G is
-# a large DISTDIR.
-#DISTDIR=${PORTDIR}/distfiles
+# emerges. After packages are built, it is safe to remove any and
+# all files from this directory since they will be automatically
+# fetched on demand for a given build. If you would like to
+# selectively prune obsolete files from this directory, see
+# eclean from the gentoolkit package. Note that locations under
+# /usr/portage are not necessarily safe for data storage. See the
+# PORTDIR documentation for more information.
+#DISTDIR=/usr/portage/distfiles
#
# PKGDIR is the location of binary packages that you can have created
# with '--buildpkg' or '-b' while emerging a package. This can get
-# upto several hundred megs, or even a few gigs.
-#PKGDIR=${PORTDIR}/packages
+# up to several hundred megs, or even a few gigs. Note that
+# locations under /usr/portage are not necessarily safe for data
+# storage. See the PORTDIR documentation for more information.
+#PKGDIR=/usr/portage/packages
#
# PORT_LOGDIR is the location where portage will store all the logs it
-# creates from each individual merge. They are stored as NNNN-$PF.log
-# in the directory specified. This is disabled until you enable it by
-# providing a directory. Permissions will be modified as needed IF the
-# directory exists, otherwise logging will be disabled. NNNN is the
-# increment at the time the log is created. Logs are thus sequential.
-#PORT_LOGDIR=/var/log/portage
+# creates from each individual merge. They are stored as
+# ${CATEGORY}:${PF}:YYYYMMDD-HHMMSS.log in the directory specified.
+# If the direcory does not exist, it will be created automatically and
+# group permissions will be applied to it. If the directory already
+# exists, portage will not modify it's permissions.
+#PORT_LOGDIR=""
#
# PORTDIR_OVERLAY is a directory where local ebuilds may be stored without
# concern that they will be deleted by rsync updates. Default is not
#
# Portage uses wget by default. Here are some settings for some alternate
# downloaders -- note that you need to merge these programs first before they
-# will be available.
+# will be available. The command should be written to place the fetched file
+# at \${DISTDIR}/\${FILE}.
#
-# Default fetch command (5 tries, passive ftp for firewall compatibility)
-#FETCHCOMMAND="/usr/bin/wget -t 5 -T 60 --passive-ftp \${URI} -P \${DISTDIR}"
-#RESUMECOMMAND="/usr/bin/wget -c -t 5 -T 60 --passive-ftp \${URI} -P \${DISTDIR}"
+# Default fetch command (3 tries, passive ftp for firewall compatibility)
+#FETCHCOMMAND="/usr/bin/wget -t 3 -T 60 --passive-ftp -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
+#RESUMECOMMAND="/usr/bin/wget -c -t 3 -T 60 --passive-ftp -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
#
# Using wget, ratelimiting downloads
-#FETCHCOMMAND="/usr/bin/wget -t 5 -T 60 --passive-ftp --limit-rate=200k \${URI} -P \${DISTDIR}"
-#RESUMECOMMAND="/usr/bin/wget -c -t 5 -T 60 --passive-ftp --limit-rate=200k \${URI} -P \${DISTDIR}"
+#FETCHCOMMAND="/usr/bin/wget -t 3 -T 60 --passive-ftp --limit-rate=200k -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
+#RESUMECOMMAND="/usr/bin/wget -c -t 3 -T 60 --passive-ftp --limit-rate=200k -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
#
# Lukemftp (BSD ftp):
-#FETCHCOMMAND="/usr/bin/lukemftp -s -a -o \${DISTDIR}/\${FILE} \${URI}"
-#RESUMECOMMAND="/usr/bin/lukemftp -s -a -R -o \${DISTDIR}/\${FILE} \${URI}"
+#FETCHCOMMAND="/usr/bin/lukemftp -s -a -o \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
+#RESUMECOMMAND="/usr/bin/lukemftp -s -a -R -o \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
#
# Portage uses GENTOO_MIRRORS to specify mirrors to use for source retrieval.
# The list is a space separated list which is read left to right. If you use
# PORTAGE_RSYNC_RETRIES sets the number of times portage will attempt to retrieve
# a current portage tree before it exits with an error. This allows
# for a more successful retrieval without user intervention most times.
-#PORTAGE_RSYNC_RETRIES="3"
+# If set to a negative number, then retry until all possible addresses are
+# exhausted.
+#PORTAGE_RSYNC_RETRIES="-1"
#
# PORTAGE_RSYNC_EXTRA_OPTS can be used to feed additional options to the rsync
# command used by `emerge --sync`. This will not change the default options
# reduce it further. Default is unset.
#PORTAGE_NICENESS=3
#
+# PORTAGE_IONICE_COMMAND provides a command for portage to call in order to
+# adjust the io priority of portage and it's subprocesses. Default is
+# unset.
+#PORTAGE_IONICE_COMMAND="ionice -c 3 -p \${PID}"
+#
# AUTOCLEAN enables portage to automatically clean out older or overlapping
# packages from the system after every successful merge. This is the
# same as running 'emerge -c' after every merge. Set with: "yes" or "no".
# packages. Do not use it unless absolutely necessary!
#AUTOCLEAN="yes"
#
-# PORTAGE_TMPFS is a location where portage may create temporary files.
-# If specified, portage will use this directory whenever possible
-# for all rapid operations such as lockfiles and transient data.
-# It is _highly_ recommended that this be a tmpfs or ramdisk. Do not
-# set this to anything that does not give a significant performance
-# enhancement and proper FS compliance for locks and read/write.
-# /dev/shm is a glibc mandated tmpfs, and should be a reasonable
-# setting for all linux kernel+glibc based systems.
-#PORTAGE_TMPFS="/dev/shm"
-#
-# FEATURES are settings that affect the functionality of portage. Most of
-# these settings are for developer use, but some are available to non-
-# developers as well.
-#
-# 'assume-digests'
-# when commiting work to cvs with repoman(1), assume that all
-# existing SRC_URI digests are correct. This feature also
-# affects digest generation via ebuild(1) and emerge(1) (emerge
-# generates digests only when the 'digest' feature is enabled).
-# 'buildpkg' causes binary packages to be created of all packages that
-# are being merged.
-# 'ccache' enable support for the dev-util/ccache package, which can
-# noticably decrease the time needed to remerge previously built
-# packages.
-# 'confcache' enable confcache support; speeds up autotool based configure
-# calls
-# 'collision-protect'
-# prevents packages from overwriting files that are owned by
-# another package or by no package at all.
-# 'cvs' causes portage to enable all cvs features (commits, adds),
-# and to apply all USE flags in SRC_URI for digests -- for
-# developers only.
-# 'digest' autogenerate digests for packages when running the emerge(1)
-# command. If the 'assume-digests' feature is also enabled then
-# existing SRC_URI digests will be reused whenever they are
-# available.
-# 'distcc' enables distcc support via CC.
-# 'distlocks' enables distfiles locking using fcntl or hardlinks. This
-# is enabled by default. Tools exist to help clean the locks
-# after crashes: /usr/lib/portage/bin/clean_locks.
-# 'fixpackages' allows portage to fix binary packages that are stored in
-# PKGDIR. This can consume a lot of time. 'fixpackages' is
-# also a script that can be run at any given time to force
-# the same actions.
-# 'gpg' enables basic verification of Manifest files using gpg.
-# This features is UNDER DEVELOPMENT and reacts to features
-# of strict and severe. Heavy use of gpg sigs is coming.
-# 'keeptemp' prevents the clean phase from deleting the temp files ($T)
-# from a merge.
-# 'keepwork' prevents the clean phase from deleting the WORKDIR.
-# 'test' causes ebuilds to perform testing phases if they are capable
-# of it. Some packages support this automaticaly via makefiles.
-# 'metadata-transfer'
-# automatically perform a metadata transfer when `emerge --sync`
-# is run.
-# 'noauto' causes ebuild to perform only the action requested and
-# not any other required actions like clean or unpack -- for
-# debugging purposes only.
-# 'noclean' prevents portage from removing the source and temporary files
-# after a merge -- for debugging purposes only.
-# 'nostrip' prevents the stripping of binaries.
-# 'notitles' disables xterm titlebar updates (which contain status info).
-# 'parallel-fetch'
-# do fetching in parallel to compilation
-# 'sandbox' enables sandboxing when running emerge and ebuild.
-# 'strict' causes portage to react strongly to conditions that are
-# potentially dangerous, like missing/incorrect Manifest files.
-# 'userfetch' when portage is run as root, drop privileges to
-# portage:portage during the fetching of package sources.
-# 'userpriv' allows portage to drop root privileges while it is compiling,
-# as a security measure. As a side effect this can remove
-# sandbox access violations for users.
-# 'usersandbox' enables sandboxing while portage is running under userpriv.
-#FEATURES="sandbox buildpkg ccache distcc userpriv usersandbox notitles noclean noauto cvs keeptemp keepwork"
-#FEATURES="sandbox ccache distcc distlocks"
+# FEATURES defines actions portage takes by default. This is an incremental
+# variable. See the make.conf(5) man page for a complete list of supported
+# values and their respective meanings.
+#FEATURES="ccache distcc installsources \
+# splitdebug test userpriv usersandbox"
# CCACHE_SIZE and CCACHE_DIR are used to control the behavior of ccache, and
# and are only used if "ccache" is in FEATURES.
# logging related variables:
# PORTAGE_ELOG_CLASSES: selects messages to be logged, possible values are:
-# info, warn, error, log, qa
+# info, warn, error, log, qa, *
# Warning: commenting this will disable elog
-PORTAGE_ELOG_CLASSES="warn error log"
+PORTAGE_ELOG_CLASSES="log warn error"
# PORTAGE_ELOG_SYSTEM: selects the module(s) to process the log messages. Modules
# included in portage are (empty means logging is disabled):
+# echo (display messages again when emerge exits)
# save (saves one log per package in $PORT_LOGDIR/elog,
# /var/log/portage/elog if $PORT_LOGDIR is unset)
# custom (passes all messages to $PORTAGE_ELOG_COMMAND)
# mail_summary (like "mail" but sends all messages in
# a single mail when emerge exits)
# To use elog you should enable at least one module
+# The module name may be followed by a colon and a comma
+# separated list of loglevels to override PORTAGE_ELOG_CLASSES
+# for this module (e.g.
+# PORTAGE_ELOG_SYSTEM="mail:warn,error syslog:* save")
#PORTAGE_ELOG_SYSTEM="save mail"
# PORTAGE_ELOG_COMMAND: only used with the "custom" logging module. Specifies a command
# Examples:
#PORTAGE_ELOG_MAILURI="root@localhost localhost" (this is also the default setting)
#PORTAGE_ELOG_MAILURI="user@some.domain mail.some.domain" (sends mails to user@some.domain using the mailserver mail.some.domain)
-#PORTAGE_ELOG_MAILURI="user@some.domain user:secret@mail.some.domain:100465" (this is left uncommented as a reader excercise ;)
+#PORTAGE_ELOG_MAILURI="user@some.domain user:secret@mail.some.domain:100465" (this is left uncommented as a reader exercise ;)
# PORTAGE_ELOG_MAILFROM: you can set the from-address of logmails with this variable,
# if unset mails are sent by "portage" (this default may fail
#PORTAGE_ELOG_MAILFROM="portage@some.domain"
# PORTAGE_ELOG_MAILSUBJECT: template string to be used as subject for logmails. The following
-# variables are exanded:
+# variables are expanded:
+# ${ACTION} - merged, unmerged, or unknown
# ${PACKAGE} - see description of PORTAGE_ELOG_COMMAND
# ${HOST} - FQDN of the host portage is running on
-#PORTAGE_ELOG_MAILSUBJECT="package \${PACKAGE} merged on \${HOST} with notice"
+#PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for \${PACKAGE} on \${HOST}"