Profiles

Profiles are settings for supported architecture and default settings for the portage package system (system ebuilds and default use flags).

Open the upgrading guide https://wiki.gentoo.org/wiki/Upgrading_Gentoo and see what to do. There is also a description in https://wiki.gentoo.org/wiki/Profile.

eselect deals with the profiles:

eselect profile list shows all profiles available and

eselect profile set<number> lets change (update) to an other profile.

Behind the scenes it modifies where the link /etc/make.profile points to.

Profiles have sub-profiles as example the profile default has the sub-profile linux default/linux/x86/10.0/desktop/gnome and this corresponds the directory and subdirectory structure under /usr/portage/profiles.

When changing the profiles run emerge --update --deep --newuse world since it is expected that the useflags have been changed.

Check your profile by following the link /etc/make.profile , that points somewhere into /usr/portage/profiles . Files are shared between different profiles, to avoid duplication. In cascaded profiles a file called parent points to a list what has been added too. Using the links in the parent files a complete tree of directories can be created and those directories contain the files defining the profiles. as example the file make.defaults appears a couple of times and holds the USE flag settings.

Figure 14.1. Cascading profiles

profile


CHOST

The system variable CHOST tells the c compiler for what it has to compile. Once set, modifying require a sequence of steps until the complete system gets aware of the change.

Recompiling everything using emerge --ask --emptytree @world might be necessary. See: https://wiki.gentoo.org/wiki/Changing_the_CHOST_variable

On newer profile CHOST does not have to be set in /etc/portage/make.conf since the profiles have a default value.

CHOST contains different fields see: https://wiki.gentoo.org/wiki/CHOST

Example 14.2. CHOST

x86_64-pc-linux-gnu

  • x86_64 is the architecture (only mandatory field)

  • pc is the vendor information

  • linux is the operating system

  • gnu is the c library



Linurs startpage