1 # Copyright 1999-2007 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
4 # Contains local system settings for Portage system
6 # Please review 'man make.conf' for more information.
8 # Build-time functionality
9 # ========================
11 # The USE variable is used to enable optional build-time functionality. For
12 # example, quite a few packages have optional X, gtk or GNOME functionality
13 # that can only be enabled or disabled at compile-time. Gentoo Linux has a
14 # very extensive set of USE variables described in our USE variable HOWTO at
15 # http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=2&chap=1
17 # The available list of use flags with descriptions is in your portage tree.
18 # Use 'less' to view them: --> less /usr/portage/profiles/use.desc <--
20 # 'ufed' is an ncurses/dialog interface available in portage to make handling
21 # useflags for you. 'emerge app-portage/ufed'
24 #USE="X gtk gnome -alsa"
26 # Host and optimization settings
27 # ==============================
29 # For optimal performance, enable a CFLAGS setting appropriate for your CPU.
31 # Please note that if you experience strange issues with a package, it may be
32 # due to gcc's optimizations interacting in a strange way. Please test the
33 # package (and in some cases the libraries it uses) at default optimizations
34 # before reporting errors to developers.
36 # Please refer to the GCC manual for a list of possible values.
40 # If you set a CFLAGS above, then this line will set your default C++ flags to
47 # Gentoo is using a new masking system to allow for easier stability testing
48 # on packages. KEYWORDS are used in ebuilds to mask and unmask packages based
49 # on the platform they are set for. A special form has been added that
50 # indicates packages and revisions that are expected to work, but have not yet
51 # been approved for the stable set. '~arch' is a superset of 'arch' which
52 # includes the unstable, in testing, packages. Users of the 'x86' architecture
53 # would add '~x86' to ACCEPT_KEYWORDS to enable unstable/testing packages.
54 # '~ppc', '~sparc' are the unstable KEYWORDS for their respective platforms.
56 # Please note that this is not for development, alpha, beta, nor cvs release
57 # packages. "Broken" packages will not be added to testing and should not be
58 # requested to be added. Alternative routes are available to developers
59 # for experimental packages, and it is at their discretion to use them.
61 # DO NOT PUT ANYTHING BUT YOUR SPECIFIC ~ARCHITECTURE IN THE LIST.
62 # IF YOU ARE UNSURE OF YOUR ARCH, OR THE IMPLICATIONS, DO NOT MODIFY THIS.
64 #ACCEPT_KEYWORDS="~arch"
69 # Each of these settings controls an aspect of portage's storage and file
70 # system usage. If you change any of these, be sure it is available when
71 # you try to use portage. *** DO NOT INCLUDE A TRAILING "/" ***
73 # PORTAGE_TMPDIR is the location portage will use for compilations and
74 # temporary storage of data. This can get VERY large depending upon
75 # the application being installed.
76 #PORTAGE_TMPDIR=/var/tmp
78 # PORTDIR is the location of the portage tree. This is the repository
79 # for all profile information as well as all ebuilds. If you change
80 # this, you must update your /etc/make.profile symlink accordingly.
83 # DISTDIR is where all of the source code tarballs will be placed for
84 # emerges. The source code is maintained here unless you delete
85 # it. The entire repository of tarballs for Gentoo is 9G. This is
86 # considerably more than any user will ever download. 2-3G is
88 #DISTDIR=/usr/portage/distfiles
90 # PKGDIR is the location of binary packages that you can have created
91 # with '--buildpkg' or '-b' while emerging a package. This can get
92 # up to several hundred megs, or even a few gigs.
93 #PKGDIR=/usr/portage/packages
95 # PORT_LOGDIR is the location where portage will store all the logs it
96 # creates from each individual merge. They are stored as
97 # ${CATEGORY}:${PF}:YYYYMMDD-HHMMSS.log in the directory specified.
98 # If the direcory does not exist, it will be created automatically and
99 # group permissions will be applied to it. If the directory already
100 # exists, portage will not modify it's permissions.
104 # PORTDIR_OVERLAY is a directory where local ebuilds may be stored without
105 # concern that they will be deleted by rsync updates. Default is not
107 #PORTDIR_OVERLAY=/usr/local/portage
112 # If you need to set a proxy for wget or lukemftp, add the appropriate "export
113 # ftp_proxy=<proxy>" and "export http_proxy=<proxy>" lines to /etc/profile if
114 # all users on your system should use them.
116 # Portage uses wget by default. Here are some settings for some alternate
117 # downloaders -- note that you need to merge these programs first before they
120 # Default fetch command (5 tries, passive ftp for firewall compatibility)
121 #FETCHCOMMAND="/usr/bin/wget -t 5 -T 60 --passive-ftp \${URI} -P \${DISTDIR}"
122 #RESUMECOMMAND="/usr/bin/wget -c -t 5 -T 60 --passive-ftp \${URI} -P \${DISTDIR}"
124 # Using wget, ratelimiting downloads
125 #FETCHCOMMAND="/usr/bin/wget -t 5 -T 60 --passive-ftp --limit-rate=200k \${URI} -P \${DISTDIR}"
126 #RESUMECOMMAND="/usr/bin/wget -c -t 5 -T 60 --passive-ftp --limit-rate=200k \${URI} -P \${DISTDIR}"
128 # Lukemftp (BSD ftp):
129 #FETCHCOMMAND="/usr/bin/lukemftp -s -a -o \${DISTDIR}/\${FILE} \${URI}"
130 #RESUMECOMMAND="/usr/bin/lukemftp -s -a -R -o \${DISTDIR}/\${FILE} \${URI}"
132 # Portage uses GENTOO_MIRRORS to specify mirrors to use for source retrieval.
133 # The list is a space separated list which is read left to right. If you use
134 # another mirror we highly recommend leaving the default mirror at the end of
135 # the list so that portage will fall back to it if the files cannot be found
136 # on your specified mirror. We _HIGHLY_ recommend that you change this setting
137 # to a nearby mirror by merging and using the 'mirrorselect' tool.
138 #GENTOO_MIRRORS="<your_mirror_here> http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
140 # Portage uses PORTAGE_BINHOST to specify mirrors for prebuilt-binary packages.
141 # The list is a single entry specifying the full address of the directory
142 # serving the tbz2's for your system. Running emerge with either '--getbinpkg'
143 # or '--getbinpkgonly' will cause portage to retrieve the metadata from all
144 # packages in the directory specified, and use that data to determine what will
145 # be downloaded and merged. '-g' or '-gK' are the recommend parameters. Please
146 # consult the man pages and 'emerge --help' for more information. For FTP, the
147 # default connection is passive -- If you require an active connection, affix
148 # an asterisk (*) to the end of the host:port string before the path.
149 #PORTAGE_BINHOST="http://grp.mirror.site/gentoo/grp/1.4/i686/athlon-xp/"
150 # This ftp connection is passive ftp.
151 #PORTAGE_BINHOST="ftp://login:pass@grp.mirror.site/pub/grp/i686/athlon-xp/"
152 # This ftp connection is active ftp.
153 #PORTAGE_BINHOST="ftp://login:pass@grp.mirror.site:21*/pub/grp/i686/athlon-xp/"
155 # Synchronizing Portage
156 # =====================
158 # Each of these settings affects how Gentoo synchronizes your Portage tree.
159 # Synchronization is handled by rsync and these settings allow some control
160 # over how it is done.
162 # SYNC is the server used by rsync to retrieve a localized rsync mirror
163 # rotation. This allows you to select servers that are geographically
164 # close to you, yet still distribute the load over a number of servers.
165 # Please do not single out specific rsync mirrors. Doing so places undue
166 # stress on particular mirrors. Instead you may use one of the following
167 # continent specific rotations:
169 # Default: "rsync://rsync.gentoo.org/gentoo-portage"
170 # North America: "rsync://rsync.namerica.gentoo.org/gentoo-portage"
171 # South America: "rsync://rsync.samerica.gentoo.org/gentoo-portage"
172 # Europe: "rsync://rsync.europe.gentoo.org/gentoo-portage"
173 # Asia: "rsync://rsync.asia.gentoo.org/gentoo-portage"
174 # Australia: "rsync://rsync.au.gentoo.org/gentoo-portage"
176 # If you have multiple Gentoo boxes, it is probably a good idea to have only
177 # one of them sync from the rotations above. The other boxes can then rsync
178 # from the local rsync server, reducing the load on the mirrors.
179 # Instructions for setting up a local rsync server are available here:
180 # http://www.gentoo.org/doc/en/rsync.xml
182 #SYNC="rsync://rsync.gentoo.org/gentoo-portage"
184 # PORTAGE_RSYNC_RETRIES sets the number of times portage will attempt to retrieve
185 # a current portage tree before it exits with an error. This allows
186 # for a more successful retrieval without user intervention most times.
187 #PORTAGE_RSYNC_RETRIES="3"
189 # PORTAGE_RSYNC_EXTRA_OPTS can be used to feed additional options to the rsync
190 # command used by `emerge --sync`. This will not change the default options
191 # which are set by PORTAGE_RSYNC_OPTS (don't change those unless you know
192 # exactly what you're doing).
193 #PORTAGE_RSYNC_EXTRA_OPTS=""
198 # EMERGE_DEFAULT_OPTS allows emerge to act as if certain options are
199 # specified on every run. Useful options include --ask, --verbose,
200 # --usepkg and many others. Options that are not useful, such as --help,
202 #EMERGE_DEFAULT_OPTS=""
204 # INSTALL_MASK allows certain files to not be installed into your file system.
205 # This is useful when you wish to filter out a certain set of files from
206 # ever being installed, such as INSTALL.gz or TODO.gz
209 # MAKEOPTS provides extra options that may be passed to 'make' when a
210 # program is compiled. Presently the only use is for specifying
211 # the number of parallel makes (-j) to perform. The suggested number
212 # for parallel makes is CPUs+1.
215 # PORTAGE_NICENESS provides a default increment to emerge's niceness level.
216 # Note: This is an increment. Running emerge in a niced environment will
217 # reduce it further. Default is unset.
220 # AUTOCLEAN enables portage to automatically clean out older or overlapping
221 # packages from the system after every successful merge. This is the
222 # same as running 'emerge -c' after every merge. Set with: "yes" or "no".
223 # This does not affect the unpacked source. See 'noclean' below.
225 # Warning: AUTOCLEAN="no" can cause serious problems due to overlapping
226 # packages. Do not use it unless absolutely necessary!
229 # PORTAGE_TMPFS is a location where portage may create temporary files.
230 # If specified, portage will use this directory whenever possible
231 # for all rapid operations such as lockfiles and transient data.
232 # It is _highly_ recommended that this be a tmpfs or ramdisk. Do not
233 # set this to anything that does not give a significant performance
234 # enhancement and proper FS compliance for locks and read/write.
235 # /dev/shm is a glibc mandated tmpfs, and should be a reasonable
236 # setting for all linux kernel+glibc based systems.
237 #PORTAGE_TMPFS="/dev/shm"
239 # FEATURES are settings that affect the functionality of portage. Most of
240 # these settings are for developer use, but some are available to non-
241 # developers as well.
243 # 'buildpkg' causes binary packages to be created of all packages that
245 # 'buildsyspkg' only build binary packages for system packages.
246 # 'ccache' enable support for the dev-util/ccache package, which can
247 # noticably decrease the time needed to remerge previously built
249 # 'collision-protect'
250 # prevents packages from overwriting files that are owned by
251 # another package or by no package at all.
252 # 'distcc' enables distcc support via CC.
253 # 'distlocks' enables distfiles locking using fcntl or hardlinks. This
254 # is enabled by default. Tools exist to help clean the locks
255 # after crashes: /usr/lib/portage/bin/clean_locks.
256 # 'test' causes ebuilds to perform testing phases if they are capable
257 # of it. Some packages support this automatically via makefiles.
258 # 'metadata-transfer'
259 # automatically perform a metadata transfer when `emerge --sync`
261 # 'noauto' causes ebuild to perform only the action requested and
262 # not any other required actions like clean or unpack -- for
263 # debugging purposes only.
264 # 'nostrip' prevents the stripping of binaries.
265 # 'notitles' disables xterm titlebar updates (which contain status info).
267 # do fetching in parallel to compilation
268 # 'sandbox' enables sandboxing when running emerge and ebuild.
269 # 'strict' causes portage to react strongly to conditions that are
270 # potentially dangerous, like missing/incorrect Manifest files.
271 # 'stricter' causes portage to react strongly to conditions that may
272 # conflict with system security provisions (for example
273 # textrels, executable stacks).
274 # 'userfetch' when portage is run as root, drop privileges to
275 # portage:portage during the fetching of package sources.
276 # 'userpriv' allows portage to drop root privileges while it is compiling,
277 # as a security measure. As a side effect this can remove
278 # sandbox access violations for users.
279 # 'usersandbox' enables sandboxing while portage is running under userpriv.
280 #FEATURES="sandbox buildpkg ccache distcc userpriv usersandbox notitles noauto"
281 #FEATURES="sandbox ccache distcc distlocks"
283 # CCACHE_SIZE and CCACHE_DIR are used to control the behavior of ccache, and
284 # and are only used if "ccache" is in FEATURES.
286 # CCACHE_SIZE sets the space limitations for ccache. The default size is
287 # "2G", or 2 gigabytes. Units are specified with 'G', 'M', or 'K'.
291 # CCACHE_DIR sets the ccache path. If not specified, portage will default
292 # to "${PORTAGE_TMPDIR}/ccache".
294 # Note that to display ccache statistics outside of portage, you must
295 # remember to give the correct path to the cache.
297 # $ CCACHE_DIR=/var/tmp/ccache ccache -s
299 #CCACHE_DIR="${PORTAGE_TMPDIR}/ccache"
301 # DISTCC_DIR sets the temporary space used by distcc.
302 #DISTCC_DIR="${PORTAGE_TMPDIR}/.distcc"
304 # logging related variables:
305 # PORTAGE_ELOG_CLASSES: selects messages to be logged, possible values are:
306 # info, warn, error, log, qa, *
307 # Warning: commenting this will disable elog
308 PORTAGE_ELOG_CLASSES="warn error log"
310 # PORTAGE_ELOG_SYSTEM: selects the module(s) to process the log messages. Modules
311 # included in portage are (empty means logging is disabled):
312 # echo (display messages again when emerge exits)
313 # save (saves one log per package in $PORT_LOGDIR/elog,
314 # /var/log/portage/elog if $PORT_LOGDIR is unset)
315 # custom (passes all messages to $PORTAGE_ELOG_COMMAND)
316 # syslog (sends all messages to syslog)
317 # mail (send all messages to the mailserver defined
318 # in $PORTAGE_ELOG_MAILURI)
319 # save_summary (like "save" but merges all messages
320 # in $PORT_LOGDIR/elog/summary.log,
321 # /var/log/portage/elog/summary.log if
322 # $PORT_LOGDIR is unset)
323 # mail_summary (like "mail" but sends all messages in
324 # a single mail when emerge exits)
325 # To use elog you should enable at least one module
326 # The module name may be followed by a colon and a comma
327 # separated list of loglevels to override PORTAGE_ELOG_CLASSES
328 # for this module (e.g.
329 # PORTAGE_ELOG_SYSTEM="mail:warn,error syslog:* save")
330 #PORTAGE_ELOG_SYSTEM="save mail"
332 # PORTAGE_ELOG_COMMAND: only used with the "custom" logging module. Specifies a command
333 # to process log messages. Two variables are expanded:
334 # ${PACKAGE} - expands to the cpv entry of the processed
335 # package (see $PVR in ebuild(5))
336 # ${LOGFILE} - absolute path to the logfile
337 # Both variables have to be quoted with single quotes
338 #PORTAGE_ELOG_COMMAND="/path/to/logprocessor -p '\${PACKAGE}' -f '\${LOGFILE}'"
340 # PORTAGE_ELOG_MAILURI: this variable holds all important settings for the mail
341 # module. In most cases listing the recipient address and
342 # the receiving mailserver should be sufficient, but you can
343 # also use advanced settings like authentication or TLS. The
345 # address [[user:passwd@]mailserver[:port]]
347 # address: recipient address
348 # user: username for smtp auth (defaults to none)
349 # passwd: password for smtp auth (defaults to none)
350 # mailserver: smtp server that should be used to deliver the mail (defaults to localhost)
351 # alternatively this can also be a the path to a sendmail binary if you don't want to use smtp
352 # port: port to use on the given smtp server (defaults to 25, values > 100000 indicate that starttls should be used on (port-100000))
354 #PORTAGE_ELOG_MAILURI="root@localhost localhost" (this is also the default setting)
355 #PORTAGE_ELOG_MAILURI="user@some.domain mail.some.domain" (sends mails to user@some.domain using the mailserver mail.some.domain)
356 #PORTAGE_ELOG_MAILURI="user@some.domain user:secret@mail.some.domain:100465" (this is left uncommented as a reader exercise ;)
358 # PORTAGE_ELOG_MAILFROM: you can set the from-address of logmails with this variable,
359 # if unset mails are sent by "portage" (this default may fail
360 # in some environments).
361 #PORTAGE_ELOG_MAILFROM="portage@some.domain"
363 # PORTAGE_ELOG_MAILSUBJECT: template string to be used as subject for logmails. The following
364 # variables are expanded:
365 # ${PACKAGE} - see description of PORTAGE_ELOG_COMMAND
366 # ${HOST} - FQDN of the host portage is running on
367 #PORTAGE_ELOG_MAILSUBJECT="package \${PACKAGE} merged on \${HOST} with notice"