Handbook:PPC/Portage/Files/fr
Les fichiers de Portage
Directives de configuration
Portage est livré avec une configuration par défaut située dans /usr/share/portage/config/make.globals. Toute la configuration de Portage est gérée par des variables. Les variables influant sur Portage, ainsi que leur signification, seront détaillées plus tard.
Étant donné que de nombreuses directives de configuration diffèrent suivant les architectures, Portage possède également des fichiers de configuration par défaut qui font partie du profil du système. Ce profil est pointé par le lien symbolique /etc/portage/make.profile. Les configurations de Portage sont définies dans les fichiers make.defaults du profil et de tous les profils parents. Nous expliquerons plus en détail les profils et le répertoire /etc/portage/make.profile plus tard.
Lorsque vous modifiez une variable de configuration, ne modifiez pas /usr/share/portage/config/make.globals ou make.defaults. Plutôt, utilisez /etc/portage/make.conf qui a la priorité sur les fichiers précédents. Pour plus d'informations, lire le fichier /usr/share/portage/config/make.conf.example. Comme son nom l'indique, ceci n'est qu'un exemple de fichier - Portage ne lit pas dans ce fichier.
Il est également possible de définir une variable de configuration Portage en tant que variable d'environnement, mais nous ne le recommandons pas.
Information spécifique au profil
Nous avons déjà rencontré le répertoire /etc/portage/make.profile. En fait, ce n'est pas exactement un répertoire mais un lien symbolique vers un profil, par défaut celui de /var/db/repos/gentoo/profiles/ bien que l'on puisse créer ses propres profils ailleurs et y pointer. Le profil indiqué par ce lien symbolique est le profil auquel le système adhère.
Un profil contient des informations spécifiques à l'architecture pour Portage, telles qu'une liste de paquets appartenant au système correspondant à ce profil, une liste de paquets qui ne fonctionnent pas (ou qui sont masqués) pour ce profil, etc.
Configuration spécifique à l'utilisateur
Lorsque le comportement de Portage doit être modifié en ce qui concerne l'installation d'un logiciel, alors le bon jeu de fichiers dans /etc/portage/ devra être changé. Il est fortement recommandé d'utiliser les fichiers dans /etc/portage/ et fortement déconseillé de surcharger le comportement par l'utilisation des variables d'environnement !
Dans /etc/portage/ les utilisateurs peuvent créer les fichiers suivants :
- package.mask qui liste les paquets que Portage ne devrait jamais essayer d'installer
- package.unmask qui liste les paquets que Portage devrait pouvoir installer même si les développeurs Gentoo découragent fortement les utilisateurs de le faire
- package.accept_keywords qui liste les paquets que Portage devrait pouvoir installer même si le paquet n'a pas encore été confirmé comme stable pour le système ou l'architecture
- package.use qui répertorie les options de la variable USE à utiliser pour certains paquets sans que le système entier utilise ces options de la variable USE
Ceux-ci n'ont pas être des fichiers ; ils peuvent également être des répertoires contenant un fichier par paquet. Vous trouverez plus d'informations sur le répertoire /etc/portage/ et une liste complète des fichiers pouvant être créés dans la page de manuel de Portage :
user $
man portage
Changer l'emplacement des fichiers et répertoires de Portage
Les fichiers de configuration mentionnés précédemment ne peuvent pas être stockés ailleurs - Portage recherchera toujours ces fichiers de configuration à ces emplacements précis. Cependant, Portage utilise de nombreux autres emplacements à des fins diverses : répertoire de compilation, stockage du code source, emplacement du dépôt Gentoo, ...
Tous ces objectifs ont des emplacements par défaut bien connus mais peuvent être modifiés selon les goûts personnels via /etc/portage/make.conf. Le reste de ce chapitre explique les emplacements spéciaux que Portage utilise et comment modifier leur emplacement sur le système de fichiers.
Ce document n'est pas destiné à être utilisé comme une référence. Pour obtenir une couverture complète, veuillez consulter les pages de manuel de Portage et de make.conf :
user $
man portage
user $
man make.conf
Stocker des fichiers
Le dépôt ebuild de Gentoo
L'emplacement par défaut du dépôt ebuild de Gentoo est /var/db/repos/gentoo. Cela est défini par le fichier repos.conf situè à l'emplacement /usr/share/portage/config/repos.conf. Pour modifier la valeur par défaut, copiez ce fichier dans /etc/portage/repos.conf/gentoo.conf et modifiez le paramètre location. Lorsque vous stockez le dépôt ebuild e Gentoo ailleurs (en modifiant cette variable), n'oubliez pas de changer le lien symbolique /etc/portage/make.profile en conséquence.
Après avoir modifié le paramètre location dans /etc/portage/repos.conf/gentoo.conf, il est recommandé de modifier les variables suivantes dans /etc/portage/make.conf car elles ne remarqueront pas la modification du paramètre location : PKGDIR, DISTDIR, et RPMDIR. Cela est dû à la façon dont Portage gère les variables.
Exécutables pré-compilés
Bien que Portage n'utilise pas d'exécutables pré-compilés par défaut, il en possède un support étendu. Lorsque vous demandez à Portage de travailler avec des paquets pré-compilés, il les recherchera dans /var/cache/binpkgs. Cet emplacement est défini par la variable PKGDIR.
Code source
Le code source des programmes est stocké par défaut dans /var/cache/distfiles. Cet emplacement est défini par la variable DISTDIR.
Base de données Portage
Portage enregistre l'état du système (quels paquets sont installés, quels fichiers appartiennent à quel paquet, ...) dans /var/db/pkg.
Ne pas modifier manuellement les fichiers sur l'état du système ! Cela pourrait casser les connaissances de Portage sur le système.
Le cache de Portage
Le cache de Portage (avec les temps de modification, les virtuals, les informations de l'arbre des dépendances, ...) est stocké dans /var/cache/edb. Cet emplacement est en réalité un cache : les utilisateurs peuvent le nettoyer s'ils n'exécutent aucune application liée à Portage en ce moment.
Compiler des programmes
Fichiers temporaires de Portage
Les fichiers temporaires de Portage sont stockés dans /var/tmp/ par défaut. Cela est défini par la variable PORTAGE_TMPDIR.
Répertoire de compilation
Portage crée des répertoires de compilation spécifiques pour chaque paquet qu'il émerge à l'intérieur de /var/tmp/portage/. Cet emplacement est défini par la variable PORTAGE_TMPDIR avec portage/ ajouté en suffixe.
Emplacement du système de fichiers courant
Par défaut, Portage installe tous les fichiers sur le système de fichiers courant (/), mais cela peut être changé en définissant la variable d'environnement ROOT. Cela est utile lors de la création de nouvelles images de construction.
Fonctions de journalisation
Journalisations Ebuild
Portage peut créer des fichiers journaux par ebuild, mais uniquement lorsque la variable PORT_LOGDIR est définie sur un emplacement accessible en écriture par Portage (via l'utilisateur Portage). Par défaut, cette variable n'est pas définie. Si PORT_LOGDIR n'est pas définie, il n'y aura pas de journaux d'installation avec le système de journalisation actuel, bien que les utilisateurs puissent recevoir des journaux du nouveau support elog.
Si PORT_LOGDIR n'est pas défini et que elog est utilisé, alors les journaux d'installation et tous les autres journaux sauvegardés par elog seront rendus disponibles, comme expliqué ci-dessous.
Portage offre un contrôle précis de la journalisation grâce à l'utilisation de elog :
- PORTAGE_ELOG_CLASSES : C'est ici que les utilisateurs peuvent définir les types de messages à journaliser. Cela peut être n'importe quelle combinaison des termes einfo, warn, error, log, et qa, séparés par un espace.
- info : Enregistre les messages « einfo » affichés par un ebuild
- warn : Enregistre les messages « ewarn » affichés par un ebuild
- error : Enregistre les messages « eerror » affichés par un ebuild
- log : Enregistre les messages « elog » trouvés dans certains ebuilds
- qa : Enregistre les messages « QA Notice » (Avis d'assurance qualité) affichés par un ebuild
- PORTAGE_ELOG_SYSTEM : Cela sélectionne le(s) module(s) pour traiter les événements du journal. Si elle est vide, la journalisation est désactivée. Toutes les combinaisons des termes save, custom, syslog, mail, save_summary, et mail_summary, séparés par un espace, peuvent être utilisées, . Au moins un module doit être utilisé pour utiliser elog.
- save : enregistre un journal par paquet dans $PORT_LOGDIR/elog, ou /var/log/portage/elog si $PORT_LOGDIR n'est pas défini.
- custom : passe tous les messages à une commande définie par l'utilisateur dans $PORTAGE_ELOG_COMMAND ; cela sera discuté plus tard.
- syslog : envoie tous les messages au système de journalisation du système.
- mail : transmet tous les messages à un serveur mail défini par l'utilisateur dans $PORTAGE_ELOG_MAILURI ; cela sera discuté plus tard. Les fonctionnalités de messagerie d'elog requièrent >=portage-2.1.1.
- save_summary : similaire à save, mais il fusionne tous les messages dans $PORT_LOGDIR/elog/summary.log, ou /var/log/portage/elog/summary.log si $PORT_LOGDIR n'est pas défini.
- mail_summary : similaire à mail, mais il envoie tous les messages dans un seul courrier quand emerge se termine.
- PORTAGE_ELOG_COMMAND : Cela est uniquement utilisé lorsque le module personnalisé est activé. Les utilisateurs peuvent spécifier une commande pour traiter les événements journaux. Notez que la commande peut utiliser deux variables: ${PACKAGE} est le nom et la version du paquet, tandis que ${LOGFILE} est le chemin absolu du fichier journal. Par exemple :
PORTAGE_ELOG_COMMAND="/path/to/logger -p '\${PACKAGE}' -f '\${LOGFILE}'"
- PORTAGE_ELOG_MAILURI : Cela contient des paramètres pour le module de messagerie tels que l'adresse, l'utilisateur, le mot de passe, le serveur de messagerie et le numéro de port. Le paramètre par défaut est « root@localhost localhost ». Voici un exemple d'un serveur SMTP qui nécessite une authentification par nom d'utilisateur et mot de passe sur un port particulier (le port par défaut est le port 25) :
PORTAGE_ELOG_MAILURI="user@some.domain username:password@smtp.some.domain:995"
- PORTAGE_ELOG_MAILFROM : Permet à l'utilisateur de définir l'adresse d’expédition des courriels de journaux ; Si non définie, est égale à « Portage » par défaut.
- PORTAGE_ELOG_MAILSUBJECT : Permet à l'utilisateur de créer un objet pour les courriels. Notez qu'il peut utiliser deux variables : ${PACKAGE} affichera le nom et la version du paquet, alors que ${HOST} est le nom de domaine complet de l'hôte sur lequel Portage s'exécute. Par exemple :
PORTAGE_ELOG_MAILSUBJECT="Le paquet \${PACKAGE} a été installé sur \${HOST} avec quelques messages"
Les utilisateurs qui ont utilisé enotice avec Portage-2.0.* doivent supprimer complètement enotice, car il est incompatible avec elog.