Профили Funtoo

From Funtoo
Revision as of 17:31, August 13, 2015 by Cirill (talk | contribs)
Jump to navigation Jump to search

Other languages:
English • ‎Türkçe • ‎español • ‎português do Brasil • ‎slovenčina • ‎русский • ‎中文(中国大陆)‎ • ‎日本語

Данная страница содержит сведения о системе профилей Funtoo Linux -- о том, как они они работают, какие имеются профили и как использовать epro для первоначальной установки или изменения настроек профилей.

Типы профилей

Исторически для настройки Gentoo или Funtoo - системы пользователям приходилось добавлять огромные количества настроек в /etc/make.conf, что делало настройку системы более сложной, чем нам бы того хотелось. В Gentoo существует возможность задать только один "системный профиль". Таковым можно считать совокупность настроек по умолчанию, которые Portage использует для сборки всего что есть у вас в системе. Вместо этого единственного профиля, Funtoo Linux использует множество подпрофилей и выносит из /etc/make.conf в систему профилей множество настроек. В Funtoo Linux доступны следующие типы профилей:

Sub-Profile TypeDescription
archTypically x86-32bit or x86-64bit, this defines the processor type and support of your system. This is defined when your stage was built and should not be changed.
buildDefines whether your system is a current, stable or experimental build. current systems will have newer packages unmasked than stable systems. This is defined when your stage is built and is typically not changed.
subarchDefines CPU optimizations for your system. The subarch is set at the time the stage3 is built, but can be changed later to better settings if necessary. Be sure to pick a setting that is compatible with your CPU.
flavorDefines the general type of system, such as server or desktop, and will set default USE flags appropriate for your needs.
mix-insDefines various optional settings that you may be interested in enabling.
   Note

Flavors can (and often do) inherit settings from other flavors and mix-ins. Mix-ins can also inherit settings from other mix-ins. For example, X is inherited by gnome. The epro tool will show both as being enabled so there are no surprises.

Использование epro

epro show отображает текущие настройки профилей в вашей системе:

root #  epro show

=== Enabled Profiles: ===

        arch:  x86-64bit
       build:  current
     subarch:  intel64-haswell
      flavor:  desktop
     mix-ins:  gnome


=== All inherited flavors from desktop flavor: ===

                     workstation (from desktop flavor)
                            core (from workstation flavor)
                         minimal (from core flavor)

=== All inherited mix-ins from desktop flavor: ===

                               X (from workstation flavor)
                           audio (from workstation flavor)
                             dvd (from workstation flavor)
                           media (from workstation flavor)
      mediadevice-audio-consumer (from media mix-in)
                mediadevice-base (from mediadevice-audio-consumer mix-in)
      mediadevice-video-consumer (from media mix-in)
                mediadevice-base (from mediadevice-video-consumer mix-in)
        mediaformat-audio-common (from media mix-in)
          mediaformat-gfx-common (from media mix-in)
        mediaformat-video-common (from media mix-in)
                  console-extras (from workstation flavor)
                           print (from desktop flavor)

To view all available sub-profile settings, use epro list:

root #  epro list

Enabled profiles will be highlighted in cyan. Directly enabled profiles will be in bold and have an asterisk * appended. Sub-profiles enabled via inheritance will be highlighted.

Примеры использования

Add the mix-ins gnome and kde
root #  epro mix-ins +gnome +kde
Remove a mix-in, for example gnome
root #  epro mix-ins -gnome
Change the profile arch to x86-64bit
root #  epro arch x86-64bit
Change the subarch to generic_64
root #  epro subarch generic_64
Change the system flavor
root #  epro flavor desktop
Get JSON output of profile settings
root #  epro show-json
Get current sub-profile setting in text form
root #  epro get [profiletype]

Конфигурации

В системе можно одновременно задействовать только один профиль конфигурации. Доступны следующие варианты:

FlavorDescription
minimalThis contains the bare minimum settings for all Funtoo Linux flavors.
coreThe core flavor includes the minimal flavor, plus reasonable settings, and is used for the official stage3 downloads.
serverIn the future, the server flavor will include the core flavor, plus specific settings designed for servers. At the moment, it is equivalent to the core flavor.
workstationThe workstation flavor is a minimal desktop system. It includes the core flavor, plus these mix-ins: X, audio, dvd, media and console-extras.
desktopThe desktop flavor includes the common settings for any full-featured desktop system. It includes the workstation flavor plus printing support. The user is expected to further customize their system with a desktop environment of choice, such as KDE, GNOME, or XFCE, possibly by using a mix-in.

Дополнения

Одновременно в системе может быть задействовано любое количество дополнений. Доступные следующие варианты дополнений:

Mix-inDescription
audioEnables core audio-related settings, currently related to ALSA.
console-extrasEnables things that are nice to have for console-only systems. Currently enabling gpm in USE.
dvdUSE settings related to optical drives -- CDR/DVD-ROM/RW use.
gnomeUSE and package.use settings required to merge GNOME. Designed to be used with desktop or workstation flavor.
hardenedEnables hardened support.
kdeUSE and package.use settings required to merge KDE. Designed to be used with desktop or workstation flavor.
mediaUSE settings related to audio/video media encoding. Can be for desktops or servers.
printEnables printing capability.
vmware-guestSettings related to using Funtoo Linux as a VMWare virtual machine guest.
XSettings related to the X Window System and hardware support.
xfceUSE settings required for merging XFCE.

Дополнения для мультимедийных устройств

Media device mix-ins have been created to support media devices, including external and portable devices, and associated low-level hardware support and hardware-focused codecs. Media devices have been categorized into audio and video categories, and consumer and professional categories. "Consumer" devices are those devices that regular desktop users might typically use, while "professional" devices are those that professionals, hobbyists or enthusiasts would typically use. Here are the new mix-ins for media devices:

Media Device Mix-inDescription
mediadevice-baseCommon, universally-supported media devices, like IEEE-1394 (Firewire), CDDA, CDIO. Other mediadevice mix-ins have this as a parent.
mediadevice-audio-consumerConsumer audio devices, such as personal portable media players (iOS, iPod, etc.)
mediadevice-audio-proPro audio support, such as JACK.
mediadevice-video-consumerConsumer video support, such as DVD, Blu Ray, V4L
mediadevice-video-proPro video support, such as dv, dc1394.

Дополнения для медиа-форматов

Дополнения для медиа-форматов созданы для того, чтобы предоставить поддержку чтения, записи и кодирования изображений, звука и видео в различных медиаформатах. Популярные форматы собраны в коллекции "common", все остальное находится в коллекции "extra". Давайте взглянем на наши новые дополнения:

Дополнение для медиа-формата Описание
mediaformat-video-commonОбщие (т.е. самые популярные) видеоформаты.
mediaformat-video-extraБолее необычные форматы видео.
mediaformat-audio-commonОбщие (т.е. самые популярные) аудиоформаты.
mediaformat-audio-extraБолее необычные форматы аудио.
mediaformat-gfx-commonОбщие (т.е. самые популярные) форматы графических фалов.
mediaformat-gfx-extraБолее необычные форматы хранения графики.

Использование медиа-дополнений

Существующее дополнение media никуда не делось и по прежнему автоматически подтягивается конфигурациями desktop и workstation. В настоящее время это дополнение включает следующие родительские дополнения:

  • mediadevice-audio-consumer
  • mediadevice-video-consumer
  • mediaformat-audio-common
  • mediaformat-gfx-common
  • mediaformat-video-common

В дополнение к этому, теперь еще есть новое дополнение media-pro, которое устанавливается вручную. Оно подключает следующие дополнения:

  • mediadevice-audio-pro
  • mediadevice-video-pro

То есть вам фактически надо выбрать конфигурацию desktop или workstation, а если вам также нужна поддержка профессионального оборудования, вы также включите дополнение media-pro. Если вам понадобится поддержка дополнительных медиаформатов, вы также можете включить одно или несколько дополнений mediaformat-*-extra в зависимости от того какие форматы вам нужны. Разумеется, можно включить только отдельные необходимые вам дополнения и дополнить их по вкусу установкой собственных USE-флагов.

Где хранятся настройки профиля

Funtoo Linux хранит свои настройки профилей в файле /etc/portage/make.profile/parent. Обычно пользователю нет необходимости редактировать его вручную. Для того чтобы вносить в него изменения используются команды ego и epro. Однако, посмотреть что находится внутри этого файла может быть полезно. Простой сервер, например, может иметь следующие настройки профилей:

   /etc/portage/make.profile/parent
gentoo:funtoo/1.0/linux-gnu/arch/x86-64bit
gentoo:funtoo/1.0/linux-gnu/build/current
gentoo:funtoo/1.0/linux-gnu/flavor/core

Настройки профиля для типичного настольного компьютера могут выглядеть следующим образом:

   /etc/portage/make.profile/parent
gentoo:funtoo/1.0/linux-gnu/arch/x86-64bit
gentoo:funtoo/1.0/linux-gnu/build/current
gentoo:funtoo/1.0/linux-gnu/flavor/desktop
gentoo:funtoo/1.0/linux-gnu/mix-ins/dvd
gentoo:funtoo/1.0/linux-gnu/mix-ins/media

История

This new system is really a completion of the original cascading profile design that was co-designed by Daniel Robbins and Seemant Kulleen and implemented by Seemant Kulleen as part of Portage. Funtoo Profiles designed to leverage the existing cascading profile system and provide something much more useable and maintainable for users and developers alike. Here are some of its benefits:

  • Fewer settings in /etc/make.conf. CHOST and ARCH no longer set in /etc/make.conf.
  • Separation of concerns -- arch, build, and flavor-related settings are organized together.
  • User flexibility - any number of mix-ins can be enabled to tweak masks or USE settings as needed.
   Note

С дополнительными сведениями о том как можно расширить возможности системы профилей, можно познакомиться на странице Custom Profiles.