<?xml version="1.0"?>
<rss version="2.0">

<channel>
	<title>Planet Mandriva</title>
	<link>http://planetmandriva.zarb.org/</link>
	<language>en</language>
	<description>Planet Mandriva - http://planetmandriva.zarb.org/</description>

<item>
	<title>Sebastian Trueg: A Little Bit Of Query Optimization</title>
	<guid isPermaLink="false">http://trueg.wordpress.com/?p=704</guid>
	<link>http://trueg.wordpress.com/2012/02/03/a-little-bit-of-query-optimization/</link>
	<description>&lt;p&gt;Every once in a while I add another piece of query optimization code to the &lt;a href=&quot;http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk/html/namespaceNepomuk_1_1Query.html&quot; title=&quot;Something Way Less Dry: TV Shows&quot;&gt;Nepomuk Query API&lt;/a&gt;. This time it was a direct result of my earlier &lt;a href=&quot;http://trueg.wordpress.com/2012/01/28/something-way-less-dry-tv-shows/&quot; title=&quot;Something Way Less Dry: TV Shows&quot;&gt;TV Show handling&lt;/a&gt;. I simply thought that a query like “&lt;em&gt;downton season=2 episode=2&lt;/em&gt;” takes too long to complete.&lt;/p&gt;
&lt;p&gt;Now in order to understand this you need to know that there is a rather simple &lt;a href=&quot;http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk/html/classNepomuk_1_1Query_1_1QueryParser.html&quot;&gt;QueryParser&lt;/a&gt; class which converts a query string like the above into a &lt;a href=&quot;http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk/html/classNepomuk_1_1Query_1_1Query.html&quot;&gt;Nepomuk::Query::Query&lt;/a&gt; which is simply a collection of &lt;a href=&quot;http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk/html/classNepomuk_1_1Query_1_1Term.html&quot;&gt;Nepomuk::Query::Term&lt;/a&gt; instances. A Query instance is then &lt;a href=&quot;http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk/html/classNepomuk_1_1Query_1_1Query.html#aecc4498c8575cd7e78c34838ba65399f&quot;&gt;converted into a SPARQL&lt;/a&gt; query which can be handled by Virtuoso. This SPARQL query already contains a set of optimizations, some specific to Virtuoso, some specific to Nepomuk. Of course there is always room for improvement.&lt;/p&gt;
&lt;p&gt;So let us get back to our query “&lt;em&gt;downton season=2 episode=2&lt;/em&gt;” and look at the resulting SPARQL query string (I simplified the query a bit for readability. The important parts are still there):&lt;/p&gt;
&lt;pre&gt;select distinct ?r where {
  ?r nmm:season &quot;2&quot;^^xsd:int .
  {
    ?r nmm:hasEpisode ?v2 .
    ?v2 ?v3 &quot;2&quot;^^xsd:int .
    ?v3 rdfs:subPropertyOf rdfs:label .
  } UNION {
    ?r nmm:episodeNumber &quot;2&quot;^^xsd:int .
  } .
  {
    ?r ?v4 ?v6 .
    FILTER(bif:contains(?v6, &quot;'downton'&quot;)) .
  } UNION {
    ?r ?v4 ?v7 .
    ?v7 ?v5 ?v6 .
    ?v5 rdfs:subPropertyOf rdfs:label .
    FILTER(bif:contains(?v6, &quot;'downton'&quot;)) .
  } .
}&lt;/pre&gt;
&lt;p&gt;Like the user query the SPARQL query has three main parts: the graph pattern checking the nmm:season, the graph pattern checking the episode and the graph pattern checking the full text search term “&lt;em&gt;downton&lt;/em&gt;“. The latter we can safely ignore in this case. It is always a UNION so full text searches also include relations to tags and the like.&lt;/p&gt;
&lt;p&gt;The interesting bit is the second UNION. The query parser matched the term “episode” to properties &lt;a href=&quot;http://oscaf.sourceforge.net/nmm.html#nmm:hasEpisode&quot;&gt;nmm:hasEpisode&lt;/a&gt; and &lt;a href=&quot;http://oscaf.sourceforge.net/nmm.html#nmm:episodeNumber&quot;&gt;nmm:episodeNumber&lt;/a&gt;. On first glance this is fine since both contain the term “&lt;em&gt;episode&lt;/em&gt;“. However, the property nmm:season which is used in the first non-optional graph-pattern has a domain of &lt;a href=&quot;http://oscaf.sourceforge.net/nmm.html#nmm:TVShow&quot;&gt;nmm:TVShow&lt;/a&gt;. &lt;a href=&quot;http://oscaf.sourceforge.net/nmm.html#nmm:hasEpisode&quot;&gt;nmm:hasEpisode&lt;/a&gt; on the other hand has a domain of &lt;a href=&quot;http://oscaf.sourceforge.net/nmm.html#nmm:TVSeries&quot;&gt;nmm:TVSeries&lt;/a&gt;. That means that the first pattern in the UNION can never match in combination with the first graph pattern since the domains are different.&lt;/p&gt;
&lt;p&gt;The obvious optimization is to remove the first part of the UNION which yields a much simpler and way faster query:&lt;/p&gt;
&lt;pre&gt;select distinct ?r where {
  ?r nmm:season &quot;2&quot;^^xsd:int .
  ?r nmm:episodeNumber &quot;2&quot;^^xsd:int .
  {
    ?r ?v4 ?v6 .
    FILTER(bif:contains(?v6, &quot;'downton'&quot;)) .
  } UNION {
    ?r ?v4 ?v7 .
    ?v7 ?v5 ?v6 .
    ?v5 rdfs:subPropertyOf rdfs:label .
    FILTER(bif:contains(?v6, &quot;'downton'&quot;)) .
  } .
}&lt;/pre&gt;
&lt;p&gt;Well, sadly this is not generically true since resources can be double/triple/whateveriple-typed, meaning that in theory an nmm:TVShow could also have type nmm:TVSeries. In this case it is obviously not likely but there are many cases in which it in fact does apply. Thus, this optimization cannot be applied to all queries. I will, however, include it in the parser where it is very likely that the user does not take double-typing into account.&lt;/p&gt;
&lt;p&gt;If you have good examples that show why this optimization should not be included in the query parser by default please tell me so I can re-consider.&lt;/p&gt;
&lt;p&gt;Now after having written this and proof-reading the SPARQL query I realize that this particular query could have been optimized in a much simpler way: the value “2″ is obviously an integer value, thus it can never match to a non-literal like required for the nmm:hasEpisode property…&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/trueg.wordpress.com/704/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/trueg.wordpress.com/704/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/trueg.wordpress.com/704/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/trueg.wordpress.com/704/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/trueg.wordpress.com/704/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/trueg.wordpress.com/704/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/trueg.wordpress.com/704/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/trueg.wordpress.com/704/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/trueg.wordpress.com/704/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/trueg.wordpress.com/704/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/trueg.wordpress.com/704/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/trueg.wordpress.com/704/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/trueg.wordpress.com/704/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/trueg.wordpress.com/704/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=trueg.wordpress.com&amp;amp;blog=6648236&amp;amp;post=704&amp;amp;subd=trueg&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 03 Feb 2012 15:03:53 +0000</pubDate>
</item>
<item>
	<title>Sebastian Trueg: A Little Drier But Not That Dry: Extracting Websites From Nepomuk Resources</title>
	<guid isPermaLink="false">http://trueg.wordpress.com/?p=689</guid>
	<link>http://trueg.wordpress.com/2012/02/02/a-little-drier-but-not-that-dry-extracting-websites-from-nepomuk-resources/</link>
	<description>&lt;p&gt;After writing about my &lt;a href=&quot;http://trueg.wordpress.com/2012/01/28/something-way-less-dry-tv-shows/&quot; title=&quot;Something Way Less Dry: TV Shows&quot;&gt;TV Show Namer&lt;/a&gt; I want to get out some more ideas and examples before I will be retiring as a full-time KDE developer in a few weeks.&lt;/p&gt;
&lt;p&gt;The original idea for what I am about to present came a long while ago when I remembered that Vishesh gave me a link on IRC but I could not remember when exactly. So I figured that it would be nice to extract web links from Nepomuk resources to be able to query and browse them.&lt;/p&gt;
&lt;p&gt;As always what I figured would be a quick thing lead me to a few bugs which I needed to fix before moving on. So all in all it took much longer than I had hoped. Anyway, the result is another small application called &lt;a href=&quot;http://quickgit.kde.org/?p=scratch%2Ftrueg%2Fnepomukwebsiteextractor.git&amp;amp;a=summary&quot;&gt;nepomukwebsiteextractor&lt;/a&gt;. It is a small tool without a UI which will extract websites from the given resource or file. If called without arguments it will query for resources which do not have any &lt;a href=&quot;http://oscaf.sourceforge.net/nie.html#nie:links&quot;&gt;related&lt;/a&gt; websites and and extract websites from them. Since it tries to fetch a title for each website this is a very slow procedure.&lt;/p&gt;
&lt;p&gt;As before the storing to Nepomuk is the easy part. Getting the information is way harder:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;pre class=&quot;brush: cpp;&quot;&gt;using namespace Nepomuk;
using namespace Nepomuk::Vocabulary;

// create the main Website resource
NFO::Website website(url);
website.addType(NFO::WebDataObject());
QString title = fetchHtmlPageTitle(url);
if(!title.isEmpty()) {
  website.setTitle(title);
}

// create the domain website resource
KUrl domainUrl = extractDomain(url);
NFO::Website domainWebPage(domainUrl);
domainWebPage.addType(NFO::WebDataObject());
domainWebPage.addPart(website.uri());
title = fetchHtmlPageTitle(domainUrl);
if(!title.isEmpty()) {
  domainWebPage.setTitle(title);
}

// relate the two via the nie:isPartOf relation
website.addProperty(NIE::isPartOf(), domainUrl);
domainWebPage.addProperty(NIE::hasPart(), website.uri());

// funnily enough the domain is a sub-resource of the website
// this is so removing the website will also remove the domain
// as it is the one which triggered the domain resource's creation
website.addSubResource(domainUrl);

// save it all to Nepomuk
Nepomuk::storeResources(SimpleResourceGraph() &amp;lt;&amp;lt; website &amp;lt;&amp;lt; domainWebPage);
&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Once done you will have thousands of &lt;a href=&quot;http://oscaf.sourceforge.net/nfo.html#nfo:Website&quot;&gt;nfo:Website&lt;/a&gt; resources in your Nepomuk database, each of which are related to their respective domain via &lt;a href=&quot;http://oscaf.sourceforge.net/nie.html#nie:isPartOf&quot;&gt;nie:isPartOf&lt;/a&gt; (I am not entirely sure if this is perfectly sound but it is convenient as far as graph traversal goes). We can of course query those resources with nepomukshell (this is trivial but allows me to pimp up this blog post with a screenshot):&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://trueg.files.wordpress.com/2012/02/extracted-websites.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter size-full wp-image-690&quot; height=&quot;271&quot; src=&quot;http://trueg.files.wordpress.com/2012/02/extracted-websites.png?w=584&amp;amp;h=271&quot; title=&quot;extracted-websites&quot; width=&quot;584&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;And of course Dolphin shows the extracted links in its meta-data panel:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://trueg.files.wordpress.com/2012/02/extracted-websites-dolphin.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter  wp-image-692&quot; height=&quot;526&quot; src=&quot;http://trueg.files.wordpress.com/2012/02/extracted-websites-dolphin.png?w=313&amp;amp;h=526&quot; title=&quot;extracted-websites-dolphin&quot; width=&quot;313&quot; /&gt;&lt;/a&gt;I am not entirely sure how to usefully show this information to the user yet but it is already quite nice to navigate the sub-graph which has been created here.&lt;/p&gt;
&lt;p&gt;Of course we could query all the resources which mention a link with domain www.kde.org:&lt;/p&gt;
&lt;pre&gt;select ?r where {
  ?r nie:links ?w .
  ?w a nfo:Website .
  ?w nie:isPartOf ?p .
  ?p nie:url &amp;lt;http://www.kde.org&amp;gt; .
}&lt;/pre&gt;
&lt;p&gt;Or the Nepomuk API version of the same:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;pre class=&quot;brush: cpp;&quot;&gt;using namespace Nepomuk::Query;
using namespace Nepomuk::Vocabulary;

Query query =
  ComparisonTerm(NIE::links(),
    ResourceTypeTerm(NFO::Website()) &amp;amp;&amp;amp;
    ComparisonTerm(NIE::isPartOf(),
      ResourceTerm(QUrl(&quot;http://www.kde.org&quot;))
    )
  );
&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;
&lt;p&gt;It gets even more interesting when combined with the nfo:Websites created by KParts when downloading files.&lt;/p&gt;
&lt;p&gt;Well, now I provided screenshots, code examples, and a link to a repository – I think it is all there – have fun.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt; In the spirit of promoting the previously mentioned ResourceWatcher here is how the website extractor would monitor for new stuff to be extracted:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;pre class=&quot;brush: cpp;&quot;&gt;Nepomuk::ResourceWatcher* watcher = new Nepomuk::ResourceWatcher(this);
watcher-&amp;gt;addProperty(NIE::plainTextContent());
connect(watcher, 
        SIGNAL(propertyAdded(Nepomuk::Resource,
                             Nepomuk::Types::Property,
                             QVariant)),
        this,
        SLOT(slotPropertyAdded(Nepomuk::Resource,
                               Nepomuk::Types::Property,
                               QVariant)));
watcher-&amp;gt;start();

[...]

void slotPropertyAdded(const Nepomuk::Resource&amp;amp; res,
                       const Nepomuk::Types::Property&amp;amp;,
                       const QVariant&amp;amp; value) {
  if(!hasOneOfThoseXmlOrRdfMimeTypes(res)) {
    const QString text = value.toString();
    extractWebsites(res, text);
  }
}
&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/trueg.wordpress.com/689/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/trueg.wordpress.com/689/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/trueg.wordpress.com/689/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/trueg.wordpress.com/689/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/trueg.wordpress.com/689/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/trueg.wordpress.com/689/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/trueg.wordpress.com/689/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/trueg.wordpress.com/689/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/trueg.wordpress.com/689/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/trueg.wordpress.com/689/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/trueg.wordpress.com/689/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/trueg.wordpress.com/689/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/trueg.wordpress.com/689/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/trueg.wordpress.com/689/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=trueg.wordpress.com&amp;amp;blog=6648236&amp;amp;post=689&amp;amp;subd=trueg&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Thu, 02 Feb 2012 14:04:24 +0000</pubDate>
</item>
<item>
	<title>Chmouel Boudjnah: Audit a swift cluster</title>
	<guid isPermaLink="false">http://blog.chmouel.com/?p=493</guid>
	<link>http://blog.chmouel.com/2012/02/01/audit-a-swift-cluster/</link>
	<description>&lt;p&gt;Swift integrity tools.&lt;/p&gt;
&lt;p&gt;There is quite a bit of tools shipped with Swift to ensure you have the right object on your cluster.&lt;/p&gt;
&lt;p&gt;At first there is the basic :&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;swift-object-info&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;It will take a swift object stored on the filesystem and print some infos about it, like this :&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;swift@storage01:0/016/0b221bab535ac1b8f0d91e394f225016$ swift-object-info 1327991417.01411.data&lt;br /&gt;
Path: /AUTH_root/foobar/file.txt&lt;br /&gt;
Account: AUTH_root&lt;br /&gt;
Container: foobar&lt;br /&gt;
Object: file.txt&lt;br /&gt;
Object hash: 0b221bab535ac1b8f0d91e394f225016&lt;br /&gt;
Ring locations:&lt;br /&gt;
192.168.254.12:6000 – /srv/node/sdb1/objects/0/016/0b221bab535ac1b8f0d91e394f225016/1327991417.01411.data&lt;br /&gt;
Content-Type: text/plain&lt;br /&gt;
Timestamp: 2012-01-31 06:30:17.014110 (1327991417.01411)&lt;br /&gt;
ETag: 053a0f8516a5023b9af76c49ca917d3e (valid)&lt;br /&gt;
Content-Length: 24 (valid)&lt;br /&gt;
User Metadata: {‘X-Object-Meta-Mtime’: ’1327968327.21′}&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;PS: If you don’t know where is your object on which node, you can you use swift-get-nodes&lt;/p&gt;
&lt;p&gt;For auditing, the Etag value is important because swift-object-info will compare the object recorded etag in the metadata with what we have on the disks. Let’s try to see if that works :&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;swift@storage01:0/016/0b221bab535ac1b8f0d91e394f225016$ cp 1327991417.01411.data /tmp&lt;br /&gt;
swift@storage01:0/016/0b221bab535ac1b8f0d91e394f225016$ echo “foo” &amp;gt;&amp;gt; 1327991417.01411.data&lt;br /&gt;
swift@storage01:0/016/0b221bab535ac1b8f0d91e394f225016$ swift-object-info 1327991417.01411.data|grep ‘^Etag’&lt;br /&gt;
Etag: 053a0f8516a5023b9af76c49ca917d3e doesn’t match file hash of 9ff871e5ce5dcb5d3f2680a80a88ff38!&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;swift-object-info has detected that this file is not the one we have uploaded.&lt;/p&gt;
&lt;p&gt;There is an other tool called &lt;strong&gt;swift-drive-audit&lt;/strong&gt; which as explained in the &lt;a href=&quot;http://swift.openstack.org/admin_guide.html&quot; title=&quot;Admin Guide&quot;&gt;admin guide&lt;/a&gt; will parse the &lt;em&gt;/var/log/kern.log&lt;/em&gt; and have predefined regexp  to detect disk failure notified by the kernel. It is usually run periodically by cron and there is a config file for it called &lt;em&gt;&lt;a href=&quot;https://github.com/openstack/swift/blob/master/etc/drive-audit.conf-sample&quot;&gt;/etc/swift/drive-audit.conf.&lt;/a&gt;&lt;/em&gt; If the script find any errors for a certain drive it will unmount it and comment it in /etc/fstab(5). Afterwards  the replication process will pick it up from other replicas and put the object on that drive in &lt;em&gt;handover&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Swift provide as well different type of auditor daemons for account/container/object :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; swift-account-auditor&lt;/li&gt;
&lt;li&gt; swift-container-auditor&lt;/li&gt;
&lt;li&gt; swift-object-auditor&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;swift-account-auditor&lt;/strong&gt; will open all sqlite db of an account server and launch a SQL query to make sure all the dbs are valid.&lt;br /&gt;
&lt;strong&gt;swift-container-auditor&lt;/strong&gt; will do the same but for containers.&lt;br /&gt;
&lt;strong&gt;swift-object-auditor&lt;/strong&gt; will open all object of an object server and make sure of :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Metadata are correct.&lt;/li&gt;
&lt;li&gt;We have the proper size.&lt;/li&gt;
&lt;li&gt;We have the proper MD5.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Those auditors needs to be set in each type-server.conf, for example for account server you will add something like this to /etc/swift/account-server.conf :&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;[account-auditor]&lt;br /&gt;
# You can override the default log routing for this app here (don’t use set!):&lt;br /&gt;
# log_name = account-auditor&lt;br /&gt;
# log_facility = LOG_LOCAL0&lt;br /&gt;
# log_level = INFO&lt;br /&gt;
# Will audit, at most, 1 account per device per interval&lt;br /&gt;
interval = 1800&lt;br /&gt;
# log_facility = LOG_LOCAL0&lt;br /&gt;
# log_level = INFO&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;For container this is about the same options but for object-server does are the options :&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;[object-auditor]&lt;br /&gt;
# You can override the default log routing for this app here (don’t use set!):&lt;br /&gt;
# log_name = object-auditor&lt;br /&gt;
# log_facility = LOG_LOCAL0&lt;br /&gt;
# log_level = INFO&lt;br /&gt;
# files_per_second = 20&lt;br /&gt;
# bytes_per_second = 10000000&lt;br /&gt;
# log_time = 3600&lt;br /&gt;
# zero_byte_files_per_second = 50&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Another tool shipped with swift is &lt;strong&gt;swift-account-audit&lt;/strong&gt; which will audit a full account and report if there is missing replicas or incorrect object in that account.&lt;/p&gt;</description>
	<pubDate>Wed, 01 Feb 2012 10:18:11 +0000</pubDate>
</item>
<item>
	<title>Christophe Fergeau: Going to FOSDEM!</title>
	<guid isPermaLink="false">tag:blogger.com,1999:blog-8472120078842080683.post-5584824933040711987</guid>
	<link>http://cfergeau.blogspot.com/2012/01/going-to-fosdem.html</link>
	<description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot;&gt;This is this time of the year again, &lt;a href=&quot;http://fosdem.org/2012/&quot;&gt;FOSDEM&lt;/a&gt; will take place in Brussels next week-end. This is one of my favourite free software event, lots of interesting talks, lots of interesting people, and lots of energy everywhere. This year, it looks like it will be the best FOSDEM ever! More devrooms, more than 400 talks, more everything!&lt;br /&gt;&lt;br /&gt;I've helped again organizing the &lt;a href=&quot;http://fosdem.org/2012/schedule/track/crossdesktop_devroom&quot;&gt;crossdesktop devroom&lt;/a&gt;. Among these talks, I can only recommend the &lt;a href=&quot;http://fosdem.org/2012/schedule/event/gnomeboxes&quot;&gt;gnome-boxes presentation&lt;/a&gt; that Marc-André and &lt;a href=&quot;http://zee-nix.blogspot.com/&quot;&gt;Zeeshan&lt;/a&gt; will be giving :) While I'm at it, here are a few more shameless plugs: &lt;a href=&quot;http://hansdegoede.livejournal.com/&quot;&gt;Hans de Goede&lt;/a&gt; will be giving 2 &lt;a href=&quot;http://spice-space.org/&quot;&gt;SPICE&lt;/a&gt; talks in the Virtualization devroom, one &lt;a href=&quot;http://fosdem.org/2012/schedule/event/spice&quot;&gt;general presentation of SPICE&lt;/a&gt;, and one where he will describe the &lt;a href=&quot;http://fosdem.org/2012/schedule/event/usb_network_redirect&quot;&gt;USB redirection support in SPICE&lt;/a&gt;. And &lt;a href=&quot;http://blog.saymoo.org/&quot;&gt;Alon Levy&lt;/a&gt; will present his work to &lt;a href=&quot;http://fosdem.org/2012/schedule/event/xorg_xspice&quot;&gt;interact with an X server through SPICE&lt;/a&gt; without using a virtual machine.&lt;br /&gt;&lt;br /&gt;Last but not least, there will also be a GNOME booth with some goodies...&lt;br /&gt;&lt;br /&gt;See you all there in a few days!&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/8472120078842080683-5584824933040711987?l=cfergeau.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Tue, 31 Jan 2012 09:24:30 +0000</pubDate>
	<author>noreply@blogger.com (Christophe)</author>
</item>
<item>
	<title>Bruno Cornec: Let’s meet at Fosdem 2012 in Brussels</title>
	<guid isPermaLink="false">http://brunocornec.wordpress.com/?p=730</guid>
	<link>http://brunocornec.wordpress.com/2012/01/30/lets-meet-at-fosdem-2012-in-brussels/</link>
	<description>&lt;p&gt;I’ll attend &lt;a href=&quot;http://fosdem.org&quot;&gt;Fosdem&lt;/a&gt; &lt;a href=&quot;http://brunocornec.wordpress.com/2011/02/15/fosdem-2011-report-day-2/&quot;&gt;again&lt;/a&gt; this year next week-end in Brussels. I’ll deliver a &lt;a href=&quot;http://fosdem.org/2012/schedule/event/projectbuilder&quot;&gt;talk&lt;/a&gt; on &lt;a href=&quot;http://Project-Builder.org&quot;&gt;Project-Builder.org&lt;/a&gt; as a support for a Continuous Packaging cross Operating Systems development. &lt;/p&gt;
&lt;p&gt;There are some &lt;a href=&quot;http://trac.project-builder.org/milestone/0.12.1&quot;&gt;news&lt;/a&gt; with the tool, and hopefully a new version, and some future evolution that I’d like to communicate. I also plan to present less slides, and have a more concrete demo to help people see the value of the approach.&lt;/p&gt;
&lt;p&gt;While not presentting, I’ll probably be around near the &lt;a href=&quot;http://Mageia.org&quot;&gt;Mageia&lt;/a&gt; booth or around my HP colleagues attending the event as well (&lt;a href=&quot;http://fosdem.org/2012/schedule/speaker/bdale_garbee&quot;&gt;Bdale Garbee&lt;/a&gt;, &lt;a href=&quot;http://fosdem.org/2012/schedule/track/legal_issues_devroom&quot;&gt;Martin Michlmayr&lt;/a&gt;, &lt;a href=&quot;http://fosdem.org/2012/schedule/track/legal_issues_devroom&quot;&gt;Hugo Roy&lt;/a&gt;). Don’t hesitate to come and chat !&lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://brunocornec.wordpress.com/category/floss/event-floss/&quot;&gt;Event&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/category/floss/&quot;&gt;FLOSS&lt;/a&gt; Tagged: &lt;a href=&quot;http://brunocornec.wordpress.com/tag/event/&quot;&gt;Event&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/hp/&quot;&gt;HP&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/hplinux/&quot;&gt;HPLinux&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/mageia/&quot;&gt;Mageia&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/open-source/&quot;&gt;Open Source&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/perl/&quot;&gt;perl&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/project-builder-org/&quot;&gt;project-builder.org&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/brunocornec.wordpress.com/730/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/brunocornec.wordpress.com/730/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/brunocornec.wordpress.com/730/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/brunocornec.wordpress.com/730/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/brunocornec.wordpress.com/730/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/brunocornec.wordpress.com/730/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/brunocornec.wordpress.com/730/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/brunocornec.wordpress.com/730/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/brunocornec.wordpress.com/730/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/brunocornec.wordpress.com/730/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/brunocornec.wordpress.com/730/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/brunocornec.wordpress.com/730/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/brunocornec.wordpress.com/730/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/brunocornec.wordpress.com/730/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=brunocornec.wordpress.com&amp;amp;blog=5437580&amp;amp;post=730&amp;amp;subd=brunocornec&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 30 Jan 2012 14:02:12 +0000</pubDate>
</item>
<item>
	<title>Équipe Mandriva: Pas pour cette fois</title>
	<guid isPermaLink="false">http://blog.mandriva.com/fr/?p=1156</guid>
	<link>http://blog.mandriva.com/fr/2012/01/30/pas-pour-cette-fois/</link>
	<description>&lt;p&gt;Nous sommes au regret de vous informer qu’un actionnaire minoritaire a refusé l’offre de l’entité extérieure et nous ne pouvons, de ce fait, prendre cette option pour notre futur. Nous travaillons donc – aidés en cela par une situation financière meilleure que prévue – à une solution alternative pour la suite. Nous pouvons compter dans cette période critique sur le soutien sans faille de l’&lt;a href=&quot;http://www.paris-region.com/index.jsp?LANGUE=0&quot;&gt;Agence régionale de développement Paris Île de France&lt;/a&gt; que nous tenons d’ores et déjà à remercier pour l’excellence de son action.&lt;/p&gt;
&lt;p&gt;* 3.2.2012 * Nous tenons à préciser que le soutien de l’ARD Paris Île de France n’est aucunement de nature financière. Son soutien n’en est toutefois pas moins efficace.&lt;/p&gt;</description>
	<pubDate>Mon, 30 Jan 2012 09:02:32 +0000</pubDate>
</item>
<item>
	<title>Mandriva Team: Not this time</title>
	<guid isPermaLink="false">http://blog.mandriva.com/en/?p=1716</guid>
	<link>http://blog.mandriva.com/en/2012/01/30/not-this-time/</link>
	<description>&lt;p&gt;Unfortunately, the bid proposed by the external entity has been refused by a minority shareholder and we cannot go for this solution. Fortunately, the financial situation – far better than expected – allow us to search for a new way to solve the current issue until mid-February. We’ll be able to count on the help of the &lt;a href=&quot;http://www.paris-region.com/index.jsp?LANGUE=1&quot;&gt;Paris Region Economic Development Agency&lt;/a&gt; for this important move.&lt;/p&gt;</description>
	<pubDate>Mon, 30 Jan 2012 08:56:42 +0000</pubDate>
</item>
<item>
	<title>Remy Clouard: home-server - Yamaha DX7 and Linux</title>
	<guid isPermaLink="true">http://www.shikamaru.fr/news/19</guid>
	<link>http://www.shikamaru.fr/news/19</link>
	<description>&lt;p&gt;So, after spending some time setting up my PC yesterday, I wanted to work with it and my Yamaha DX7. When I got it, default sounds were not there, and there were lots of duplicate sounds. What you would need for this tutorial is simply a midi interface (with in and out) and 2 midi cables.&lt;/p&gt;


	&lt;p&gt;Back in 1983, the DX was one of the first synth to have a midi interface, though it’s not 100% complete and has some limitations. I won’t tell a lot about this since it has already been widely covered. But that means when you turn up qjackctl and any synth software like &lt;a class=&quot;external&quot; href=&quot;http://qsynth.sourceforge.net/qsynth-index.html&quot;&gt;QSynth&lt;/a&gt; , you can already use your DX as a master keyboard.&lt;/p&gt;


	&lt;p&gt;First thing I wanted to do was making a backup of my sounds and loading the defaults. Second thing I wanted to do was being able to preview the sounds before loading them into my DX.&lt;/p&gt;


	&lt;p&gt;So, to load and receive sounds on the DX7, you need a software that’s able to handle &lt;a class=&quot;external&quot; href=&quot;http://www.abdn.ac.uk/~mth192/dx7/sysex-format.txt&quot;&gt;sysex&lt;/a&gt; files. That’s where I found &lt;a class=&quot;external&quot; href=&quot;http://www.christeck.de/wp/products/simple-sysexxer/&quot;&gt;Simple Sysexxer&lt;/a&gt; .&lt;/p&gt;


	&lt;p&gt;It’s quite easy to build, and I’ll probably make a package for it for mageia. Simply type&lt;br /&gt;&lt;/p&gt;&lt;pre&gt;qmake SimpleSysexxer.pro
make
&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;


	&lt;p&gt;and that’s it (provided you have the dependencies installed).&lt;/p&gt;


	&lt;p&gt;when you launch it, it appears in qjackctl so you can connect it like in the picture shown below. Start receiving on simple sysexxer.&lt;br /&gt;&lt;img alt=&quot;&quot; src=&quot;http://img855.imageshack.us/img855/46/20120129133101767x307sc.png&quot; /&gt;&lt;/p&gt;


	&lt;p&gt;Now to the DX. By default, sysex are not sent from the DX, so type “function” and button 8. go to Midi Ch=1, type button 8 again and make sysinfo available.&lt;br /&gt;From now on each time you change sound, sysex data will be transferred. So you can start changing to every sound, internal or cartridge and sysex will get through midi. Turn sysinfo unavailable and stop receiving data in simple sysexxer.&lt;br /&gt;In simple sysexxer, you can then save this file and load another one, like rom1a.syx, which is the default bank on the DX.&lt;/p&gt;


	&lt;p&gt;Turn sysinfo available again, and disable memory protect on internal on the DX:&lt;/p&gt;


	&lt;p&gt;then you can start emitting the data and the DX will tell you it has received it. That’s it ! Huge kudos to Christoph Eckert for his simple yet very useful software !&lt;/p&gt;


	&lt;p&gt;Now, there are hundreds of patches for the DX but the DX can only hold 32 internal sounds (later versions could have 64, but mine is a first generation one)&lt;br /&gt;So, what I wanted was to be able to preview sounds before transferring them to the DX7.&lt;/p&gt;


	&lt;p&gt;Fortunately, there is a DX7 emulator for linux, it’s called &lt;a class=&quot;external&quot; href=&quot;http://dssi.sourceforge.net/hexter.html&quot;&gt;hexter&lt;/a&gt; . It can load sysex files and use these sounds. It does not sound as good as the original, but that may also be because my PC speakers are nowhere near as good as my keyboard amplifier. It uses a gtk2 interface, so be sure you have the devel dependencies installed to build it. Simply type&lt;/p&gt;


&lt;pre&gt;./configure
make
su #type in your root password
make install
&lt;/pre&gt;

	&lt;p&gt;Then again, I’ll probably build a package for mageia for this one too. You can then launch it with the following command&lt;/p&gt;


&lt;pre&gt;DSSI_PATH=/usr/local/lib/dssi/ jack-dssi-host hexter.so
&lt;/pre&gt;

	&lt;p&gt;and voilà ! connect your DX7 to it and you can play with it.&lt;/p&gt;


	&lt;p&gt;I still need to figure out how to load sounds to the cartridge but I fear I’ll have to take sounds one by one and save them into the slots of the cartridge.&lt;/p&gt;


	&lt;p&gt;Hope this will be useful to someone, to conclude this article, here is a small demo of it (coming soon…)&lt;/p&gt;</description>
	<pubDate>Sun, 29 Jan 2012 10:30:57 +0000</pubDate>
	<author>shikamaru@shikamaru.fr (Rémy CLOUARD)</author>
</item>
<item>
	<title>Sebastian Trueg: Something Way Less Dry: TV Shows</title>
	<guid isPermaLink="false">http://trueg.wordpress.com/?p=675</guid>
	<link>http://trueg.wordpress.com/2012/01/28/something-way-less-dry-tv-shows/</link>
	<description>&lt;p&gt;After my rather boring &lt;a href=&quot;http://trueg.wordpress.com/2012/01/28/something-dry-change-notifications/&quot; title=&quot;Something Dry: Change Notifications&quot;&gt;blog about change notifications&lt;/a&gt; I will now to write about something that I wanted every since I started developing Nepomuk. But only now has Nepomuk reached a point where it provides all the necessary pieces. I am talking about TV Show management – obviously I mean the rips from the DVD boxes I own.&lt;/p&gt;
&lt;p&gt;So what about it? Well, I wrote a little tool called &lt;a href=&quot;http://quickgit.kde.org/?p=scratch%2Ftrueg%2Fnepomuktvnamer.git&amp;amp;a=summary&quot;&gt;nepomuktvnamer&lt;/a&gt; (inspired by the great python tool &lt;a href=&quot;https://github.com/dbr/tvnamer&quot;&gt;tvnamer&lt;/a&gt;) which works a bit like our nepomukindexer except that it does not extract meta-data from the file but tries to fetch information about TV Shows from &lt;a href=&quot;http://thetvdb.com&quot;&gt;thetvdb.com&lt;/a&gt;. You can run the tool on a single file or recursively on a whole directory. It will then use a set of regular expressions (based on the ones from tvnamer)  to analyze the file names and extract the show title, season and episode numbers.&lt;/p&gt;
&lt;div class=&quot;wp-caption aligncenter&quot; id=&quot;attachment_676&quot; style=&quot;width: 310px;&quot;&gt;&lt;a href=&quot;http://trueg.files.wordpress.com/2012/01/tvnamer-multiple-match.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;size-medium wp-image-676&quot; height=&quot;103&quot; src=&quot;http://trueg.files.wordpress.com/2012/01/tvnamer-multiple-match.png?w=300&amp;amp;h=103&quot; title=&quot;tvnamer-multiple-match&quot; width=&quot;300&quot; /&gt;&lt;/a&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;The nepomuktvnamer will ask the user in case multiple matches have been found and cannot be filtered according to season and episode numbers&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;It will then save that information into Nepomuk through our powerful Data Management API. The code looks a bit as follows ignoring code to store actors, banners and the like.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;pre class=&quot;brush: cpp;&quot;&gt;const Tvdb::Series series = getSeriesForName(name);
Nepomuk::NMM::TVSeries seriesRes;
seriesRes.setTitle(series.name());
seriesRes.addDescription(series.overview());

Nepomuk::NMM::TVShow episodeRes(url);
episodeRes.setEpisodeNumber(episode);
episodeRes.setSeason(season);
episodeRes.setTitle(series[season][episode].name());
episodeRes.setSynopsis(series[season][episode].overview());
episodeRes.setReleaseDate(QDateTime(series[season][episode].firstAired(), QTime(), Qt::UTC));
episodeRes.setGenres(series.genres());

seriesRes.addEpisode(episodeRes.uri());
episodeRes.setSeries(seriesRes.uri());

Nepomuk::SimpleResourceGraph graph;
graph &amp;lt;&amp;lt; episodeRes &amp;lt;&amp;lt; seriesRes;
Nepomuk::storeResources(graph, Nepomuk::IdentifyNew, Nepomuk::OverwriteProperties)
&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;
&lt;p&gt;(This code uses my very own &lt;a href=&quot;http://libtvdb.sourceforge.net/&quot;&gt;LibTvdb&lt;/a&gt; which is essentially a Qt’ish wrapper around the thetvdb.org API.)&lt;/p&gt;
&lt;p&gt;The result of this can be seen in Dolphin:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://trueg.files.wordpress.com/2012/01/tvnamer-data-dolphin.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter size-full wp-image-678&quot; src=&quot;http://trueg.files.wordpress.com/2012/01/tvnamer-data-dolphin.png?w=584&quot; title=&quot;tvnamer-data-dolphin&quot; /&gt;&lt;/a&gt;Here we see the actors, the series, the synopsis and so on. Clicking on an actor will bring up all they played in, clicking on the series will bring up all the episodes from that series, and so on.&lt;/p&gt;
&lt;p&gt;Now let us have a look at the series itself using my beefed up version of the Nepomuk KIO slave:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://trueg.files.wordpress.com/2012/01/tvnamer-data-kio.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter size-full wp-image-679&quot; height=&quot;604&quot; src=&quot;http://trueg.files.wordpress.com/2012/01/tvnamer-data-kio.png?w=584&amp;amp;h=604&quot; title=&quot;tvnamer-data-kio&quot; width=&quot;584&quot; /&gt;&lt;/a&gt;As we can see the nepomuktvnamer also fetched a banner which is stored as nie:depiction. (A reason why to compile nepomuktvnamer you need the git master version of &lt;a href=&quot;http://oscaf.sf.net&quot;&gt;shared-desktop-ontologies&lt;/a&gt;. Oh, and also nepomuktvnamer is linked against libnepomukcore from nepomuk-core instead of libnepomuk. So you either have to install nepomuk-core which cab be a bit tricky or quickly change the CMakeLists.txt to link to libnepomuk instead.)&lt;/p&gt;
&lt;p&gt;We can of course also query the newly created information. Simple queries in Dolphin could be “series:Sherlock” or “sherlock season=1″. Well, things to play with.&lt;/p&gt;
&lt;p&gt;I also created the smallest Nepomuk service to date: the nepomuktvnamerservice uses the &lt;a href=&quot;http://trueg.wordpress.com/2012/01/28/something-dry-change-notifications/&quot; title=&quot;Something Dry: Change Notifications&quot;&gt;ResourceWatcher&lt;/a&gt; to listen for newly created &lt;a href=&quot;http://oscaf.sourceforge.net/nfo.html#nfo:Video&quot;&gt;nfo:Video&lt;/a&gt; resources and simply calls the nepomuktvnamer on the related file.&lt;/p&gt;
&lt;p&gt;Last but not least the git repository contains a python script which checks for each existing series if a new episode has been aired. The output looks a bit like this:&lt;/p&gt;
&lt;pre&gt;White Collar - New episode &quot;Withdrawal&quot; (02x01) first aired 13 July 2010.
Freaks and Geeks - No new episode found.
The Mentalist - Upcoming episode &quot;Red is the New Black&quot; (04x13) will air 02 February 2012.&lt;/pre&gt;
&lt;p&gt;Now obviously this is more a task for a Plasma applet. So if anyone out there is interested in doing that – please go ahead. I think it could be a cool thing. One basically only has to update whenever a new &lt;a href=&quot;http://oscaf.sourceforge.net/nmm.html#nmm:TVShow&quot;&gt;nmm:TVShow&lt;/a&gt; is created or when the new day dawns.&lt;/p&gt;
&lt;p&gt;And the cherry on top is of course Bangarang:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://trueg.files.wordpress.com/2012/01/tvnamer-data-bangarang.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter size-full wp-image-682&quot; height=&quot;618&quot; src=&quot;http://trueg.files.wordpress.com/2012/01/tvnamer-data-bangarang.png?w=584&amp;amp;h=618&quot; title=&quot;tvnamer-data-bangarang&quot; width=&quot;584&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/trueg.wordpress.com/675/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/trueg.wordpress.com/675/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/trueg.wordpress.com/675/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/trueg.wordpress.com/675/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/trueg.wordpress.com/675/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/trueg.wordpress.com/675/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/trueg.wordpress.com/675/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/trueg.wordpress.com/675/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/trueg.wordpress.com/675/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/trueg.wordpress.com/675/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/trueg.wordpress.com/675/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/trueg.wordpress.com/675/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/trueg.wordpress.com/675/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/trueg.wordpress.com/675/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=trueg.wordpress.com&amp;amp;blog=6648236&amp;amp;post=675&amp;amp;subd=trueg&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Sat, 28 Jan 2012 14:37:21 +0000</pubDate>
</item>
<item>
	<title>Sebastian Trueg: Something Dry: Change Notifications</title>
	<guid isPermaLink="false">http://trueg.wordpress.com/?p=670</guid>
	<link>http://trueg.wordpress.com/2012/01/28/something-dry-change-notifications/</link>
	<description>&lt;p&gt;Ignoring the fact that I did not blog in nearly two months I will simply get some developer information out there. Getting notified about changes in the Nepomuk database has always been a problem. All we had for a long time where the ugly &lt;a href=&quot;http://soprano.sourceforge.net/apidox/stable/classSoprano_1_1Model.html#a3e2595166caac3621fd4268e46049adf&quot;&gt;statementAdded&lt;/a&gt; and &lt;a href=&quot;http://soprano.sourceforge.net/apidox/stable/classSoprano_1_1Model.html#a8fa85bfce2f83e89f83ef602cd818991&quot;&gt;statementRemoved&lt;/a&gt; signals from &lt;a href=&quot;http://soprano.sf.net&quot;&gt;Soprano&lt;/a&gt; which, when actually used, would slow down the whole system as one would have to check each single statement for the information one needed.&lt;/p&gt;
&lt;p&gt;Thus, with the introduction of the &lt;a href=&quot;http://trueg.wordpress.com/2011/06/08/nepomuk-2-0-and-the-data-management-service/&quot; title=&quot;Nepomuk 2.0 and the Data Management Service&quot;&gt;Data Management Service&lt;/a&gt; a while back we also gave birth to the &lt;a href=&quot;http://api.kde.org/4.x-api/kde-runtime-apidocs/nepomuk/html/classNepomuk_1_1ResourceWatcher.html&quot;&gt;ResourceWatcher&lt;/a&gt; which can be used to watch resources, properties, and types for changes. The concept is simple. Just create an instance of the watcher and tell it which resources or which types of resources you want to watch for changes. In addition you can restrict it to specific properties. Then you get nice signals which inform you about the changes when they happen.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;pre class=&quot;brush: cpp;&quot;&gt;Nepomuk::ResourceWatcher *watcher = new Nepomuk::ResourceWatcher(this);
watcher-&amp;gt;addType(NCO::Contact());
connect(watcher, SIGNAL(resourceCreated(Nepomuk::Resource, QList&amp;lt;QUrl&amp;gt;)),
        this, SLOT(slotCreated(Nepomuk::Resource, QList&amp;lt;QUrl&amp;gt;)));
watcher-&amp;gt;start();
&lt;/pre&gt;&lt;p&gt;&lt;/p&gt;
&lt;p&gt;The problem with this has been that it only works with data manipulation which happens through the Data Management Service and libnepomuk did not use that for a long time. Now we finally fixed that (sadly I did not manage to push it in time for 4.8 but it will be in 4.8.1) and the change notifications become really useful. I also implemented a bunch of unit tests and made sure the most important types of notifications actually work.&lt;/p&gt;
&lt;p&gt;So all in all an important step for developers using Nepomuk which was overdue.&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/trueg.wordpress.com/670/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/trueg.wordpress.com/670/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/trueg.wordpress.com/670/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/trueg.wordpress.com/670/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/trueg.wordpress.com/670/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/trueg.wordpress.com/670/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/trueg.wordpress.com/670/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/trueg.wordpress.com/670/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/trueg.wordpress.com/670/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/trueg.wordpress.com/670/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/trueg.wordpress.com/670/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/trueg.wordpress.com/670/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/trueg.wordpress.com/670/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/trueg.wordpress.com/670/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=trueg.wordpress.com&amp;amp;blog=6648236&amp;amp;post=670&amp;amp;subd=trueg&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Sat, 28 Jan 2012 13:50:29 +0000</pubDate>
</item>
<item>
	<title>Bruno Cornec: A MondoRescue annoyance</title>
	<guid isPermaLink="false">http://brunocornec.wordpress.com/?p=726</guid>
	<link>http://brunocornec.wordpress.com/2012/01/27/a-mondorescue-annoyance/</link>
	<description>&lt;p&gt;When I &lt;a href=&quot;http://brunocornec.wordpress.com/2012/01/06/mondorescue-3-0-0-is-now-officially-out/&quot;&gt;released&lt;/a&gt; the version 3.0.0, some people started to report issues at restore time, that I didn’t saw during my tests. These problems were mentioned as related to LVM restoration, or partition table restoration.&lt;/p&gt;
&lt;p&gt;After looking at the logs they send (kind reminder, that’s a mandatory info if you want to get any form of support !), I saw that in their case, the resizing factor was incorrect, even sometimes 0, leading to empty partitions. &lt;/p&gt;
&lt;p&gt;This should have been fixed with revision &lt;a href=&quot;http://trac.mondorescue.org/changeset/2932&quot;&gt;2932&lt;/a&gt;, and I have released a &lt;a href=&quot;ftp://ftp.mondorescue.org/test/&quot;&gt;beta of 3.0.1&lt;/a&gt; that people encountering this problem should use. Let me know if you want to test the fix for a distribution not yet published.&lt;/p&gt;
&lt;p&gt;I’ve also repackaged mindi-busybox (with tag 2) for all the deb distributions I manage, in order to solve a dependency issue when upgrading, which was not seen on RPM based systems (for once I have an advantage &lt;img alt=&quot;;-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif&quot; /&gt; )&lt;/p&gt;
&lt;p&gt;I’d like to have more rapid cycles for this 3.0 branch to reach a very stable point asap, allowing me to work on other branches. Feel free to give feedback so that I could publish 3.0.1 quickly.&lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://brunocornec.wordpress.com/category/floss/&quot;&gt;FLOSS&lt;/a&gt; Tagged: &lt;a href=&quot;http://brunocornec.wordpress.com/tag/linux/&quot;&gt;Linux&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/mondorescue/&quot;&gt;Mondorescue&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/open-source/&quot;&gt;Open Source&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/packaging/&quot;&gt;packaging&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/brunocornec.wordpress.com/726/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/brunocornec.wordpress.com/726/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/brunocornec.wordpress.com/726/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/brunocornec.wordpress.com/726/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/brunocornec.wordpress.com/726/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/brunocornec.wordpress.com/726/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/brunocornec.wordpress.com/726/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/brunocornec.wordpress.com/726/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/brunocornec.wordpress.com/726/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/brunocornec.wordpress.com/726/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/brunocornec.wordpress.com/726/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/brunocornec.wordpress.com/726/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/brunocornec.wordpress.com/726/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/brunocornec.wordpress.com/726/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=brunocornec.wordpress.com&amp;amp;blog=5437580&amp;amp;post=726&amp;amp;subd=brunocornec&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Thu, 26 Jan 2012 23:26:10 +0000</pubDate>
</item>
<item>
	<title>Mandriva Team: Decision postponed</title>
	<guid isPermaLink="false">http://blog.mandriva.com/en/?p=1713</guid>
	<link>http://blog.mandriva.com/en/2012/01/23/decision-postponed/</link>
	<description>&lt;p&gt;The decision that should have been taken today has been postponed to Friday, January 27th. The deadline for the decision on the proposal has been extended by the proposing entity upon request of some shareholders.&lt;/p&gt;</description>
	<pubDate>Mon, 23 Jan 2012 22:55:38 +0000</pubDate>
</item>
<item>
	<title>Équipe Mandriva: Décision ajournée</title>
	<guid isPermaLink="false">http://blog.mandriva.com/fr/?p=1154</guid>
	<link>http://blog.mandriva.com/fr/2012/01/23/decision-ajournee/</link>
	<description>&lt;p&gt;La décision qui devait être prise ce jour a été ajournée au vendredi 27 janvier 2012. La validité de l’offre reçue a été prolongée par l’entité l’ayant présentée, donnant suite à la requête de certains actionnaires.&lt;/p&gt;</description>
	<pubDate>Mon, 23 Jan 2012 22:52:15 +0000</pubDate>
</item>
<item>
	<title>Christophe Fergeau: Unpacking Boxes...</title>
	<guid isPermaLink="false">tag:blogger.com,1999:blog-8472120078842080683.post-4670321997284320166</guid>
	<link>http://cfergeau.blogspot.com/2012/01/unpacking-boxes.html</link>
	<description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot;&gt;For the impatient people running Fedora 16 but who still want to get an aperçu of &lt;a href=&quot;https://live.gnome.org/Boxes&quot;&gt;Boxes&lt;/a&gt;, today's your lucky day! I set up a preview repository with all the needed package to install Boxes on Fedora 16.&lt;br /&gt;If you want to try it, download &lt;a href=&quot;http://teuf.fedorapeople.org/boxes/gnome-boxes-preview.repo&quot;&gt;this file&lt;/a&gt; to&lt;span&gt; /etc/yum.repos.d&lt;/span&gt; and then run &lt;span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span&gt;yum install gnome-boxes &amp;amp;&amp;amp; yum update&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://3.bp.blogspot.com/-MSs74JJntLA/Tx1I5JI4_VI/AAAAAAAAAqQ/ZSvcC0Fkbv4/s1600/boxes2.png&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;238&quot; src=&quot;http://3.bp.blogspot.com/-MSs74JJntLA/Tx1I5JI4_VI/AAAAAAAAAqQ/ZSvcC0Fkbv4/s320/boxes2.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style=&quot;font-family: inherit;&quot;&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;To go back to your previous setup, you can either use the convenient &lt;/span&gt;&lt;span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;yum history&lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;, or remove&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;/etc/yum.repos.d/gnome-boxes-preview.repo&lt;/span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt; and use&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;span&gt;yum remove libvirt-glib &amp;amp;&amp;amp; yum distro-sync&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;Keep in mind that this is a new application still in heavy development, so you're likely to find bugs and missing features. But I'm sure you will enjoy it nonetheless :)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;Feel free to join us in &lt;span&gt;#boxes&lt;/span&gt; on &lt;span&gt;irc.gnome.org &lt;/span&gt;if you have any issues, or if you just want to chat with us.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/8472120078842080683-4670321997284320166?l=cfergeau.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Mon, 23 Jan 2012 11:54:37 +0000</pubDate>
	<author>noreply@blogger.com (Christophe)</author>
</item>
<item>
	<title>Shlomi Fish: git tip: adding remotes to .git/config</title>
	<guid isPermaLink="true">http://shlomif-tech.livejournal.com/61068.html</guid>
	<link>http://shlomif-tech.livejournal.com/61068.html</link>
	<description>&lt;p&gt;
When working with the &lt;a href=&quot;http://en.wikipedia.org/wiki/Git_%28software%29&quot; rel=&quot;nofollow&quot;&gt;git version control
system&lt;/a&gt; and editing &lt;tt&gt;.git/config&lt;/tt&gt; to add a new remote, some people
may be tempted to copy and change the &lt;tt&gt;origin&lt;/tt&gt; remote that reads
something like:
&lt;/p&gt;

&lt;pre&gt;[remote &quot;origin&quot;]
	fetch = +refs/heads/*:refs/remotes/origin/*
	url = git@github.com:shlomif/perl.git
&lt;/pre&gt;

&lt;p&gt;
However, note that &lt;tt&gt;origin&lt;/tt&gt; also appears at the &lt;tt&gt;fetch = &lt;/tt&gt;
and needs to be changed there as well, or else all the branches will be placed
in &lt;tt&gt;remotes/origin&lt;/tt&gt;. Maybe there's a better way to add a new remote
using the &lt;tt&gt;git config&lt;/tt&gt; commands.
&lt;/p&gt;

&lt;p&gt;
Otherwise, I should note that there doesn't seem to be a consensus among
git users whether &lt;tt&gt;git pull --rebase&lt;/tt&gt; is better than a simple
&lt;tt&gt;git pull&lt;/tt&gt;: the perl people told me to use &lt;tt&gt;--rebase&lt;/tt&gt; and the
Amarok people and someone on Freenode's &lt;tt&gt;##programming&lt;/tt&gt; told
me not to use it. Now I'm just confused.
&lt;/p&gt;</description>
	<pubDate>Sun, 22 Jan 2012 16:33:04 +0000</pubDate>
	<author>shlomif@iglu.org.il (Shlomi Fish ()</author>
</item>
<item>
	<title>Bruno Cornec: In memoriam Gustav Leonhardt</title>
	<guid isPermaLink="false">http://brunocornec.wordpress.com/?p=720</guid>
	<link>http://brunocornec.wordpress.com/2012/01/20/in-memoriam-gustav-leonhardt/</link>
	<description>&lt;p&gt;Je déteste transformer ce blog en rubrique nécrologique. Mais après &lt;a href=&quot;http://brunocornec.wordpress.com/2011/12/03/in-memoriam-montserrat-figueras/&quot;&gt;Montserrat Figueras&lt;/a&gt; et &lt;a href=&quot;http://brunocornec.wordpress.com/2012/01/13/in-memoriam-alain-recordier/&quot;&gt;Alain Recordier&lt;/a&gt;, j’ai appris par un &lt;a href=&quot;http://www.lemonde.fr/culture/article/2012/01/18/gustav-leonhardt-rejoint-bach-au-paradis_1631205_3246.html&quot;&gt;article&lt;/a&gt; du &lt;a href=&quot;http://www.lemonde.fr/&quot;&gt;Monde&lt;/a&gt; de &lt;a href=&quot;http://fr.wikipedia.org/wiki/Renaud_Machart&quot;&gt;Renaud Machart&lt;/a&gt; la disparition du maître Gustav Leonhardt.&lt;/p&gt;
&lt;p&gt;Alors même si cela ne fera encore pas les gros titres du 20h, il faut affirmer qu’il a été celui par qui la révolution de la musique ancienne est arrivée, au même titre que Nikolaus Harnoncourt, David Munrow, ou Thomas Binkley et Jordi Savall, chacun dans leur domaine de prédilection respectif. Pour Gustav Leonhardt, ce fut le clavecin qui fut enfin considéré comme un instrument majeur grâce à lui et non pas comme un ersatz de pianoforte mal dégrossi. Et cela parce qu’il a su faire chanter la musique sur cet instrument comme personne avant lui. Et heureusement, comme beaucoup après qui lui ont emboité le pas.&lt;/p&gt;
&lt;p&gt;Je me souviens encore des concerts que j’allais voir de lui sur Paris, ou je me retrouvais dans la même rame de métro qu’un Pierre Hantaï qui venait le voir aussi ! Gustav Leonhardt mérite le titre de maître que je lui donne plus haut, car justement, il a joué un rôle de passeur, tant dans l’enseignement, que dans la redécouverte de pans oubliés de répertoire (j’écoute en ce moment même son &lt;a href=&quot;http://www.amazon.fr/Works-Harpsicho-Johann-Jacob-Froberger/dp/B002HQWQL6/ref=sr_1_sc_1?ie=UTF8&amp;amp;qid=1327043386&amp;amp;sr=8-1-spell&quot;&gt;second disque&lt;/a&gt; consacré à Johann Jakob Froberger qu’il m’a fait découvrir comme à des milliers de mélomanes dès son premier enregistrement 1962 (!) pour Harmonia Mundi) ainsi que par la publication d’un &lt;a href=&quot;http://www.amazon.fr/LArt-fugue-Gustav-Leonhardt/dp/2858681252/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1327043462&amp;amp;sr=1-1&quot;&gt;ouvrage&lt;/a&gt; consacré à l’art de la fugue de Johann Sebastian Bach. &lt;/p&gt;
&lt;p&gt;Puisque l’on parle de Bach, c’est évidemment ce compositeur qu’il aura le plus illlustré au disque. J’ai encore un frémissement rétrospectif lors de ma découverte de la &lt;a href=&quot;http://www.amazon.fr/Concerto-Fantaisie-Chromatique-Jean-S%C3%A9bastien-Leonhardt/dp/B0007DB0UE/ref=sr_1_cc_1?s=aps&amp;amp;ie=UTF8&amp;amp;qid=1327043613&amp;amp;sr=1-1-catcorr&quot;&gt;fantaisie chromatique&lt;/a&gt; et fugue sous les doigts du maître hollandais ! Quel adéquation pour moi entre la hauteur de vue du compositeur et de cet interprète. Ma femme se souvient encore des 500 kms aller-retour faits pendant les vacances une année pour aller l’entendre jouer à l’abbaye de &lt;a href=&quot;http://www.google.com/url?sa=t&amp;amp;rct=j&amp;amp;q=&amp;amp;esrc=s&amp;amp;source=web&amp;amp;cd=1&amp;amp;ved=0CDoQFjAA&amp;amp;url=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FSaint-Guilhem-le-D%25C3%25A9sert&amp;amp;ei=yRQZT83iIdOLhQe4rZihAg&amp;amp;usg=AFQjCNH0qeR1SuAojyCoin4eBOEshcQ8nQ&quot;&gt;St Guilhem le désert&lt;/a&gt; où il avait interprèté de façon magistrale diverses pièces de Bach, dont une de ses propres transcriptions de sonates pour violon seul au clavecin.&lt;/p&gt;
&lt;p&gt;Ce qui m’a toujours frappé dans ses interprétations, c’est l’extrême lisibilité des voix, dans la musique si riche de Bach, qui rendait l’oeuvre à l’écoute évidente, tout en lui laissant sa richesse et sa complexité visible. Et les mots qui me viennent naturellement en tête quand je pense à ses enregistrements, c’est non pas austérité, dont on l’a souvent affublé, à tort, mais au contraire fulgurence (2è prélude du clavier bien tempéré de Bach), noblesse (son disque Louis Couperin chez Harmonia Mundi), architecture (son concerto italien de Bach), gravité (ce premier disque de Froberger chez Harmonia Mundi), virtuosité (son &lt;a href=&quot;http://www.musique-ancienne.org/html/Disques_files/Clavecin_Sonates-3702.html&quot;&gt;Scarlatti&lt;/a&gt; chez DHM ou son &lt;a href=&quot;http://www.musique-ancienne.org/html/Disques_files/Pi_ces_de_Clavecin-3772.html&quot;&gt;Duphly&lt;/a&gt; pour Séon), probité (Suites anglaises de Bach chez Séon).&lt;/p&gt;
&lt;p&gt;Je crois que je n’ai jamais autant écouté des disques que ceux de ces partitas de Bach (HM) d’abord en 33T, puis en CD. C’est l’un des sommets de la musique enregistrée (meilleur pour moi que sa seconde version pour Virgin où de nombreuses reprises manquent). Et je ne peux plus écouter toute cette musique autrement qu’au clavecin depuis ma fréquentation assidue des enregistrements qu’il a réalisés (comme ceux du regretté Scott Ross, inoubliable lui aussi dans Domenico Scarlatti, Jean-Philippe Rameau, François Couperin et pour moi tellement complémentaire de la discographie de Gustav Leonhardt). J’ai failli travailler le clavier vers 17 ans, après tant d’heures passé à écouter la musique qu’il avait enregistrée, mais mon emploi du temps ne m’a pas permis de le faire vraiment et je reste hélas seulement un auditeur. Mais je suis toujours capable, comme à Saintes, de passer une demi-heure rien qu’à écouter un claveciniste s’accorder (Trevor Pinnock a vraiment dû se demander ce qui se passait ce jour là &lt;img alt=&quot;:-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; )&lt;/p&gt;
&lt;p&gt;N’oublions pas non plus ses apports en tant qu’animateur d’ensemble. Quelle &lt;a href=&quot;http://www.amazon.fr/Bach-Messe-H-moll-Mass-minor/dp/B000026NDJ/ref=sr_1_cc_1?s=aps&amp;amp;ie=UTF8&amp;amp;qid=1327044505&amp;amp;sr=1-1-catcorr&quot;&gt;messe en si&lt;/a&gt; de Bach d’une majesté, d’une ferveur que peu d’autres que lui peuvent se permettre. Et que dire de son &lt;a href=&quot;http://www.amazon.fr/Biber-Requiem-Steffani-Stabat-Splendeurs/dp/B0001HQ2RW/ref=sr_1_cc_3?s=aps&amp;amp;ie=UTF8&amp;amp;qid=1327044540&amp;amp;sr=1-3-catcorr&quot;&gt;Requiem&lt;/a&gt; de Biber !! J’ai encore le frisson de la fois où je l’ai entendu en concert, et où il avait demandé à ne pas applaudir à la fin du concert. Le silence qui s’en est suivi, la concentration qui avait été accumulée par le public était simplement d’une densité palpable.&lt;/p&gt;
&lt;p&gt;Ce maître artiste a dédié sa vie à la musique, jusqu’à en faire le sacrifice en se produisant jusqu’à la fin. Il m’a fait aimer le clavecin plus que mon propre instrument (la flûte à bec qu’un Franz Brüggen a si bien illustré avec &lt;a href=&quot;http://www.musique-ancienne.org/html/Disques_files/Italian_Recorder_Sonatas-4049.html&quot;&gt;son accompagnement&lt;/a&gt;). Il a contribué à graver une intégrale des cantates de Bach qui a fait date et reste, par sa diffusion sur France Musique par Jacques Merlet, une de mes nombreuses initiations à la musique, de celles qui vous marquent pour la vie. Et il laisse un corpus d’enregistrements pour le clavecin et &lt;a href=&quot;http://www.musique-ancienne.org/html/Disques_files/Renaissance_And_Baroque_Organs_Northern_Italy-4086.html&quot;&gt;l’orgue&lt;/a&gt; qui est toujours la base d’un discothèque idéale.&lt;/p&gt;
&lt;p&gt;Alors, à l’heure où votre descente et arrêt brutal sur le clavier qui illustre la chute de Mr Blancrocher résonne à mes oreilles en fin de disque, un grand merci pour tout ce que vous avez apporté, Monsieur Leonhardt, à la musique et puisse le son de vos enregistrements longtemps susciter des vocations de mélomanes, d’amateurs et de professionnels. Ils ne pourraient mieux choisir leur modèle.&lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://brunocornec.wordpress.com/category/musique/&quot;&gt;Musique&lt;/a&gt; Tagged: &lt;a href=&quot;http://brunocornec.wordpress.com/tag/francais/&quot;&gt;français&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/johann-jakob-froberger/&quot;&gt;johann jakob froberger&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/johann-sebastian-bach/&quot;&gt;johann sebastian bach&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/music/&quot;&gt;Music&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/brunocornec.wordpress.com/720/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/brunocornec.wordpress.com/720/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/brunocornec.wordpress.com/720/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/brunocornec.wordpress.com/720/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/brunocornec.wordpress.com/720/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/brunocornec.wordpress.com/720/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/brunocornec.wordpress.com/720/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/brunocornec.wordpress.com/720/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/brunocornec.wordpress.com/720/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/brunocornec.wordpress.com/720/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/brunocornec.wordpress.com/720/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/brunocornec.wordpress.com/720/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/brunocornec.wordpress.com/720/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/brunocornec.wordpress.com/720/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=brunocornec.wordpress.com&amp;amp;blog=5437580&amp;amp;post=720&amp;amp;subd=brunocornec&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 20 Jan 2012 07:52:31 +0000</pubDate>
</item>
<item>
	<title>Juan Luis Baptiste: My take on SOPA and all that crap</title>
	<guid isPermaLink="false">tag:blogger.com,1999:blog-6593142845232437975.post-7527842726288914127</guid>
	<link>http://not403.blogspot.com/2012/01/my-take-on-sopa-and-all-that-crap.html</link>
	<description>&lt;br /&gt;Today I was reading a facebook comment from a musician about the closure of Megaupload, which I ended commenting too giving my take on that and all of the stuff hurdling around SOPA/PIPA these days.&lt;br /&gt;&lt;br /&gt;I really think that downloading music is doing little harm to bands, why ? because most of the price paid for a CD goes to disc label companies, distributors and all other in the middle. Some months ago when in my country we had a very similar law project being reviewed by the senate (that fortunately got dismissed, for now), I remember the opponents of the law mentioned a study that said that for every cd sold, in average, the artist would get 14% or less of that income. So who are really being hurt ? the disc label companies and distributors that get more than 85% of the earnings, which it isn't fair with the artist who is who did most of the job, right ? label companies only shield behind artist saying that *they* are the ones being hurt which isn't true. And to make it worse, cd's are freaking expensive this days, more outside the US. I can pay around $50 - $60 in my country for a metal cd of an european band that is around  $20 - $25 on the US, do you think that's fair ??? I did bought a lot of cd's before, while prices where acceptable (I think I have 60 - 70) but now it would be impossible to pay for all the music I have downloaded online with current cd prices, it whould be thousands of dollars !!&lt;br /&gt;&lt;br /&gt;The middle man needs to be eliminated. If an artist would sell their music directly on the Internet, prices would drop like crazy, people would be more willing to pay for a cd or a single song they like, and bands would earn much more than that miserable 14% or less. That's the real problem with SOPA and all that shit. Media companies have an outdated bussiness model that they don't want to change because it has been hugely profitable in the past. They are the ones that need to change and adapt to the Internet, not the other way around which is what they're trying to do with SOPA/PIPA. That's why itunes, jamendo and all those online music stores are doing and it's the way to go. Pay a fair price for what you like and let the money (most of it at least) go to the artist and not to a third party company.&lt;br /&gt;&lt;br /&gt;Do you remember old times when you would copy in a cassette music you liked from a friend's vinyl ? I'm sure you did it too. Do you think that was wrong ? probably not, you did it to learn about new bands and enjoy their music, not to earn money from that. What I think is really wrong and I do not support is when someone earns money from that trade, like for example buying cd's (or movies or computer programs) on the street, which is pretty common here. I haven't done it and won't ever do it. But sharing music with your friends, or downloading it from the Internet for *personal use*, I think is fine. Because of that I have got to know a lot of bands that otherwise I wouldn't have been able to, and I have been present at every fucking concert of those bands when they have come to my country and why I did paid for an expensive trip to &lt;a href=&quot;http://www.70000tons.com/&quot; target=&quot;_blank&quot;&gt;70k Tons of Metal&lt;/a&gt; last year and I'm doing it again this year (next week, yay !!). That's the way I support the bands I like, because that money goes directly to them. They earn more from concerts than from cd selling and that's why they're touring more and more than before. Concerts for me are very expensive, for example, I have paid $250 to see Iron Maiden, were the same ticket in the US wouldn't cost more than $150, but I'm happy to pay it because of what I just said.&lt;br /&gt;&lt;br /&gt;Most of the music I download is from torrents because it comes from other users like me, and there's no one enriching from that sharing. I didn't had put any thought on that companies like Megaupload do earn money from those downloads, even when you don't buy their premium accounts. Now I will not download anything from those sites.&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/6593142845232437975-7527842726288914127?l=not403.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Fri, 20 Jan 2012 02:49:12 +0000</pubDate>
	<author>noreply@blogger.com (Juan Luis Baptiste)</author>
</item>
<item>
	<title>Adam Williamson: FUDCon Blacksburg: My presentation, Cloud 0.1</title>
	<guid isPermaLink="false">http://www.happyassassin.net/?p=1507</guid>
	<link>http://www.happyassassin.net/2012/01/18/fudcon-blacksburg-my-presentation-cloud-0-1/</link>
	<description>&lt;p&gt;In deference to &lt;a href=&quot;http://adam.younglogic.com/2012/01/please-dont-title-your-post-conference-update/&quot;&gt;Adam Young&lt;/a&gt;, I’m going to try and write a series of broken-down posts on FUDCon, rather than one or two giant mish-mash-y summaries.&lt;/p&gt;
&lt;p&gt;So, this one’s about the presentation I gave, titled ‘Cloud 0.1′, with a subtitle I haven’t quite nailed down yet, but which is something like ‘Why Not to Spend Lots of Time and Energy Running Your Own Infrastructure Much Worse Than Google Would, And How To Do It If You Insist’.&lt;/p&gt;
&lt;p&gt;I’ve had the idea for a while now, but being lazy, didn’t write anything at all until the day before FUDCon, nor make any slides. Then I pitched it. To my surprise, it got enough votes to be scheduled. To my consternation, it got scheduled in the very first timeslot – so I had no time to finish my half-written notes, make any slides, do a runthrough, or generally do any of the stuff that would make it into a good talk.&lt;/p&gt;
&lt;p&gt;Instead I got up, read my introduction, then improvised inexpertly for an hour. Many thanks to the dozen people who showed up and managed to avoid falling asleep or throwing rotten fruit.&lt;/p&gt;
&lt;p&gt;The way I presented the talk was to spend a while talking about the many reasons it’s not a good idea to run your own infrastructure and the few reasons it is, then spend quite a while giving a 10,000 foot overview of how to set up a mail and web server, then spend the last 15 minutes briefly going over some rather neat webapps I run on my servers, and IRC/IM proxying. However, in hindsight, I think the most valuable bits are the consideration of whether you should run your own infrastructure, and the notes on neat, not-necessarily-well-known webapps and so on you can use if you do. The mailserver / webserver stuff is just too complex for a one hour presentation. So, since my notes are terrible, personal shorthand gibberish, and I have no slides, instead of giving you those, I’ll write a post about the same topics. Deal?&lt;/p&gt;
&lt;p&gt;When I talk about ‘infrastructure’ I’m talking about the services that support your computing. The classic, old-school example is running your own mail server; other bits that come into the talk are a personal web server and IRC / IM proxying servers.&lt;/p&gt;
&lt;p&gt;In the past it was pretty hard to find managed ways of doing any of those things, and it was fairly common for geeky types with personal internet connections to DIY. If you look at the internet, of, say, 1995, it was kind of designed as a giant interoperable network of nodes which would provide these kind of services to a group of users, and geeky types would essentially act as a node unto themselves – they were a service provider of one, providing services to themselves, and maybe a few friends and family, instead of relying on mail and web hosting services provided by their ISPs, which were inevitably crappy and limited.&lt;/p&gt;
&lt;p&gt;These days it’s much less common, for a good reason: you can almost always get someone else to do it for you, much cheaper and better than you would do it yourself.&lt;/p&gt;
&lt;p&gt;This forms the ‘why you probably shouldn’t do this’ side of the argument. There is just about nothing you can achieve by hosting your own mailserver which Google won’t do much better in exchange for sending you some ads and assimilating your personal information into the future Skynet, or which a service like &lt;a href=&quot;https://www.fastmail.fm&quot;&gt;Fastmail&lt;/a&gt; won’t do much better in exchange for a frankly pretty small cost – a cost which will almost certainly be less than the value of the time and money you’ll invest into doing it yourself. This is not surprising. There are huge, huge economies of scale built into infrastructure provision. Doing it for a user base of 1-5, on a hobbyist basis, is unsurprisingly vastly less efficient than doing it for ten million people on a very very professional basis.&lt;/p&gt;
&lt;p&gt;The other disadvantages to self-hosting really just derive from this fact. You will almost certainly screw up more than a hosted provider will: you will break the server by deploying some dodgy app or an untested update. You will have less capacity (wave goodbye to your self-hosted blog when you get slashdotted, for e.g.) You will almost certainly have less redundancy – I know I don’t have any kind of failover on this webserver. You will almost certainly fail to take adequate backups. All these are boring, menial things which any decent hosted provider will do better just because it’s part of doing a professional job. You won’t because you’re doing this for fun, and those things are not fun.&lt;/p&gt;
&lt;p&gt;Briefly, paid or ‘free’ (ad-supported / personal data supported) hosting services can provide you with almost anything you can host yourself, and do it much more efficiently. So why would you ever want to do it yourself? There are only a few reasons:&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Necessity&lt;/b&gt;. I’m sticking this up at the top to make sure you don’t miss one of the best bits of this lengthy post. There &lt;i&gt;are&lt;/i&gt; some things you can self-host that, to the best of my knowledge, you can’t actually get from a paid provider. The thing I know about is IRC/IM proxying. There’s no hosted provider of this that I know of. There’s a bit of this post down the bottom which explains what this is and, briefly, how to do it. If you’re a heavy user of IRC and/or IM you may well want to do it, because it’s really useful. So if you skip a lot of this post, do read that bit.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Education&lt;/b&gt;. You can learn quite a lot about how the internet (still, more or less) works by doing this stuff yourself. It will certainly teach you things. The internet is a somewhat different beast in practice these days, with so much of it existing inside Google’s and Facebook’s monstrously internally complex domains, but at a certain level it still works _more or less_ how the RFCs of the Internet Past declare it works, and running your own services will teach quite a lot about that.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Control&lt;/b&gt;. Obviously, the higher the level of functionality that you outsource, the less control you have over the implementation. This seems like a really big reason, but it often isn’t. When it comes to mail, a hosted mail provider will almost always provide everything you want. You just don’t &lt;i&gt;need&lt;/i&gt; really fine grained control over the server configuration. You do not need to control the maximum simultaneous connection count to the IMAP server. You want a service that delivers your mail, allows you to send mail, allows you to organize your mail, and filters spam out for you. That’s really pretty much it. Gmail certainly achieves all these things. So do dozens of other services. Again, when it comes to web hosting, often what you want is a WordPress instance. You do not need deep control over the server’s PHP configuration. It’s more likely to irritate you than help you. There are cases where you actually need such control, as opposed to just maybe finding it cool that you have it, but those cases are fairly uncommon.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Fun&lt;/b&gt;. Yeah, it’s worth mentioning this. Some of us have very strange mindsets which find battling obscure MTA configuration to be an interesting way to spend our time. I’ve checked with medical professionals, and this is an incurable condition. Sorry. We just have to live with it. If you’re a fellow sufferer, you may self-host for no reason other than that you enjoy doing it.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Privacy&lt;/b&gt;. This is probably the largest remaining really valid reason. If you use a ‘free’ service for your infrastructure, you should always keep in mind that you almost certainly no longer own your stuff in any practical sense. If you use Gmail, Google pretty much owns your email. You don’t. They can look at it, use it to develop Skynet, send it to the government, and just generally do whatever the hell they like with it. In strict point of fact this is not entirely true – there are &lt;i&gt;some&lt;/i&gt; legal restraints on what they can do with ‘your’ data – but I find it’s an excellent rule of thumb to work from. When dealing with such services I find it pays more or less to assume that everything you put into them will immediately be forwarded to the police and all your worst enemies, and then used to generate large amounts of advertising that will be mailed to you. Doing so avoids you being shocked in future when some of those things actually happen.&lt;/p&gt;
&lt;p&gt;Paid services are a somewhat different ball of wax, in that you are not offering up your data in exchange for some services, but actually &lt;i&gt;paying&lt;/i&gt; for the services. You therefore have a reasonable expectation that you will retain most of the ownership of your data. If you use a decent service provider, the contract you have with them may even possibly bear this out. However, there are still several problems, mostly legal ones. Your hoster can almost certainly be obliged to nuke your services and probably turn over your data to law enforcement under the terms of various bits of legislation, depending on where you are and where they are. Even if they’re not &lt;i&gt;obliged&lt;/i&gt; to, they may well do so if asked by a sufficiently powerful body (like the government, or Universal Studios), on the basis that pissing you off is probably less damaging to them than pissing off the government. If you host your own services, this becomes much more unlikely.&lt;/p&gt;
&lt;p&gt;It remains only to point out that, in brutal point of fact, this is often unlikely to be a consideration, but it &lt;i&gt;is&lt;/i&gt; still worth bearing in mind, and though it’s not a huge issue for me, I do still value the fact that it’d be quite difficult for anyone to kill or forcibly access my mail or private web content.&lt;/p&gt;
&lt;p&gt;In relation to this last point, it’s worth remembering that ‘self-hosting’ vs ‘using a provider’ is more of a spectrum than a binary state. Even those of us who ‘self-host’ are inevitably going to be outsourcing &lt;i&gt;some&lt;/i&gt; stuff to someone. I use No-IP for DNS registration, for instance, so in theory someone could at least knock happyassassin.net offline by leaning on No-IP. I don’t have control over that level of things. But still, No-IP doesn’t own or even have access to any of my actual data, only my DNS records.&lt;/p&gt;
&lt;p&gt;At the general level, even if you decide you want to ‘self-host’, you have a lot of flexibility in terms of what level you want to control yourself and what you want to pay someone else to look after for you. You don’t have to actually buy physical hardware and host everything off an internet connection you personally control. If that’s at, or near, the extreme ‘self-hosting’ end of the spectrum, then moving towards ‘completely managed’, we have:&lt;/p&gt;
&lt;p&gt;* Stick your own hardware in a co-lo (i.e. you outsource the physical internet connection)&lt;br /&gt;
* Use a service like &lt;a href=&quot;http://www.slicehost.com/&quot;&gt;Slicehost&lt;/a&gt; where you get full root access to a bare virtual server (i.e. you outsource the physical connection and the ‘hardware’ provision)&lt;br /&gt;
* Use a service which gives you access somewhere higher up the stack&lt;/p&gt;
&lt;p&gt;Everything else is a variant on that last one. It really only matters what level you get access at. Maybe you get a pre-set web server instance in which you can run whatever webapps you want. So-called ‘PaaS clouds’, like Openshift, are really just this kind of managed hosting, in a way; ‘IaaS clouds’ are pretty much like Slicehost. Maybe you just get a managed instance of some specific app or service, like WordPress (or ‘email’). It comes down to how much control and privacy you need, with the trade-off for more control and privacy usally being more expense and complexity.&lt;/p&gt;
&lt;p&gt;So, there’s the theoretical for-and-against of self-hosting. It comes down to the broad conclusion that you probably don’t want to do it, and even if you do, you’re probably better off going for something in the middle of the spectrum – Slicehost, or one of the new public clouds, or something like that – than really doing (almost) everything yourself.&lt;/p&gt;
&lt;p&gt;Assuming you self-host, or are going to start trying, despite all the above: here’s some notes on actually doing it.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Domain&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Getting a domain of your own is pretty much the Point 0 of self-hosting. It’s also, fortunately, pretty simple. You can find a lot of confusing information on the topic but essentially it boils down to: buy a domain name and then set up the information that says ‘this domain is associated with this IP address’ – DNS records. It is much simpler to do these two things together, through one service. I use No-IP – their prices are reasonable and I’ve had no problem with their service. There are many other providers. It’s really as simple as picking a domain – like my happyassassin.net – paying your fee, and then filling out a little form which says ‘www.happyassassin.net should point to IP address xxx.xxx.xxx.xxx, mail.happyassassin.net should point to IP address xxx.xxx.xxx.xxx’, and so on. If you’re going to host mail for your domain, you’d also need an MX record, which says ‘mail for any address at happyassassin.net goes to IP address xxx.xxx.xxx.xxx’. And that’s really pretty much it. If you’re really self-hosting, as in you own the machines and they’re hanging off your own internet connection, all those IP addresses should be your own IP address. You’re going to want a static IP, for that.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Mail&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Mail is the most complex thing to self-host and probably the least sensible, as hosted mail providers really do have it all figured out. I’m not going to turn this into a comprehensive ‘how to host your own mail’ walkthrough, because there are many of those already, and if you’re going to do it, what you should do is get a hold of a good guide and follow it carefully. But I do have one thing to contribute. I find it helps to bear in mind there are broadly three functions of a mail server, at least in my mental model, and you can pretty much treat them separately:&lt;/p&gt;
&lt;p&gt;1: Retrieve messages from your existing mail accounts and serve them back out via IMAP for you to read on your client machines&lt;/p&gt;
&lt;p&gt;I do this using fetchmail to actually retrieve the mail, procmail to sort it into folders and spam-test it via spamassassin, and dovecot to serve it back out via IMAP. I would strongly recommend the use of dovecot, it really is the best IMAP server around. It’s efficient, actively developed, highly standard-compliant, and supports things like IDLE very well. Other IMAP servers generally fail at at least one of those things. The retrieving and serving out are kind of different functions, but it makes no sense to do one without the other, really. There’s no point aggregating the mail from your various accounts in one place without &lt;b&gt;also&lt;/b&gt; setting up a convenient interface – i.e. a server – for you to access it with.&lt;/p&gt;
&lt;p&gt;2: Act as an SMTP server for your outgoing mail&lt;/p&gt;
&lt;p&gt;When you want to send mail you send it through an SMTP server, right. Most people know that. Running your own SMTP server, for your personal use, has the advantage that you don’t have to keep changing to an SMTP server that’s accessible from the network you’re currently on. (Though, of course, if you just use Gmail, you can send outgoing mail from anything…)&lt;/p&gt;
&lt;p&gt;3: Accept incoming mail from anyone to mail addresses at a domain you own&lt;/p&gt;
&lt;p&gt;This is the most complicated case, probably. The fact that I’m set up to do this is why you can mail me at happyassassin.net, my own domain. When you send a mail there, your mail provider sees that mail to happyassassin.net is supposed to go to an IP address I own, and sends it there. That IP address actually is my own IP address, and connections to port 25 on that IP address are forwarded by my router to my mail server, which accepts the mail and sticks it into my mail folders just like fetchmail/procmail do for the email addresses I don’t administer myself.&lt;/p&gt;
&lt;p&gt;I’m not going to explain in detail how to achieve all the above, but the key point is to remember these functions are distinct – you can do any one of them without doing the others. Where it’s easy to get confused is that you usually would use the same application, the same &lt;b&gt;process&lt;/b&gt;, to do functions 2 and 3. I use postfix, because it’s marginally less insane than sendmail. But it’s best to think of them as two separate operations, and do one and then the other. If you think in terms of ‘how do I set up postfix’, you’re likely to get confused – finding guides for function 3 when what you really wanted was function 2. I know I did.&lt;/p&gt;
&lt;p&gt;Another little note on that topic: the sketch of happyassassin.net mail I gave is, strictly speaking, incorrect. Your mail provider doesn’t really see that mail for happyassassin.net should go to my IP address: it sees that mail for happyassassin.net should go to No-IP. Why? Well, because I host my servers off my home internet connection, and that has port 25 blocked. Most home internet connections do. The way email actually works, mail for a domain is &lt;i&gt;always&lt;/i&gt; initially delivered on port 25. The DNS record which says ‘mail for happyassassin.net goes to IP XXX’ cannot say ‘IP XXX on port 26′. It just says ‘IP XXX’. The port is hard-coded in the standards. So if you have a connection on which port 25 is blocked, you really can’t be the server that initially receives mail for your own domain. No-IP provide a neat service to get around this, called &lt;a href=&quot;http://www.no-ip.com/services/managed_mail/inbound_port_25_unblock.html&quot;&gt;mail reflector&lt;/a&gt;. Essentially you set up your DNS records so that mail for your domain goes to No-IP’s server, and you tell No-IP the actual port of your server. Then No-IP’s server simply forwards mail straight through to your server. They don’t store it or have any access to it, except in the case that your server is down – they will keep it on theirs until your server comes back up, then forward it on. It’s a neat way around the port 25 problem, which costs $40 a year – at which price you could instead have fastmail handle &lt;i&gt;your entire mail setup&lt;/i&gt;, including your own domain’s mail. Again, like I said, self-hosting is almost never actually economically sensible.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Web&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Setting up a web server, at the 10,000 feet scale, isn’t very difficult. Basically, you do ‘yum install httpd’ (or equivalent), and you’re done. You already registered www.mydomain.com and pointed it to your server’s IP address. Now you set your router to forward traffic on port 80 to the appropriate box, and you’re done. People going to www.mydomain.com will see a ‘hello world!’ post that’s the default homepage for Apache. Oh, and you do want to use Apache. There are alternatives, but they’re rarely what you want for self-hosting, and you will find much more help with configuring Apache than configuring anything else.&lt;/p&gt;
&lt;p&gt;These days, you’re likely not going to be faffing around creating static content and dumping it in /var/www/html on your server. You really want to run webapps – you probably want to run a WordPress blog, for instance. Essentially your web server is providing useful services for you.&lt;/p&gt;
&lt;p&gt;The 10,000 foot overview of how to install web apps is similarly simple: yum them. The most common ones are packaged. WordPress is: you can just do ‘yum install wordpress’. There are guides for the finicky bits of configuration.&lt;/p&gt;
&lt;p&gt;There’s one stumbling block you’ll hit for most webapps, so I’ll mention it quickly: they almost all need a database. Web apps rarely store things as files on your local disk, because that’s silly. They want access to an SQL database instead, and they’ll store their configuration, your blog posts, and whatever else in there. You almost certainly want to use MySQL for this. MySQL will be packaged in any sane distro. Once you install it, it will probably be configured with no root password and a guest account. You will want to set a root password and destroy the guest account. There are guides to how to do this in the excellent &lt;a href=&quot;http://dev.mysql.com/doc/refman/5.6/en/index.html&quot;&gt;MySQL&lt;/a&gt; documentation. Then, for each webapp you install, you’ll likely create a new database specially for that webapp, with a user account specially for that webapp which has access to the database. You can do this with a single one line command. The webapp will ask for a MySQL username and password as part of its setup process; feed it the username you created especially for it. That way, no webapp can access another’s data; only root will have access to all the databases, and you should only use the root account for any manual poking of the database you personally have to do. Never give the root password to any webapp (or any other person). The most popular webapps, like WordPress, tend to have the MySQL setup well documented, and you can apply the documentation to any other webapp which just needs a simple MySQL config to work. Which is most of them.&lt;/p&gt;
&lt;p&gt;That’s web serving. Here are some of the webapps I run on my server. You may not have known about some, and find ‘em useful.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://wordpress.org&quot;&gt;WordPress&lt;/a&gt;. Well, everyone knows about WordPress. It’s a blogging platform. If you want to have a blog on your server, you’re probably going to want to run WordPress. It’s well documented, easy to set up, hugely popular (and hence well supported), does everything you need from a blog, and has a bewildering array of plugins. Of course, if all you want is to have a blog, it’s almost certainly a better idea just to get it hosted by wordpress.com than faff around with setting up your own web server.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.happyassassin.net/roundcubemail/&quot;&gt;Roundcubemail&lt;/a&gt;. This is a webmail front end. Combined with my mailserver, it’s the last puzzle piece in extremely painfully replicating the functionality of Gmail – it gives me a pretty snazzy web front end to my mail, for the rare cases where I’m on someone else’s system and don’t want to set up an IMAP client, or something. It also came in quite handy at one FUDCon when the port blocking was so tight that IMAP clients didn’t actually work. Roundcube is a very very good webmail app, it has all the functionality of a desktop mail client, is pretty fast, and has a very snazzy interface. The old-school choice, &lt;a href=&quot;http://squirrelmail.org/&quot;&gt;Squirrelmail&lt;/a&gt;, is about as functional but nowhere near as pretty.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://tt-rss.org/redmine/&quot;&gt;tt-rss&lt;/a&gt; is a news reader webapp. Running it is like hosting your own Google Reader, essentially. It’s a lot nicer than just running separate news reader clients on each of your client machines, because it means your read/unread state is always in sync. But of course, you could always just…use Google Reader. It’s not like knowledge of what RSS feeds you like is likely to be astonishingly private information.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.mytinytodo.net/&quot;&gt;MyTinyToDo&lt;/a&gt; is a very simple todo list webapp. I tried for years to find a big stonking egroupware suite – contacts, calendaring, and tasks, essentially – which would cover those things and sync well with my desktop clients and my phone. I never quite did. But mytinytodo handles one piece of the equation – tasks – just fine. I haven’t bothered trying to sync it with desktop clients / phone because you can just use the web interface very easily on any of those devices, it renders nicely on phones. Of course, you could always just use a hosted service like Remember The Milk.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://owncloud.org/&quot;&gt;OwnCloud&lt;/a&gt; is a ‘personal cloud’ server, or to avoid the buzzwordiness, it’s basically just a file server webapp. You point it at a place where files live and it makes them available through a web frontend and also via WebDAV (which lets you mount them as a shared drive on most OSes). It pretty much just does that, but it does it quite well and easily. At FUDCon, &lt;a href=&quot;https://fedoraproject.org/wiki/User:Kanarip&quot;&gt;Jeroen&lt;/a&gt; gave me a long list of things that are wrong with it, and Jeroen is massively smarter than me so I’m sure he’s right, but all I know is it does what I ask it to. It’s handy for, say, storing your (encrypted!) password database, or a document you want accessible from anywhere. I store a lot of my notes in it. Your hosted equivalent would be, say, Dropbox.&lt;/p&gt;
&lt;p&gt;Finally (man, 4000 words? Anyone still awake?) we come to the one thing I host myself, find useful, and could not find a hosted-provider equivalent of: IRC and IM proxying.&lt;/p&gt;
&lt;p&gt;This achieves for IRC and IM what using a mail server achieves for mail, or using a web feed reader achives for news: you can use many clients without them conflicting, and with the state preserved between them. How it works is essentially that you run an app which acts as both an IRC client and an IRC server. It connects to all your IRC servers, and then on your client machines, instead of connecting directly to Freenode or EFnet, you connect &lt;i&gt;to the proxy&lt;/i&gt;, which also acts as an IRC server. It then forwards all the traffic to you.&lt;/p&gt;
&lt;p&gt;What does this get you? Well, you can sign in from six different clients at once – and instead of each looking to the rest of the world like a separate user, they all act as ‘you’. You can have part of a conversation from your laptop, part from your phone, and part from your desktop, and the outside world won’t know the difference.&lt;/p&gt;
&lt;p&gt;Also, as the proxy’s always logged in, you can disconnect all your client machines, and the proxy will keep storing conversations, including any private messages. Then the next time you connect a client, you’ll get a log of all the channel traffic that happened while you were away, and any PMs you got sent will show up. It’s very handy.&lt;/p&gt;
&lt;p&gt;Finally it’ll give you a handy central store of logs. It’s just a much better way to IRC.&lt;/p&gt;
&lt;p&gt;I use &lt;a href=&quot;http://bip.milkypond.org/&quot;&gt;Bip&lt;/a&gt; as an IRC proxy. It’s very easy to set up – really, you just install it and give it a list of IRC networks and channels you use, and tell it your nickname. Then you run it, and set up your IRC clients to connect to it, not directly to the networks. And you’re done. It’s probably the easiest thing you can self-host, as well as being the most useful.&lt;/p&gt;
&lt;p&gt;On the same machine I run &lt;a href=&quot;http://bip.milkypond.org/&quot;&gt;Bitlbee&lt;/a&gt;, which is an IM proxy – it connects out to MSN, Jabber, ICQ, AIM and so on, and also acts as an IRC server, effectively turning IM traffic into IRC traffic. I then have Bip use my Bitlbee server, so when I’m using MSN, my desktop is connected to my Bip instance, which is connected to my Bitlbee instance, which is connected to MSN. Fun, huh? Bitlbee can also actually connect to Twitter and Identi.ca, effectively turning your ‘social network’ traffic into IRC. You can tweet just by typing a message into your IRC client, and tweets from people you follow pop up as IRC messages. It’s a fun interface if you’re used to using IRC.&lt;/p&gt;
&lt;p&gt;So…that’s my self-hosting story. Why you probably shouldn’t do it, and some things you might want to run if you do. Hope it’s helpful!&lt;/p&gt;</description>
	<pubDate>Thu, 19 Jan 2012 03:15:09 +0000</pubDate>
</item>
<item>
	<title>Sergio Rafael Lemke: Clementine weird analyser</title>
	<guid isPermaLink="true">http://warever.info/sr/blog/?p=478</guid>
	<link>http://warever.info/sr/blog/?p=478</link>
	<description>&lt;p&gt;Just pushed an updated Clementine-1.0 to Mandriva 2011 Main/backports, while testing i noticed this weird analyser:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/sergiorafael/6720591807/sizes/l/in/photostream/&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone&quot; height=&quot;313&quot; src=&quot;http://farm8.staticflickr.com/7166/6720591807_e392a0caf0.jpg&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Do not use it after lunch!&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;</description>
	<pubDate>Wed, 18 Jan 2012 15:58:54 +0000</pubDate>
</item>
<item>
	<title>Mandriva Team: The future</title>
	<guid isPermaLink="false">http://blog.mandriva.com/en/?p=1709</guid>
	<link>http://blog.mandriva.com/en/2012/01/17/the-future/</link>
	<description>&lt;p&gt;We would like to inform that a proposal to acquire Mandriva has been submitted by an external entity. As required in such a situation, the major shareholders have been asked to determine their position. As per today, Mandriva has not received every determination in written form and will, in consequence, wait until January, 23rd to decide on the future of the company.&lt;/p&gt;</description>
	<pubDate>Tue, 17 Jan 2012 22:01:55 +0000</pubDate>
</item>
<item>
	<title>Équipe Mandriva: Le futur</title>
	<guid isPermaLink="false">http://blog.mandriva.com/fr/?p=1147</guid>
	<link>http://blog.mandriva.com/fr/2012/01/17/le-futur/</link>
	<description>&lt;p&gt;Ces quelques mots pour vous informer que Mandriva a fait l’objet d’une offre de rachat par un tiers. Comme une telle offre est sujette à l’acceptation des actionnaires de référence, et que ceux-ci ne se sont pas tous déterminés par écrit pour l’instant, il a été décidé d’attendre jusqu’au 23 janvier pour choisir l’orientation future de la société.&lt;/p&gt;</description>
	<pubDate>Tue, 17 Jan 2012 21:46:52 +0000</pubDate>
</item>
<item>
	<title>Luis Menina: Feuilles de personnages Star Wars D6</title>
	<guid isPermaLink="false">urn:md5:442c0243dd4c494aa1eae1a75cd84e2f</guid>
	<link>http://blog.freeside.fr/post/2012/01/17/Fiches-de-personnages-Star-Wars-D6</link>
	<description>&lt;p&gt;Cela fait un peu plus de deux ans que je me suis mis au &lt;a href=&quot;http://fr.wikipedia.org/wiki/Star_Wars_D6&quot;&gt;jeu de rôle Star Wars&lt;/a&gt;, un peu
par hasard. En cherchant des idées de sorties sur le net, je me suis rendu
compte qu'un maître de jeu (celui qui anime les parties de jeu de rôle)
habitait à une rue de chez moi. Et bon, il fallait bien que je complète la
panoplie du Geek :-p. Depuis le virus m'a contaminé...&lt;br /&gt;
&lt;br /&gt;
Dans un jeu de rôle, pour représenter les différentes caractéristiques de son
personnage, on utilise une feuille de personnage. Sur cette fiche sont
regroupés ses attributs (dans Star Wars: dextérité, savoir, mécanique,
perception, vigueur, technique) et les compétences qui découlent de ces
attributs. Par exemple, la compétence &quot;Sabre Laser&quot; qui permet de manier un
sabre laser est une compétence de dextérité.&lt;br /&gt;
&lt;br /&gt;
J'ai utilisé plusieurs fiches en 2 ans. J'ai commencé avec une photocopie du
modèle de personnage que j'avais choisi, un &quot;Jedi Raté&quot;. Ce modèle est fourni
avec le livre de règles. J'ai ensuite évolué vers celui de Robin Defives (merci
à lui) que vous pouvez trouver sur &lt;a href=&quot;http://www.scenariotheque.org/Document/info_doc.php?id_doc=2785%20&quot;&gt;scenariotheque.org&lt;/a&gt;.
Il a mis deux fiches à disposition : une fiche de personnage, une pour un
vaisseau (utile pour incarner un pilote).&lt;br /&gt;
&lt;br /&gt;
Étant gêné par quelques limitations, j'ai il y a quelques temps commencé à
faire évoluer ma fiche de personnage. J'ai par exemple modifié la fiche pour en
faciliter la lecture, notamment en optant pour un meilleur alignement des
différentes zones. J'ai aussi regroupé les zones qui avaient un lien, comme
celles utilisée lorsque l'on est touché lors d'un combat: &quot;vigueur&quot; et
&quot;protection&quot; (pour vérifier si le coup/tir reçu blesse notre personnage), et
&quot;santé&quot;, à modifier lorsque l'on est blessé.&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://blog.freeside.fr/public/star_wars/star_wars_-_feuille_perso_v2.pdf&quot;&gt;Feuille de
personnage Star Wars D6 (pdf)&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Incarnant un &quot;Jedi raté&quot;, je trouvais aussi les zones permettant d'indiquer les
pouvoirs de la Force du personnage vraiment trop limitées. J'ai donc opté pour
une page à part (ce qui m'a permis de me perfectionner dans l'utilisation d'
&lt;a href=&quot;http://inkscape.org/?lang=fr&quot;&gt;Inkscape&lt;/a&gt; par une nuit d'insomnie).
La présentation en diagramme plutôt qu'en texte permet de repérer plus
facilement les dépendances entre chaque pouvoir, et de quelle capacité de la
Force elles dépendent (Contrôle, Sens, Altération). Les pouvoirs représentés
sont ceux de la seconde édition:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://blog.freeside.fr/public/star_wars/star_wars_-_pouvoirs_de_la_force_v2.pdf&quot;&gt;Diagramme
des pouvoirs de la Force (pdf)&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Il y a également la fiche des caractéristiques du vaisseau que vous pilotez.
N'ayant pas orienté (pour l'instant) mon personnage vers le pilotage, je n'ai
pas modifié celle de Robin:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.scenariotheque.org/Fichiers/fdp/pdf/2785_FdP_SW%20_D6%20_Verso.pdf&quot;&gt;
Feuille de vaisseau Star Wars D6 (pdf)&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Selon le personnage que vous incarnez (sensible ou non à la Force, pilote ou
non) vous pourrez vous faire une fiche recto-verso sur mesure avec un site de
fusion de PDF comme &lt;a href=&quot;http://www.pdfmerger.org&quot;&gt;PDF Merger&lt;/a&gt;. Bonnes
aventures ;-) !&lt;/p&gt;</description>
	<pubDate>Tue, 17 Jan 2012 12:59:00 +0000</pubDate>
</item>
<item>
	<title>Shlomi Fish: Freecell Solver 3.10.0 was Released</title>
	<guid isPermaLink="false">tag:blogger.com,1999:blog-96099636168698788.post-4706598002123829732</guid>
	<link>http://fc-solve.blogspot.com/2012/01/freecell-solver-3100-was-released.html</link>
	<description>&lt;p&gt;
&lt;a href=&quot;http://fc-solve.berlios.de/&quot;&gt;Freecell Solver&lt;/a&gt; version 3.10.0
has been released. It is available in the form of a source tarball from
&lt;a href=&quot;http://fc-solve.berlios.de/download.html&quot;&gt;the
    download page&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
This release fixes two bugs - one with the &lt;tt&gt;--max-iters&lt;/tt&gt; affecting
only the last instance, and one with reading foundations with &lt;tt&gt;0&lt;/tt&gt;,
and implements many small optimisations and cleanups. It also adds some
experimental code with the so-called &lt;tt&gt;delta-states&lt;/tt&gt;, where states
are compactly encoded based on the original state. This functionality is not
available in the main solver yet, but it powers the experimental
on-disk-key/value-databases-based solver, which end up not scaling very well
during testing.
&lt;/p&gt;

&lt;p&gt;
Enjoy!
&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/96099636168698788-4706598002123829732?l=fc-solve.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Sun, 15 Jan 2012 19:46:00 +0000</pubDate>
	<author>shlomif@iglu.org.il (Shlomi Fish ()</author>
</item>
<item>
	<title>Sergio Rafael Lemke: Maybe i should release such a think for Mandriva ?</title>
	<guid isPermaLink="true">http://warever.info/sr/blog/?p=469</guid>
	<link>http://warever.info/sr/blog/?p=469</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.flickr.com/photos/sergiorafael/6680528623/lightbox/&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;alignnone&quot; height=&quot;400&quot; src=&quot;http://farm8.staticflickr.com/7013/6680528623_a25605f405_z.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Maybe first i should put this code on github?&lt;/p&gt;
&lt;p&gt;The code is now on github:  &lt;a href=&quot;https://github.com/bedi1982/Get-Stuff&quot;&gt;https://github.com/bedi1982/Get-Stuff&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Fri, 13 Jan 2012 14:46:05 +0000</pubDate>
</item>
<item>
	<title>Bruno Cornec: In memoriam Alain Recordier</title>
	<guid isPermaLink="false">http://brunocornec.wordpress.com/?p=709</guid>
	<link>http://brunocornec.wordpress.com/2012/01/13/in-memoriam-alain-recordier/</link>
	<description>&lt;p&gt;Décidément, mes rares articles en français sur la musique servent à communiquer autour de tristes nouvelles. J’ai appris par l’association &lt;a href=&quot;http://exultate.hautetfort.com/&quot;&gt;Exultate &lt;/a&gt; la &lt;a href=&quot;http://www.avis-de-deces.net/d_PROVENCE-ALPES-COTE-DAZUR_84_VAUCLUSE.html&quot;&gt;disparition&lt;/a&gt; d’Alain Recordier, tromboniste et sacqueboutier.&lt;/p&gt;
&lt;div class=&quot;wp-caption alignnone&quot; style=&quot;width: 210px;&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;200&quot; src=&quot;http://farm8.staticflickr.com/7166/6687175673_07f430c7f0_b.jpg&quot; title=&quot;Alain Recordier à la sacqueboute en 2010&quot; width=&quot;320&quot; /&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Alain Recordier à la sacqueboute en 2010&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Ce fin connaisseur de la musique ancienne avait crée en 1986 l’ensemble &lt;a href=&quot;http://www.musicque-de-joye.com&quot;&gt;Musicque de Joye&lt;/a&gt; (du nom d’un recueil publié vers 1550 à Lyon par Jacques Moderne). Il avait aussi été membre de l’ensemble de cuivres Da Camera, du quintette Arban, de l’ensemble Guillaume de Machaut et était trombone solo de l’orchestre d’Orléans.&lt;/p&gt;
&lt;p&gt;Il avait participé à de récentes académies de musique sacrée de la Renaissance d’Etampes, dirigées par &lt;a href=&quot;http://fr.wikipedia.org/wiki/Jean_Belliard&quot;&gt;Jean Belliard&lt;/a&gt;&lt;/p&gt;
&lt;div class=&quot;wp-caption alignnone&quot; style=&quot;width: 210px;&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;200&quot; src=&quot;http://farm8.staticflickr.com/7157/6687185349_4a4d9c442a_b.jpg&quot; title=&quot;Alain Recordier lors de l'académie de la Renaissance 2007&quot; width=&quot;320&quot; /&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Alain Recordier lors de l'académie de la Renaissance 2007&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Comme l’a si fort bien dit le mail que j’ai reçu: “Que de beaux concerts avons nous donnés ensemble ! Sa discrétion et sa grande gentillesse faisaient l’unanimité.” &lt;/p&gt;
&lt;p&gt;Alain n’avait pas besoin d’épater la galerie. Il vivait sa musique intensément, donnant un air chaloupé aux canzons de Gabrieli avec énergie et velouté. Sa connaissance transparaissait dans les remarques qu’il sonnait à ses partenaires lors des répétitions avec son accent méditerranéen. Un court exemple pour mettre tout le monde d’accord, et on repartait dans la musique.&lt;/p&gt;
&lt;p&gt;J’espère qu’aujourd’hui il joue avec tous ses pairs dans l’orchestre céleste ! Il me restera la mémoire auditive de quelques enregistrements que nous avons faits lors des académies, où je retrouverai la qualité de son son. Et le souvenir d’un musicien humble au service de son art.&lt;/p&gt;
&lt;p&gt;(Images personnelles hébergées sur &lt;a href=&quot;http://flickr.com&quot;&gt;flickr.com&lt;/a&gt;)&lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://brunocornec.wordpress.com/category/musique/&quot;&gt;Musique&lt;/a&gt; Tagged: &lt;a href=&quot;http://brunocornec.wordpress.com/tag/belliard/&quot;&gt;Belliard&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/francais/&quot;&gt;français&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/music/&quot;&gt;Music&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/brunocornec.wordpress.com/709/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/brunocornec.wordpress.com/709/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/brunocornec.wordpress.com/709/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/brunocornec.wordpress.com/709/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/brunocornec.wordpress.com/709/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/brunocornec.wordpress.com/709/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/brunocornec.wordpress.com/709/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/brunocornec.wordpress.com/709/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/brunocornec.wordpress.com/709/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/brunocornec.wordpress.com/709/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/brunocornec.wordpress.com/709/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/brunocornec.wordpress.com/709/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/brunocornec.wordpress.com/709/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/brunocornec.wordpress.com/709/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=brunocornec.wordpress.com&amp;amp;blog=5437580&amp;amp;post=709&amp;amp;subd=brunocornec&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 13 Jan 2012 01:42:14 +0000</pubDate>
</item>
<item>
	<title>Pascal Terjan: Gtk client for HP TopTools P1218A card</title>
	<guid isPermaLink="true">http://fasmz.org/~pterjan/blog/?date=20120110#p01</guid>
	<link>http://fasmz.org/~pterjan/blog/?date=20120110#p01</link>
	<description>&lt;p&gt;From December 19 to December 28 zarb.org main server was down. This server host(s|ed) many things including this blog, &lt;a href=&quot;http://mageia.org/&quot;&gt;Mageia website&lt;/a&gt;, PLF, ... The reason why it took so long is that the server is in the south of France, kindly hosted by &lt;a href=&quot;http://www.lost-oasis.fr/&quot;&gt;Lost Oasis&lt;/a&gt; and we have no one nearby to physically access it, and in this case we had lost our main raid array.&lt;/p&gt;
&lt;p&gt;This server (kindly donated by HP almost 10 years ago) has a remote administration card (P1218A) but it is not really usable for anything except rebooting the machine. The remote console more or less works with some of the java versions from sun, but most of the time it only displays the top third of the screen, until next refresh when it goes black, and misses many keystrokes. This made it unsuitable for accessing the RAID BIOS and finding the problem.&lt;/p&gt;
&lt;p&gt;After about a week, for some unknown reason (I could have done it many times over the last 10 years), I thought of looking at the communications between the applet and the management card. Everything was clear text and very simple. The next days I wrote a ruby-gtk client for the card, accessed the BIOS, found that the 4 disks had been marked has failed without errors and were correctly syncronized, and put them back online.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Login&lt;/b&gt;&lt;br /&gt;The first (and longest) part was to find how to login and get the session cookie. The exchange looks like:&lt;br /&gt;&lt;tt&gt;GET /cgi/challenge HTTP/1.1&lt;/tt&gt;&lt;br /&gt;&lt;tt&gt;&amp;lt;?xml version='1.0'?&amp;gt;&amp;lt;?RMCXML version='1.0'?&amp;gt;&amp;lt;RMCLOGIN&amp;gt;&amp;lt;CHALLENGE&amp;gt;DJRhNVfOWfuB8fS/6PFazg==&amp;lt;/CHALLENGE&amp;gt;&amp;lt;RC&amp;gt;0x0&amp;lt;/RC&amp;gt;&amp;lt;/RMCLOGIN&amp;gt;&lt;/tt&gt;&lt;br /&gt;&lt;tt&gt;GET /cgi/login?user=FOO&amp;amp;hash=UtPRDzFS36s0jJBgTmtS4JDR HTTP/1.1&lt;/tt&gt;&lt;/p&gt;
&lt;p&gt;Challenge was obviously 16 bytes of data base64 encoded. Response was called hash and was 18 bytes whatever the password is. Given that it was written more than 10 years ago, I supposed it would be md5, even if it only gives 16 bytes.&lt;/p&gt;
&lt;p&gt;I then wrote a small ruby application trying various combinations (md5(challenge + password), md5(xor(callenge,password)), xor(challenge,md5(password)), ...) and found that
md5(xor(challenge,md5(password))) was giving me the correct first 16 bytes.&lt;/p&gt;
&lt;p&gt;I then used &lt;a href=&quot;http://www.lammertbies.nl/comm/info/crc-calculation.html&quot;&gt;an online CRC calculator&lt;/a&gt; to find that the remaining 2 bytes are &quot;CRC-CCITT (XModem)&quot;.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Console&lt;/b&gt;&lt;br /&gt;The other big part was the remote console.
&lt;/p&gt;&lt;p&gt;Getting the current screen content is quite easy, it's a &lt;tt&gt;GET&lt;/tt&gt; on &lt;tt&gt;/cgi/scrtxtdump&lt;/tt&gt; (with an optional &lt;tt&gt;force=1&lt;/tt&gt; parameter).&lt;/p&gt;
&lt;p&gt;In my initial tests there was 0x10 between each character so I just filtered them out. I found later that it actually gives attributes for the character (bold, color, ...) and now support the ones I have seen so far.&lt;/p&gt;
&lt;p&gt;Sending a keypress is quite easy too, it's a &lt;tt&gt;POST&lt;/tt&gt; to &lt;tt&gt;/cgi/bin&lt;/tt&gt; with data being &lt;tt&gt;&amp;lt;RMCSEQ&amp;gt;&amp;lt;REQ CMD=&quot;keybsend&quot;&amp;gt;&amp;lt;KEYS&amp;gt;&lt;i&gt;space separated scancodes&lt;/i&gt;&amp;lt;/KEYS&amp;gt;&amp;lt;/REQ&amp;gt;&amp;lt;/RMCSEQ&amp;gt;&lt;/tt&gt;.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div align=&quot;center&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/cmoi/6272506685/&quot; title=&quot;IMG_1683 by pterjan, on Flickr&quot;&gt;&lt;img alt=&quot;IMG_1683&quot; height=&quot;240&quot; src=&quot;http://farm7.staticflickr.com/6048/6272506685_6915a5bbcb_m.jpg&quot; width=&quot;160&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;The result&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;The code is now &lt;a href=&quot;http://code.google.com/p/ttgtkclient/&quot;&gt;online&lt;/a&gt;, still very ugly, but hopeful helpful :)&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div align=&quot;center&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/cmoi/6587046793/&quot; title=&quot;BIOS before I handle colors&quot;&gt;&lt;img alt=&quot;BIOS before I handle colors&quot; height=&quot;358&quot; src=&quot;http://farm8.staticflickr.com/7144/6587046793_668626481a.jpg&quot; width=&quot;500&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 10 Jan 2012 22:55:12 +0000</pubDate>
</item>
<item>
	<title>Jerome Soyer: Lesbian Bondage Fiasco (Original Mix)</title>
	<guid isPermaLink="false">http://blog.jeromesoyer.fr/?post_type=audio&amp;p=2415</guid>
	<link>http://feedproxy.google.com/~r/saispo/~3/getXdhHC6To/lesbian-bondage-fiasco-original-mix</link>
	<description>&lt;p&gt;&lt;img alt=&quot;artworks-000002030774-erqrm2-crop&quot; class=&quot;attachment-medium wp-post-image&quot; height=&quot;300&quot; src=&quot;http://blog.jeromesoyer.fr/wp-content/uploads/2012/01/artworks-000002030774-erqrm2-crop-300x300.jpg&quot; title=&quot;artworks-000002030774-erqrm2-crop&quot; width=&quot;300&quot; /&gt;&lt;/p&gt;&lt;img height=&quot;1&quot; src=&quot;http://feeds.feedburner.com/~r/saispo/~4/getXdhHC6To&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Tue, 10 Jan 2012 21:12:39 +0000</pubDate>
</item>
<item>
	<title>Sergio Rafael Lemke: skype installer for Mandriva 2011</title>
	<guid isPermaLink="true">http://warever.info/sr/blog/?p=455</guid>
	<link>http://warever.info/sr/blog/?p=455</link>
	<description>&lt;div class=&quot;wp_syntax&quot;&gt;&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;c&quot; style=&quot;font-family: monospace;&quot;&gt;&lt;span style=&quot;color: #339933;&quot;&gt;#include &amp;lt;stdio.h&amp;gt;&lt;/span&gt;
&lt;span style=&quot;color: #339933;&quot;&gt;#include &amp;lt;unistd.h&amp;gt;&lt;/span&gt;
&lt;span style=&quot;color: #339933;&quot;&gt;#include &amp;lt;sys/types.h&amp;gt;&lt;/span&gt;
&lt;span style=&quot;color: #339933;&quot;&gt;#include &amp;lt;dirent.h&amp;gt;&lt;/span&gt;
&lt;span style=&quot;color: #339933;&quot;&gt;#include &amp;lt;sys/stat.h&amp;gt;&lt;/span&gt;
&lt;span style=&quot;color: #339933;&quot;&gt;#include &amp;lt;sys/utsname.h&amp;gt;&lt;/span&gt;
&lt;span style=&quot;color: #339933;&quot;&gt;#include &amp;lt;libgen.h&amp;gt;&lt;/span&gt;
 
&lt;span style=&quot;color: #339933;&quot;&gt;#define VERSION &quot;2.2.0.35&quot;&lt;/span&gt;
 
 
&lt;span style=&quot;color: #993333;&quot;&gt;int&lt;/span&gt; recursiveDelete&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #993333;&quot;&gt;char&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;*&lt;/span&gt; dirname&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
	DIR &lt;span style=&quot;color: #339933;&quot;&gt;*&lt;/span&gt;dp&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	&lt;span style=&quot;color: #993333;&quot;&gt;struct&lt;/span&gt; dirent &lt;span style=&quot;color: #339933;&quot;&gt;*&lt;/span&gt;ep&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
	&lt;span style=&quot;color: #993333;&quot;&gt;char&lt;/span&gt; abs_filename&lt;span style=&quot;color: #009900;&quot;&gt;[&lt;/span&gt;FILENAME_MAX&lt;span style=&quot;color: #009900;&quot;&gt;]&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
	dp &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; opendir &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;dirname&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;dp &lt;span style=&quot;color: #339933;&quot;&gt;!=&lt;/span&gt; NULL&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;
	&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
		&lt;span style=&quot;color: #b1b100;&quot;&gt;while&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;ep &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; readdir &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;dp&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
			&lt;span style=&quot;color: #993333;&quot;&gt;struct&lt;/span&gt; stat stFileInfo&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
			snprintf&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;abs_filename&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; FILENAME_MAX&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;%s/%s&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; dirname&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; ep&lt;span style=&quot;color: #339933;&quot;&gt;-&amp;gt;&lt;/span&gt;d_name&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
			&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;lstat&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;abs_filename&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;&amp;amp;&lt;/span&gt;stFileInfo&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;
				perror &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt; abs_filename &lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
			&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;S_ISDIR&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;stFileInfo.&lt;span style=&quot;color: #202020;&quot;&gt;st_mode&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
				&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;strcmp&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;ep&lt;span style=&quot;color: #339933;&quot;&gt;-&amp;gt;&lt;/span&gt;d_name&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;.&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; 
						strcmp&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;ep&lt;span style=&quot;color: #339933;&quot;&gt;-&amp;gt;&lt;/span&gt;d_name&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;..&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
					&lt;span style=&quot;color: #000066;&quot;&gt;printf&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;%s directory&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;abs_filename&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
					recursiveDelete&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;abs_filename&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
				&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
			&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
				&lt;span style=&quot;color: #000066;&quot;&gt;printf&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;%s file&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;abs_filename&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
				remove&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;abs_filename&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
			&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
		&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
		&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #993333;&quot;&gt;void&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; closedir &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;dp&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
	&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;
		perror &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;Couldn't open the directory&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
	remove&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;dirname&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
 
&lt;span style=&quot;color: #993333;&quot;&gt;void&lt;/span&gt; arch&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
	&lt;span style=&quot;color: #993333;&quot;&gt;struct&lt;/span&gt; utsname un&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	uname&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;&amp;amp;&lt;/span&gt;un&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;!&lt;/span&gt;strcmp&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;un.&lt;span style=&quot;color: #202020;&quot;&gt;machine&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;x86_64&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
		&lt;span style=&quot;color: #000066;&quot;&gt;printf&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;You are on a 64bit system, so, additional dependencies are requested (only2)&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
		&lt;span style=&quot;color: #000066;&quot;&gt;printf&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;Be sure you have the Main32 media enabled! If they are, press ok:&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
		system &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;edit-urpm-sources.pl –expert&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
		system &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;urpmi libxscrnsaver1 libxv1 libxrender1 libXrandr2 libfreetype6 libfontconfig1 libglib2.0_0&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
 
&lt;span style=&quot;color: #993333;&quot;&gt;void&lt;/span&gt; erase&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
	chdir &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/opt&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	unlink &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;skype_static-&quot;&lt;/span&gt;VERSION&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;chdir&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/opt/skype_static-&quot;&lt;/span&gt;VERSION&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;==&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
 
		recursiveDelete&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/opt/skype_static-/&quot;&lt;/span&gt;VERSION&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
		unlink &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/usr/bin/skype&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
		unlink &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/usr/share/applications/skype.desktop&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
		unlink &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/usr/share/icons/skype.png&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
		&lt;span style=&quot;color: #000066;&quot;&gt;printf&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;Clean&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
 
&lt;span style=&quot;color: #993333;&quot;&gt;void&lt;/span&gt; install&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
	arch&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;	
 
	chdir &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/opt&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	unlink &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;skype_static-&quot;&lt;/span&gt;VERSION&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;.tar.bz2&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
	&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;//Check if wget is present//&lt;/span&gt;
	FILE &lt;span style=&quot;color: #339933;&quot;&gt;*&lt;/span&gt;wget &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; fopen&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/usr/bin/wget&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;r&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;!&lt;/span&gt;wget&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
		system&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;urpmi wget&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
	&lt;span style=&quot;color: #666666; font-style: italic;&quot;&gt;/////////////////////////////&lt;/span&gt;
 
	system &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;wget http://download.skype.com/linux/skype_static-&quot;&lt;/span&gt;VERSION&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;.tar.bz2&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	&lt;span style=&quot;color: #000066;&quot;&gt;printf&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;Downloading skype into /opt...&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	system &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;tar -jxvf /opt/skype_static-&quot;&lt;/span&gt;VERSION&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;.tar.bz2&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
	symlink &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/opt/skype_static-&quot;&lt;/span&gt;VERSION&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/skype&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/usr/local/bin/skype&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	symlink &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/opt/skype_static-&quot;&lt;/span&gt;VERSION&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/skype.desktop&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/usr/share/applications/skype.desktop&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	symlink &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/opt/skype_static-&quot;&lt;/span&gt;VERSION&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/icons/SkypeBlue_48x48.png&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;/usr/share/icons/skype.png&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
 
 
&lt;span style=&quot;color: #993333;&quot;&gt;int&lt;/span&gt; main&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
	&lt;span style=&quot;color: #993333;&quot;&gt;int&lt;/span&gt; choose &lt;span style=&quot;color: #339933;&quot;&gt;=&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
	&lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;geteuid&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;!=&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
		&lt;span style=&quot;color: #000066;&quot;&gt;printf&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;Run as root&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
	&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;&lt;span style=&quot;color: #b1b100;&quot;&gt;else&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
		&lt;span style=&quot;color: #000066;&quot;&gt;printf&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;1 - to Erase&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
		&lt;span style=&quot;color: #000066;&quot;&gt;printf&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;2 - to Install&lt;span style=&quot;color: #000099; font-weight: bold;&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
		scanf &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&quot;%d&quot;&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;,&lt;/span&gt; &lt;span style=&quot;color: #339933;&quot;&gt;&amp;amp;&lt;/span&gt;choose&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
 
		&lt;span style=&quot;color: #b1b100;&quot;&gt;switch&lt;/span&gt; &lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;choose&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;{&lt;/span&gt;
			&lt;span style=&quot;color: #b1b100;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; erase&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;break&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
			&lt;span style=&quot;color: #b1b100;&quot;&gt;case&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;:&lt;/span&gt; erase&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt; install&lt;span style=&quot;color: #009900;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #009900;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;break&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
		&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
	&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;
	&lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #0000dd;&quot;&gt;0&lt;/span&gt;&lt;span style=&quot;color: #339933;&quot;&gt;;&lt;/span&gt;
&lt;span style=&quot;color: #009900;&quot;&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Download:  &lt;a href=&quot;http://users.mandriva.com.br/~bedi/C_crap/get_skype.c&quot; title=&quot;Download&quot;&gt;http://users.mandriva.com.br/~bedi/C_crap/get_skype.c&lt;/a&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 10 Jan 2012 19:18:42 +0000</pubDate>
</item>
<item>
	<title>Luis Menina: Diabolique anniversaire...</title>
	<guid isPermaLink="false">urn:md5:2576be54cfc9f98603a5df8f47acf135</guid>
	<link>http://blog.freeside.fr/post/2012/01/09/Diabolic-birthday...</link>
	<description>&lt;p&gt;C'est un peu tard pour le signaler, mais le 31 décembre 1996, Blizzard North
engendra ce monstre qu'est &lt;a href=&quot;http://fr.wikipedia.org/wiki/Diablo_%28jeu_vid%C3%A9o%29&quot; hreflang=&quot;fr&quot;&gt;Diablo&lt;/a&gt;. C'était
il y a 15 ans. A l'époque, j'ai entendu parler du jeu sur &lt;a href=&quot;http://fr.wikipedia.org/wiki/Micro_Kid%27s&quot; hreflang=&quot;fr&quot;&gt;Micro Kids&lt;/a&gt;, une des
premières émissions de télé dédiée aux jeux vidéos, dans les années 90, dont on
peut d'ailleurs retrouver de vieilles vidéos sur &lt;a href=&quot;http://www.abandonware-videos.org&quot; hreflang=&quot;fr&quot;&gt;abandonware-videos.org&lt;/a&gt;. Je n'ai
commencé à jouer à Diablo que l'année suivante, une fois que j'ai eu mon
premier PC (j'étais auparavant un Amigaïste &lt;a href=&quot;http://blog.freeside.fr/post/2007/05/14/Tuer-du-monstre-se-relaxer&quot; hreflang=&quot;fr&quot;&gt;comme certains le savent peut
être&lt;/a&gt;). Déjà à l'époque, la sauce prenait bien. La collectionnite aigüe
d'armes, et d'items en tous genres dans une ambiance bien glauque
fonctionnaient du tonnerre : qui n'a pas frémi devant &lt;a href=&quot;http://www.dailymotion.com/video/xgel9l_hd-diablo-1-the-butcher-le-boucher_videogames&quot;&gt;
The Butcher&lt;/a&gt; et son &quot;Ah... Fresh meat !&quot;... Certains se rappellent de ces
longues heures passées à finir ce jeu (là où certains mettent &lt;a href=&quot;http://speeddemosarchive.com/Diablo.html&quot; hreflang=&quot;en&quot;&gt;3 minutes 12 secondes&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Et puis en juin 2000, il y a eu &lt;a href=&quot;http://fr.wikipedia.org/wiki/Diablo_II&quot;&gt;Diablo II&lt;/a&gt;. Peut être un poil moins
attachant, mais au moins votre personnage pouvait enfin courir plutôt que se
traîner, utiliser des sets complets d'armure (c'est beau, le vert), de
nouvelles classes, un système de compétences complètement revu et bien d'autres
choses. C'est le seul autre jeu (le premier étant Starcraft) auquel j'ai joué
en LAN party entre potes. Ah, évidemment en te temps là j'étais jeune et sous
Windows. Autre temps, autres moeurs...&lt;/p&gt;
&lt;p&gt;Depuis, &lt;a href=&quot;http://fr.wikipedia.org/wiki/Diablo_III&quot;&gt;Diablo III&lt;/a&gt; a
été annoncé, est en beta test... Sans qu'on ne sache quand il sortira vraiment.
Le jeu est encore plus beau, mais... toujours pour Windows et Mac OS. Bon, de
toute façon, quand je vois la configuration minimale requise (dual core à
4GHz), je me dis que je ne vais pas changer de machine pour un jeu. Mais il y a
peut être de petits Linuxiens qui ont le matériel qu'il faut, eux. Et j'entends
leurs grosses larmes perler le long de leurs joues... Pour ce profil rare et
atypique qu'est le &lt;em&gt;linuxien-gamer&lt;/em&gt;, un espoir subsiste pourtant: Diablo
I et II étaient tout de même plus ou moins jouables sous &lt;a href=&quot;http://fr.wikipedia.org/wiki/WINE&quot;&gt;WINE&lt;/a&gt;, alors qu'en est-il de Diablo III
? Hé bien &lt;a href=&quot;http://osarena.org/linux/opensuse/how-to-play-diablo-3-in-opensuse.html&quot;&gt;Diablo
III semble fonctionnel sous Linux&lt;/a&gt;, toujours via WINE. Bien des nuits
blanches (autant pour l'installer que pour jouer j'imagine :-p) et des
destructions de souris en perspectives^^.&lt;/p&gt;
&lt;p&gt;En prime, Blizzard nous offre une petite &lt;a href=&quot;http://eu.battle.net/d3/fr/game/anniversary/&quot;&gt;rétrospective Diablo&lt;/a&gt; (à
défaut d'une date de sortie).&lt;/p&gt;</description>
	<pubDate>Mon, 09 Jan 2012 16:35:00 +0000</pubDate>
</item>
<item>
	<title>Reinout van Schouwen: Getting Topbraid Composer to run on Linux</title>
	<guid isPermaLink="true">http://vanschouwen.info/nerdynotes/?p=540</guid>
	<link>http://vanschouwen.info/nerdynotes/?p=540</link>
	<description>&lt;p&gt;Last week, I followed an &lt;a href=&quot;http://www.nbic.nl/&quot;&gt;NBIC&lt;/a&gt; course on Managing Life Science Information. The course included a tutorial on creating an ontology with &lt;a href=&quot;http://www.topquadrant.com/products/TB_Composer.html&quot;&gt;TopBraid Composer&lt;/a&gt;.&lt;br /&gt;
A number of course participants, me included, couldn’t run this (Eclipse-based) application because it complained about an incorrect Java VM. Turns out, it only wants to run on the official Sun/Oracle JVM and not on the OpenJDK that’s included with most Linux distributions.&lt;br /&gt;
For other people running into this problem: the way to solve it is to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Install Sun/Oracle Java from your distribution’s repositories, if available&lt;/li&gt;
&lt;li&gt;Otherwise, download Java SE 7 from Oracle as a tar.gz file&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you had to download the tar archive from Oracle, extract it somewhere on a logical path, such as /usr/java.&lt;/p&gt;
&lt;p&gt;When you have done so, you can use the update-alternatives system to switch between Java versions. If you installed the Sun/Oracle JDK through your distribution’s system utilities then chances are, it will be already added to the alternatives database. &lt;/p&gt;
&lt;p&gt;Quoting anujjaiswal’s &lt;a href=&quot;http://vanschouwen.info/nerdynotes/anujjaiswal.wordpress.com/2011/06/14/sun-java-update-alternatives-on-centos/&quot;&gt;blog&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;&lt;pre class=&quot;brush: bash;&quot;&gt;/usr/sbin/alternatives --install &quot;/usr/bin/java&quot; &quot;java&quot; &quot;/usr/java/default/bin/java&quot; 2
/usr/sbin/alternatives --install &quot;/usr/bin/javac&quot; &quot;javac&quot; &quot;/usr/java/default/bin/javac&quot; 2
&lt;/pre&gt;
&lt;p&gt;And to configure systemwide changes use&lt;/p&gt;
&lt;pre class=&quot;brush: bash; first-line: 3;&quot;&gt;/usr/sbin/alternatives --configure java
/usr/sbin/alternatives --configure javac
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;But why, exactly, doesn’t TopBraid run with OpenJDK? According to &lt;a href=&quot;https://twitter.com/#!/jjc6/status/126874750239784960&quot;&gt;Jeremy Carroll&lt;/a&gt;, it’s because ‘&lt;em&gt;We have places where we have to mess with JVM internals, mainly for clean up.&lt;/em&gt;’.&lt;br /&gt;
I doubt OpenJDK’s internals are that much different from Sun’s, but even if that were true– if you need to mess with JVM internals, in my humble opinion, you’re doing it Wrong&lt;sup&gt;tm&lt;/sup&gt;.&lt;/p&gt;</description>
	<pubDate>Mon, 09 Jan 2012 16:10:10 +0000</pubDate>
</item>
<item>
	<title>Bruno Cornec: Migrating from KMail to Thunderbird: The revenge</title>
	<guid isPermaLink="false">http://brunocornec.wordpress.com/?p=706</guid>
	<link>http://brunocornec.wordpress.com/2012/01/08/migrating-from-kmail-to-thunderbird-the-revenge/</link>
	<description>&lt;p&gt;After &lt;a href=&quot;http://brunocornec.wordpress.com/2011/01/10/migrating-from-kmail-to-thunderbird/&quot;&gt;migrating&lt;/a&gt; 2 of my kids and my wife from Kmail to Thunderbird last year, I finally decided this week-end to finish the last migration for my first daughter on her &lt;a href=&quot;http://www.mageia.org&quot;&gt;Mageia&lt;/a&gt; distribution.&lt;/p&gt;
&lt;p&gt;I previously made unsuccessful tries, as her environement was different, with many more subdirectories, and special chars, so it didn’t work with the previous version of the script. &lt;/p&gt;
&lt;p&gt;Now with the revisions &lt;a href=&quot;http://trac.project-builder.org/changeset/1389&quot;&gt;1389&lt;/a&gt; and &lt;a href=&quot;http://trac.project-builder.org/changeset/1390&quot;&gt;1390&lt;/a&gt; of the &lt;a href=&quot;http://trac.project-builder.org/browser/projects/md2mb/devel/md2mb/bin/md2mb.pl&quot;&gt;md2mb.pl&lt;/a&gt; script, I have successfully migrated her environment, without any manual intervention.&lt;/p&gt;
&lt;p&gt;Hopefully, seeing the number of times the previous post was looked at, it will be again useful (even more now that it works better:-)) for others. I even clarified the license in revision &lt;a href=&quot;http://trac.project-builder.org/changeset/1389&quot;&gt;1391&lt;/a&gt; for you to use more easily.&lt;/p&gt;
&lt;p&gt;Happy migration !&lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://brunocornec.wordpress.com/category/floss/&quot;&gt;FLOSS&lt;/a&gt; Tagged: &lt;a href=&quot;http://brunocornec.wordpress.com/tag/internet/&quot;&gt;Internet&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/linux/&quot;&gt;Linux&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/mageia/&quot;&gt;Mageia&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/open-source/&quot;&gt;Open Source&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/perl/&quot;&gt;perl&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/thunderbird/&quot;&gt;Thunderbird&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/brunocornec.wordpress.com/706/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/brunocornec.wordpress.com/706/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/brunocornec.wordpress.com/706/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/brunocornec.wordpress.com/706/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/brunocornec.wordpress.com/706/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/brunocornec.wordpress.com/706/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/brunocornec.wordpress.com/706/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/brunocornec.wordpress.com/706/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/brunocornec.wordpress.com/706/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/brunocornec.wordpress.com/706/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/brunocornec.wordpress.com/706/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/brunocornec.wordpress.com/706/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/brunocornec.wordpress.com/706/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/brunocornec.wordpress.com/706/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=brunocornec.wordpress.com&amp;amp;blog=5437580&amp;amp;post=706&amp;amp;subd=brunocornec&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Sun, 08 Jan 2012 00:49:41 +0000</pubDate>
</item>
<item>
	<title>Bruno Cornec: MondoRescue 3.0.0 is now officially out</title>
	<guid isPermaLink="false">http://brunocornec.wordpress.com/?p=703</guid>
	<link>http://brunocornec.wordpress.com/2012/01/06/mondorescue-3-0-0-is-now-officially-out/</link>
	<description>&lt;p&gt;To be honest the first packages appeared before Christmas as I was hoping to have everything ready as a gift ! But I met a certain number of issues trying to build &lt;a href=&quot;ftp://ftp.mondorescue.org/&quot;&gt;all packages&lt;/a&gt; for the 99 different distributions I’m trying to build for ! This is due to my upgrade to &lt;a href=&quot;http://www.Mageia.org&quot;&gt;Mageia&lt;/a&gt; 1 where the QEMU/KVM version proposed work differently from the previous Mandriva 2010.2 I was using.&lt;/p&gt;
&lt;p&gt;Some i386 VMs are now freezing, so I had to find new correct parameters for them. Then autoconf wasn’t generating a correct content for all Mandrake/Mandriva build for mondo, so I had to call for these distro now %configure2_5 as a macro, instead of %configure.&lt;/p&gt;
&lt;p&gt;And I still have some issues remaining, with busybox on SLES 9, Mandriva 2009.1, and RHEL 3, with some old SuSE (10.1-11.0) and old Asianux 2, RH 7.3/9, RHAS 2.1 … So &lt;a href=&quot;http://www.Project-Builder.org&quot;&gt;Project-Builder.org&lt;/a&gt; gained at this occasion a new feature which consists in enumerating on the remote repo which packages have been built correctly or not. And chain the result to a sbx2vm option through the new –rebuild option, which will trigger the rebuild of all not correctly built packages. Very handy ! And will be used to finish publishing what is missing and still useful.&lt;/p&gt;
&lt;p&gt;But I already &lt;a href=&quot;http://brunocornec.wordpress.com/2011/10/19/mondorescue-moving-to-3-0-0/&quot;&gt;delayed&lt;/a&gt; too much the delivery of that important evolution in the project life, so it was time to officially introduce &lt;a href=&quot;http://www.mondorescue.org/news.shtml&quot;&gt;MondoRescue 3.0.0&lt;/a&gt; to the world !&lt;/p&gt;
&lt;p&gt;And finally looking at all the modifications since latest stable, &lt;a href=&quot;http://www.MondoRescue.org&quot;&gt;MondoRescue&lt;/a&gt; really deserve it’s 3.0.0 label ! I won’t be able to cope with the Linux kernel, now at 3.2, but hopefully you’ll find that new version usefull. It fixes a lot of issues brought recently on the mailing list. Remains to work on the Xen kernel support more precisely, but most of what I wanted to fix is in it, including OBDR fixes, RHEL 6.2 fixes, SSSTK ProLiant support improved, loop mount issues, bootable USB keys, mdadm support for metadata, a grub install fix among many others.&lt;/p&gt;
&lt;p&gt;You’ll need to use mondo 3.0.0 with mindi 2.1.0 and mindi-busybox 1.18.5 to have a working environemnt as underlined on our &lt;a href=&quot;http://trac.mondorescue.org/wiki/FAQ#Q38Whichversionsofmindiandmondoarecompatible&quot;&gt;Wiki&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;And even if it’s a 3.0.0 number, I consider it stable and in the line of latest 2.2.9.x versions. I’d like to avoid copying my Red Hat friends with their .0 versions &lt;img alt=&quot;;-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Happy New Year and Disaster Recovery with MondoRescue !&lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://brunocornec.wordpress.com/category/floss/&quot;&gt;FLOSS&lt;/a&gt; Tagged: &lt;a href=&quot;http://brunocornec.wordpress.com/tag/linux/&quot;&gt;Linux&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/mageia/&quot;&gt;Mageia&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/mandriva/&quot;&gt;Mandriva&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/mondorescue/&quot;&gt;Mondorescue&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/open-source/&quot;&gt;Open Source&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/packaging/&quot;&gt;packaging&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/project-builder-org/&quot;&gt;project-builder.org&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/brunocornec.wordpress.com/703/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/brunocornec.wordpress.com/703/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/brunocornec.wordpress.com/703/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/brunocornec.wordpress.com/703/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/brunocornec.wordpress.com/703/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/brunocornec.wordpress.com/703/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/brunocornec.wordpress.com/703/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/brunocornec.wordpress.com/703/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/brunocornec.wordpress.com/703/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/brunocornec.wordpress.com/703/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/brunocornec.wordpress.com/703/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/brunocornec.wordpress.com/703/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/brunocornec.wordpress.com/703/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/brunocornec.wordpress.com/703/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=brunocornec.wordpress.com&amp;amp;blog=5437580&amp;amp;post=703&amp;amp;subd=brunocornec&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Fri, 06 Jan 2012 01:38:14 +0000</pubDate>
</item>
<item>
	<title>Bruno Cornec: Time limit with squid</title>
	<guid isPermaLink="false">http://brunocornec.wordpress.com/?p=699</guid>
	<link>http://brunocornec.wordpress.com/2012/01/05/time-limit-with-squid/</link>
	<description>&lt;p&gt;I have nice kids, that love Internet. Sometimes a bit too much too our state, and with my wife we decided that after a certain hour during the week, it was wise to shutdown the Web access for the kids’ machines so they could start thinking sleeping &lt;img alt=&quot;;-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif&quot; /&gt; &lt;/p&gt;
&lt;p&gt;As I have a &lt;a href=&quot;http://tldp.org/HOWTO/TransparentProxy-6.html&quot;&gt;transparent proxy&lt;/a&gt; setup, I looked at how to do that with &lt;a href=&quot;http://www.squid-cache.org&quot;&gt;Squid&lt;/a&gt; 2.5 (old I know !) and used &lt;a href=&quot;http://www.google.com&quot;&gt;google&lt;/a&gt; to find examples.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.thegeekstuff.com/2010/09/squid-control-internet-access/&quot;&gt;The&lt;/a&gt; &lt;a href=&quot;http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch32_:_Controlling_Web_Access_with_Squid#Restricting_Web_Access_By_Time&quot;&gt;ones&lt;/a&gt; I found first turned out to be wrong in their explanations and the squid &lt;a href=&quot;http://www.squid-cache.org/Doc/config/acl/&quot;&gt;doc&lt;/a&gt; lacks of an example here.&lt;/p&gt;
&lt;p&gt;Especially, the names of days should NOT be separated by spaces. Instead you rather need to use &lt;a href=&quot;http://www.deckle.co.za/squid-users-guide/Access_Control_and_Access_Control_Operators#Current_day.2Ftime&quot;&gt;other&lt;/a&gt; &lt;a href=&quot;http://www.linuxsolved.com/forums/index.php?topic=3197.0&quot;&gt;examples&lt;/a&gt; which give good advises, and also explain the constraints on the hours.&lt;/p&gt;
&lt;p&gt;So I came up with this configuration:&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
#Time&lt;br /&gt;
acl bfore_time time SMTWH 00:00-06:00&lt;br /&gt;
acl after_week time SMTWH 22:30-24:00&lt;br /&gt;
acl after_wend time FS 23:30-24:00&lt;br /&gt;
#Kids&lt;br /&gt;
#acl punition src 192.168.x.y/32&lt;br /&gt;
acl kids src 192.168.x.y1/32 192.168.x.y2/32 192.168.x.y3/32&lt;br /&gt;
#http_access deny punition&lt;br /&gt;
http_access deny kids bfore_time&lt;br /&gt;
http_access deny kids after_week&lt;br /&gt;
http_access deny kids after_wend&lt;br /&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;That way they are restricted to using the Web between 10:30PM and 6:00AM during the week, and later (11:30PM) the week-end. And I can ban one easily in case of punishment &lt;img alt=&quot;;-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Of course, that’s not a completely blocked context, as they can use our machines, or try to change the IP address (but they aren’t root and dn’t know that yet – but could learned which would be great !!). But it’s a kind reminder when it’s becoming late.&lt;/p&gt;
&lt;p&gt;ACLs in Squid are very powerfull, and combined with Squiguard, you can also activate parental control if you want.&lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://brunocornec.wordpress.com/category/floss/&quot;&gt;FLOSS&lt;/a&gt; Tagged: &lt;a href=&quot;http://brunocornec.wordpress.com/tag/acls/&quot;&gt;acls&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/internet/&quot;&gt;Internet&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/liberte/&quot;&gt;liberté&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/linux/&quot;&gt;Linux&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/proxy-setup/&quot;&gt;proxy setup&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/squid/&quot;&gt;Squid&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/brunocornec.wordpress.com/699/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/brunocornec.wordpress.com/699/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/brunocornec.wordpress.com/699/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/brunocornec.wordpress.com/699/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/brunocornec.wordpress.com/699/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/brunocornec.wordpress.com/699/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/brunocornec.wordpress.com/699/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/brunocornec.wordpress.com/699/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/brunocornec.wordpress.com/699/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/brunocornec.wordpress.com/699/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/brunocornec.wordpress.com/699/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/brunocornec.wordpress.com/699/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/brunocornec.wordpress.com/699/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/brunocornec.wordpress.com/699/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=brunocornec.wordpress.com&amp;amp;blog=5437580&amp;amp;post=699&amp;amp;subd=brunocornec&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Thu, 05 Jan 2012 00:03:01 +0000</pubDate>
</item>
<item>
	<title>Bruno Cornec: 2011 en stats/in review (Blog)</title>
	<guid isPermaLink="false">http://brunocornec.wordpress.com/?p=695</guid>
	<link>http://brunocornec.wordpress.com/2012/01/01/2011-en-statsin-review-blog/</link>
	<description>&lt;p&gt;Les lutins statisticiens chez WordPress.com ont préparé un rapport annuel 2011 pour ce blogue.&lt;/p&gt;
&lt;div style=&quot;height: 300px;&quot;&gt;&lt;/div&gt;
&lt;p&gt;Voici un extrait:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;La salle de concert de l’Opéra de Sydney contient 2 700 personnes. Ce blog a été visité environ &lt;strong&gt;16 000&lt;/strong&gt; fois en 2011. Si c’était un concert à l’Opéra de Sydney, il faudrait environ 6 représentations à guichets fermés pour pour qu’autant de personnes le voient.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;http://brunocornec.wordpress.com/2011/annual-report/&quot;&gt;Cliquez ici pour voir le rapport complet.&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Maintenant la question que je me pose est pourquoi y a-t-il autant de personnes qui lisent ce blog &lt;img alt=&quot;;-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif&quot; /&gt;  Bonne année 2012 à vous tous, et bonnes futures lectures !&lt;/p&gt;
&lt;p&gt;Statisticians at WordPress.com have prepared the yearly 2011 report for this blog.&lt;/p&gt;
&lt;p&gt;Here is an extract:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;The concert hall at the Syndey Opera House holds 2,700 people. This blog was viewed about 16,000 times in 2011. If it were a concert at Sydney Opera House, it would take about 6 sold-out performances for that many people to see it.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;http://brunocornec.wordpress.com/2011/annual-report/&quot;&gt;Clic here to read the full report&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Now the question is why are so many people reading this &lt;img alt=&quot;;-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif&quot; /&gt;  All the best for 2012 and happy future reading&lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://brunocornec.wordpress.com/category/societe/&quot;&gt;Société&lt;/a&gt; Tagged: &lt;a href=&quot;http://brunocornec.wordpress.com/tag/blog/&quot;&gt;Blog&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/stats/&quot;&gt;Stats&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/brunocornec.wordpress.com/695/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/brunocornec.wordpress.com/695/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/brunocornec.wordpress.com/695/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/brunocornec.wordpress.com/695/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/brunocornec.wordpress.com/695/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/brunocornec.wordpress.com/695/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/brunocornec.wordpress.com/695/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/brunocornec.wordpress.com/695/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/brunocornec.wordpress.com/695/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/brunocornec.wordpress.com/695/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/brunocornec.wordpress.com/695/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/brunocornec.wordpress.com/695/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/brunocornec.wordpress.com/695/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/brunocornec.wordpress.com/695/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=brunocornec.wordpress.com&amp;amp;blog=5437580&amp;amp;post=695&amp;amp;subd=brunocornec&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Sun, 01 Jan 2012 01:47:44 +0000</pubDate>
</item>
<item>
	<title>Eugeni Dodonov: Happy 2012 to you all</title>
	<guid isPermaLink="false">http://dodonov.net/blog/?p=1228</guid>
	<link>http://dodonov.net/blog/2011/12/31/happy-2012-to-you-all-4/</link>
	<description>&lt;p&gt;Yeah, 2011 is coming to the end, and had already switched place with 2012 in most countries already.&lt;/p&gt;

&lt;div class=&quot;wp-caption alignnone&quot; style=&quot;width: 510px;&quot;&gt;&lt;img alt=&quot;image&quot; class=&quot;alignnone&quot; src=&quot;http://dodonov.net/blog/wp-content/uploads/2011/12/wpid-13253762543831.jpg&quot; title=&quot;13253762543831.jpg&quot; /&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;Somewhere on the road to curitiba, starting 2011....&lt;/p&gt;&lt;/div&gt;

&lt;p&gt;For me, 2011 was extremely busy, exhausting but also very fruitful. I started it in a completely different situation from 2010, when I was a mere developer in Mandriva company. And during the course of 2010 and, later, 2011, I got the chance to work as engineering team leader for Conectiva, then development manager and, finally, technical diretor for Mandriva. And, after this experience, I got to move into Intel, working with even more challenging and amazing projects.&lt;/p&gt;

&lt;p&gt;So yes, it was a hugely crazy and great experience. Thank you 2011 – despite all the problems and obstacles, you was great after all if we sum up everything.&lt;/p&gt;

&lt;p&gt;See you all in 2012!&lt;/p&gt;</description>
	<pubDate>Sun, 01 Jan 2012 00:26:17 +0000</pubDate>
</item>
<item>
	<title>Eugeni Dodonov: Happy 2012 to you all</title>
	<guid isPermaLink="false">http://dodonov.net/blog/?p=1226</guid>
	<link>http://dodonov.net/blog/2011/12/31/happy-2012-to-you-all/</link>
	<description>&lt;p&gt;Yeah, 2011 is coming to the end, and had already switched place with 2012 in most countries already.&lt;/p&gt;

&lt;p&gt;For me, 2011 was extremely busy, exhausting but also very fruitful. I started it in a completely different situation from 2010, when I was a mere developer in Mandriva company. And during the course of 2010 and, later, 2011, I got the chance to work as engineering team leader for Conectiva, then development manager and, finally, technical diretor for Mandriva. And, after this experience, I got to move into Intel, working with even more challenging and amazing projects.&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;&lt;div class=&quot;wp-caption alignnone&quot; style=&quot;width: 510px;&quot;&gt;&lt;img alt=&quot;image&quot; class=&quot;alignnone&quot; src=&quot;http://dodonov.net/blog/wp-content/uploads/2011/12/wpid-132537616358004.jpg&quot; title=&quot;13253761635800.jpg&quot; /&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;And finishing 2011 in this landscape...&lt;/p&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;

&lt;p&gt;So yes, it was a hugely crazy and great experience. Thank you 2011 – despite all the problems and obstacles, you was great after all if we sum up everything.&lt;/p&gt;

&lt;p&gt;See you all in 2012!&lt;/p&gt;</description>
	<pubDate>Sun, 01 Jan 2012 00:25:23 +0000</pubDate>
</item>
<item>
	<title>Eugeni Dodonov: Happy 2012 to you all</title>
	<guid isPermaLink="false">http://dodonov.net/blog/?p=1219</guid>
	<link>http://dodonov.net/blog/2011/12/31/happy-2012-to-you-all-3/</link>
	<description>&lt;p&gt;Yeah, 2011 is coming to the end, and had already switched place with 2012 in most countries already.&lt;/p&gt;

&lt;p&gt;For me, 2011 was extremely busy, exhausting but also very fruitful. I started it in a completely different situation from 2010, when I was a developer and impossible-mission-solver in Mandriva. And during the course of 2010 and, later, 2011, I got the chance to work as engineering team leader for Conectiva, then development manager and, finally, technical diretor for Mandriva. And, after this experience, I got to move into Intel, working with even more challenging and amazing projects.&lt;/p&gt;

&lt;div class=&quot;wp-caption alignnone&quot; style=&quot;width: 510px;&quot;&gt;&lt;img alt=&quot;image&quot; class=&quot;alignnone&quot; src=&quot;http://dodonov.net/blog/wp-content/uploads/2011/12/wpid-132537616358003.jpg&quot; title=&quot;13253761635800.jpg&quot; /&gt;&lt;p class=&quot;wp-caption-text&quot;&gt;And finishing 2011 in this landscape...&lt;/p&gt;&lt;/div&gt;

&lt;p&gt;So yes, it was a hugely crazy and great experience. Thank you 2011 – despite all the problems and obstacles, you was great after all if we sum up everything.&lt;/p&gt;

&lt;p&gt;See you all in 2012!&lt;/p&gt;</description>
	<pubDate>Sun, 01 Jan 2012 00:21:42 +0000</pubDate>
</item>
<item>
	<title>Luis Menina: 1342</title>
	<guid isPermaLink="false">urn:md5:1ac6dc01d6f2ae9b8c9a1ca222fd90a7</guid>
	<link>http://blog.freeside.fr/post/2011/12/31/1342p</link>
	<description>&lt;p&gt;This is my &lt;a href=&quot;http://aichallenge.org/profile.php?user=3716&quot;&gt;final
rank&lt;/a&gt; (among 7897 contestants) on the last Artificial Intelligence challenge
on &lt;a href=&quot;http://aichallenge.org&quot; hreflang=&quot;en&quot;&gt;aichallenge.org&lt;/a&gt;. That is
not the best result ever, and I'm a bit disapointed as I was aiming for the top
500 but I'm fairly new to the AI world...&lt;/p&gt;
&lt;p&gt;I definitely had difficulties in chosing between developping my own
algorithms or seeing what was seen as interesting directions to explore, like
the &lt;a href=&quot;http://www.cs.colorado.edu/%7Eralex/papers/PDF/OOPSLA06antiobjects.pdf&quot;&gt;anti-objects&lt;/a&gt;
approach. Being a noob in the AI field, the Wikipedia articles on pathfinding
algorithms were extremely useful, as well as some Linux Magazine articles on
the same field.&lt;/p&gt;
&lt;p&gt;Unfortunaltely, I became less active a few weeks before the end, as a work
colleague had a much better program on his first attempt, while I still had
worked a great amount of time on that... Good lesson for next time: the only
competitor I'm trying to surpass is myself. The end of the contest being at
Christmas, I couldn't try to catch up, as I was late in buying the Christmas
presents too :-).&lt;/p&gt;
&lt;p&gt;The version that was used for the final tournament was version 12, even if I
had since then done some small improvements and bug fixing. The whole code is
available on &lt;a href=&quot;https://github.com/liberforce/termite&quot;&gt;github&lt;/a&gt;, under
the &lt;a href=&quot;http://en.wikipedia.org/wiki/WTFPL&quot;&gt;WTFPL 2.0&lt;/a&gt; license.&lt;/p&gt;
&lt;p&gt;My overal stats:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;1342 amont 7897 (top 17% of contestants - with an undefined amount of
really active contestants)&lt;/li&gt;
&lt;li&gt;77th French contestant among 295 (top 27%).&lt;/li&gt;
&lt;li&gt;35th C user among 248 (top 15%)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I learned a lot of things and had lots of fun, so expect me to come back on
the next contest, with better basics ;-)&lt;/p&gt;</description>
	<pubDate>Sat, 31 Dec 2011 15:38:00 +0000</pubDate>
</item>
<item>
	<title>Chmouel Boudjnah: My stats for this year running and cycling</title>
	<guid isPermaLink="false">http://blog.chmouel.com/?p=483</guid>
	<link>http://blog.chmouel.com/2011/12/28/my-training-year-cycling-and-running/</link>
	<description>&lt;p&gt;Running 1,266 km  (786 miles):&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://blog.chmouel.com/wp-content/uploads/2011/12/Screen-Shot-2011-12-28-at-19.44.05.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter size-large wp-image-484&quot; height=&quot;163&quot; src=&quot;http://blog.chmouel.com/wp-content/uploads/2011/12/Screen-Shot-2011-12-28-at-19.44.05-1024x262.png&quot; title=&quot;Screen Shot 2011-12-28 at 19.44.05&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Cycling 3865 km (2401 miles):&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://blog.chmouel.com/wp-content/uploads/2011/12/Screen-Shot-2011-12-28-at-19.44.20.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;aligncenter size-large wp-image-485&quot; height=&quot;191&quot; src=&quot;http://blog.chmouel.com/wp-content/uploads/2011/12/Screen-Shot-2011-12-28-at-19.44.20-1024x306.png&quot; title=&quot;Screen Shot 2011-12-28 at 19.44.20&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Let’s see if I can improve for next year&lt;/p&gt;</description>
	<pubDate>Wed, 28 Dec 2011 19:08:27 +0000</pubDate>
</item>
<item>
	<title>Shlomi Fish: Breaking the Perl Debugger for Fun and Profit</title>
	<guid isPermaLink="true">http://blogs.perl.org/users/shlomi_fish/2011/12/breaking-the-perl-debugger-for-fun-and-profit.html</guid>
	<link>http://blogs.perl.org/users/shlomi_fish/2011/12/breaking-the-perl-debugger-for-fun-and-profit.html</link>
	<description>Before I cover the main topic of this entry, here are some short news and action items: If you have not acted against SOPA - the proposed online blacklist/censorship bill, you should. Follow the link for information on how...</description>
	<pubDate>Mon, 26 Dec 2011 19:03:05 +0000</pubDate>
</item>
<item>
	<title>Shlomi Fish: Tel Aviv Perl Mongers Meeting on 28 December, 2011</title>
	<guid isPermaLink="true">http://shlomif-tech.livejournal.com/60825.html</guid>
	<link>http://shlomif-tech.livejournal.com/60825.html</link>
	<description>&lt;p&gt;
(The Hebrew text will be followed by an English one).
&lt;/p&gt;

&lt;div align=&quot;right&quot; dir=&quot;rtl&quot;&gt;

&lt;p&gt;
&lt;b&gt;שימו לב לשינוי במיקום!&lt;/b&gt;
 זהו הבניין שבו קיימנו את מפגשי שוחרי הפרל התל-אביביים בהתחלה, ולא זה ששימש
עבור מספר פגישות לאחרונה.
&lt;/p&gt;

&lt;p&gt;
ב-28 בדצמבר 2011 (יום רביעי) נערוך את מפגש הפרל החודשי שלנו, והפעם הוא יהיה
מיוחד! 
אנו נפגשים ב-18:30 ומתחילים ב-19:00. 
כתובת: מכללת שנקר, בניין ראשי ברחוב אנה פרנק, רמת גן, חדר 300. 
&lt;/p&gt;

&lt;p&gt;
פרטים נוספים ניתן למצוא
&lt;a href=&quot;http://telaviv.pm.org/&quot; rel=&quot;nofollow&quot;&gt;באתר של שוחרי הפרל של תל אביב&lt;/a&gt;.
&lt;/p&gt;

&lt;p&gt;
במפגש זה יהיו ההרצאות הבאות:
&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;
&lt;b&gt;ויזואליזציה של המוח של וים&lt;/b&gt; - רן עילם -
אהבתם אותו ב&quot;תשתיות לפיתוח משחקים בעזרת SDL, Moose ו-Coro&quot;, בכיתם בעקבות הביצוע
שלו במפגשים אחרי ההרצאות, ותעריצו אותו לחלוטין ב&quot;ויזואליזציה של המוח של וים&quot;. האגדה
החיה רן עילם ירצה לנו (מתחילים ומומחים כאחד) על וים (Vim) ועל כיצד לעכל את החיה
הזאת. מילת אזהרה: שתי השורות הראשונות בקהל יפגעו מלהבות חוצבות כנגד אימקס (Emacs).
&lt;/p&gt;
&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;
&lt;b&gt;צרור מודולים שהיה הגיוני לכתוב&lt;/b&gt; - סוויר אקס:
אני הולך לסקור מספר מודולים לשימושי שכתבתי, מדוע הם נכתבו, ומתי הם שימושיים.
בסוף תצטרכו לשפוט אם היה זה בכלל כדאי לכתוב אותם. יהיו גם קלפיות של הצבעה!
(אנחנו נכסה את Algorithm::Diff::Callback, App::Genpass, Data::PowerSet::Hash
ו-Module::Version.) 
&lt;/p&gt;
&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;
&lt;b&gt;לשדרג או לא לשדרג - פרל 5.6 כנגד פרל 5.14&lt;/b&gt; - עידו קנר כנגד סוויר אקס:
מקור גדול של דאגה בקהילת משתמשי הפרל היא האם להשתמש בגרסה עדכנית של 
פרל ואיזו גרסה צריכה להיחשב &quot;ישנה מדי&quot;. מצד אחד, יש לנו את ההנהלה שרוצה
עד כמה שפחות עלות ושינויים (ולפעמים גם מנהלי המערכות רוצים בכך), ומצד שני
המפתח שרוצה להשתמש בטכנולוגיות החדשות ביותר, ופעמים רבות תקוע במערכות
שאבד עליהן כלח.
&lt;/p&gt;
&lt;p&gt;
לאור שיקול רציני זה, אנו הולכים, איש בתורו, לתקוע מקל אחד בשני, כשאנו 
חובשים כובעים מצחיקים, ולדון את הלא מאמינים והכופרים לגיהינום
עד שידגלו בצד אחד: 5.6 או 5.14!
&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
המפגש הוא חינמי וכולם מוזמנים. נתראה שם!
&lt;/p&gt;

&lt;/div&gt;

&lt;h3&gt;English Version&lt;/h3&gt;

&lt;p&gt;
&lt;b&gt;Please note the change of venue.&lt;/b&gt; This is the building where we started
having TA.pm, and not the one which we used for some of the recent meetings.
&lt;/p&gt;

&lt;p&gt;
On 28 December, 2011 (Wednesday), the Tel Aviv Perl Mongers will hold their
monthly meetup, and this time it is going to be special. We meet at 18:30 and the
talks begin at 19:00. The address is: Shenkar College, main building on Anna Frank street, Ramat Gan, Room 300.
&lt;/p&gt;

&lt;p&gt;
One can find more details on
&lt;a href=&quot;http://telaviv.pm.org/&quot; rel=&quot;nofollow&quot;&gt;the web-site&lt;/a&gt; of
the Tel Aviv Perl mongers.
&lt;/p&gt;

&lt;p&gt;
This meeting will hold the following talks:
&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;
&lt;b&gt;Visualizing the brain of Vim&lt;/b&gt; by Ran Eilam - 
You loved him in &quot;Game frameworks with SDL, Moose and Coro&quot;, you cried over
his performance in the after-meeting get-togethers, and you will absolutely
adore him in &quot;Visualizing the brain of Vim&quot;. All-star legend Ran Eilam will
talk to us (both beginners and experts) about Vim and how to fathom this
incredible beast. I warn you, the first two lines in the audience will be
damaged by Emacs flames.
&lt;/p&gt;
&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;
&lt;b&gt;A bunch of modules which made sense writing&lt;/b&gt; - by Sawyer X:
I'm going to cover some utility modules I've written, why they were written
and when they are useful. At the end, you'll have to judge whether they were
worth writing at all.  There will be voting booths available!
(We'll cover Algorithm::Diff::Callback, App::Genpass, Data::PowerSet::Hash
and Module::Version.)
&lt;/p&gt;
&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;
&lt;b&gt;To upgrade or not to upgrade, Perl 5.6 vs. Perl 5.14&lt;/b&gt; - ik vs. Sawyer X:
A source of great concern in the Perl users community is whether to use an
up-to-date Perl and what version should be considered &quot;too old&quot;. On one
hand, we have the management that wants as little cost and changes as possible
(sometimes along with systems administrators), and on the other hand, the
developer who wants to use the latest technologies, and is often
stuck on obsolete systems.
&lt;/p&gt;

&lt;p&gt;
In light of this serious consideration, we're going to take turns poking at
each other with a stick, wearing funny hats, damning the unbelievers and
heretics until they submit to one side: 5.6 or 5.14!
&lt;/p&gt;

&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;
The entrance to the meeting is free-of-charge, and everyone are welcome to
attend. See you there!
&lt;/p&gt;</description>
	<pubDate>Sat, 24 Dec 2011 16:52:40 +0000</pubDate>
	<author>shlomif@iglu.org.il (Shlomi Fish ()</author>
</item>
<item>
	<title>Eugeni Dodonov: Holidays news from Intel Linux Graphics land</title>
	<guid isPermaLink="false">http://dodonov.net/blog/?p=1202</guid>
	<link>http://dodonov.net/blog/2011/12/20/holidays-news-from-intel-linux-graphics-land/</link>
	<description>&lt;p&gt;Yeah, I admit that my semi-periodic updates about Intel Linux Graphics got more “seldom-periodic” than “truly-periodic” for the past weeks. But have no fear – they are back! And I am still on my self-appointed bi-weekly schedule estimate. This is what’s good about semi-periodic schedule – one never can run too much out of it &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; .&lt;/p&gt;

&lt;p&gt;So starting with the coolest news – the &lt;strong&gt;Mesa&lt;/strong&gt; team is getting close to the GL 3.0 milestone! Yeah, with latest &lt;strong&gt;GL_ext_transform_feedback&lt;/strong&gt; patches from &lt;strong&gt;Paul Berry&lt;/strong&gt;, the last major piece of GL 3.0 spec is getting into place. There are still some extensions missing and lots of smaller tasks to be done, but it is possible to say that &lt;em&gt;we are almost there&lt;/em&gt;. I think that this is really exciting for both us, and for all the Linux and open-source users in the world – so yeah – we’ve been good boys and girls during the year and Santa Claus gift has materialized itself in form of almost-full GL 3.0 support in Mesa.&lt;/p&gt;

&lt;p&gt;Who knows, maybe prior to the Chinese new year we’ll receive the 2nd part of this gift (in other words, &lt;strong&gt;mesa 8.0&lt;/strong&gt; release &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; ).&lt;/p&gt;

&lt;p&gt;On &lt;strong&gt;kernel&lt;/strong&gt; side, the &lt;strong&gt;3.2-rc6&lt;/strong&gt; release brought lots of awesome changes to our drivers. Yes, I am talking about everyone’s favorite &lt;strong&gt;rc6&lt;/strong&gt; and &lt;strong&gt;semaphores&lt;/strong&gt; features. They are on by default on &lt;strong&gt;Ivy Bridge&lt;/strong&gt; architecture, and are also enabled on &lt;strong&gt;Sandy Bridge&lt;/strong&gt; if &lt;strong&gt;VTd&lt;/strong&gt; is disabled. So most of you should enjoy greatly improved battery life, considerable faster performance and also enhanced stability within the &lt;strong&gt;i915&lt;/strong&gt; driver when &lt;strong&gt;Linux 3.2&lt;/strong&gt; will be released.&lt;/p&gt;

&lt;p&gt;Besides those patches, work has started on collecting patches for the &lt;strong&gt;3.3&lt;/strong&gt; merge window. &lt;strong&gt;Daniel Vetter&lt;/strong&gt; sent his pending patches in a form of tiny &lt;strong&gt;43&lt;/strong&gt;-patches series. Those patches bring &lt;strong&gt;PPGTT&lt;/strong&gt; support, improve &lt;strong&gt;debugfs&lt;/strong&gt; handling, enhance &lt;strong&gt;pread/pwrite&lt;/strong&gt; performance, fix &lt;strong&gt;swizzling&lt;/strong&gt; for SNB/IVB, improve &lt;strong&gt;forcewake&lt;/strong&gt; operations and enhance debugging support for cases when GPU rings get stuck.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ben&lt;/strong&gt; has also sent his patches for scheduling/throttling, but they haven’t received much interest except from myself and phoronix &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; . Those patches add support for more fine-grained GPU scheduling and rings load distribution between individual process. I am really interested in this work, and I hope that they will be accepted into the main kernel in the foreseeable future.&lt;/p&gt;

&lt;p&gt;Also on kernel, &lt;strong&gt;Rodrigo Vivi&lt;/strong&gt; and &lt;strong&gt;Paulo Zanoni&lt;/strong&gt; sent out some patches which finally fix some corner cases for &lt;strong&gt;TV-out&lt;/strong&gt; and &lt;strong&gt;SDVO&lt;/strong&gt; outputs. This certainly should make many users happy out there just in time for Christmas.&lt;/p&gt;

&lt;p&gt;And finally, for the kernel size, &lt;strong&gt;Chris Wilson&lt;/strong&gt; came with a patch which works around the &lt;strong&gt;missed IRQs&lt;/strong&gt; issues on Ivy Bridge platform. With this patch, and with semaphores being enabled on &lt;strong&gt;Ivy Bridge&lt;/strong&gt; by default, I am very happy to say that we don’t have &lt;strong&gt;any&lt;/strong&gt; blocking bugs for &lt;strong&gt;Ivy Bridge&lt;/strong&gt; in our bugzilla. I think that it comes as a nice Christmas gift for all the users out there (the ones who already have an &lt;strong&gt;Ivy Bridge&lt;/strong&gt; machine, and the ones who will get it by its launch – which is still 4 months away). Of course, I won’t talk much about it prior to its official launch, but trust me – &lt;strong&gt;Ivy Bridge rocks!&lt;/strong&gt;. I can’t wait to have an Ultrabook based on this platform for myself…&lt;/p&gt;

&lt;p&gt;Besides &lt;strong&gt;mesa&lt;/strong&gt; and &lt;strong&gt;kernel&lt;/strong&gt;, it is worth mentioning that on the &lt;strong&gt;2D&lt;/strong&gt; side, &lt;strong&gt;Zhigang&lt;/strong&gt; added full &lt;strong&gt;Glamor&lt;/strong&gt; support into the driver. The Glamor acceleration is still considered very experimental and non-stable, but now it is available for the world to take a peek on it and witness how it works with their own eyes.&lt;/p&gt;

&lt;p&gt;So I think that this is pretty much it. We have hundreds of patches floating around for all the projects, thousands of emails and millions of users in the world – and we are working hard to make all of them happy with the results of our work. 2011 was extremely productive and rewarding for us – and I hope that the year of &lt;strong&gt;11111011100&lt;/strong&gt; (a.k.a., 0x7DC or 2012_base10 for the ones still reading in decimal numbers out there &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; ) will be even more interesting*!&lt;/p&gt;

&lt;p&gt;See you!&lt;/p&gt;

&lt;p&gt;(*) Assuming the world won’t end in a core dump caused by the Mayan millennium counter overflow bug &lt;img alt=&quot;:)&quot; class=&quot;wp-smiley&quot; src=&quot;http://dodonov.net/blog/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; .&lt;/p&gt;</description>
	<pubDate>Tue, 20 Dec 2011 13:42:16 +0000</pubDate>
</item>
<item>
	<title>Bruno Cornec: Upgrading D7000 firmware from Linux</title>
	<guid isPermaLink="false">http://brunocornec.wordpress.com/?p=687</guid>
	<link>http://brunocornec.wordpress.com/2011/12/19/upgrading-d7000-firmware-from-linux/</link>
	<description>&lt;p&gt;The nice thing when you register your camera on the Nikon Web site, you received mail when a Firmware update is available. That’s how I learnt that version 1.03 was available.&lt;/p&gt;
&lt;p&gt;Of course, there is the easy way to perform the upgrade: you take out the camera’s card, put the firmware on it at the root, and voila.&lt;/p&gt;
&lt;p&gt;But I tried to do that from my Linux system, with the camera directly connected to the box in USB. As it only works in PTP mode, it could a bit more chalenging &lt;img alt=&quot;;-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif&quot; /&gt; &lt;/p&gt;
&lt;p&gt;First, get the firmware from the &lt;a href=&quot;https://nikoneurope-fr.custhelp.com/app/answers/detail/a_id/50656&quot;&gt;download page&lt;/a&gt; and look at the &lt;a href=&quot;http://www.nikonsupport.eu/europe/Firmware/D7000/v1.03/En/dslr_win_en.html&quot;&gt;instructions&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Once you have the right file downloaded, extract the firmware from it:&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
$ unrar x F-D7000-V103W.exe&lt;br /&gt;
Creating    D7000Update                                               OK&lt;br /&gt;
Extracting  D7000Update/D7000_0103.bin                                OK&lt;br /&gt;
All OK&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
Then check that your camera is seen correctly:&lt;br /&gt;
&lt;code&gt;$ gphoto2 --auto-detect&lt;br /&gt;
Modèle                        Port&lt;br /&gt;
----------------------------------------------------------&lt;br /&gt;
USB PTP Class Camera           usb:008,005&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;code&gt;$ gphoto2 -u D7000Update/D7000_0103.bin --folder /store_00010001/&lt;br /&gt;
[...]&lt;br /&gt;
*** Erreur ***&lt;br /&gt;
PTP Accès refusé&lt;br /&gt;
*** Erreur (-1 : « Erreur indéfinie ») ***&lt;br /&gt;
[...]&lt;br /&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;So I activated debug mode, and it turned out that you can’t really write with PTP mode that way on the card &lt;img alt=&quot;:-(&quot; class=&quot;wp-smiley&quot; src=&quot;http://s0.wp.com/wp-includes/images/smilies/icon_sad.gif&quot; /&gt;&lt;br /&gt;
Same thing if you use Dolphin and try to copy paste the file, the target is blocked !&lt;/p&gt;
&lt;p&gt;So back to begining, I turned off the camera and removed the card from it.&lt;br /&gt;
Then using USB disk emulation, it was easy to copy the firmware at the root of my key placed in a card adaptor on the USB port of my system.&lt;br /&gt;
&lt;code&gt;$ cp D7000Update/D7000_0103.bin /media/D7000&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Then I put back the card in the camera and turned it on again. I went into the FW menu,just to realize that I didn’t had any way to upgrate, contrary to what was written in the doc. Going back and forth I finally had the idea to unconnect the camera from USB, and then the menu option appeared !&lt;br /&gt;
However, the battery wasn’t full anymore so had to charge it again &lt;img alt=&quot;:-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; &lt;/p&gt;
&lt;p&gt;A couple of minutes later, the camera was upgrading, and I now have a fully patched one !&lt;/p&gt;
&lt;p&gt;Mr Nikon: is it that difficult to provide direct USB disk support in your cameras ? That would be the most direct way for us, Linux users, to deal with your wonderful toy ! Maybe for the next firmware update !!!&lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://brunocornec.wordpress.com/category/floss/&quot;&gt;FLOSS&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/category/photo/&quot;&gt;Photo&lt;/a&gt; Tagged: &lt;a href=&quot;http://brunocornec.wordpress.com/tag/d7000/&quot;&gt;D7000&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/linux/&quot;&gt;Linux&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/brunocornec.wordpress.com/687/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/brunocornec.wordpress.com/687/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/brunocornec.wordpress.com/687/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/brunocornec.wordpress.com/687/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/brunocornec.wordpress.com/687/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/brunocornec.wordpress.com/687/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/brunocornec.wordpress.com/687/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/brunocornec.wordpress.com/687/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/brunocornec.wordpress.com/687/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/brunocornec.wordpress.com/687/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/brunocornec.wordpress.com/687/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/brunocornec.wordpress.com/687/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/brunocornec.wordpress.com/687/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/brunocornec.wordpress.com/687/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=brunocornec.wordpress.com&amp;amp;blog=5437580&amp;amp;post=687&amp;amp;subd=brunocornec&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Mon, 19 Dec 2011 00:17:10 +0000</pubDate>
</item>
<item>
	<title>Christophe Fergeau: FOSDEM Crossdesktop devroom</title>
	<guid isPermaLink="false">tag:blogger.com,1999:blog-8472120078842080683.post-1941046430555540084</guid>
	<link>http://cfergeau.blogspot.com/2011/12/fosdem-crossdesktop-devroom.html</link>
	<description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot;&gt;GNOME, KDE, XFCE, ... will be present at &lt;a href=&quot;http://fosdem.org/2012/&quot;&gt;FOSDEM&lt;/a&gt; this year in the crossdesktop devroom. The &lt;a href=&quot;http://mail.gnome.org/archives/desktop-devel-list/2011-November/msg00076.html&quot;&gt;call for talks&lt;/a&gt; has been out for a few weeks now and the deadline (December 20th) is quickly approaching, it's next Tuesday! So don't delay your talk proposal any further, just email the&lt;a href=&quot;https://lists.fosdem.org/listinfo/crossdesktop-devroom&quot;&gt; crossdesktop devroom mailing list&lt;/a&gt; now :)&lt;br /&gt;&lt;br /&gt;Talks can be specific, such as &lt;a href=&quot;http://archive.fosdem.org/2011/schedule/event/vala&quot;&gt;developing GNOME application with Vala&lt;/a&gt;; or as general as predictions for the &lt;a href=&quot;http://archive.fosdem.org/2011/schedule/event/desktopbrowser&quot;&gt;fusion of Desktop and web in 5 years time&lt;/a&gt;. Topics that are of interest to the users and developers of all desktop environments are especially welcome. The &lt;a href=&quot;http://www.fosdem.org/2011/&quot;&gt;FOSDEM 2011&lt;/a&gt; &lt;a href=&quot;http://archive.fosdem.org/2011/schedule/track/crossdesktop_devroom&quot;&gt;schedule&lt;/a&gt; might give you some inspiration.&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img alt=&quot;&quot; height=&quot;1&quot; src=&quot;https://blogger.googleusercontent.com/tracker/8472120078842080683-1941046430555540084?l=cfergeau.blogspot.com&quot; width=&quot;1&quot; /&gt;&lt;/div&gt;</description>
	<pubDate>Sat, 17 Dec 2011 19:42:00 +0000</pubDate>
	<author>noreply@blogger.com (Christophe)</author>
</item>
<item>
	<title>Shlomi Fish: Tech Tip: Removing Bash’s Command Completions</title>
	<guid isPermaLink="true">http://shlomif-tech.livejournal.com/60439.html</guid>
	<link>http://shlomif-tech.livejournal.com/60439.html</link>
	<description>&lt;p&gt;
The normal way to remove a completion for a Bash command (say “mv”) is to do
“complete -r mv”. However, with the bash-completion package installed on
Mageia Linux Cauldron, this is not enough because it also adds a default
completion for every invoked command. So in order to override this behaviour,
type “complete -r -D” and then you can remove the commands’ completions 
permanently, using “complete -r mv” or whatever.
&lt;/p&gt;</description>
	<pubDate>Tue, 13 Dec 2011 10:44:54 +0000</pubDate>
	<author>shlomif@iglu.org.il (Shlomi Fish ()</author>
</item>
<item>
	<title>Bruno Cornec: Second Day at LinuxCon EMEA 2011</title>
	<guid isPermaLink="false">http://brunocornec.wordpress.com/?p=638</guid>
	<link>http://brunocornec.wordpress.com/2011/12/11/second-day-at-linuxcon-emea-2011/</link>
	<description>&lt;p&gt;After a busy &lt;a href=&quot;http://brunocornec.wordpress.com/2011/11/09/first-day-at-linuxcon-emea-2011/&quot;&gt;first day&lt;/a&gt;, here is the report for my second day at LinuxCon EMEA 2011, which started directly with some sessions (I skept the plenary for once):&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://events.linuxfoundation.org/events/linuxcon-europe/keeppattu&quot;&gt;Distributed redundancy&lt;/a&gt; by Roopesh Keeppattu – Huawei&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Redundancy is about availability, by duplicating components to avoid unavailability of the service.&lt;br /&gt;
Availability measured with ’9′.&lt;br /&gt;
4 nines is 1 hour per year, 5 nines means 5 minutes, 6 nines 32 seconds.&lt;br /&gt;
Major types of redundancy: standby (cold – the other server remains unpowered, warm – all servers powered, hot – all servers provide identical services).&lt;br /&gt;
ALso notion of N modular redundancy (N servers in parallel).&lt;br /&gt;
1:N redundancy = 1 standby for N active units.&lt;/p&gt;
&lt;p&gt;Traditional redundancy: mainly based on backup HW systems, with similar capabilities so large CAPEX and OPEX.&lt;br /&gt;
So moving to distributes redundancy to reduce costs.&lt;br /&gt;
1:1 scenario taken in account&lt;br /&gt;
Instead of duplicating HW, there is a duplication of process instances on a set of servers&lt;br /&gt;
3 models available: live migration of OS/VM or of processes or of pre-distributed processes&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;live migration OS/VM: preserve states, less complex from application point of view but higher migration time due to size of what to transfer.&lt;/li&gt;
&lt;li&gt;processes migration: you encounter more complex migration design, which has to be part of the application, and gain on the data to transfer. This method can also provide dynamic load distribution. But you need pre-failure detection for failover.
&lt;/li&gt;
&lt;li&gt;pre-distributed process: you increase again the ressource optimization, availability and switching time but also the complexity, the need of additional SW to deal with states and the linkage to the application. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The future is in redundancy in the cloud, and ressource abstraction.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;I was hoping for a more in depth presentation, and was not satisfied by this one, as it didn’t go into details, just remaining at the surface. However, this is a critical topic for most customers today in their Linux adoption.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://events.linuxfoundation.org/events/linuxcon-europe/sweeney&quot;&gt;Experiences booting 100s of thousands to millions of Linux VMs&lt;/a&gt; by Andrew Sweeney – Sandia National Lab&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Managing a large number of VMs presents some challenges and horror stories (such as filling fill the switch CAM table, creating VM feed back loops, finding some unique bugs or odd behaviour). Even 0.01 % of error is 100 VMs in their case.&lt;/p&gt;
&lt;p&gt;They tried multiple technologies such as lguest, QEMU, KVM, NOVA. They are using a mixed of technologies due also to hardware limitations.&lt;/p&gt;
&lt;p&gt;Guests configurations are computed at runtime. Everything is stored in RAM. They treat VMs as an application process. They use standard tools, the same TCP stacks, kernel…&lt;/p&gt;
&lt;p&gt;They are using VMatic to generate the images and boot 1000 VMs in &amp;lt; 3 minutes.&lt;br /&gt;
Another tool used is Gproc (Cluster Management tool written in Go) allowing O(ln(n)) execution time.. It scales beyond 200K+ instances. Web based interface.&lt;/p&gt;
&lt;p&gt;The first cluster type was:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Using PXE boot for booting physical host Hypervisors and then start the guests.&lt;/li&gt;
&lt;li&gt;In July 2009, they reached 1 Million VM with lguest and 4600 Dell Super Computer (256 lguest per node) bootleneck being RAM.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;They then created KANE (sort of their own cloud approach) made of 520 nodes with 12 GB RAM with Video cards (because that was more expensive to remove them !!)) 13 racks, 40 nodes/rack, 1 PDU/rack.&lt;/p&gt;
&lt;p&gt;Then they developed a strongbox ARM cluster made of 490 nodes 512 MB RAM little power needed with lguest.&lt;/p&gt;
&lt;p&gt;Then they started Megatux 2.0 to reach a higher number of VMs. Everything is virtual. They even created a network creation language. Use virtual quagga &amp;amp; linux virtual routers (+ physical) and virtual VDE switches. It supports multiple OS normally, but for Windows they got many blue screen (ipconfig before IP is sup, ping before IP is up, …). They’re using KSM a lot (and made patches) and various approaches to reduce VM footprint. gproc is used after the initial boot to push the VM images and start the VM + aggressive KSM.&lt;br /&gt;
Cold boot to experiment is performed in 7 minutes. 1 daemon per host to regulate KSM, VM state.&lt;/p&gt;
&lt;p&gt;Interesting problem to collect info from 1 Million of nodes overloaded and where to store it ? Using network sniff, VM inspection. For that they used a MongoDB backend populated at runtime. Data collected in in best effort mode.&lt;br /&gt;
They’re looking at using KVM tool instead of QEMU/KVM to reduce memory footprint and AXFS (Advanced XIP FS) combined with cramfs.&lt;br /&gt;
Next steps with Android, more realistic network usage, improved monitoring, data visualisation and error handling.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;A good talk on very unusual context with some interesting issues to consider, even if far from being current problems as of now.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I then met with my colleague Sue Paylor, who is one of our excellent FLOSS expert in EMEA, and that was again a good talk exchanging about our respective customer experiences, how to improve HA with Linux, and lots of various topics.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://events.linuxfoundation.org/events/linuxcon-europe/brauckman-poeschl&quot;&gt;Providing High Perfomrance &lt;/a&gt; Round table (instead of SuSE Keynote)&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Ludek Safar&lt;/strong&gt;, Ministry of Interior, Czech Republic approched the linux topic from the desktop side, and they’re now moving to the Data Center (Oracle instances on physical hardware and the rest in Xen VMs including java based custom devs.). They help by giving publicity for some FLOSS projects. The choice of an enterprise distribution is specifically to be the linkage with the communitites. He likes the embedded approach with regards to the fully integrated hypervisor which provides the perfect cloud solution for them.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Dr. Udo Seidel&lt;/strong&gt;, Amadeus explained that they started 9 years ago with Linux. They have done lots of internal developments including lots of mission critical workloads. Participating to events is key to keep good technical exchanges, influence the developments, give feedback. He really likes the flexibility and the open mindset. However he is still missing a central approach around role based manageemnt (a la AD).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Andreas Pöschl&lt;/strong&gt;, BMW explained that they started back in 2003 for servers, and in 2006 decided that Windows and Linux were the strategic OS on x86. They run SAP on Linux e.g. and desktops on Windows. They do virtualization (1000 VMs) with Xen, including 16 cores 64 GB VMs for SAP. They don’t do direct contributions, but rather provide use/test cases for large configurations, and rely on their distribution providers to do the return. Sharing what they do with Linux is also important to improve the ecosystem. He insisted on the freedom of choice which avoids vendor lock-in and also marked his appreciation for the large set of possibilities offered by FLOSS. He is still concerned by boot time. BMW has requirements around storage and scale out, so they appreciate the work done on Btrfs. He mentioned usage of Linux in &lt;a href=&quot;http://brunocornec.wordpress.com/2011/04/05/the-genivi-project/&quot;&gt;GENIVI&lt;/a&gt; that will bring infotainment to the end users.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Nils Brauckman&lt;/strong&gt; underlined that the SuSE company, is organized to take this feedback and make it available upstream, doing that since 20 years, as well as providing mission critical solutions to customers, and detailed the new features brought into Linux 3.0 (btrfs rollback, snapshots, trace capabilities, …) bridging the gap between Unix and Linux. He underlined also for SuSE the new agility brought by being back as a separate Business Unit, operating like a single company.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;I like more and more this type of round table, as it gives concrete production example of FLOSS usage, and show how serious customers are today, and also how far they want to push their usage, which creates interesting challenges for us !&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://events.linuxfoundation.org/events/linuxcon-europe/burke&quot;&gt;It takes a community/village to raise a Distribution&lt;/a&gt; by Tim Burke, Red Hat&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&quot;Unix was a job, Linux is a crusade&quot; Tim said it’s awesome to be a part of RHEL as well as OLPC.&lt;br /&gt;
He started by showing a large set of stars in the sky (glibc, LVM, X.org, Linux), independant stars that only come together when gathered in a distribution, which give them visibility. Then he showed the various actors, hardware vendors, translators, designers, lawyers, testers, and distribution vendors as well. The real competitors of Red Hat are VMWare, Microsoft, not the other collaborative groups such as other distribution makers. He explained the relationship around the kernel between upstream, Fedora and RHEL. He also underlined the benefit of working upstream such as they did around the Real Time extensions, instead of coming with a large patch developped separated.&lt;/p&gt;
&lt;p&gt;The role of distribution makers is also to coordinate with hardware vendors (&lt;em&gt;I’m well &lt;a href=&quot;http://brunocornec.wordpress.com/2011/07/06/ossi-best-stronger-together-emea-red-hat-partner-2011/&quot;&gt;placed&lt;/a&gt; to know that !&lt;/em&gt;). Distribution can help create communities such as for AMQP, which was a real common need among FSI companies, as they know how to do it.&lt;/p&gt;
&lt;p&gt;Mantra is &quot;get it upstream first&quot;. Being divergent is being ignored, costs more, represents more work.&lt;/p&gt;
&lt;p&gt;Time then gave some numbers:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;80% of Fortune 500 run Linux.&lt;/li&gt;
&lt;li&gt;92% of supercomputers for healthcare or analytics run Linux.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;He mentioned the &lt;a href=&quot;http://www.openvirtualizationalliance.org/&quot;&gt;OVA&lt;/a&gt; to bring up in the stack integrated solution based on KVM.&lt;br /&gt;
No keynote without cloud, so Tim had to mention it and noticed Linux usage in it, and the integration characteristics it requires, very near from the one you have to make a distro.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;A good talk, but not as pushy as the one made by Jim Whitehurst&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://events.linuxfoundation.org/events/linuxcon-europe/lameter&quot;&gt;How Linux runs the World of Finance&lt;/a&gt; by Christoph Lameter, Graphe Inc.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Christoph started by explaining the various players  (Stickes, traders, banks, …) and explained their needs of speed. This creates the need for certain technologies (Real Time, kernel, binaries and network optimisation, RDMA APIs, fast C++ code, processor caches). One problem is the limitation of speed of light (even if that &lt;a href=&quot;http://www.guardian.co.uk/science/2011/nov/18/neutrinos-still-faster-than-light&quot;&gt;may change&lt;/a&gt; !). That sounded like a joke first, but is very serious !! 200 µs to go round the earth. It creates limitations to signaling of events.&lt;/p&gt;
&lt;p&gt;We’re moving from manual to automated trading. Hours vs ms, human vs compute/algo, 30-60 trades/min vs 1000/s. Manual is used as a backu p mechanism only today.&lt;/p&gt;
&lt;p&gt;The case for Linux is because you can modify what you want, and such win against competitors by speed improvements. The first there wins ! Windows couldn’t make it in term of latency in its network stack. Linux was already used for Internet, large companies such as Amazon, Facebook, … All major stock exchanges are on Linux today. Commercial solutions vendors focus on Linux. Solaris is diminishing after Oracle bought Sun.&lt;/p&gt;
&lt;p&gt;Distributions used are mainly RHEL, some SLES (Germany mainly), a bit of Gentoo and Ubuntu/Debian.&lt;/p&gt;
&lt;p&gt;There are still some challenges for Linux in Finance: involvement upstream is rare, as they want to protect their advantages. Regression in kernel components is creating higher latencies (so some still run RHEL 3 !). Christoph Gave an example of a customer having a 200% regression moving from RHEL4 to RHEL5.&lt;/p&gt;
&lt;p&gt;The Forward path is with direct access to hardware (OS bypass) to gain on latency. RT linux does not scale and increases average latency. RT linux is used by exchanges not traders.&lt;br /&gt;
Linux dominates finance for the forseeable future. Common hardware looks like supercomputers today (Numa). HPC goes mainstream. Offload technology is seen with suspicion by the community. So again no willingness to contribute these improvements upstream.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;One of the best presentation of the day, with lots of anecdotes, and a visible knowledge of the topic end to end.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://events.linuxfoundation.org/events/linuxcon-europe/ruff&quot;&gt;Where is the Money in Open Source?  Business Models and the Marketing of Open Source Technologies&lt;/a&gt; by Nithya Ruff, Wind River Systems&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Nithya created a story to illustrate this talk. 3 communities: producers, distributors, consumers.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Producers are interested by solving problems. License used is key. It’s all about meritocracy. How do developers make money ?: being hired by a company, consulting contracts, venture funded, sponsorship/grants/donations.&lt;/li&gt;
&lt;li&gt;Why consumers use linux: no vendor lock-in, comparable perf and high quality, time to market and savings, choice and flexibility, empowerment,, innovation and transparency&lt;/li&gt;
&lt;li&gt;Distributors make it available for consumers with support, favour FLOSS adoption making it safe to use, employ developers, solve some issues and contribute back, market FLOSS, and serve as a liaison between consumer and developer. Successful business models are subscription, services fee, training, books but also proprietary extensions&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Marketing FLOSS is different. You need to clearly articulate your added value in the ecosystem. So you have to add value. (TTM, ROI, Integration, risk mitigation)&lt;br /&gt;
Prediction, by 2021, 100000 infrastructure core endpoints and 1B mobile endpoints and 20B MtoM endpoints.&lt;br /&gt;
Even more need to collaboration between the various communities.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;I was expecting a bit more from such a presentation. Good for beginers, but lacks new thoughts on our ecosystem.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href=&quot;https://events.linuxfoundation.org/events/linuxcon-europe/wieers&quot;&gt;ReaR&lt;/a&gt; by Dag Wieers&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;I was particularly interested by this presentation as ReaR is a MondoRescue competitor, and Dag is mister rpmforge, mrepo, … so was really curious to attend it.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://rear.sf.net&quot;&gt;Rear&lt;/a&gt; provides a Disaster Recovery Workflow in bash. Its framework is easy to use and extend. It supports HP SmartArray, SW Raid, DRBD (not MondoRescue !), LVM, multipath, ext2,3,4, xfs, jfs, vfat. It supports tape, ISO, USB, eSATA, NFS, CIFS, rsync, HTTP, FTP, SFTP. It also provides back-ends with TSM, HP DP, Bacula, …&lt;/p&gt;
&lt;p&gt;ReaR works on RHEL4,5,6. It’s shipped with SLES (the one distribution on which it’s tested).&lt;/p&gt;
&lt;p&gt;It saves storage info and network info. It has local GRUB integration, serial console support, network and SSH key integration, syslinux management.&lt;/p&gt;
&lt;p&gt;Dag then explained the use case of the Belgian Federal Police (HP-UX to Linux migration using Ignite before):&lt;br /&gt;
Developers prefered USB usage for flexibility instead of OBDR (also lack of OBDR support by latest HP HW). It manages labels on tape and USB devices. For this project, they support a central DR server with PXE boot and control the HTTP PUT upload with ACLs.&lt;br /&gt;
They provide a tool to detect when changes are needed to relaunch ReaR by cron.&lt;/p&gt;
&lt;p&gt;In the future they plan to work on: better rsync support (like rsnapshot or rbme), more backup backends, PXE integration, code base reorganization, release process, website+doc, dev tools.&lt;/p&gt;
&lt;p&gt;Dag made backup and restore demos.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;I really liked the presentation. Dag is an excellent presentor, and has accomplished a huge work to improve the tool.If only I could also have some brilliant contributors like hom for my project !!&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;So after the presentation, I introduced myself to Dag, and we ended up talking together most of the evening during the dinner organized in a central place of Prague. We talked not only about DR, on which we share a lot of common ideas, but also about a large set of other topics, some of them HP related such as webOS future, … I like making new relationships during evens like LinuxCon as you end up talking with luminaries and that helps a lot enrich your own vision.&lt;/p&gt;
&lt;p&gt;Some pictures of this event are available on &lt;a href=&quot;https://picasaweb.google.com/112434061686721373729/LinuxConEMEA2011&quot;&gt;Picasa&lt;/a&gt;.&lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://brunocornec.wordpress.com/category/floss/event-floss/&quot;&gt;Event&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/category/floss/&quot;&gt;FLOSS&lt;/a&gt; Tagged: &lt;a href=&quot;http://brunocornec.wordpress.com/tag/event/&quot;&gt;Event&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/hp/&quot;&gt;HP&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/hplinux/&quot;&gt;HPLinux&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/linux/&quot;&gt;Linux&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/linuxcon/&quot;&gt;LinuxCon&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/linuxfoundation/&quot;&gt;LinuxFoundation&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/mondorescue/&quot;&gt;Mondorescue&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/open-source/&quot;&gt;Open Source&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/brunocornec.wordpress.com/638/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/brunocornec.wordpress.com/638/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/brunocornec.wordpress.com/638/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/brunocornec.wordpress.com/638/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/brunocornec.wordpress.com/638/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/brunocornec.wordpress.com/638/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/brunocornec.wordpress.com/638/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/brunocornec.wordpress.com/638/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/brunocornec.wordpress.com/638/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/brunocornec.wordpress.com/638/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/brunocornec.wordpress.com/638/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/brunocornec.wordpress.com/638/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/brunocornec.wordpress.com/638/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/brunocornec.wordpress.com/638/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=brunocornec.wordpress.com&amp;amp;blog=5437580&amp;amp;post=638&amp;amp;subd=brunocornec&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Sun, 11 Dec 2011 02:02:10 +0000</pubDate>
</item>
<item>
	<title>Bruno Cornec: The wow effect</title>
	<guid isPermaLink="false">http://brunocornec.wordpress.com/?p=674</guid>
	<link>http://brunocornec.wordpress.com/2011/12/10/the-wow-effect/</link>
	<description>&lt;p&gt;Sometimes, you read a news, and just found out that this is so great the only word that comes to your mouth is wow !&lt;/p&gt;
&lt;p&gt;I must confess that since the last ten years I have not been that impressed by HP CEO decisions in the past. And especially &lt;a href=&quot;http://brunocornec.wordpress.com/2011/08/22/some-thoughts-on-webos-and-hp/&quot;&gt;recently&lt;/a&gt;. At that time I was thinking about WebOS: “&lt;em&gt;Of course, in order to compete with Android, it would need to be Open Source IMO&lt;/em&gt;” and of HP: “&lt;em&gt;HP needs to respect its willingness to really invest in R&amp;amp;D more as promised.&lt;/em&gt;” And I even concluded: “&lt;em&gt;Even if I think that founders are leading their company with a unique perspective, there is no reason that another board and leaders can align and do the same. Maybe after re-reading the HP Way.&lt;/em&gt;“&lt;/p&gt;
&lt;p&gt;To be honest, even if I’m trying to reach a “Strategist” level inside HP, I’d never have thought to be so spotty !!&lt;/p&gt;
&lt;p&gt;And then came the wow effect: &lt;a href=&quot;http://www.hp.com/hpinfo/newsroom/press/2011/111209xa.html&quot;&gt;HP to Contribute webOS to Open Source&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;And the &lt;a href=&quot;http://www.theverge.com/2011/12/9/2624209/meg-whitman-marc-andreessen-web-os-open-source-interview&quot;&gt;bonus effect&lt;/a&gt;: “Meg: &lt;em&gt;There will be milestones along the way, but one thing I know about technology is that if you believe in something, you have to have a longer term horizon than next week, next quarter, or next year.&lt;/em&gt;” &lt;/p&gt;
&lt;p&gt;A CEO of a fortune 500 company is just saying that we need to think not only on a quarterly base, but *also* in term of years in technology. That’s a tremendous change, especially with regards to the Hurd period. Which makes me feel much more confident in HP’s ability to come back much stronger in the play after this cahotic year. That’s a fantastic evolution IMHO, for both HP employees and customers ! As this way of thinking will also serve other approaches in other BUs.&lt;/p&gt;
&lt;p&gt;“Meg: &lt;em&gt;Well first I want to set expectations about time frame. This is going to take some time. If you look back at the history of Mozilla or Red Hat — these things did not become giant platforms over night. This in my view is a 4 or 5 year timeframe, and I want to make sure we really communicate that.&lt;/em&gt;“&lt;/p&gt;
&lt;p&gt;We now are taking point of comparison with Mozilla or Red Hat. Wow again !! This also seems to reinforce the recent talk she made at HP Discover in EMEA, insisting on our roots as a hardware manufacturer. And I was already thinking that of course, using Open Source much more with our power of great hardware manufacturer, and one of the best service company could just place us as being really successful in the coming years.&lt;/p&gt;
&lt;p&gt;So I’m really forced to &lt;a href=&quot;http://brunocornec.wordpress.com/2011/11/03/new-thoughts-on-webos/&quot;&gt;change my mind&lt;/a&gt; on the conspiration theory, and deliver on what I said then: “&lt;em&gt;open sourcing a technology helps driving the business in favour of the open sourcer, and doesn’t reduce it. Especially when the most costly part (the investment in R&amp;amp;D) has already been done.&lt;/em&gt;“&lt;/p&gt;
&lt;p&gt;So I promise that I’ll do all my best to help HP make this new &lt;a href=&quot;http://developer.palm.com/blog/2011/12/open-source/&quot;&gt;Open Sourced WebOS&lt;/a&gt; successful as much as I can. And as a start, as I was so successful in my guess, I’m launching a new idea in the basket: HP should now contact the &lt;a href=&quot;https://www.tizen.org/&quot;&gt;Tizen community&lt;/a&gt; (which has still not published its architecture diagram), as a member of the Linux Foundation, and propose them to join forces around webOS which exists, in order to add to it what Tizen wanted to get in such platform instead of re-inventing the wheel. &lt;/p&gt;
&lt;p&gt;Let’s all work together for once, to have the biggest community behind a brilliant platform, which is now open source, and be here with a Linux based approach, as well as on the server side, the best offering for customers for tablets, phones, TVs, IVIs, …&lt;/p&gt;
&lt;p&gt;As an example, I’d love to see some KDE apps available on top of WebOS, my favourite being &lt;a href=&quot;http://tellico-project.org/&quot;&gt;tellico&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;And in order to feast that, I’ve just accepted an &lt;a href=&quot;http://trac.project-builder.org/ticket/110&quot;&gt;enhancement request&lt;/a&gt; for project-builder.org to add as quickly as possible now !! My little stone to improve the ecosystem.&lt;/p&gt;
&lt;p&gt;Never sure what the future will be, but this past decision is already a new reference point in IT history. Thanks Meg, Marc and all the others who helped obtaining that ! I can now be proud again of working at HP &lt;img alt=&quot;:-)&quot; class=&quot;wp-smiley&quot; src=&quot;http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif&quot; /&gt; &lt;/p&gt;
&lt;br /&gt;Filed under: &lt;a href=&quot;http://brunocornec.wordpress.com/category/floss/&quot;&gt;FLOSS&lt;/a&gt; Tagged: &lt;a href=&quot;http://brunocornec.wordpress.com/tag/hp/&quot;&gt;HP&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/hplinux/&quot;&gt;HPLinux&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/linux/&quot;&gt;Linux&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/linuxfoundation/&quot;&gt;LinuxFoundation&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/open-source/&quot;&gt;Open Source&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/project-builder-org/&quot;&gt;project-builder.org&lt;/a&gt;, &lt;a href=&quot;http://brunocornec.wordpress.com/tag/webos/&quot;&gt;webOS&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/brunocornec.wordpress.com/674/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/brunocornec.wordpress.com/674/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/brunocornec.wordpress.com/674/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/brunocornec.wordpress.com/674/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/brunocornec.wordpress.com/674/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/brunocornec.wordpress.com/674/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/brunocornec.wordpress.com/674/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/brunocornec.wordpress.com/674/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/brunocornec.wordpress.com/674/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/brunocornec.wordpress.com/674/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/brunocornec.wordpress.com/674/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/brunocornec.wordpress.com/674/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/brunocornec.wordpress.com/674/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/brunocornec.wordpress.com/674/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=brunocornec.wordpress.com&amp;amp;blog=5437580&amp;amp;post=674&amp;amp;subd=brunocornec&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Sat, 10 Dec 2011 00:57:21 +0000</pubDate>
</item>
<item>
	<title>Sebastian Trueg: Symbolic Links in Nepomuk – A Solution</title>
	<guid isPermaLink="false">http://trueg.wordpress.com/?p=659</guid>
	<link>http://trueg.wordpress.com/2011/12/07/symbolic-links-in-nepomuk-a-solution/</link>
	<description>&lt;p&gt;Until now symbolic links were not handled in Nepomuk. Today I commited the last patch for the new symlink support in Nepomuk. The solution I chose is not the theoretically perfect one. That would have taken way to much effort while introducing all kinds of possible bugs, regressions, API incompatibilities, and so on. But the solution is nice and clean and simple.&lt;/p&gt;
&lt;p&gt;Essentially each direct symlink is indexed as a separate file using the content of its target file. (This is necessary since a direct symlink might have a different file name than the target file.) The interesting part are the indirect symlinks. Indirect symlinks are files in a folder which is a symlink to another folder. An example:&lt;/p&gt;
&lt;pre&gt;/home/trueg/
|-- subdir/
   |-- thefile.txt
|-- link/ -&amp;gt; subdir/
   |-- thefile.txt&lt;/pre&gt;
&lt;p&gt;Here I have a folder “subdir” which contains a file “thefile.txt”. The folder “link” is a direct symlink to “subdir” whereas “link/thefile.txt” is an indirect symlink to “subdir/thefile.txt”.&lt;/p&gt;
&lt;p&gt;Indirect symlinks are simply stored as alternative URLs on the target file resources using the kext:altUrl property. (The property is not defined in &lt;a href=&quot;http://oscaf.sourceforge.net/nie.html&quot;&gt;NIE&lt;/a&gt; since it is not theoretically sound with respect to the design of NIE. It needs to be considered a beautiful hack.)&lt;/p&gt;
&lt;p&gt;The only situation in which the alternative URLs are actually needed is when searching in a specific folder. Imagine searching in “/home/trueg/link” only. Since there are no &lt;a href=&quot;http://oscaf.sourceforge.net/nie.html#nie:url&quot;&gt;nie:url&lt;/a&gt; values which match that prefix we need to search the kext:altUrls, too.&lt;/p&gt;
&lt;p&gt;The result of all this is that nearly no additional space is required except for the kext:altUrl properties, files are not indexed more than once, and files in symlinked folders are found in addition to “normal” files.&lt;/p&gt;
&lt;p&gt;In my tests everything seems to work nicely but I urge you to test the &lt;strong&gt;nepomuk/symlinkHandling&lt;/strong&gt; branches in &lt;a href=&quot;http://quickgit.kde.org/?p=kdelibs.git&amp;amp;a=shortlog&amp;amp;h=refs/heads/nepomuk/symlinkHandling&quot;&gt;kdelibs&lt;/a&gt; and &lt;a href=&quot;http://quickgit.kde.org/?p=kde-runtime.git&amp;amp;a=shortlog&amp;amp;h=refs/heads/nepomuk/symlinkHandling&quot;&gt;kde-runtime&lt;/a&gt; and report any problems back to me. The more testing I get the quicker I can merge both into KDE 4.8.&lt;/p&gt;
&lt;p&gt;Lastly the &lt;a href=&quot;http://pledgie.com/campaigns/16020&quot;&gt;pledgie campaign is done&lt;/a&gt; but the search for funds goes on:&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;amp;hosted_button_id=CDNMQZEBKP44G&quot;&gt;&lt;img alt=&quot;&quot; src=&quot;https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;br /&gt;  &lt;a href=&quot;http://feeds.wordpress.com/1.0/gocomments/trueg.wordpress.com/659/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/comments/trueg.wordpress.com/659/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godelicious/trueg.wordpress.com/659/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/delicious/trueg.wordpress.com/659/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gofacebook/trueg.wordpress.com/659/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/facebook/trueg.wordpress.com/659/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gotwitter/trueg.wordpress.com/659/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/twitter/trueg.wordpress.com/659/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/gostumble/trueg.wordpress.com/659/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/stumble/trueg.wordpress.com/659/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/godigg/trueg.wordpress.com/659/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/digg/trueg.wordpress.com/659/&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.wordpress.com/1.0/goreddit/trueg.wordpress.com/659/&quot; rel=&quot;nofollow&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; src=&quot;http://feeds.wordpress.com/1.0/reddit/trueg.wordpress.com/659/&quot; /&gt;&lt;/a&gt; &lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;1&quot; src=&quot;http://stats.wordpress.com/b.gif?host=trueg.wordpress.com&amp;amp;blog=6648236&amp;amp;post=659&amp;amp;subd=trueg&amp;amp;ref=&amp;amp;feed=1&quot; width=&quot;1&quot; /&gt;</description>
	<pubDate>Wed, 07 Dec 2011 19:31:11 +0000</pubDate>
</item>
<item>
	<title>Équipe Mandriva: Clé publique officielle</title>
	<guid isPermaLink="false">http://blog.mandriva.com/fr/?p=1139</guid>
	<link>http://blog.mandriva.com/fr/2011/12/07/cle-publique-officielle/</link>
	<description>&lt;p&gt;Les dépôts 2011 ont été signés avec la clé officielle Mandriva (branches main et contrib). Cela signifie qu’il n’y a plus de clé cooker dans les dépôts 2011.&lt;/p&gt;
&lt;p&gt;Ce changement provoque une mise à jour majeure de tous les miroirs, car les RPMs signés ne sont plus les mêmes, ils sont donc resynchronisés sur tous les miroirs.&lt;/p&gt;
&lt;p&gt;Vous devriez donc importer la clé publique officielle, enlever la clé cooker si vous le souhaitez, mais les RPMs déjà installés restent signés avec la clé cooker.&lt;/p&gt;
&lt;p&gt;Vous pouvez utiliser n’importe quel mirroir 2011 pour importer la clé:&lt;/p&gt;
&lt;pre&gt;rpm --import ftp://ftp.proxad.net/pub/Distributions_Linux/MandrivaLinux/official/2011/i586/media/media_info/pubkey_contrib
rpm --import ftp://ftp.proxad.net/pub/Distributions_Linux/MandrivaLinux/official/2011/i586/media/media_info/pubkey_main&lt;/pre&gt;
&lt;p&gt;Pour retirer la clé cooker :&lt;/p&gt;
&lt;pre&gt;rpm -e gpg-pubkey-22458a98-3969e7de&lt;/pre&gt;
&lt;p&gt;D’autre part, libreoffice a été déplacé de media/testing vers main/release, pour corriger les problèmes&lt;a href=&quot;https://qa.mandriva.com/show_bug.cgi?id=64224&quot;&gt; #64224&lt;/a&gt; et &lt;a href=&quot;https://qa.mandriva.com/show_bug.cgi?id=64246&quot;&gt;#64246&lt;/a&gt;. La validation QA a été faite selon la &lt;a href=&quot;http://wiki.mandriva.com/en/OOo_Quality_Assurance&quot;&gt;procédure habituelle&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Wed, 07 Dec 2011 17:44:38 +0000</pubDate>
</item>
<item>
	<title>Denis Koryavov: ROSA Desktop 2011 GNOME Editon Alpha</title>
	<guid isPermaLink="true">http://koryavov.net/post/13823682949</guid>
	<link>http://koryavov.net/post/13823682949</link>
	<description>&lt;p&gt;Hello everyone!&lt;/p&gt;
&lt;p&gt;As you probably know, Mandriva/ROSA officially supports only KDE as Desktop Environment. But as we promised earlier, we support any activity of our members with other Desktop Environments. For example, currently we have a &lt;a href=&quot;http://code.google.com/p/mandriva-lxde/#EN&quot; target=&quot;_blank&quot; title=&quot;Mandriva Desktop 2011 LXDE Edition&quot;&gt;good distro on the LXDE&lt;/a&gt; created by Alexander Kazancev. &lt;/p&gt;
&lt;p&gt;Today, I’m glad to announce a new distro based on the Mandriva/ROSA 2011 repository: ROSA Desktop 2011 GNOME Editon Alpha (ROSA Desktop 2011 GE, RDGE). This unofficial distro created by Arkady Shane and by me for users who, for any reasons, do not want to use official distribution with KDE and want to use GNOME. &lt;/p&gt;
&lt;p&gt;RDGE is an unofficial distro, it will be developed as community wants. So, if you are a GNOME user, and want to be involved in the RDGE development, or you just want to say an idea - feel free to write your comment here, in the my blog. Later, we’ll create a &lt;a href=&quot;http://wiki.rosalab.ru&quot; target=&quot;_self&quot; title=&quot;WIKI ROSA&quot;&gt;wiki&lt;/a&gt; page for the RDGE and if community is interested in RDGE and there are people who can take an active part in the distro making, we’ll give more opportunities for them (ROSA’s resources for building a distro, wiki, IRC, mailing lists, etc). &lt;/p&gt;
&lt;p&gt;OK. Let’s take a look at the distro. Default applications:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;GNOME &lt;strong&gt;2.32 &lt;/strong&gt;(yes, yes, a “good old” GNOME 2 :));&lt;/li&gt;
&lt;li&gt;Firefox 8, Evolution, Empathy, Ekiga, Deluge for internet surfing, mail, instant messaging and torrents;&lt;/li&gt;
&lt;li&gt;Shotwell and GIMP for photo editing;&lt;/li&gt;
&lt;li&gt;LibreOffice for documents making;&lt;/li&gt;
&lt;li&gt;Totem, Rhytmbox and EasyTag for playing and editing media files;&lt;/li&gt;
&lt;li&gt;Other software included by default: Gwibber, Evince, FBReader, SimpleScan, EOG, Cheese, File-roller, Brasero, Gnote, GNOME Games, GNOME Terminal; &lt;/li&gt;
&lt;li&gt;Kernel 2.6.38.7 (will be updated to 2.6.39.4 soon);&lt;/li&gt;
&lt;li&gt;ROSA icons and ROSA-Elementary theme by default (with some bugs for now);&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;Some screenshots:&lt;/p&gt;
&lt;p&gt;&lt;img align=&quot;middle&quot; alt=&quot;ROSA Desktop 2011 GNOME Edition Default View&quot; src=&quot;http://media.tumblr.com/tumblr_lvs0viW7qF1qkzy6g.png&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;                      Pic&lt;/strong&gt;. 1: ROSA Desktop 2011 GE default view&lt;/p&gt;
&lt;p&gt;&lt;img align=&quot;middle&quot; alt=&quot;ROSA Desktop 2011 GE: Nautilus and LibreOffice &quot; src=&quot;http://media.tumblr.com/tumblr_lvs3q2N7td1qkzy6g.png&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;                     Pic&lt;/strong&gt;.2: LibreOffice and Nautilus in ROSA Desktop 2011 GE&lt;/p&gt;
&lt;p&gt;Some words about the distro. Because it is based on the Mandriva/ROSA 2011 repositories it is quite stable and “Alpha” prefix is more about stuffing rather than stability. So, I appeal to all our testers and GNOME users: please download iso-image and test it and give your feedback! Do you like it, default applications, theme? I think, as RDGE is an community-driven distro, community should decide all about it. &lt;/p&gt;
&lt;p&gt;Known bugs:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;ROSA theme is used not in all components, and has some bugs (for example, Nautilus looks not ideal sometimes);&lt;/li&gt;
&lt;li&gt;Old kernel.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;You can download iso-images from &lt;a href=&quot;http://mirror.yandex.ru/rosa/iso/unofficial/ROSA.Desktop.2011.GNOME.Edition.Alpha/&quot; target=&quot;_self&quot; title=&quot;Download ROSA Desktop 2011 GE Alpha&quot;&gt;here&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;NOTE: &lt;/strong&gt;ROSA Desktop 2011 GE is an unofficial distro, ROSA/Mandriva will &lt;strong&gt;not &lt;/strong&gt;provide support for it.&lt;/p&gt;</description>
	<pubDate>Tue, 06 Dec 2011 12:20:00 +0000</pubDate>
</item>

</channel>
</rss>

