1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
|
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Contains local system settings for Portage system
# Please review 'man make.conf' for more information.
# Build-time functionality
# ========================
#
# The USE variable is used to enable optional build-time functionality. For
# example, quite a few packages have optional X, gtk or GNOME functionality
# that can only be enabled or disabled at compile-time. Gentoo Linux has a
# very extensive set of USE variables described in our USE variable HOWTO at
# https://wiki.gentoo.org/wiki/Handbook:X86/Working/USE
#
# The available list of use flags with descriptions is in the ebuild repository.
# Use 'less' to view them: --> less /var/db/repos/gentoo/profiles/use.desc <--
#
# 'ufed' is an ncurses/dialog interface available in portage to make handling
# useflags for you. 'emerge app-portage/ufed'
#
# Example:
#USE="X gtk gnome -alsa"
# Host and optimization settings
# ==============================
#
# For optimal performance, enable a CFLAGS setting appropriate for your CPU.
#
# Please note that if you experience strange issues with a package, it may be
# due to gcc's optimizations interacting in a strange way. Please test the
# package (and in some cases the libraries it uses) at default optimizations
# before reporting errors to developers.
#
# If your gcc supports it, you can add -frecord-gcc-switches to all of the
# following *FLAGS in order to enable *FLAGS ignorance checking for ebuilds:
# CFLAGS, CXXFLAGS, FFLAGS, and FCFLAGS.
# Note that this check is only enabled if every one of these variables contains
# -frecord-gcc-switches, since otherwise the check could result in false
# positive results.
#
# Please refer to the GCC manual for a list of possible values.
#
#CFLAGS="-O2 -pipe"
#
# 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
# ================
#
# Gentoo is using a new masking system to allow for easier stability testing
# on packages. KEYWORDS are used in ebuilds to mask and unmask packages based
# on the platform they are set for. A special form has been added that
# indicates packages and revisions that are expected to work, but have not yet
# been approved for the stable set. '~arch' is a superset of 'arch' which
# includes the unstable, in testing, packages. Users of the 'x86' architecture
# would add '~x86' to ACCEPT_KEYWORDS to enable unstable/testing packages.
# '~ppc', '~sparc' are the unstable KEYWORDS for their respective platforms.
#
# Please note that this is not for development, alpha, beta, nor cvs release
# packages. "Broken" packages will not be added to testing and should not be
# requested to be added. Alternative routes are available to developers
# for experimental packages, and it is at their discretion to use them.
#
# DO NOT PUT ANYTHING BUT YOUR SPECIFIC ~ARCHITECTURE IN THE LIST.
# IF YOU ARE UNSURE OF YOUR ARCH, OR THE IMPLICATIONS, DO NOT MODIFY THIS.
#
#ACCEPT_KEYWORDS="~arch"
# ACCEPT_LICENSE is used to mask packages based on licensing restrictions.
# It may contain both license and group names, where group names are
# prefixed with the '@' symbol. License groups are defined in the
# license_groups file (see portage(5) man page). In addition to license
# and group names, the * and -* wildcard tokens are also supported.
#
# Only accept licenses in the FREE license group (i.e. Free Software).
#ACCEPT_LICENSE="-* @FREE"
#
# Accept any license except those in the EULA license group.
#ACCEPT_LICENSE="* -@EULA"
# Portage Directories
# ===================
#
# Each of these settings controls an aspect of portage's storage and file
# system usage. If you change any of these, be sure it is available when
# you try to use portage. *** DO NOT INCLUDE A TRAILING "/" ***
#
# PORTAGE_TMPDIR is the location portage will use for compilations and
# temporary storage of data. This can get VERY large depending upon
# the application being installed.
#PORTAGE_TMPDIR=/var/tmp
#
# PORTDIR is the location of the ebuild repository. This is the repository
# for all profile information as well as all ebuilds. If you change
# this, you must update your /etc/portage/make.profile symlink accordingly.
# ***Warning***
# Data stored inside PORTDIR is in peril of being overwritten or deleted by
# the emerge --sync command.
#PORTDIR=/var/db/repos/gentoo
#
# DISTDIR is where all of the source code tarballs will be placed for
# 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.
#DISTDIR=/var/cache/distfiles
#
# PKGDIR is the location of binary packages that you can have created
# with '--buildpkg' or '-b' while emerging a package. This can get
# up to several hundred megs, or even a few gigs.
#PKGDIR=/var/cache/binpkgs
#
# PORTAGE_LOGDIR is the location where portage will store all the logs it
# creates from each individual merge. They are stored as
# ${CATEGORY}:${PF}:YYYYMMDD-HHMMSS.log in the directory specified.
# If the directory 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 its permissions.
#PORTAGE_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
# defined.
#PORTDIR_OVERLAY=/usr/local/portage
# Fetching files
# ==============
#
# If you need to set a proxy for wget or lukemftp, add the appropriate "export
# ftp_proxy=<proxy>" and "export http_proxy=<proxy>" lines to /etc/profile if
# all users on your system should use them.
#
# 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. The command should be written to place the fetched file
# at \${DISTDIR}/\${FILE}.
#
# Default fetch command (3 tries, passive ftp for firewall compatibility)
#FETCHCOMMAND="wget -t 3 -T 60 --passive-ftp -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
#RESUMECOMMAND="wget -c -t 3 -T 60 --passive-ftp -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
#
# Using wget, ratelimiting downloads
#FETCHCOMMAND="wget -t 3 -T 60 --passive-ftp --limit-rate=200k -O \"\${DISTDIR}/\${FILE}\" \"\${URI}\""
#RESUMECOMMAND="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}\""
#
# 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
# another mirror we highly recommend leaving the default mirror at the end of
# the list so that portage will fall back to it if the files cannot be found
# on your specified mirror. We _HIGHLY_ recommend that you change this setting
# to a nearby mirror by merging and using the 'mirrorselect' tool.
#GENTOO_MIRRORS="<your_mirror_here> http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
#
# Portage uses PORTAGE_BINHOST to specify mirrors for prebuilt-binary packages.
# The list is a single entry specifying the full address of the directory
# serving the tbz2's for your system. Running emerge with either '--getbinpkg'
# or '--getbinpkgonly' will cause portage to retrieve the metadata from all
# packages in the directory specified, and use that data to determine what will
# be downloaded and merged. '-g' or '-gK' are the recommend parameters. Please
# consult the man pages and 'emerge --help' for more information. For FTP, the
# default connection is passive -- If you require an active connection, affix
# an asterisk (*) to the end of the host:port string before the path.
#PORTAGE_BINHOST="http://grp.mirror.site/gentoo/grp/1.4/i686/athlon-xp/"
# This ftp connection is passive ftp.
#PORTAGE_BINHOST="ftp://login:pass@grp.mirror.site/pub/grp/i686/athlon-xp/"
# This ftp connection is active ftp.
#PORTAGE_BINHOST="ftp://login:pass@grp.mirror.site:21*/pub/grp/i686/athlon-xp/"
# Synchronizing Portage
# =====================
#
# Each of these settings affects how Gentoo synchronizes the ebuild repository.
# Synchronization is handled by rsync and these settings allow some control
# over how it is done.
#
# SYNC is the server used by rsync to retrieve a localized rsync mirror
# rotation. This allows you to select servers that are geographically
# close to you, yet still distribute the load over a number of servers.
# Please do not single out specific rsync mirrors. Doing so places undue
# stress on particular mirrors. Instead you may use one of the following
# continent specific rotations:
#
# Default: "rsync://rsync.gentoo.org/gentoo-portage"
# North America: "rsync://rsync.namerica.gentoo.org/gentoo-portage"
# South America: "rsync://rsync.samerica.gentoo.org/gentoo-portage"
# Europe: "rsync://rsync.europe.gentoo.org/gentoo-portage"
# Asia: "rsync://rsync.asia.gentoo.org/gentoo-portage"
# Australia: "rsync://rsync.au.gentoo.org/gentoo-portage"
#
# If you have multiple Gentoo boxes, it is probably a good idea to have only
# one of them sync from the rotations above. The other boxes can then rsync
# from the local rsync server, reducing the load on the mirrors.
# Instructions for setting up a local rsync server are available here:
# https://wiki.gentoo.org/wiki/Local_Mirror
#
#SYNC="rsync://rsync.gentoo.org/gentoo-portage"
#
# PORTAGE_RSYNC_RETRIES sets the number of times portage will attempt to retrieve
# a current ebuild repository before it exits with an error. This allows
# for a more successful retrieval without user intervention most times.
# 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
# which are set by PORTAGE_RSYNC_OPTS (don't change those unless you know
# exactly what you're doing).
#PORTAGE_RSYNC_EXTRA_OPTS=""
#
# Advanced Features
# =================
#
# EMERGE_DEFAULT_OPTS allows emerge to act as if certain options are
# specified on every run. Useful options include --ask, --verbose,
# --usepkg and many others. Options that are not useful, such as --help,
# are not filtered.
#EMERGE_DEFAULT_OPTS=""
#
# INSTALL_MASK allows certain files to not be installed into your file system.
# This is useful when you wish to filter out a certain set of files from
# ever being installed, such as INSTALL.gz or TODO.gz
#INSTALL_MASK=""
#
# MAKEOPTS provides extra options that may be passed to 'make' when a
# program is compiled. Presently the only use is for specifying
# the number of parallel makes (-j) to perform. The suggested number
# for parallel makes is CPUs+1.
#MAKEOPTS="-j2"
#
# PORTAGE_NICENESS provides a default increment to emerge's niceness level.
# Note: This is an increment. Running emerge in a niced environment will
# 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 its 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".
# This does not affect the unpacked source. See 'noclean' below.
#
# Warning: AUTOCLEAN="no" can cause serious problems due to overlapping
# packages. Do not use it unless absolutely necessary!
#AUTOCLEAN="yes"
#
# 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.
#
# CCACHE_SIZE sets the space limitations for ccache. The default size depends
# on ccache itself; see the -M flag in the ccache(1) man page for details.
#
#CCACHE_SIZE="5GiB"
#
# CCACHE_DIR sets the ccache path. If not specified, portage will default
# to "${PORTAGE_TMPDIR}/ccache".
#
# Note that to display ccache statistics outside of portage, you must
# remember to give the correct path to the cache.
#
# $ CCACHE_DIR=/var/tmp/ccache ccache -s
#
#CCACHE_DIR="${PORTAGE_TMPDIR}/ccache"
# DISTCC_DIR sets the temporary space used by distcc.
#DISTCC_DIR="${PORTAGE_TMPDIR}/.distcc"
# logging related variables:
# PORTAGE_ELOG_CLASSES: selects messages to be logged, possible values are:
# info, warn, error, log, qa, *
#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 $PORTAGE_LOGDIR/elog,
# /var/log/portage/elog if $PORTAGE_LOGDIR is unset)
# custom (passes all messages to $PORTAGE_ELOG_COMMAND)
# syslog (sends all messages to syslog)
# mail (send all messages to the mailserver defined
# in $PORTAGE_ELOG_MAILURI)
# save_summary (like "save" but merges all messages
# in $PORTAGE_LOGDIR/elog/summary.log,
# /var/log/portage/elog/summary.log if
# $PORTAGE_LOGDIR is unset)
# 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_summary:log,warn,error,qa echo"
# PORTAGE_ELOG_COMMAND: only used with the "custom" logging module. Specifies a command
# to process log messages. Two variables are expanded:
# ${PACKAGE} - expands to the cpv entry of the processed
# package (see $PVR in ebuild(5))
# ${LOGFILE} - absolute path to the logfile
# Both variables have to be quoted with single quotes
#PORTAGE_ELOG_COMMAND="/path/to/logprocessor -p '\${PACKAGE}' -f '\${LOGFILE}'"
# PORTAGE_ELOG_MAILURI: this variable holds all important settings for the mail
# module. In most cases listing the recipient address and
# the receiving mailserver should be sufficient, but you can
# also use advanced settings like authentication or TLS. The
# full syntax is:
# address [[user:passwd@]mailserver[:port]]
# where
# address: recipient address
# user: username for smtp auth (defaults to none)
# passwd: password for smtp auth (defaults to none)
# mailserver: smtp server that should be used to deliver the mail (defaults to localhost)
# alternatively this can also be a the path to a sendmail binary if you don't want to use smtp
# port: port to use on the given smtp server (defaults to 25, values > 100000 indicate that starttls should be used on (port-100000))
# 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 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
# in some environments).
#PORTAGE_ELOG_MAILFROM="portage@some.domain"
# PORTAGE_ELOG_MAILSUBJECT: template string to be used as subject for logmails. The following
# 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="[portage] ebuild log for \${PACKAGE} on \${HOST}"
|