OldGentooWiki:Les fichiers /etc/portage/package.*

De Gentoo-Quebec.

Go-previous.png Index des trucs et astuces


Gentoo-quebec+Funtoo-quebec.png

Les fichiers package.*


Sommaire

Introduction

Ce wiki a pour but de vous faire découvrir dans un premier temps les différents fichiers qui permettent de définir des conditions sur un paquet localement.

Deux méthodes s'offrent à nous, elle seront expliquées dans ce document.

À quoi servent les fichiers package.*

Le contenu des différents fichiers package.* affecte l'arbre Portage, ci-dessous un petit tableau récapitulatif :

Fichier Description
package.use Il permet d'agir localement sur les USE Flags d'un ou plusieurs paquets.
package.keywords Il permet d'agir localement sur le keyword d'un ou plusieurs paquets.
package.mask Il permet d'agir localement sur le masquage d'un ou plusieurs paquets.
package.unmask Il permet d'agir localement sur le démasquage d'un ou plusieurs paquets.

Différence avec /etc/make.conf

La méthode présentée plus haut fonctionne en complément avec le fichier /etc/make.conf pour les USE Flags.

Cependant en opposition directe avec l'option ARCH qui dé-keyword l'ensemble du système.

Un exemple pour mieux comprendre :

Les options USE="subversion" et ACCEPT_KEYWORDS="~x86" appliquent un changement global sur le système.

Warning 64.png
Attention !
Il est nécessaire d'agir sur ce fichier en connaissance de cause.

Avantages des deux méthodes

Avantage des fichiers package.*

La puissance des différents fichiers package.* réside dans le fait que nous pouvons agir sur un unique paquet sans affecter le reste du système avec des dépendances inutiles pour la plupart des utilisateurs lambda.

Avantage des dossiers package.*

Voici la deuxième méthode qui est sûrement la plus proche d'un système GNU/Linux.

La possibilité de hiérarchiser chaque paquet sous forme de fichiers dans un dossier package.*

Il est maintenant possible d'avoir un aperçu dans chaque dossier, la modification devient plus rapide car nous ciblons maintenant un seul paquet dans un fichier unique.

Warning 64.png
Attention !
Cette méthode permet toujours de faire un fichier global dans chaque dossier package.*

Mise en pratique

Fichiers package.*

Maintenant un peu de pratique, pour mieux saisir les deux méthodes.

Gnome-dev-computer.png
# ls -al /etc/portage

Contenu du dossier /etc/portage/

total 12
drwxr-xr-x 2 root root 4096 nov.  14 13:35 bin
drwxr-xr-x 2 root root 4096 nov.  14 13:35 postsync.d
drwxr-xr-x 3 root root 4096 nov.  14 15:09 savedconfig


Nous constatons qu'une installation de base sous Gentoo laisse le choix à l'utilisateur de choisir entre fichier ou dossier package.*

Gnome-dev-computer.png
# touch /etc/portage/package.{use,keywords,mask,unmask}
# ls -al /etc/portage

Contenu du dossier /etc/portage/

total 12
drwxr-xr-x 2 root root 4096 nov.  14 13:35 bin
-rw-r--r-- 1 root root    0 nov.  18 10:49 package.keywords
-rw-r--r-- 1 root root    0 nov.  18 10:49 package.mask
-rw-r--r-- 1 root root    0 nov.  18 10:49 package.unmask
-rw-r--r-- 1 root root    0 nov.  18 10:49 package.use
drwxr-xr-x 2 root root 4096 nov.  14 13:35 postsync.d
drwxr-xr-x 3 root root 4096 nov.  14 15:09 savedconfig


La création des fichiers reste très simple, l'ajout des paquets est maintenant possible avec l'éditeur de votre choix.

La syntaxe des différents fichiers reste sensiblement la même :

Une version d'un paquet en particulier

=sys-kernel/gentoo-sources-2.6.31-r6 [options]


Un paquet en particulier

sys-kernel/gentoo-sources [options]


Le paramètre [options] est important pour les USE Flags / Keyword.

USE Flag pour une version d'un paquet

=sys-kernel/gentoo-sources-2.6.31-r6 vanilla


Enlever le keyword d'un paquet

sys-kernel/gentoo-sources ~x86


Le masquage/démasquage n'a pas besoin d'option.

Enlever le masquage d'une version d'un paquet

=sys-kernel/gentoo-sources-2.6.31-r6


Enlever le masquage d'un paquet

sys-kernel/gentoo-sources


Dossiers package.*

Gnome-dev-computer.png
# mkdir /etc/portage/package.{use,keywords,mask,unmask}
# ls -al /etc/portage

Contenu du dossier /etc/portage/

total 12
drwxr-xr-x 2 root root 4096 nov.  14 13:35 bin
drwxr-xr-x 1 root root 4096 nov.  18 10:49 package.keywords
drwxr-xr-x 1 root root 4096 nov.  18 10:49 package.mask
drwxr-xr-x 1 root root 4096 nov.  18 10:49 package.unmask
drwxr-xr-x 1 root root 4096 nov.  18 10:49 package.use
drwxr-xr-x 2 root root 4096 nov.  14 13:35 postsync.d
drwxr-xr-x 3 root root 4096 nov.  14 15:09 savedconfig


Une fois les dossiers créés, nous pouvons ajouter nos paquets.

Gnome-dev-computer.png
# echo "=sys-kernel/gentoo-sources-2.6.31-r6 vanilla" > /etc/portage/package.use/gentoo-sources
# ls -al /etc/portage/package.use/

Contenu du dossier /etc/portage/package.use/

total 4
-rw-r--r-- 1 root root 45 nov.  18 11:21 gentoo-sources


Gnome-dev-computer.png
# echo "sys-kernel/gentoo-sources ~x86" > /etc/portage/package.keywords/gentoo-sources
# ls -al /etc/portage/package.keywords/

Contenu du dossier /etc/portage/package.keywords/

total 4
-rw-r--r-- 1 root root 31 nov.  18 11:21 gentoo-sources


Gnome-dev-computer.png
# echo "=sys-kernel/gentoo-sources-2.6.31-r6" > /etc/portage/package.mask/gentoo-sources
# ls -al /etc/portage/package.mask/

Contenu du dossier /etc/portage/package.mask/

total 4
-rw-r--r-- 1 root root 36 nov.  18 11:21 gentoo-sources


Gnome-dev-computer.png
# echo "=sys-kernel/gentoo-sources-2.6.31-r6" > /etc/portage/package.unmask/gentoo-sources
# ls -al /etc/portage/package.unmask/

Contenu du dossier /etc/portage/package.unmask/

total 4
-rw-r--r-- 1 root root 36 nov.  18 11:21 gentoo-sources


Outils personnels