Utiliser Gentoo et Calculate Linux

Mise à jour de Gentoo

Table des matières

logo_gentoo



Introduction



Voici un bref article qui récapitule les commandes pour mettre à jour Gentoo.

Mise à jour




Prérequis : Necessite app-portage/portage-utils app-portage/gentoolkit

Dans un premier temps, on met à jour l'arbre portage :
Code BASH :
emerge --sync


Si vous avez eix d'installé, pour que la base eix se mette à jour automatiquement, je vous rappelle que vous devez avoir un script exécutable /etc/portage/postsync.d/eix contenant ceci (abordé dans l'install de mon guide) :

Code BASH :
#!/usr/bin/env bash
if [[ -e /var/cache/eix/portage.eix ]]; then
    rsync -ca /var/cache/eix/portage.eix /var/cache/eix/previous.eix;
fi
eix-update
if [[ -e /var/cache/eix/previous.eix ]]; then
    eix-diff;
fi



En cas de soucis, on peut utiliser :
Code BASH :
emerge-webrsync


S'il y a une mise à jour de portage (signalée avec emerge --sync), procéder à la mise à jour de celui-ci avant de mettre à jour le système :

Code BASH :
emerge -1 sys-apps/portage


On met ensuite à jour le système, en tenant compte des nouveaux USE et des nouvelles dépendances :

Code BASH :
emerge -auvDN --with-bdeps=y @world


On met à jour les fichiers de config au besoin :

Code BASH :
dispatch-conf


On peut supprimer les dépendances orphelines :

Code BASH :
emerge -ac


On recompile les paquets qui ont conservés d'anciennes versions de bibliothèques (si demandé) :

Code BASH :
emerge @preserved-rebuild


Si un nouveau kernel a été installé, on reconstruit les modules associés :

Code BASH :
emerge @module-rebuild


On reconstruit ensuite les dépendances inverses (liens cassés si indiqué) :

Code BASH :
revdep-rebuild -iq


Si une mise à jour de PERL a été effectuée, on pourra recompiler tous les modules installés via emerge :

Code BASH :
perl-cleaner --reallyall


On peut aussi supprimer les archives téléchargées obsolètes :

Code BASH :
eclean-dist -d

Code BASH :
eclean-pkg -d


Astuce sur des problèmes possibles



Mise à jour impossible à cause d'une mise à jour de python




Il est possible d'avoir des conflits lorsque PYTHON est mis à jour chez Gentoo.
Par exemple si des paquets tiers ne sont pas encore disponible avec la prochaine version de Python. (Passage de 3.10 à 3.11 mais que vous avez quelques paquets compilable qu'avec Python 3.10).

On va pouvoir temporairement forcer dans le make.conf la version de Python (ici 3.10) :

Code BASH :
vi /etc/portage/make.conf


Ajouter / modifier la ligne :
Code BASH :
PYTHON_SINGLE_TARGET="python3_10"


Relancez la mise à jour du world.

Dès que votre paquet problématique est disponible dans la bonne version de Python, on pourra simplement commenter cette ligne PYTHON_SINGLE_TARGET.
Cette page a été vue 24946 fois