francescomecca.eu/_posts/2015-09-11-about-perl-packages-in-gentoo.md
PesceWanda 6249a5dfc9 blog
2016-05-01 11:13:57 +02:00

1.9 KiB

id title date author layout guid permalink categories tags
198 About Perl packages in Gentoo 2015-09-11T12:52:25+00:00 pesceWanda post http://francescomecca.eu/?p=198 /index.php/archives/198
PesceWanda
emerge
Gentoo
perl
perl-core
portage conflict
virtual/perl

In this post I wish to explain a bit about Perl related ebuilds in Gentoo and how to update from perl-core to virtual/perl without conflicts.

First of all the core distribution of Perl is included in dev-lang/Perl along with modules.

The perl-core category in portage contains ebuilds for perl modules, some of which are included in the core perl distibution. The perl-core ebuilds overrides the perl-core modules such that you can update them without recompiling dev-lang/Perl.

Each perl-core module has a corrensponding virtual/perl-* package. The virtual category is used by portage when emerging to take into account that a module can be either provided by dev-lang/perl package or found in perl-core category.

So, what to do in case of blocks when upgrading your Gentoo machine?

Perl-cleaner is a package provided to get rid of these blocks and to migrate from perl-core to virtual/perl-*.

emerge perl-cleaner
emerge dev-lang/perl
perl-cleaner --all

if you still have problems when upgrading @world you add a backtrack option

emerge -uDN --backtrack=30 @world

or you can unmerge all perl-core packages and then finally upgrade world

emerge --unmerge perl-core/*

This will remove all perl-core packages that virtual/perl-* packages will bring back if needed.

Francesco Mecca