<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://www.davromaniak.eu/index.php?feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Le site de Cyril &quot;Davromaniak&quot; Lavier, sysadmin ascendant geek - Mot-clé - planet.ubuntu.com</title>
  <link>http://www.davromaniak.eu/index.php?</link>
  <atom:link href="http://www.davromaniak.eu/index.php?feed/tag/planet.ubuntu.com/rss2" rel="self" type="application/rss+xml"/>
  <description></description>
  <language>fr</language>
  <pubDate>Wed, 12 Jun 2013 08:20:26 +0200</pubDate>
  <copyright></copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Incorporate a file in another with AWK</title>
    <link>http://www.davromaniak.eu/index.php?post/2012/09/21/Incorporate-a-file-in-another-with-AWK</link>
    <guid isPermaLink="false">urn:md5:afa1df5c060d70b69d84e65b48aa5f02</guid>
    <pubDate>Fri, 21 Sep 2012 13:52:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informatique et nouvelles technologies</category>
        <category>AWK</category><category>Bash</category><category>planet.ubuntu.com</category>    
    <description>    &lt;p&gt;Hello.&lt;/p&gt;


&lt;p&gt;Recently, I had to replace a string of characters by a text file content.&lt;/p&gt;


&lt;p&gt;Example : I want to replace &quot;##__youpi_tralala__##&quot; by the content of the text file called &quot;youpi_tralala&quot;.&lt;/p&gt;


&lt;p&gt;I tried with sed, but it wasn't reliable, as sed tried to execute the text file content.&lt;/p&gt;


&lt;p&gt;So I worked with my best friend AWK.&lt;/p&gt;


&lt;p&gt;Here is the result, the script called include_file.awk :&lt;/p&gt;

&lt;pre&gt;
{
	str=$0
	where=match(str,regexp)
	if (where) {
		while ((&amp;quot;cat &amp;quot;file) | getline tstr &amp;gt; 0) {
			if (newstr == &amp;quot;&amp;quot;) {
				newstr=tstr
			} else {
				newstr=newstr&amp;quot;\n&amp;quot;tstr
			}
		}
		close (tstr)
		sub(regexp,newstr,str)
	}
	print str
}
&lt;/pre&gt;


&lt;p&gt;It's a beautiful AWK script, which can be launched like this : awk -v regexp=&quot;awesome regexp&quot; -v file=/path/to/the/included/file -f include_file.awk text_file_with_the_regex&lt;/p&gt;


&lt;p&gt;I use it in LaTeX, to debug some includes, to see if the file content or the include which is the origin of the issue.&lt;/p&gt;


&lt;p&gt;Here is an example :&lt;/p&gt;

&lt;pre&gt;
awk -v regexp=&amp;quot;^%%__part1__%%$&amp;quot; -v file=includes/part1.tex -f include_file.awk document.tex | pdflatex -jobname=document
&lt;/pre&gt;


&lt;p&gt;Here, the string placed in the document.tex file is &quot;%%__part1__%%&quot;.&lt;/p&gt;


&lt;p&gt;That's all folks :D.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2012/09/21/Incorporate-a-file-in-another-with-AWK#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2012/09/21/Incorporate-a-file-in-another-with-AWK#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/229</wfw:commentRss>
      </item>
    
  <item>
    <title>Debian Wheezy has been frozen</title>
    <link>http://www.davromaniak.eu/index.php?post/2012/07/01/Debian-Wheezy-has-been-frozen</link>
    <guid isPermaLink="false">urn:md5:811b777b6e78f58250905c8459feed72</guid>
    <pubDate>Sun, 01 Jul 2012 18:19:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informatique et nouvelles technologies</category>
        <category>Debian</category><category>Freeze</category><category>planet.ubuntu.com</category><category>Wheezy</category>    
    <description>&lt;p&gt;And it's the first time I actually live a Debian freeze.&lt;/p&gt;    &lt;p&gt;Hello.&lt;/p&gt;


&lt;p&gt;Yesterday evening, automatic migrations of packages from Unstable to Testing were stopped. Only packages waiting to be migrated from Unstable to Testing were given automatic freeze exceptions (like Nginx).&lt;/p&gt;


&lt;p&gt;I use Debian for 8 years now (I still remember my good old Debian Woody :)) and I've been used to the release process, but didn't actually paid attention until I became a Debian contributor in 2011.&lt;/p&gt;


&lt;p&gt;This freeze is important to me because it's the first time I actually live one, as I help maintaining the Nginx packages (also audacious, but I'm quite inactive to focus more on Nginx until I get in better shape).&lt;/p&gt;


&lt;p&gt;On May 27th 2011, I sent a &lt;a href=&quot;http://lists.debian.org/debian-backports/2011/05/msg00061.html&quot; hreflang=&quot;en&quot;&gt;mail to the backports mailing list&lt;/a&gt; telling I performed a backport of Nginx 1.0.1 to Squeeze and I was hoping somebody could upload it.&lt;/p&gt;


&lt;p&gt;The first answer I got was from Kartik Mistry, one of the maintainers of the nginx packages (now the main maintainer). He reviewed the package and invited me to give some help on package maintenance.&lt;/p&gt;


&lt;p&gt;It was the start of a great journey through the Debian project.&lt;/p&gt;


&lt;p&gt;First, we worked on synchronizing our efforts on packaging and backporting, then I started to work on some bugs or some issues reported. But I actually started to learn how the packaging process work.&lt;/p&gt;


&lt;p&gt;Some milestones on my short career as a Debian contributor :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;January 1st 2012 : I get my first changelog entries (3) and my first bug closing (bug &lt;a href=&quot;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=653160&quot; hreflang=&quot;en&quot;&gt;#653160&lt;/a&gt;), mostly insignificant, but quite enjoyable.&lt;/li&gt;
&lt;li&gt;March 18th 2012 (On Saint Cyril ;)) : I had my first upload sponsored by Kartik Mistry.&lt;/li&gt;
&lt;li&gt;May 8th 2012 : The Nginx packaging tree was switched from SVN to GIT&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Over the last year, the biggest work done on Nginx packaging was not so technical, it was human. We now work as a team, in which every member knows its role. We are 3 persons working as 1, and I think it's better than earlier.&lt;/p&gt;


&lt;p&gt;I would like thank these people for this great journey :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Kartik Mistry and the whole Nginx packaging team (Michael Lustfield, Jose Parrella, Fabio Tranchitella, Dmitry Oboukhov)&lt;/li&gt;
&lt;li&gt;Sven Hoexter, which is sponsoring the nginx backports (I may give you some work when nginx 1.2.1-2 will be migrated to Testing :)).&lt;/li&gt;
&lt;li&gt;Benjamin Drung, for helping me a lot when I worked on audacious packages.&lt;/li&gt;
&lt;li&gt;And everybody I had opportunity to chat with on various Debian mailing lists and IRC channels.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now, some figures about nginx packaging from last freeze (Squeeze freeze) :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;68 commits in the GIT repository&lt;/li&gt;
&lt;li&gt;262 commits in the SVN repository&lt;/li&gt;
&lt;li&gt;78 bugs closed via package upload&lt;/li&gt;
&lt;li&gt;18 new upstream releases uploaded&lt;/li&gt;
&lt;li&gt;28 package uploads
&lt;ul&gt;
&lt;li&gt;19 by Kartik Mistry&lt;/li&gt;
&lt;li&gt;4 by Michael Lustfield&lt;/li&gt;
&lt;li&gt;4 by Me&lt;/li&gt;
&lt;li&gt;1 by Dmitry Oboukhov&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you want to chat or want to help us on package maintenance, you can come to the #debian-nginx IRC channel on the OFTC network.&lt;/p&gt;


&lt;p&gt;That's all folks !&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2012/07/01/Debian-Wheezy-has-been-frozen#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2012/07/01/Debian-Wheezy-has-been-frozen#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/220</wfw:commentRss>
      </item>
    
  <item>
    <title>DDB lenny-backports discontinued</title>
    <link>http://www.davromaniak.eu/index.php?post/2012/04/02/DDB-lenny-backports-discontinued</link>
    <guid isPermaLink="false">urn:md5:e975d8d71f7e5946ec15145b340deb34</guid>
    <pubDate>Mon, 02 Apr 2012 08:47:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informatique et nouvelles technologies</category>
        <category>planet.ubuntu.com</category>    
    <description>    &lt;p&gt;Hello everybody.&lt;/p&gt;


&lt;p&gt;As Debian discontinued the support of the 5.0 &quot;Lenny&quot; release, I decided to do so in the &lt;a href=&quot;http://ddb.davromaniak.eu&quot; hreflang=&quot;en&quot; title=&quot;DDB&quot;&gt;DDB&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;I will continue to maintain the squeeze-backports, and lenny-backports will be moved into another repository at &lt;a href=&quot;http://archives.ddb.davromaniak.eu&quot; hreflang=&quot;en&quot; title=&quot;http://archives.ddb.davromaniak.eu&quot;&gt;http://archives.ddb.davromaniak.eu&lt;/a&gt; which will be created in the next hours or days.&lt;/p&gt;


&lt;p&gt;Thanks.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2012/04/02/DDB-lenny-backports-discontinued#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2012/04/02/DDB-lenny-backports-discontinued#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/217</wfw:commentRss>
      </item>
    
  <item>
    <title>My pbuilderrc using qemu-debootstrap</title>
    <link>http://www.davromaniak.eu/index.php?post/2012/03/25/My-pbuilderrc-using-qemu-debootstrap</link>
    <guid isPermaLink="false">urn:md5:1d8b7c2f47fbbc91655550ef9f74c5ad</guid>
    <pubDate>Sun, 25 Mar 2012 16:49:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informatique et nouvelles technologies</category>
        <category>planet.ubuntu.com</category>    
    <description>    &lt;p&gt;Hello everybody.&lt;/p&gt;


&lt;p&gt;First, I'm sorry for this late translation. I had a quite bad and busy period of time, so I was unable to take time to perform this translation.&lt;/p&gt;


&lt;p&gt;As you are already aware of, Debian packaging takes a lot of my time, as well on the practical side as on the theoretical part of it.&lt;/p&gt;


&lt;p&gt;Recently, I became co-maintainer of audacious and audacious-plugins Debian packages. Also, in few weeks, I will become co-maintainer of the NGINX package in Debian (it happened on March 16th).&lt;/p&gt;


&lt;p&gt;I'm also working on making the NGINX maintaining team work as an actual team. I try to achieve this by scheduling milestones and managing Wheezy goals for the packaging. I also try to make all co-maintainers speaking when an important decision need to be taken (new upstream release to upload, module adding/removal, etc...). By far, I think it's working and we are finally working as a team.&lt;/p&gt;


&lt;p&gt;But without any building/development environment, Debian packaging would be like playing Russian-roulette with a fully loaded machine-gun.&lt;/p&gt;


&lt;p&gt;Why ?&lt;/p&gt;


&lt;p&gt;It's simple.&lt;/p&gt;


&lt;p&gt;Before any source package upload in Debian, building a package in a clean environment is highly recommended. You need to be sure of the build-deps and binary dependencies. Building a package on your own PC doesn't ensure you the well working of a package. Because like every user, you have packages already installed on machine, which some of them may be undeclared build-deps. So the package built well on your machine, but won't build in a clean environment.&lt;/p&gt;


&lt;p&gt;There are a lot of ways to have a clean environment, here is a list :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Virtualized machines, which will be reinstalled after every build try (perfect for patient people with a lot of spare time).&lt;/li&gt;
&lt;li&gt;The same as above, but with physical machines (sponsored by the electrical company because of the power consumption and useful during winter, because you can shutdown you house heating system).&lt;/li&gt;
&lt;li&gt;Find a intern for reinstalling machines while you are working on source packages (expensive and may cause antidepressant drugs abuse by the intern).&lt;/li&gt;
&lt;li&gt;Handmade chroots with debootstrap (We barely have a long-lasting solution, because we need to recreate chroots after every build. Hmmm, not so handy).&lt;/li&gt;
&lt;li&gt;Use Debian powered tools, which create clean chroots (compressed in TGZ) and unpack them to build packages in it (pbuilder and its friend debootstrap are doing this very well).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As you guessed, the following will be about the pbuilder tool.&lt;/p&gt;


&lt;p&gt;A pbuilderrc file can be used to configure pbuilder. Often placed in $HOME/.pbuilderrc, this i a shell script which is launched by pbuilder at the beginning of its work.&lt;/p&gt;


&lt;p&gt;Like I already explained in the posts &lt;a href=&quot;http://www.davromaniak.eu/index.php?post/2011/03/03/The-ultimate-package-building-system&quot;&gt;The ultimate Debian/Ubuntu package building system&lt;/a&gt; and &lt;a href=&quot;http://www.davromaniak.eu/index.php?post/2011/07/12/Pbuilder-and-tmpfs-can-be-friends&quot;&gt;Pbuilder and tmpfs can be friends&lt;/a&gt;, the .pbuilderrc file helps setting all aspects of these chroots creation and use.&lt;/p&gt;


&lt;p&gt;After a lot of work on this configuration, I wrote a quite complete pbuilderrc now, supporting the use of qemu-debootstrap, which is an evolved debootstrap. It uses QEMU to virtualize the chroot hardware architecture. So now we can build ARM packages on a I386 or AMD64 machine without using a cross-compilation.&lt;/p&gt;


&lt;p&gt;Before using this pbuilderrc, you need to install the &lt;em&gt;qemu-debootstrap&lt;/em&gt; package. Available on squeeze-backports, wheezy and sid for Debian, and starting natty for Ubuntu.&lt;/p&gt;


&lt;p&gt;I also recommend the reading of the post &lt;a href=&quot;http://www.davromaniak.eu/index.php?post/2011/03/03/The-ultimate-package-building-system&quot;&gt;The ultimate Debian/Ubuntu package building system&lt;/a&gt; to have all needed tools to use pbuilder with this kind of configuration.&lt;/p&gt;


&lt;p&gt;The pbuilderrc is available on my GIT repository named &quot;scriptomaniak&quot; available on &lt;a href=&quot;https://github.com/davromaniak/scriptomaniak&quot; hreflang=&quot;en&quot; title=&quot;github&quot;&gt;github&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Download it in your /root/ folder, under the .pbuilderrc name.&lt;/p&gt;


&lt;p&gt;Don't hesitate to comment this work and submit patches/pull requests.&lt;/p&gt;


&lt;p&gt;That's all folks !&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2012/03/25/My-pbuilderrc-using-qemu-debootstrap#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2012/03/25/My-pbuilderrc-using-qemu-debootstrap#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/216</wfw:commentRss>
      </item>
    
  <item>
    <title>Thruk + NGINX + authentication</title>
    <link>http://www.davromaniak.eu/index.php?post/2011/12/30/Thruk-NGINX-authentification-en</link>
    <guid isPermaLink="false">urn:md5:5dabad52ed7a2d42f153365400540fd8</guid>
    <pubDate>Fri, 30 Dec 2011 11:41:00 +0100</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informatique et nouvelles technologies</category>
        <category>planet.ubuntu.com</category>    
    <description>&lt;p&gt;Sometimes, when one line is missing, the whole system seems broken.&lt;/p&gt;    &lt;p&gt;Hello.&lt;/p&gt;


&lt;p&gt;As you know it, I use NGINX on a daily basis. And yesterday evening, I worked on installing NGINX on the last server which used Apache, but it hosts Shinken + Thruk.&lt;/p&gt;


&lt;p&gt;And the problems arrive with Thruk.&lt;/p&gt;


&lt;p&gt;He uses his CGI server, as the configuration with Apache is simple and well documented, I never tried to fully understand this configuration.Butcette partie de la conf.&lt;/p&gt;


&lt;p&gt;But with NGINX, it's totally different.&lt;/p&gt;


&lt;p&gt;My thruk is installed in /opt/thruk.&lt;/p&gt;


&lt;p&gt;Here is the configuration part for thruk in my NGINX configuration :&lt;/p&gt;

&lt;pre&gt;
location /thruk {
	auth_basic            &amp;quot;Monitoring Access&amp;quot;;
	auth_basic_user_file  /opt/thruk/htpasswd.users;	
	fastcgi_index index.cgi;
	fastcgi_param REMOTE_USER $remote_user;
	fastcgi_pass	unix:/tmp/thruk_fastcgi.socket;
	include fastcgi_params;
}
&lt;/pre&gt;


&lt;p&gt;Above all, DON'T FORGET the line &quot;fastcgi_param REMOTE_USER $remote_user;&quot;, which transmit the logged user to thruk, who will recognize it and allow you to access the interface.&lt;/p&gt;


&lt;p&gt;Big cheers to ScriptFanix on the IRC channel #shinken on Freenode for helping me with this issue.&lt;/p&gt;


&lt;p&gt;Thanks.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2011/12/30/Thruk-NGINX-authentification-en#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2011/12/30/Thruk-NGINX-authentification-en#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/214</wfw:commentRss>
      </item>
    
  <item>
    <title>Debian/Ubuntu package building using virtual machines</title>
    <link>http://www.davromaniak.eu/index.php?post/2011/11/29/Debian/Ubuntu-package-building-using-virtual-machines</link>
    <guid isPermaLink="false">urn:md5:2f28330c57392ea59cfa9107bdd18fd3</guid>
    <pubDate>Tue, 29 Nov 2011 12:15:00 +0100</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informatique et nouvelles technologies</category>
        <category>planet.ubuntu.com</category>    
    <description>    &lt;p&gt;Hi.&lt;/p&gt;


&lt;p&gt;As you know, I often work on Debian package building.&lt;/p&gt;


&lt;p&gt;For some months now, the DDB provides packages for others architecures (powerpc and mips).&lt;/p&gt;


&lt;p&gt;For the basic architectures (amd64, i386 and armel), I have physical machines for building, but for powerpc and mips, I use QEMU virtual machines.&lt;/p&gt;


&lt;p&gt;As it took some time to create them, I decided to distribute them.&lt;/p&gt;


&lt;p&gt;Every virtual machine is pre-configured using &lt;a href=&quot;http://www.davromaniak.eu/index.php?post/2011/03/03/The-ultimate-package-building-system&quot;&gt;this article posted on March 2011&lt;/a&gt;, and pbuilders are created for Debian Lenny, Squeeze, Wheezy, Sid and Ubuntu Hardy, Karmic, Lucid, Maverick, Natty, Oneiric, Precise. Also, a README file containing all information for launching machines.&lt;/p&gt;


&lt;p&gt;So here they are :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AMD64 (about 6GB) : &lt;a href=&quot;http://www.davromaniak.eu/qemu/build_machine_amd64.tar&quot;&gt;http://www.davromaniak.eu/qemu/build_machine_amd64.tar&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;I386 (about 4GB) : &lt;a href=&quot;http://www.davromaniak.eu/qemu/build_machine_i386.tar&quot;&gt;http://www.davromaniak.eu/qemu/build_machine_i386.tar&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;MIPS (about 2GB) : &lt;a href=&quot;http://www.davromaniak.eu/qemu/build_machine_mips.tar&quot;&gt;http://www.davromaniak.eu/qemu/build_machine_mips.tar&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;MIPSEL (about 2GB) : &lt;a href=&quot;http://www.davromaniak.eu/qemu/build_machine_mipsel.tar&quot;&gt;http://www.davromaniak.eu/qemu/build_machine_mipsel.tar&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;POWERPC (about 3GB) : &lt;a href=&quot;http://www.davromaniak.eu/qemu/build_machine_powerpc.tar&quot;&gt;http://www.davromaniak.eu/qemu/build_machine_powerpc.tar&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;here are the MD5 sums, to check if the download went well :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AMD64 : 3e55dd81c20c2a6f67a43a97d7eab986&lt;/li&gt;
&lt;li&gt;I386 : 75c10975e65b1f816bc0a0711e9d12f3&lt;/li&gt;
&lt;li&gt;MIPS : 9192d16ec83d31b3de0b381179e6eeef&lt;/li&gt;
&lt;li&gt;MIPSEL : e01b1b1cdae64786d56b278c97e90c65&lt;/li&gt;
&lt;li&gt;POWERPC : 63d0d2ceac849de0b0c1ad51eea4ee44&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;To conclude, I thank Aurélien Jarno (aurel32), because he distributes QEMU virtual machines for most architectures, which served as base for these building machines.&lt;/p&gt;


&lt;p&gt;Thanks.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2011/11/29/Debian/Ubuntu-package-building-using-virtual-machines#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2011/11/29/Debian/Ubuntu-package-building-using-virtual-machines#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/211</wfw:commentRss>
      </item>
    
  <item>
    <title>Backports and some moments of joy</title>
    <link>http://www.davromaniak.eu/index.php?post/2011/08/06/Backports-and-some-moments-of-joy</link>
    <guid isPermaLink="false">urn:md5:e0d2564d3101ef31aefaa12318c9f8da</guid>
    <pubDate>Sat, 06 Aug 2011 21:18:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informatique et nouvelles technologies</category>
        <category>planet.ubuntu.com</category>    
    <description>    &lt;p&gt;Good evening everybody.&lt;/p&gt;


&lt;p&gt;A month after proposing the backport to Debian Squeeze of audacious 2.4.4, when I was starting to think it won't be accepted in the backports, I received 3 mails from Kilian Krause, who wants to sponsor the packages (audacious, audacious-plugins and libmowgli).&lt;/p&gt;


&lt;p&gt;I was very surprised and so happy because this backport is very different from the nginx backport I made some months ago (and I'm working with the maintainers to keep the backport up to date, and to synchronise work).&lt;/p&gt;


&lt;p&gt;As some people know, I use nginx as a daily base, it's installed on the server which serves this website, I used to make custom packages for my work (with adding some third party modules), so backporting nginx and contributing to it was barely normal.&lt;/p&gt;


&lt;p&gt;But for audacious, it's completely different. Mid June, on the backport mailing list, somebody (rent0n) requested a backport of audacious, I simply answered to the mail saying I've added the maintainers in CC and that I think we might wait until the 2.5.1 gets in unstable, to make the backport. Few days later, no answer from the maitainers, so I wanted to try to make the backport, in case it's not possible. So it was possible, but, as a first try, I didn't wanted to change the needed versions of the build dependencies, so it was a raw backport, but I had to recompile barely the whole world (it was about 10-15 packages). 2 days later, I cleaned the package, so I just needed to backport the libmowgli. Then, the requester tested it, was happy, and for me, that was all, I just asked for anybody to review it and upload. Actually, I was not thinking about official inclusion, and so I didn't upload the package to mentors.debian.net. So then, I leaved for 10 days, to go on holidays, and I forgot about the package, but not rent0n, which was very enthousiast, and sent me a mail about upload the packages to mentors, so I did it, because I thought maybe somebody will be interested about this package.&lt;/p&gt;


&lt;p&gt;One month later, the package was sponsored, and now it's waiting the ultimate validation.&lt;/p&gt;


&lt;p&gt;So it's the second time I get a backport sponsored and uploaded. Strangely, it feels the same as if it was the first time. Some excitation about the next steps, then I will regularily check the buildd status, and I will be divised into 2 feelings. The first being the relief, this work is done, so all the moments passed working on it are just memories. The second being the joy, as people think my work is good enough to be included in the official backport repository.&lt;/p&gt;


&lt;p&gt;Also, for every package I backport, I subscribe to the qa page, in order to receive notifications about bugs, updates, and everything related to the package.&lt;/p&gt;


&lt;p&gt;Now, some news about the &lt;a href=&quot;http://ddb.davromaniak.eu&quot; title=&quot;DDB&quot;&gt;DDB&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Few days ago, I decided to remove all references to the chromium backport, as I was unable to maintain it, and it was not clean at all. Because of this, I may create a &quot;dev&quot; component for the DDB, but for the moment, it's not decided.&lt;/p&gt;


&lt;p&gt;Also, I updated the nginx backport to the version 1.1.0, it's also uploaded to mentors, but will have to wait at least a week, to have it uploaded.&lt;/p&gt;


&lt;p&gt;That's all folks !&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2011/08/06/Backports-and-some-moments-of-joy#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2011/08/06/Backports-and-some-moments-of-joy#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/208</wfw:commentRss>
      </item>
    
  <item>
    <title>Pbuilder and tmpfs can be friends</title>
    <link>http://www.davromaniak.eu/index.php?post/2011/07/12/Pbuilder-and-tmpfs-can-be-friends</link>
    <guid isPermaLink="false">urn:md5:16a65424bcfb54002ba83990c4eceac5</guid>
    <pubDate>Tue, 12 Jul 2011 17:31:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informatique et nouvelles technologies</category>
        <category>planet.ubuntu.com</category>    
    <description>&lt;p&gt;A way to speed up Debian/Ubuntu package builds using pbuilder.&lt;/p&gt;    &lt;p&gt;Hi everybody.&lt;/p&gt;


&lt;p&gt;After the last article about the &lt;a href=&quot;http://www.davromaniak.eu/index.php?post/2011/03/03/The-ultimate-package-building-system&quot;&gt;installation of the package building machine&lt;/a&gt;, I was still hacking and searching around this building system.&lt;/p&gt;


&lt;p&gt;And I thought it would be useful to use a tmpfs (stored in RAM) to speed up builds.&lt;/p&gt;


&lt;p&gt;First, we need a big amount of RAM, at least 4GB, because we need to store the temporary data used for the build process, and keep enough RAM space for the system to work.&lt;/p&gt;


&lt;p&gt;The server I use is equipped with 16GB of RAM, so I don't have to worry about that :).&lt;/p&gt;


&lt;p&gt;To set this up, it's pretty simple (we need to perform all actions as the root user, so under Ubuntu, add &lt;em&gt;sudo&lt;/em&gt; at the beginning of every command).&lt;/p&gt;


&lt;p&gt;Create the &lt;em&gt;/var/cache/pbuilder/build&lt;/em&gt; folder if it's not done yet :&lt;/p&gt;
&lt;pre&gt;
mkdir /var/cache/pbuilder/build
&lt;/pre&gt;


&lt;p&gt;Then, use your favorite text editor, and add the following line to the &lt;em&gt;/etc/fstab&lt;/em&gt; file :&lt;/p&gt;
&lt;pre&gt;
tmpfs 			/var/cache/pbuilder/build	tmpfs	defaults,auto			0	0
&lt;/pre&gt;


&lt;p&gt;Mount the partition :&lt;/p&gt;
&lt;pre&gt;
mount /var/cache/pbuilder/build
&lt;/pre&gt;


&lt;p&gt;Then add the following line in your &lt;em&gt;/root/.pbuilderrc&lt;/em&gt; file :&lt;/p&gt;
&lt;pre&gt;
APTCACHEHARDLINK=no
&lt;/pre&gt;


&lt;p&gt;This will make the building system create symlinks instead of hardlinks between the cache folder and the build folder, as they are on separated partitions.&lt;/p&gt;


&lt;p&gt;I just ran a perf test with a complete build of the latest OWFS release for amd64 and i386 (11 supported systems, so 22 builds), and here is the results :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;With tmpfs : 53 minutes and 52 seconds&lt;/li&gt;
&lt;li&gt;Without tmpfs : 67 minutes and 18 seconds&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;As you can see, better performances with tmpfs.&lt;/p&gt;


&lt;p&gt;That's all folks, :).&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2011/07/12/Pbuilder-and-tmpfs-can-be-friends#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2011/07/12/Pbuilder-and-tmpfs-can-be-friends#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/207</wfw:commentRss>
      </item>
    
  <item>
    <title>Some news</title>
    <link>http://www.davromaniak.eu/index.php?post/2011/06/21/Some-news</link>
    <guid isPermaLink="false">urn:md5:1c1685492c383ff7b045f8e5402ffe29</guid>
    <pubDate>Tue, 21 Jun 2011 11:29:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informatique et nouvelles technologies</category>
        <category>planet.ubuntu.com</category>    
    <description>    &lt;p&gt;Hi.&lt;/p&gt;


&lt;p&gt;After few months of inactivity, there's some news.&lt;/p&gt;


&lt;p&gt;So you might see it now, I wrote a new template for this website, less colored, more readable.&lt;/p&gt;


&lt;p&gt;Then, the Debian/Ubuntu repositories I'm maintaining (which are now in the main menu)&lt;/p&gt;


&lt;p&gt;The &lt;a href=&quot;http://owfs.davromaniak.eu&quot; title=&quot;OWFS&quot;&gt;OWFS&lt;/a&gt; repository is still here, and updated regularly, with the latest release (2.8p9 released at the end of May). I am peacefully preparing the add of Ubuntu Oneiric, which will occur in the next weeks.&lt;/p&gt;


&lt;p&gt;The newcomer, &lt;a href=&quot;http://ddb.davromaniak.eu&quot; title=&quot;DDB (for Davromaniak&amp;#039;s Debian Backports)&quot;&gt;DDB (for Davromaniak's Debian Backports)&lt;/a&gt; is a repository containing all the backports I'm working on. The goal is to work on proposing them for inclusion in the official backport repository. It's a stable repository, but as it contains backports, it may be risky to use it.&lt;/p&gt;


&lt;p&gt;For now, backports for nginx 1.0.4, chromium 11.0.696.71 and audacious 2.4.4 are available, all along their build dependencies and binary dependencies.&lt;/p&gt;


&lt;p&gt;Also, nginx 1.0.4 was recently accepted for inclusion in the &lt;a href=&quot;http://backports.debian.org&quot; title=&quot;official backports&quot;&gt;official backports&lt;/a&gt;, we just need to wait until it's included. So the package available in the DDB repository is the same as the official one, only the version changes (I use &quot;davrobpo60+1&quot; instead of &quot;bpo60+1&quot; to mark the difference between official packages and DDB's packages).&lt;/p&gt;


&lt;p&gt;For chromium, it was a hard to perform backport (between 20 to 30 hours of work to make it work), but it's not so clean, as I prefered to backport the binutils package in order to have a backported package as close as the official package.&lt;/p&gt;


&lt;p&gt;For audacious, it works, but it's still a work in progress, mostly on the amount of dependencies to backport.&lt;/p&gt;


&lt;p&gt;I try to make my packages available for the majority of hardware architectures, but it all depends on the package size. For now, only OWFS and nginx are available under 5 hardware architectures (amd64, armel, i386, mips and powerpc), because they don't take too long to compile. For audaicous, the amount of dependencies make it difficult to compile under other architectures than amd64 and i386. For chromium, it's only compilable in amd64, i386 and armel, but it's compilation lasts for 25 minutes on my building machine (8 cores, 16GB of RAM), my armel machine being the complete opposite in term of power, building could last for days.&lt;/p&gt;


&lt;p&gt;That's all folks.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2011/06/21/Some-news#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2011/06/21/Some-news#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/205</wfw:commentRss>
      </item>
    
  <item>
    <title>OWFS : Debian and Ubuntu packages</title>
    <link>http://www.davromaniak.eu/index.php?post/2011/03/07/OWFS-Debian-and-Ubuntu-packages</link>
    <guid isPermaLink="false">urn:md5:a1dcc9b8ecdd48b626acd3d0e0557ec3</guid>
    <pubDate>Mon, 07 Mar 2011 14:49:00 +0100</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informatique et nouvelles technologies</category>
        <category>planet.ubuntu.com</category>    
    <description>    &lt;p&gt;Hello.&lt;/p&gt;


&lt;p&gt;OWFS is a free software suite, licensed under GPL. It's an easy and reliable way to use the 1-wire system from Maxim, which controls a widespread range of devices (sensors for temperature, moisture, luminosity, door openning/closing, and many more, even LCD screens).&lt;/p&gt;


&lt;p&gt;Today, I sent a mail to the OWFS mailing list, which makes the release official, here is the mail :&lt;/p&gt;

&lt;pre&gt;
Hi everybody.

In the company which I'm working for, we use 1-wire for more than 18 months.

We use it in our server rooms, to monitor the temperature in it (and send alerts when it's too hot) and we plan to monitor temperatures in the offices.

As we use Debian on our servers, I worked to make packages for making the installation easier.

At the beginning, packages where a little rough, but we decided to give back what the owfs community gave us, and to help this project by publicly releasing these packages.

So I cleaned the packages, and now, by this mail, I'm releasing them.

Packages are available the following versions of Debian and Ubuntu :
- Debian 5.0 &amp;quot;Lenny&amp;quot; (oldstable)
- Debian 6.0 &amp;quot;Squeeze&amp;quot; (stable)
- Debian 7.0 &amp;quot;Wheezy&amp;quot; (testing)
- Debian Sid (unstable)

- Ubuntu 8.04 &amp;quot;Hardy&amp;quot; (LTS)
- Ubuntu 9.04 &amp;quot;Jaunty&amp;quot;
- Ubuntu 9.10 &amp;quot;Karmic&amp;quot;
- Ubuntu 10.04 &amp;quot;Lucid&amp;quot; (LTS)
- Ubuntu 10.10 &amp;quot;Maverick&amp;quot;
- Ubuntu 11.04 &amp;quot;Natty&amp;quot; (testing)

So now, some explanation about the packages.

For the moment, I do not package owperl, owmon, owtap, owphp, owcapi, owpython, owtcl , owftpd and owhttpd.

However, packages for owftpd and owhttpd might come later, maybe with a 2.8p8 depending on the time I can take on packaging.

For the other packages, they will come when I will have enough time to do a clean packaging.

Here is the packages list (available in versions 2.8p6 and 2.8p7 if not indicated) :
- owfs-common : contains the /etc/owfs.conf file, and the manpage
- owfs-server : contains the /usr/sbin/owserver binary (originally in /usr/bin, but I moved it in the package, because of the Debian Policy requirements), the manpage and the init.d script
- owfs (only 2.8p7) : contains the /usr/sbin/owfs binary, to use with fuse (originally in /usr/bin, but I moved it in the package, because of the Debian Policy requirements), the manpage and the init.d script
- owfs-client : contains the client tools (owdir, owpresent, owread, owwrite and owread), with the manpages associated.
- libow-2.8-7 (only 2.8p7) : contains the libow for version 2.8p7
- libow-2.8-6 (only 2.8p6) : contains the libow for version 2.8p6
- owfs-dev : contains the file /usr/include/owfs_config.h
- owfs-doc : contains all the remaining manpages
- owfs-dbg : contains the debugging symbols

So if you need the server and the clients, install owfs-server and owfs-client (it will install owfs-common and libow-2.8-6 or libow-2.8-7 depending on which version you are installing). If you need the fuse filesystem, only install owfs (it will also install the dependencies needed).

All information you need is on the repository website (updated after every package update) : http://owfs.davromaniak.eu/

I would like to thank Paul Alfille for his work on OWFS, and all the other contributors for their respective work.

Also, I had to patch the sources for having full compliance to the Debian Policy, Paul, I will mail you later today or tomorrow to share these patches.

If you detect any problem, feel free to mail me, or mail the mailing list.

Thanks. 
&lt;/pre&gt;


&lt;p&gt;The repository is available here : &lt;a href=&quot;http://owfs.davromaniak.eu/&quot;&gt;http://owfs.davromaniak.eu/&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;By the way, I may work on including these packages to Debian/Ubuntu official repositories. I will keep you informed on the evolution.&lt;/p&gt;


&lt;p&gt;Bye.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2011/03/07/OWFS-Debian-and-Ubuntu-packages#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2011/03/07/OWFS-Debian-and-Ubuntu-packages#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/203</wfw:commentRss>
      </item>
    
  <item>
    <title>The ultimate Debian/Ubuntu package building system</title>
    <link>http://www.davromaniak.eu/index.php?post/2011/03/03/The-ultimate-package-building-system</link>
    <guid isPermaLink="false">urn:md5:cceb6083a175b8f25adf67557ca9cbe7</guid>
    <pubDate>Thu, 03 Mar 2011 21:28:00 +0100</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informatique et nouvelles technologies</category>
        <category>planet.ubuntu.com</category>    
    <description>    &lt;p&gt;Here is a &quot;small&quot; article which crosses the border between personal stuff and work but may be useful for many people.&lt;/p&gt;


&lt;p&gt;In my current job, making Debian and Ubuntu packages takes me a lot of time.&lt;/p&gt;


&lt;p&gt;At the beginning, I used to work on 2 virtual machine with a small pbuilderrc file, but I had the opportunity to work on a more powerful server (4 cores and 4GB of RAM), and I thought it would be useful to merge both machines and finaly have only one building machine.&lt;/p&gt;


&lt;p&gt;My building system runs on a Debian Sid, even if I was a long time Ubuntu user, now I use Debian (including on my workstation).&lt;/p&gt;


&lt;p&gt;Why choosing Debian Sid ?. Only to be able to install the latest versions of build tools, especially for debootstrap.&lt;/p&gt;


&lt;p&gt;It might also work on Debian stable, and Ubuntu (but some points are different)&lt;/p&gt;


&lt;p&gt;So let's begin.&lt;/p&gt;


&lt;p&gt;All the commands preceded by a &quot;#&quot; need to be run with the root user, commands preceded by a &quot;$&quot; need to be run with a normal user, without privileges.&lt;/p&gt;


&lt;p&gt;Notice : my server is running 64 bits OS, so I can compile 32 and 64 bits packages.&lt;/p&gt;


&lt;p&gt;First, we need to install sudo, because as time goes by, I learned the hard way that it's dangerous to work on packages with the user root because it's not necessary and also, after some hours of keyboard typing and with tiredness by, we can act like asses and transforming into a &quot;Rage Guy&quot; for the next 5 minutes (or hours).&lt;/p&gt;

&lt;pre&gt;
# aptitude install sudo
&lt;/pre&gt;


&lt;p&gt;Then, we need to change the settings of sudo depending of what we will do with pbuilder.&lt;/p&gt;

&lt;pre&gt;
# visudo
&lt;/pre&gt;


&lt;p&gt;Here is my sudo configuration file :&lt;/p&gt;

&lt;pre&gt;
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults	env_reset,env_keep=&amp;quot;DIST ARCH CONCURRENCY_LEVEL&amp;quot;

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root	ALL=(ALL:ALL) ALL

# Allow members of group sudo to execute any command
%sudo	ALL=(ALL:ALL) ALL

#includedir /etc/sudoers.d

# Members of the admin group may gain root privileges
%adm ALL=(ALL:ALL) ALL
&lt;/pre&gt;


&lt;p&gt;Note the &quot;Defaults&quot; line, which contains instructions for keeping the values of variables DIST, ARCH and CONCURRENCY_LEVEL. Keep those variable name in head, we will use them later.&lt;/p&gt;


&lt;p&gt;Now, we will work on the real part of compilation, we will install the tools needed for compilation.&lt;/p&gt;

&lt;pre&gt;
# aptitude install debhelper build-essential dpkg-dev pbuilder devscripts debootstrap
&lt;/pre&gt;


&lt;p&gt;Among those packages, the most remarkable are &quot;pbuilder&quot; and &quot;debootstrap&quot;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;pbuilder allows us to build our packages in a chrooted environment which contains the linux distribution of our choice.&lt;/li&gt;
&lt;li&gt;debootstrap is called by pbuilder to create this chrooted environment&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The lintian package is also useful, but optional, it tests the Debian Policy conformity of packages.&lt;/p&gt;


&lt;p&gt;Now all these tools are installed, we need to configure the pbuilder, with the pbuilderrc file. Since I don't like to edit the default configuration file (/etc/pbuilderrc), I choose to create the /root/.pbuilderrc file, which here is mine.&lt;/p&gt;

&lt;pre&gt;
# Codenames for Debian suites according to their alias. Update these when
# needed.
UNSTABLE_CODENAME=&amp;quot;sid&amp;quot;
TESTING_CODENAME=&amp;quot;wheezy&amp;quot;
STABLE_CODENAME=&amp;quot;squeeze&amp;quot;
STABLE_BACKPORTS_SUITE=&amp;quot;$STABLE_CODENAME-backports&amp;quot;
OLD_STABLE_CODENAME=&amp;quot;lenny&amp;quot;
OLD_STABLE_BACKPORTS_SUITE=&amp;quot;$OLD_STABLE_CODENAME-backports&amp;quot;

# List of Debian suites.
DEBIAN_SUITES=($UNSTABLE_CODENAME $TESTING_CODENAME $STABLE_CODENAME $OLD_STABLE_CODENAME &amp;quot;unstable&amp;quot; &amp;quot;testing&amp;quot; &amp;quot;stable&amp;quot; &amp;quot;experimental&amp;quot;)

# List of Ubuntu suites. Update these when needed.
UBUNTU_SUITES=(&amp;quot;natty&amp;quot; &amp;quot;maverick&amp;quot; &amp;quot;lucid&amp;quot; &amp;quot;karmic&amp;quot; &amp;quot;jaunty&amp;quot; &amp;quot;intrepid&amp;quot; &amp;quot;hardy&amp;quot; &amp;quot;gutsy&amp;quot;)

# Mirrors to use. Update these to your preferred mirror.
DEBIAN_MIRROR=&amp;quot;ftp.fr.debian.org/&amp;quot;
UBUNTU_MIRROR=&amp;quot;fr.archive.ubuntu.com&amp;quot;

# Use old-releases mirrors for EOL versions
if [ &amp;quot;${DIST}&amp;quot; == &amp;quot;gutsy&amp;quot; ]; then
	UBUNTU_MIRROR=&amp;quot;old-releases.ubuntu.com&amp;quot;
fi
if [ &amp;quot;${DIST}&amp;quot; == &amp;quot;intrepid&amp;quot; ]; then
	UBUNTU_MIRROR=&amp;quot;old-releases.ubuntu.com&amp;quot;
fi
# Optionally use the changelog of a package to determine the suite to use if
# none set.
if [ -z &amp;quot;${DIST}&amp;quot; ] &amp;amp;&amp;amp; [ -r &amp;quot;debian/changelog&amp;quot; ]; then
    DIST=$(dpkg-parsechangelog | awk '/^Distribution: / {print $2}')
    # Use the unstable suite for Debian experimental packages.
    if [ &amp;quot;${DIST}&amp;quot; == &amp;quot;experimental&amp;quot; ]; then
        DIST=&amp;quot;unstable&amp;quot;
    fi
fi

# Optionally set a default distribution if none is used. Note that you can set
# your own default (i.e. ${DIST:=&amp;quot;unstable&amp;quot;}).
: ${DIST:=&amp;quot;$(lsb_release --short --codename)&amp;quot;}

# Optionally set the architecture to the host architecture if none set. Note
# that you can set your own default (i.e. ${ARCH:=&amp;quot;i386&amp;quot;}).
: ${ARCH:=&amp;quot;$(dpkg --print-architecture)&amp;quot;}

NAME=&amp;quot;$DIST&amp;quot;
if [ -n &amp;quot;${ARCH}&amp;quot; ]; then
    NAME=&amp;quot;$NAME-$ARCH&amp;quot;
    DEBOOTSTRAPOPTS=(&amp;quot;--arch&amp;quot; &amp;quot;$ARCH&amp;quot; &amp;quot;${DEBOOTSTRAPOPTS[@]}&amp;quot;)
fi
BASETGZ=&amp;quot;/var/cache/pbuilder/$NAME-base.tgz&amp;quot;
DISTRIBUTION=&amp;quot;$DIST&amp;quot;
BUILDRESULT=&amp;quot;/var/cache/pbuilder/$NAME/result/&amp;quot;
APTCACHE=&amp;quot;/var/cache/pbuilder/$NAME/aptcache/&amp;quot;
BUILDPLACE=&amp;quot;/var/cache/pbuilder/build/&amp;quot;

if $(echo ${DEBIAN_SUITES[@]} | grep -q $DIST); then
    # Debian configuration
    MIRRORSITE=&amp;quot;http://$DEBIAN_MIRROR/debian/&amp;quot;
    COMPONENTS=&amp;quot;main contrib non-free&amp;quot;
    if $(echo &amp;quot;$STABLE_CODENAME stable&amp;quot; | grep -q $DIST); then
        EXTRAPACKAGES=&amp;quot;$EXTRAPACKAGES debian-backports-keyring&amp;quot;
        OTHERMIRROR=&amp;quot;$OTHERMIRROR | deb http://backports.debian.org/debian-backports $STABLE_BACKPORTS_SUITE $COMPONENTS&amp;quot;
    elif $(echo &amp;quot;$OLD_STABLE_CODENAME stable&amp;quot; | grep -q $DIST); then
        EXTRAPACKAGES=&amp;quot;$EXTRAPACKAGES debian-backports-keyring&amp;quot;
        OTHERMIRROR=&amp;quot;$OTHERMIRROR | deb http://backports.debian.org/debian-backports $OLD_STABLE_BACKPORTS_SUITE $COMPONENTS&amp;quot;
    elif $(echo &amp;quot;unstable&amp;quot; | grep -q $DIST); then
	DIST=&amp;quot;$UNSTABLE_CODENAME&amp;quot;
	OTHERMIRROR=&amp;quot;$OTHERMIRROR | deb http://ftp.fr.debian.org/debian/ experimental main&amp;quot;
    fi
elif $(echo ${UBUNTU_SUITES[@]} | grep -q $DIST); then
    # Ubuntu configuration
    MIRRORSITE=&amp;quot;http://$UBUNTU_MIRROR/ubuntu/&amp;quot;
    COMPONENTS=&amp;quot;main restricted universe multiverse&amp;quot;
     v=0
     n=0
     for i in ${DEBOOTSTRAPOPTS[@]}; do
	if [ $v -ne 0 ]; then
		DEBOOTSTRAPOPTS[$n]=&amp;quot;/usr/share/keyrings/ubuntu-archive-keyring.gpg&amp;quot;
	fi
	if [ $i == &amp;quot;--keyring&amp;quot; ]; then
		v=1;
	fi
	n=$((n+1))
     done
else
    echo &amp;quot;Unknown distribution: $DIST&amp;quot;
    exit 1
fi
&lt;/pre&gt;


&lt;p&gt;To make this installation easier, you can download it from &lt;a href=&quot;http://www.davromaniak.eu/pbuilderrc&quot;&gt;here&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;However, before jumping in the pbuilder creation of Ubuntu versions, there's a little thing to do if you are using Debian.&lt;/p&gt;


&lt;p&gt;Debootstrap packages from Debian and Ubuntu are different. 1 line differs in the file &lt;em&gt;/usr/share/debootstrap/scripts/gutsy&lt;/em&gt;. This different can cause trouble, especially under Ubuntu 11.04 &quot;Natty&quot;.&lt;/p&gt;


&lt;p&gt;At the line 72 of the file &lt;em&gt;/usr/share/debootstrap/scripts/gutsy&lt;/em&gt;, add the folllowing line :&lt;/p&gt;

&lt;pre&gt;
ln -nsf . &amp;quot;$TARGET/var/lib/dpkg/info/$ARCH&amp;quot;
&lt;/pre&gt;


&lt;p&gt;Now, we are finally ready.&lt;/p&gt;


&lt;p&gt;With this handsome .pbuilderrc, you will just have to type the following ligne to create a 64 bits Debian Squeeze pbuilder :&lt;/p&gt;
&lt;pre&gt;
$ DIST=squeeze ARCH=amd64 sudo pbuilder create
&lt;/pre&gt;


&lt;p&gt;Or a 32 bits Ubuntu Natty pbuilder :&lt;/p&gt;
&lt;pre&gt;
$ DIST=natty ARCH=i386 sudo pbuilder create
&lt;/pre&gt;


&lt;p&gt;But now, you are wondering &quot;Why did he talked about the CONCURRENCY_LEVEL variable ?&quot;.&lt;/p&gt;


&lt;p&gt;Here is the answer.&lt;/p&gt;


&lt;p&gt;The variable CONCURRENCY_LEVEL is used to run several processes for only one compilation, in other words, for person who use and know make, this variable acts like the &quot;-j&quot; option.&lt;/p&gt;


&lt;p&gt;To compile a source package with 4 processes under a 64 bits Debian Squeeze :&lt;/p&gt;
&lt;pre&gt;
$ CONCURRENCY_LEVEL=4 DIST=squeeze ARCH=amd64 sudo pbuilder build paquet.dsc
&lt;/pre&gt;


&lt;p&gt;To compile a source package with 2 processes under a 32 bits Ubuntu Natty 32 bits :&lt;/p&gt;
&lt;pre&gt;
$ CONCURRENCY_LEVEL=2 DIST=natty ARCH=i386 sudo pbuilder build paquet.dsc
&lt;/pre&gt;


&lt;p&gt;Here we are, the build system is up and running.&lt;/p&gt;


&lt;p&gt;But knowing that I like to have my own useful functions which help me to automate some tasks, I create a &lt;em&gt;.scripts&lt;/em&gt; folder in the home directory of my unprivileged user, and a script called&lt;em&gt;pbuilder_utils&lt;/em&gt; which here is the content.&lt;/p&gt;

&lt;pre&gt;
function update_pbuilder() {
	nprocs=$(grep -cE &amp;quot;^processor&amp;quot; /proc/cpuinfo)
	dists=$@
	for i in $dists; do
		CONCURRENCY_LEVEL=$nprocs DIST=$i ARCH=i386 sudo pbuilder update
		CONCURRENCY_LEVEL=$nprocs DIST=$i ARCH=amd64 sudo pbuilder update
	done
}
function create_pbuilder() {
	nprocs=$(grep -cE &amp;quot;^processor&amp;quot; /proc/cpuinfo)
	dists=$@
	for i in $dists; do
		CONCURRENCY_LEVEL=$nprocs DIST=$i ARCH=i386 sudo pbuilder create
		CONCURRENCY_LEVEL=$nprocs DIST=$i ARCH=amd64 sudo pbuilder create
	done
}
function clean_pbuilder() {
	nprocs=$(grep -cE &amp;quot;^processor&amp;quot; /proc/cpuinfo)
	dists=$@
	for i in $dists; do
		CONCURRENCY_LEVEL=$nprocs DIST=$i ARCH=i386 sudo pbuilder --clean
		CONCURRENCY_LEVEL=$nprocs DIST=$i ARCH=amd64 sudo pbuilder --clean
	done
}
function build_pbuilder() {
	nprocs=$(grep -cE &amp;quot;^processor&amp;quot; /proc/cpuinfo)
	dsc=$1
	shift
	dists=$@
	for i in $dists; do
		CONCURRENCY_LEVEL=$nprocs DIST=$i ARCH=i386 sudo pbuilder build $dsc
		CONCURRENCY_LEVEL=$nprocs DIST=$i ARCH=amd64 sudo pbuilder build $dsc
	done
}
&lt;/pre&gt;


&lt;p&gt;In the .bashrc file I added the following line : &lt;em&gt;source ~/.scripts/pbuilder_utils&lt;/em&gt;.&lt;/p&gt;


&lt;p&gt;From here, it might be a bit raw, but here are explanations :&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;update_pbuilder updates given pbuilders in both architectures, example : update_pbuilder squeeze natty&lt;/li&gt;
&lt;li&gt;create_pbuilder creates given pbuilders in both architectures, example : create_pbuilder squeeze natty&lt;/li&gt;
&lt;li&gt;clean_pbuilder cleans the given pbuilders in both architectures, example : clean_pbuilder squeeze natty&lt;/li&gt;
&lt;li&gt;build_pbuilder compiles a source package for distributions given in both architectures, example : build_pbuilder paquet.dsc natty lenny squeeze&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That's nearly all.&lt;/p&gt;


&lt;p&gt;For the pbuilderrc file given here, I took as base the one given at the following address : https://wiki.ubuntu.com/PbuilderHowto#Multiple%20pbuilders&lt;/p&gt;


&lt;p&gt;For the remaining things, it's hair pulling, some hacking and multiples missed tries.&lt;/p&gt;


&lt;p&gt;I hope you enjoy reading.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2011/03/03/The-ultimate-package-building-system#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2011/03/03/The-ultimate-package-building-system#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/201</wfw:commentRss>
      </item>
    
  <item>
    <title>SFS Update 0.3pre : a sneak peek of the 0.3</title>
    <link>http://www.davromaniak.eu/index.php?post/2010/03/24/SFS-Update-0.3preen</link>
    <guid isPermaLink="false">urn:md5:b9ff2c6df446e877d0ce5afee312776a</guid>
    <pubDate>Wed, 24 Mar 2010 20:00:00 +0100</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Ubuntu</category>
        <category>planet.ubuntu.com</category><category>SFSUpdate</category>    
    <description>    &lt;p&gt;Hi.&lt;/p&gt;


&lt;p&gt;Few weeks ago, SFS Update 0.2 was released, with some promises for the 0.3.&lt;/p&gt;


&lt;p&gt;In order to contain your impatience and to show what the 0.3 will look like, I decided to release a preliminary version of the 0.3, which supports a part of the forum engines listed on the last article.dernier billet.&lt;/p&gt;


&lt;p&gt;Here is a list of the forum engines which are supported by the 0.3pre version :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;PHPBB2&lt;/li&gt;
&lt;li&gt;PHPBB3&lt;/li&gt;
&lt;li&gt;Fluxbb 1.2 (experimental)&lt;/li&gt;
&lt;li&gt;Beehive 0.9 (experimental)&lt;/li&gt;
&lt;li&gt;FUDForum 3 (experimental)&lt;/li&gt;
&lt;li&gt;IceBB (experimental)&lt;/li&gt;
&lt;li&gt;MyBB (experimental)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I had to dismiss the idea of supporting these forum engines :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;bbPress : No ban mangement included&lt;/li&gt;
&lt;li&gt;kusaba : Project not developed anymore&lt;/li&gt;
&lt;li&gt;MercuryBoard : PProject not developed anymore&lt;/li&gt;
&lt;li&gt;MiniBB support : Ban management only contains IP ban, no username or email address ban management at this time&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;SFS Update 0.3 will support the following forum engines (depending on the feasibility) :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;NextBBS&lt;/li&gt;
&lt;li&gt;NinkoBB&lt;/li&gt;
&lt;li&gt;Quicksilver Forums&lt;/li&gt;
&lt;li&gt;UseBB&lt;/li&gt;
&lt;li&gt;Vanilla&lt;/li&gt;
&lt;li&gt;XMB&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;0.3 release will also mark the opening of a public GIT for this project, so that anybody will be able to improve and contribute to SFS Update&lt;/p&gt;


&lt;p&gt;Here are the links for download :
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.3pre.tar.bz2&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.3pre.tar.bz2&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.3pre.tar.gz&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.3pre.tar.gz&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;If you notice any bug or defect, feel free to contact me.&lt;/p&gt;


&lt;p&gt;Thanks.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2010/03/24/SFS-Update-0.3preen#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2010/03/24/SFS-Update-0.3preen#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/166</wfw:commentRss>
      </item>
    
  <item>
    <title>SFS Update comes back with a 0.2 version</title>
    <link>http://www.davromaniak.eu/index.php?post/2010/03/06/SFS-Update-comes-back-with-a-0.2-version-en</link>
    <guid isPermaLink="false">urn:md5:7c90e655166af6e69f9b48ae68d5d00d</guid>
    <pubDate>Sat, 06 Mar 2010 15:30:00 +0100</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Ubuntu</category>
        <category>planet.ubuntu.com</category><category>SFSUpdate</category>    
    <description>&lt;p&gt;And the 0.3 is announced.&lt;/p&gt;    &lt;p&gt;Hi&lt;/p&gt;


&lt;p&gt;A new version of this useful little shell script.&lt;/p&gt;


&lt;p&gt;The major new feature is the support of phpbb 3 forums (the connect strings evolves to set the forum engine used)&lt;/p&gt;


&lt;p&gt;It wasn't actually hard, but it marks an important step forward and the beginnings of the 0.3 version.&lt;/p&gt;


&lt;p&gt;The other changes are a bug fix, and the change of the downloading URL.&lt;/p&gt;


&lt;p&gt;Indeed, in order not to annoy the &lt;a href=&quot;http://www.stopforumspam.com&quot; hreflang=&quot;en&quot;&gt;stopforumspam&lt;/a&gt;'s webmaster, I decided to host the &lt;a href=&quot;http://www.davromaniak.eu/sfs_update/phpbb_bans.zip&quot; hreflang=&quot;en&quot;&gt;phpbb_bans.zip&lt;/a&gt; file used in the script. It's synchronised once a day, at 6:10 am french time (5:10 am GMT).&lt;/p&gt;


&lt;p&gt;Now, let's talk about the 0.3 version.&lt;/p&gt;


&lt;p&gt;Actually, the work has already begun few days ago because I had some time to work on it&lt;/p&gt;


&lt;p&gt;I decided to include the support of 14 forum engines which are released under a GPL licence, which are listed below, and for some, the progress status.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Fluxbb 1.2 (developed and tested)&lt;/li&gt;
&lt;li&gt;Beehive Forum 0.9  (developed and tested)&lt;/li&gt;
&lt;li&gt;FUDforum 3  (developed and tested)&lt;/li&gt;
&lt;li&gt;IceBB&lt;/li&gt;
&lt;li&gt;kusaba&lt;/li&gt;
&lt;li&gt;MercuryBoard&lt;/li&gt;
&lt;li&gt;miniBB&lt;/li&gt;
&lt;li&gt;MyBB&lt;/li&gt;
&lt;li&gt;NextBBS&lt;/li&gt;
&lt;li&gt;NinkoBB&lt;/li&gt;
&lt;li&gt;Quicksilver Forums&lt;/li&gt;
&lt;li&gt;UseBB&lt;/li&gt;
&lt;li&gt;Vanilla&lt;/li&gt;
&lt;li&gt;XMB&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I also decided to drop the configuration file support in the 0.3 version to make SFS Update a real standalone script et easier to set it in a cronized task.&lt;/p&gt;


&lt;p&gt;By the way, if you are using or simply know other forum engines (using a SQL database) released under a GPL licence or any opensource licence, I'm open to work on it.&lt;/p&gt;


&lt;p&gt;And if you are the administrator of one of these forum engines and you have a ssh remote access and all the requirements SFS Update needs, don't hesitate to try using the script, and send me your impressions on it, and even some bugs, :).&lt;/p&gt;


&lt;p&gt;Until I receive some feedback, the support of these 14 forum engines will be marked as experimental, waiting for a confirmation of the reliable working of SFS Update for these forums.&lt;/p&gt;


&lt;p&gt;Here are the links for download:
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.2.tar.bz2&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.2.tar.bz2&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.2.tar.gz&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.2.tar.gz&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;I hope SFS Update will be useful for you and your forum.&lt;/p&gt;


&lt;p&gt;Bye.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2010/03/06/SFS-Update-comes-back-with-a-0.2-version-en#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2010/03/06/SFS-Update-comes-back-with-a-0.2-version-en#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/164</wfw:commentRss>
      </item>
    
  <item>
    <title>SFS Update 0.1.4</title>
    <link>http://www.davromaniak.eu/index.php?post/2010/02/22/SFS-Update-0.1.4en</link>
    <guid isPermaLink="false">urn:md5:d0634369888ead5530dfe16248b1f5cf</guid>
    <pubDate>Mon, 22 Feb 2010 20:07:00 +0100</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Ubuntu</category>
        <category>planet.ubuntu.com</category><category>SFSUpdate</category>    
    <description>&lt;p&gt;A new version with plenty of new developments.&lt;/p&gt;    &lt;p&gt;Hi.&lt;/p&gt;


&lt;p&gt;After an update last week, SFS Update continue to evolve and now has his version 0.1.4 released, with a good changelog.&lt;/p&gt;


&lt;p&gt;This is the version which has the most evolved since his previous update.&lt;/p&gt;


&lt;p&gt;Here is the modification list:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Using getopt for parsing command line options&lt;/li&gt;
&lt;li&gt;MySQL server credentials can be given using a unique formated string called the &quot;connect string&quot; (yes, this is very original, ;)), see the README file for more information about the syntax.&lt;/li&gt;
&lt;li&gt;Ability to use multiple MySQL servers (simply separate the connect strings with a space character)&lt;/li&gt;
&lt;li&gt;Statistic part : added the time used for the processing&lt;/li&gt;
&lt;li&gt;Fixed a bug about the prefix value which was not actually used&lt;/li&gt;
&lt;li&gt;Download and treat the phpbb_bans.zip file only one time for the whole script execution&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The next major release (version 0.2) will welcome the PHPBB 3.x compatibilty, the file provided by the &lt;a href=&quot;http://www.stopforumspam.com&quot; hreflang=&quot;en&quot;&gt;stopforumspam&lt;/a&gt; website only works with PHPBB 2.x.&lt;/p&gt;


&lt;p&gt;There's some work to go, but it's getting closer, :).&lt;/p&gt;


&lt;p&gt;Here are the links for download:
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.1.4.tar.bz2&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.1.4.tar.bz2&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.1.4.tar.gz&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.1.4.tar.gz&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;That's all, folks, :).&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2010/02/22/SFS-Update-0.1.4en#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2010/02/22/SFS-Update-0.1.4en#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/162</wfw:commentRss>
      </item>
    
  <item>
    <title>SFS Update 0.1.3</title>
    <link>http://www.davromaniak.eu/index.php?post/2010/02/15/SFS-Update-0.1.3en</link>
    <guid isPermaLink="false">urn:md5:d6c52d5034b900761c493744918ced7e</guid>
    <pubDate>Mon, 15 Feb 2010 21:43:00 +0100</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Ubuntu</category>
        <category>planet.ubuntu.com</category><category>SFSUpdate</category>    
    <description>&lt;p&gt;Two new features&lt;/p&gt;    &lt;p&gt;Hi&lt;/p&gt;


&lt;p&gt;For reminder, SFS Update is a bash script which synchronises the &quot;banlist&quot; and the &quot;disallow&quot; tables of a PHPBB 2.x forum with the file provided by the &lt;a href=&quot;http://www.stopforumspam.com&quot; hreflang=&quot;en&quot;&gt;stopforumspam&lt;/a&gt; website.&lt;/p&gt;


&lt;p&gt;The main goal is to help forum administrators to low the effects of spambots in their forums.&lt;/p&gt;


&lt;p&gt;An update is available, the current version is now 0.1.3.&lt;/p&gt;


&lt;p&gt;This update adds two more features:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A statistic part is now available, it prints the amount of rows added in each table&lt;/li&gt;
&lt;li&gt;Now, you can choose the hostname/IP address of the MySQL server&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here are the links for download:
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.1.3.tar.bz2&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.1.3.tar.bz2&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.1.3.tar.gz&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.1.3.tar.gz&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;That's all, folks, :).&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2010/02/15/SFS-Update-0.1.3en#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2010/02/15/SFS-Update-0.1.3en#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/160</wfw:commentRss>
      </item>
    
  <item>
    <title>SFS Update 0.1.1</title>
    <link>http://www.davromaniak.eu/index.php?post/2009/08/10/SFS-Update-0.1.1en</link>
    <guid isPermaLink="false">urn:md5:8e3c421af2700e58f3cd83cc65d4060c</guid>
    <pubDate>Mon, 10 Aug 2009 20:42:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Ubuntu</category>
        <category>planet.ubuntu.com</category><category>SFSUpdate</category>    
    <description>&lt;p&gt;A little upgrade&lt;/p&gt;    &lt;p&gt;Hi.&lt;/p&gt;


&lt;p&gt;Here is a new minor version of SFS Update, which is now in version 0.1.1.&lt;/p&gt;


&lt;p&gt;It appears that I wanted to stop using grep in order to remove a requirement and to make this tool faster.&lt;/p&gt;


&lt;p&gt;For now, SFS Update doesn't work with phpbb v3, because the file given by &lt;a href=&quot;http://www.stopforumspam.com&quot; hreflang=&quot;en&quot;&gt;StopForumSpam&lt;/a&gt; uses the table structure of phpbb v2. This will be corrected in a next release.&lt;/p&gt;


&lt;p&gt;Here are the links for download: &lt;br /&gt;
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.1.1.tar.bz2&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.1.1.tar.bz2&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.1.1.tar.gz&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.1.1.tar.gz&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;Information: I decided to use the 0.x versions as major releases, and 0.x.y for minor upgrades.&lt;/p&gt;


&lt;p&gt;Besides, not to &quot;pollute&quot; the planet.ubuntu.com with post about every upgrade of SFS Update, I created a tag &lt;a href=&quot;http://www.davromaniak.eu/index.php?tag/SFSUpdate&quot; hreflang=&quot;en&quot;&gt;SFSUpdate&lt;/a&gt;, which will contain posts about this tool. The post about major versions will have the planet.ubuntu.com tag (this post is the last to talk about a minor version to appear in planet.ubuntu.com)&lt;/p&gt;


&lt;p&gt;That's all, folks, :).&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2009/08/10/SFS-Update-0.1.1en#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2009/08/10/SFS-Update-0.1.1en#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/150</wfw:commentRss>
      </item>
    
  <item>
    <title>SFS Update</title>
    <link>http://www.davromaniak.eu/index.php?post/2009/08/08/SFS-Updateen</link>
    <guid isPermaLink="false">urn:md5:7bf3c9baf221cf638a0c6793c6bb5e64</guid>
    <pubDate>Sat, 08 Aug 2009 22:32:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Ubuntu</category>
        <category>planet.ubuntu.com</category><category>SFSUpdate</category>    
    <description>&lt;p&gt;A tool for phpbb forum administrators&lt;/p&gt;    &lt;p&gt;Hi&lt;/p&gt;


&lt;p&gt;10 months ago, I started hosting a friend's phpbb forum. Of course, I'm the administrator of the technical side of the forum&lt;/p&gt;


&lt;p&gt;6 months ago, in order to try to protect the forum from spammers' assaults, I manually updated the bans list from the &lt;a href=&quot;http://www.stopforumspam.com/&quot; hreflang=&quot;en&quot;&gt;Stop Forum Spam&lt;/a&gt; website, which provides a SQL file for phpbb forums.&lt;/p&gt;


&lt;p&gt;However, this is repetitive and annoying, and today I decided to automate this task. So a little script is born.&lt;/p&gt;


&lt;p&gt;I also decided to publish it under a free software licence (the GNU GPL), maybe some other admins may use this script.&lt;/p&gt;


&lt;p&gt;This program will not work on web-hosting which do not propose a remote shell access.&lt;/p&gt;


&lt;p&gt;This is the 0.1 version of this program, for now he's unable to connect to a remote MySQL server (this feature will be included in the 0.2 version)&lt;/p&gt;


&lt;p&gt;Here are the links for download: &lt;br /&gt;
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.1.tar.bz2&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.1.tar.bz2&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.davromaniak.eu/sfs_update/sfs_update-0.1.tar.gz&quot; hreflang=&quot;en&quot;&gt;sfs_update-0.1.tar.gz&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;The installation howto is written in the README file included in the archive.&lt;/p&gt;


&lt;p&gt;If you have any idea, feel free to contact me using the contact form.&lt;/p&gt;


&lt;p&gt;@+&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2009/08/08/SFS-Updateen#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2009/08/08/SFS-Updateen#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/148</wfw:commentRss>
      </item>
    
  <item>
    <title>New logo for my website/blog</title>
    <link>http://www.davromaniak.eu/index.php?post/2009/07/03/New-Logo</link>
    <guid isPermaLink="false">urn:md5:9a218d70f6723ae6661a9ca7c2cee8af</guid>
    <pubDate>Tue, 14 Jul 2009 11:40:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Informations de service</category>
        <category>planet.ubuntu.com</category>    
    <description>&lt;p&gt;thanks to a fairy&lt;/p&gt;    &lt;p&gt;Hi everybody.&lt;/p&gt;


&lt;p&gt;As you can see, my website/blog has a new logo.&lt;/p&gt;


&lt;p&gt;Yep I know this post doesn't completely talks about Ubuntu and Free Software, but it's a new start for my blog, and the story behind this new logo completely deals with Ubuntu and Canonical.&lt;/p&gt;


&lt;p&gt;The former logo, which was composed of the Debian and the Ubuntu logos didn't meet the logo usage guidelines of the &lt;a href=&quot;http://www.ubuntu.com/aboutus/trademarkpolicy&quot; hreflang=&quot;en&quot;&gt;Ubuntu Trademark Policy&lt;/a&gt;. In order to meet these rules and not to set the bad example, I decided to create a new logo.&lt;/p&gt;


&lt;p&gt;This logo was not drew by myself. A little fairy named Anita Mazur, which has gained a little spot in my heart, drew the entire logo based on our common ideas and design.&lt;/p&gt;


&lt;p&gt;This one of a kind logo mixes the old with the contemporary. Will you find his meaning ?&lt;/p&gt;


&lt;p&gt;Anita did a terrific job, because she worked with only ideas, I didn't draw any sketch. Despite this, no corrections were needed, and the first version was the good one&lt;/p&gt;


&lt;p&gt;After getting a spot in my heart, through this logo, she now has a little spot in my blog. Before maybe getting the occasion to write in my blog, or in is own one near mine's.&lt;/p&gt;


&lt;p&gt;She has a &lt;a href=&quot;http://dakki000.deviantart.com/&quot; hreflang=&quot;en&quot;&gt;Deviant Art page&lt;/a&gt;, go and see photos and drawings she made.&lt;/p&gt;


&lt;p&gt;Try to find the meaning of this logo, those who will succeed won't win anything, except our respect and recognition, :D.&lt;/p&gt;


&lt;p&gt;Bye.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2009/07/03/New-Logo#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2009/07/03/New-Logo#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/146</wfw:commentRss>
      </item>
    
  <item>
    <title>Cock-a-doodle-do !!! An Ubuntu Netbook is released by Archos</title>
    <link>http://www.davromaniak.eu/index.php?post/2009/06/25/Cock-a-doodle-do-An-Ubuntu-Netbook-is-released-by-Archos</link>
    <guid isPermaLink="false">urn:md5:221c27e37a18439b2f11d1fabcd2ef34</guid>
    <pubDate>Thu, 25 Jun 2009 20:25:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Ubuntu</category>
        <category>planet.ubuntu.com</category>    
    <description>    &lt;p&gt;Archos is a french company known since 10 years for producing MP3 and MP4 players just released a netbook which runs under your favorite OS.&lt;/p&gt;


&lt;p&gt;It's the Archos 10 UBUNTU&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://www.davromaniak.eu/images/archos10u.jpg&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Here are the technical specs of the beast :&lt;br /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;500 GB Hard disk&lt;/li&gt;
&lt;li&gt;10.2'' WXGA Screen (LED backlight)&lt;/li&gt;
&lt;li&gt;Intel® ATOM™ N270 1.60 GHz Processor&lt;/li&gt;
&lt;li&gt;2 GB DDR2&lt;/li&gt;
&lt;li&gt;WiFi - card reader slot (SD/MMC/MS/MS PRO) - 1.3MP webcam - 2 stereo speakers - microphone&lt;/li&gt;
&lt;li&gt;Operating System : UBUNTU 8.04 LTS&lt;/li&gt;
&lt;li&gt;Extended-life battery version: extended-life up to 7 hours (with 6-cells battery)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;All this stuff for 399.98 €, which is a common price for netbooks.&lt;/p&gt;


&lt;p&gt;You can directly buy it in the &lt;a href=&quot;http://www.archos.com/store/psearch.html?country=fr&amp;amp;lang=fr&amp;amp;prod_id=archos10u&quot; hreflang=&quot;fr&quot;&gt;Archos Store (only in French for the moment)&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Bye.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2009/06/25/Cock-a-doodle-do-An-Ubuntu-Netbook-is-released-by-Archos#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2009/06/25/Cock-a-doodle-do-An-Ubuntu-Netbook-is-released-by-Archos#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/143</wfw:commentRss>
      </item>
    
  <item>
    <title>Ubuntu Member since September 2007</title>
    <link>http://www.davromaniak.eu/index.php?post/2009/05/21/Ubuntu-Member-since-September-2007</link>
    <guid isPermaLink="false">urn:md5:33616389afeb9d32fa03a01d364d2718</guid>
    <pubDate>Thu, 21 May 2009 18:57:00 +0200</pubDate>
    <dc:creator>Cyril Lavier</dc:creator>
        <category>Ubuntu</category>
        <category>planet.ubuntu.com</category>    
    <description>&lt;p&gt;But it's the first post in the ubuntu.com planet&lt;/p&gt;    &lt;p&gt;Why lasting so much time without taking time to add my feed to the planet ?&lt;/p&gt;


&lt;p&gt;Simply because I didn't took the necessary time to add the feed, and I never thought I would have something interesting to say in this planet.&lt;/p&gt;


&lt;p&gt;My posts won't compete against our &lt;del&gt;Britney Spears Fan&lt;/del&gt; MOTU, Didier Roche.&lt;/p&gt;


&lt;p&gt;I will talk about my relation to Free Software, using some peripherals, like the Pertelian, for which I develop some scripts, and others snippets.&lt;/p&gt;


&lt;p&gt;For now, that's all&lt;/p&gt;


&lt;p&gt;My next post might be a translation of &lt;a href=&quot;http://www.davromaniak.eu/index.php?post/2009/05/19/Apres-The-A-Team&quot;&gt;this french post&lt;/a&gt;, which talks about the last Ubuntu Party, but not like the &lt;a href=&quot;http://blog.didrocks.fr/index.php/post/Ubuntu-Party-Paris%3A-Oooopss%2C-we-did-it-again!&quot;&gt;official post&lt;/a&gt; made by Didier Roche.&lt;/p&gt;


&lt;p&gt;Bye.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.davromaniak.eu/index.php?post/2009/05/21/Ubuntu-Member-since-September-2007#comment-form</comments>
      <wfw:comment>http://www.davromaniak.eu/index.php?post/2009/05/21/Ubuntu-Member-since-September-2007#comment-form</wfw:comment>
      <wfw:commentRss>http://www.davromaniak.eu/index.php?feed/atom/comments/141</wfw:commentRss>
      </item>
    
</channel>
</rss>