francescomecca.eu/output/blog/2015/9/11/about-perl-packages-in-gentoo/index.html
Francesco Mecca 2558df9d00 assets dir
2018-11-10 18:32:04 +01:00

103 lines
6.1 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>About Perl packages in Gentoo | Caught in the Net</title>
<link rel="stylesheet" href="../../../../../assets/blog/fonts/opensans.css">
<link href="../../../../../assets/blog/css/normalize.css" rel="stylesheet" type="text/css">
<link href="../../../../../assets/blog/css/cayman.css" rel="stylesheet" type="text/css">
<meta name="theme-color" content="#5670d4">
<meta name="generator" content="Nikola (getnikola.com)">
<link rel="alternate" type="application/rss+xml" title="RSS" hreflang="en" href="../../../../../rss.xml">
<link rel="canonical" href="francescomecca.eu/blog/2015/9/11/about-perl-packages-in-gentoo/">
<meta name="author" content="Francesco Mecca">
<link rel="prev" href="../../../8/31/56-secondi-di-celebrita/" title="56 secondi di celebrita`" type="text/html">
<link rel="next" href="../../20/the-buridans-donkey-paradox/" title="The Buridan&amp;#8217;s donkey paradox" type="text/html">
<meta property="og:site_name" content="Caught in the Net">
<meta property="og:title" content="About Perl packages in Gentoo">
<meta property="og:url" content="francescomecca.eu/blog/2015/9/11/about-perl-packages-in-gentoo/">
<meta property="og:description" content="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 ">
<meta property="og:type" content="article">
<meta property="article:published_time" content="2015-09-11T12:52:25Z">
<meta property="article:tag" content="emerge">
<meta property="article:tag" content="Gentoo">
<meta property="article:tag" content="perl">
<meta property="article:tag" content="perl-core">
<meta property="article:tag" content="PesceWanda">
<meta property="article:tag" content="portage conflict">
<meta property="article:tag" content="virtual/perl">
</head>
<body>
<div id="container">
<section class="page-header"><h1 class="project-name">
Caught in the Net
</h1>
<h2 class="project-tagline">La rete ti cattura ma libera il pensiero</h2>
<a class="btn" href="../../../../../">Home</a>
<a class="btn" href="../../../../../pages/about/">About me</a>
<a class="btn" href="../../../../../pages/contattami/">Contact me</a>
<a class="btn" href="../../../../../archiveall.html">Archive</a>
<a class="btn" href="../../../../../rss.xml">RSS</a>
<a class="btn" href="http://francescomecca.eu/git/pesceWanda">Personal Git</a>
<a class="btn" href="https://github.com/FraMecca">Github</a>
<a class="btn" href="../../../../../wp-content/curriculum/CV_Mecca_Francesco.pdf">Curriculum</a>
</section><section class="main-content"><div class="post">
<header><h1 class="post-title">
<h1 class="p-name post-title" itemprop="headline name">About Perl packages in Gentoo</h1>
</h1>
</header><p class="dateline post-date">11 September 2015</p>
</div>
<div class="e-content entry-content" itemprop="articleBody text">
<div>
<p>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.</p>
<p>First of all the core distribution of Perl is included in <a href="https://packages.gentoo.org/package/dev-lang/perl">dev-lang/Perl</a> along with <a href="http://perldoc.perl.org/index-modules-A.html">modules</a>.</p>
<p>The <a href="https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/perl-core/">perl-core category</a> 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.</p>
<p>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.</p>
<p>So, what to do in case of blocks when upgrading your Gentoo machine?</p>
<p>Perl-cleaner is a package provided to get rid of these blocks and to migrate from perl-core to virtual/perl-*.</p>
<pre class="wp-code-highlight prettyprint linenums:1">emerge perl-cleaner
emerge dev-lang/perl
perl-cleaner --all</pre>
<p>if you still have problems when upgrading @world you add a backtrack option</p>
<pre class="wp-code-highlight prettyprint linenums:1">emerge -uDN --backtrack=30 @world</pre>
<p>or you can unmerge all perl-core packages and then finally upgrade world</p>
<pre class="wp-code-highlight prettyprint linenums:1">emerge --unmerge perl-core/*</pre>
<p>This will remove all perl-core packages that virtual/perl-* packages will bring back if needed.</p>
<p style="text-align: right;">
Francesco Mecca
</p>
</div>
</div>
<aside class="postpromonav"><nav><h4>Categories</h4>
<ul itemprop="keywords" class="tags">
<li><a class="tag p-category" href="../../../../../categories/emerge/" rel="tag">emerge</a></li>
<li><a class="tag p-category" href="../../../../../categories/gentoo/" rel="tag">Gentoo</a></li>
<li><a class="tag p-category" href="../../../../../categories/perl/" rel="tag">perl</a></li>
<li><a class="tag p-category" href="../../../../../categories/perl-core/" rel="tag">perl-core</a></li>
<li><a class="tag p-category" href="../../../../../categories/pescewanda/" rel="tag">PesceWanda</a></li>
<li><a class="tag p-category" href="../../../../../categories/portage-conflict/" rel="tag">portage conflict</a></li>
<li><a class="tag p-category" href="../../../../../categories/virtualperl/" rel="tag">virtual/perl</a></li>
</ul></nav></aside><p class="sourceline"><a href="index.md" class="sourcelink">Source</a></p>
<footer class="site-footer" id="footer"><span> CC BY-SA 4.0 International.<br></span>
<span class="site-footer-credits"><a href="https://getnikola.com">Nikola</a>, <a href="https://github.com/jasonlong/cayman-theme">Cayman theme</a>.</span>
</footer></section>
</div>
</body>
</html>