<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Building a Private PPA on Ubuntu</title>
	<atom:link href="http://inodes.org/2009/09/14/building-a-private-ppa-on-ubuntu/feed/" rel="self" type="application/rss+xml" />
	<link>http://inodes.org/2009/09/14/building-a-private-ppa-on-ubuntu/</link>
	<description>Moo - Development, Trouble-shooting and Random thoughts...</description>
	<lastBuildDate>Fri, 20 May 2011 17:36:03 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.1</generator>
	<item>
		<title>By: Alex</title>
		<link>http://inodes.org/2009/09/14/building-a-private-ppa-on-ubuntu/comment-page-1/#comment-2823</link>
		<dc:creator>Alex</dc:creator>
		<pubDate>Fri, 20 May 2011 17:36:03 +0000</pubDate>
		<guid isPermaLink="false">http://inodes.org/blog/?p=189#comment-2823</guid>
		<description>I use key with a passphrase and gpg-agent , 

so using script mentioned by comment #7 Frans van Berckel

I would need to input passphrase at some point , but using  next  constructions one can avoid passwordless gpg key and reuse gpg-agent with su 

 su -l -c &quot;bash -i -c \&quot;/usr/bin/reprepro -V -b ${basedir} includedeb ${d} ${i}\&quot;&quot; ftpmaster

with bash -i -c GPG_AGENT_INFO variable will be setup correctly from .bashrc 

here is the part of .bashrc responsible for gpg-agent 

pgrep -u $USER gpg-agent &#124;&#124; gpg-agent --daemon --enable-ssh-support --write-env-file &quot;${HOME}/.gpg-agent-info&quot; --default-cache-ttl 600

if [ -f &quot;${HOME}/.gpg-agent-info&quot; ]; then
           . &quot;${HOME}/.gpg-agent-info&quot;
           export GPG_AGENT_INFO
           export SSH_AUTH_SOCK
           export SSH_AGENT_PID
fi
GPG_TTY=$(tty)
export GPG_TTY</description>
		<content:encoded><![CDATA[<p>I use key with a passphrase and gpg-agent , </p>
<p>so using script mentioned by comment #7 Frans van Berckel</p>
<p>I would need to input passphrase at some point , but using  next  constructions one can avoid passwordless gpg key and reuse gpg-agent with su </p>
<p> su -l -c &#8220;bash -i -c \&#8221;/usr/bin/reprepro -V -b ${basedir} includedeb ${d} ${i}\&#8221;" ftpmaster</p>
<p>with bash -i -c GPG_AGENT_INFO variable will be setup correctly from .bashrc </p>
<p>here is the part of .bashrc responsible for gpg-agent </p>
<p>pgrep -u $USER gpg-agent || gpg-agent &#8211;daemon &#8211;enable-ssh-support &#8211;write-env-file &#8220;${HOME}/.gpg-agent-info&#8221; &#8211;default-cache-ttl 600</p>
<p>if [ -f "${HOME}/.gpg-agent-info" ]; then<br />
           . &#8220;${HOME}/.gpg-agent-info&#8221;<br />
           export GPG_AGENT_INFO<br />
           export SSH_AUTH_SOCK<br />
           export SSH_AGENT_PID<br />
fi<br />
GPG_TTY=$(tty)<br />
export GPG_TTY</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex</title>
		<link>http://inodes.org/2009/09/14/building-a-private-ppa-on-ubuntu/comment-page-1/#comment-2822</link>
		<dc:creator>Alex</dc:creator>
		<pubDate>Fri, 20 May 2011 16:12:04 +0000</pubDate>
		<guid isPermaLink="false">http://inodes.org/blog/?p=189#comment-2822</guid>
		<description>Hi , thank you for the great manual .

but I run into one problem .

for example I have a source package which I have built on my system  - i have .dsc file _source.changes , and so on .

now I upload with dupload or dput this _source.changes file and company to the repository server .

after I&#039;ve uploaded stuff to incoming on the repository server I run 
reprepro   processincoming incoming

and my .dsc and other files are added to the repository 

but when the build process spawned by Log : is finished , and rebuildd tries to put the new package to the repository the checksum on the new package is different and I get something like following :

File &quot;pool/main/libp/libpam-abl/libpam-abl_0.4.1-1.dsc&quot; is already registered with different checksums!
md5 expected: 79c0aaadf3f1deb26722d959db052cd5, got: b59bc17aa5cc072c8f2a091dbb745949
sha1 expected: 0e2c1c73ecc8625ae5a0459a7bf77bc51e745294, got: 1c22b4a0664a1c16ea0e28c62a9f3e660582177b
sha256 expected: 3edbfb50a5d228c717a8244ddcda58d067a76ed98c01f3afd5e89f8365c08274, got: 6aa915dd021165cead23bd1389b9af3797f3efd53cd6bba50f82b2d8b05768e8
size expected: 1848, got: 964
There have been errors!


So the here is  more general problem - because there is only one pool , it is not possible to have the same package-version in different distributions like sid and lenny .

Anyway thank you a lot for sharing such a nice manual .

best regards , 
Alex</description>
		<content:encoded><![CDATA[<p>Hi , thank you for the great manual .</p>
<p>but I run into one problem .</p>
<p>for example I have a source package which I have built on my system  &#8211; i have .dsc file _source.changes , and so on .</p>
<p>now I upload with dupload or dput this _source.changes file and company to the repository server .</p>
<p>after I&#8217;ve uploaded stuff to incoming on the repository server I run<br />
reprepro   processincoming incoming</p>
<p>and my .dsc and other files are added to the repository </p>
<p>but when the build process spawned by Log : is finished , and rebuildd tries to put the new package to the repository the checksum on the new package is different and I get something like following :</p>
<p>File &#8220;pool/main/libp/libpam-abl/libpam-abl_0.4.1-1.dsc&#8221; is already registered with different checksums!<br />
md5 expected: 79c0aaadf3f1deb26722d959db052cd5, got: b59bc17aa5cc072c8f2a091dbb745949<br />
sha1 expected: 0e2c1c73ecc8625ae5a0459a7bf77bc51e745294, got: 1c22b4a0664a1c16ea0e28c62a9f3e660582177b<br />
sha256 expected: 3edbfb50a5d228c717a8244ddcda58d067a76ed98c01f3afd5e89f8365c08274, got: 6aa915dd021165cead23bd1389b9af3797f3efd53cd6bba50f82b2d8b05768e8<br />
size expected: 1848, got: 964<br />
There have been errors!</p>
<p>So the here is  more general problem &#8211; because there is only one pool , it is not possible to have the same package-version in different distributions like sid and lenny .</p>
<p>Anyway thank you a lot for sharing such a nice manual .</p>
<p>best regards ,<br />
Alex</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Frans van Berckel</title>
		<link>http://inodes.org/2009/09/14/building-a-private-ppa-on-ubuntu/comment-page-1/#comment-2818</link>
		<dc:creator>Frans van Berckel</dc:creator>
		<pubDate>Thu, 23 Dec 2010 19:46:29 +0000</pubDate>
		<guid isPermaLink="false">http://inodes.org/blog/?p=189#comment-2818</guid>
		<description>For getting my debs builds in again on a easy way, i did hack the upload_binaries script a bit.

#!/bin/bash

d=$1 p=$2 v=$3 a=$4

basedir=/srv/reprepro
resultdir=/var/cache/pbuilder/result

echo &quot;upload_binaries&quot; &quot;${p}_${v}_${a}&quot;

# Search now for packages builded by these sources
for i in ${resultdir}/*_${v}_*.deb; do
  su -l -c &quot;reprepro -V -b ${basedir} includedeb ${d} ${i}&quot; frans
done</description>
		<content:encoded><![CDATA[<p>For getting my debs builds in again on a easy way, i did hack the upload_binaries script a bit.</p>
<p>#!/bin/bash</p>
<p>d=$1 p=$2 v=$3 a=$4</p>
<p>basedir=/srv/reprepro<br />
resultdir=/var/cache/pbuilder/result</p>
<p>echo &#8220;upload_binaries&#8221; &#8220;${p}_${v}_${a}&#8221;</p>
<p># Search now for packages builded by these sources<br />
for i in ${resultdir}/*_${v}_*.deb; do<br />
  su -l -c &#8220;reprepro -V -b ${basedir} includedeb ${d} ${i}&#8221; frans<br />
done</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bruce</title>
		<link>http://inodes.org/2009/09/14/building-a-private-ppa-on-ubuntu/comment-page-1/#comment-2773</link>
		<dc:creator>Bruce</dc:creator>
		<pubDate>Wed, 19 May 2010 16:24:46 +0000</pubDate>
		<guid isPermaLink="false">http://inodes.org/blog/?p=189#comment-2773</guid>
		<description>That&#039;s one thing I forgot to mention. You can get it to satisfy everything from the PPA.

Basically you need to add the PPA to your sources.list so that it is used to grab dependencies from. You also need a pre-depend hook to perform an aptitude update.

Edit /etc/pbuilder/pbuilderrc

&lt;pre&gt;
 HOOKDIR=&quot;/etc/pbuilder/hooks&quot;
&lt;/pre&gt;

then

&lt;pre&gt;
mkdir /etc/pbuilder/hooks
echo -e &quot;#!/bin/sh\n/usr/bin/aptitude update\n&quot; &gt; /etc/pbuilder/hooks/D70aptitude_update
&lt;/pre&gt;</description>
		<content:encoded><![CDATA[<p>That&#8217;s one thing I forgot to mention. You can get it to satisfy everything from the PPA.</p>
<p>Basically you need to add the PPA to your sources.list so that it is used to grab dependencies from. You also need a pre-depend hook to perform an aptitude update.</p>
<p>Edit /etc/pbuilder/pbuilderrc</p>
<pre>
 HOOKDIR="/etc/pbuilder/hooks"
</pre>
<p>then</p>
<pre>
mkdir /etc/pbuilder/hooks
echo -e "#!/bin/sh\n/usr/bin/aptitude update\n" &gt; /etc/pbuilder/hooks/D70aptitude_update
</pre>
]]></content:encoded>
	</item>
	<item>
		<title>By: Krazy_Yvan</title>
		<link>http://inodes.org/2009/09/14/building-a-private-ppa-on-ubuntu/comment-page-1/#comment-2682</link>
		<dc:creator>Krazy_Yvan</dc:creator>
		<pubDate>Mon, 21 Sep 2009 07:13:07 +0000</pubDate>
		<guid isPermaLink="false">http://inodes.org/blog/?p=189#comment-2682</guid>
		<description>Thanks a lot for the howto! I was looking forward to building hardened packages with hardening-wrapper on a local mirror...</description>
		<content:encoded><![CDATA[<p>Thanks a lot for the howto! I was looking forward to building hardened packages with hardening-wrapper on a local mirror&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jack Dausman</title>
		<link>http://inodes.org/2009/09/14/building-a-private-ppa-on-ubuntu/comment-page-1/#comment-2679</link>
		<dc:creator>Jack Dausman</dc:creator>
		<pubDate>Sat, 19 Sep 2009 16:57:53 +0000</pubDate>
		<guid isPermaLink="false">http://inodes.org/blog/?p=189#comment-2679</guid>
		<description>wow. This is extraordinarily useful.</description>
		<content:encoded><![CDATA[<p>wow. This is extraordinarily useful.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeremy</title>
		<link>http://inodes.org/2009/09/14/building-a-private-ppa-on-ubuntu/comment-page-1/#comment-2676</link>
		<dc:creator>Jeremy</dc:creator>
		<pubDate>Tue, 15 Sep 2009 05:55:25 +0000</pubDate>
		<guid isPermaLink="false">http://inodes.org/blog/?p=189#comment-2676</guid>
		<description>Awesome! :)</description>
		<content:encoded><![CDATA[<p>Awesome! <img src='http://inodes.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: johnf</title>
		<link>http://inodes.org/2009/09/14/building-a-private-ppa-on-ubuntu/comment-page-1/#comment-2675</link>
		<dc:creator>johnf</dc:creator>
		<pubDate>Tue, 15 Sep 2009 05:38:50 +0000</pubDate>
		<guid isPermaLink="false">http://inodes.org/blog/?p=189#comment-2675</guid>
		<description>That&#039;s one thing I forgot to mention. You can get it to satisfy everything from the PPA.

Basically you need to add the PPA to your sources.list so that it is used to grab dependencies from. You also need a pre-depend hook to perform an aptitude update.

Edit /etc/pbuilder/pbuilderrc

&lt;pre&gt;
 HOOKDIR=&quot;/etc/pbuilder/hooks&quot;
&lt;/pre&gt;

then

&lt;pre lang=&#039;bash&quot;&gt;
mkdir /etc/pbuilder/hooks
echo -e &quot;#!/bin/sh\n/usr/bin/aptitude update\n&quot; &gt; /etc/pbuilder/hooks/D70aptitude_update
&lt;/pre&gt;</description>
		<content:encoded><![CDATA[<p>That&#8217;s one thing I forgot to mention. You can get it to satisfy everything from the PPA.</p>
<p>Basically you need to add the PPA to your sources.list so that it is used to grab dependencies from. You also need a pre-depend hook to perform an aptitude update.</p>
<p>Edit /etc/pbuilder/pbuilderrc</p>
<pre>
 HOOKDIR="/etc/pbuilder/hooks"
</pre>
<p>then</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">mkdir</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>pbuilder<span style="color: #000000; font-weight: bold;">/</span>hooks
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;#!/bin/sh<span style="color: #000099; font-weight: bold;">\n</span>/usr/bin/aptitude update<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>pbuilder<span style="color: #000000; font-weight: bold;">/</span>hooks<span style="color: #000000; font-weight: bold;">/</span>D70aptitude_update</pre></div></div>

]]></content:encoded>
	</item>
	<item>
		<title>By: Jeremy</title>
		<link>http://inodes.org/2009/09/14/building-a-private-ppa-on-ubuntu/comment-page-1/#comment-2674</link>
		<dc:creator>Jeremy</dc:creator>
		<pubDate>Tue, 15 Sep 2009 05:16:21 +0000</pubDate>
		<guid isPermaLink="false">http://inodes.org/blog/?p=189#comment-2674</guid>
		<description>I &lt;em&gt;really&lt;/em&gt; like the look of this </description>
		<content:encoded><![CDATA[<p>I <em>really</em> like the look of this</p>
]]></content:encoded>
	</item>
</channel>
</rss>

