<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<feed xmlns="http://www.w3.org/2005/Atom">

	<title>Planet Easter-eggs</title>
	<link rel="self" href="http://planet.easter-eggs.org/atom.xml"/>
	<link href="http://planet.easter-eggs.org/"/>
	<id>http://planet.easter-eggs.org/atom.xml</id>
	<updated>2010-03-13T13:20:04+00:00</updated>
	<generator uri="http://www.planetplanet.org/">Planet/2.0 +http://www.planetplanet.org</generator>

	<entry xml:lang="fr-fr">
		<title type="html">Publication papier du recueil de poèmes &quot;L'abyssal envers&quot;</title>
		<link href="http://www.ilv-edition.com/librairie/labyssal_envers.html"/>
		<id>http://www.esaracco.fr/fc84e1037a7dcbdfe86645e0addf9325</id>
		<updated>2010-03-03T20:20:00+00:00</updated>
		<content type="html">Publication papier du recueil de poèmes &lt;strong&gt;L'abyssal envers&lt;/strong&gt; aux éditions ILV-Edition.&lt;p&gt;&lt;/p&gt;« Ses yeux raclent la pierre d’une caresse animale&lt;br /&gt;Ses mains battent l’invisible pour attraper le temps&lt;br /&gt;Ses pieds qui tambourinent en instruments rageurs&lt;br /&gt;Font remonter de terre les vers du voyageur »&lt;br /&gt; &lt;dd&gt;&lt;em&gt;Les vers du voyageur&lt;/em&gt;&lt;/dd&gt;&lt;p&gt;&lt;/p&gt;&lt;a href=&quot;http://www.ilv-edition.com/librairie/labyssal_envers.html&quot;&gt;Fiche&lt;/a&gt; - &lt;a href=&quot;http://www.ilv-edition.com/panier.php?add=403&quot;&gt;Commander&lt;/a&gt;</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Mon Best Of Podcast</title>
		<link href="http://valos.home-dn.net/blog/index.php?post/2010/02/28/Mon-Best-Of-Podcast"/>
		<id>urn:md5:2c7965fa2359ddc0d3cf949d5f7ac4f6</id>
		<updated>2010-02-28T22:23:00+00:00</updated>
		<content type="html">&lt;p&gt;La liste de podcasts que j'écoute actuellement&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.radio-canada.ca/emissions/les_annees_lumiere/2009-2010/&quot;&gt;Les années lumières&lt;/a&gt; http://rss.radio-canada.ca/radio/lumiere.xml&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://sites.radiofrance.fr/chaines/france-culture2/emissions/continent_sciences/index.php?emission_id=9&quot;&gt;Continent Sciences&lt;/a&gt; http://radiofrance-podcast.net/podcast09/rss_16256.xml&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://lille.dg-sc.org/random/&quot;&gt;Random&lt;/a&gt; http://fz-corp.net/podcast/podcast.xml&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://theslchronicles.serieslive.com/&quot;&gt;SeriesLive&lt;/a&gt; http://theslchronicles.serieslive.com/feed/&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.rsr.ch/la-1ere/impatience/&quot;&gt;Impatience&lt;/a&gt; http://www.rsr.ch/podcast.aspx?rss=impatience&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.lavoixdulibre.info/&quot; hreflang=&quot;fr&quot;&gt;la voie du libre&lt;/a&gt; http://feeds.feedburner.com/podcastmp3vdl?format=xml&lt;/li&gt;
&lt;/ul&gt;</content>
		<author>
			<name>Valéry Febvre</name>
			<uri>http://valos.home-dn.net/blog/index.php</uri>
		</author>
		<source>
			<title type="html">valos://blog</title>
			<link rel="self" href="http://valos.home-dn.net/blog/index.php?feed/rss2"/>
			<id>http://valos.home-dn.net/blog/index.php?feed/rss2</id>
			<updated>2010-03-06T00:50:08+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Actu Podboy</title>
		<link href="http://valos.home-dn.net/blog/index.php?post/2010/02/28/Actu-Podboy"/>
		<id>urn:md5:264a9d611bc6194c21db3b0e9a076eab</id>
		<updated>2010-02-28T15:08:00+00:00</updated>
		<content type="html">&lt;p&gt;Une &lt;a href=&quot;http://code.google.com/p/podboy/downloads/list&quot;&gt;nouvelle version 1.4.0&lt;/a&gt; est dispo.&lt;/p&gt;


&lt;p&gt;6 versions sont passées depuis mon dernier billet. Pas bien &lt;img src=&quot;http://valos.home-dn.net/blog/themes/default/smilies/sad.png&quot; alt=&quot;:-(&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;


&lt;h5&gt;Résumé des changements depuis la version 1.2.0:&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Les podcats peuvent être renommés&lt;/li&gt;
&lt;li&gt;Les URL des podcats peuvent être modifiées&lt;/li&gt;
&lt;li&gt;Les téléchargements peuvent être interrompus&lt;/li&gt;
&lt;li&gt;Ajout de la possibilité de passer en mode multi-sélection dans les listes&lt;/li&gt;
&lt;li&gt;Améliorations dans l'analyse des flux des podcasts et dans la vérification des mises à jour&lt;/li&gt;
&lt;li&gt;Quelques secondes gagnées au démarrage (environ 4 secondes)&lt;/li&gt;
&lt;li&gt;3 nouveaux réglages dans une nouvelle section &quot;Display&quot;: finger size, scaling factor et orientation&lt;/li&gt;
&lt;/ul&gt;</content>
		<author>
			<name>Valéry Febvre</name>
			<uri>http://valos.home-dn.net/blog/index.php</uri>
		</author>
		<source>
			<title type="html">valos://blog</title>
			<link rel="self" href="http://valos.home-dn.net/blog/index.php?feed/rss2"/>
			<id>http://valos.home-dn.net/blog/index.php?feed/rss2</id>
			<updated>2010-03-06T00:50:08+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Sortie de gurlchecker 0.13</title>
		<link href="http://gurlchecker.labs.libre-entreprise.org/index_fr.html"/>
		<id>http://www.esaracco.fr/eea1741e0f5bc0e3e30160f0362c4bf1</id>
		<updated>2010-02-13T16:39:00+00:00</updated>
		<content type="html">&lt;a href=&quot;http://gurlchecker.labs.libre-entreprise.org/index_fr.html&quot;&gt;gURLChecker&lt;/a&gt; est un vérificateur graphique de sites web pour GNU/Linux et autres systèmes POSIX. Il fonctionne sur un site entier, une page locale ou un fichier de signets.&lt;p&gt;&lt;/p&gt;&lt;strong&gt;ChangeLog&lt;/strong&gt;&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Vérification des signets Google Chrome&lt;/li&gt;
  &lt;li&gt;Vérification des signets Opera&lt;/li&gt;
  &lt;li&gt;Correction d'un problème dans la gestion des fichiers de signets distants&lt;/li&gt;
  &lt;li&gt;Suppression des noeuds XML d'une manière plus orthodoxe&lt;/li&gt;
  &lt;li&gt;Réorganisation du code de gestion des signets, et nettoyage&lt;/li&gt;
&lt;/ul&gt;</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Sortie de wbmclamav 0.12.1</title>
		<link href="http://wbmclamav.labs.libre-entreprise.org/index_fr.html"/>
		<id>http://www.esaracco.fr/e6ef8873dd042b8b9419f7120ebeeca8</id>
		<updated>2010-02-13T15:43:00+00:00</updated>
		<content type="html">&lt;a href=&quot;http://wbmclamav.labs.libre-entreprise.org/index_fr.html&quot;&gt;wbmclamav&lt;/a&gt; est un module webmin pour gérer Clam Antivirus.&lt;p&gt;&lt;/p&gt;&lt;strong&gt;ChangeLog&lt;/strong&gt;&lt;p&gt;&lt;/p&gt;
	&lt;ul&gt;
	  &lt;li&gt;Correction d'un problème avec le renvoi d'emails quand un port est spécifié&lt;/li&gt;
	  &lt;li&gt;Correction d'un problème dans le script de purge de la quarantaine&lt;/li&gt;
	  &lt;li&gt;Grosse simplification du script de purge de la quarantaine&lt;/li&gt;
	&lt;/ul&gt;</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Sortie de gurlchecker 0.12.1</title>
		<link href="http://gurlchecker.labs.libre-entreprise.org/index_fr.html"/>
		<id>http://www.esaracco.fr/8cf1925a72f94060a3200a705fbe1ce7</id>
		<updated>2010-02-06T10:12:00+00:00</updated>
		<content type="html">&lt;a href=&quot;http://gurlchecker.labs.libre-entreprise.org/index_fr.html&quot;&gt;gURLChecker&lt;/a&gt; est un vérificateur graphique de sites web pour GNU/Linux et autres systèmes POSIX. Il fonctionne sur un site entier, une page locale ou un fichier de signets.&lt;p&gt;&lt;/p&gt;&lt;strong&gt;ChangeLog&lt;/strong&gt;&lt;p&gt;&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Evite l'utilisation de la fonction gtk_widget_set_visible() pour préserver la compatibilité Gtk+  2.18&lt;/li&gt;
&lt;/ul&gt;</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Sortie de gurlchecker 0.12</title>
		<link href="http://gurlchecker.labs.libre-entreprise.org/index_fr.html"/>
		<id>http://www.esaracco.fr/eca2174f42015bce4cc73d58318b1b7e</id>
		<updated>2010-01-30T08:30:00+00:00</updated>
		<content type="html">&lt;a href=&quot;http://gurlchecker.labs.libre-entreprise.org/index_fr.html&quot;&gt;gURLChecker&lt;/a&gt; est un vérificateur graphique de sites web pour GNU/Linux et autres systèmes POSIX. Il fonctionne sur un site entier, une page locale ou un fichier de signets.&lt;p&gt;&lt;/p&gt;&lt;strong&gt;ChangeLog&lt;/strong&gt;&lt;p&gt;&lt;/p&gt;
Beaucoup d'évolutions et de corrections dans cette nouvelle version. Les principales sont:&lt;br /&gt;
&lt;ul&gt;
  &lt;li&gt;Export CSV&lt;/li&gt;
  &lt;li&gt;Vérification des signets Firefox&lt;/li&gt;
  &lt;li&gt;Suppression massive des mauvais liens&lt;/li&gt;
  &lt;li&gt;Vérification de la sécurité des signets&lt;/li&gt;
  &lt;li&gt;Nouvelle méthode de filtrage pour le résultat du scan&lt;/li&gt;
  &lt;li&gt;Réécriture de certaines méthodes réseau&lt;/li&gt;
  &lt;li&gt;Corrections HTTPS et HTTP&lt;/li&gt;
  &lt;li&gt;Un très grand nombre de corrections de fuites de mémoire&lt;/li&gt;
&lt;/ul&gt;</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">On media players: 2 years after</title>
		<link href="http://julien.danjou.info/blog/index.php/post/2010/01/22/On-media-players%3A-2-years-after"/>
		<id>urn:md5:743ddbc97eb7d2799a42ad0116db82b3</id>
		<updated>2010-01-22T08:17:00+00:00</updated>
		<content type="html">&lt;p&gt;Two years ago, &lt;a href=&quot;http://julien.danjou.info/blog/index.php/post/2007/08/10/On-media-players-xmms-anda-audacious&quot;&gt;I wrote about my switch&lt;/a&gt; from my beloved &lt;em&gt;xmms&lt;/em&gt; to &lt;a href=&quot;http://audacious-media-player.org/&quot;&gt;audacious&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;During this 2 years with Audacious, I suffered a bit. It was working quite fine, but I saw no big progress around it. Life happened, and I had to use a network system to play music. I started to use PulseAudio over TCP, but it does not work well, and does not work at all with Audacious (and even if the plugin is provided by upstream). So I decided to dump it.&lt;/p&gt;


&lt;p&gt;And some days ago I discovered &lt;a href=&quot;http://sonata.berlios.de/&quot;&gt;Sonata&lt;/a&gt;, a &lt;a href=&quot;http://www.musicpd.org/&quot;&gt;MPD&lt;/a&gt; client. I never liked MPD so far because all clients I found were lame.&lt;/p&gt;


&lt;p&gt;But I really like Sonata. It allows me to listen music the way I still want: load everything in one playlist, listen everything randomly or type a song/artist to jump to it directly in the current playlist. It even has some nice feature (lyrics, so I'll be able to song out loud, covers, tag editing…) and is written in Python and GTK+ (some days I may even hack it!).&lt;/p&gt;



&lt;p&gt;You can rest in peace x11amp :-p&lt;/p&gt;</content>
		<author>
			<name>jd</name>
			<uri>http://julien.danjou.info/blog/index.php/</uri>
		</author>
		<source>
			<title type="html">jd:/dev/blog - Tag - work</title>
			<subtitle type="html">Julien Danjou's blog</subtitle>
			<link rel="self" href="http://julien.danjou.info/blog/index.php/feed/tag/work/atom"/>
			<id>urn:md5:44f74c834dac8a1829cb804b414698e9</id>
			<updated>2010-03-06T16:30:07+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Nouveautés Podboy</title>
		<link href="http://valos.home-dn.net/blog/index.php?post/2010/01/13/Nouveautes-Podboy"/>
		<id>urn:md5:6e02cfe37e4c139384a79074a6f076b7</id>
		<updated>2010-01-13T07:06:00+00:00</updated>
		<content type="html">&lt;p&gt;Deux versions (1.1.0 et 1.2.0) de &lt;a href=&quot;http://code.google.com/p/podboy/&quot; hreflang=&quot;en&quot;&gt;Podboy&lt;/a&gt; ont été publiées depuis le dernier billet. Désolé pour la flemme.&lt;/p&gt;


&lt;p&gt;Les développements ont été principalement axés sur des demandes utilisateurs.&lt;/p&gt;


&lt;h5&gt;Changements de la version 1.2.0 (du 12-01-2010)&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;New feature: show details of episodes in page &quot;Downloads&quot; (like in page &quot;Episodes&quot;).&lt;/li&gt;
&lt;li&gt;New feature: update only the selected podcast in page &quot;Downloads&quot;.&lt;/li&gt;
&lt;li&gt;New feature: episodes can now be tagged as &quot;Ignore&quot; in page &quot;Downloads&quot;. All episodes with status &quot;ignore&quot; will be skip when the downloading of all episodes of a podcast will be requested.&lt;/li&gt;
&lt;li&gt;New feature: import of a list of podcasts via an OPML file (new button &quot;Import&quot; in the page &quot;Podcasts&quot;)&lt;/li&gt;
&lt;li&gt;Fixed occasionnaly incorrect display size of podcasts covers.&lt;/li&gt;
&lt;/ul&gt;

&lt;h5&gt;Changements de la version 1.1.0 (du 02-01-2010)&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Unplayed episodes can now be identified by a yellow star.&lt;/li&gt;
&lt;li&gt;Unplayed/played status of episodes can be manually toggled via a new entry named &quot;Toggle Played Status&quot; in the oversel button &quot;Actions&quot; of page &quot;Episodes&quot;.&lt;/li&gt;
&lt;li&gt;Add possibility to show details of episodes before to play them via a new entry named &quot;Show Details&quot; in the hoversel button &quot;Actions&quot; of page &quot;Episodes&quot;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;J'ai également travaillé sur le support des fichiers en format OGG.
Malheureusement ce ne fût pas sans certaines déconvenues.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sur mon ordi portable, ca marche parfois mais j'ai très souvent des segfaults au démarrage de la lecture. étant donné que ça marche très bien en ligne de commande avec gst-launch (gst-launch-0.10 filesrc location=/path/to/file.ogg&amp;nbsp;! oggdemux&amp;nbsp;! vorbisdec&amp;nbsp;! audioconvert&amp;nbsp;! audioresample&amp;nbsp;! alsasink ), je penche pour un bug dans le binding Python.&lt;/li&gt;
&lt;li&gt;Sur le FR, c'est diffèrent. Pas moyen de jouer quoi que ce soit. Il semble y avoir un bug dans le pipeline &quot;oogdemux&quot;. Même en essayant en ligne de commande avec gst-launch, c'est toujours la même erreur (j'utlise la distribution SHR-unstable):&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;
ERROR: from element /GstPipeline:pipeline0/GstOggDemux:oggdemux0: Internal data stream error.
Additional debug info:
gstoggdemux.c(3251): gst_ogg_demux_loop (): /GstPipeline:pipeline0/GstOggDemux:oggdemux0:
stream stopped, reason not-linked
ERROR: pipeline doesn't want to preroll.
&lt;/pre&gt;


&lt;p&gt;Les versions de Gstreamer sont les mêmes: 0.10.25&lt;/p&gt;

&lt;table&gt;&lt;tr&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/podboy/podboy-downloads-6.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/podboy/.podboy-downloads-6_s.jpg&quot; alt=&quot;Podboy Downloads 6&quot; title=&quot;Podboy Downloads 6, jan 2010&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/podboy/podboy-episodes-2.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/podboy/.podboy-episodes-2_s.jpg&quot; alt=&quot;Podboy Episodes 2&quot; title=&quot;Podboy Episodes 2, dec 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/podboy/podboy-episodes-4.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/podboy/.podboy-episodes-4_s.jpg&quot; alt=&quot;Podboy Episodes 4&quot; title=&quot;Podboy Episodes 4, jan 2010&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</content>
		<author>
			<name>Valéry Febvre</name>
			<uri>http://valos.home-dn.net/blog/index.php</uri>
		</author>
		<source>
			<title type="html">valos://blog</title>
			<link rel="self" href="http://valos.home-dn.net/blog/index.php?feed/rss2"/>
			<id>http://valos.home-dn.net/blog/index.php?feed/rss2</id>
			<updated>2010-03-06T00:50:08+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">L'API de Wikipedia</title>
		<link href="http://blog.infos-pratiques.org/index.php/post/2010/01/06/L-API-de-Wikipedia"/>
		<id>urn:md5:6043ef1356e91925ef25d0eedc7fd2ca</id>
		<updated>2010-01-06T07:41:00+00:00</updated>
		<content type="html">&lt;p&gt;Pour constituer un annuaire libre pour les collectivités, dans le cadre du &lt;a href=&quot;http://www.comarquage.fr&quot; hreflang=&quot;fr&quot;&gt;co-marquage&lt;/a&gt;, un &lt;a href=&quot;http://hg.infos-pratiques.org/souk/file/tip/souk/scripts/download_wikipedia_comnunes.py&quot; hreflang=&quot;en&quot;&gt;bot&lt;/a&gt; récupère la page Wikipedia de chaque commune de France.&lt;/p&gt;


&lt;p&gt;Pour réaliser ce bot, il a fallu utiliser l'&lt;a href=&quot;http://www.mediawiki.org/wiki/API&quot; hreflang=&quot;en&quot;&gt;API fournie par Mediawiki&lt;/a&gt;. Et ce fut une excellente surprise&amp;nbsp;: la documentation est bonne, les fonctions de l'API fournissent elles-mêmes &lt;a href=&quot;http://en.wikipedia.org/w/api.php&quot; hreflang=&quot;en&quot;&gt;leur documentation&lt;/a&gt; et elles peuvent être testées simplement avec un navigateur web. Un exemple à suivre.&lt;/p&gt;</content>
		<author>
			<name>Emmanuel Raviart</name>
			<uri>http://blog.infos-pratiques.org/index.php/</uri>
		</author>
		<source>
			<title type="html">Infos pratiques</title>
			<link rel="self" href="http://blog.infos-pratiques.org/index.php/feed/atom"/>
			<id>urn:md5:fea272dd974897385aa23f943674c546</id>
			<updated>2010-01-06T07:50:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Combien de mairies ont un site web ?</title>
		<link href="http://blog.infos-pratiques.org/index.php/post/2009/12/28/Combien-de-mairies-ont-un-site-web"/>
		<id>urn:md5:e7f981ca4ed7ec05c6de1f0b23e4ad5a</id>
		<updated>2009-12-28T09:29:00+00:00</updated>
		<content type="html">&lt;p&gt;L'&lt;a href=&quot;http://lannuaire.service-public.fr/navigation/index-mairie.html&quot; hreflang=&quot;fr&quot;&gt;annuaire de l'administration&lt;/a&gt; recense 6486 mairies ayant un site web.&lt;/p&gt;


&lt;p&gt;L'&lt;a href=&quot;http://www.amf.asso.fr/annuaire/&quot; hreflang=&quot;fr&quot;&gt;annuaire de l'AMF&lt;/a&gt; en compte 9615, dont 4671 ne figurent pas dans l'annuaire de l'administration.&lt;/p&gt;


&lt;p&gt;Quant à &lt;a href=&quot;http://fr.wikipedia.org/wiki/Listes_des_communes_de_France&quot; hreflang=&quot;fr&quot;&gt;Wikipedia&lt;/a&gt;, un &quot;bot&quot; a permis d'en recenser 2719, dont 425 n'apparaissant pas dans les 2 précédents annuaires.&lt;/p&gt;


&lt;p&gt;Au total, au moins 11582 (6486 + 4671 + 425) communes françaises ont donc un site web.&lt;/p&gt;</content>
		<author>
			<name>Emmanuel Raviart</name>
			<uri>http://blog.infos-pratiques.org/index.php/</uri>
		</author>
		<source>
			<title type="html">Infos pratiques</title>
			<link rel="self" href="http://blog.infos-pratiques.org/index.php/feed/atom"/>
			<id>urn:md5:fea272dd974897385aa23f943674c546</id>
			<updated>2010-01-06T07:50:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Publication du morceau Simple Dream</title>
		<link href="http://www.dogmazic.net/Emmanuel_Saracco"/>
		<id>http://www.esaracco.fr/91bc1bba63a585013f1de6e62264eeda</id>
		<updated>2009-12-26T18:16:00+00:00</updated>
		<content type="html">Publication du morceau &lt;a href=&quot;http://www.dogmazic.net/Emmanuel_Saracco&quot;&gt;Simple Dream&lt;/a&gt;.&lt;br /&gt;Enregistrement et mixage avec Ardour.</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Sortie de wbmtranslator 0.7.1</title>
		<link href="http://wbmtranslator.labs.libre-entreprise.org/index_fr.html"/>
		<id>http://www.esaracco.fr/f5918dad3a1d99b22c6ba206a4277481</id>
		<updated>2009-12-25T17:42:00+00:00</updated>
		<content type="html">&lt;a href=&quot;http://wbmtranslator.labs.libre-entreprise.org/index_fr.html&quot;&gt;wbmtranslator&lt;/a&gt; est un assistant de traduction pour les modules webmin/usermin.&lt;p&gt;&lt;/p&gt;&lt;strong&gt;ChangeLog&lt;/strong&gt;&lt;p&gt;&lt;/p&gt;
	&lt;ul&gt;
	  &lt;li&gt;Correction d'un problème avec la détection de l'UTF-8. À présent, toutes les langues devraient apparaître dans les listes, et la traduction UTF-8 peut être gérée.&lt;/li&gt;
	  &lt;li&gt;Correction d'un problème de validation de l'email lors de l'envoi de l'archive des traductions.&lt;/li&gt;
	&lt;/ul&gt;</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Fichier libre des codes postaux</title>
		<link href="http://blog.infos-pratiques.org/index.php/post/2009/12/24/Fichier-libre-des-codes-postaux"/>
		<id>urn:md5:5dce55e82fc964149edfaf4d20179f6f</id>
		<updated>2009-12-24T15:30:00+00:00</updated>
		<content type="html">&lt;p&gt;Jusqu'à présent, pour les différentes applications de co-marquage, nous utilisions le &lt;a href=&quot;http://www.galichon.com/codesgeo/&quot; hreflang=&quot;fr&quot;&gt;fichier des codes postaux fourni par Jérôme Galichon&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Mais,  la liste des codes postaux provenant de &lt;a href=&quot;http://fr.wikipedia.org/wiki/Listes_des_communes_de_France&quot; hreflang=&quot;fr&quot;&gt;Wikipedia&lt;/a&gt; est meilleure&amp;nbsp;: 281 codes postaux ont ainsi été corrigés.&lt;/p&gt;</content>
		<author>
			<name>Emmanuel Raviart</name>
			<uri>http://blog.infos-pratiques.org/index.php/</uri>
		</author>
		<source>
			<title type="html">Infos pratiques</title>
			<link rel="self" href="http://blog.infos-pratiques.org/index.php/feed/atom"/>
			<id>urn:md5:fea272dd974897385aa23f943674c546</id>
			<updated>2010-01-06T07:50:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Python cairo and XCB support</title>
		<link href="http://julien.danjou.info/blog/index.php/post/2009/12/22/Python-cairo-and-XCB-support"/>
		<id>urn:md5:92fdf5917cda9a21656f9a809160922b</id>
		<updated>2009-12-22T12:01:00+00:00</updated>
		<content type="html">&lt;p&gt;&lt;a href=&quot;http://www.cairographics.org&quot;&gt;cairo&lt;/a&gt; has a &lt;a href=&quot;http://www.cairographics.org/pycairo/&quot;&gt;Python binding (pycairo)&lt;/a&gt; since a long time, and some months ago a &lt;a href=&quot;http://cgit.freedesktop.org/xcb/xpyb/&quot;&gt;Python binding for XCB (xpyb)&lt;/a&gt; has been released.&lt;/p&gt;


&lt;p&gt;Pycairo has no support for creating Xlib surfaces. You can get a Xlib surface from PyGTK and then use Pycairo to draw on it, but there's no way to create one directly.&lt;/p&gt;


&lt;p&gt;What I've done is make Pycairo aware of xpyb so it can creates directly an XCB surface from a XCB connection and a drawable.&lt;/p&gt;


&lt;p&gt;As said in &lt;a href=&quot;http://lists.freedesktop.org/archives/xcb/2009-December/005438.html&quot;&gt;my mail to the XCB list&lt;/a&gt;, I'm now waiting for a review before pushing this upstream. &lt;img src=&quot;http://julien.danjou.info/blog//themes/geeek.org/smilies/smile.png&quot; alt=&quot;:-)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;


&lt;p&gt;For the first time, I guess, XCB has beat Xlib support! &lt;img src=&quot;http://julien.danjou.info/blog//themes/geeek.org/smilies/wink.png&quot; alt=&quot;;-)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;</content>
		<author>
			<name>jd</name>
			<uri>http://julien.danjou.info/blog/index.php/</uri>
		</author>
		<source>
			<title type="html">jd:/dev/blog - Tag - work</title>
			<subtitle type="html">Julien Danjou's blog</subtitle>
			<link rel="self" href="http://julien.danjou.info/blog/index.php/feed/tag/work/atom"/>
			<id>urn:md5:44f74c834dac8a1829cb804b414698e9</id>
			<updated>2010-03-06T16:30:07+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Nouvelle version 1.0.1 de Podboy</title>
		<link href="http://valos.home-dn.net/blog/index.php?post/2009/12/29/Nouvelle-version-101-de-Podboy"/>
		<id>urn:md5:4606f99fdcf83c73b48789d70c58da52</id>
		<updated>2009-12-22T10:45:00+00:00</updated>
		<content type="html">&lt;p&gt;Un nouvelle version de &lt;a href=&quot;http://code.google.com/p/podboy/&quot; hreflang=&quot;en&quot;&gt;Podboy&lt;/a&gt; est disponible.&lt;/p&gt;


&lt;p&gt;La grosse nouveauté de cette version, c'est le support du Bluetooth A2DP qui permet enfin d'écouter ses podcasts sans aucun fil. En particulier, si comme pour moi le père Noël vous a apporté ce superbe casque.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/podboy/motorola-s9.jpg&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/podboy/.motorola-s9_s.jpg&quot; alt=&quot;Motorola S9&quot; title=&quot;Motorola S9, dec 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h5&gt;Changements&amp;nbsp;:&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Added a Bluetooth A2DP support (not yet optimal, mp3 data are not sent directly but transmitted with SBC)&lt;/li&gt;
&lt;li&gt;No more config file, now settings are stored in database (in table &quot;settings&quot;)&lt;/li&gt;
&lt;li&gt;Fixed callbacks with new python-elementary (revision &amp;gt;= 43900)&lt;/li&gt;
&lt;li&gt;Added date at the begin of episodes titles&lt;/li&gt;
&lt;li&gt;Used InnerWindow widget instead of Window widget for confirmation dialogs&lt;/li&gt;
&lt;li&gt;Added a confirm dialog when a single episode is deleted&lt;/li&gt;
&lt;li&gt;Speed up startup (~3 seconds less)&lt;/li&gt;
&lt;li&gt;Renamed Preferences into Settings.&lt;/li&gt;
&lt;li&gt;Added &quot;About&quot; page&lt;/li&gt;
&lt;li&gt;Many small fixes here and there&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;&lt;tr&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/podboy/podboy.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/podboy/.podboy_s.jpg&quot; alt=&quot;Podboy&quot; title=&quot;Podboy, dec 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/podboy/podboy-settings.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/podboy/.podboy-settings_s.jpg&quot; alt=&quot;Podboy Settings&quot; title=&quot;Podboy Settings, dec 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</content>
		<author>
			<name>Valéry Febvre</name>
			<uri>http://valos.home-dn.net/blog/index.php</uri>
		</author>
		<source>
			<title type="html">valos://blog</title>
			<link rel="self" href="http://valos.home-dn.net/blog/index.php?feed/rss2"/>
			<id>http://valos.home-dn.net/blog/index.php?feed/rss2</id>
			<updated>2010-03-06T00:50:08+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Publication du morceau The Invisible Enemy</title>
		<link href="http://www.dogmazic.net/Emmanuel_Saracco"/>
		<id>http://www.esaracco.fr/100603e56f9f9f180cb74e0bc768ddfe</id>
		<updated>2009-12-21T00:02:00+00:00</updated>
		<content type="html">Publication du morceau &lt;a href=&quot;http://www.dogmazic.net/Emmanuel_Saracco&quot;&gt;The Invisible Enemy&lt;/a&gt;.&lt;br /&gt;Guitares et basse sur de réels instruments, batterie composée sur Hydrogen. Enregistrement et mixage avec Ardour.</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Teething troubles</title>
		<link href="http://julien.danjou.info/blog/index.php/post/2009/12/20/Teething-troubles"/>
		<id>urn:md5:9683a0cd2e7a899c3219ab0e80933254</id>
		<updated>2009-12-20T10:59:00+00:00</updated>
		<content type="html">&lt;p&gt;It's not that often that I start something from scratch. It's an amazing feeling to start a new project, to start writing something new. I like that. It's creation, it's an artistic part of our computing stuff. I feel like a code artist.&lt;/p&gt;


&lt;p&gt;And what I like even more is that little feeling that you are going in an unknown land. Some area in this tech world where nobody ever came before you, or only a few pioneers.&lt;/p&gt;


&lt;p&gt;That the sensation I got starting to using &lt;a href=&quot;http://www.cython.org&quot;&gt;Cython&lt;/a&gt;, &lt;a href=&quot;http://www.python.org&quot;&gt;Python 3&lt;/a&gt; and various other tools. I just spent half of my time trying to fix problems, rather than working on *my* code. Problems in autoconf macro not knowing Python 2.6 or Python 3.1. Problems and limitations in Cython. And problem in Python.&lt;/p&gt;


&lt;p&gt;That last one was a hard one. I'm still a beginner in the Python world: I barely know anything. And I was trying to use something nobody never did: building an embedded Python with a set of built-in modules.&lt;/p&gt;


&lt;p&gt;I spent hours trying to find why one type of module importing was badly failing. I finally found the answer thanks to a guy. who has the same problem A guy ? No. A pioneer. What do I say? A hero. He's been my week-hero! Thank you Miguel Lobo because you found the bug I chased for hours and because you even reported it as &lt;a href=&quot;http://bugs.python.org/issue1644818&quot;&gt;issue 1644818&lt;/a&gt;, including a patch! How not damn wonderful is that?&lt;/p&gt;


&lt;p&gt;I will not bore you with the technical details of that bug, since nobody cares. Nobody cares, even the Python guys, since that bug has been opened for 3 years, and nobody even reviewed in that time. I found an old thread about that bug where some guys were wanking about how they should do the review, because Miguel pushed for several weeks to have a review, back in 2007.&lt;/p&gt;


&lt;p&gt;But that bug was in my way. I had to do something. So I prepared my mail reader, mounted my web browser and here I was for a uniq quest: getting a Python bug fixed.&lt;/p&gt;


&lt;p&gt;At that point, if you did not stop reading earlier, you might get very excited. Don't be, spoiler, it's still not fixed. You'll have to wait the end of the season and see all the episodes I'll have to write to get the end of the story!&lt;/p&gt;


&lt;p&gt;Let's continue.&lt;/p&gt;


&lt;p&gt;I had to create an account on the Python bug tracking system. That was a trivial task for a man like me (you bet). Then, I launched a verbal attack, something you rarely see in a bug tracking system. Something I knew would awake any developer caring about their software.&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;Julien Danjou&lt;/em&gt;:
Is there any chance to see this *bug* fixed someday?&lt;/p&gt;&lt;/blockquote&gt;



&lt;p&gt;I had the deep feeling that my quest was starting here. How many days would I have to wait until I get an answer? Time was passing. Minutes were ticking while I was waiting, sat in a comfortable sofa in a softly lighted room. It seemed like all my life was shorter than the delay I had to wait to get an answer.&lt;/p&gt;


&lt;p&gt;After waiting for hours, suddenly, and only 15 minutes later, I got an answer:&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;&lt;em&gt;Martin v. Löwis&lt;/em&gt;:
Please ask on python-dev. I may be willing to revive my five-for-one offer.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Martin? Don't know that guy. Who is he? Who is he like? Will he fix that bug? What is this offer? So many question without an answer. But he asked to ask on python-dev, and I said: challenged accepted! I will write a mail to python-dev to get that bug fixed.&lt;/p&gt;


&lt;p&gt;Which I did. I sent a short (but well written you know, I made efforts) &quot;WTF?&quot; to pyhon-dev.&lt;/p&gt;


&lt;p&gt;And then the guy asked me to review 5 bugs so he will review and fix this one. And this is how I said that he was pissing me off for blackmailing me to fix a bug that was its &quot;duty&quot;.&lt;/p&gt;


&lt;p&gt;Therefore, this is the end of the story so far. Will that bug be fixed some day? There's a hope, because another guy jumped in and took the bug assignment.&lt;/p&gt;


&lt;p&gt;To be continued.&lt;/p&gt;


&lt;p&gt;My conclusion about all that story: that is a little rude to start something new, with new tools, and get quickly into teething troubles. It's even more harsh to enter a community because you just found bugs, and be not very well received when you ask to apply a 10 lines long fix somebody wrote 3 years ago to fix it.&lt;/p&gt;


&lt;p&gt;I'll probably still use Python :-), but I get a darker image of its community now.&lt;/p&gt;</content>
		<author>
			<name>jd</name>
			<uri>http://julien.danjou.info/blog/index.php/</uri>
		</author>
		<source>
			<title type="html">jd:/dev/blog - Tag - work</title>
			<subtitle type="html">Julien Danjou's blog</subtitle>
			<link rel="self" href="http://julien.danjou.info/blog/index.php/feed/tag/work/atom"/>
			<id>urn:md5:44f74c834dac8a1829cb804b414698e9</id>
			<updated>2010-03-06T16:30:07+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Publication du morceau Criminal Song</title>
		<link href="http://www.dogmazic.net/Emmanuel_Saracco"/>
		<id>http://www.esaracco.fr/26e9b279116c154d6862ae4904d607df</id>
		<updated>2009-12-13T17:47:00+00:00</updated>
		<content type="html">Publication du morceau &lt;a href=&quot;http://www.dogmazic.net/Emmanuel_Saracco&quot;&gt;Criminal Song&lt;/a&gt;.&lt;br /&gt;Guitares et basse sur de réels instruments, batterie composée sur Hydrogen. Enregistrement et mixage avec Ardour.</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Publication du morceau Rough And Ready</title>
		<link href="http://www.dogmazic.net/Emmanuel_Saracco"/>
		<id>http://www.esaracco.fr/d057bbae6ca6073d7a57ed84b666a1ae</id>
		<updated>2009-12-06T12:44:00+00:00</updated>
		<content type="html">Publication du morceau &lt;a href=&quot;http://www.dogmazic.net/Emmanuel_Saracco&quot;&gt;Rough And Ready&lt;/a&gt;.&lt;br /&gt;Guitares et basse sur de réels instruments, batterie composée sur Hydrogen. Enregistrement et mixage avec Ardour.</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Publication du morceau Bad Sign</title>
		<link href="http://www.dogmazic.net/Emmanuel_Saracco"/>
		<id>http://www.esaracco.fr/cf502db0989b353b50a4a21bc665460e</id>
		<updated>2009-12-06T10:00:00+00:00</updated>
		<content type="html">Publication du morceau &lt;a href=&quot;http://www.dogmazic.net/Emmanuel_Saracco&quot;&gt;Bad Sign&lt;/a&gt;.&lt;br /&gt;Guitares et basse sur de réels instruments, batterie composée sur Hydrogen. Enregistrement et mixage avec Ardour.</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Neomis - une version ordi du jeu électronique Simon</title>
		<link href="http://valos.home-dn.net/blog/index.php?post/2009/11/11/Neomis-une-version-ordi-du-jeu-electronique-bien-connu-Simon"/>
		<id>urn:md5:a4829d6c4a1e8deb21469d6e55c7f522</id>
		<updated>2009-11-11T00:15:00+00:00</updated>
		<content type="html">&lt;p&gt;Une application de plus pour nourrir votre Neo &lt;img src=&quot;http://valos.home-dn.net/blog/themes/default/smilies/wink.png&quot; alt=&quot;;-)&quot; class=&quot;smiley&quot; /&gt; Et encore un jeu&amp;nbsp;!&lt;/p&gt;


&lt;p&gt;Après un &lt;a href=&quot;http://valos.home-dn.net/blog/index.php?post/2009/11/04/NumberX-un-jeu-de-puzzle-mathematique&quot;&gt;pseudo le compte est bon&lt;/a&gt;, voici &lt;strong&gt;Neomis&lt;/strong&gt; une version ordi du jeu électronique bien connu &lt;a href=&quot;http://fr.wikipedia.org/wiki/Simon_%28jeu%29&quot; hreflang=&quot;fr&quot;&gt;Simon&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;A croire que je suis un peu nostalgique ces temps-ci&amp;nbsp;? Demain, je fais un &lt;a href=&quot;http://en.wikipedia.org/wiki/Merlin_%28game%29&quot; hreflang=&quot;en&quot;&gt;Merlin&lt;/a&gt; &lt;img src=&quot;http://valos.home-dn.net/blog/themes/default/smilies/wink.png&quot; alt=&quot;;-)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Bon, pour ceux qui connaissent pas, c'est un jeu de mémoire et de concentration dans lequel vous devez répéter des séquences de sons et lumières (4 couleurs) aussi longtemps que vous pouvez vous en rappeler! A chaque séquence correcte, le jeu rejoue la séquence en lui rajoutant une couleur / son supplémentaire.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://code.google.com/p/neomis/&quot; hreflang=&quot;en&quot; title=&quot;Homepage du projet&quot;&gt;http://code.google.com/p/neomis/&lt;/a&gt;&lt;/p&gt;

&lt;table&gt;&lt;tr&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/neomis.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/.neomis_s.jpg&quot; alt=&quot;Neomis&quot; title=&quot;Neomis, nov 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/neomis-settings.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/.neomis-settings_s.jpg&quot; alt=&quot;Neomis Settings&quot; title=&quot;Neomis Settings, nov 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/neomis-high-scores.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/.neomis-high-scores_s.jpg&quot; alt=&quot;Neomis High Scores&quot; title=&quot;Neomis High Scores, nov 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</content>
		<author>
			<name>Valéry Febvre</name>
			<uri>http://valos.home-dn.net/blog/index.php</uri>
		</author>
		<source>
			<title type="html">valos://blog</title>
			<link rel="self" href="http://valos.home-dn.net/blog/index.php?feed/rss2"/>
			<id>http://valos.home-dn.net/blog/index.php?feed/rss2</id>
			<updated>2010-03-06T00:50:08+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">NumberX - un jeu de puzzle mathématique</title>
		<link href="http://valos.home-dn.net/blog/index.php?post/2009/11/04/NumberX-un-jeu-de-puzzle-mathematique"/>
		<id>urn:md5:4f8d76edf7a29a9e228a98649cff1b6c</id>
		<updated>2009-11-04T12:39:00+00:00</updated>
		<content type="html">&lt;p&gt;&lt;strong&gt;NumberX&lt;/strong&gt; est la dernière application que j'ai developpé pour l'&lt;strong&gt;Openmoko Neo Freerunner&lt;/strong&gt;.&lt;/p&gt;


&lt;p&gt;C'est un jeu de puzzle mathématique qui mettra au défi votre habileté mental en mathématiques!&lt;/p&gt;


&lt;p&gt;Quatre nombres aléatoires, entre 1 et 9, vous sont donnés et vous devez les combiner tous ensemble à l'aide des opérateurs arithmétiques de base afin d'obtenir un autre nombre aléatoire.&lt;/p&gt;


&lt;p&gt;Chaque puzzle a une solution.
La difficulté des énigmes varie, certaines sont faciles et d'autres sont beaucoup plus difficiles!&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://code.google.com/p/numberx/&quot; hreflang=&quot;en&quot; title=&quot;Homepage du projet&quot;&gt;http://code.google.com/p/numberx/&lt;/a&gt;&lt;/p&gt;
&lt;table&gt;&lt;tr&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/numberx-1.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/.numberx-1_s.jpg&quot; alt=&quot;NumberX puzzle unresolved&quot; title=&quot;NumberX puzzle unresolved, nov 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/numberx-2.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/.numberx-2_s.jpg&quot; alt=&quot;NumberX puzzle resolved&quot; title=&quot;NumberX puzzle resolved, nov 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</content>
		<author>
			<name>Valéry Febvre</name>
			<uri>http://valos.home-dn.net/blog/index.php</uri>
		</author>
		<source>
			<title type="html">valos://blog</title>
			<link rel="self" href="http://valos.home-dn.net/blog/index.php?feed/rss2"/>
			<id>http://valos.home-dn.net/blog/index.php?feed/rss2</id>
			<updated>2010-03-06T00:50:08+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Voyage Tours - Castres - Dompierre-sur-Mer</title>
		<link href="http://rando-velo.esaracco.fr/mois/tours-castres/"/>
		<id>http://www.esaracco.fr/c06892eafe1b366b3462a7fa55f1397c</id>
		<updated>2009-11-01T01:11:00+00:00</updated>
		<content type="html">Mise en ligne du journal de bord de mon &lt;a href=&quot;http://rando-velo.esaracco.fr/mois/tours-castres/&quot;&gt;voyage à vélo Tours - Castres - Dompierre-sur-Mer&lt;/a&gt;.</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Nouvelle version 1.3.0 de NeoLight</title>
		<link href="http://valos.home-dn.net/blog/index.php?post/2009/10/25/Nouvelle-veraion-de-Neolight-%3A-130"/>
		<id>urn:md5:a63cad9c7ca3db6abe6949081979992c</id>
		<updated>2009-10-24T13:11:00+00:00</updated>
		<content type="html">&lt;p&gt;Un nouvelle version de &lt;a href=&quot;http://code.google.com/p/neolight/&quot; hreflang=&quot;en&quot;&gt;NeoLight&lt;/a&gt; est disponible.&lt;/p&gt;


&lt;h5&gt;Changements&amp;nbsp;:&lt;/h5&gt;
&lt;ul&gt;
&lt;li&gt;Ajout de 2 nouveaux modes de strobe&amp;nbsp;: le mode &lt;q&gt;Flashlight Color/White&lt;/q&gt; et le mode &lt;q&gt;S.O.S&lt;/q&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;&lt;tr&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/neolight-screenshot.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/.neolight-screenshot_s.jpg&quot; alt=&quot;NeoLight&quot; title=&quot;NeoLight, oct 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/neolight-settings-screenshot.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/.neolight-settings-screenshot_s.jpg&quot; alt=&quot;NeoLight Settings&quot; title=&quot;NeoLight Settings, oct 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</content>
		<author>
			<name>Valéry Febvre</name>
			<uri>http://valos.home-dn.net/blog/index.php</uri>
		</author>
		<source>
			<title type="html">valos://blog</title>
			<link rel="self" href="http://valos.home-dn.net/blog/index.php?feed/rss2"/>
			<id>http://valos.home-dn.net/blog/index.php?feed/rss2</id>
			<updated>2010-03-06T00:50:08+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Courier to dovecot migration</title>
		<link href="http://julien.danjou.info/blog/index.php/post/2009/10/02/Courier-to-dovecot-migration"/>
		<id>urn:md5:66eb6f851a900edf7b2b64a5b2570d4f</id>
		<updated>2009-10-02T15:03:00+00:00</updated>
		<content type="html">&lt;p&gt;This week, I've managed to migrate from &lt;a href=&quot;http://www.courier-mta.org/imap/&quot;&gt;courier-imap&lt;/a&gt; to &lt;a href=&quot;http://www.dovecot.org&quot;&gt;dovecot&lt;/a&gt; at work. I always had a good experience with dovecot, and I still have one.&lt;/p&gt;


&lt;p&gt;Dovecot performances are very good in comparison with courier. With that switch, we dropped the CPU usage of the server from 25 % to 10 %, and it's damn faster now. I have no idea why, but I think that it's better written looking at the code, and also that its usage of index files helps a lot.&lt;/p&gt;


&lt;p&gt;We got no problem getting things work with public folders either, so the switch was almost painless.&lt;/p&gt;


&lt;p&gt;The only problem we had is that Dovecot is too smart for some MUA. Consequently, we hit an &lt;a href=&quot;http://dev.mutt.org/trac/ticket/969&quot;&gt;8 years old Mutt bug #969&lt;/a&gt;, which I also reported to the Debian BTS as &lt;a href=&quot;http://bugs.debian.org/549204&quot;&gt;#549204&lt;/a&gt; with a not-well-tested-but-seems-to-work patch.&lt;/p&gt;


&lt;p&gt;Thanks to &lt;a href=&quot;http://www.claws-mail.org/&quot;&gt;Claws mail&lt;/a&gt;, we also found a &lt;a href=&quot;http://dovecot.org/pipermail/dovecot/2009-October/043236.html&quot;&gt;bug in dovecot 1.2.5&lt;/a&gt;, which should be fixed soon. Dovecot upstream is very responsive and that's always something nice to know when you use a free software.&lt;/p&gt;</content>
		<author>
			<name>jd</name>
			<uri>http://julien.danjou.info/blog/index.php/</uri>
		</author>
		<source>
			<title type="html">jd:/dev/blog - Tag - work</title>
			<subtitle type="html">Julien Danjou's blog</subtitle>
			<link rel="self" href="http://julien.danjou.info/blog/index.php/feed/tag/work/atom"/>
			<id>urn:md5:44f74c834dac8a1829cb804b414698e9</id>
			<updated>2010-03-06T16:30:07+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Comment générer un fichier Foaf</title>
		<link href="http://michael.parienti.net/post/2009/10/01/Comment-generer-un-fichier-foaf"/>
		<id>urn:md5:8c3df10a909dfffdaa0b697c2cb41cc7</id>
		<updated>2009-10-01T12:33:00+00:00</updated>
		<content type="html">&lt;p&gt;&lt;a href=&quot;http://www.foaf-project.org/&quot; hreflang=&quot;en&quot;&gt;Foaf&lt;/a&gt; est une &lt;a href=&quot;http://xmlns.com/foaf/spec&quot; hreflang=&quot;en&quot;&gt;spécification&lt;/a&gt; XML permettant de décrire une personne (nom, prénom, email, etc.), et ses connaissances. C’est en quelque sort le &lt;a href=&quot;http://www.lespetitescases.net/foaf-le-reseau-social-garanti-sans-pub&quot; hreflang=&quot;fr&quot;&gt;web social 2.0 standardisé&lt;/a&gt; - comprendre utilisé uniquement par les geeks rêvant d’un monde ouvert, interopérable et conforme que personnes d’autres n’utilisent. J’en fais partie. Il me fallait donc un fichier foaf.&lt;/p&gt;


&lt;p&gt;Après avoir parcouru les &lt;a href=&quot;http://wiki.foaf-project.org/w/Tools&quot; hreflang=&quot;en&quot;&gt;outils disponibles pour générer un fichier Foaf&lt;/a&gt;, j’ai jeté mon dévolu sur &lt;a href=&quot;http://www.morlardf.net/&quot; hreflang=&quot;en&quot;&gt;Morla&lt;/a&gt;, aux &lt;a href=&quot;http://www.morlardf.net/about.php&quot; hreflang=&quot;en&quot;&gt;fonctionnalité attrayantes&lt;/a&gt;. Hélas, à cause de l’éternel problème de &lt;a href=&quot;http://www.gnome.org/~markmc/openssl-and-the-gpl.html&quot; hreflang=&quot;en&quot;&gt;licence SSL non compatible avec la licence GPL&lt;/a&gt;, &lt;a href=&quot;http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=431824&quot; hreflang=&quot;en&quot;&gt;Morla n’est pas dans Debian&lt;/a&gt;. Et j’ai passé l’âge, mes machines surtout, de compiler moi même des logiciels.&lt;/p&gt;


&lt;p&gt;Je me résigne à installer java pour utiliser &lt;a href=&quot;http://www.foafme.com/&quot; hreflang=&quot;en&quot;&gt;foafme&lt;/a&gt;. Hélas, encore une fois, le fichier généré est ridiculement maigre d’informations. Finalement j’utilise deux outils en ligne, &lt;a href=&quot;http://www.foafdrive.com/&quot; hreflang=&quot;en&quot;&gt;foafdrive&lt;/a&gt; et &lt;a href=&quot;http://www.ldodds.com/foaf/foaf-a-matic&quot; hreflang=&quot;en&quot;&gt;foaf-a-matic&lt;/a&gt;, à base de javascript, dont je compile les résultats pour obtenir la première mouture d’un fichier acceptable.&lt;/p&gt;


&lt;p&gt;Ensuite je m’inspire d’autres fichiers &lt;a href=&quot;http://palaci.fr/francois/foaf/&quot;&gt;trouvé&lt;/a&gt; sur le web pour ajouter des informations supplémentaires:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;des &lt;code&gt;dc:title&lt;/code&gt; un peu partout;&lt;/li&gt;
&lt;li&gt;un élément &lt;code&gt;vCard:ADR&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;des &lt;code&gt;foaf:pastProject&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;et des &lt;code&gt;foaf:currentProject&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Pour finir je vérifie que &lt;a href=&quot;http://michael.parienti.name/mparienti-foaf.rdf&quot;&gt;mon fichier foaf&lt;/a&gt; est bien &lt;a href=&quot;http://www.w3.org/RDF/Validator/ARPServlet?URI=http%3A%2F%2Fmichael.parienti.name%2Fmparienti-foaf.rdf&amp;PARSE=Parse+URI%3A+&amp;TRIPLES_AND_GRAPH=PRINT_TRIPLES&amp;FORMAT=PNG_EMBED&quot; hreflang=&quot;en&quot;&gt;valide&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Prochaine étape: ajouter des contacts, en utilisant l’&lt;a href=&quot;http://www.facebook.com/apps/application.php?id=2626876931&quot; hreflang=&quot;en&quot;&gt;export foaf de Facebook&lt;/a&gt;.&lt;/p&gt;</content>
		<author>
			<name>Michaël Parienti</name>
			<uri>http://michael.parienti.net/</uri>
		</author>
		<source>
			<title type="html">Le Carnet Tech de Michaël</title>
			<link rel="self" href="http://michael.parienti.net/feed/atom"/>
			<id>urn:md5:4dd7e271be6e69ded896058b5c10bed0</id>
			<updated>2009-12-04T13:30:06+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">I've lost my files !!!</title>
		<link href="http://blog.easter-eggs.org/index.php/post/2009/09/25/I-ve-lost-my-files"/>
		<id>urn:md5:d72b5767651b090c5c22cb9ba0b289c5</id>
		<updated>2009-09-25T08:08:00+00:00</updated>
		<content type="html">&lt;p&gt;Bonjour,&lt;/p&gt;


&lt;p&gt;À qui cela n'est-il donc jamais arrivé ???&lt;/p&gt;


&lt;p&gt;Avec le système de fichiers ext2 il 'y avait la possibilité de retrouver des fichiers effacés à l'aide de Midnight Commander mais avec Ext3 que néni.&lt;/p&gt;


&lt;p&gt;Après quelques recherches, j'ai découvert &lt;a href=&quot;http://projects.izzysoft.de/trac/ext3undel/wiki/ext3undel&quot; hreflang=&quot;en&quot;&gt;ext3undel&lt;/a&gt;.
Celui-ci peut être utiliser directement, avec ses options, ou bien propose deux autres exécutables, gabi et ralf qui sont plus simples d'utilisations mais plus globaux.&lt;/p&gt;


&lt;p&gt;Ext3undel s'appuie, entre autre, sur &lt;a href=&quot;http://foremost.sourceforge.net/&quot; hreflang=&quot;en&quot;&gt;foremost&lt;/a&gt;, disponible en paquets Debian (Lenny).&lt;/p&gt;


&lt;p&gt;Foremost permet de restaurer des fichiers effacés du système en spécifiant des types de fichier, la partition ou image dd concernée, un répertoire de destination des fichiers restaurés ainsi que quelques autres options... Il a l'avantage de pouvoir travailler dur une partition montée ce qui n'est pas forcément le mieux pour éviter l'écrasement d'inodes mais permet de travailler sur des filsystem que l'on ne peut pas démonter ou monter en readonly.&lt;/p&gt;


&lt;p&gt;Dans le cas présent, après avoir créer le répertoire de destination, j'ai utilisé la commande&amp;nbsp;:&lt;/p&gt;


&lt;p&gt;foremost -s 512  -o /root/photo-finds/ -t jpg /dev/md1&lt;/p&gt;


&lt;p&gt;Le résultat est surprenant, pour un répertoire effacé d'une taille d'environ 5 Go, il a récupéré 199 Go de fichiers correspondant au type et sur la partition que j'avais spécifié. Foremost a donc restauré des fichiers effacés depuis longtemps  &lt;img src=&quot;http://blog.easter-eggs.org/themes/ee/smilies/smile.png&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;</content>
		<author>
			<name>Pascal Brugier</name>
			<uri>http://blog.easter-eggs.org/index.php/</uri>
		</author>
		<source>
			<title type="html">Le blog des salariés</title>
			<link rel="self" href="http://blog.easter-eggs.org/index.php/feed/atom"/>
			<id>urn:md5:9bf951e5c4460cfe7df5f2a1e7ae8038</id>
			<updated>2009-09-25T15:20:03+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Travailler avec sshfs</title>
		<link href="http://cbenz.pointique.org/post/2009/09/18/Travailler-avec-sshfs"/>
		<id>urn:md5:8386acfa7a3b89dbc1133ed03772423b</id>
		<updated>2009-09-18T15:11:00+00:00</updated>
		<content type="html">&lt;p&gt;Le système de fichiers virtuel &lt;a href=&quot;http://cbenz.pointique.org/post/2009/09/18/sshfs&quot;&gt;http://fuse.sourceforge.net/sshfs.html&lt;/a&gt; basé sur &lt;a href=&quot;http://cbenz.pointique.org/post/2009/09/18/FUSE&quot;&gt;http://fuse.sourceforge.net&lt;/a&gt; permet de monter un répertoire à travers SSH. Voici quelques astuces qui me sont utiles.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;je crée un répertoire $HOME/mnt et les sous-répertoires des points de montage&lt;/li&gt;
&lt;li&gt;je place mes points de montage dans /etc/fstab, par exemple&amp;nbsp;:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;
sshfs#cbenz@hostname.com:/home/cbenz  /home/cbenz/mnt/hostname     fuse defaults,user,uid=cbenz,allow_other     0 0
&lt;/pre&gt;


&lt;p&gt;On peut aussi placer l'option follow_symlinks, qui suivra les liens côté distant.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;pour monter et démonter&amp;nbsp;:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;
$ mount ~/mnt/hostname
$ fusermount -u ~/mnt/hostname
&lt;/pre&gt;


&lt;p&gt;Maintenant qu'on a mis en place les bases, on se rend bien vite compte que certaines commandes sont longues lorsqu'elles manipulent un grand nombre de fichiers/répertoires. Par exemple, si on utilise git, la commande «git status» sera très longue (30sec pour un petit projet) alors qu'en local elle prend &amp;lt;1sec. Solution&amp;nbsp;: un petit script python que j'ai nommé «sshdo», qui exécute la commande côté serveur, en se plaçant dans le répertoire correspondant au répertoire local en cours.&lt;/p&gt;

&lt;pre class=&quot;python&quot;&gt;&lt;span&gt;#!/usr/bin/env python&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;import&lt;/span&gt; &lt;span&gt;os&lt;/span&gt;
&lt;span&gt;import&lt;/span&gt; &lt;span&gt;sys&lt;/span&gt;
&amp;nbsp;
&lt;span&gt;if&lt;/span&gt; &lt;span&gt;len&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;sys&lt;/span&gt;.&lt;span&gt;argv&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt; &lt;span&gt;&amp;lt;&lt;/span&gt; &lt;span&gt;2&lt;/span&gt;:
    &lt;span&gt;print&lt;/span&gt; &lt;span&gt;'please enter a command'&lt;/span&gt;
    &lt;span&gt;sys&lt;/span&gt;.&lt;span&gt;exit&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;-1&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;
&amp;nbsp;
command = &lt;span&gt;' '&lt;/span&gt;.&lt;span&gt;join&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;sys&lt;/span&gt;.&lt;span&gt;argv&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;:&lt;span&gt;&amp;#93;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;
remote_hostname = &lt;span&gt;os&lt;/span&gt;.&lt;span&gt;path&lt;/span&gt;.&lt;span&gt;abspath&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;'.'&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;.&lt;span&gt;replace&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;os&lt;/span&gt;.&lt;span&gt;environ&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;'HOME'&lt;/span&gt;&lt;span&gt;&amp;#93;&lt;/span&gt;+&lt;span&gt;'/mnt/'&lt;/span&gt;, &lt;span&gt;''&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;.&lt;span&gt;split&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;'/'&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;&amp;#93;&lt;/span&gt;
remote_path = &lt;span&gt;os&lt;/span&gt;.&lt;span&gt;path&lt;/span&gt;.&lt;span&gt;abspath&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;'.'&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;.&lt;span&gt;replace&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;os&lt;/span&gt;.&lt;span&gt;environ&lt;/span&gt;&lt;span&gt;&amp;#91;&lt;/span&gt;&lt;span&gt;'HOME'&lt;/span&gt;&lt;span&gt;&amp;#93;&lt;/span&gt;+&lt;span&gt;'/mnt/%s/'&lt;/span&gt;&lt;span&gt;%&lt;/span&gt;remote_hostname, &lt;span&gt;''&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;
&lt;span&gt;os&lt;/span&gt;.&lt;span&gt;system&lt;/span&gt;&lt;span&gt;&amp;#40;&lt;/span&gt;&lt;span&gt;'ssh %s &amp;quot;cd %s; %s&amp;quot;'&lt;/span&gt; &lt;span&gt;%&lt;/span&gt; &lt;span&gt;&amp;#40;&lt;/span&gt;remote_hostname, remote_path, command&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;span&gt;&amp;#41;&lt;/span&gt;&lt;/pre&gt;


&lt;p&gt;Utilisation&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
$ sshdo git status
&lt;/pre&gt;


&lt;p&gt;Par contre il faut respecter cette arborescence ~/mnt/hostname pour que ça fonctionne.&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">GNU screen automatique au login</title>
		<link href="http://cbenz.pointique.org/post/2009/09/17/GNU-screen-automatique-au-login"/>
		<id>urn:md5:948a9a77591e9b728afbdcf1ccf4e4c4</id>
		<updated>2009-09-17T09:17:00+00:00</updated>
		<content type="html">&lt;p&gt;Quand je me connecte à une machine par SSH, et que je fais des opérations plutôt longues, quelle n'est pas ma (mauvaise) surprise lorsque la connexion coupe, et que je perds le shell en cours. Bien entendu, &lt;a href=&quot;http://www.gnu.org/software/screen/&quot;&gt;GNU screen&lt;/a&gt; est fait pour ça&amp;nbsp;!&lt;/p&gt;


&lt;p&gt;Seulement, je ne pense jamais à l'utiliser. Alors j'ai mis la ligne suivante dans .profile&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
[ -x /usr/bin/screen ] &amp;amp;&amp;amp; (screen -r || screen)
&lt;/pre&gt;


&lt;p&gt;Si un screen existe déjà, il s'y connecte (option -r), sinon il en lance un.&lt;/p&gt;


&lt;p&gt;D'autre part, ce qui m'embête avec screen, c'est le raccourci C-a dont je me sers sans arrêt pour revenir au début de la ligne. Je l'ai changé par C-z dans .screenrc&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
escape ^Zz
&lt;/pre&gt;


&lt;p&gt;Et pour scroller (remplacement de shift-pgup/pgdown)&amp;nbsp;? C-z ESC puis pgup/pgdown, flèches, ou roulette souris.&lt;/p&gt;


&lt;p&gt;Là, plus d'excuse pour ne pas utiliser screen.&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">MangerSain sur votre Openmoko - additifs alimentaires</title>
		<link href="http://valos.home-dn.net/blog/index.php?post/2009/09/12/MangerSain-sur-votre-Openmoko-additifs-alimentaires"/>
		<id>urn:md5:a5e77de46987fde138c1b05601a9825d</id>
		<updated>2009-09-12T10:33:00+00:00</updated>
		<content type="html">&lt;p&gt;&lt;strong&gt;MangerSain&lt;/strong&gt; est une application qui vous permet de consulter simplement et rapidement une liste des additifs alimentaires et leur toxicité.&lt;/p&gt;


&lt;p&gt;Toutes les données proviennent intégralement du site &lt;a href=&quot;http://mangersain.medicalistes.org&quot; hreflang=&quot;fr&quot;&gt;http://mangersain.medicalistes.org&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://code.google.com/p/mangersain/&quot; hreflang=&quot;en&quot; title=&quot;Homepage du projet&quot;&gt;http://code.google.com/p/mangersain/&lt;/a&gt;&lt;/p&gt;

&lt;table&gt;&lt;tr&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/mangersain-search.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/.mangersain-search_s.jpg&quot; alt=&quot;MangerSain Search&quot; title=&quot;MangerSain Search, nov 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td&gt;


&lt;p&gt;&lt;a href=&quot;http://valos.home-dn.net/blog/public/image/mangersain.png&quot;&gt;&lt;img src=&quot;http://valos.home-dn.net/blog/public/image/.mangersain_s.jpg&quot; alt=&quot;MangerSain&quot; title=&quot;MangerSain, nov 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</content>
		<author>
			<name>Valéry Febvre</name>
			<uri>http://valos.home-dn.net/blog/index.php</uri>
		</author>
		<source>
			<title type="html">valos://blog</title>
			<link rel="self" href="http://valos.home-dn.net/blog/index.php?feed/rss2"/>
			<id>http://valos.home-dn.net/blog/index.php?feed/rss2</id>
			<updated>2010-03-06T00:50:08+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">substitutions de commandes bash</title>
		<link href="http://cbenz.pointique.org/post/2009/09/10/substitutions-de-commandes-bash"/>
		<id>urn:md5:04a00dafcae0a381e0fc09c8e557efe5</id>
		<updated>2009-09-10T12:51:00+00:00</updated>
		<content type="html">&lt;p&gt;Sous Bash, je connaissais la substitution de commande, avec $(cmd) ou `cmd`, par exemple&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
$ grep 'body' $(find -name '*.html')
&lt;/pre&gt;


&lt;p&gt;Par contre je découvre la substitution de processus (process substtitution en anglais)&amp;nbsp;: &amp;lt;(cmd) ou &amp;gt;(cmd) C'est pareil, sauf que le résultat de la commande est considéré comme un fichier (un lien depuis /dev/fd vers un pipe en réalité) et non comme une string.&lt;/p&gt;


&lt;p&gt;C'est utile avec des commandes travaillant sur des noms de fichiers et ne sachant pas prendre en compte l'entrée standard (stdin).&lt;/p&gt;


&lt;p&gt;Par exemple, j'ai écrit un script Python qui extrait les adresses email d'un fichier fourni en paramètres et les affiche sur la sortie standard&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
$ extract-emails.py file.txt
$ cat *.txt | extract-emails.py  =&amp;gt; erreur, le script ne sait pas faire
$ extract-emails.py &amp;lt;(cat *.txt)
&lt;/pre&gt;


&lt;p&gt;On peut utiliser la forme &amp;gt;(cmd) qui fournit l'entrée standard à la commande cmd.&lt;/p&gt;


&lt;p&gt;Exemple de la vie réelle&amp;nbsp;: on utilise git et on veut connaître les fichiers du dépôt n'ayant pas changé depuis les 100 derniers commits&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
$ comm -13 &amp;lt;(git diff --name-only HEAD~100 | sort) &amp;lt;(git ls-files | sort)
&lt;/pre&gt;


&lt;p&gt;La commande comm prend 2 fichiers en entrée. Le premier (git diff) fournit la liste des fichiers ayant changé, le second la liste totale des fichiers. La liste des fichiers n'ayant pas changé est la différence du deuxième et du premier, et c'est le rôle de «comm -13».&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">LodgeIt! le pastebin libre</title>
		<link href="http://cbenz.pointique.org/post/2009/09/10/LodgeIt%21-le-pastebin-libre"/>
		<id>urn:md5:fdfd3ee1179f276759ba0c7d5841d801</id>
		<updated>2009-09-10T12:16:00+00:00</updated>
		<content type="html">&lt;p&gt;J'ai découvert le &lt;a href=&quot;http://fr.wikipedia.org/wiki/Pastebin&quot;&gt;pastebin&lt;/a&gt; &lt;a href=&quot;http://paste.pocoo.org/&quot;&gt;LodgeIt!&lt;/a&gt; dont le &lt;a href=&quot;http://dev.pocoo.org/projects/lodgeit&quot;&gt;code source&lt;/a&gt; est libre.&lt;/p&gt;


&lt;p&gt;LodgeIt! est écrit en Python et utilise &lt;a href=&quot;http://pygments.org/&quot;&gt;Pygments&lt;/a&gt; pour la coloration syntaxique (même auteur).&lt;/p&gt;


&lt;p&gt;L'auteur a également écrit un &lt;a href=&quot;http://www.vim.org/scripts/script.php?script_id=1965&quot;&gt;plugin Vim&lt;/a&gt; permettant d'envoyer du code directement depuis Vim en tapant &quot;:Lodgeit&quot;.&lt;/p&gt;


&lt;p&gt;Et comme le code source est libre, il est possible d'installer son propre serveur LodgeIt!.&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Voyage Tours - Vienne par l'Eurovélo 6</title>
		<link href="http://rando-velo.esaracco.fr/mois/eurovelo6"/>
		<id>http://www.esaracco.fr/3d700c5b237b88821178011005b142ef</id>
		<updated>2009-08-21T11:59:00+00:00</updated>
		<content type="html">Mise en ligne du journal de bord de ma &lt;a href=&quot;http://rando-velo.esaracco.fr/mois/eurovelo6&quot;&gt;randonnée à vélo Tours - Vienne&lt;/a&gt; de cet été. De la lecture et des photos!</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">démarrer gnome-terminal avec un encodage différent</title>
		<link href="http://cbenz.pointique.org/post/2009/08/20/d%C3%A9marrer-gnome-terminal-avec-un-encodage-diff%C3%A9rent"/>
		<id>urn:md5:7bc5717064d488ca472a52c6bd85091a</id>
		<updated>2009-08-20T16:28:00+00:00</updated>
		<content type="html">&lt;p&gt;Pour lancer un gnome-terminal en iso-8859-1, par exemple&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
$ env LANG=fr_FR.ISO-8859-1 gnome-terminal --disable-factory
&lt;/pre&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">synchro bi-directionnelle par FTP</title>
		<link href="http://cbenz.pointique.org/post/2009/08/20/synchro-de-site-web-par-FTP"/>
		<id>urn:md5:3b00b906e8a056440624b58aa456d097</id>
		<updated>2009-08-20T13:31:00+00:00</updated>
		<content type="html">&lt;p&gt;Synchroniser un site web par FTP, c'est ça peut se faire&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;à la main en uploadant / downloadant les fichiers dans un client FTP&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;C'est pénible et on ne s'y retrouve plus.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;avec lftp et ses commandes mirror / reverse-mirror&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;C'est long car il parcourt toute l'arborescence. Et la synchro est unidirectionnelle, comme le mot «mirror» l'indique.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;avec des outils comme &lt;a href=&quot;http://www.manyfish.co.uk/sitecopy/&quot;&gt;sitecopy&lt;/a&gt; ou &lt;a href=&quot;http://weex.sourceforge.net/&quot;&gt;weex&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ils utilisent un cache qui accélère grandement la synchro. Cependant le cache doit être stocké au même endroit que les sources du site web, par exemple dans le même dépôt Git. Sinon, il faut le reconstruire à chaque synchro et on perd l'intérêt d'avoir un cache. Cela est faisable mais en pratique j'ai trouvé ça lourd.&lt;/p&gt;


&lt;p&gt;De plus, je crois ne pas me tromper, mais la synchro est unidirectionnelle.&lt;/p&gt;


&lt;p&gt;Dans mon cas, je souhaite synchroniser un wiki (dokuwiki) dont les fichiers peuvent avoir changé à la fois sur le serveur et sur le client. Il me faut donc une synchronisation bi-directionnelle. J'ai pensé à l'outil &lt;a href=&quot;http://www.cis.upenn.edu/~bcpierce/unison/&quot;&gt;Unison&lt;/a&gt; qui gère très bien la synchro bi-directionnelle, avec une interface texte en console ou GTK.&lt;/p&gt;


&lt;p&gt;Problème&amp;nbsp;: Unison travaille en local ou par SSH, mais pas par FTP.&lt;/p&gt;


&lt;p&gt;Solution&amp;nbsp;: utiliser &lt;a href=&quot;http://curlftpfs.sourceforge.net/&quot;&gt;curlftpfs&lt;/a&gt;&lt;/p&gt;

&lt;pre&gt;
$ curlftpfs ftp://login:pass@ftp.blabla.org/ /mnt/ftp
$ unison -root www -root /mnt/ftp -force www
$ fusermount -u /mnt/ftp
&lt;/pre&gt;


&lt;p&gt;L'affaire est dans le sac&amp;nbsp;: Unison croit qu'il synchronise deux répertoires locaux. Reste à résoudre les conflits éventuels, et c'est parti pour une synchro. Problème&amp;nbsp;: curlftpfs est lent, il doit sûrement y avoir moyen de lui ajouter un cache, à suivre...&lt;/p&gt;


&lt;p&gt;Pour comprendre les options de la ligne de commande unison&amp;nbsp;: RTFM&amp;nbsp;!&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">n95 usb-storage cassé, vive ObexFS</title>
		<link href="http://cbenz.pointique.org/post/2009/08/03/n95-usb-storage-cass%C3%A9%2C-vive-ObexFS"/>
		<id>urn:md5:74bf465c02790d858e6b97e70f662f50</id>
		<updated>2009-08-03T19:37:00+00:00</updated>
		<content type="html">&lt;p&gt;Mon Nokia N95 8GB reboote systématiquement lorsque je le branche en USB. Peu importe que je monte le système de fichiers ou non, il suffit que je branche la prise USB et il reboote sans prévenir. Cela ne se passait pas ainsi lorsque je l'ai acheté, quelque chose a dû se casser, ou c'est le noyau qui fait ça. D'un autre côté, sous Windows, le même problème survient.&lt;/p&gt;


&lt;p&gt;Mais passons, car j'ai trouvé une solution&amp;nbsp;: &lt;a href=&quot;http://dev.zuckschwerdt.org/openobex/wiki/ObexFs&quot;&gt;ObexFS&lt;/a&gt; en Bluetooth. Nautilus permet d'ouvrir le contenu de mon téléphone grâce à gnome-bluetooth, mais il passe par GVFS. Étant donné que je souhaite utiliser rsync pour sauvegarder le contenu de mon téléphone, cela pose problème. ObexFS est un système de fichiers en espace utilisateur s'appuyant sur &lt;a href=&quot;http://fuse.sourceforge.net/&quot;&gt;FUSE&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Pour s'en servir&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;il faut installer le paquet obexfs et bluetooth&lt;/li&gt;
&lt;li&gt;l'utilisateur doit appartenir au groupe fuse&lt;/li&gt;
&lt;li&gt;il faut identifier l'adresse BD_ADDR (équivalent de MAC pour ethernet) du téléphone (hcitool scan)&lt;/li&gt;
&lt;li&gt;il faut ajouter ceci dans le fstab&amp;nbsp;:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;
obexfs#-bXX:XX:XX:XX:XX:XX /mnt/n95 fuse user,fsname=obexfs#-bXX:XX:XX:XX:XX:XX 0 0
&lt;/pre&gt;


&lt;p&gt;(remplacer XX:XX:XX:XX:XX:XX par l'adresse BD_ADDR de votre périphérique)&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;créer le répertoire /mnt/n95 (groupe fuse, avec g+w)&lt;/li&gt;
&lt;/ul&gt;
&lt;pre&gt;
$ mount /mnt/n95
$ ls /mnt/n95
$ umount /mnt/n95
&lt;/pre&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Upgrading to dovecot 1.2: hello Sieve!</title>
		<link href="http://julien.danjou.info/blog/index.php/post/2009/07/09/Upgrading-to-dovecot-12%3A-hello-Sieve"/>
		<id>urn:md5:5a52abc8793d8a4d6dcb6979a794a8aa</id>
		<updated>2009-07-09T14:43:00+00:00</updated>
		<content type="html">&lt;p&gt;&lt;a href=&quot;http://julien.danjou.info/blog/index.php/post/2008/05/16/Boarding-the-Prometheus&quot;&gt;Last year, I told you&lt;/a&gt; I wanted to use &lt;a href=&quot;http://en.wikipedia.org/wiki/Sieve_(mail_filtering_language)&quot;&gt;Sieve&lt;/a&gt; to filter my mail. I did not switch, because of the lacking implementation of some Sieve features inside &lt;a href=&quot;http://www.dovecot.org&quot;&gt;Dovecot&lt;/a&gt;, my preferred IMAP server.&lt;/p&gt;


&lt;p&gt;After that disapointement, I kept my 8 years old mail setup, being &lt;em&gt;fetchmail&lt;/em&gt; running on my workstation and throwing the mails in &lt;em&gt;procmail&lt;/em&gt;, then using &lt;em&gt;mutt&lt;/em&gt; locally to read the maildirs. But that's over.&lt;/p&gt;


&lt;p&gt;As &lt;a href=&quot;http://julien.danjou.info/blog/index.php/post/2009/07/08/New-laptop%3A-Lenovo-Ideapad-U330&quot;&gt;I told you yesterday&lt;/a&gt;, I got a laptop to replace my workstation. It was not possible to continue using such a mail setup, since my laptop can be offline, and so would be my mails.&lt;/p&gt;


&lt;p&gt;So I decided to upgrade Dovecot to 1.2. I used the &lt;em&gt;dovecot-1.2-work&lt;/em&gt; Subversion branch of our lovely Debian maintainers, and built a Debian package for Lenny. The upgrade from 1.1 was almost painless, since the configuration file did not change heavily.&lt;/p&gt;


&lt;p&gt;Then I started to write my little Sieve script. Sieve is a very nice language. Almost user friendly. So in 20 lines I rewrote all my procmail stuff, matching things like &lt;em&gt;List-Id&lt;/em&gt; with regex to put the mails automagically in the right folder. I reconfigured &lt;em&gt;mutt&lt;/em&gt; to use IMAP, and it works fine. I even reimported my old Maildir via IMAP using &lt;em&gt;mutt&lt;/em&gt; too.&lt;/p&gt;


&lt;p&gt;I am now a happy IMAP user.&lt;/p&gt;


&lt;p&gt;For people wondering why I wanted to switch away from &lt;em&gt;procmail&lt;/em&gt; to &lt;em&gt;Sieve&lt;/em&gt;: the reason is that Sieve script can be uploaded remotely via &lt;em&gt;managesieve&lt;/em&gt;. This means you do not need FTP/SSH/whatever access to put your script. You can, for example, use &lt;em&gt;connect-sieve&lt;/em&gt; or the Sieve plugin for Thunderbird/Icedove.&lt;/p&gt;</content>
		<author>
			<name>jd</name>
			<uri>http://julien.danjou.info/blog/index.php/</uri>
		</author>
		<source>
			<title type="html">jd:/dev/blog - Tag - work</title>
			<subtitle type="html">Julien Danjou's blog</subtitle>
			<link rel="self" href="http://julien.danjou.info/blog/index.php/feed/tag/work/atom"/>
			<id>urn:md5:44f74c834dac8a1829cb804b414698e9</id>
			<updated>2010-03-06T16:30:07+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">sfValidatorEmails</title>
		<link href="http://michael.parienti.net/post/2009/05/15/sfValidatorEmails"/>
		<id>urn:md5:2fbb32664617d32b54e7d4e070bfc274</id>
		<updated>2009-05-15T14:56:00+00:00</updated>
		<content type="html">&lt;p&gt;La classe suivante permet de valider, dans symfony, une liste d’emails, entrée par l’utilisateur dans un champs de type &lt;code&gt;textarea&lt;/code&gt;. Elle s’appuie sur le travail de la classe &lt;code&gt;sfValidatorEmail&lt;/code&gt;.&lt;/p&gt;

&lt;pre&gt;
class sfValidatorEmails extends sfValidatorBase
{

  public function __construct($options = array(), $messages = array()) 
  {
    parent::__construct(array_merge($options, array('trim' =&amp;gt; true)), $messages);
  }

  public function doClean($value) 
  {
    $i = 0;
    $emails = explode(&amp;quot;\n&amp;quot;, $value);
    $validator = new sfValidatorEmail($this-&amp;gt;options, $this-&amp;gt;messages);
    
    $cleaned_emails = array();

    try {
      foreach ($emails as $email) {
        ++$i;
        $cleaned_emails[] = $validator-&amp;gt;clean($email);
      }
    } catch (Exception $e) {
        throw new sfValidatorError($this, 'invalid',
                                   array('line' =&amp;gt; $i, 'bad_email' =&amp;gt; $email));
    }
    return implode(&amp;quot;\n&amp;quot;,$cleaned_emails);
  }

}
&lt;/pre&gt;</content>
		<author>
			<name>Michaël Parienti</name>
			<uri>http://michael.parienti.net/</uri>
		</author>
		<source>
			<title type="html">Le Carnet Tech de Michaël</title>
			<link rel="self" href="http://michael.parienti.net/feed/atom"/>
			<id>urn:md5:4dd7e271be6e69ded896058b5c10bed0</id>
			<updated>2009-12-04T13:30:06+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Sortie de wbmclamav 0.12</title>
		<link href="http://wbmclamav.labs.libre-entreprise.org/index_fr.html"/>
		<id>http://www.esaracco.fr/298cc2b257e68f940e2ff9e513e68091</id>
		<updated>2009-05-15T06:38:00+00:00</updated>
		<content type="html">&lt;a href=&quot;http://wbmclamav.labs.libre-entreprise.org/index_fr.html&quot;&gt;wbmclamav&lt;/a&gt; est un module webmin pour gérer Clam Antivirus.&lt;p&gt;&lt;/p&gt;&lt;strong&gt;ChangeLog&lt;/strong&gt;&lt;p&gt;&lt;/p&gt;
	&lt;ul&gt;
	  &lt;li&gt;Correction d'un problème avec les noms de fichiers dans la section de vérification des répertoires.&lt;/li&gt;
	  &lt;li&gt;Correction d'un problème de renvoi de courriels dans la section de la quarantaine.&lt;/li&gt;
	  &lt;li&gt;Mise à jour pour ClamAV 0.95.1. Les anciennes versions ne sont plus supportées.&lt;/li&gt;
	  &lt;li&gt;Ajout/suppression d'options nouvelles/obsolètes pour clamav et freshclam.&lt;/li&gt;
	&lt;/ul&gt;</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">performance tip: disable smooth scroll in iceweasel (firefox)</title>
		<link href="http://cbenz.pointique.org/post/2009/05/07/performance-tip%3A-disable-smooth-scroll-in-iceweasel-%28firefox%29"/>
		<id>urn:md5:3e2e6d3c4fcabc0d8417eb2408c85737</id>
		<updated>2009-05-07T15:15:00+00:00</updated>
		<content type="html">&lt;p&gt;about:config&lt;/p&gt;


&lt;p&gt;set key general.smoothScroll to false.&lt;/p&gt;


&lt;p&gt;Or, in preferences.js:&lt;/p&gt;


&lt;p&gt;user_pref(&quot;general.smoothScroll&quot;, false);&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Skin pour mediawiki</title>
		<link href="http://michael.parienti.net/post/2009/05/06/Skin-pour-mediawiki"/>
		<id>urn:md5:4b49fb3d88b1c52c4d838093e129c527</id>
		<updated>2009-05-05T22:28:00+00:00</updated>
		<content type="html">&lt;p&gt;Les &lt;a href=&quot;http://labs.libre-entreprise.org/frs/?group_id=145&quot; hreflang=&quot;en&quot;&gt;premiers fichiers&lt;/a&gt; du projet &lt;a href=&quot;http://labs.libre-entreprise.org/projects/le-skin/&quot; hreflang=&quot;en&quot;&gt;Libre
Entreprise Mediawiki Skin&lt;/a&gt; viennent d’être mis en ligne. Ce modeste projet
fournit un thème, une apparence, pour les sites réalisés avec le célèbre
&lt;a href=&quot;http://www.mediawiki.org/wiki/MediaWiki&quot; hreflang=&quot;en&quot;&gt;Mediawiki&lt;/a&gt;.
Le thème fourni est celui des trois sites du réseau &lt;a href=&quot;http://libre-entreprise.com/&quot; hreflang=&quot;fr&quot;&gt;Libre Entreprise&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Les objectifs de ce thème étaient :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Être totalement différent du thème par défaut de Mediawiki, pour que
l’utilisation du logiciel mediawiki ne soit pas manifeste ;&lt;/li&gt;
&lt;li&gt;Simplifier, voire supprimer, la boîte à outil, trop complexe, contenant des
liens inutiles pour la plupart des sites ;&lt;/li&gt;
&lt;li&gt;Simplifier et alléger de la même façon le contenu du pied de
page ;&lt;/li&gt;
&lt;li&gt;Être lisible sur un &lt;a href=&quot;http://www.blogeee.net/codex/index.php?title=Asus_EeePC_701&quot; hreflang=&quot;fr&quot;&gt;eeepc 701&lt;/a&gt;, sans défilement horizontal, ou presque.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La documentation pour utiliser et configurer le thème est &lt;a href=&quot;http://le-skin.easter-eggs.org/&quot; hreflang=&quot;en&quot;&gt;disponible&lt;/a&gt; en ligne.&lt;/p&gt;</content>
		<author>
			<name>Michaël Parienti</name>
			<uri>http://michael.parienti.net/</uri>
		</author>
		<source>
			<title type="html">Le Carnet Tech de Michaël</title>
			<link rel="self" href="http://michael.parienti.net/feed/atom"/>
			<id>urn:md5:4dd7e271be6e69ded896058b5c10bed0</id>
			<updated>2009-12-04T13:30:06+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Support d'Internet Explorer 8 chez Easter-eggs</title>
		<link href="http://blog.easter-eggs.org/index.php/post/2009/05/05/Support-d-Internet-Explorer-8-chez-Easter-eggs"/>
		<id>urn:md5:400a4a6ab90cf58608b7eb9b23971dc0</id>
		<updated>2009-05-05T14:31:00+00:00</updated>
		<content type="html">&lt;p&gt;Easter-eggs franchit le pas et supporte désormais Microsoft Internet Explorer 8.&lt;/p&gt;


&lt;p&gt;Le logiciel nous a été livré ce matin aux alentours de midi par un livreur en scooter. Quelques salariés ont eu l'occasion de le goûter.&lt;/p&gt;


&lt;p&gt;&lt;img src=&quot;http://blog.easter-eggs.org/public/05052009526_500.jpg&quot; alt=&quot;Internet Explorer 8&quot; title=&quot;Internet Explorer 8, mai 2009&quot; /&gt;&lt;/p&gt;


&lt;p&gt;Promesse tenue par Microsoft&amp;nbsp;: la version 8 du navigateur est plus sécurisée que ses versions précédentes. En effet, nous avons reçu un coup de fil avant livraison nous demandant si nous étions sûrs de bien vouloir commander. L'installation est rapide&amp;nbsp;: seulement une demi-heure d'attente avant livraison.&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://blog.easter-eggs.org/index.php/</uri>
		</author>
		<source>
			<title type="html">Le blog des salariés</title>
			<link rel="self" href="http://blog.easter-eggs.org/index.php/feed/atom"/>
			<id>urn:md5:9bf951e5c4460cfe7df5f2a1e7ae8038</id>
			<updated>2009-09-25T15:20:03+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Sortie de gospy-applet 0.9</title>
		<link href="http://gospy-applet.labs.libre-entreprise.org/index_fr.html"/>
		<id>http://www.esaracco.fr/5e637216142286116b7d8b0a6baa454b</id>
		<updated>2009-04-08T19:52:00+00:00</updated>
		<content type="html">&lt;a href=&quot;http://gospy-applet.labs.libre-entreprise.org/index_fr.html&quot;&gt;gospy-applet&lt;/a&gt; est une applet GNOME pour surveiller les changements sur des serveurs ou pages web. Vous pouvez ajouter un nombre illimité de sources. Il est possible de surveiller les changement d'IP, de serveur web, de statut d'une page, de temps de chargement ainsi que des champs HTTP.&lt;p&gt;&lt;/p&gt;&lt;strong&gt;ChangeLog&lt;/strong&gt;&lt;p&gt;&lt;/p&gt;
	&lt;ul&gt;
	  &lt;li&gt;Ajout d'une gestion des groupes pour les espions (tâche #409).&lt;/li&gt;
	  &lt;li&gt;Correction d'un problème avec l'alerte courriel.&lt;/li&gt;
	  &lt;li&gt;Correction d'un problème avec le bouton &quot;Voir les différences&quot;.&lt;/li&gt;
	  &lt;li&gt;Il est désormais possible de réinitialiser l'état de tous les espions.&lt;/li&gt;
	  &lt;li&gt;Suppression des avertissements gcc.&lt;/li&gt;
	&lt;/ul&gt;</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Still working!</title>
		<link href="http://julien.danjou.info/blog/index.php/post/2009/04/04/Still-working"/>
		<id>urn:md5:e19c38b13595ad9490af01949aa8a9db</id>
		<updated>2009-04-04T06:58:00+00:00</updated>
		<content type="html">&lt;p&gt;Well, I'm not dead buddies. I was overbooked.&lt;/p&gt;


&lt;p&gt;Last weeks have been a bit busy for me. I've also been on holidays, so I gave up on computers stuff a bit.&lt;/p&gt;


&lt;h3&gt;awesome&lt;/h3&gt;

&lt;p&gt;Big news: &lt;a href=&quot;http://awesome.naquadah.org&quot;&gt;awesome&lt;/a&gt; 3.2 has been released some weeks ago, and seems to be a success so far. We're working on the new 3.3 release, which will have some new sexy feature you'll love. More on that later.&lt;/p&gt;



&lt;h3&gt;Debian&lt;/h3&gt;

&lt;p&gt;I've uploaded a new &lt;a href=&quot;http://packages.debian.org/awesome-extra&quot;&gt;awesome-extra&lt;/a&gt; package with third party modules such as &lt;em&gt;shifty&lt;/em&gt; or &lt;em&gt;wicked&lt;/em&gt;.&lt;/p&gt;



&lt;h3&gt;startup-notification&lt;/h3&gt;

&lt;p&gt;I just managed to be added in the &lt;em&gt;startup-notification&lt;/em&gt; group at Freedesktop. I moved the CVS repository to &lt;a href=&quot;http://cgit.freedesktop.org/startup-notification/&quot;&gt;git&lt;/a&gt; and merged my set of &lt;a href=&quot;http://xcb.freedesktop.org&quot;&gt;XCB&lt;/a&gt; patches.&lt;/p&gt;</content>
		<author>
			<name>jd</name>
			<uri>http://julien.danjou.info/blog/index.php/</uri>
		</author>
		<source>
			<title type="html">jd:/dev/blog - Tag - work</title>
			<subtitle type="html">Julien Danjou's blog</subtitle>
			<link rel="self" href="http://julien.danjou.info/blog/index.php/feed/tag/work/atom"/>
			<id>urn:md5:44f74c834dac8a1829cb804b414698e9</id>
			<updated>2010-03-06T16:30:07+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">lorsque less se prend pour tail</title>
		<link href="http://cbenz.pointique.org/post/2009/04/02/lorsque-less-se-prend-pour-tail"/>
		<id>urn:md5:265745d8633bb452ebd8cdea5fe09804</id>
		<updated>2009-04-02T15:14:00+00:00</updated>
		<content type="html">&lt;p&gt;D'habitude j'utilise tail -f pour visualiser un log en temps réel.&lt;/p&gt;


&lt;p&gt;D'habitude l'utilise less pour parcourir un log.&lt;/p&gt;


&lt;p&gt;Et je passe de l'un à l'autre plusieurs fois...&lt;/p&gt;


&lt;p&gt;J'ai découvert la commande F de less, qui permet de faire comme tail -f. Ctrl-C revient au mode normal de less.&lt;/p&gt;


&lt;p&gt;man less&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">alix mon petit moineau</title>
		<link href="http://cbenz.pointique.org/post/2009/03/26/alix-mon-petit-moineau"/>
		<id>urn:md5:bec8f5a611ad27c7b7a8079e2c79f033</id>
		<updated>2009-03-26T15:49:00+00:00</updated>
		<content type="html">&lt;p&gt;J'ai acheté une carte mère &lt;a href=&quot;http://www.itx-france.com/catalog/alix-2c3.html&quot;&gt;Alix 2C3 fanless&lt;/a&gt; avec son &lt;a href=&quot;http://www.itx-france.com/catalog/boitier-alix-2c3.html&quot;&gt;boitier&lt;/a&gt; et son &lt;a href=&quot;http://www.itx-france.com/catalog/alimentation-pour-alix2.html&quot;&gt;alimentation&lt;/a&gt;.
De plus, une carte compact flash SanDisk Extreme IV de 8go (hautes performances).&lt;/p&gt;


&lt;p&gt;Ceci pour réaliser un mini serveur fanless (sans ventilateur) qui tourne 24h/24 chez moi. J'habite un petit studio et je ne veux pas d'un PC normal car il ferait trop de bruit la nuit.&lt;/p&gt;


&lt;h2&gt;Pourquoi diable&amp;nbsp;?&lt;/h2&gt;


&lt;p&gt;L'idée m'est apparue comme évidente suite au visionnage de la conférence de Benjamin Bayart &lt;a href=&quot;http://www.fdn.fr/Internet-libre-ou-Minitel-2.html&quot;&gt;Internet libre ou Minitel 2.0&lt;/a&gt;. J'en ai retenu que le Web était bien loin du maillage décentralisé qu'avaient imaginé ses créateurs, où chacun publie ses données mais les héberge lui-même. Aujourd'hui on est plutôt sur un modèle où monsieur tout-le-monde publie ses photos sur flickr, ses agendas sur facebook et ses mails chez gmail (ce qui est mon cas jusqu'à présent).&lt;/p&gt;


&lt;p&gt;De plus en plus de constructeurs proposent des machines avec des interfaces simplifiées (eeePC et consorts), et je vois bien arriver d'ici peu des outils de publication.&lt;/p&gt;


&lt;p&gt;En tant qu'informaticien, je ne veux pas attendre et dès à présent je souhaite mettre en œuvre ces concepts chez moi. Je souhaite également participer à l'élaboration de logiciels libres facilitant la publication et l'hébergement de ses propres données.&lt;/p&gt;


&lt;h2&gt;Allons-y&amp;nbsp;!&lt;/h2&gt;


&lt;p&gt;La machine dispose d'un processeur à 500 MHz AMD Geode LX800, de 256 MB DDR DRAM, d'un lecteur de carte compact flash et d'une alimentation DC jack min. 7V à max. 20V et sans ventilateur. Autrement dit ça consomme que dalle&amp;nbsp;!&lt;/p&gt;


&lt;p&gt;J'ai donc installé la &lt;a href=&quot;http://linux.voyage.hk/&quot;&gt;distribution Voyage Linux&lt;/a&gt; qui est dérivée de Debian, et utilise les repository officiels de Debian. L'avantage est qu'elle est toute paramétrée pour le matériel en question.&lt;/p&gt;


&lt;p&gt;Comme je n'ai pas de câble série null-modem, j'ai opté pour une installation depuis mon PC habituel avec un lecteur de carte compact flash. L'assistant d'installation de Voyage Linux permet de copier le système très rapidement sur la carte compact flash, après quelques questions de configuration.&lt;/p&gt;


&lt;p&gt;J'ai pu tester mon installation avec QEmu&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt;
$ qemu /dev/sdb
&lt;/pre&gt;


&lt;p&gt;Là, je peux configurer /etc/network/interfaces pour être sûr qu'au prochain démarrage, la machine alix aura la bonne IP.&lt;/p&gt;

&lt;pre&gt;
auto eth1
iface eth1 inet static
       address 10.0.0.111
       netmask 255.255.255.0
       broadcast 10.0.0.255
&lt;/pre&gt;


&lt;p&gt;Cette carte alix dispose de 3 ports ethernet, donc eth1 est celui du milieu (voir photo).&lt;/p&gt;


&lt;p&gt;Je m'y connecte par SSH.&lt;/p&gt;


&lt;p&gt;Avec apt-get, j'y ai installé lighttpd et php5-cgi pour l'instant, et ça fonctionne très bien.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://cbenz.pointique.org/blog/public/alix_2c3.jpg&quot;&gt;&lt;img src=&quot;http://cbenz.pointique.org/blog/public/.alix_2c3_m.jpg&quot; alt=&quot;alix 2c3&quot; title=&quot;alix 2c3, mar. 2009&quot; /&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;Performances&lt;/h2&gt;


&lt;p&gt;J'ai mesuré rapidos les performances d'écriture sur la carte compact flash et sur une clé USB (voir photo).&lt;/p&gt;


&lt;p&gt;Compact flash&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt;
cbenz@voyage:~$ time dd if=/dev/zero of=test.dat bs=1M count=500 conv=sync
500+0 records in
500+0 records out
524288000 bytes (524 MB) copied, 35,355 s, 14,8 MB/s

real	0m43.110s
user	0m0.005s
sys	0m5.225s
&lt;/pre&gt;


&lt;p&gt;Clé USB:&lt;/p&gt;
&lt;pre&gt;
cbenz@voyage:~$ time dd if=/dev/zero of=/media/sda1/test.dat bs=1M count=500 conv=sync
500+0 records in
500+0 records out
524288000 bytes (524 MB) copied, 87,7189 s, 6,0 MB/s

real	1m27.747s
user	0m0.008s
sys	0m7.677s
&lt;/pre&gt;


&lt;p&gt;Conclusion&amp;nbsp;: la carte Compact flash est bien plus rapide que la clé USB.&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">pourcentage d'avancement dans un file descriptor</title>
		<link href="http://cbenz.pointique.org/post/2009/03/26/pourcentage-d-avancement-dans-un-file-descriptor"/>
		<id>urn:md5:f8c1a3de6a2f78ee1c22838847eb4758</id>
		<updated>2009-03-26T10:50:00+00:00</updated>
		<content type="html">&lt;p&gt;Le répertoire /proc cache bien des secrets toujours intéressants à découvrir.&lt;/p&gt;


&lt;p&gt;Question du jour&amp;nbsp;: lorsqu'un processus ouvre un fichier en lecture, j'aimerais savoir à quelle position se trouve le curseur de lecture à l'intérieur du fichier.
Et cela, bien entendu, sans programmer cela dans le programme qui lit le fichier&amp;nbsp;: je veux trouver l'information par l'extérieur (le shell, ou un autre programme).&lt;/p&gt;


&lt;p&gt;En l'occurence, je fais tourner un script Python qui parse linéairement un énorme fichier XML d'&lt;a href=&quot;http://www.openstreetmap.org/&quot;&gt;OpenStreetMap&lt;/a&gt; de 1.3gb, et je voudrais afficher le pourcentage d'avancement du parsing.&lt;/p&gt;


&lt;p&gt;Le plus simple est de se situer au niveau des file descriptors ouverts par le processus. Tour d'horizon&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
$ pidof python
8056
$ ls -l /proc/8056/fd
cbenz@marguerite:/proc/8056/fdinfo$ ls -l /proc/8056/fd
total 0
lrwx------ 1 cbenz ee 64 mar 26 11:28 0 -&amp;gt; /dev/pts/7
l-wx------ 1 cbenz ee 64 mar 26 11:28 1 -&amp;gt; /home/cbenz/projet/log
lrwx------ 1 cbenz ee 64 mar 26 11:28 2 -&amp;gt; /dev/pts/7
lr-x------ 1 cbenz ee 64 mar 26 11:28 3 -&amp;gt; /home/cbenz/projet/hexagone-latest.osm
lr-x------ 1 cbenz ee 64 mar 26 11:28 4 -&amp;gt; /home/cbenz/projet/hexagone-latest.osm
&lt;/pre&gt;


&lt;p&gt;On voit que le processus 8056 ouvre 5 fichiers, et présentement le processus a ouvert hexagone-latest.osm 2 fois, ce qui est logique puisque mon script Python l'ouvre plusieurs fois (mais ce n'est pas le sujet).&lt;/p&gt;


&lt;p&gt;Ensuite, il existe le répertoire fdinfo qui permet d'obtenir des informations sur les file descriptors ouverts. Par exemple le 4&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
cbenz@marguerite:~$ cat /proc/8056/fdinfo/4
pos:	211816448
flags:	0100000
&lt;/pre&gt;


&lt;p&gt;Ce qui nous intéresse ici est l'information «pos», qui donne la position en octets depuis le début du fichier. Pour connaître la taille en octets du fichier&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
cbenz@marguerite:~$ ls -lL --block-size=1 /proc/8056/fd/4
-rw-r--r-- 1 cbenz ee 1383266367 fév 26 03:31 /proc/8056/fd/4
&lt;/pre&gt;


&lt;p&gt;Heureusement, mon grand-père m'a appris la règle de trois, un jour. En faisant une division, on devrait trouver le pourcentage.&lt;/p&gt;


&lt;p&gt;Voici un script qui utilise ces connaissances pour afficher le pourcentage à la fin. Je l'ai appelé fd_percent.sh&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
#!/bin/sh

function usage {
    echo 'usage: fd_percent.sh pid fd'
    exit -1
}

[ $# -gt 2 ] &amp;amp;&amp;amp; usage
[ -z $1 ] &amp;amp;&amp;amp; usage
[ -z $2 ] &amp;amp;&amp;amp; usage

pid=&amp;quot;$1&amp;quot;
fd=&amp;quot;$2&amp;quot;

file_size=`ls --block-size=1 -lL /proc/$pid/fd/$fd | cut -d ' ' -f 5`
current_pos=`cat /proc/$pid/fdinfo/$fd | grep 'pos:' | cut -f 2`

percent=`echo $current_pos/$file_size*100 | bc -l`
percent_formatted=`env printf '%.2f
' $percent`

echo $percent_formatted
&lt;/pre&gt;


&lt;p&gt;Exemple d'utilisation&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
cbenz@marguerite:~$ fd_percent.sh 8056 4
15,87
&lt;/pre&gt;


&lt;p&gt;Nickel, mission accomplie.&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">GNOME et les volumes amovibles</title>
		<link href="http://cbenz.pointique.org/post/2009/03/26/GNOME-et-les-volumes-amovibles"/>
		<id>urn:md5:6e37983ed2416def32e27dac615e5f74</id>
		<updated>2009-03-26T09:30:00+00:00</updated>
		<content type="html">&lt;p&gt;&lt;a href=&quot;http://www.erenumerique.fr/images/news/20090126/cle_pny.jpg&quot;&gt;My new USB key&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Pour donner un label à la partition&amp;nbsp;:&lt;/p&gt;
&lt;pre&gt;
$ sudo dosfslabel /dev/sdb1 &amp;quot;Green Tiny&amp;quot;
&lt;/pre&gt;


&lt;p&gt;Désormais GNOME monte le volume dans &quot;/media/Green Tiny&quot;, et l'icône sur le bureau présente le label.&lt;/p&gt;


&lt;p&gt;Simple, mais d'habitude je passais par les préférences de montage dans les propriétés du volume. Là, je nomme directement la partition.&lt;/p&gt;


&lt;p&gt;Question&amp;nbsp;: existe-t-il une interface graphique pour changer le label d'une partition&amp;nbsp;?&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">ssh: oops I shutdown my machine</title>
		<link href="http://cbenz.pointique.org/post/2009/03/23/ssh%3A-oops-I-shutdown-my-machine"/>
		<id>urn:md5:09235708681eed39c5e8de13dc936648</id>
		<updated>2009-03-23T19:18:00+00:00</updated>
		<content type="html">&lt;p&gt;aptitude install molly-guard&lt;/p&gt;


&lt;p&gt;molly-guard protects machines from accidental shutdowns/reboots.&lt;/p&gt;


&lt;p&gt;Si vous tapez halt ou reboot dans une session ssh, molly-guard vous demandera de confirmer&amp;nbsp;: incroyablement utile&amp;nbsp;!&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr-fr">
		<title type="html">Publication papier du recueil de poèmes &quot;Incendie dans la nuit&quot;</title>
		<link href="http://www.ilv-edition.com/librairie/incendie_dans_la_nuit.html"/>
		<id>http://www.esaracco.fr/9314185801375848ac6cdf388b9856a4</id>
		<updated>2009-03-20T17:10:06+00:00</updated>
		<content type="html">Publication papier du recueil de poèmes &lt;strong&gt;Incendie dans la nuit&lt;/strong&gt; aux éditions ILV-Edition.&lt;p&gt;&lt;/p&gt;« Comptabilise l'étrange, et ramasse à la pelle les oubliés de l'ombre. Retourne-toi souvent pour effacer tes traces. À reculons encore n'avance que pour renaître. Au matin chaque fois nettoie les jours anciens. Rince dans une eau pure la mécanique des rêves. Rejoins le jour nouveau et fais-toi magicien. » &lt;em&gt;Le bois d'errance&lt;/em&gt;.&lt;p&gt;&lt;/p&gt;&lt;a href=&quot;http://www.ilv-edition.com/librairie/incendie_dans_la_nuit.html&quot;&gt;Fiche&lt;/a&gt; - &lt;a href=&quot;http://www.ilv-edition.com/panier.php?add=311&quot;&gt;Commander&lt;/a&gt;</content>
		<author>
			<name>Emmanuel Saracco</name>
			<uri>http://www.esaracco.fr</uri>
		</author>
		<source>
			<title type="html">Emmanuel Saracco</title>
			<subtitle type="html">Les nouveaux logiciels, nouvelles musiques, nouvelles documentations ou nouvelles publications de textes sur le site de Emmanuel Saracco.</subtitle>
			<link rel="self" href="http://www.esaracco.fr/news_rss.php"/>
			<id>http://www.esaracco.fr/news_rss.php</id>
			<updated>2010-03-13T13:20:04+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">voyages-sncf.com vu de l'intérieur</title>
		<link href="http://cbenz.pointique.org/post/2009/03/18/voyages-sncf.com-vu-de-l-int%C3%A9rieur"/>
		<id>urn:md5:7517d5752f225910923d238c5a1e4732</id>
		<updated>2009-03-18T15:39:00+00:00</updated>
		<content type="html">&lt;p&gt;&lt;a href=&quot;http://linuxfr.org/comments/1000177,1.html&quot;&gt;Un commentaire sur linuxfr.org&lt;/a&gt; fournit un témoignage d'un gars qui a bossé pendant un an et demie sur le merveilleux site de la sncf&amp;nbsp;: http://www.voyages-sncf.com&lt;/p&gt;


&lt;p&gt;Au menu&amp;nbsp;: dette technique, time to market et quelques conseils pour mieux &lt;del&gt;utiliser&lt;/del&gt; ne pas tomber dans les nombreux pièges de ce site.&lt;/p&gt;


&lt;p&gt;Perso, je suis assez fier d'avoir enfin réussi à réserver mon aller-retour Paris-Lille en moins de 15 minutes, à un bon prix. J'essaie depuis 2 jours au rythme d'erreurs, de site non disponible, d'erreurs de paiement, etc.&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Quoi, où ? À quoi bon ?</title>
		<link href="http://blog.infos-pratiques.org/index.php/post/2009/03/10/Quoi%2C-o%C3%B9-%C3%80-quoi-bon"/>
		<id>urn:md5:b529f7af1908aef63c683d99cf870ac8</id>
		<updated>2009-03-10T22:46:00+00:00</updated>
		<content type="html">&lt;p&gt;Hier, la première version beta de &lt;a href=&quot;http://wiki.infos-pratiques.org/wiki/Metanol&quot; hreflang=&quot;fr&quot;&gt;Metanol&lt;/a&gt;, moteur de recherche d’adresses locales, est sortie.&lt;/p&gt;


&lt;p&gt;Cette version incorpore un bon nombre de nouveautés (nouveaux annuaires, interface de recherche, élargissement de la recherche, etc) et s'accompagne même d'&lt;a href=&quot;http://www.quoi-ou.org/&quot; hreflang=&quot;fr&quot;&gt;un tout nouveau site&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Il est amusant de constater l'évolution de ce projet&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Initialement, le besoin était de permettre aux collectivités d'afficher les adresses locales où effectuer les démarches administratives, en complément du &lt;a href=&quot;http://lecomarquage.service-public.fr/&quot; hreflang=&quot;fr&quot;&gt;co-marquage de service-public.fr&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Pour tenter de pallier partiellement l'absence d'annuaire de l'administration sous licence libre, je développe des fonctions de calcul de liens profonds vers l'annuaire service-public.fr. Metanol est né.&lt;/li&gt;
&lt;li&gt;Ensuite, certains liens sont remplacés par des liens profonds vers d'autres annuaires publics qui fournissent une information plus précise (l'annuaire de la justice, Améli, etc).&lt;/li&gt;
&lt;li&gt;Comme c'est facile, on ajoute des liens vers d'autres annuaires (sport, santé, collecte des déchets, etc), susceptibles d'intéresser aussi les collectivités. Au passage de nouvelles fonctionnalité apparaissent (possibilité de soumettre des formulaires au lieu d'utiliser uniquement des liens calculés, etc).&lt;/li&gt;
&lt;li&gt;Les premiers tests en interne montrent que les utilisateurs acceptent difficilement d'avoir des liens ne débouchant sur aucune réponse. On ajoute donc la fonction d'élargissement de la recherche.&lt;/li&gt;
&lt;li&gt;Parallèlement à cela, la lecture des historiques des connexions, montre que Google référence étonnamment bien le site initial de Metanol sur les quelques communes de démonstration. Ce serait dommage de ne pas en profiter. On décide donc de consacrer un peu d'effort au développement d'un site national. L'&lt;a href=&quot;http://www.quoi-ou.org/&quot; hreflang=&quot;fr&quot;&gt;annuaire « Quoi, où ? »&lt;/a&gt; est né.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Les prochaines étapes sont la correction des quelques bogues, l'ajout de nouveaux annuaires et surtout la finition des différentes méthodes d'intégration par les collectivités.&lt;/p&gt;


&lt;p&gt;Mais le développement de Métanol s'accompagne de son lot d'interrogations&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Est ce qu'un tel méta-annuaire a un avenir ou est-ce juste une solution de transition en attendant l'arrivée d'annuaires libres&amp;nbsp;?&lt;/li&gt;
&lt;li&gt;Jusqu'à quel point faut-il tenter de l'élargir&amp;nbsp;? Doit-on référencer tous les annuaires qu'on trouve&amp;nbsp;? Doit-on chercher à l'étendre à d'autres pays&amp;nbsp;? Ou, au contraire, rester très concentrés sur quelques besoins des collectivités&amp;nbsp;?&lt;/li&gt;
&lt;li&gt;Doit-on utiliser le moteur Metanol pour des besoins autres que des annuaires&amp;nbsp;?&lt;/li&gt;
&lt;li&gt;Et surtout, comment est-il possible de construire une communauté autour de ce logiciel&amp;nbsp;?&lt;/li&gt;
&lt;/ul&gt;</content>
		<author>
			<name>Emmanuel Raviart</name>
			<uri>http://blog.infos-pratiques.org/index.php/</uri>
		</author>
		<source>
			<title type="html">Infos pratiques</title>
			<link rel="self" href="http://blog.infos-pratiques.org/index.php/feed/atom"/>
			<id>urn:md5:fea272dd974897385aa23f943674c546</id>
			<updated>2010-01-06T07:50:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Le ménage dans les paquets</title>
		<link href="http://cbenz.pointique.org/post/2009/03/05/Le-m%C3%A9nage-dans-les-paquets"/>
		<id>urn:md5:2b8c61ae9feb0ff0334ce123a8ea3ac4</id>
		<updated>2009-03-05T13:36:00+00:00</updated>
		<content type="html">&lt;p&gt;Lister les paquets par taille occupée&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
dpkg-query -W --showformat='${Installed-Size}\t${Package}
' | sort -n
&lt;/pre&gt;


&lt;p&gt;Lister les paquets supprimés (apt-get remove) mais prenant encore un peu de place sur le disque (fichiers de configuration, etc)&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
dpkg -l | grep '^rc' | awk '{print $2}'
&lt;/pre&gt;


&lt;p&gt;ou&lt;/p&gt;

&lt;pre&gt;
dpkg --get-selections |grep deinstall
&lt;/pre&gt;


&lt;p&gt;Supprimer ces paquets&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
aptitude purge $(dpkg -l | grep '^rc' | awk '{print $2}')
&lt;/pre&gt;


&lt;p&gt;Utiliser deborphan (paquet à installer). Utiliser l'une de ces commandes (voir le man) puis purger avec aptitude&amp;nbsp;:&lt;/p&gt;

&lt;pre&gt;
deborphan
deborphan --libdevel
deborphan -a
&lt;/pre&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">x2x et ssh</title>
		<link href="http://cbenz.pointique.org/post/2009/03/05/x2x-et-ssh"/>
		<id>urn:md5:393f3c6a7faf718214c2c329f23ba0be</id>
		<updated>2009-03-05T13:25:00+00:00</updated>
		<content type="html">&lt;p&gt;Comment mutualiser un clavier et une souris entre plusieurs machines utilisant Xorg, à travers SSH.&lt;/p&gt;


&lt;p&gt;Le copier-coller est pris en charge.&lt;/p&gt;


&lt;p&gt;Au lieu de recopier cet article, je redirige&amp;nbsp;:&lt;/p&gt;


&lt;p&gt;http://www.cooldev.net/article-51-partager-le-clavier-et-la-souris-avec-x2x.html&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Désactiver Ctrl-Q dans Iceweasel (Firefox)</title>
		<link href="http://cbenz.pointique.org/post/2009/03/04/D%C3%A9sactiver-Ctrl-Q-dans-Iceweasel-%28Firefox%29"/>
		<id>urn:md5:fcd152b659538bc5b861d5c9c7f53fb4</id>
		<updated>2009-03-04T14:31:00+00:00</updated>
		<content type="html">&lt;p&gt;Pour personnaliser les raccourcis clavier dans Iceweasel, il existe l'extension keyconfig. Elle est toujours expérimentale.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://forums.mozillazine.org/viewtopic.php?t=72994&quot;&gt;http://forums.mozillazine.org/viewtopic.php?t=72994&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/1537&quot;&gt;https://addons.mozilla.org/en-US/firefox/addon/1537&lt;/a&gt;&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">sprunge.us</title>
		<link href="http://cbenz.pointique.org/post/2009/02/17/sprunge.us"/>
		<id>urn:md5:bbc0e680f78803bd8e13d80922c2b779</id>
		<updated>2009-02-17T17:53:00+00:00</updated>
		<content type="html">&lt;p&gt;Le nopaste &lt;a href=&quot;http://sprunge.us&quot; title=&quot;http://sprunge.us&quot;&gt;http://sprunge.us&lt;/a&gt; a la particularité de pouvoir être rempli par curl.&lt;/p&gt;

&lt;pre&gt;
$ alias nopaste=&amp;quot;curl -F 'sprunge=&amp;lt;-' http://sprunge.us&amp;quot;
$ cat /etc/motd | nopaste
http://sprunge.us/XXXX
&lt;/pre&gt;


&lt;p&gt;Et voilà&amp;nbsp;! Il renvoie une tinyURL prête à être donnée à vos amis.&lt;/p&gt;</content>
		<author>
			<name>Christophe Benz</name>
			<uri>http://cbenz.pointique.org/</uri>
		</author>
		<source>
			<title type="html">cbenz::blog - Tag - easter-eggs</title>
			<link rel="self" href="http://cbenz.pointique.org/feed/tag/easter-eggs/atom"/>
			<id>urn:md5:09309b50dd3286687ef6e8ff50dff019</id>
			<updated>2010-03-08T03:30:05+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">sysrqd 10</title>
		<link href="http://julien.danjou.info/blog/index.php/post/2009/02/12/sysrqd-10"/>
		<id>urn:md5:3dfd1b58e9211c8cfa43793bb766fe35</id>
		<updated>2009-02-12T11:16:00+00:00</updated>
		<content type="html">&lt;p&gt;I've just released &lt;a href=&quot;http://julien.danjou.info/sysrqd/&quot;&gt;sysrqd 10&lt;/a&gt;. I've rewritten big chunks of code, mostly because my C skills have quite improved between now and 4 years ago, and because I've blindly merged contributors patches which were crap.&lt;/p&gt;</content>
		<author>
			<name>jd</name>
			<uri>http://julien.danjou.info/blog/index.php/</uri>
		</author>
		<source>
			<title type="html">jd:/dev/blog - Tag - work</title>
			<subtitle type="html">Julien Danjou's blog</subtitle>
			<link rel="self" href="http://julien.danjou.info/blog/index.php/feed/tag/work/atom"/>
			<id>urn:md5:44f74c834dac8a1829cb804b414698e9</id>
			<updated>2010-03-06T16:30:07+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">OpenOffice is better as a pager than as a text processor</title>
		<link href="http://julien.danjou.info/blog/index.php/post/2009/02/11/OpenOffice-is-better-as-a-pager-than-as-a-text-processor"/>
		<id>urn:md5:109217a1e3df723f0bc498a2b536880d</id>
		<updated>2009-02-11T14:08:00+00:00</updated>
		<content type="html">&lt;p&gt;Since several month, &lt;a href=&quot;http://awesome.naquadah.org&quot;&gt;awesome&lt;/a&gt; users have reported a bug with &lt;a href=&quot;http://www.openoffice.org&quot;&gt;OpenOffice.org&lt;/a&gt;. When using OOo and clicking on a menu, or using the mouse wheel to read a document, the currently selected tag (desktop) will change automagically to another one.&lt;/p&gt;


&lt;p&gt;I've digged into awesome and found that awesome received a _NET_CURRENT_DESKTOP request. As defined by &lt;a href=&quot;http://standards.freedesktop.org/wm-spec/wm-spec-latest.html#id2550663&quot;&gt;EWMH&lt;/a&gt;, this kind of request are sent by a pager to change the active desktop.&lt;/p&gt;


&lt;p&gt;That was weird. Nobody is using a pager here. So, I just kicked my gdb out, attached it to OOo, breaking on &lt;em&gt;XSendEvent&lt;/em&gt; call. And I got it:&lt;/p&gt;


&lt;pre&gt;Breakpoint 1, XSendEvent (dpy=0x1a00080, w=483, propagate=0, event_mask=1572864, event=0x7fff1fd70d70)
   at ../../src/SendEvent.c:46
(gdb) bt
#0  XSendEvent (dpy=0x1a00080, w=483, propagate=0, event_mask=1572864, event=0x7fff1fd70d70)
   at ../../src/SendEvent.c:46
#1  0x00007f8c0ab4193f in vcl_sal::WMAdaptor::switchToWorkArea ()
  from /usr/lib/openoffice/basis3.0/program/libvclplug_genlx.so
#2  0x00007f8c0aafdbd8 in X11SalFrame::Show ()
  from /usr/lib/openoffice/basis3.0/program/libvclplug_genlx.so
#3  0x00007f8c1378623c in Window::Show ()
  from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#4  0x00007f8c13785f40 in Window::Show ()
  from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#5  0x00007f8c1372cb54 in FloatingWindow::StartPopupMode ()
  from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#6  0x00007f8c1373c877 in ?? () from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#7  0x00007f8c1373ccf2 in ?? () from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#8  0x00007f8c1373ce84 in ?? () from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#9  0x00007f8c13795e7f in ?? () from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#10 0x00007f8c13797e74 in ?? () from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#11 0x00007f8c13796748 in ?? () from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#12 0x00007f8c0aafe6f8 in X11SalFrame::HandleMouseEvent ()
  from /usr/lib/openoffice/basis3.0/program/libvclplug_genlx.so
#13 0x00007f8c0ab040c2 in X11SalFrame::Dispatch ()
  from /usr/lib/openoffice/basis3.0/program/libvclplug_genlx.so
#14 0x00007f8c0ab31625 in SalX11Display::Yield ()
  from /usr/lib/openoffice/basis3.0/program/libvclplug_genlx.so
#15 0x00007f8c0ab356f3 in ?? () from /usr/lib/openoffice/basis3.0/program/libvclplug_genlx.so
#16 0x00007f8c0ab2df1f in SalXLib::Yield () from /usr/lib/openoffice/basis3.0/program/libvclplug_genlx.so
#17 0x00007f8c135b050e in Application::Yield ()
  from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#18 0x00007f8c135b0587 in Application::Execute ()
  from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#19 0x00007f8c17517e80 in ?? () from /usr/lib/openoffice/program/../basis-link/program/libsofficeapp.so
#20 0x00007f8c135b4b24 in ?? () from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#21 0x00007f8c135b4bc5 in SVMain () from /usr/lib/openoffice/program/../basis-link/program/libvcllx.so
#22 0x00007f8c1754ca6c in soffice_main ()
  from /usr/lib/openoffice/program/../basis-link/program/libsofficeapp.so
#23 0x000000000040105b in main ()&lt;/pre&gt;


&lt;p&gt;I started digging more into the code, and this is what I finally found in &lt;em&gt;salframe.cxx&lt;/em&gt;:&lt;/p&gt;


&lt;pre&gt;       // #i45160# switch to desktop where a dialog with parent will appear 
       if( mpParent &amp;amp;&amp;amp; mpParent-&amp;gt;m_nWorkArea != m_nWorkArea ) 
           GetDisplay()-&amp;gt;getWMAdaptor()-&amp;gt;switchToWorkArea( mpParent-&amp;gt;m_nWorkArea );&lt;/pre&gt;


&lt;p&gt;Beautiful! It even has a comment with a IssueZilla bug number. Let's go and see where it comes from.&lt;/p&gt;


&lt;p&gt;After 10 minutes of research to find that fucking IZ, I finally found the link to the &lt;a href=&quot;http://www.openoffice.org/issues/show_bug.cgi?id=45160&quot;&gt;issue #45160&lt;/a&gt;. The bug is IMHO not related to OOo but to a window manager doing poor job.&lt;/p&gt;


&lt;p&gt;I've found that an awesome user already reported an bug… err, wait, I mean an issue as &lt;a href=&quot;http://www.openoffice.org/issues/show_bug.cgi?id=96684&quot;&gt;issue #96684&lt;/a&gt; (remember there's no bug in OOo, only issues) and I commented about it.&lt;/p&gt;


&lt;p&gt;UPDATE: It seems OOo developers have agreed to fix that bug eventually.&lt;/p&gt;</content>
		<author>
			<name>jd</name>
			<uri>http://julien.danjou.info/blog/index.php/</uri>
		</author>
		<source>
			<title type="html">jd:/dev/blog - Tag - work</title>
			<subtitle type="html">Julien Danjou's blog</subtitle>
			<link rel="self" href="http://julien.danjou.info/blog/index.php/feed/tag/work/atom"/>
			<id>urn:md5:44f74c834dac8a1829cb804b414698e9</id>
			<updated>2010-03-06T16:30:07+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="fr">
		<title type="html">Utilisation d'OpenStreetMap pour un annuaire</title>
		<link href="http://blog.infos-pratiques.org/index.php/post/2009/02/04/Utilisation-d-OpenStreetMap-pour-un-annuaire"/>
		<id>urn:md5:0f7cb34dc9b1027230fbaed1a3d77701</id>
		<updated>2009-02-04T19:53:00+00:00</updated>
		<content type="html">&lt;p&gt;Même si la France est en retard par rapport à d'autres pays européens (Angleterre, Allemagne, Pays-Bas, etc), il paraît inéluctable qu'&lt;a href=&quot;http://www.openstreetmap.org/&quot; hreflang=&quot;en&quot;&gt;OpenStreetMap&lt;/a&gt; deviendra, là aussi, &lt;em&gt;la&lt;/em&gt; base cartographique de référence, exactement de la même manière que &lt;a href=&quot;http://fr.wikipedia.org/&quot; hreflang=&quot;fr&quot;&gt;Wikipedia&lt;/a&gt;  a pris le pas sur les autres encyclopédies. Pour s'en convaincre, il suffit de regarder ses &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/Stats&quot; hreflang=&quot;en&quot;&gt;courbes de croissance&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Cela dit, OpenStreetMap est orienté cartographie et non pas annuaire. La question se pose alors de savoir si ses données peuvent être exploitées dans un annuaire. J'ai donc regardé le contenu de la &lt;a href=&quot;http://wiki.openstreetmap.org/wiki/FR:Servers&quot; hreflang=&quot;fr&quot;&gt;base OpenStreetMap de France métropolitaine&lt;/a&gt; afin de savoir si des données pourraient servir à un annuaire.&lt;/p&gt;


&lt;p&gt;Tout d'abord une mauvaise nouvelle, la base OSM ne contient quasiment pas d'adresses exactes&amp;nbsp;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Seulement 1887 champs &lt;code&gt;address&lt;/code&gt;, une grande proportion concernant des stations services.&lt;/li&gt;
&lt;li&gt;Le champ &lt;code&gt;place_numbers&lt;/code&gt; est lui quasiment jamais utilisé (seulement 17 fois).&lt;/li&gt;
&lt;li&gt;Idem pour le champ &lt;code&gt;place_names&lt;/code&gt;, qui apparaît 100 fois&lt;/li&gt;
&lt;li&gt;Quant aux codes postaux (19899 champs &lt;code&gt;postal_code&lt;/code&gt;) et aux codes INSEE (16569 champs &lt;code&gt;code_INSEE&lt;/code&gt;), ils apparaissent beaucoup plus souvent, mais ils sont attachés à des communes et non à des points d'intérêt (POI).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Pas d'adresse donc pour les POI ou du moins pas d'adresse exacte, car il doit être possible de retrouver le nom de la rue la plus proche du POI, ainsi que le code postal et le nom de la commune englobante, pour reconstituer une adresse bien souvent correcte (mais à laquelle il manque le numéro de rue).&lt;/p&gt;


&lt;p&gt;Par contre, les POI ne manquent pas et ils sont parfaitement &lt;a href=&quot;http://fr.wikipedia.org/wiki/G%C3%A9olocalisation&quot; hreflang=&quot;fr&quot;&gt;géolocalisés&lt;/a&gt;, contrairement aux annuaires  où les organismes sont souvent seulement &lt;a href=&quot;http://fr.wikipedia.org/wiki/G%C3%A9ocodage&quot; hreflang=&quot;fr&quot;&gt;géocodés&lt;/a&gt;&amp;nbsp;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;505 Parking à vélos&lt;/li&gt;
&lt;li&gt;471 Location de vélos (seulement les grands réseaux de type Vélib')&lt;/li&gt;
&lt;li&gt;225 Gare routière&lt;/li&gt;
&lt;li&gt;1233 Gare ferroviaire&lt;/li&gt;
&lt;li&gt;323 Arrêt de tramway&lt;/li&gt;
&lt;li&gt;86 Aéroport&lt;/li&gt;
&lt;li&gt;234 Café&lt;/li&gt;
&lt;li&gt;431 Pub, bar, bistrot&lt;/li&gt;
&lt;li&gt;167 Cinéma&lt;/li&gt;
&lt;li&gt;145 Théâtre&lt;/li&gt;
&lt;li&gt;1986 École, Collège, Lycée&lt;/li&gt;
&lt;li&gt;161 Etablissement d'enseignement supérieur&lt;/li&gt;
&lt;li&gt;255 Université, campus universitaire&lt;/li&gt;
&lt;li&gt;58 Palais de justice&lt;/li&gt;
&lt;li&gt;67 Source d'eau potable, par exemple pour la plaisance ou le camping-car&lt;/li&gt;
&lt;li&gt;1069 Restaurant (pas un fast-food)&lt;/li&gt;
&lt;li&gt;268 Restauration rapide&lt;/li&gt;
&lt;li&gt;128 Caserne de pompiers&lt;/li&gt;
&lt;li&gt;200 Fontaine&lt;/li&gt;
&lt;li&gt;2665 Station essence&lt;/li&gt;
&lt;li&gt;508 Hôpital&lt;/li&gt;
&lt;li&gt;155 Bibliothèque&lt;/li&gt;
&lt;li&gt;6868 Parking&lt;/li&gt;
&lt;li&gt;604 Pharmacie&lt;/li&gt;
&lt;li&gt;1962 Édifice religieux (église, mosquée, temple, synagogue, etc.)&lt;/li&gt;
&lt;li&gt;248 Poste de police, gendarmerie&lt;/li&gt;
&lt;li&gt;1230 Boîte aux lettres&lt;/li&gt;
&lt;li&gt;682 Bureau de poste&lt;/li&gt;
&lt;li&gt;95 Centre des arts, centre culturel&lt;/li&gt;
&lt;li&gt;170 Distributeur automatique de billets&lt;/li&gt;
&lt;li&gt;538 Banque&lt;/li&gt;
&lt;li&gt;57 Prison&lt;/li&gt;
&lt;li&gt;646 Mairie&lt;/li&gt;
&lt;li&gt;438 Bâtiment public&lt;/li&gt;
&lt;li&gt;1140 Point de collecte pour le recyclage (bouteilles, papier, etc)&lt;/li&gt;
&lt;li&gt;686 Téléphone&lt;/li&gt;
&lt;li&gt;326 Toilettes publiques&lt;/li&gt;
&lt;li&gt;1107 Supermarché&lt;/li&gt;
&lt;li&gt;246 Attraction touristique&lt;/li&gt;
&lt;li&gt;926 Camping&lt;/li&gt;
&lt;li&gt;572 Hôtel&lt;/li&gt;
&lt;li&gt;127 Office de tourisme, Point information&lt;/li&gt;
&lt;li&gt;213 Musée&lt;/li&gt;
&lt;li&gt;16 Parc d'attraction&lt;/li&gt;
&lt;li&gt;147 Point de vue&lt;/li&gt;
&lt;li&gt;208 Château&lt;/li&gt;
&lt;li&gt;116 Mémorial&lt;/li&gt;
&lt;li&gt;179 Monument commémoratif&lt;/li&gt;
&lt;li&gt;108 Ruines&lt;/li&gt;
&lt;li&gt;142 Athlétisme&lt;/li&gt;
&lt;li&gt;107 Basketball&lt;/li&gt;
&lt;li&gt;60 Escalade (Élément naturel ou mur d'escalade)&lt;/li&gt;
&lt;li&gt;820 Football&lt;/li&gt;
&lt;li&gt;55 Golf&lt;/li&gt;
&lt;li&gt;50 Gymnase&lt;/li&gt;
&lt;li&gt;19 Course à cheval&lt;/li&gt;
&lt;li&gt;164 Multisports&lt;/li&gt;
&lt;li&gt;86 Rugby&lt;/li&gt;
&lt;li&gt;251 Natation&lt;/li&gt;
&lt;li&gt;833 Tennis&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Certes ces POI sont recensés de manière encore lacunaire avec de fortes disparités locales, mais l'ensemble est loin d'être ridicule pour un projet qui n'a encore cartographié qu'une partie de la France.&lt;/p&gt;


&lt;p&gt;À la lumière de tous ces résultaits, il semble donc bien que la base OpenStreetMap pourraît être un bon point de départ pour un annuaire libre.&lt;/p&gt;


&lt;p&gt;L'idéal serait de coupler ses données avec celles de la Base d'orientation Service-Public Local (BOSPL), car elles paraissent très complémentaires.&amp;nbsp;: les données OSM pourraient enrichir la base BOSPL et réciproquement.. Mais pour cela il faudrait que la BOSPL soit diffusée sous une licence compatible avec la licence d'OSM &lt;a href=&quot;http://creativecommons.org/licenses/by-sa/2.0/fr/&quot; hreflang=&quot;fr&quot;&gt;Creative Commons &quot;Paternité-Partage des Conditions Initiales à l'Identique 2.0&quot;&lt;/a&gt;...&lt;/p&gt;


&lt;p&gt;Si ce n'est pas le cas, la constitution d'un annuaire libre pourrait se faire en palliant provisoirement l'absence des organismes publics de la BOSPL en utilisant le meta-annuaire &lt;a href=&quot;http://wiki.infos-pratiques.org/wiki/Metanol&quot; hreflang=&quot;fr&quot;&gt;Metanol&lt;/a&gt;, comme &lt;a href=&quot;http://www.bulle-communication.com/comarquage/viewtopic.php?p=29#p25&quot; hreflang=&quot;fr&quot;&gt;le suggère Yann Charlou&lt;/a&gt;.&lt;/p&gt;</content>
		<author>
			<name>Emmanuel Raviart</name>
			<uri>http://blog.infos-pratiques.org/index.php/</uri>
		</author>
		<source>
			<title type="html">Infos pratiques</title>
			<link rel="self" href="http://blog.infos-pratiques.org/index.php/feed/atom"/>
			<id>urn:md5:fea272dd974897385aa23f943674c546</id>
			<updated>2010-01-06T07:50:05+00:00</updated>
		</source>
	</entry>

</feed>
