Handbook:Parts/Portage/Variables/ru

Настройка Portage
Как говорилось ранее, Portage настраивается с помощью множества переменных, которые могут быть определены в или в некоторых подкаталогах. Пожалуйста, ознакомьтесь с man-страницами и portage для получения дополнительной информации.

Параметры для configure и компилятора
Когда Portage компилирует приложения, он передает компилятору и сценарию configure содержимое следующих переменных:


 * CFLAGS и CXXFLAGS : определяет желаемые флаги компилятора для компиляции кода на C и C++
 * CHOST : определяет информацию о хосте, на котором производиться компиляция (build host), которая передается сценариям configure в приложении
 * MAKEOPTS : передается команде make и в основном используется для определения степени распараллеливания во время компиляции. Больше информации всех параметрах команды make можно найти в man-странице make.

Также переменная USE используется во время конфигурации и компиляции, но об этом было рассказано в предыдущих главах.

Параметры установки
Когда Portage устанавливает (merged) более новую версию программного обеспечения, он удалит устаревшие файлы старой версии ПО из системы. Portage дает пользователю задержку в 5 секунд перед удалением старых версий. Эти 5 секунд определяются в переменной CLEAN_DELAY.

Можно сказать emerge использовать определенные параметры при каждом запуске, настроив их в переменой EMERGE_DEFAULT_OPTS. Некоторые полезные параметры,  ,   и так далее.

Каталоги, защищаемые Portage
Portage не перезаписывает старые файлы новыми, из новой устанавливаемой версии, если они хранятся в защищенном месте. Эти защищенные каталоги определяются в переменной CONFIG_PROTECT и, как правило, там перечислены каталоги хранения конфигурационных файлов. Каталоги в списке разделяются пробелами.

A file that would be written in such a protected location is renamed and the user is warned about the presence of a newer version of the (presumable) configuration file.

Чтобы узнать текущие настройки CONFIG_PROTECT, проверьте вывод команды :

Больше информации о том, как работает защита конфигурационных файлов в Portage можно найти в разделе CONFIGURATION FILES man-страницы emerge:

Исключение каталогов
To 'unprotect' certain subdirectories of protected locations users can use the CONFIG_PROTECT_MASK variable.

Расположение серверов
When the requested information or data is not available on the system, Portage will retrieve it from the Internet. The server locations for the various information and data channels are defined by the following variables:


 * GENTOO_MIRRORS : Defines a list of server locations which contain source code (distfiles).
 * PORTAGE_BINHOST : Defines a particular server location containing prebuilt packages for the system.

A third setting involves the location of the rsync server which users use to update their Portage tree. This is defined in the file (or a file inside that directory if it is defined as a directory):


 * sync-type : Defines the type of server and defaults to.
 * sync-uri : Defines a particular server which Portage uses to fetch the Portage tree.

The GENTOO_MIRRORS, sync-type , and sync-uri variables can be set automatically through the application. Of course, needs to be installed first before it can be used. For more information, see mirrorselect's online help:

If the environment requires the use of a proxy server, then the http_proxy, ftp_proxy , and RSYNC_PROXY variables can be declared.

Команды загрузки
When Portage needs to fetch source code, it uses wget by default. This can be changed through the FETCHCOMMAND variable.

Portage is able to resume partially downloaded source code. It uses wget by default, but this can be altered through the RESUMECOMMAND variable.

Make sure that the FETCHCOMMAND and RESUMECOMMAND store the source code in the correct location. Inside the variables the \${URI} and \${DISTDIR} variables can be used to point to the source code location and distfiles location respectively.

It is also possible to define protocol-specific handlers with FETCHCOMMAND_HTTP, FETCHCOMMAND_FTP , RESUMECOMMAND_HTTP , RESUMECOMMAND_FTP , and so on.

Настройка rsync
It is not possible to alter the rsync command used by Portage to update the Portage tree, but it is possible to set some variables related to the rsync command:


 * PORTAGE_RSYNC_OPTS : Sets a number of default variables used during sync, each space-separated. These shouldn't be changed unless you know exactly what you're doing. Note that certain absolutely required options will always be used even if PORTAGE_RSYNC_OPTS is empty.


 * PORTAGE_RSYNC_EXTRA_OPTS : Used to set additional options when syncing. Each option should be space separated:
 * : This defines the number of seconds an rsync connection can idle before rsync sees the connection as timed-out. This variable defaults to  but dialup users or individuals with slow computers might want to set this to   or higher.
 * : This points to a file listing the packages and/or categories rsync should ignore during the update process. In this case, it points to.
 * : Reduces output to the screen.
 * : Prints a complete filelist.
 * : Displays a progress meter for each file.


 * PORTAGE_RSYNC_RETRIES : Defines how many times rsync should try connecting to the mirror pointed to by the SYNC variable before bailing out. This variable defaults to.

For more information on these options and others, please read man rsync.

Выбор ветки
It is possible to change the default branch with the ACCEPT_KEYWORDS variable. It defaults to the architecture's stable branch. More information on Gentoo's branches can be found in the next chapter.

Возможности Portage
It is possible to activate certain portage features through the FEATURES variable. The Portage features have been discussed in previous chapters.

Resource management
With the PORTAGE_NICENESS variable users can augment or reduce the nice value portage runs with. The PORTAGE_NICENESS value is added to the current nice value.

Более подробную информацию о значениях nice смотрите в man-странице nice:

Output behavior
The NOCOLOR variable, which defaults to, defines if Portage should disable the use of colored output.