FAQ Qu'est-ce qu'un USE flag?
Un article de Gentoo Linux Wiki.
Sommaire |
[modifier] Qu'est-ce qu'un USE flag?
Dans la Gentoo, un USE flag est la représentation d'une option, un choix global pour votre système final. Les USE flags affectent les paquets que votre système construira.
Par exemple, mail-client/mutt-1.5.11 dispose de dix-huit flags. Certains flags activent ou désactivent les options au moment de la compilation : pop, imap et nntp tous commandent des options au moment de la compilation. Le fichier source de mutt contient tous les codes pour ces options ; simplement les flags les activent ou les désactivent. Sans le flag pop et imap, par exemple, mutt peut seulement lire le courrier stocké dans des fichiers locaux.
Certains flags activent une application qui exige certaines commandes ou librairies : gdbm, berkdb, ssl et sasl toutes options activées exigent certaines librairies de l'espace utilisateur tel que Sleepycat DBM ou OpenSSL. Ces dépendances peuvent, à leur tour, dépendrent d'autres programmes.
Certains flags fixent des bogues. Ceux-ci sont habituellement localisés (voir ci-dessous) et provisoires: Ex: buffysize la description du flag dit: "Enables buffysize workaround, see bug #72422."
[modifier] Choisir le bon USE flag pour vous
"Comment est-ce que je choisis les bons USE flags pour moi ? " vous demandez-vous.
Choisir les bons USE flags, bien que très important, est également très simple. Premièrement, consulter la liste des USE flags disponibles localement dans /usr/portage/profiles/use.desc ou en ligne sur Gentoo-Portage USE Flag Listing. La description de chaque USE flag vous aidera à décider lequel choisir. Si vous n'êtes pas sûr, omettez-les ; il y a quelques USE flags réglés pour vous par défaut.
[modifier] Regarder la description d'un USE flag en utilisant grep
En utilisant grep, vous saurez facilement ce qu'un USE flag veut dire. Utilisez juste ceci (remplacez le mot "useflag" par le USE flag que vous recherchez):
grep -i "useflag - " /usr/portage/profiles/use.desc
Si vous n'avez aucun résultat, vous pouvez rechercher un USE flag spécifique à un paquet comme ceci:
grep -i "useflag - " /usr/portage/profiles/use.local.desc
[modifier] Voir les USE flags courants d'un paquet
Regarder quels USE flags seraient utilisés pour installer un paquet avec vos options courantes:
emerge -pv package
ou
equery u package
equery fait partie de app-portage/gentoolkit et remplace le déprécié etcat. equery, et les versions suivantes de emerge -v, montrent également quels flags ont été employés la dernière fois que le paquet a été installé.
[modifier] Réglage de vos USE flags
Maintenant que vous avez choisi quels flags vous souhaitez employer c'est le moment de les placer quelque part. Il y a deux manières pour éditer vos USE flags. Une est avec un programme d'édition spécifique pour les USE flags: celui-ci peut automatiquement éditer votre make.conf pour vous. La seconde méthode pour éditer vos USE flags est de le faire manuellement.
[modifier] euse
euse - Fait partie du paquet gentoolkit
euse est une bonne manière de manipuler les USE flags. Lisez le euse MAN page.
[modifier] ufed
ufed - Use Flag Editor
udef montrera quels flags ont été indiqués par défaut et une description pour chaque USE flag. Dans le programme vous pouvez éditer par qui les USE flags sont utilisés. Mais sans description détaillée par USE flags, ufed est encore faible.
[modifier] Profuse
Un bon remplacant pour ufed est profuse. Ce programme possède une interface graphique, de relativement bonnes descriptions pour les USE flags et ne fait pas de grandes erreurs en ecrivant dans make.conf comme ufed. Mais, comme toujours en changeant des config-fichiers, il est recommandé de faire une sauvegarde de /etc/make.conf avant l'utilisation de ufed ou profuse.
[modifier] make.conf
Les USE flags déclarés dans le fichier /etc/make.conf sont des options globales de compilation c'est-à-dire qu'une fois déclarés dans ce fichier, ces flags seront par défaut systématiquement appliqués lors de l'installation d'un paquet. Vous pouvez utiliser l'éditeur de votre choix pour éditer /etc/make.conf manuellement. C'est la ligne commençant par USE="" qui définit les flags globaux de compilation. Pour en activer un, il suffit de l'ajouter dans la liste.
Attention : ne pas utiliser comme préfixe au nom du flag le signe '+' (plus). Par exemple on écrira
USE="kde"
et non USE="+kde". En revanche, pour désactiver un flag, ajoutez-le avec le signe '-' (moins) comme préfixe :
USE="-kde"
[modifier] package.use
Le fichier /etc/portage/package.use permet d'activer et désactiver des flags indépendemment pour chaque paquet. Ceci permet à l'utilisateur de contrôler plus finement la compilation des paquets sans trop augmenter le nombre de USE flags :
| File: /etc/portage/package.use |
net-irc/xchat -perl -python net-p2p/bittornado -gtk www-client/mozilla-firefox java mozdevelop |
Dans l'exemple ci-dessus :
- X-Chat sera installé sans l'intégration de l'interpréteur Perl et Python,
- BitTornado sera installé sans l'insterface graphique Python-GTK, et
- Mozilla Firefox sera construit avec le support Java et options pour développeurs Venkman web.
Bien que emerge supporte entièrement package.use, tous les outils portage ne le peuvent pas : faites attention.
[modifier] USE flags par Défaut
Les USE flags par défaut pour un système linux x86:
| File: /usr/portage/profiles/default-linux/x86/2005.1/make.defaults |
...USE="alsa apm arts avi bitmap-fonts cups eds emboss encode fortran foomaticdb gdbm gif gnome gpm gstreamer gtk gtk2 imlib jpeg kde libg++ libwww mad mikmod motif mp3 mpeg ogg oggvorbis opengl oss pdflib png qt quicktime sdl spell truetype truetype-fonts type1-fonts vorbis X xml2 xmms xv" ... |
| File: /usr/portage/profiles/default-linux/x86/2006.0/make.defaults |
...USE="alsa apache2 apm arts avi cups eds emboss encode esd foomaticdb gdbm gif gnome gpm gstreamer gtk gtk2 imlib jpeg kde libg++ libwww mad mikmod motif mp3 mpeg nptl ogg opengl oss pdflib png qt quicktime sdl spell truetype udev vorbis X xml xmms xv" ... |
C'est un lien symbolique /etc/make.profile/ il pointe sur un répertoire qui est /usr/portage/profiles/default-linux/x86/2005.1/ (pour une ancienne installation, le nom peut être /usr/portage/profiles/default-x86-2004.0/ ou /usr/portage/profiles/default-x86-1.4/). Ce fichier make.defaults qui est dans votre make.profile dictera les USE flags par défaut. Regardez les autres fichiers dans ce répertoire pendant que vous y êtes. Certains préfèrent réellement faire leurs propres profils en éditant /etc/make.conf.
[modifier] Définitions des USE flag
Pour certains USE flags l'effet exact peut être un mystère sans regarder l'ebuild. Ci-dessous quelques descriptions générales pour la plupart des use flags:
- http://gentoo-portage.com/USE
- USE Flags expliqués
- http://gentoo-portage.com a des définitions pour certains USE flags locaux; choisir un paquet et cliquer sur le lien du USE flag pour ce paquet pour voir les descriptions.
Traduction finie à vérifier
