portage

sys-libs/ss (is blocking sys-libs/e2fsprogs-libs-1.41.2)

Posted by jc on October 29, 2008
Linux / No Comments

Enfer et damnation !

Calculating world dependencies... done!
[ebuild     U ] sys-fs/e2fsprogs-1.41.2 [1.40.9] USE="nls (-static%)" 4,263 kB
[ebuild  N    ] sys-libs/e2fsprogs-libs-1.41.2  USE="nls" 479 kB
[blocks B     ] sys-libs/ss (is blocking sys-libs/e2fsprogs-libs-1.41.2)
[blocks B     ] <sys-fs/e2fsprogs-1.41 (is blocking sys-libs/e2fsprogs-libs-1.41.2)
[blocks B     ] sys-libs/com_err (is blocking sys-libs/e2fsprogs-libs-1.41.2)
[blocks B     ] sys-libs/e2fsprogs-libs (is blocking sys-libs/ss-1.40.9, sys-libs/com_err-1.40.9)

Portage à décidé de me faire mon vilain!

Mieux vaut ne pas unmerger à la sauvage ces libs vitales pour le systeme.

Dès lors, deux solutions:

  • workaround brutal voir commentaire 7 sur le bug ouvert chez gentoo
  • attendre que la version 2.1.5 passe en stable dans le portage tree

Tags: ,

emerge –sync, ne pas regénérer le cache

Posted by jc on August 24, 2008
Linux / No Comments

Un autre tip tiré de (bientôt) feu le wiki :)
merci trap

On le sait, Portage est très bien mais le souci reste quand même la lenteur relative de emerge –sync. Une astuce pour gagner un peu de temps consiste à désactiver la régénération du cache à la fin du processus.

Marche à suivre:

Elle est très simple. Tout d’abord :
echo "portdbapi.auxdbmodule = cache.metadata_overlay.database" >> /etc/portage/modules
Rajouter ensuite FEATURES="-metadata-transfer dans le fichier /etc/make.conf.
Et pour finir, on peut supprimer l’ancien cache :
rm -rf /var/cache/edb/dep/*

Conclusion :
Voilà 5 minutes (voire plus) de gagnées pour la mise à jour. Alors la grande question reste pourquoi cela n’est pas le comportement par défaut de Portage ? Portage n’est pas encore capable de détecter si un eclass a été modifié entre temps et donc s’il faut régénerer le cache ou pas. Si vous ne faites aucune modification d’eclass (ce qui est assez probablement le cas), cette méthode ne pose aucun souci.

Tags: ,

Nouvelles options de portage

Posted by jc on August 17, 2008
Linux / No Comments

Depuis portage-2.2_rc2, de nouvelles fonctions ont été intégrées.

–jobs JOBS
Specifies the number of packages to build simultaneously.
Also see the related –load-average option.

–keep-going
Continue as much as possible after an error. When an error
occurs, dependencies are recalculated for remaining packages
and any with unsatisfied dependencies are automatically
dropped. Also see the related –skipfirst option.

–load-average LOAD
Specifies that no new builds should be started if there are
other builds running and the load average is at least LOAD (a
floating-point number). This option is recommended for use in
combination with –jobs in order to avoid excess load. See
make(1) for information about analogous options that should
be configured via MAKEOPTS in make.conf(5).

Ces options permettent de paralleliser les opérations et ainsi de tirer de parti des processeurs multi-core. Les versions de portage intégrants ces fonctions ne sont disponibles qu’en ~arch pour le moment.

Tags: ,