<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>My two ¢&#039;s &#187; Gentoo</title>
	<atom:link href="http://www.linuxaddicted.de/blog/tag/gentoo/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.linuxaddicted.de/blog</link>
	<description>A Gentoo addict, linux admin and developer</description>
	<lastBuildDate>Wed, 31 Mar 2010 12:12:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Short review: Puppet for Gentoo servers</title>
		<link>http://www.linuxaddicted.de/blog/2009/12/18/short-review-puppet-for-gentoo-servers/</link>
		<comments>http://www.linuxaddicted.de/blog/2009/12/18/short-review-puppet-for-gentoo-servers/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 10:51:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Howto]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[puppet]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://www.linuxaddicted.de/blog/?p=246</guid>
		<description><![CDATA[<p>I recently started to integrate Puppet with my company&#8217;s OS installer to build custom Gentoo servers in almost no time. The install/build system reached a stable state and i want to share some information&#8217;s on what i did to get it working. The Gentoo support of puppet is not perfect but sufficient for my <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.linuxaddicted.de/blog/2009/12/18/short-review-puppet-for-gentoo-servers/">Short review: Puppet for Gentoo servers</a></span>]]></description>
			<content:encoded><![CDATA[<p>I recently started to integrate <a href="http://reductivelabs.com/trac/puppet/" target="_blank">Puppet</a> with my company&#8217;s OS installer to build custom Gentoo servers in almost no time. The install/build system reached a stable state and i want to share some information&#8217;s on what i did to get it working. The Gentoo support of puppet is not perfect but sufficient for my use case. There are still some issues to solve:</p>
<ul>
<li>Slots don&#8217;t work (I&#8217;m working on a patch for the portage provider to address this issue)</li>
<li>No nice way to manage /etc/conf.d/net</li>
<li>Only the runlevel &#8220;default&#8221; can be managed (This is sufficient for most cases)</li>
<li>No built in USE flag support (i use a binhost so this doesn&#8217;t really affect my setup). Check this <a href="http://log.onthebrink.de/2008/05/using-puppet-on-gentoo.html" target="_blank">site</a> for a possible solution</li>
</ul>
<p>The missing slots integration is especially important when it comes to Tomcat. Tomcat requires sun-jdk-1.5 and sun-jdk-1.6. I solved this by adding sun-jdk-1.5 to our install image. Apart from this problems it works very well.<span id="more-246"></span></p>
<h2>Binhost setup</h2>
<p>The easiest way to ensure that all systems run the same software (version, use flags) is to setup a portage binhost and force all clients to use this server as only package source. There are a lot of howto&#8217;s out there on creating a binhost so i won&#8217;t explain it detail. To force all clients to use only binary packages set the following statements in make.conf (Puppet distribution!):</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #007800;">PORTAGE_BINHOST</span>=<span style="color: #ff0000;">&quot;http://192.168.1.1/x86_64&quot;</span>
<span style="color: #007800;">EMERGE_DEFAULT_OPTS</span>=<span style="color: #ff0000;">&quot;--getbinpkgonly --usepkgonly&quot;</span></pre></div></div>

<p>The parameter EMERGE_DEFAULT_OPTS is important because Puppet will run the command &#8220;emerge xxx/yyy&#8221; so you can&#8217;t specify extra parameters. This parameter setup ensures that the package cannot be installed when the binary package is missing on the binhost.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.linuxaddicted.de/blog/2009/12/18/short-review-puppet-for-gentoo-servers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Portage: Patch existing Perl module ebuild by using a overlay</title>
		<link>http://www.linuxaddicted.de/blog/2008/12/10/portage-patch-existing-perl-module-ebuild-by-using-a-overlay/</link>
		<comments>http://www.linuxaddicted.de/blog/2008/12/10/portage-patch-existing-perl-module-ebuild-by-using-a-overlay/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 19:19:09 +0000</pubDate>
		<dc:creator>daniel</dc:creator>
				<category><![CDATA[Howto]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[ebuild]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[Portage]]></category>

		<guid isPermaLink="false">http://www.linuxaddicted.de/blog/?p=173</guid>
		<description><![CDATA[<p>You may have had the same issue as i some time ago. You install a perl module from Portage but you have to modify the module&#8217;s code. Of course you don&#8217;t want to patch and install manually. Assuming the module is named &#8220;foobar&#8221; here&#8217;s how i solved it:</p> <p></p> Create a Portage Overlay (refer <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.linuxaddicted.de/blog/2008/12/10/portage-patch-existing-perl-module-ebuild-by-using-a-overlay/">Portage: Patch existing Perl module ebuild by using a overlay</a></span>]]></description>
			<content:encoded><![CDATA[<p>You may have had the same issue as i some time ago. You install a perl module from Portage but you have to modify the module&#8217;s code. Of course you don&#8217;t want to patch and install manually. Assuming the module is named &#8220;foobar&#8221; here&#8217;s how i solved it:</p>
<p><span id="more-173"></span></p>
<ol>
<li>Create a Portage Overlay (refer to the official documentation) and enable it in /etc/make.conf</li>
<li>Create a new category directory within your overlay dir (mkdir /usr/local/portage/my-ebuilds)</li>
<li>Create application directory (mkdir /usr/local/portage/my-ebuilds/foobar)</li>
<li>Copy the existing ebuild to the new app directory</li>
<li>Create a files directory and put the patch there</li>
<li>Modify the ebuild to apply your patch</li>
</ol>

<div class="wp_syntax"><div class="code"><pre class="perl" style="font-family:monospace;"><span style="color: #339933;">...</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># This is the magic line:</span>
PATCHES<span style="color: #339933;">=</span><span style="color: #ff0000;">&quot;${FILESDIR}/my_patch.patch&quot;</span>
&nbsp;
<span style="color: #339933;">...</span></pre></div></div>

<p>After you finished these tasks you have to (re)generate the Manifest:</p>

<div class="wp_syntax"><div class="code"><pre class="perl" style="font-family:monospace;">ebuild <span style="color: #009900;">&#91;</span>OVERLAY_PATH<span style="color: #009900;">&#93;</span><span style="color: #339933;">/</span>my<span style="color: #339933;">-</span>ebuilds<span style="color: #339933;">/</span>foobar<span style="color: #339933;">/</span>foobar<span style="color: #339933;">-</span>1<span style="color: #339933;">.</span>0<span style="color: #339933;">.</span>0<span style="color: #339933;">.</span>ebuild digest</pre></div></div>

<p>That&#8217;s it. If you have trouble feel free to contact me: daniel@linuxaddicted.de</p>
]]></content:encoded>
			<wfw:commentRss>http://www.linuxaddicted.de/blog/2008/12/10/portage-patch-existing-perl-module-ebuild-by-using-a-overlay/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gentoo: Unmerging software including configs and data</title>
		<link>http://www.linuxaddicted.de/blog/2008/12/03/gentoo-unmerging-software-including-configs-and-data/</link>
		<comments>http://www.linuxaddicted.de/blog/2008/12/03/gentoo-unmerging-software-including-configs-and-data/#comments</comments>
		<pubDate>Wed, 03 Dec 2008 13:33:11 +0000</pubDate>
		<dc:creator>daniel</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[Portage]]></category>

		<guid isPermaLink="false">http://www.linuxaddicted.de/blog/?p=157</guid>
		<description><![CDATA[<p>If you&#8217;re unmerging software in Gentoo some files stay on your server. This is a result of the setting CONFIG_PROTECT. To unmerge a package completely use this command:</p> ~&#62; CONFIG_PROTECT=&#34;&#34; emerge -C &#91;SOFTWARE&#93; ]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re unmerging software in Gentoo some files stay on your server. This is a result of the setting CONFIG_PROTECT. To unmerge a package completely use this command:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">~<span style="color: #000000; font-weight: bold;">&gt;</span> <span style="color: #007800;">CONFIG_PROTECT</span>=<span style="color: #ff0000;">&quot;&quot;</span> emerge <span style="color: #660033;">-C</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>SOFTWARE<span style="color: #7a0874; font-weight: bold;">&#93;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.linuxaddicted.de/blog/2008/12/03/gentoo-unmerging-software-including-configs-and-data/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

