Files and directories

Updated 7 Novembre 2026

Cette page s'applique à Portage 3.0.82 et Calculate Utilities 3.8.

Fichiers de Portage

Directives de configuration

Portage fournit des paramètres par défaut stockés dans le fichier /usr/share/portage/config/make.globals. Portage se configure entièrement par des variables ; le rôle de chaque variable est décrit sur la page Configuring your system with variables.

Comme beaucoup de directives varient selon l'architecture, une partie des paramètres par défaut est incluse dans le profil système. Un lien symbolique /etc/portage/make.profile pointe vers le profil, et les valeurs elles-mêmes sont définies dans les fichiers make.defaults de ce profil et de tous ses profils parents.

Pour modifier des variables de configuration, ne modifiez pas make.globals et make.defaults - utilisez /etc/portage/make.conf à la place, qui a la priorité sur eux. Dans Calculate Linux, il ne s'agit pas d'un fichier mais d'un répertoire : le fichier binhost qu'il contient est créé par un modèle de la distribution (ne le modifiez pas à la main - un modèle .clt est nécessaire pour une valeur qui vous est propre, voir Templates), tandis que les paramètres utilisateur vont dans le fichier custom, qui contient des "poignées" commentées pour la compilation et pour le compilateur. Le répertoire make.conf est décrit en détail sur la page Configuring your system with variables.

Le fichier exemple /usr/share/portage/config/make.conf.example indique à quoi servent les variables : Portage ne le lit pas, c'est uniquement un exemple.

Vous pouvez aussi définir les variables de Portage par des variables d'environnement, mais vous ne devriez pas le faire.

Configuration définie par le profil

Le lien /etc/portage/make.profile pointe vers le profil que suit le système pointe vers le profil que suit le système : Portage trouve le profil par ce lien, alors que vos propres profils peuvent être placés n'importe où. Dans Calculate Linux, ce lien appartient à la distribution et mène dans le dépôt

Le lien /etc/portage/make.profile pointe vers le profil que suit le système pointe vers le profil que suit le système : Portage trouve le profil par ce lien, alors que vos propres profils peuvent être placés n'importe où. Dans Calculate Linux, ce lien appartient à la distribution et mène dans le dépôt distros - vers le profil /var/db/repos/distros/profiles/CLD/amd64/20, qui se place au-dessus du profil Gentoo : ses parents sont le profil Calculate et le profil de base Gentoo pour amd64. Vous ne devriez pas modifier ce lien (y compris avec eselect)les paquets binaires du miroir et les modèles world dépendent du profil de la distribution ; pour plus de détails, voir la page Mixing branches..

ses parents sont le profil Calculate et le profil de base Gentoo pour amd64. Vous ne devriez pas modifier ce lien (y compris avec eselect)Mixing branches..

Le profil contient des informations propres à l'architecture : la liste des paquets appartenant au système de ce profil, la liste des paquets qui ne fonctionnent pas avec ce profil ou qui sont masqués, et des données du même type.

Configuration définie par l'utilisateur

Pour modifier le comportement de Portage, modifiez les fichiers à l'intérieur de /etc/portage. Nous vous recommandons vivement d'utiliser les fichiers de /etc/portage eux-mêmes ; modifier le comportement de Portage par des variables d'environnement n'est pas recommandé.

À l'intérieur de /etc/portage, vous pouvez créer :

  • package.mask - la liste des paquets que Portage ne doit jamais installer ;
  • package.unmask - les paquets que vous pouvez installer même si un paquet est marqué comme instable ;
  • package.accept_keywords - les paquets que vous pouvez installer bien qu'ils n'aient pas encore été reconnus comme adaptés à votre système ou à votre architecture ;
  • package.use - les valeurs des drapeaux USE pour des paquets individuels plutôt que pour tout le système.

Tout cela n'a pas obligatoirement la forme de fichiers : chaque chemin peut être un répertoire, auquel cas Portage fusionne les paramètres de tous ses fichiers. Dans Calculate Linux, ces quatre éléments sont déjà créés sous forme de répertoires ; par exemple, /etc/portage/package.use/custom contient un fichier squelette qui est repris lors de l'installation du système.

De plus, la distribution fournit dans /etc/portage les répertoires savedconfig/, sets/ et profile/ (avec un squelette de la distribution pour package.provided), ainsi que le répertoire postsync.d/ avec le hook 50-eix-postsync, qui met à jour la base eix après la synchronisation.

La distribution ne crée pas le fichier (ou le répertoire) package.env - vous le créez vous-même s'il vous faut définir des variables d'environnement pour des paquets individuels ; la page Environment variables en traite.

La liste complète des fichiers et répertoires reconnus par Portage est donnée dans sa page man :

man portage

Changer l'emplacement des fichiers et des répertoires

Les fichiers de configuration énumérés ci-dessus ne peuvent pas être stockés ailleurs : Portage les cherche toujours à des chemins strictement définis. Cependant, pour les autres tâches - compilation des paquets, stockage des sources, dépôts - Portage a ses propres répertoires par défaut, et vous pouvez changer leur emplacement en définissant les variables correspondantes dans /etc/portage/make.conf.

Cette page ne remplace pas le guide de référence : les informations complètes sur les variables et les chemins se trouvent dans les pages man portage et make.conf.

man make.conf

Cartographie des chemins dans Calculate Linux

Les principaux répertoires de Portage dans une Calculate Linux installée :

Chemin Rôle
/etc/portage/make.conf répertoire des variables de configuration de l'utilisateur (et non un fichier)
/etc/portage/make.profile lien symbolique vers le profil actif
/usr/share/portage/config/ paramètres par défaut intégrés : make.globals, make.conf.example, binrepos.conf
/var/db/repos/gentoo miroir de l'arbre des fichiers ebuild de Gentoo
/var/db/repos/calculate paquets, eclasses et modèles de Calculate
/var/db/repos/distros profils des distributions (CLD, CLDX, CDS, etc.)
/var/calculate/repos/container dépôt des compilations de conteneurs
/var/calculate/repos/custom dépôt utilisateur
/var/calculate/distfiles sources téléchargées (variable DISTDIR)
/var/calculate/packages/x86_64 paquets binaires (variable PKGDIR)
/var/calculate/tmp répertoire de compilation (variable PORTAGE_TMPDIR)
/var/db/pkg base de données des paquets installés
/var/cache/edb cache des métadonnées de Portage
/var/lib/portage/world liste des paquets installés explicitement

Stockage des fichiers

Dépôts de fichiers ebuild

L'emplacement par défaut du dépôt principal gentoo est /var/db/repos/gentoo (il est marqué main-repo dans la sortie d'emerge --info). Le paramètre location dans les fichiers du répertoire /etc/portage/repos.conf définit l'emplacement de chaque dépôt.

Calculate Linux compte cinq dépôts ; leurs emplacements sont visibles dans le bloc Repositories de la sortie d'emerge --info :

emerge --info
Repositories:

custom
    location: /var/calculate/repos/custom
    masters: calculate gentoo
    volatile: True

calculate
    location: /var/db/repos/calculate
    sync-type: calculate
    sync-uri: https://github.com/calculatelinux/calculate
    masters: gentoo
    priority: 50
    volatile: False

container
    location: /var/calculate/repos/container
    sync-type: git
    sync-uri: https://github.com/calculatelinux/container
    masters: calculate gentoo
    priority: 50
    volatile: True

distros
    location: /var/db/repos/distros
    sync-type: calculate
    sync-uri: https://github.com/calculatelinux/distros
    masters: calculate gentoo
    priority: 50
    volatile: False

gentoo
    location: /var/db/repos/gentoo
    sync-type: calculate
    sync-uri: https://github.com/calculatelinux/gentoo
    priority: 50
    volatile: False

Rôle des dépôts : gentoo est un miroir de l'arbre Gentoo (synchronisé avec le dépôt du projet Calculate), calculate contient les paquets, eclasses et modèles de Calculate, distros contient les profils des distributions, container est le dépôt pour les compilations de conteneurs, et custom est un dépôt utilisateur dont les maîtres sont calculate et gentoo.

Не правьте файлы репозиториев дистрибутива

La configuration des dépôts de la distribution est portée par le fichier /etc/portage/repos.conf/zz-calculate.conf (les dépôts distros, calculate, gentoo et custom) et par le fichier /etc/portage/repos.conf/custom.conf (le dépôt container). La distribution les crée ; ils n'appartiennent à aucun paquet, et vous ne devriez pas les modifier à la main. Ajoutez votre propre dépôt sous forme de nouveau fichier dans /etc/portage/repos.conf - la page Stepping aside from the official tree entre davantage dans les détails.

L'utilitaire layman est absent du système : au lieu de l'installer, Calculate fournit un dépôt utilisateur custom prêt à l'emploi.

Si vous déplacez un dépôt ailleurs, définissez aussi les variables PKGDIR et DISTDIR dans /etc/portage/make.conf : à cause de la façon dont les variables sont traitées, elles ne remarqueront pas le déplacement par elles-mêmes.

Paquets binaires

Portage sait gérer des paquets binaires prêts à l'emploi. Dans le Portage vanilla, ils ne sont pas utilisés par défaut et devraient être recherchés dans /var/cache/binpkgs ; dans Calculate Linux, l'installation depuis des paquets binaires est le mode par défaut, et les compilations locales et téléchargées sont stockées dans /var/calculate/packages/x86_64 (la variable PKGDIR). La distribution définit l'adresse du serveur de paquets binaires ; le mécanisme est décrit sur la page Portage features.

Code source

Portage stocke les archives de sources téléchargées dans le répertoire défini par la variable DISTDIR ; dans Calculate Linux, c'est /var/calculate/distfiles. Le téléchargement se fait depuis les miroirs énumérés dans la variable GENTOO_MIRRORS.

Base de données de Portage

Portage conserve l'état du système - quels paquets sont installés et quels fichiers leur appartiennent - dans /var/db/pkg.

Не изменяйте файлы состояния вручную

Modifier les enregistrements de la base à la main peut fausser la vision que Portage a du système.

Cache de Portage

Le cache (heures de modification, paquets virtuels, informations sur l'arbre des dépendances) est conservé dans /var/cache/edb. C'est un cache au sens strict : vous pouvez le vider à condition qu'aucune application liée à Portage ne tourne à ce moment-là.

Fichier world

Portage conserve la liste des paquets installés explicitement dans le fichier /var/lib/portage/world. Dans Calculate, son contenu n'est pas formé par les seules installations de l'utilisateur

Create-шаблон world

# Calculate name=world format=world

#?in(os_linux_pkglist, calculate)!=#
media-fonts/terminus-font
sys-apps/busybox
sys-apps/calculate-toolkit
#sys-apps/ifplugd
sys-apps/less

La page Templates explique comment les modèles construisent les fichiers du système.

Compilation des logiciels

Pour chaque paquet en cours d'installation, Portage crée un répertoire de compilation séparé à l'intérieur du répertoire temporaire défini par la variable PORTAGE_TMPDIR ; dans Calculate Linux, c'est /var/calculate/tmp. La sortie de la commande montre les valeurs effectives des chemins temporaires sur votre système :

emerge --info

Par défaut, Portage installe tous les fichiers dans le système de fichiers courant, mais vous pouvez changer la racine d'installation avec la variable ROOT - c'est utile lors de la création de nouvelles images système.

Journalisation

Portage écrit ses journaux de travail dans le répertoire /var/log/portage : il contient le fichier summary.log et le sous-répertoire elog/ ; la variable PORT_LOGDIR n'est pas définie par défaut.

La journalisation se configure par les variables décrites dans la page man make.conf :

  • PORTAGE_ELOG_CLASSES
  • PORTAGE_ELOG_COMMAND
  • PORTAGE_ELOG_MAILFROM
  • PORTAGE_ELOG_MAILSUBJECT
  • PORTAGE_ELOG_MAILURI

Voir aussi