<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>®om&#039;s blog &#187; Astuces</title>
	<atom:link href="http://blog.rom1v.com/category/astuces/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.rom1v.com</link>
	<description>Un blog libre</description>
	<lastBuildDate>Sun, 05 Sep 2010 17:23:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Pluzz.fr : France Televisions lance son service de TV de rattrapage non lisible</title>
		<link>http://blog.rom1v.com/2010/07/pluzz-fr-france-televisions-lance-son-service-de-tv-de-rattrapage-non-lisible/</link>
		<comments>http://blog.rom1v.com/2010/07/pluzz-fr-france-televisions-lance-son-service-de-tv-de-rattrapage-non-lisible/#comments</comments>
		<pubDate>Tue, 06 Jul 2010 14:57:11 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Humeur]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[drm]]></category>
		<category><![CDATA[format]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=1669</guid>
		<description><![CDATA[Le 5 juillet (hier donc), France Télévisions a lancé son service de télévision de rattrapage, qui ne permet pas de lire les vidéos. À moins d&#8217;accepter d&#8217;installer un système d&#8217;exploitation particulier avec un logiciel particulier (propriétaires évidemment). C&#8217;est comme s&#8217;ils diffusaient leurs émissions uniquement pour les utilisateurs équipés d&#8217;une TV Sony ou Philips, et pas [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.rom1v.com/wp-content/uploads/2010/07/france_televisions.jpg"><img src="http://blog.rom1v.com/wp-content/uploads/2010/07/france_televisions.jpg" alt="" title="france_televisions" width="300" height="155" class="alignright size-full wp-image-1675" /></a></p>
<p>Le 5 juillet (hier donc), <em>France Télévisions</em> <a href="http://linuxfr.org/~fabiensk/29918.html">a lancé</a> son service de télévision de rattrapage, <strong>qui ne permet pas de lire les vidéos</strong>. À moins d&#8217;accepter d&#8217;installer un système d&#8217;exploitation particulier avec un logiciel particulier (propriétaires évidemment). C&#8217;est comme s&#8217;ils diffusaient leurs émissions uniquement pour les utilisateurs équipés d&#8217;une TV Sony ou Philips, et pas pour les autres… <em>France Télévisions</em> a simplement oublié que c&#8217;était un avant tout un <strong>service public</strong>.</p>
<h2>Formats</h2>
<p>La lecture des vidéos nécessite soit <em>Windows Media Player</em>, soit <em>Silverlight</em>. C&#8217;est dommage, il aurait été préférable que leur site soit du web, accessible à tous.</p>
<p>En plus de cela, les vidéos sont diffusées dans le format fermé WMV. Certaines contiennent même des DRM. Les DRM, pour rappel, c&#8217;est ce qui empêche les utilisateurs de lire le contenu proposé. Certains prétendent que ça permet d&#8217;empêcher la copie&nbsp;; ce n&#8217;est pas totalement faux&nbsp;: quand on ne peut pas lire le contenu on ne peut pas le copier. Une autre technique plus efficace serait de ne pas le publier du tout.</p>
<p><strong>En numérique, tout ce qui est lisible est copiable. Par contraposée, tout ce qui n&#8217;est pas copiable n&#8217;est pas lisible.</strong></p>
<h2>Outil d&#8217;accès</h2>
<p>Comme <em>France Télévisions</em> n&#8217;a pas fait son boulot d&#8217;<a href="http://fr.wikipedia.org/wiki/Interop%C3%A9rabilit%C3%A9">interopérabilité</a>, et qu&#8217;a priori chacun a droit d&#8217;accéder à ce service (public!), nous sommes obligés de nous débrouiller par nous-mêmes.</p>
<p>J&#8217;ai donc écrit un petit script <em>bash</em> qui permet d&#8217;accéder relativement simplement à <em>Pluzz</em> à partir d&#8217;un système libre (où VLC doit être installé, testé sur <em>Ubuntu 10.04</em>). Pour l&#8217;utiliser, rendez-vous sur <a href="http://www.pluzz.fr">Pluzz.fr</a>, cliquez sur l&#8217;émission de votre choix, et copier l&#8217;adresse de la page (par exemple <code>http://www.pluzz.fr/jt-20h.html</code>).</p>
<p>Ensuite, pour lire la vidéo, tapez&nbsp;:</p>
<pre>pluzz play http://www.pluzz.fr/jt-20h.html</pre>
<p>Pour l&#8217;enregistrer (bah oui, tout ce qui est lisible est enregistrable)&nbsp;:</p>
<pre>pluzz record http://www.pluzz.fr/jt-20h.html</pre>
<p>Si vous voulez simplement l&#8217;url du flux&nbsp;:</p>
<pre>pluzz url http://www.pluzz.fr/jt-20h.html</pre>
<p>Ceci ne fonctionnera que pour les vidéos sans DRM&nbsp;: les vidéos avec DRM ne sont pas lisibles.</p>
<h2>Script</h2>
<p><em><strong>EDIT 11/07/2010&nbsp;:</strong><br />
J&#8217;ai mis à jour le script avec une version 0.2, qui gère également les flux en <code>mp4</code> (<a href="apt://flvstreamer">flvstreamer</a> doit être installé).<br />
L&#8217;historique des scripts est disponible <a href="http://dl.rom1v.com/pluzz/">ici</a> (au cas où une régression poserait problème).</em></p>
<p>Voici le script (sous licence <a href="http://sam.zoy.org/wtfpl/">wtfpl</a>), à sauvegarder en tant que fichier exécutable <code>/usr/local/bin/pluzz</code> <em>(uniquement si vous comprenez ce que vous faites)</em>&nbsp;:</p>
<pre>#!/bin/bash
# Script pour utiliser pluzz.fr
# v0.2 (11 juillet 2010)

if [ $# != 2 ]
then
    printf "Syntaxe: $0 [url|play|record] http://www.pluzz.fr/...\n" >&#038;2
    exit 1
fi
command="$1"
url="$2"

if [ "$command" != 'url' -a "$command" != 'play' -a "$command" != 'record' ]
then
    printf "Command must be 'url', 'play' or 'record', not '$command'\n" >&#038;2
    exit 2
fi

video_page_url=$(wget -qO- "$url" | grep -o 'http://info.francetelevisions.fr/?id-video=[^"]\+')
stream_url_part2=$(wget -qO- "$video_page_url" | grep urls-url-video | sed 's/.*content="\(.*\)".*/\1/')
ext=${stream_url_part2##*.}

if [ "$ext" = 'wmv' ]
then
    stream_url_part1='mms://a988.v101995.c10199.e.vm.akamaistream.net/7/988/10199/3f97c7e6/ftvigrp.download.akamai.com/10199/cappuccino/production/publication'
elif [ "$ext" = 'mp4' ]
then
    stream_url_part1='rtmp://videozones-rtmp.francetv.fr/ondemand/mp4:cappuccino/publication'
else
    printf "Extension not managed : '$ext'\n" >&#038;2
    exit 3
fi

stream_url="$stream_url_part1/$stream_url_part2"

if [ "$command" = "url" ]
then
    printf "$stream_url\n"
elif [ "$command" = "play" ]
then
    if [ "$ext" = 'wmv' ]
    then
        vlc "$stream_url"
    else
        flvstreamer -r "$stream_url" | vlc -
    fi
elif [ "$command" = "record" ]
then
    output_file=${stream_url##*/}
    printf "Recording to $output_file...\n"
    if [ "$ext" = 'wmv' ]
    then
        vlc "$stream_url" ":sout=#std{access=file,mux=asf,dst=$output_file}"
    else
        flvstreamer -r "$stream_url" -o "$output_file"
    fi
fi</pre>
<p><em><strong>EDIT 11/07/2010&nbsp;:</strong> Le plus simple est de créer un fichier <code>pluzz</code> dans le dossier personnel, d&#8217;y recopier le script ci-dessus, et d&#8217;exécuter&nbsp;:</em></p>
<pre>sudo install pluzz /usr/local/bin</pre>
<h2>Conclusion</h2>
<p>Après s&#8217;être déjà fait remarqué par leur <a href="http://www.numerama.com/magazine/15230-la-detestable-exclusivite-de-france-televisions-sur-orange-va-prendre-fin.html">exclusivité avec Orange</a>, j&#8217;espère que <em>France Télévisions</em> acceptera un jour de permettre l&#8217;accès à tous à la télévision de rattrapage.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2010/07/pluzz-fr-france-televisions-lance-son-service-de-tv-de-rattrapage-non-lisible/feed/</wfw:commentRss>
		<slash:comments>84</slash:comments>
		</item>
		<item>
		<title>Splash screen Ubuntu Lucid Lynx (10.04) et pilote NVIDIA propriétaire</title>
		<link>http://blog.rom1v.com/2010/05/splash-screen-ubuntu-lucid-lynx-10-04-et-pilote-nvidia-proprietaire/</link>
		<comments>http://blog.rom1v.com/2010/05/splash-screen-ubuntu-lucid-lynx-10-04-et-pilote-nvidia-proprietaire/#comments</comments>
		<pubDate>Thu, 13 May 2010 14:26:53 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[nvidia]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=1446</guid>
		<description><![CDATA[Ubuntu utilise maintenant Plymouth pour le processus de démarrage graphique. C&#8217;est maintenant le noyau qui s&#8217;occupe de la configuration graphique à la place de Xorg&#160;: c&#8217;est plus joli, plus rapide… Le problème, c&#8217;est que le logiciel propriétaire ne suit pas le rythme du logiciel libre. En particulier, le pilote NVIDIA propriétaire ne supporte pas encore [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.rom1v.com/wp-content/uploads/2010/05/ubuntu-lucid-boot.png"><img src="http://blog.rom1v.com/wp-content/uploads/2010/05/ubuntu-lucid-boot.png" alt="" title="ubuntu-lucid-boot" width="250" height="120" class="alignright size-full wp-image-1458" /></a><br />
<strong>Ubuntu</strong> utilise maintenant <strong>Plymouth</strong> pour le processus de démarrage graphique. C&#8217;est maintenant le noyau qui s&#8217;occupe de la configuration graphique à la place de <em>Xorg</em>&nbsp;: c&#8217;est plus joli, plus rapide…</p>
<p>Le problème, c&#8217;est que le logiciel propriétaire ne suit pas le rythme du logiciel libre. En particulier, le pilote <em>NVIDIA</em> propriétaire ne supporte pas encore cette fonctionnalité (alors que le pilote libre la gère correctement, mais ne supporte pas la 3D). Du coup, on se retrouve avec un <em>splash screen</em> très laid en basse résolution au démarrage.</p>
<p>Ce billet décrit comment avoir un logo à la bonne résolution (même si on n&#8217;obtiendra pas la fluidité possible actuellement avec le pilote libre). Une mise à jour sera peut-être disponible (espérons-le), avec un pilote <em>NVIDIA</em> propriétaire fonctionnant correctement. Si tel est le cas, merci de me prévenir, pour que je marque ce billet comme <em>déprécié</em>.</p>
<h2>Contourner le problème</h2>
<p><strong>Attention&nbsp;: ces modifications modifient votre configuration graphique, elles pourraient empêcher votre système de fonctionner correctement.</strong></p>
<p><em>Remplacez dans les étapes suivantes <code>1680x1050</code> par la définition de votre écran.</em></p>
<p>Tout d&#8217;abord, il faut prendre un post-it, un stylo, et écrire <em>«&nbsp;ne plus acheter d&#8217;ordinateur avec une carte graphique nécessitant des pilotes propriétaires pour fonctionner&nbsp;»</em>. Le coller ensuite bien en évidence pour s&#8217;en rappeler lors du prochain achat informatique.</p>
<p>Ensuite, installer le paquet <a href="apt://v86d">v86d</a>&nbsp;:</p>
<pre>sudo apt-get install v86d</pre>
<p>Puis éditer le fichier <code>/etc/default/grub</code>&nbsp;:</p>
<pre>gksudo gedit /etc/default/grub</pre>
<p>et remplacer la ligne&nbsp;:</p>
<pre>GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"</pre>
<p>par&nbsp;:</p>
<pre>GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset video=uvesafb:mode_option=1680x1050-24,mtrr=3,scroll=ywrap"</pre>
<p>et la ligne&nbsp;:</p>
<pre>#GRUB_GFXMODE=640x480</pre>
<p>par&nbsp;:</p>
<pre>GRUB_GFXMODE=1680x1050</pre>
<p>Puis exécuter les commandes suivantes&nbsp;:</p>
<pre>echo 'uvesafb mode_option=1680x1050-24 mtrr=3 scroll=ywrap' | sudo tee -a /etc/initramfs-tools/modules
echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
sudo update-grub2
sudo update-initramfs -u</pre>
<p>Il ne reste plus qu&#8217;à redémarrer le système, le logo est maintenant joli.</p>
<p>Merci à <a href="http://news.softpedia.com/news/How-to-Fix-the-Big-and-Ugly-Plymouth-Logo-in-Ubuntu-10-04-140810.shtml">softpedia</a> pour cette astuce.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2010/05/splash-screen-ubuntu-lucid-lynx-10-04-et-pilote-nvidia-proprietaire/feed/</wfw:commentRss>
		<slash:comments>39</slash:comments>
		</item>
		<item>
		<title>Vidéo OGG Theora sur HTTPS (dans Firefox) : configurer Apache</title>
		<link>http://blog.rom1v.com/2010/03/video-ogg-theora-sur-https-dans-firefox-configurer-apache/</link>
		<comments>http://blog.rom1v.com/2010/03/video-ogg-theora-sur-https-dans-firefox-configurer-apache/#comments</comments>
		<pubDate>Sat, 27 Mar 2010 22:43:52 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[compression]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[ogg]]></category>
		<category><![CDATA[serveur]]></category>
		<category><![CDATA[theora]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=1307</guid>
		<description><![CDATA[Tout le monde a entendu parler de la balise &#60;video/&#62;, la nouveauté la plus médiatisée d&#8217;HTML5. Le format vidéo à utiliser sur le web fait polémique (Theora ou H264) à cause de brevets logiciels, toujours bien présents dès il s&#8217;agit de freiner l&#8217;innovation. Une situation qu&#8217;à mon avis seul Google peut résoudre. Mais ce n&#8217;est [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.rom1v.com/wp-content/uploads/2010/03/oggtheora.png"><img src="http://blog.rom1v.com/wp-content/uploads/2010/03/oggtheora.png" alt="" title="oggtheora" width="150" height="100" class="alignright size-full wp-image-1317" /></a><br />
Tout le monde a entendu parler de la balise <code>&lt;video/&gt;</code>, la nouveauté la plus médiatisée d&#8217;HTML5. Le format vidéo à utiliser sur le web fait polémique (<a href="http://standblog.org/blog/post/2010/01/26/Video-Theora-ou-H264">Theora ou H264</a>) à cause de brevets logiciels, toujours bien présents dès il s&#8217;agit de freiner l&#8217;innovation. Une situation qu&#8217;à mon avis <a href="http://www.fsf.org/blogs/community/google-free-on2-vp8-for-youtube">seul Google peut résoudre</a>. Mais ce n&#8217;est pas l&#8217;objet de ce billet, pour l&#8217;instant, le format, c&#8217;est <em>OGG Theora</em>. Il suffit de placer un fichier <code>ogv</code> quelque part sur un serveur, et <em>Firefox</em> sait la lire.</p>
<p>Un problème survient cependant dès qu&#8217;on veut y accéder sur HTTPS plutôt qu&#8217;HTTP&nbsp;: on ne peut pas <em>seeker</em> dans la vidéo (c&#8217;est-à-dire qu&#8217;on ne peut pas déplacer le curseur pour se positionner à n&#8217;importe quel endroit), et on ne connaît pas sa durée totale.</p>
<p>Quelle différence entre l&#8217;accès en HTTP et HTTPS?</p>
<p>En HTTP, on reçoit la taille du fichier vidéo&nbsp;:</p>
<pre>$ curl --compressed -I http://.../video.ogv
HTTP/1.1 200 OK
Server: Apache
…
Content-Length: 26959501
Content-Type: video/ogg</pre>
<p>En HTTPS, on ne la reçoit pas, car le flux est compressé en <em>gzip</em>.</p>
<pre>$ curl --compressed -k -I https://.../video.ogv
HTTP/1.1 200 OK
Server: Apache
…
Content-Encoding: gzip
Content-Type: video/ogg</pre>
<p><em>(<code>-k</code> permet d&#8217;autoriser l&#8217;utilisation d&#8217;un certificat SSL non reconnu)</em></p>
<p>C&#8217;est la source du problème. Pourquoi ce comportement différent par défaut entre HTTP et HTTPS, je n&#8217;en sais rien (si quelqu&#8217;un peut m&#8217;éclairer…).</p>
<p>Par contre, il est très facile de désactiver la compression pour certains types de fichiers, comme les images ou les vidéos (compression qui n&#8217;a de toute façon aucun intérêt ces fichiers sont déjà compressés).</p>
<p>Pour cela, il suffit de rajouter une ligne dans <code>/etc/apache2/mods-available/deflate.conf</code>&nbsp;:</p>
<pre>SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|ogg|oga|ogv)$ no-gzip dont-vary</pre>
<p>et de recharger <em>Apache</em>&nbsp;:</p>
<pre>sudo service apache reload</pre>
<p>Et maintenant, ça fonctionne correctement sur HTTPS&nbsp;:</p>
<pre>$ curl --compressed -k -I https://.../video.ogv
HTTP/1.1 200 OK
Server: Apache
…
Content-Length: 26959501
Content-Type: video/ogg</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2010/03/video-ogg-theora-sur-https-dans-firefox-configurer-apache/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Installer une application .apk sur Android à partir d&#8217;un PC</title>
		<link>http://blog.rom1v.com/2010/01/installer-une-application-apk-sur-android-a-partir-dun-pc/</link>
		<comments>http://blog.rom1v.com/2010/01/installer-une-application-apk-sur-android-a-partir-dun-pc/#comments</comments>
		<pubDate>Sun, 10 Jan 2010 11:12:34 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=1207</guid>
		<description><![CDATA[J&#8217;expliquais, lors de mes premières impressions d&#8217;Android 2 sur le Motorola Milestone, qu&#8217;il était impossible d&#8217;installer un fichier .apk sans accepter les conditions d&#8217;utilisation du market ni configurer un compte gmail. C&#8217;est en fait possible, grâce à l&#8217;outil adb du SDK Android, à partir la connexion USB de l&#8217;ordinateur. Configurer le téléphone Pour que l&#8217;outil [...]]]></description>
			<content:encoded><![CDATA[<p>J&#8217;expliquais, lors de <a href="http://blog.rom1v.com/2010/01/motorola-milestone-avec-android-2-mes-premieres-impressions/">mes premières impressions d&#8217;Android 2 sur le Motorola Milestone</a>, qu&#8217;il était impossible d&#8217;installer un fichier <code>.apk</code> sans accepter les conditions d&#8217;utilisation du <em>market</em> ni configurer un compte <em>gmail</em>.</p>
<p>C&#8217;est en fait possible, grâce à l&#8217;outil <code>adb</code> du SDK Android, à partir la connexion USB de l&#8217;ordinateur.</p>
<h2>Configurer le téléphone</h2>
<p>Pour que l&#8217;outil d&#8217;installation puisse fonctionner, il faut activer l&#8217;option <em>Paramètres > Applications > Développement > Débogage USB</em> sur le téléphone.</p>
<h2>Configurer l&#8217;ordinateur</h2>
<p>Il faut télécharger <a href="http://developer.android.com/sdk/index.html">Android SDK</a>, malheureusement <a href="http://developer.android.com/sdk/terms.html">non libre</a>.</p>
<p>Sous GNU/Linux (plus précisément <em>Ubuntu 9.10</em>, adaptez selon votre distribution), voici comment l&#8217;installer et permettre la reconnaissance du Motorola Milestone (<a href="http://d.android.com/guide/developing/device.html">plus d&#8217;infos ici</a>)&nbsp;:</p>
<pre>sudo tar xzf android-sdk_r04-linux_86.tgz -C /opt
sudo ln -s /opt/android-sdk-linux_86/tools/adb /usr/local/bin
echo 'SUBSYSTEM=="usb", SYSFS{idVendor}=="22b8", MODE="0666"' | sudo tee /etc/udev/rules.d/51-android.rules
sudo service udev reload</pre>
<p>Si vous utilisez un système 64 bits, vous aurez besoin également besoin de <a href="apt://ia32-libs">ia32-libs</a>&nbsp;:</p>
<pre>sudo apt-get install ia32-libs</pre>
<p>Vous pouvez maintenant brancher votre téléphone sur le PC en USB. Pour vérifier que tout fonctionne&nbsp;:</p>
<pre>$ adb devices
List of devices attached
040140621600C00D	device</pre>
<h2>Installer une application</h2>
<h3>En ligne de commande</h3>
<p>Pour installer une application à partir de l&#8217;ordinateur, rien de plus simple&nbsp;:</p>
<pre>$ adb install -r ConnectBot-svn-r466-all.apk
2343 KB/s (642578 bytes in 0.267s)
	pkg: /data/local/tmp/ConnectBot-svn-r466-all.apk
Success</pre>
<p>(<em><code>-r</code> permet d&#8217;écraser si l&#8217;application est déjà installée</em>)</p>
<h3>À partir d&#8217;un gestionnaire de fichiers</h3>
<p>Vous pouvez ensuite ajouter la possibilité d&#8217;installer les <code>.apk</code> graphiquement à partir de votre gestionnaire de fichiers. Si vous utilisez <strong>nautilus</strong>, vous pouvez jouer avec <a href="http://doc.ubuntu-fr.org/nautilus-actions">nautilus-actions</a>&nbsp;:<br />
<a href="http://blog.rom1v.com/wp-content/uploads/2010/01/install-apk.png"><img src="http://blog.rom1v.com/wp-content/uploads/2010/01/install-apk-245x300.png" alt="" title="install-apk" width="245" height="300" class="aligncenter size-medium wp-image-1212" /></a><br />
Voici la commande de mon action nautilus (j&#8217;ouvre un xterm pour avoir le résultat de l&#8217;installation, si vous avez mieux, n&#8217;hésitez pas)&nbsp;:</p>
<pre>xterm -T adb -e 'cd "%d" &#038;&#038; /usr/local/bin/adb install -r "%f"; sleep 5'</pre>
<h2>Conclusion</h2>
<p>J&#8217;ai réinitialisé mon téléphone, il n&#8217;a plus de compte <em>gmail</em> associé et je n&#8217;ai pas accepté les conditions du <em>market</em>, ce qui ne m&#8217;empêche donc plus d&#8217;installer les applications dont j&#8217;ai besoin.</p>
<p>Même pour ceux qui veulent garder leur compte ou utiliser le <em>market</em>, c&#8217;est quand même plus rapide d&#8217;installer un <code>.apk</code> grâce à un clic-droit, <em>&laquo;&nbsp;installer&nbsp;&raquo;</em> à partir du gestionnaire de fichiers plutôt que de copier le <code>.apk</code> sur la carte SD, débrancher le câble USB, aller dans une appli qui va chercher le fichier et cliquer sur <em>&laquo;&nbsp;installer&nbsp;&raquo;</em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2010/01/installer-une-application-apk-sur-android-a-partir-dun-pc/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Tricher dans les jeux en modifiant la mémoire à chaud</title>
		<link>http://blog.rom1v.com/2009/12/tricher-dans-les-jeux-en-modifiant-la-memoire-a-chaud/</link>
		<comments>http://blog.rom1v.com/2009/12/tricher-dans-les-jeux-en-modifiant-la-memoire-a-chaud/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 19:52:58 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=1078</guid>
		<description><![CDATA[Il y a longtemps, sur la première PlayStation, j&#8217;avais acheté un Action Replay qui permettait de modifier la mémoire à chaud pour &#171;&#160;tricher&#160;&#187; ou changer le comportement d&#8217;un jeu. Il est possible de faire la même chose sous GNU/Linux grâce à scanmem, qu&#8217;il faut installer&#160;: sudo apt-get install scanmem Nous allons le tester sur Gnometris [...]]]></description>
			<content:encoded><![CDATA[<p>Il y a longtemps, sur la première <em>PlayStation</em>, j&#8217;avais acheté un <a href="http://fr.wikipedia.org/wiki/Action_Replay">Action Replay</a> qui permettait de modifier la mémoire <em>à chaud</em> pour &laquo;&nbsp;tricher&nbsp;&raquo; ou changer le comportement d&#8217;un jeu.</p>
<p>Il est possible de faire la même chose sous GNU/Linux grâce à <a href="apt://scanmem">scanmem</a>, qu&#8217;il faut installer&nbsp;:</p>
<pre>sudo apt-get install scanmem</pre>
<p>Nous allons le tester sur <strong>Gnometris</strong> (le Tetris-like intégré à <em>Gnome</em>) pour exploser le record.</p>
<p><a href="http://blog.rom1v.com/wp-content/uploads/2009/12/gnometris.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/12/gnometris-264x300.png" alt="" title="gnometris" width="264" height="300" class="alignright size-medium wp-image-1079" /></a></p>
<p>Lançons le jeu, et récupérons son <em>pid</em>&nbsp;:</p>
<pre>$ gnometris &#038;
[1] 30814</pre>
<p>Démarrons <strong>scanmem</strong> avec comme paramètre le <em>pid</em> de <strong>Gnometris</strong>&nbsp;:</p>
<pre>sudo scanmem 30814</pre>
<p><em>(oui, il faut être root pour lire et écrire la mémoire des autres programmes lancés, c&#8217;est plutôt rassurant)</em></p>
<p>On obtient un joli prompt&nbsp;:</p>
<pre>0> </pre>
<p>Il va falloir tout d&#8217;abord trouver où se trouve en mémoire la variable à modifier (celle qui contient le score courant). Pour cela, c&#8217;est très simple, vu que le score est affiché à l&#8217;écran, il suffit d&#8217;indiquer à <strong>scanmem</strong> sa valeur. Pour l&#8217;instant, mon score est de 0, je rentre donc 0&nbsp;:</p>
<pre>0> 0
info: 01/126 searching   0x621000 -   0x623000...........ok
info: 02/126 searching  0x1f9d000 -  0x2f4e000...........ok
…
info: 125/126 searching 0xe83f9000 - 0xe83fa000.ok
info: 126/126 searching 0xdab4b000 - 0xdab67000.ok
info: we currently have 12352024 matches.
12352024> </pre>
<p>Il y a donc 12352024 variables dans la mémoire utilisée par Gnometris qui sont à 0 (pas étonnant).</p>
<p>Je joue un peu, histoire de faire évoluer le score… <em>tac tac tac tac…</em> Voilà, j&#8217;ai 100 points (j&#8217;ai fait 2 lignes), je tape donc 100&nbsp;:</p>
<pre>12352024> 100
info: we currently have 36 matches.
36> </pre>
<p>Il y a 36 variables qui étaient à 0 tout à l&#8217;heure et qui sont à 100 maintenant. Je rejoue, je fais 1 ligne, j&#8217;ai 140 points, je tape donc 140&nbsp;:</p>
<pre>36> 140
info: we currently have 1 matches.
info: match identified, use "set" to modify value.
info: enter "help" for other commands.</pre>
<p>Voilà, j&#8217;ai trouvé la variable qui contient le score, maintenant je peux la modifier&nbsp;:</p>
<pre>1> set 12345678
info: setting *0x22e38f0 to 0xbc614e...</pre>
<p>Rien ne se passe dans le jeu, c&#8217;est normal&nbsp;: pour <strong>Gnometris</strong>, le score n&#8217;a pas pu changer, le label de l&#8217;interface graphique contenant le score n&#8217;a donc pas été rafraîchi. Il suffit de gagner quelques points pour s&#8217;apercevoir que la modification a bien été prise en compte&nbsp;:<br />
<a href="http://blog.rom1v.com/wp-content/uploads/2009/12/gnometris-cheat.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/12/gnometris-cheat-264x300.png" alt="" title="gnometris-cheat" width="264" height="300" class="aligncenter size-medium wp-image-1080" /></a></p>
<p>Ça fonctionne bien évidemment sur tous les programmes, mais c&#8217;est plus intéressant pour les jeux <img src='http://blog.rom1v.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2009/12/tricher-dans-les-jeux-en-modifiant-la-memoire-a-chaud/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Créer un serveur HTTP en 10 secondes sur Ubuntu grâce à Python</title>
		<link>http://blog.rom1v.com/2009/12/creer-un-serveur-http-en-10-secondes/</link>
		<comments>http://blog.rom1v.com/2009/12/creer-un-serveur-http-en-10-secondes/#comments</comments>
		<pubDate>Sun, 06 Dec 2009 15:22:39 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[serveur]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=1063</guid>
		<description><![CDATA[Il suffit d&#8217;aller dans le répertoire à partager et d&#8217;exécuter&#160;: $ python -m SimpleHTTPServer Serving HTTP on 0.0.0.0 port 8000 ... Le répertoire sera chrooté et accessible sur http://localhost:8000. Par défaut, le port 8000 est utilisé, mais on peut le changer&#160;: $ python -m SimpleHTTPServer 1234 Serving HTTP on 0.0.0.0 port 1234 ... Pour les [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.rom1v.com/wp-content/uploads/2009/12/python-logo.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/12/python-logo.png" alt="python-logo" title="python-logo" width="115" height="142" class="alignright size-full wp-image-1067" /></a></p>
<p>Il suffit d&#8217;aller dans le répertoire à partager et d&#8217;exécuter&nbsp;:</p>
<pre>$ python -m SimpleHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ...</pre>
<p>Le répertoire sera chrooté et accessible sur <code>http://localhost:8000</code>.</p>
<p>Par défaut, le port 8000 est utilisé, mais on peut le changer&nbsp;:</p>
<pre>$ python -m SimpleHTTPServer 1234
Serving HTTP on 0.0.0.0 port 1234 ...</pre>
<p>Pour les ports inférieurs à 1024, il faut être <em>root</em>&nbsp;:</p>
<pre>$ sudo python -m SimpleHTTPServer 80
Serving HTTP on 0.0.0.0 port 80 ...</pre>
<p> Si le port correspondant est ouvert sur le routeur, il sera également accessible de l&#8217;extérieur. Pratique pour partager rapidement du contenu…</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2009/12/creer-un-serveur-http-en-10-secondes/feed/</wfw:commentRss>
		<slash:comments>30</slash:comments>
		</item>
		<item>
		<title>Générer des mots de passe aléatoires</title>
		<link>http://blog.rom1v.com/2009/11/generer-des-mots-de-passe-aleatoires/</link>
		<comments>http://blog.rom1v.com/2009/11/generer-des-mots-de-passe-aleatoires/#comments</comments>
		<pubDate>Sat, 21 Nov 2009 19:05:29 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[sécurité]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=1036</guid>
		<description><![CDATA[Il arrive de vouloir changer de mot de passe, et comme d&#8217;habitude, d&#8217;en vouloir un aléatoire. Le programme pwgen est bien pratique. Il génère au choix&#160;: des mots de passe qui sont facilement mémorisables par des humains, tout en restant aussi sécurisés que possible&#160;: pratique pour un mot de passe sans importance dont on veut [...]]]></description>
			<content:encoded><![CDATA[<p>Il arrive de vouloir changer de mot de passe, et comme d&#8217;habitude, d&#8217;en vouloir un aléatoire.</p>
<p>Le programme <a href="apt://pwgen">pwgen</a> est bien pratique. Il génère au choix&nbsp;:</p>
<ul>
<li>des mots de passe qui sont facilement mémorisables par des humains, tout en restant aussi sécurisés que possible&nbsp;: pratique pour un mot de passe sans importance dont on veut se souvenir facilement&nbsp;;</li>
<li>des mots de passe totalement aléatoires (plus sécurisés)&nbsp;: pour le mot de passe principal d&#8217;un utilisateur&nbsp;;</li>
<li>des mots de passe totalement aléatoires avec des caractères spéciaux (le top)&nbsp;: pour des mots de passe jamais écrits à la main (bases de données), ou pour le mot de passe principal d&#8217;un geek ^^).</li>
</ul>
<p>Sur ces 3 exemples, on voit tout de suite les niveaux de difficulté de mémorisation&nbsp;:</p>
<pre>$ pwgen
EithooK4 faey6aeM Dai5aat5 ue0Aen8e lee1Aiyi Niemap6b ahW7ooth Pohc9iez
tien7Pho ahz5aaJ4 nohd0EiR uiS7xoot Cah9joo1 Fiede8to chus3Mee Ohji2dok
ieJah6de Nool6ael lahd6Pau dooc9Ach nai4Ther Iegahzu7 Roop2tha iiViG4pa
Chaeb1qu Ie0ohxis hohz9Aiw UeYae4Ae uthae6Ga veeCho9o Vo0shait aiShue1h
ieX8geen Auyeix9t OBeb0pae Cah0Ooqu aeG7nooV Ohpu5aic UaTh7eem Fakex4hu
vei7oNgu doc0Fi5J xahFel6r AeK5ing0 xaX6ahBu Coo7Quoh Aghu7lah xec9IeLu
ae1phiaR aem5Auy6 ebohP0ta FieGh3ee ki8QuaoN fahvev6R Aezil9Th aeVeex3f
aeh6eeTe ohR6Ahfi IoV4WaCh EeSah9Oo eeg2Wae8 Eeh5phee eiraGeu0 Owe5thah
Oa0eaqui iaV8joiw yoF1ueF9 Nee3Athi ooW3Noet uphai8Ai Eedoi2ch ao2Eich4
Chie3voo vexae9UR ri4en4Ai ig9ohDaZ iej1iRae Iechee6i uiS3geim zi0ee1Qu
Co5ahcoh Ahyai2ga eiw7ahCa Phier3ie Thoocai3 fieY0xeo aeNei2ei xieb2Cha
Le1oep5e oavohn8E ahbeeM5i Aedeif7i Ohth4Fai Uo4gaevu BeFohch3 iePu9aem
choh6zaY facoo0Na Ug5noh7z fet8ahS8 lanohl0H eiW5dahY Miex1Cey iPeew0Ai
Ooxae1Co Fa4ioz9w ooyaip1A tei6Pae7 eefaeX6J tahWoh6l quee0eeZ gooD0uDu
iev9aeS8 Deb7Iez1 tii8LaVi BuJoon3g eePeghe7 Cee8kahn Ru3rosho baiph2Iu
bahg1eiG vi8aeTho eequ7Voe Xi4oocha raij8aeJ Oe7heGhu Jae4iz1U Ineem3ie
koh1oiPh Bo9xi9Qu Ash5Aisu IeVuiph4 ul8fePoo Aaphe1ru eiWeim1v NuN7xira
uwe0Iexa ahBu9aiv Suu0aexi haiz2Eem eiC3phuh eingo1Cu Aibek8Ta Theiha2I
feP8poir id1ib5Ah Aib2Eish Ahk8cheu Woo7cha3 hahX4pai shiu2uYi Oobiev6E
euf7le8I Vaa2ao4w dah1Ieja pi4OaPuu Aeroh9th thue7Gu5 Aivu3Nah loo9le9E</pre>
<pre>$ pwgen -s
ji3f2Nvp chK36N5w yn7toyvP 3997nLrJ nzFqz14R 9dnkBHYL 9zF2zVQr T1psPkYX
nMNvbMU1 wz1xYluN z9D62kI0 ycZGb5a7 rKMj0W7P NNih1iC2 2TFeDTO1 ul0gKW9G
tplaj4Fg 9SAjOAdn b2KpUY4c M3G5lwAr 9mWUV61M iV41jedC vSFaeM91 PRy5zUuT
0oJIC3Va Qqzkc1gv je4Q2Meg dk0rVKiG oeBAo89G a7vgS7NZ evyG65d4 416FPnAO
94u4ShlL 4WvBDdsG b7ojJyo9 ZiQQO0wf B10gsyBQ jGPT5gw7 R8Vx6Fsb BjO6KzpN
Bj3mHgWs 4YGekJBa 6zVsqVxF sD4hphne ksucD8gt COU5FRCI BBkU9PQt oT7d90Ns
NSmKs5Jl USBtPA1Z oRTb1vl6 79Mn84dv QwGG1utJ HPZTHd1B zww6ZPif 9uIj6bme
GdE4BjN9 oB4VcrWQ 2TlAJuE6 52JMMxcx IsYoIj3g GWyL24vZ sv5dwT48 QrQTz5Xb
KnKtVDY9 5mW6B30b 6RPgdzOp Raes1DgQ Njv3rOyR u4pwGpGl s9hnUdVA WKR4IjQE
g72s3Okb J2IbdUWy 5LNfmINq 0QMAnPGx zTSbMK7h ic0qQhf6 OCB8mQ1p pxGhQ8Ps
wN0GjxDs seW9ricu 3DmdZUbJ lQF9rFWZ dvIC4RM4 CuUWo6k5 rdA4QByG wpHI2BSU
bvvSF2dz y6205hA5 7zGpRspW hn1E4HCh 1lJlhL2P g0niR3c9 dPByI3PG AtRm1bSV
I1Hs5Cg3 8CRJvebA jxh8jpAU x9828wlW 6KBcByOt orl3QmoL 6pYIHB7c MALID6LD
36KiInPB 5f2DLzhj iRB9AHah GUCn2Tzq aJ0ZiDy0 nizXx6SI dCEO0fvw Q5fMf08t
HmZVQd25 EIiKnbb4 AQun8igX 88TRMsB6 R1g0hL7D QPTRCH1V hs14l8C1 xVKhN5MD
sU5N2N4n tS7iB8jK 5Vcq8XrN GvT2bF5X hZS2jZpB vMI2ZxhC GXaYX5JV h5enQ53C
aKSh3ZGm QCxe8dT0 XI38fqmZ u0vA31e7 3wdaV3OF e98PZcs4 Bu7SceCn Pgkq0q2K
j71AznCc pNtp5VoC N2m1RNBn Opa4CrMl P3IFuG6s iuNhtTm3 k3jehDmQ TyG5kBdo
03eqXAB1 Dez29MWr ZZRRI0oh 1KC7CD3H 8Q6VMn5d b9DO8B1o 3M36hgOf N3JWSJIn
xXmfe86X FjCSO4bI w5BvyCZS rDB4aOPK H8hvo7M1 svWnLX2x Mglqr0yA udo253ND</pre>
<pre>$ pwgen -sy
TFKS^;4v y$@5i6CH !4?]G]Tf $E\&lt;90z? ^'z5c+BH 9E&gt;aS@(} qP,:Z2.K ]*7db:W:
\x7Nv9/X Q&#038;ry9yw6 9ur]=_V0 5-ea/3Tk MQ}jS4H3 1|r\TX%? PnI9!+T* ;I#36=)%
}_(@D7~E hRt0f?3p 7$XQG]j= '7/n7`X: |Byz#93A 4kR4'vw1 %j!f{5WL 7p{xmH?e
,jCt0nXH LSI[T1Z% ViF+O&gt;5v 5(Ooaa%+ p@%Bs9dl DUv@HjB7 oH4q*h*0 +4?B,?a#
x9C4(/]" 9H(||&gt;"8 k"gKzz5} B@W8s#dW \J9]j7l] 3O@;~{vM RNQ'g2M6 &gt;ZQ}E1[]
%3t"i^aK Wp!1(Jw% }0RQ!y\E ~)(0L4.' p@|9uLZO q%%0n#L: ._9AgN}K s[vK?Fi8
vtPgD?~7 Q(&gt;NZ"6j -ADl[88, '+FQj\g6 &lt;,zS(N[2 v9_HEyc: %i5%B!d5 _BA36*Y$
]vS8N!YG 9v'-Dmd3 QQ1;@Zq/ X-3ov/!T Fi%+QI~2 #GY5~&gt;V$ O}T!N8z# 8Gm/-'Al
gM\(bt3\ Ur[D7:I+ dZx@:&lt;5r &gt;^*IKAG2 StTJ3.2! a~FBKB6@ )r-&gt;m5Ia ui;7Uy*/
9x]jD;&gt;p X6#TV*at 8koi'YTc N9jYz&#038;qC nC}9xy#; oyGvr*d4 Oh1}s.mI T$q5htKG
m\o}-6Ex 952Np-ly |vO9T\${ 6u3V)~H" R0fq6T3# [QJTM^a3 7y\M[|2j "s\4U}Hv
:Br^T4_G wKi8,,\_ q;+3K"&#038;{ W1kp`q7&#038; 0Ps?Gq#) cRQ5jnl| ;i6rMWbf [D&lt;4~|Gb
`W_c)/7p A:H,4g2; U?Q{sB4, HMED&gt;2`) .-,9Mlhk *9I\nYH/ bDb`(&#038;,7 x8sLE.G[
F&gt;(.'o0s J\N-0h=&lt; Vrk0W2,n (M3vAm,S rs&#038;ZKgD5 @:a$8N*5 9qm|BZiq {o&#038;3qK`A
-R2/qwg? 3D&gt;{\Y&#038;| s2Bc!]bD tAfJ_1GS \7F[mWJK E#(7zIW@ )RT7lrG) !rzI4Gwn
.0AE=J"| z8Z]b%|N "$4,7X,p +j}!'Ui6 o%W$L/3{ n#+Rf`P9 x3q"Bd($ ""Xmh6S?
@:3T=z~A E+IFC`2C 5;YG]&#038;/] ,1@!&lt;*Qt &lt;2Y8A4a@ ;5fOO0{B 7Prjv$Ms 2'g!6!3T
9r")N*J; z=K'75=! p|0K]&#038;e&lt; {l5kvqL{ (mG4?0xt p5&gt;F&gt;)D5 j69;T^Jv ;.6sLj5?
qH;1&lt;6Cq 7M+olge; \^n,S7B, @}^7Z]u@ 62__*C6b BNDnB)1@ xr^qwE7C a2'V*S&lt;0
5&#038;dk?QN9 W0x(}QPE ~-6i-ufZ ik|v#s9L 6xdgc2Y= 7kcS#}if PG1}MI6V u(29L/?}</pre>
<p>Les plus paranos pourront également changer des caractères des mots de passes générés, ou les mélanger entre eux (afin d&#8217;éviter qu&#8217;un bug de <code>pwgen</code> ne provoque une baisse de sécurité).</p>
<p>Il est également possible de passer en paramètre la longueur des mots de passe que l&#8217;on veut générer.</p>
<p>Pour le reste&nbsp;: <code>man pwgen</code>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2009/11/generer-des-mots-de-passe-aleatoires/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Bien débuter en LaTeX sous Ubuntu</title>
		<link>http://blog.rom1v.com/2009/07/bien-debuter-en-latex-sous-ubuntu/</link>
		<comments>http://blog.rom1v.com/2009/07/bien-debuter-en-latex-sous-ubuntu/#comments</comments>
		<pubDate>Wed, 15 Jul 2009 22:35:38 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[latex]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=651</guid>
		<description><![CDATA[Je ne vais pas présenter LaTeX&#160;: si vous ne connaissez pas, je vous renvoie sur la page LaTeX de Wikipedia. Je vais plutôt présenter succintement l&#8217;installation de LaTeX et d&#8217;un éditeur pour Ubuntu, puis je vais lister les quelques points basiques qui peuvent poser problème et qui empoisonnent la vie quand on n&#8217;a pas de [...]]]></description>
			<content:encoded><![CDATA[<p>Je ne vais pas présenter <strong>LaTeX</strong>&nbsp;: si vous ne connaissez pas, je vous renvoie sur <a href="http://fr.wikipedia.org/wiki/LaTeX">la page LaTeX de Wikipedia</a>.<br />
<a href="http://upload.wikimedia.org/wikipedia/commons/9/92/LaTeX_logo.svg"><img alt="LaTeX" src="http://upload.wikimedia.org/wikipedia/commons/thumb/9/92/LaTeX_logo.svg/180px-LaTeX_logo.svg.png" title="LaTeX" class="aligncenter" width="180" height="75" /></a></p>
<p>Je vais plutôt présenter succintement l&#8217;installation de LaTeX et d&#8217;un éditeur pour Ubuntu, puis je vais lister les quelques points basiques qui peuvent poser problème et qui empoisonnent la vie quand on n&#8217;a pas de solutions&nbsp;:</p>
<ul>
<li>les polices pixellisées&nbsp;;</li>
<li>les problèmes d&#8217;encodage&nbsp;;</li>
<li>les problèmes de caractères spéciaux dans les méta-données&nbsp;;</li>
<li>d&#8217;autres problèmes avec des caractères accentués&nbsp;;</li>
<li>la modification des marges du document…</li>
</ul>
<h2>Installation de base</h2>
<p>Il faut tout d&#8217;abord installer le minimum&nbsp;: <a href="apt://texlive">texlive</a>.<br />
Pour pouvoir gérer correctement le français, <a href="apt://texlive-lang-french">texlive-lang-french</a> est nécessaire.<br />
Il est conseillé d&#8217;installer également <a href="apt://texlive-latex-extra">texlive-latex-extra</a>, qui contient pas mal de greffons bien utiles.<br />
Enfin, pour avoir des polices vectorielles (et non bitmap, qui sont pixellisées lors d&#8217;un zoom), il faut le paquet <a href="apt://lmodern">lmodern</a>.</p>
<pre>sudo apt-get install texlive texlive-lang-french texlive-latex-extra lmodern</pre>
<h2>Greffon pour gedit</h2>
<p>Depuis <em>Jaunty</em>, le greffon LaTeX pour <strong>gedit</strong> est packagé dans les dépôts par défaut&nbsp;: <a href="apt://gedit-latex-plugin">gedit-latex-plugin</a>.<br />
Une fois installé, <strong>gedit</strong> s&#8217;enrichit d&#8217;une barre d&#8217;outil (lorsqu&#8217;un document <code>.tex</code> est ouvert) et d&#8217;un panneau inférieur <em>(Ctrl+F9 pour l&#8217;activer et le désactiver)</em>&nbsp;:<br />
<a href="http://blog.rom1v.com/wp-content/uploads/2009/07/gedit-latex.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/07/gedit-latex-300x236.png" alt="gedit-latex" title="gedit-latex" width="300" height="236" class="aligncenter size-medium wp-image-687" /></a></p>
<p>Pour compiler le document, rien de plus simple, tout est dans le menu <em>Outils</em>&nbsp;:<br />
<a href="http://blog.rom1v.com/wp-content/uploads/2009/07/gedit-latex-menu.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/07/gedit-latex-menu-300x214.png" alt="gedit-latex-menu" title="gedit-latex-menu" width="300" height="214" class="aligncenter size-medium wp-image-663" /></a></p>
<h2>Configuration de l&#8217;en-tête</h2>
<h3>Encodage des caractères</h3>
<p>Par défaut, si aucune raison particulière ne préconise le contraire, tout texte devrait être encodé en <a href="http://fr.wikipedia.org/wiki/UTF-8">UTF-8</a>&nbsp;: ça tombe bien, c&#8217;est l&#8217;encodage par défaut d&#8217;Ubuntu.</p>
<p><em>Si un jour vous rencontrez un problème d&#8217;encodage dans n&#8217;importe quel domaine, et que sur un forum quelqu&#8217;un vous indique que pour le résoudre, il faut changer l&#8217;encodage en latin1 (iso-8859-1), ne suivez pas son conseil, ça n&#8217;est pas une bonne solution (à part pour des problèmes de compatibilité avec un existant très vétuste).</em></p>
<p>Il faut indiquer au compilateur LaTeX que le document source est encodé en <strong>UTF-8</strong>. Pour cela, il suffit de rajouter dans l&#8217;en-tête la ligne suivante&nbsp;:</p>
<pre>\usepackage[utf8]{inputenc}</pre>
<h3>Accents, bidouille et coupure de mots</h3>
<p>Maintenant que l&#8217;encodage est correctement reconnu, il reste un petit problème avec les caractères accentués. Lorsqu&#8217;on écrit le caractère «&nbsp;é&nbsp;» par exemple, le compilateur sait le reconnaître (codage UTF-8), mais l&#8217;encodage de la police par défaut ne permet pas de le dessiner directement&nbsp;: elle ne contient pas ce caractère. Pour contourner le problème, le compilateur écrit un «&nbsp;e&nbsp;» avec un «&nbsp;&#8217;&nbsp;» au-dessus (<code>\'e</code>).</p>
<p>À première vue, ça n&#8217;est pas gênant, le rendu est nickel. Sauf que cela pose deux problèmes&nbsp;:</p>
<ul>
<li>la recherche d&#8217;un mot qui contient un caractère accentué dans n&#8217;importe quel visionneuse PDF ne fonctionne pas (normal, le caractère accentué n&#8217;est pas réellement écrit dans le fichier)&nbsp;;</li>
<li>l&#8217;algorithme de coupure de mots s&#8217;emmêle les pinceaux sur les mots qui contiennent des caractères accentués.</li>
</ul>
<p>Pour éviter le problème, il faut rajouter dans l&#8217;en-tête&nbsp;:</p>
<pre>\usepackage[T1]{fontenc}</pre>
<h3>Méta-données</h3>
<p>Le package <strong>hyperref</strong> est quasiment incontournable pour générer des PDF, il permet de personnaliser pas mal de choses, et surtout de faire des liens cliquables (à l&#8217;intérieur du document ou vers une url externe)… Pour l&#8217;utiliser, il suffit de rajouter le package dans l&#8217;en-tête, auquel on peut spécifier des options&nbsp;:</p>
<pre>\usepackage[bookmarks=false,colorlinks,linkcolor=blue]{hyperref}</pre>
<p><em>Ici, par exemple, j&#8217;ai précisé que je ne voulais pas générer l&#8217;index du document (qui s&#8217;affiche par défaut dans certaines visionneuses de PDF, notamment le logiciel «&nbsp;privateur&nbsp;» Adobe Reader), que je voulais colorer les liens plutôt que de les encadrer (ce que je trouve particulièrement moche) et que je les voulais en bleu.</em></p>
<p>Ce package permet également de renseigner les propriétés du documents (les méta-données), ce qui est bien utile pour le référencement.</p>
<p>On trouve souvent la méthode qui consiste à ajouter les propriétés du document directement en option d&#8217;<strong>hyperref</strong>&nbsp;:</p>
<pre>\usepackage[pdfauthor={Romain Vimont},pdftitle={Démo LaTeX}]{hyperref}</pre>
<p>Mais elle ne supporte pas tous les caractères, par exemple&nbsp;:</p>
<pre>\usepackage[pdfauthor={Romain Vimont (®om)},pdftitle={Démo LaTeX}]{hyperref}</pre>
<p>Une bonne pratique est donc de les écrire séparément (et là ça fonctionne)&nbsp;:</p>
<pre>\hypersetup{
  pdftitle={Démo LaTeX},
  pdfsubject={Modèle de document LaTeX},
  pdfkeywords={LaTeX, modèle},
  pdfauthor={Romain Vimont (®om)}
}</pre>
<p>La liste complète des propriétés est disponible <a href="http://en.wikibooks.org/wiki/LaTeX/Hyperlinks#Customization">ici</a>.</p>
<p><a href="http://blog.rom1v.com/wp-content/uploads/2009/07/latex-properties.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/07/latex-properties-300x238.png" alt="latex-properties" title="latex-properties" width="300" height="238" class="aligncenter size-medium wp-image-710" /></a></p>
<h3>Marges</h3>
<p>Les marges par défaut des documents générés sont énormes. Les étudiants en sont très contents quand ils doivent écrire un rapport de stage de 40 pages dont ils viennent difficilement à bout, mais dans beaucoup d&#8217;autres cas, c&#8217;est une perte de place. Même s&#8217;<a href="http://fr.wikibooks.org/wiki/Programmation_LaTeX/Mise_en_page#Modification_des_marges">il y a une raison à cela</a>, on peut vouloir les diminuer.</p>
<p>Le package <strong>geometry</strong> rend cette opération très simple&nbsp;:</p>
<pre>\usepackage[top=1.5cm,bottom=1.5cm,left=1.5cm,right=1.5cm]{geometry}</pre>
<h3>Quelques réglages PDF</h3>
<p>Il est possible de définir la version de PDF à utiliser <em>(j&#8217;en ai eu besoin par exemple pour intégrer correctement des images png transparentes, qui ne fonctionnait pas avec PDF inférieur à 1.6)</em> et le niveau de compression, permettant de gagner quelques kilo-octets sur le fichier final.</p>
<pre>\pdfminorversion 7
\pdfobjcompresslevel 3</pre>
<h3>Conclusion</h3>
<p>Voici donc un modèle de document prêt à être compilé&nbsp;:</p>
<pre>\pdfminorversion 7
\pdfobjcompresslevel 3

\documentclass[a4paper]{article}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[francais]{babel}
\usepackage[bookmarks=false,colorlinks,linkcolor=blue]{hyperref}
\usepackage[top=1.5cm,bottom=1.5cm,left=1.5cm,right=1.5cm]{geometry}

\hypersetup{
  pdftitle={Démo LaTeX},
  pdfsubject={Modèle de document LaTeX},
  pdfkeywords={LaTeX, modèle},
  pdfauthor={Romain Vimont (®om)}
}

\begin{document}

\section{Première section}

\subsection{Une sous-section}

Du texte\dots

\subsection{Une autre sous-section}

\section{Une autre section}

\end{document}</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2009/07/bien-debuter-en-latex-sous-ubuntu/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
		<item>
		<title>Aperçus des fichiers OpenOffice.org dans nautilus</title>
		<link>http://blog.rom1v.com/2009/06/apercus-des-fichiers-openoffice-org-dans-nautilus/</link>
		<comments>http://blog.rom1v.com/2009/06/apercus-des-fichiers-openoffice-org-dans-nautilus/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 20:27:50 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[open-office]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=629</guid>
		<description><![CDATA[Par défaut, Ubuntu ne gère pas les aperçus des fichiers ODF (format utilisé par OpenOffice.org), contrairement aux fichiers images, aux fichiers PDF, etc. On se retrouve alors avec une simple icône&#160;: C&#8217;est quand même plus pratique d&#8217;obtenir un aperçu du document comme ceci&#160;: EDIT: en fait c&#8217;est beaucoup plus simple que prévu. Il suffit d&#8217;installer [...]]]></description>
			<content:encoded><![CDATA[<p>Par défaut, Ubuntu ne gère pas les aperçus des fichiers ODF (format utilisé par <strong>OpenOffice.org</strong>), contrairement aux fichiers images, aux fichiers PDF, etc. On se retrouve alors avec une simple icône&nbsp;:<br />
<a href="http://blog.rom1v.com/wp-content/uploads/2009/06/oooicon.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/06/oooicon.png" alt="oooicon" title="oooicon" width="62" height="72" class="aligncenter size-full wp-image-630" /></a></p>
<p>C&#8217;est quand même plus pratique d&#8217;obtenir un aperçu du document comme ceci&nbsp;:<br />
<a href="http://blog.rom1v.com/wp-content/uploads/2009/06/ooothumb.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/06/ooothumb.png" alt="ooothumb" title="ooothumb" width="80" height="127" class="aligncenter size-full wp-image-631" /></a></p>
<p><em>EDIT: en fait c&#8217;est beaucoup plus simple que prévu.</em></p>
<p>Il suffit d&#8217;installer les paquets <a href="apt://libgsf-bin,imagemagick">libgsf-bin et imagemagick</a>&nbsp;:</p>
<pre>sudo apt-get install libgsf-bin imagemagick</pre>
<p>et de redémarrer la session.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2009/06/apercus-des-fichiers-openoffice-org-dans-nautilus/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>Gestionnaire de presse-papiers : indispensable sous Gnome !</title>
		<link>http://blog.rom1v.com/2009/06/gestionnaire-de-presse-papiers-indispensable-sous-gnome/</link>
		<comments>http://blog.rom1v.com/2009/06/gestionnaire-de-presse-papiers-indispensable-sous-gnome/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 22:43:30 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=577</guid>
		<description><![CDATA[La gestion du presse-papiers de Gnome par défaut est assez rudimentaire. Faites le test&#160;: ouvrez firefox&#160;; copiez un bout de texte sur une page internet ou l&#8217;url de la barre d&#8217;adresse (sélectionnez puis Ctrl+C)&#160;; fermez firefox (toutes les fenêtres)&#160;; ouvrez un éditeur de texte (gedit par exemple)&#160;; collez-y le contenu que vous avez copié (Ctrl+V)&#160;; [...]]]></description>
			<content:encoded><![CDATA[<p>La gestion du <a href="http://fr.wikipedia.org/wiki/Presse-papiers">presse-papiers</a> de <em>Gnome</em> par défaut est assez rudimentaire.</p>
<p>Faites le test&nbsp;:</p>
<ul>
<li>ouvrez <strong>firefox</strong>&nbsp;;</li>
<li>copiez un bout de texte sur une page internet ou l&#8217;url de la barre d&#8217;adresse (sélectionnez puis Ctrl+C)&nbsp;;</li>
<li>fermez <strong>firefox</strong> (toutes les fenêtres)&nbsp;;</li>
<li>ouvrez un éditeur de texte (<strong>gedit</strong> par exemple)&nbsp;;</li>
<li>collez-y le contenu que vous avez copié (Ctrl+V)&nbsp;;</li>
<li><strong> <img src='http://blog.rom1v.com/wp-includes/images/smilies/icon_confused.gif' alt=':-?' class='wp-smiley' /> </strong></li>
</ul>
<p>Eh oui, le contenu du presse-papiers est perdu en même temps que la fermeture du programme d&#8217;où il provient…</p>
<p>Pour éviter cela, il faut un <em>Gestionnaire de presse-papiers</em>. <em>KDE</em> en a un par défaut&nbsp;: <strong>klipper</strong>.</p>
<p>Sous <em>Gnome</em>, il faut en installer un. Il en existe plusieurs, mais personnellement je vous conseille <a href="apt://parcellite">parcellite</a>. Il suffit de l&#8217;installer, il se lancera tout seul à chaque démarrage. Il ajoute une icône dans le systray, à partir de laquelle il est possible de le configurer, mais le principal, c&#8217;est qu&#8217;il permette de ne pas perdre le contenu copié… Il mémorise aussi les <em>n</em> derniers contenus (configurable). Petit inconvénient, il n&#8217;est pas en français, mais de toute façon une fois lancé, on n&#8217;y touche plus.</p>
<p><a href="http://blog.rom1v.com/wp-content/uploads/2009/06/parcellite.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/06/parcellite-300x145.png" alt="parcellite" title="parcellite" width="300" height="145" class="aligncenter size-medium wp-image-579" /></a></p>
<p>Sinon, il existe également <a href="apt://glipper">glipper</a> sous la forme d&#8217;un applet à ajouter au tableau de bord, mais le problème est qu&#8217;il plante à quasiment chaque démarrage du système (même si une fois lancé il fonctionne bien).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2009/06/gestionnaire-de-presse-papiers-indispensable-sous-gnome/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Configurer les applis KDE sous Gnome</title>
		<link>http://blog.rom1v.com/2009/06/configurer-les-applis-kde-sous-gnome/</link>
		<comments>http://blog.rom1v.com/2009/06/configurer-les-applis-kde-sous-gnome/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 22:12:32 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[kde]]></category>
		<category><![CDATA[theme]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=541</guid>
		<description><![CDATA[Même en utilisant Gnome, il peut arriver de vouloir utiliser des applications KDE (QT), telles que amarok, digikam, kile ou d&#8217;autres… Et là, c&#8217;est le drame&#160;: c&#8217;est en anglais&#160;; les actions sont effectuées par défaut sur simple clic&#160;; les polices de caractères ne sont pas à la même taille&#160;; le thème ne s&#8217;intègre pas du [...]]]></description>
			<content:encoded><![CDATA[<p>Même en utilisant <em>Gnome</em>, il peut arriver de vouloir utiliser des applications <em>KDE</em> (QT), telles que <strong>amarok</strong>, <strong>digikam</strong>, <strong>kile</strong> ou d&#8217;autres… Et là, c&#8217;est le drame&nbsp;:</p>
<ul>
<li>c&#8217;est en anglais&nbsp;;</li>
<li>les actions sont effectuées par défaut sur simple clic&nbsp;;</li>
<li>les polices de caractères ne sont pas à la même taille&nbsp;;</li>
<li>le thème ne s&#8217;intègre pas du tout dans l&#8217;environnement <em>Gnome</em>…</li>
</ul>
<h2>Applis KDE en Français</h2>
<p>Pour le premier problème, c&#8217;est vite réglé, il suffit d&#8217;installer le paquet <a href="apt://kde-i18n-fr">kde-i18n-fr</a>&nbsp;:</p>
<pre>sudo apt-get install kde-i18n-fr</pre>
<p><em><strong>EDIT:</strong> Sous Ubuntu Lucid Lynx (10.04), le paquet s&#8217;appelle maintenant <a href="apt://kde-l10n-fr">kde-l10n-fr</a>&nbsp;:</em></p>
<pre>sudo apt-get install kde-l10n-fr</pre>
<h2>SystemSettings</h2>
<p>Pour le reste, si on ne veut pas éditer des fichiers de configuration à la main, il faut la fenêtre de configuration de <em>KDE</em>&nbsp;: <a href="apt://systemsettings">systemsettings</a>. Mais si on n&#8217;installe que ce paquet, la fenêtre de configuration est presque vide&nbsp;; pour pouvoir tout configurer, il faut également le paquet <a href="apt://kdebase-workspace-bin">kdebase-workspace-bin</a> (et ses dépendances)… et ça quand on ne le sait pas, on galère&nbsp;!</p>
<pre>sudo apt-get install systemsettings kdebase-workspace-bin</pre>
<p>Une fois installé, il suffit de lancer <code>systemsettings</code> (Applications → Outils Système → System Settings).<br />
<em>Quelques icônes n&#8217;apparaissent pas (elles sont remplacées par l&#8217;icône par défaut), ça n&#8217;est pas bien grave.</em></p>
<p><em><strong>EDIT:</strong> Attention, ceci risque de modifier le rendu des polices de caractères dans certaines applications (notamment Firefox), à cause de certaines configurations par défaut de KDE. Pour résoudre ce problème, il faut supprimer (ou renommer) le fichier <code>~/.fonts.conf</code>&nbsp;:</em></p>
<pre>mv ~/.fonts.conf{,.old}</pre>
<h3>Apparence</h3>
<p><a href="http://blog.rom1v.com/wp-content/uploads/2009/06/systemsettings-main.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/06/systemsettings-main.png" alt="systemsettings-main" title="systemsettings-main" width="213" height="131" class="aligncenter size-full wp-image-552" /></a><br />
Dans la configuration de l&#8217;apparence (première icône), il est possible de modifier le style (choisir <strong>GTK+</strong> au lieu de <strong>Oxygen</strong> pour une meilleure intégration dans <em>Gnome</em>), le thème d&#8217;icônes (par exemple <strong>Human</strong>) et les polices de caractères <em>(même si personnellement, je n&#8217;arrive pas à avoir le même rendu que les polices de </em><em>Gnome</em>, au moins je peux les mettre à la même taille).</p>
<p><a href="http://blog.rom1v.com/wp-content/uploads/2009/06/systemsettings-appearance.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/06/systemsettings-appearance-300x176.png" alt="systemsettings-appearance" title="systemsettings-appearance" width="300" height="176" class="aligncenter size-medium wp-image-555" /></a></p>
<h3>Comportement de la souris</h3>
<p>Dans le menu principal de <strong>systemsettings</strong>, vers le bas se trouve le bouton <em>Clavier &#038; Souris</em>&nbsp;: c&#8217;est là qu&#8217;il est possible de configurer le comportement de la souris, en particulier effectuer les actions sur double clic plutôt que sur simple clic&nbsp;:<br />
<a href="http://blog.rom1v.com/wp-content/uploads/2009/06/systemsettings-mouse.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/06/systemsettings-mouse-300x75.png" alt="systemsettings-mouse" title="systemsettings-mouse" width="300" height="75" class="aligncenter size-medium wp-image-560" /></a></p>
<h2>Résultat</h2>
<p>Et voilà le résultat pour la fenêtre de <strong>dolphin</strong> (le navigateur de fichiers de <em>KDE4</em>)&nbsp;:<br />
<a href="http://blog.rom1v.com/wp-content/uploads/2009/06/dolphin-gnome.png"><img src="http://blog.rom1v.com/wp-content/uploads/2009/06/dolphin-gnome-300x183.png" alt="dolphin-gnome" title="dolphin-gnome" width="300" height="183" class="aligncenter size-medium wp-image-562" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2009/06/configurer-les-applis-kde-sous-gnome/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
		<item>
		<title>Ex Falso : taggeur de fichiers audio</title>
		<link>http://blog.rom1v.com/2009/03/exfalso-taggeur-de-fichiers-audio/</link>
		<comments>http://blog.rom1v.com/2009/03/exfalso-taggeur-de-fichiers-audio/#comments</comments>
		<pubDate>Sat, 07 Mar 2009 11:22:08 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[rhythmbox]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=404</guid>
		<description><![CDATA[Je viens de découvrir un petit utilitaire pour tagger les fichiers audio, présent dans les dépôts officiels d&#8217;Ubuntu : exfalso. Il est très simple d&#8217;utilisation et permet l&#8217;édition manuelle des tags (par association clé/valeur) : Très pratique lorsqu&#8217;on a des fichiers d&#8217;un album multi-cd, où le numéro de CD est inscrit dans disc au lieu [...]]]></description>
			<content:encoded><![CDATA[<p>Je viens de découvrir un petit utilitaire pour tagger les fichiers audio, présent dans les dépôts officiels d&#8217;<strong>Ubuntu</strong> : <a href="apt://exfalso">exfalso</a>.</p>
<p>Il est très simple d&#8217;utilisation et permet l&#8217;édition manuelle des tags (par association clé/valeur) :<br />
<a href="http://blog.rom1v.com/wp-content/uploads/2009/03/exfalso.png"><img class="aligncenter size-medium wp-image-405" title="exfalso" src="http://blog.rom1v.com/wp-content/uploads/2009/03/exfalso-300x191.png" alt="exfalso" width="300" height="191" /></a></p>
<p>Très pratique lorsqu&#8217;on a des fichiers d&#8217;un album multi-cd, où le numéro de CD est inscrit dans <em>disc</em> au lieu de <em>discnumber</em> (ce qui mélange tout dans les lecteurs audio tels que <strong>rhythmbox</strong>), et pour maîtriser les tags qui sont inscrits (pas comme certains logiciels tels que <strong>soundjuicer</strong> ou même l&#8217;édition des informations des fichiers dans <strong>rhythmbox</strong> qui inscrivent chacun leur lot de tags inutiles, en particulier ceux concernant <em>musicbrainz</em> même lorsque qu&#8217;aucun <em>id</em> n&#8217;est renseigné).</p>
<p>Si vous avez des tags à modifier, je vous le conseille.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2009/03/exfalso-taggeur-de-fichiers-audio/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Taper des caractères spéciaux sous GNU/Linux</title>
		<link>http://blog.rom1v.com/2009/02/taper-des-caracteres-speciaux-sous-gnulinux/</link>
		<comments>http://blog.rom1v.com/2009/02/taper-des-caracteres-speciaux-sous-gnulinux/#comments</comments>
		<pubDate>Sun, 01 Feb 2009 10:21:54 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[unicode]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/?p=275</guid>
		<description><![CDATA[Ceux qui ont déjà utilisé Windows savent peut-être qu&#8217;il est possible d&#8217;entrer des caractères en appuyant sur la touche Alt suivi du code ASCII en décimal. Par exemple : É : Alt+144 A : Alt+65 ® : Alt+169 Note : Le code ASCII est utilisé pour les nombres inférieurs à 128. Pour les autres, je [...]]]></description>
			<content:encoded><![CDATA[<p>Ceux qui ont déjà utilisé <em>Windows</em> savent peut-être qu&#8217;il est possible d&#8217;entrer des caractères en appuyant sur la touche <em>Alt</em> suivi du code ASCII en décimal. Par exemple :</p>
<ul>
<li><strong>É</strong> : <em>Alt+144</em></li>
<li><strong>A</strong> : <em>Alt+65</em></li>
<li><strong>®</strong> : <em>Alt+169</em></li>
</ul>
<p><em><strong>Note :</strong> Le code ASCII est utilisé pour les nombres inférieurs à 128. Pour les autres, je ne sais pas quel codage est utilisé, d&#8217;autant que rajouter un 0 devant le nombre change le code (Alt+169 c&#8217;est ® alors que Alt+0169 c&#8217;est ©, et ® peut s&#8217;écrire aussi Alt+0174). Si quelqu&#8217;un a une explication…</em></p>
<p>Sous <em>Ubuntu</em>, on a peu de raison d&#8217;utiliser une telle méthode, car le layout <strong>France (Alternative)</strong>, par défaut sous <em>gnome</em>, permet d&#8217;utiliser bon nombre de caractères spéciaux, comme vous pouvez le voir sur ce schéma :<br />
<a href="http://blog.rom1v.com/wp-content/uploads/2009/02/french-alternative-layout.png"><img class="aligncenter size-medium wp-image-276" title="french-alternative-layout" src="http://blog.rom1v.com/wp-content/uploads/2009/02/french-alternative-layout-300x101.png" alt="french-alternative-layout" width="300" height="101" /></a></p>
<p>Il y a 4 caractères possibles par touche. Voici comment écrire les caractères possibles d&#8217;une touche, en fonction de leur position sur le schéma :</p>
<ul>
<li><strong>en bas à gauche :</strong> <em>touche</em> ;</li>
<li><strong>en haut à gauche :</strong> <em>Shift+touche</em> ;</li>
<li><strong>en bas à droite :</strong> <em>AltGr+touche</em> ;</li>
<li><strong>en haut à droite :</strong> <em>AltGr+Shift+touche</em>.</li>
</ul>
<p>Ainsi, pour écrire <strong>®</strong> (dans <strong>®om</strong> par exemple), il suffit de faire <em>AltGr+Shift+C</em>, tandis que <em>AltGr+C</em> donne <strong>©</strong>. De même, <em>AltGr+Shift+2</em> génère un <strong>É</strong>. Pour les espagnols, le <strong>ñ</strong> peut être obtenu en pressant <em>AltGr+^, n</em>, le <strong>¿</strong> et le <strong>¡</strong> respectivement grâce à <em>AltGr+?</em> et <em>AltGr+!</em>.</p>
<p><em><strong>Note :</strong> Pour les caractères majuscules se trouvant sur les touches numériques, il est également possible d&#8217;activer la touche <strong>CapsLock</strong> : avec <strong>CapsLock</strong> activé, la touche <strong>2</strong> génère un <strong>É</strong>.</em></p>
<p>Il est donc très simple de faire rapidement des « guillemets » ou des flèches (←↑↓→), d&#8217;écrire le mot « œuf » correctement, d&#8217;insérer un vrai signe de mutiplication (2×3) ou d&#8217;utiliser de vrais points de suspension…</p>
<p>Par ailleurs, certaines combinaisons de touches donnent naturellement des caractères spéciaux, par exemple <em>^</em> suivi d&#8217;un chiffre le met en exposant : <em>¹²³⁴⁵⁶⁷⁸⁹⁰</em>.</p>
<p>Il est possible également d&#8217;utiliser la <em>composition de caractères</em> :</p>
<ul>
<li><strong>ae</strong> → æ ;</li>
<li><strong>oe</strong> → œ ;</li>
<li><strong>&#8216;e</strong> → é ;</li>
<li><strong>~n</strong> → ñ…</li>
</ul>
<p>Pour cela, il faut définir une touche du clavier qui permettra d&#8217;activer la composition : <em>Système → Préférences → Clavier → Agencements → Autres options… → Position de la touche Compose</em> :<br />
<a href="http://blog.rom1v.com/wp-content/uploads/2009/02/layout-compose.png"><img class="aligncenter size-medium wp-image-297" title="layout-compose" src="http://blog.rom1v.com/wp-content/uploads/2009/02/layout-compose-300x231.png" alt="layout-compose" width="300" height="231" /></a><br />
Ensuite, il suffit de laisser appuyée cette touche pendant l&#8217;écriture des caractères à composer. Sur la capture, j&#8217;ai utilisé la touche <em>Menu</em>, qui se trouve à droite de <em>AltGr</em> ; quand je laisse enfoncée cette touche et que j&#8217;écris <em>ae</em>, le caractère <strong>æ</strong> est généré.</p>
<p>En dernier recours, il est aussi possible d&#8217;écrire un caractère directement à partir de son code <em>Unicode</em> en hexadécimal. Pour cela, il suffit de taper : <em>Ctrl+Shift+u+<strong>code</strong></em>.</p>
<p>Par exemple, le code hexadécimal de <strong>®</strong> est <strong>AE</strong> (voir <a href="http://fr.wikipedia.org/wiki/Table_des_caract%C3%A8res_Unicode_(0000-0FFF)">ici</a>). Ainsi, <em>Ctrl+Shift+uae</em> insère un <strong>®</strong>.</p>
<p>L&#8217;outil <code>gucharmap</code> (<em>Applications → Accessoires → Table des caractères</em>) donne, en bas de la fenêtre, le code <em>Unicode</em> d&#8217;un caractère sélectionné. Par exemple <strong>‰</strong> affiche <strong>U+2030</strong> : pour écrire ce caractère, on peut donc taper <em>Ctrl+Shift+u2030</em>.</p>
<p>Si on veut écrire que <strong>x∊ℝ</strong>, on fait : <em>x</em>, puis <em>Ctrl+Shift+u220a</em>, suivi de <em>Ctrl+Shift+u211d</em>.</p>
<p>Il ne reste plus qu&#8217;à apprendre la table <em>Unicode</em>, bon courage !</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2009/02/taper-des-caracteres-speciaux-sous-gnulinux/feed/</wfw:commentRss>
		<slash:comments>33</slash:comments>
		</item>
		<item>
		<title>Synergy : contrôlez plusieurs PC avec une seule souris et un seul clavier</title>
		<link>http://blog.rom1v.com/2008/11/synergy-controlez-plusieurs-pc-avec-une-seule-souris-et-un-seul-clavier/</link>
		<comments>http://blog.rom1v.com/2008/11/synergy-controlez-plusieurs-pc-avec-une-seule-souris-et-un-seul-clavier/#comments</comments>
		<pubDate>Tue, 25 Nov 2008 21:10:00 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[réseau]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[synergy]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/2008/11/synergy%c2%a0-controlez-plusieurs-pc-avec-une-seule-souris-et-un-seul-clavier/</guid>
		<description><![CDATA[Synergy est un outil permettant de contrôler plusieurs ordinateurs avec un seul clavier et une seule souris. De plus, il permet de partager le presse-papier : pratique pour copier-coller d&#8217;un ordinateur à l&#8217;autre ! Mais en plus, c&#8217;est super simple ! Il y a un serveur et n clients. C&#8217;est le serveur qui possède le clavier et [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Synergy</strong> est un outil permettant de contrôler plusieurs ordinateurs avec un seul clavier et une seule souris. De plus, il permet de partager le presse-papier : pratique pour copier-coller d&#8217;un ordinateur à l&#8217;autre ! Mais en plus, c&#8217;est super simple !</p>
<p>Il y a un <strong>serveur</strong> et <em>n</em> <strong>clients</strong>. C&#8217;est le serveur qui possède le clavier et la souris.</p>
<div style="text-align: center;"><img src="http://www.generation-linux.fr/public/nov08/puls_synergy.png" alt="synergy" /></div>
<p>Tout d&#8217;abord, sur chacun des postes, il faut installer le paquet <a href="apt://synergy">synergy</a>.</p>
<p>Ensuite, sur le serveur, il faut créer un fichier de configuration <code>~/.synergy.conf</code>, extrêmement simple :</p>
<pre>section: screens
   rom-laptop:
   rom-desktop:
end
section: links
   rom-desktop:
       left = rom-laptop
   rom-laptop:
       right = rom-desktop
end</pre>
<p>Ici, <em>rom-laptop</em> est mon portable (le serveur) et <em>rom-desktop</em> est mon fixe (le client). C&#8217;est le nom de la machine, que l&#8217;on peut connaître avec :</p>
<pre>echo $HOSTNAME</pre>
<p>La section <code>screen</code> définit la liste des machines, et la section <code>links</code> définit leur position relative.</p>
<p>Ensuite, côté serveur, on tape :</p>
<pre>synergys</pre>
<p>Et sur chaque client :</p>
<pre>synergyc ip_du_serveur</pre>
<p>Les clients peuvent être lancés avant le serveur, ils vont tenter de se reconnecter 1 seconde après, puis 3 secondes après, puis 5, puis 15, puis 30 et enfin toutes les minutes. Ils survivent à la déconnexion du serveur, et tentent de se reconnecter en suivant la même règle.</p>
<p>Pour arrêter la connexion, sur le serveur :</p>
<pre>killall synergys</pre>
<p>et sur les clients :</p>
<pre>killall synergyc</pre>
<p><span style="text-decoration: underline;"><strong>Pour aller plus loin :</strong></span></p>
<p><strong>Éviter le changement d&#8217;écran involontaire</strong><br />
Après quelques minutes d&#8217;utilisation, on se rend compte que lorsqu&#8217;on est sur le PC de gauche, et qu&#8217;on va à la droite de l&#8217;écran (pour déplacer la scrollbar de <em>Firefox</em> en plein écran par exemple), on se retrouve involontairement sur l&#8217;écran de droite, c&#8217;est très embêtant.<br />
Mais c&#8217;est très facile d&#8217;y remédier, il suffit d&#8217;ajouter l&#8217;option :</p>
<pre>section: options
   switchDoubleTap = 400
end</pre>
<p>Cela permet de ne changer d&#8217;écran qu&#8217;en cas de double-contact en moins de 400ms avec le bord de l&#8217;écran.</p>
<p><strong>Démarrer automatiquement</strong><br />
Sous <em>GNOME</em> (à adapter pour les autres environnements), il suffit de rajouter au fichier <code>~/.gnomerc</code> la commande du serveur ou du client selon le cas.<br />
Pour le serveur :</p>
<pre>echo 'synergys' &gt;&gt; ~/.gnomerc</pre>
<p>Pour le client :</p>
<pre>echo 'synergyc ip_du_serveur' &gt;&gt; ~/.gnomerc</pre>
<p><strong>Décaler les écrans</strong><br />
Deux écrans côte à côte ne sont pas forcément alignés et ils n&#8217;ont pas forcément la même hauteur.<br />
Par exemple l&#8217;écran de mon fixe est un 5:4 et il est un peu surélevé, celui de mon portable est un 16:10 et il est plus bas.<br />
Pourtant, quand je déplace la souris d&#8217;un écran à l&#8217;autre, je voudrais que la souris reste à la même hauteur. Aucun problème, on peut passer des arguments (start,end), exprimés en pourcentage de l&#8217;écran, entre 0 et 100 inclus :</p>
<pre>section: screens
    rom-laptop:
    rom-desktop:
end
section: links
    rom-desktop:
        left(35,100) = rom-laptop(0,85)
    rom-laptop:
        right(0,85) = rom-desktop(35,100)
end
section: options
    switchDoubleTap = 400
end</pre>
<p>Ici, la partie supérieure de mon portable ([0%;85%]) est en face de la partie basse de mon fixe ([35%;100%]).<br />
<em>Remarque :</em> la relation n&#8217;a pas besoin d&#8217;être symétrique, mais c&#8217;est plus logique qu&#8217;elle le soit <img src='http://blog.rom1v.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>Démarrer chacun des clients à distance</strong><br />
Si l&#8217;on ne veut pas démarrer <strong>synergy</strong> au démarrage, on souhaiterais pouvoir le faire rapidement sans passer sur chacun des PC pour exécuter une commande. Avec une connexion SSH correctement configurée (par clés de préférence), on peut automatiser le lancement de tous les clients :</p>
<pre>synergys
ssh rom-desktop synergyc rom-laptop
ssh un-autre-pc synergyc rom-laptop</pre>
<p>(<code>rom-laptop</code> est défini dans <code>/etc/hosts</code>)</p>
<p><strong>Sécuriser la connexion</strong><br />
<strong>Synergy</strong> ne crypte pas les communications, donc tout passe en clair sur le réseau (enfin, du moins pour ceux qui connaissent la clé WPA de votre réseau, si vous êtes en wifi).<br />
Pour crypter, il suffit de faire passer la connexion dans un tunnel SSH. Pour cela, sur chacun des clients :</p>
<pre>ssh rom-laptop -fCNL24800:localhost:24800 synergyc localhost</pre>
<p>Ce qui est embêtant, c&#8217;est qu&#8217;il faut décrypter sur chacun des postes la clé privée, et donc c&#8217;est problématique pour démarrer <strong>synergy</strong> au démarrage du système.</p>
<p>Un grand merci à <a href="http://www.generation-linux.fr/index.php?post/2008/11/19/%5BTest-1er-Billet%5D-Synergy-ou-comment-gagner-de-la-place-sur-votre-bureau">Génération Linux</a> qui m&#8217;a fait découvrir cet outil maintenant indispensable.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2008/11/synergy-controlez-plusieurs-pc-avec-une-seule-souris-et-un-seul-clavier/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>netcat : communication primaire en TCP</title>
		<link>http://blog.rom1v.com/2008/11/netcat-communication-primaire-en-tcp/</link>
		<comments>http://blog.rom1v.com/2008/11/netcat-communication-primaire-en-tcp/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 11:06:00 +0000</pubDate>
		<dc:creator>®om</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Outils]]></category>
		<category><![CDATA[planet-libre]]></category>
		<category><![CDATA[puf]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[netcat]]></category>
		<category><![CDATA[réseau]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.rom1v.com/2008/11/netcat%c2%a0-communication-primaire-en-tcp/</guid>
		<description><![CDATA[Comment envoyer un bout de texte d&#8217;un pc à l&#8217;autre? Ou même un fichier? Il y a plein de méthodes, mais parfois la plus rudimentaire fonctionne très bien : écrire directement en TCP ! Pour cela, sur un pc (192.168.0.1 par exemple), faites : nc -l -p 1234 -l veut dire listen (ça veut dire qu&#8217;on lance un [...]]]></description>
			<content:encoded><![CDATA[<p>Comment envoyer un bout de texte d&#8217;un pc à l&#8217;autre? Ou même un fichier?</p>
<p>Il y a plein de méthodes, mais parfois la plus rudimentaire fonctionne très bien : écrire directement en TCP !</p>
<p>Pour cela, sur un pc (<code>192.168.0.1</code> par exemple), faites :</p>
<pre>nc -l -p 1234</pre>
<p><code>-l</code> veut dire <code>listen</code> (ça veut dire qu&#8217;on lance un serveur)<br />
<code>-p 1234</code> précise le port, choisissez ce que vous voulez</p>
<p>Sur un autre pc :</p>
<pre>nc 192.168.0.1 1234</pre>
<p>Et ça y&#8217;est, vous avez un tuyau de communication bidirectionnel, pratique pour faire des copiers-collers d&#8217;un ordinateur à l&#8217;autre. Si vous ouvrez le port correspondant sur votre routeur, ça marche aussi sur internet, bien évidemment.</p>
<p>L&#8217;avantage c&#8217;est que <code>nc</code> (ou <code>netcat</code>) est installé par défaut.</p>
<p>On peut aussi transférer des fichiers :</p>
<pre>nc -l -p 1234 &gt; monfichier</pre>
<pre>cat unfichier | nc 192.168.0.1 1234</pre>
<p>(terminer par <code>Ctrl+C</code>)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.rom1v.com/2008/11/netcat-communication-primaire-en-tcp/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
