<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0" 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" >
<channel>
    
    <title>Lenz Grimmer's blog (Entries tagged as packaging)</title>
    <link>http://www.lenzg.net/</link>
    <description>Random notes about Linux, MySQL and Open Source</description>
    <dc:language>en</dc:language>
    <generator>Serendipity 1.6.2 - http://www.s9y.org/</generator>
    <pubDate>Sat, 06 Mar 2010 14:04:16 GMT</pubDate>

    <image>
        <url>http://www.lenzg.net/templates/default/img/s9y_banner_small.png</url>
        <title>RSS: Lenz Grimmer's blog - Random notes about Linux, MySQL and Open Source</title>
        <link>http://www.lenzg.net/</link>
        <width>100</width>
        <height>21</height>
    </image>

<item>
    <title>How to get your product bundled with Linux distributions</title>
    <link>http://www.lenzg.net/archives/292-How-to-get-your-product-bundled-with-Linux-distributions.html</link>
            <category>Linux</category>
            <category>MySQL</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/292-How-to-get-your-product-bundled-with-Linux-distributions.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=292</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=292</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;I recently received a question from &lt;a href=&quot;http://www.calpont.com/about/team&quot;&gt;Robin Schumacher at Calpont&lt;/a&gt;, the makers of the &lt;a href=&quot;http://infinidb.org/&quot;&gt;InfiniDB&lt;/a&gt; analytics database engine for MySQL: &amp;quot;How would you recommend we try and get bundled in with the various Linux distros?&amp;quot;&lt;/p&gt;
&lt;p&gt;Since this question has come up several times before, I thought it might make sense to blog about my take on this.&lt;/p&gt;
&lt;p&gt;First of all, please note that there is a difference between &amp;quot;being part of the core distribution&amp;quot; and &amp;quot;being available from a distributor&#039;s package repository&amp;quot;. The latter one is relatively easy, the former can be hard, as you need to convince the distributor that your application is worth devoting engineering resources to maintain and support your application as part of their product. It&#039;s also a space issue &amp;ndash; distributions need to make sure that the core packages still fit on the installation media (e.g. CD-ROMs or a DVD). Therefore they take a very close look at each package and if it&#039;s really needed to be part of the installation medium or if it&#039;s fine to provide it for download from a package repository instead.&lt;/p&gt;
&lt;p&gt;Distributors prefer to keep their core product small and restricted to the &amp;quot;basic OS building blocks&amp;quot;. While MySQL might still be considered to be a part of this, this probably does not apply to the various plugins and extensions that are available for it. Therefore the best approach is to invest some engineering time and start doing  the packaging yourself, either by hiring an engineer capable of creating and maintaining the packages, or by finding someone in your community who has the required experiences and is willing to do it.&lt;/p&gt;
&lt;p&gt;While it&#039;s of course possible to set up and maintain your own build and package hosting infrastructure for that, I recommend to make use of the existing services  provided by the distributors.&lt;/p&gt;
&lt;p&gt;The top tier distributors all provide means of offloading the maintenance of &amp;quot;non-core&amp;quot; packages to their community, offering various options for packages to be made available. For example, Novell/openSUSE provide the free &amp;quot;&lt;a href=&quot;http://buildservice.org&quot;&gt;Build Service&lt;/a&gt;&amp;quot;, which is capable of building packages for other distributions as well (e.g. Fedora, Mandriva, Debian/Ubuntu, etc.). In addition to automating the builds, the Build Service also takes care of the distribution via their download mirror network and ensures that your application can be found via their &lt;a href=&quot;http://software.opensuse.org/search&quot;&gt;package search&lt;/a&gt; interface.&lt;/p&gt;
&lt;p&gt;Red Hat/Fedora provide something similar, named &amp;quot;&lt;a href=&quot;http://koji.fedoraproject.org/koji/&quot;&gt;Koji&lt;/a&gt;&amp;quot; &amp;ndash;  but it&#039;s &amp;quot;Fedora only&amp;quot;. Here&#039;s a &lt;a href=&quot;http://fedoraproject.org/wiki/PackageMaintainers/Join&quot;&gt;HOWTO&lt;/a&gt; that outlines the process of becoming a Fedora package maintainer.&lt;/p&gt;
&lt;p&gt;Ubuntu/Canonical have &amp;quot;&lt;a href=&quot;https://launchpad.net/+tour/ppa&quot;&gt;Personal Package Archives&lt;/a&gt; (PPAs) &amp;ndash; if your project is hosted on &lt;a href=&quot;http://launchpad.net/&quot;&gt;Launchpad&lt;/a&gt; already, that might be something to look into for providing Debian/Ubuntu packages. Alternatively you could join the Debian project and start building and maintaining your package there. They maintain a list of &amp;quot;&lt;a href=&quot;http://www.debian.org/devel/wnpp/&quot;&gt;Work-Needing and Prospective Packages&lt;/a&gt;&amp;quot;, a description of the process on how to become a new maintainer is outlined &lt;a href=&quot;http://www.debian.org/devel/join/newmaint&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you&#039;d like to target Solaris/OpenSolaris as well, there is the &lt;a href=&quot;http://jucr.opensolaris.org/home/&quot;&gt;OpenSolaris Source Juicer&lt;/a&gt;&amp;#160;&amp;ndash; a web service which allows OpenSolaris  community developers to build packages (using RPM spec files) and publish them for review, so they will be included in an official package repository. The &lt;a href=&quot;http://hub.opensolaris.org/bin/view/Community+Group+sw-porters/WebHome&quot;&gt;Software Porters Community Group&lt;/a&gt; coordinates, advocates, encourages and helps with the porting of  Software from multiple Platforms to the OpenSolaris Platform.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sat, 06 Mar 2010 12:59:20 +0100</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/292-guid.html</guid>
    <category>collaborating</category>
<category>community</category>
<category>compiling</category>
<category>contributing</category>
<category>development</category>
<category>distribution</category>
<category>linux</category>
<category>mysql</category>
<category>opensolaris</category>
<category>OSS</category>
<category>packaging</category>
<category>porting</category>
<category>RPM</category>
<category>suse</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>Building MySQL Server with CMake on Linux/Unix</title>
    <link>http://www.lenzg.net/archives/291-Building-MySQL-Server-with-CMake-on-LinuxUnix.html</link>
            <category>Linux</category>
            <category>MySQL</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/291-Building-MySQL-Server-with-CMake-on-LinuxUnix.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=291</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=291</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;&lt;a href=&quot;http://cmake.org/&quot;&gt;CMake&lt;/a&gt; is a cross-platform, open-source build system, maintained by &lt;a href=&quot;http://www.kitware.com/&quot;&gt;Kitware, Inc.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;From the CMake.org home page:&lt;/p&gt;
&lt;blockquote&gt; CMake is a family of tools designed to build, test and package software. CMake is used to control the software compilation process using simple platform and compiler independent configuration files. CMake generates native makefiles and workspaces that can be used in the compiler environment of your choice.&lt;/blockquote&gt;
&lt;p&gt;It has been used for &lt;a href=&quot;http://dev.mysql.com/doc/refman/5.1/en/windows-source-build.html&quot;&gt;building the MySQL Server on Windows&lt;/a&gt; since MySQL 5.0 &amp;ndash; the initial CMake build support &lt;a href=&quot;http://bazaar.launchpad.net/~mysql/mysql-server/mysql-5.0/revision/2244.7.15&quot;&gt;was added&lt;/a&gt; in August 2006.&lt;/p&gt;
&lt;p&gt;For &lt;a href=&quot;http://dev.mysql.com/doc/refman/5.1/en/installing-source.html&quot;&gt;building MySQL on all other platforms&lt;/a&gt;, the &lt;a href=&quot;http://en.wikipedia.org/wiki/GNU_build_system&quot;&gt;GNU autotools&lt;/a&gt; (autoconf, automake and libtool) are currently being used.&lt;/p&gt;
&lt;p&gt;CMake is used in some other MySQL projects as well, e.g.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a href=&quot;http://dev.mysql.com/doc/refman/5.1/en/connector-c-building.html&quot;&gt;MySQL Connector/C&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://dev.mysql.com/doc/refman/5.1/en/connector-cpp-installation-source.html&quot;&gt;MySQL Connector/C++&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://bazaar.launchpad.net/~mysql-proxy-developers/mysql-proxy/trunk/annotate/head%3A/INSTALL#L158&quot;&gt;MySQL Proxy&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;On February 22nd, &lt;a href=&quot;https://launchpad.net/~vvaintroub&quot;&gt;Vladislav Vaintroub&lt;/a&gt; pushed the changes required to implement &lt;a href=&quot;http://forge.mysql.com/worklog/task.php?id=5161&quot;&gt;WorkLog#5161&lt;/a&gt; &amp;quot;CMake-based unified build system&amp;quot; into the &amp;quot;&lt;a href=&quot;https://code.launchpad.net/~mysql/mysql-server/mysql-next-mr&quot;&gt;mysql-next-mr&lt;/a&gt;&amp;quot; branch (aka the &amp;quot;Celosia&amp;quot; mile stone).&lt;/p&gt;
&lt;p&gt;From this version on, CMake can also be used to build MySQL on Linux and other Unix platforms. For the time being, the autoconf/automake files are still available as well, but will be phased out once the CMake build enviroment has reached the desired level of maturity. The change was &lt;a href=&quot;http://lists.mysql.com/internals/37755&quot;&gt;announced&lt;/a&gt; on February 28th on our &amp;quot;internals&amp;quot; developer discussion list.&lt;/p&gt;
&lt;p&gt;The purpose of WL#5161 is to simplify the MySQL build system. It is much easier and less error-prone to maintain a unified build system for all platforms than two separate ones.&lt;/p&gt;
&lt;p&gt;CMake has been chosen because of several reasons; the worklog description lists a few pro-CMake arguments (slightly rephrased):&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;CMake works on Windows. The GNU buildsystem does not really work and likely never will work natively on Windows (Using Cygwin is not really an option).&lt;/li&gt;
    &lt;li&gt;Traditionally, new MySQL features that required changes in the build environment (e.g. the plugin system, unit tests, most recently googletest integration) were always implemented on Unix first, leaving Windows behind (sometimes for years). This would not happen with a unified build system.&lt;/li&gt;
    &lt;li&gt;MySQL already uses CMake since 2006 on Windows, so we do not need to start from scratch, only port what we have to Unix.&lt;/li&gt;
    &lt;li&gt;CMake runs on every OS and compiler we support.&lt;/li&gt;
    &lt;li&gt;It is simple to obtain and install on a wide range of platforms. It is available in all major Linux package repositories (e.g. Ubuntu, Fedora, OpenSUSE). It is also in the OpenSolaris repository, known as SUNWCmake. It&#039;s in FreeBSD ports and available for Mac OS X. It is also very simple to compile it from source, the single prerequisite is a working C++ compiler and make utility.&lt;/li&gt;
    &lt;li&gt;CMake has support for features we need and might need, e.g. system checks or cross-compiling.&lt;/li&gt;
    &lt;li&gt;CMake provides integrated support for packaging. It can handle both simple packages (tar.gz or zip archives) and more complex things like DEB and RPM without much extra coding.&lt;/li&gt;
    &lt;li&gt;Good integration with the popular IDEs (Visual Studio, Xcode, Eclipse CDT, KDevelop). Developing in an IDE makes the development process more enjoyable, and potentially it lowers the barrier for external contributors. Of course, CMake can generate traditional Unix Makefiles, which appear to be are superior to the ones generated by GNU autotools (for example, they have progress indicators, colored output and working dependencies).&lt;/li&gt;
    &lt;li&gt;The scripting language used by CMake is simpler than m4 used by autotools.&lt;/li&gt;
    &lt;li&gt;CMake is a single small tool, not a bunch of different tools as in GNU system (autoconf, autoheader, automake, libtool)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I&#039;d like to mention a few additional reasons:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.cmake.org/Wiki/CMake_FAQ#Out-of-source_build_trees&quot;&gt;Out-of-source builds&lt;/a&gt; &amp;ndash; CMake can separate the build directory from the source directory. This is convenient, as your working source tree is not cluttered with object files and other fragments of the build process.&lt;/li&gt;
    &lt;li&gt;Build configuration using a GUI. The cmake-gui package (based on Nokia/TrollTech&#039;s Qt library) provides a convenient way of enabling and configuring the various available build options. This is much better than having to memorize all the required defines and configuration flags.&lt;/li&gt;
    &lt;li&gt;Integrated support for creating a wide range of &lt;a href=&quot;http://www.itk.org/Wiki/CMake:Packaging_With_CPack&quot;&gt;package formats&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The &lt;a href=&quot;http://www.cmake.org/Wiki/Really_Cool_CMake_Features&quot;&gt;CMake Wiki&lt;/a&gt; lists a number of other &amp;quot;nice to have&amp;quot; features.&lt;/p&gt;
&lt;p&gt;From a developer perspective, I hope that it will make it much easier to finally implement two things that many developers working with MySQL have been waiting for (now that the build code has been cleaned up):&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Compiling the embedded MySQL Server (libmysqld) as a &lt;a href=&quot;http://bugs.mysql.com/39288&quot;&gt;shared library&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;Better support for &lt;a href=&quot;http://bugs.mysql.com/bug.php?id=2706&quot;&gt;cross-compilation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Building MySQL with CMake is quite simple and straighforward &amp;ndash; the process is outlined on the &lt;a href=&quot;http://forge.mysql.com/wiki/CMake&quot;&gt;MySQL Forge Wiki&lt;/a&gt;. The document is still work in progress and we&#039;d like to encourage you to take a look at it, try to follow the steps and update/improve the Wiki page, if needed! Your feedback on the build process is appreciated. Feel free to join our &lt;a href=&quot;http://lists.mysql.com/internals/&quot;&gt;internals mailing list&lt;/a&gt; to discuss your impressions and observations or submit a bug report via the &lt;a href=&quot;http://bugs.mysql.com/&quot;&gt;Bug Database&lt;/a&gt;. It&#039;s likely that the build still has a few rough edges that we&#039;d like to fix quickly (e.g. &lt;a href=&quot;http://bugs.mysql.com/51502&quot;&gt;BUG#51502&lt;/a&gt;&amp;#160;&amp;ndash; a fix for this one is already commited to the &lt;a href=&quot;https://code.launchpad.net/~mysql/mysql-server/mysql-next-mr-bugfixing&quot;&gt;mysql-next-mr-bugfixing&lt;/a&gt; source tree and will be merged into the mysql-next-mr trunk soon).&lt;/p&gt;
&lt;p&gt;If you&#039;re new to CMake, you might want to take a look at the &amp;quot;&lt;a href=&quot;http://playcontrol.net/ewing/screencasts/getting_started_with_cmake_.html&quot;&gt;Getting Started With CMake (An End-User&#039;s Perspective) For Cross-Platform Building&lt;/a&gt;&amp;quot; screencast or the &amp;quot;&lt;a href=&quot;http://www.cmake.org/cmake/help/runningcmake.html&quot;&gt;Running CMake&lt;/a&gt;&amp;quot; article.&lt;/p&gt;
&lt;p&gt;Happy hacking!&lt;/p&gt; 
    </content:encoded>

    <pubDate>Wed, 03 Mar 2010 12:49:26 +0100</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/291-guid.html</guid>
    <category>betatest</category>
<category>cmake</category>
<category>code</category>
<category>collaborating</category>
<category>compiling</category>
<category>configuration</category>
<category>development</category>
<category>forge</category>
<category>gui</category>
<category>installation</category>
<category>internals</category>
<category>linux</category>
<category>mysql</category>
<category>oss</category>
<category>packaging</category>
<category>programming</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>Some friendly advice for bootstrapping your OSS project</title>
    <link>http://www.lenzg.net/archives/284-Some-friendly-advice-for-bootstrapping-your-OSS-project.html</link>
            <category>Linux</category>
            <category>MySQL</category>
            <category>OSS</category>
            <category>Solaris</category>
    
    <comments>http://www.lenzg.net/archives/284-Some-friendly-advice-for-bootstrapping-your-OSS-project.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=284</wfw:comment>

    <slash:comments>5</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=284</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;So you&#039;re a small startup company, ready to go live with your product, which you intend to distribute under an &lt;a href=&quot;http://opensource.org/&quot;&gt;Open Source&lt;/a&gt; License. Congratulations, you made a wise decision! Your developers have been hacking away frantically, getting the code in good shape for the initial launch. Now it&#039;s time to look into what else needs to be built and setup, so you&#039;re ready to welcome the first members of your new community and to ensure they are coming back!&lt;/p&gt;
&lt;p&gt;Keep the following saying in mind, which especially holds true in the Open Source world: &amp;quot;&lt;em&gt;You never get a second chance to make a first impression!&lt;/em&gt;&amp;quot;. While the most important thing is of course to &lt;strong&gt;have a compelling and useful product&lt;/strong&gt;, this blog post is an attempt to highlight some other aspects about community building and providing the adequate infrastructure. This insight is based on my own experiences and my  observations from talking with many people involved in OSS startups and projects.&lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://www.lenzg.net/archives/284-Some-friendly-advice-for-bootstrapping-your-OSS-project.html#extended&quot;&gt;Continue reading &quot;Some friendly advice for bootstrapping your OSS project&quot;&lt;/a&gt;
    </content:encoded>

    <pubDate>Thu, 29 Oct 2009 21:12:00 +0100</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/284-guid.html</guid>
    <category>article</category>
<category>cms</category>
<category>code</category>
<category>collaborating</category>
<category>community</category>
<category>compiling</category>
<category>contributing</category>
<category>development</category>
<category>distribution</category>
<category>drupal</category>
<category>groupware</category>
<category>hosting</category>
<category>linux</category>
<category>mailinglist</category>
<category>oss</category>
<category>osx</category>
<category>packaging</category>
<category>rpm</category>
<category>social</category>
<category>suse</category>
<category>virtualbox</category>
<category>web</category>
<category>wiki</category>
<category>windows</category>
<category>writings</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>FlightGear 1.9.1 now added to the openSUSE Build Service</title>
    <link>http://www.lenzg.net/archives/268-FlightGear-1.9.1-now-added-to-the-openSUSE-Build-Service.html</link>
            <category>Linux</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/268-FlightGear-1.9.1-now-added-to-the-openSUSE-Build-Service.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=268</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=268</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;I admit it &amp;mdash; I&#039;m a fan of simulation software, particularly flight simulators. Probably the best Open Source Flight Simulator out there is &lt;a href=&quot;http://flightgear.org&quot;&quot;&gt;FlightGear&lt;/a&gt; &amp;mdash; it provides an impressive level of reality and you can download and install many additional plane models and terrains. There are &lt;a href=&quot;http://software.opensuse.org/search?baseproject=ALL&amp;p=1&amp;q=FlightGear&quot;&gt;packages of FlightGear 1.0.0&lt;/a&gt; in the &lt;a href=&quot;http://download.opensuse.org/repositories/games/&quot;&gt;games repository&lt;/a&gt; of the &lt;a href=&quot;http://build.opensuse.org/&quot;&gt;openSUSE Build Service&lt;/a&gt;, which works quite well and I have been enjoying it a lot. However, the FlightGear project released version 1.9.x quite a while ago (1.9.1 was published in January 2009) and I was itching on giving the new version a try (just take a look at the &lt;a href=&quot;http://flightgear.org/Gallery-v1.9/&quot;&gt;screenshots&lt;/a&gt; and you know what I mean). However, &lt;a href=&quot;http://wiki.flightgear.org/index.php/Building_FlightGear_-_Linux&quot;&gt;building FlighGear on Linux&lt;/a&gt; is quite a complex task with &lt;a href=&quot;http://www.christianmarkgraf.de/flightgear/flightgear191.php&quot;&gt;many dependencies&lt;/a&gt;, and so held off from doing it myself, waiting for someone else to perform the update...&lt;/p&gt;

&lt;p&gt;Well, this weekend I finally bit the bullet and did it myself - FlightGear 1.9.1 has now been added to my &lt;a href=&quot;http://download.opensuse.org/repositories/home:/LenzGr/&quot;&gt;home:LenzGr&lt;/a&gt; build repository. I based my packages on the ones included in the games repository, but I plan on cleaning them up a bit and splitting them into separate packages (currently the FlightGear source RPM contains &lt;a href=&quot;http://www.simgear.org/&quot;&gt;SimGear&lt;/a&gt; and &lt;a href=&quot;http://fgrun.sourceforge.net/&quot;&gt;fgrun&lt;/a&gt; as well). I also &quot;borrowed&quot; the &lt;a href=&quot;http://www.openscenegraph.org/&quot;&gt;OpenSceneGraph&lt;/a&gt; sources and spec file from the &lt;a href=&quot;http://packman.links2linux.de/&quot;&gt;PackMan repository&lt;/a&gt;, in order to have a functional build. Unfortunately FlightGear currently only builds on a very limited list of distributions so far (namely OpenSUSE 11.0, just what I needed) &amp;mdash; I haven&#039;t had time to adapt the spec files for FlightGear and OpenSceneGraph to match the appropriate build dependencies for the other distributions yet and &quot;02-check-gcc-output&quot; gives me some grief on platforms where it actually builds but generates compiler warnings (but patches are welcome!)...&lt;/p&gt; 
    </content:encoded>

    <pubDate>Tue, 30 Jun 2009 17:25:00 +0200</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/268-guid.html</guid>
    <category>compiling</category>
<category>contributing</category>
<category>flightgear</category>
<category>packaging</category>
<category>rpm</category>
<category>simulation</category>
<category>suse</category>
<category>update</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>Embedded InnoDB 1.0.3.5325 RPM packages</title>
    <link>http://www.lenzg.net/archives/266-Embedded-InnoDB-1.0.3.5325-RPM-packages.html</link>
            <category>Linux</category>
            <category>MySQL</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/266-Embedded-InnoDB-1.0.3.5325-RPM-packages.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=266</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=266</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;Shortly after I created the &lt;a href=&quot;http://www.lenzg.net/archives/264-Embedded-InnoDB-now-available-on-the-openSUSE-Build-Service.html&quot;&gt;initial packages of embedded InnoDB on the OpenSUSE Build Service&lt;/a&gt;, Oracle/Innobase &lt;a href=&quot;http://www.innodb.com/wp/2009/06/24/embedded-innodb-1-0-3-5325-released/&quot;&gt;released an updated version (1.0.3.5325)&lt;/a&gt;. In addition to many improvements and bug fixes, they slightly changed the versioning scheme to better indicate what version of the InnodDB plugin their code is based on (see Vasil&#039;s &lt;a href=&quot;http://forums.innodb.com/read.php?8,668,668#msg-668&quot;&gt;posting on the InnoDB Forums&lt;/a&gt; for more information).&lt;/p&gt;

&lt;p&gt;I&#039;ve now updated my &lt;a href=&quot;http://software.opensuse.org/search?baseproject=ALL&amp;q=libinnodb&quot;&gt;InnoDB packages on the Build Service&lt;/a&gt; to this version as well - please note that the naming scheme of the shared library package has been changed from &quot;&lt;tt&gt;embedded_innodb1&lt;/tt&gt;&quot; to &quot;&lt;tt&gt;libinnodb2&lt;/tt&gt;&quot; &amp;mdash; RPM will take care of replacing the old package during update, even though the name has changed.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Mon, 29 Jun 2009 12:34:49 +0200</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/266-guid.html</guid>
    <category>embedded</category>
<category>innodb</category>
<category>linux</category>
<category>packaging</category>
<category>programming</category>
<category>rpm</category>
<category>suse</category>
<category>update</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>Embedded InnoDB now available on the openSUSE Build Service</title>
    <link>http://www.lenzg.net/archives/264-Embedded-InnoDB-now-available-on-the-openSUSE-Build-Service.html</link>
            <category>Linux</category>
            <category>MySQL</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/264-Embedded-InnoDB-now-available-on-the-openSUSE-Build-Service.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=264</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=264</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;Oracle/InnoBase &lt;a href=&quot;http://www.innodb.com/wp/2009/04/19/innobase-introduces-embedded-innodb/&quot;&gt;announced&lt;/a&gt; the availability of the &lt;a href=&quot;http://www.innodb.com/wp/products/embedded-innodb/&quot;&gt;embedded version of InnoDB&lt;/a&gt; at this year&#039;s &lt;a href=&quot;http://mysqlconf.com/&quot;&gt;MySQL Conference &amp;amp; Expo&lt;/a&gt;, but I have not seen a lot of comments or reviews about it so far. Which surprises me, because I think this is a very interesting piece of technology!&lt;/p&gt;

&lt;p&gt;In my opinion it might actually hit the sweet spot for application developers seeking an alternative embedded database solution. &lt;a href=&quot;http://sqlite.org/&quot;&gt;SQLite&lt;/a&gt; is nice and popular, but it seems to have &lt;a href=&quot;http://www.sqlite.org/faq.html#q5&quot;&gt;concurrency issues&lt;/a&gt; when used in multi-threaded applications. An &lt;a href=&quot;http://dev.mysql.com/doc/refman/5.1/en/libmysqld.html&quot;&gt;embedded MySQL server&lt;/a&gt; would be an alternative - this is what the &lt;a href=&quot;http://amarok.kde.org/&quot;&gt;Amarok&lt;/a&gt; developers &lt;a href=&quot;http://amarok.kde.org/blog/archives/812-MySQL-in-Amarok-2-The-Reality.html&quot;&gt;decided&lt;/a&gt; to go with, for example. But this approach has its &lt;a href=&quot;http://bugs.mysql.com/bug.php?id=39289&quot;&gt;issues&lt;/a&gt;, too, especially the &lt;a href=&quot;http://bugs.mysql.com/bug.php?id=39288&quot;&gt;lack of a shared library&lt;/a&gt; version of libmysqld poses some challenges when distributing binaries.&lt;/p&gt;

&lt;p&gt;This is where I think the embedded version of InnoDB might have an edge. It&#039;s pretty lightweight in comparison to a full-blown MySQL server, provides excellent crash-recovery (which is essential for desktop applications), transactions (useful in environments with high concurrency) and foreign key constraints. I&#039;m not sure how important these are for embedded use cases, it probably depends on the complexity of the data to be stored. On the downside, Embedded InnoDB does not &quot;speak&quot; SQL. In order to store and retrieve values, you need to use the &lt;a href=&quot;http://www.innodb.com/doc/embedded_innodb-1.0/#c-api&quot;&gt;InnoDB API&lt;/a&gt;. See the chapter &lt;a href=&quot;http://www.innodb.com/doc/embedded_innodb-1.0/#concepts&quot;&gt;Concepts and Architecture&lt;/a&gt; for more details and an overview.&lt;/p&gt;

&lt;p&gt;Another possible reason for the low popularity might be that it&#039;s currently not part of any Linux distribution (yet) and that Oracle only provides binary tarball packages for Linux and a Windows binary for &lt;a href=&quot;http://www.innodb.com/products/embedded-innodb/download/v100/&quot;&gt;download&lt;/a&gt; from the web site.&lt;/p&gt;

&lt;p&gt;Therefore I&#039;ve now created a spec file to build RPMs of Embedded InnoDB and added it to my repository on the &lt;a href=&quot;http://build.opensuse.org/&quot;&gt;openSUSE Build Service&lt;/a&gt;, which now provides &lt;a href=&quot;http://software.opensuse.org/search?baseproject=ALL&amp;p=1&amp;q=innodb&quot;&gt;Embedded InnoDB packages&lt;/a&gt; for a wide range of RPM-based Linux distributions. I hope that the spec file will be included in the next source distribution. I&#039;ve &lt;a href=&quot;http://lists.mysql.com/innodb/2&quot;&gt;posted&lt;/a&gt; it (and a patch to fix a few problems with the examples) to the newly created &lt;a href=&quot;http://lists.mysql.com/innodb&quot;&gt;InnoDB mailing list&lt;/a&gt;, but to be sure I &lt;a href=&quot;http://forums.innodb.com/read.php?8,662,662#msg-662&quot;&gt;added a note&lt;/a&gt; to the &lt;a href=&quot;http://forums.innodb.com/list.php?8&quot;&gt;Embedded InnoDB Forum&lt;/a&gt; as well.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sun, 21 Jun 2009 12:50:00 +0200</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/264-guid.html</guid>
    <category>compiling</category>
<category>databases</category>
<category>embedded</category>
<category>engine</category>
<category>innodb</category>
<category>mysql</category>
<category>packaging</category>
<category>rpm</category>
<category>suse</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>xtrabackup 0.7 RPMs available on the openSUSE Build Service</title>
    <link>http://www.lenzg.net/archives/261-xtrabackup-0.7-RPMs-available-on-the-openSUSE-Build-Service.html</link>
            <category>Linux</category>
            <category>MySQL</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/261-xtrabackup-0.7-RPMs-available-on-the-openSUSE-Build-Service.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=261</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=261</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;&lt;a href=&quot;http://www.percona.com/docs/wiki/percona-xtrabackup:start&quot;&gt;XtraBackup&lt;/a&gt; is an Open Source online (non-blockable) backup solution for the InnoDB and XtraDB storage engines. It works with both MySQL 5.0 and 5.1 (and possibly 5.4 as well) and is distributed under the GPLv2.&lt;/p&gt;

&lt;p&gt;Some weeks ago Vadim &lt;a href=&quot;http://www.mysqlperformanceblog.com/2009/05/21/xtrabackup-07-rc/&quot;&gt;announced&lt;/a&gt; the availability of &lt;a href=&quot;http://www.percona.com/mysql/xtrabackup/0.7/&quot;&gt;xtrabackup-0.7&lt;/a&gt;, stating that they consider it stable enough now to label this version a &quot;Release Candidate&quot;. I&#039;ve been maintaining RPM packages of xtrabackup on the fine &lt;a href=&quot;https://build.opensuse.org/&quot;&gt;openSUSE Build Service&lt;/a&gt; for quite some time now, RPMs of 0.7 for a number of distributions are now &lt;a href=&quot;http://software.opensuse.org/search?baseproject=ALL&amp;p=1&amp;q=xtrabackup&quot;&gt;available for download&lt;/a&gt;. Please report any bug reports via the &lt;a href=&quot;https://launchpad.net/percona-xtrabackup/+filebug&quot;&gt;bug tracker&lt;/a&gt; on Launchpad.&lt;/p&gt;
 
    </content:encoded>

    <pubDate>Wed, 10 Jun 2009 15:38:52 +0200</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/261-guid.html</guid>
    <category>backup</category>
<category>collaborating</category>
<category>contributing</category>
<category>databases</category>
<category>distribution</category>
<category>innodb</category>
<category>linux</category>
<category>mysql</category>
<category>oss</category>
<category>packaging</category>
<category>rpm</category>
<category>suse</category>
<category>update</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>Drizzle Developer Day in Santa Clara</title>
    <link>http://www.lenzg.net/archives/253-Drizzle-Developer-Day-in-Santa-Clara.html</link>
            <category>Linux</category>
            <category>MySQL</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/253-Drizzle-Developer-Day-in-Santa-Clara.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=253</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=253</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;Today I attended the &lt;a href=&quot;http://drizzle.org/wiki/Drizzle_Developer_Day_2009&quot;&gt;Drizzle Developer Day&lt;/a&gt; which took place in the auditorium of the Sun Campus in Santa Clara.&lt;/p&gt;
&lt;p&gt;Many of the the &lt;a href=&quot;http://drizzle.org/wiki/Developer_list&quot;&gt;Drizzle core hackers&lt;/a&gt; as well as several other people interested in the development attended this event, hacking away and discussing various issues. &lt;a href=&quot;http://jeremy.zawodny.com/blog/&quot;&gt;Jeremy Zawodny&lt;/a&gt; gave a presentation about &lt;a href=&quot;http://docs.google.com/Present?docid=d4bggd2_27ccs7kqfn&quot;&gt;Craigslist&#039;s needs for Drizzle&lt;/a&gt;, &lt;a href=&quot;http://www.jpipes.com/&quot;&gt;Jay Pipes&lt;/a&gt; gave an overview over &lt;a href=&quot;http://code.google.com/apis/protocolbuffers/&quot;&gt;Google&#039;s protocol buffers library&lt;/a&gt;. I took a number of pictures, which you can find in my &lt;a href=&quot;http://www.flickr.com/photos/lenzgr/sets/72157617265275340/&quot;&gt;Flickr photo set&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I joined a group of people that haven&#039;t built Drizzle from source by themselves so far, helping them with installing Bazaar and the required libraries. As Drizzle requires several third-party libraries that sometimes are not included in the common linux distributions (or only in outdated versions), we spent some time in getting these build requirements fulfilled.&lt;/p&gt;
&lt;p&gt;One of the requirements for building Drizzle is &lt;a href=&quot;https://launchpad.net/libdrizzle&quot;&gt;libdrizzle&lt;/a&gt; - the client &amp;amp; protocol library. So one first has to download and compile this one, before the actual build of the server can proceed. I noticed that the libdrizzle source distribution contained an RPM spec file already, so I&#039;ve been working on adding libdrizzle to the &lt;a href=&quot;http://build.opensuse.org/&quot;&gt;openSUSE build service&lt;/a&gt; today. The packages for various distributions (Fedora, openSUSE, RHEL, Mandriva) will be available for &lt;a href=&quot;http://software.opensuse.org/search?baseproject=ALL&amp;amp;p=1&amp;amp;q=libdrizzle&quot;&gt;download&lt;/a&gt; shortly. Along the way I also fixed several small issues in the spec file and created a libdrizzle-devel subpackage. The patches are now &lt;a href=&quot;https://code.launchpad.net/~lenzgr/libdrizzle/libdrizzle-buildfixes/+merge/5888&quot;&gt;proposed for merging&lt;/a&gt; on Launchpad, I hope &lt;a href=&quot;http://www.oddments.org/&quot;&gt;Eric&lt;/a&gt; will take a look at these shortly.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sat, 25 Apr 2009 00:40:43 +0200</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/253-guid.html</guid>
    <category>bzr</category>
<category>collaborating</category>
<category>community</category>
<category>conference</category>
<category>contributing</category>
<category>databases</category>
<category>drizzle</category>
<category>event</category>
<category>mysql</category>
<category>oss</category>
<category>packaging</category>
<category>pictures</category>
<category>rpm</category>
<category>sun</category>
<category>suse</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>Installing VirtualBox on OpenSolaris 2008.11 with Package Manager</title>
    <link>http://www.lenzg.net/archives/235-Installing-VirtualBox-on-OpenSolaris-2008.11-with-Package-Manager.html</link>
            <category>OSS</category>
            <category>Solaris</category>
    
    <comments>http://www.lenzg.net/archives/235-Installing-VirtualBox-on-OpenSolaris-2008.11-with-Package-Manager.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=235</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=235</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;While &lt;a href=&quot;http://www.virtualbox.org/&quot;&gt;VirtualBox&lt;/a&gt; is available as a downloadable OpenSolaris package from the &lt;a href=&quot;http://www.virtualbox.org/wiki/Downloads&quot;&gt;download page&lt;/a&gt; at virtualbox.org, I find it much more convenient to use the Package Manager GUI or &lt;tt&gt;pkg&lt;/tt&gt; on the command line to install and update packages.&lt;/p&gt;
&lt;p&gt;Sun provides a VirtualBox IPS package (and some others like Flash Player) from a separate &amp;quot;extras&amp;quot; repository. However, you need to obtain a key and SSL certificate before you can access this repository, which are available for free from &lt;a href=&quot;https://pkg.sun.com/register/&quot;&gt;https://pkg.sun.com/register/&lt;/a&gt; after logging in with your &lt;a href=&quot;https://reg.sun.com/whyregister&quot;&gt;Sun Online Account&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Once you obtained and installed these files in &lt;tt&gt;/var/pkg/ssl&lt;/tt&gt; (detailed instructions are provided on the download page), you can add this repository as another &amp;quot;authority&amp;quot; and start looking at what packages are provided:&lt;/p&gt;
&lt;pre&gt;$ pfexec pkg set-authority \&lt;br /&gt;            -k /var/pkg/ssl/OpenSolaris_extras.key.pem \&lt;br /&gt;            -c /var/pkg/ssl/OpenSolaris_extras.certificate.pem \&lt;br /&gt;            -O &lt;a title=&quot;Linkification: https://pkg.sun.com/opensolaris/extra&quot; href=&quot;https://pkg.sun.com/opensolaris/extra&quot; class=&quot;linkification-ext&quot;&gt;https://pkg.sun.com/opensolaris/extra&lt;/a&gt; extra&lt;br /&gt;$ pkg list -a &#039;pkg://extra/*&#039;&lt;br /&gt;NAME (AUTHORITY)                              VERSION         STATE      UFIX&lt;br /&gt;SUNWadmj (extra)                              0.5.11-0.101    known      ----&lt;br /&gt;SUNWjsnmp (extra)                             0.5.11-0.101    known      ----&lt;br /&gt;SUNWwbapi (extra)                             0.5.11-0.101    known      ----&lt;br /&gt;SUNWwbcou (extra)                             0.5.11-0.101    known      ----&lt;br /&gt;SUNWwbdev (extra)                             0.5.11-0.101    known      ----&lt;br /&gt;virtualbox (extra)                            2.0.6-0.101     known      ----&lt;br /&gt;virtualbox/kernel (extra)                     2.0.6-0.101     known      ----&lt;br /&gt;web/firefox/plugin/flash (extra)              9.0.125-0.101   known      ----&lt;/pre&gt;
&lt;p&gt;So there is not that much to download by now - some additional Java packages and the Flash plugin for Firefox. There is no package for VirtualBox 2.1.0 yet, but I hope this will be updated soon...&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sat, 20 Dec 2008 02:34:54 +0100</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/235-guid.html</guid>
    <category>installation</category>
<category>opensolaris</category>
<category>packaging</category>
<category>sun</category>
<category>virtualbox</category>
<category>virtualization</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>Recent additions to my openSUSE Build Service repository</title>
    <link>http://www.lenzg.net/archives/209-Recent-additions-to-my-openSUSE-Build-Service-repository.html</link>
            <category>Linux</category>
            <category>MySQL</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/209-Recent-additions-to-my-openSUSE-Build-Service-repository.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=209</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=209</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;I recently added two new packages to &lt;a href=&quot;http://download.opensuse.org/repositories/home:/LenzGr/&quot;&gt;my repository&lt;/a&gt; on the &lt;a href=&quot;https://build.opensuse.org/&quot;&gt;openSUSE Build Service&lt;/a&gt;:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a href=&quot;http://www.maatkit.org/&quot;&gt;Maatkit&lt;/a&gt; is a collection of essential command-line utilities for MySQL. Each is completely stand-alone, without dependencies other than core Perl and the DBI drivers needed to connect to MySQL, and doesn&#039;t need to be &amp;quot;installed&amp;quot; - you can just execute the scripts. This makes the tools easy to use on systems where you can&#039;t install anything extra, such as customer sites or ISPs.&lt;/li&gt;
    &lt;li&gt;&lt;a href=&quot;http://code.google.com/p/protobuf/&quot;&gt;protobuf&lt;/a&gt; - Protocol Buffers - Google&#039;s data interchange format. Protocol Buffers are a way of encoding structured data in an efficient yet extensible format. Google uses Protocol Buffers for almost all of its internal RPC protocols and file formats.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The protobuf package is required, if you want to compile &lt;a href=&quot;https://launchpad.net/drizzle&quot;&gt;drizzle&lt;/a&gt;. Packages are available for openSUSE, Fedora and Mandriva Linux. Feedback is welcome!&lt;/p&gt; 
    </content:encoded>

    <pubDate>Wed, 13 Aug 2008 18:39:32 +0200</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/209-guid.html</guid>
    <category>compiling</category>
<category>contributing</category>
<category>development</category>
<category>distribution</category>
<category>linux</category>
<category>mysql</category>
<category>oss</category>
<category>packaging</category>
<category>perl</category>
<category>rpm</category>
<category>suse</category>
<category>update</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>Thoughts about OSS project hosting and the importance of controlling downloads</title>
    <link>http://www.lenzg.net/archives/204-Thoughts-about-OSS-project-hosting-and-the-importance-of-controlling-downloads.html</link>
            <category>Linux</category>
            <category>MySQL</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/204-Thoughts-about-OSS-project-hosting-and-the-importance-of-controlling-downloads.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=204</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=204</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;In a recent article, Matt Asay was musing about the &lt;a href=&quot;http://news.cnet.com/8301-13505_3-10002342-16.html&quot;&gt;aspects of hosting an Open Source project by yourself&lt;/a&gt; vs. using a public project hosting service like &lt;a href=&quot;http://sf.net/&quot;&gt;SourceForge&lt;/a&gt;, &lt;a href=&quot;http://github.com/&quot;&gt;GitHub&lt;/a&gt; or &lt;a href=&quot;https://launchpad.net/&quot;&gt;Launchpad&lt;/a&gt;. He concluded that it&#039;s important for commercial/sponsored open source projects in particular to do the hosting by themselves, so they can maintain full control and can gain more insight, which hopefully will turn into more revenue at some point.&lt;/p&gt;
&lt;p&gt;However, Matt seems to reduce &amp;quot;hosting&amp;quot; to &amp;quot;providing downloads&amp;quot; only:&lt;/p&gt;
&lt;blockquote&gt;Control and visibility. Given the importance of customer conversions, it becomes hugely valuable information to know that it takes, say, eight months on average for someone to buy the &amp;quot;Enterprise&amp;quot; version of your code after downloading the software. With Sourceforge et al., you have no way of connecting the dots between download and purchase. But if you host your downloads, you can suddenly link a download to a purchase using marketing automation software like Loopfuse.&lt;br /&gt;
[...]&lt;br /&gt;
It can tell you many things, but the key is to be able to glean insight from the earliest stage of your interaction with a potential customer, and that means you have to host your own downloads. Otherwise, you have no idea how or when a would-be customer downloads your code, which makes the &amp;quot;why&amp;quot; they download it less interesting, because it becomes less actionable.&lt;/blockquote&gt;
&lt;p&gt;I understand and agree to Matt&#039;s point in principle - you want to know more about the users that download and use your stuff. Here are some related thoughts about this topic.&lt;/p&gt;
&lt;h3&gt;Project hosting is not just about downloads&lt;/h3&gt;
&lt;p&gt;First: project hosting is much more than just providing a download/mirror infrastructure for your product releases. On the one hand, you have the regular users of your product who are primarily interested in having easy and fast access to the latest builds for their platform of choice and a platform to exchange their problems and experiences with other users.&lt;/p&gt;
&lt;p&gt;But project hosting facilities also address a completely different audience, with different needs. These are the developers, who want to have easy access to the latest source code, be able to submit bug reports and patches and want a direct communication path to the project&#039;s developers.&lt;/p&gt;
&lt;p&gt;I think it is important to ensure that you serve both the developer community as well as the user community as best as you can, which could of course mean you should provide the full range of project hosting all by yourself. But by doing so, you also create an island that makes it difficult to benefit from the &amp;quot;cross-pollination effects&amp;quot; between your project and others. This can partially be remedied if you don&#039;t only set up a project hosting infrastructure for your own purposes, but also open it for projects related to your project (and which not maintained by your own team), e.g. how &lt;a href=&quot;http://www.sugarforge.org/&quot;&gt;SugarForge&lt;/a&gt; is doing it. But the cost and effort involved in setting up and maintaining such an infrastructure should not be underestimated.&lt;/p&gt;
&lt;h3&gt;There is more to distribute than releases&lt;/h3&gt;
&lt;p&gt;At MySQL, we just &lt;a href=&quot;http://blogs.mysql.com/kaj/2008/06/19/version-control-thanks-bitkeeper-welcome-bazaar/&quot;&gt;recently moved away&lt;/a&gt; the MySQL Server source trees from the proprietary &lt;a href=&quot;http://bitkeeper.com/&quot;&gt;BitKeeper&lt;/a&gt; revision control system to &lt;a href=&quot;http://bazaar-vcs.org/&quot;&gt;Bazaar&lt;/a&gt;. Along with this migration, we also relocated the public repositories from mysql.bkbits.net to &lt;a href=&quot;https://launchpad.net/mysql-server&quot;&gt;Launchpad.net&lt;/a&gt;, to make it easier for external developers to access and work with the code. Currently, MySQL only makes use of the source repository hosting capabilities - downloads, bug reports and most other things like mailing lists or forums are all maintained by ourselves and hosted on mysql.com.&lt;/p&gt;
&lt;p&gt;Due to the distributed nature of Bazaar, we could of course also provide the source repos from our own servers (similar to how we do it for several of our &lt;a href=&quot;http://svn.mysql.com/fisheye/&quot;&gt;projects&lt;/a&gt; that are still maintained in &lt;a href=&quot;http://subversion.tigris.org/&quot;&gt;Subversion&lt;/a&gt;). But I think it makes a lot of sense to use Launchpad for that, as it allows a tighter integration and collaboration with contributors and &lt;a href=&quot;https://launchpad.net/mysql&quot;&gt;other related projects&lt;/a&gt;, and it gives us more visibility within the developer community.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://launchpad.net/drizzle&quot;&gt;Drizzle&lt;/a&gt; has taken this even further: the project utilizes all of Launchpad&#039;s facilities, including Blueprints, Bug reporting, mailing lists. It&#039;s going to be an interesting learning experience to see how this affects and improves community interaction/participation. I&#039;d love to see MySQL move more into this direction as well (especially the &lt;a href=&quot;http://bugs.mysql.com/&quot;&gt;bug database&lt;/a&gt; and &lt;a href=&quot;http://forge.mysql.com/worklog/&quot;&gt;worklog&lt;/a&gt; would be good candidates), but this probably will take some more time.&lt;/p&gt;
&lt;p&gt;I too recently moved the source tree of &lt;a href=&quot;http://www.lenzg.net/mylvmbackup/&quot;&gt;my own personal project&lt;/a&gt; from a Subversion repository on my private server to &lt;a href=&quot;https://launchpad.net/mylvmbackup&quot;&gt;Launchpad&lt;/a&gt;. Several reasons motivated me to do this, one of them being the opportunity to gain more practical experience with Bazaar and getting away from a central source code repository that makes me the bottleneck in making changes and applying patches. A distributed revision control system makes much more sense from a community contribution point of view, which Ian Clatworthy summarizes quite well in his paper &amp;quot;&lt;a href=&quot;http://people.ubuntu.com/%7Eianc/papers/dvcs-why-and-how.pdf&quot;&gt;Distributed Version Control Systems - Why and How&lt;/a&gt;&amp;quot;. In a way I deliberately give away some of the control over my project. And I must say I like how Launchpad integrates the various available subsystems like blueprints, code branches and bug reports - things are much better connected and they provide useful workflows that make the entire system much more productive to use than e.g. SourceForge.&lt;/p&gt;
&lt;p&gt;I still provide downloads of released versions from my own site (as does MySQL), but mostly because I actually did not know until recently that Launchpad offered this kind of service - I will look into that for the next release. I am more interested in making sure that my users have easy access to properly packaged versions of my project for their operating system of choice. Therefore I work closely with the packagers from various distributions and make sure they integrate new releases quickly. In addition to that, I make use of hosted services like the &lt;a href=&quot;http://build.opensuse.org/&quot;&gt;OpenSUSE Build Service&lt;/a&gt;, which automatically provides package repositories for a number of platforms. I aim for wide distribution on as many channels as possible, instead of trying to be the sole provider of my product. This brings me to another point:&lt;/p&gt;
&lt;h3&gt;Downloads stats are overrated&lt;/h3&gt;
&lt;p&gt;Direct downloads from your project&#039;s web site usually are only one part of the distribution system. I believe that being included in the various Linux or other Open Source Operating System Distributions (e.g. Free/OpenBSD, OpenSolaris, etc.) plays a much bigger role in gaining popularity and reaching more users. Most users usually go with what they get as part of the package, as the distributor usually has taken care of a tight integration and proper packaging of your project within his own product and also takes care of providing updates and fixes.&lt;/p&gt;
&lt;p&gt;Unfortunately it&#039;s almost impossible to gather any detailed intelligence about the number of users of a project this way, as distributions usually don&#039;t keep track of (or don&#039;t disclose) their download figures and which packages on their releases are the most popular. Debian&#039;s &lt;a href=&quot;http://popcon.debian.org/&quot;&gt;Popularity Contest&lt;/a&gt; is probably the only exception to this, but it&#039;s unclear how reliable that information is. Here I must agree with Matt again, if we just look at project hosting services acting as download providers only and include distributions in this equation:&lt;/p&gt;
&lt;blockquote&gt;As open source becomes more commercial, someone is going to need to step up to offer such visibility into these hosted services, or we&#039;re going to find the hosted services proving useful for ever decreasing amounts of time.&lt;/blockquote&gt;
&lt;p&gt;I guess we all would &lt;strong&gt;love&lt;/strong&gt; to know more about the users that don&#039;t download a package from our site, but go with the one provided by their distribution of choice instead or download it from somewhere else. But so far, this is a blank spot on our radar screen.&lt;/p&gt;
&lt;p&gt;&amp;#160;Another caveat that results from these multiple distribution channels: just looking at your own download stats may actually give you a skewed picture of your user base, particularly if you look at the platforms (which will probably be dominated by Windows or Mac OS X, as these OSes usually don&#039;t ship your code as part of their own product).&lt;/p&gt;
&lt;p&gt;So instead of trying to force downloads through a single instance only, I think it&#039;s much more important to ensure widespread distribution and a top-notch first hand experience. If users like your product, they are much more inclined to consider coming back and purchasing something from you than if you annoy them by making your product hard to download and install or require them to register before they can obtain a copy of your product. It&#039;s all about lowering the barriers as much as you can, even if you have to give up some control in exchange.&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt; 
    </content:encoded>

    <pubDate>Fri, 01 Aug 2008 21:10:44 +0200</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/204-guid.html</guid>
    <category>bzr</category>
<category>collaborating</category>
<category>community</category>
<category>contributing</category>
<category>development</category>
<category>distribution</category>
<category>forge</category>
<category>linux</category>
<category>mylvmbackup</category>
<category>mysql</category>
<category>oss</category>
<category>packaging</category>
<category>subversion</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>mylvmbackup 0.8 has been released</title>
    <link>http://www.lenzg.net/archives/180-mylvmbackup-0.8-has-been-released.html</link>
            <category>Linux</category>
            <category>mylvmbackup</category>
            <category>MySQL</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/180-mylvmbackup-0.8-has-been-released.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=180</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=180</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;I am happy to announce the release of &lt;a href=&quot;http://www.lenzg.net/mylvmbackup/&quot;&gt;mylvmbackup&lt;/a&gt; version 0.8. mylvmbackup is a tool for quickly creating backups of a MySQL server&#039;s data files. To perform a backup, mylvmbackup obtains a read lock on all tables and flushes all server caches to disk, makes an &lt;a href=&quot;http://tldp.org/HOWTO/LVM-HOWTO/&quot;&gt;LVM snapshot&lt;/a&gt; of the volume containing the MySQL data directory, and unlocks the tables again. The snapshot process takes only a small amount of time. When it is done, the server can continue normal operations, while the actual file backup proceeds.&lt;/p&gt;
&lt;p&gt;Below is the list of changes since version 0.6. You may wonder what happened to version 0.7 - it had a rather short life cycle as I was informed about a bug that I fixed quickly before I made a wider release announcement of 0.7.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Fixed a bug in the InnoDB recovery function: the second mysqld process clobbered the socket file of the primary MySQL instance (thanks to Alain Hoang for reporting this)&lt;/li&gt;
    &lt;li&gt;Updated the man page, noted some other limitations of the InnoDB recovery function&lt;/li&gt;
    &lt;li&gt;Bug fix: use the correct mysqld parameter to provide an alternative PID file (--pid-file instead of --pidfile) - thanks to Guillaume Boddaert and Jim Wilson for reporting this!&lt;/li&gt;
    &lt;li&gt;Added option &amp;quot;--skip_mycnf&amp;quot; to skip including a copy of the MySQL configuration file in the backup, added a safety check that the file actually exists prior to backing it up.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Updated package are available from the home page and via the &lt;a href=&quot;http://software.opensuse.org/&quot;&gt;openSUSE Build Service&lt;/a&gt; as usual. Updated packages for Debian/Ubuntu and Gentoo Linux should also be available shortly. Enjoy!&lt;/p&gt;
&lt;p&gt;Speaking of LVM snapshot backups: I will be &lt;a href=&quot;http://en.oreilly.com/mysql2008/public/schedule/detail/252&quot;&gt;giving a talk&lt;/a&gt; about this subject at our &lt;a href=&quot;http://mysqlconf.com/&quot;&gt;MySQL Conference 2008&lt;/a&gt; in Santa Clara, CA next week. If you are curious about how MySQL can be backed up using this technology, please consider to stop by!&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt; 
    </content:encoded>

    <pubDate>Fri, 11 Apr 2008 21:23:36 +0200</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/180-guid.html</guid>
    <category>backup</category>
<category>community</category>
<category>conference</category>
<category>development</category>
<category>event</category>
<category>linux</category>
<category>lvm</category>
<category>mylvmbackup</category>
<category>mysql</category>
<category>oss</category>
<category>packaging</category>
<category>perl</category>
<category>snapshots</category>
<category>update</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>Speaking about RPM packaging at the TU Harburg, Germany this Thursday</title>
    <link>http://www.lenzg.net/archives/162-Speaking-about-RPM-packaging-at-the-TU-Harburg,-Germany-this-Thursday.html</link>
            <category>Linux</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/162-Speaking-about-RPM-packaging-at-the-TU-Harburg,-Germany-this-Thursday.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=162</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=162</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;Back when I still worked at SuSE, I was in charge of maintaining a number or packages of the distribution (actually, you should still be able to find traces of my work in the RPM changelogs). Nowadays, I maintain a number of packages for openSUSE and other distributions on the &lt;a href=&quot;http://build.opensuse.org/&quot;&gt;openSUSE Build Service&lt;/a&gt;, which is just brilliant for this purpose.&lt;/p&gt;
&lt;p&gt;If you happen to live in northern Germany and are interested to learn more about the RPM package manager and how to build packages, consider coming to the &lt;a href=&quot;http://www.tuhh.de/&quot;&gt;TU Harburg&lt;/a&gt; this coming Thursday (March 13th). At 19:00, I will give a presentation about this topic in building, D, room D1023 (in cooperation with the Hamburg branch of the &lt;a href=&quot;http://www.guug.de/lokal/hamburg/&quot;&gt;German Unix User Group&lt;/a&gt;). More information (in German) can be obtained from &lt;a href=&quot;http://intranet.tu-harburg.de/termin_einzeln.php?id=5532&quot;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;See you there!&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt; 
    </content:encoded>

    <pubDate>Mon, 10 Mar 2008 14:32:19 +0100</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/162-guid.html</guid>
    <category>community</category>
<category>development</category>
<category>distribution</category>
<category>event</category>
<category>linux</category>
<category>meeting</category>
<category>oss</category>
<category>packaging</category>
<category>presentation</category>
<category>rpm</category>
<category>suse</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>MySQL 5.0.45 for OS/2 Warp and eComStation</title>
    <link>http://www.lenzg.net/archives/142-MySQL-5.0.45-for-OS2-Warp-and-eComStation.html</link>
            <category>MySQL</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/142-MySQL-5.0.45-for-OS2-Warp-and-eComStation.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=142</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=142</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;For those of you who enjoy running exotic operating systems: I just stumbled over a &lt;a href=&quot;http://www.smedley.info/os2ports/index.php?page=mysql-v5&quot;&gt;port of MySQL 5.0.45&lt;/a&gt; for OS/2 and &lt;a href=&quot;http://www.ecomstation.com/&quot;&gt;eComStation&lt;/a&gt;. Thanks a lot to &lt;a href=&quot;http://www.smedley.info/&quot;&gt;Paul Smedley&lt;/a&gt; for maintaining this version! He also maintains a large number of other Unix &lt;a href=&quot;http://www.smedley.info/os2ports/&quot;&gt;applications that he ported over to OS/2&lt;/a&gt; - very impressive.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Thu, 27 Sep 2007 12:07:45 +0200</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/142-guid.html</guid>
    <category>community</category>
<category>compiling</category>
<category>mysql</category>
<category>OS/2</category>
<category>OSS</category>
<category>packaging</category>
<category>porting</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>
<item>
    <title>New package: pine-gpg-filter</title>
    <link>http://www.lenzg.net/archives/138-New-package-pine-gpg-filter.html</link>
            <category>Linux</category>
            <category>OSS</category>
    
    <comments>http://www.lenzg.net/archives/138-New-package-pine-gpg-filter.html#comments</comments>
    <wfw:comment>http://www.lenzg.net/wfwcomment.php?cid=138</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.lenzg.net/rss.php?version=2.0&amp;type=comments&amp;cid=138</wfw:commentRss>
    

    <author>nospam@example.com (Lenz Grimmer)</author>
    <content:encoded>
    &lt;p&gt;After getting very &lt;a href=&quot;https://bugzilla.novell.com/show_bug.cgi?id=307905&quot;&gt;annoyed&lt;/a&gt; about the behaviour of &lt;a href=&quot;http://quantumlab.net/pine_privacy_guard/&quot;&gt;pinepg&lt;/a&gt; in combination with &lt;a href=&quot;http://www.gnupg.org/aegypten2/&quot;&gt;gpg2&lt;/a&gt; on my openSUSE 10.3 beta test system, I have now scratched my itch and switched to an alternative tool: &lt;a href=&quot;http://linux-ip.net/sw/pine-gpg-filter/&quot;&gt;pine-gpg-filter&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;The distinguishing characteristic of this package (when compared against similar pine and gpg wrappers) is its ability to handle multiple roles or identities (i.e. different keys for different email addresses). Unlike some of the other pine and gpg wrappers, this one performs no passphrase caching (consider using gpg-agent in gnupg2).&lt;/blockquote&gt;
&lt;p&gt;They provide a &amp;quot;noarch&amp;quot; RPM directly from that site, but I&#039;ve now also added it to my &lt;a href=&quot;http://download.opensuse.org/repositories/home:/LenzGr/&quot;&gt;home:LenzGr&lt;/a&gt; repository in the &lt;a href=&quot;http://build.opensuse.org/&quot;&gt;openSUSE build service&lt;/a&gt;. Enjoy!&amp;#160;&lt;/p&gt; 
    </content:encoded>

    <pubDate>Tue, 11 Sep 2007 18:13:55 +0200</pubDate>
    <guid isPermaLink="false">http://www.lenzg.net/archives/138-guid.html</guid>
    <category>development</category>
<category>email</category>
<category>encryption</category>
<category>linux</category>
<category>oss</category>
<category>packaging</category>
<category>rpm</category>
<category>suse</category>
<creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
</item>

</channel>
</rss>