<?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>Blog de Gnux</title>
	<atom:link href="https://blog.developpez.com/gnux/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.developpez.com/gnux</link>
	<description>Trucs et astuces autour du logiciel libre</description>
	<lastBuildDate>Tue, 25 Jun 2013 10:04:27 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>Sauvegarder son Android phone the Unix way&#8230;</title>
		<link>https://blog.developpez.com/gnux/p12084/linux/sauvegarder-son-android-phone-the-unix-way</link>
		<comments>https://blog.developpez.com/gnux/p12084/linux/sauvegarder-son-android-phone-the-unix-way#comments</comments>
		<pubDate>Tue, 25 Jun 2013 10:00:30 +0000</pubDate>
		<dc:creator><![CDATA[Gnux]]></dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Android Backup Samsung Galaxy S3]]></category>

		<guid isPermaLink="false">http://blog.developpez.com/gnux/?p=175</guid>
		<description><![CDATA[Bien, je poursuis donc mon exploration d&#8217;Android et surtout ma préparation au &#171;&#160;grand saut&#160;&#187; qui est le changement de ROM. Avec ce type de passage il convient de prendre toutes ces précautions. Les choses ne se déroulent que rarement &#171;&#160;comme &#8230; <a href="https://blog.developpez.com/gnux/p12084/linux/sauvegarder-son-android-phone-the-unix-way">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Bien, je poursuis donc mon exploration d&rsquo;Android et surtout ma préparation au &laquo;&nbsp;grand saut&nbsp;&raquo; qui est le changement de ROM. Avec ce type de passage il convient de prendre toutes ces précautions. Les choses ne se déroulent que rarement &laquo;&nbsp;comme prévues&nbsp;&raquo;. </p>
<p>La sauvegarde des données du téléphone apparaît presque comme le plus facile: une app du type Helium vous permet facilement de sauvegarder des données pas essentielles mais parfois importantes (sms par exemple ou logs des appels). D&rsquo;autres, peut être plus importantes, peuvent faire l&rsquo;objet d&rsquo;une plus grande attention comme vos contacts. Deux solutions: une app comme Bump (si vous avez un iPad ou une tablette ou un autre téléphone) ou la sauvegarde via un clic gauche, puis &laquo;&nbsp;Import/Export&nbsp;&raquo; on choisit une formule (export sur SD ou SIM card etc&#8230;) et hop! Perso j&rsquo;ai fait le choix de les sauvegarder sur ma carte SD + d&rsquo;utiliser Bump. Deux sécurités valent mieux qu&rsquo;une.</p>
<p>Une fois ces données superficielles (mais néanmoins importantes) on peut se pencher plus avant sur la restauration du téléphone en lui-même. La ROM en clair. Si je foire malencontreusement un flashage, comment je peux retrouver ma rom originel? Ben je fais un NAND-backup sur une carte SD via ClockWorkMod. Chez moi cela donne:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">[root@hades 2013-06-18.14.13.06_backup]# ls<br />
boot.img&nbsp; &nbsp; &nbsp; data.ext4.tar.a &nbsp;recovery.img &nbsp; &nbsp; &nbsp; system.ext4.tar.b<br />
cache.ext4.tar&nbsp; &nbsp; data.ext4.tar.b &nbsp;recovery.log<br />
cache.ext4.tar.a &nbsp;data.ext4.tar.c &nbsp;system.ext4.tar<br />
data.ext4.tar &nbsp; &nbsp; nandroid.md5&nbsp; &nbsp; &nbsp;system.ext4.tar.a</div></div>
<p>Sont donc sauvegardées les partitions /boot, /data, /system, /cache et /recovery . Cependant nulle trace de la partition /EFS. En étant parano, si ça se passe mal /EFS peut être corrompu. Si /EFS est corrompu et que vous avez pas de sauvegardes c&rsquo;est le brick assuré. En effet /EFS contient toutes les données de connexion au réseau téléphonique, en particulier votre précieux International Mobile station Equipment Identity (aka IMEI). Si on en croit <a href="http://en.wikipedia.org/wiki/International_Mobile_Station_Equipment_Identity" target="_blank">Wikipedia</a>: &laquo;&nbsp;The IMEI number is used by a GSM network to identify valid devices&nbsp;&raquo;. Autant dire qu&rsquo;il ne faut pas le perdre sinon vous ne pouvez plus accéder au réseau téléphonique avec votre &#8230; téléphone. Un peu balôt quoi&#8230;<br />
J&rsquo;ai donc sauvegardé /EFS et ce de façon bien plus simple que les nombreux tutos à base d&rsquo;installations de *.exe en folie. En fait j&rsquo;ai juste fait ça, après avoir isolé ma partition EFS grâce à mount:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">shell@android:/ $ su <br />
root@android:/ # dd if=/dev/block/mmcblk0p3 of=/storage/extSdCard/efs.rfs <br />
40960+0 records in <br />
40960+0 records out <br />
20971520 bytes transferred in 4.489 secs (4671757 bytes/sec)</div></div>
<p>Cela m&rsquo;a crée un magnifique fichier *.rfs . Le RFS, comme son nom ne l&rsquo;indique pas, est un format de fichier propre à Samsung, le <a href="http://wiki.samygo.tv/index.php5/RFS_file_system_support_for_linux" target="_blank">Linux Robust File System</a> . Je voulais quand même m&rsquo;assurer que tout y était. J&rsquo;ai donc regagné mon bash favori et:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">[xxx@hades ~]$ adb pull /storage/extSdCard/efs.rfs SGS3/ <br />
5442 KB/s (20971520 bytes in 3.763s)</div></div>
<p>Puis ensuite:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">[root@hades ~]# mount -o loop SGS3/efs.rfs /mnt/rfs/<br />
[root@hades ~]# ls /mnt/rfs/<br />
00000000.authtokcont &nbsp;FactoryApp &nbsp; &nbsp; imei &nbsp; &nbsp; &nbsp; &nbsp; nv.log&nbsp; &nbsp; &nbsp; wv.keys<br />
bluetooth &nbsp; &nbsp; &nbsp; &nbsp; gyro_cal_data &nbsp;nv_data.bin &nbsp; &nbsp; &nbsp;redata.bin<br />
drm &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; h2k.dat &nbsp; &nbsp; &nbsp; &nbsp;nv_data.bin.md5 &nbsp;wifi</div></div>
<p>Bien, ça m&rsquo;a l&rsquo;air d&rsquo;être complet. Et si jamais je me rate, comment je vais faire pour la restaurer. Eh bien ma solution qui est non testée et que j&rsquo;espère ne JAMAIS devoir tester est la suivante:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># heimdall flash --EFS --efs.rfs</div></div>
<p>Pourvu que ça n&rsquo;arrive jamais, mais là j&rsquo;ai au moins le sentiment rassurer d&rsquo;avoir vraiment sauvegarder tout ce qui était vraiment nécessaire avant de me lancer.</p>
<p>Le prochain post concernera la ROM et ses déclinaisons. Ainsi que les raisons qui m&rsquo;ont poussé à choisir une custom rom plutôt qu&rsquo;une autre&#8230;</p>
<p><strong>EDIT</strong>: je ne l&rsquo;avais pas anticipé mais tous mes contacts et toutes mes applications ont été restaurés via mon compte Google qui était synchronisé avec mon téléphone!! Ca m&rsquo;a simplifié considérablement la vie. Je suis néanmoins content d&rsquo;avoir une sauvegarde en &laquo;&nbsp;dur&nbsp;&raquo; de l&rsquo;essentiel de mon téléphone. J&rsquo;ai d&rsquo;ailleurs refait un backup complet dès ma nouvelle ROM installée&#8230;</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comment j&#8217;ai &#171;&#160;rooté&#160;&#187; mon Samsung Galaxy S3 avec Heimdall&#8230;</title>
		<link>https://blog.developpez.com/gnux/p12050/linux/comment-jai-roote-mon-samsung-galaxy-s3-avec-heimdall</link>
		<comments>https://blog.developpez.com/gnux/p12050/linux/comment-jai-roote-mon-samsung-galaxy-s3-avec-heimdall#comments</comments>
		<pubDate>Sat, 15 Jun 2013 16:04:31 +0000</pubDate>
		<dc:creator><![CDATA[Gnux]]></dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Android root Samsung Galaxy S3]]></category>

		<guid isPermaLink="false">http://blog.developpez.com/gnux/?p=161</guid>
		<description><![CDATA[Ceci est un récit, d&#8217;une histoire vraie, la mienne (palpitant non?). Si jamais vous me copiez et que vous brickez votre téléphone, c&#8217;est pas ma faute. Désolé, il ne faudra vous en prendre qu&#8217;à vous même Voilà près de une &#8230; <a href="https://blog.developpez.com/gnux/p12050/linux/comment-jai-roote-mon-samsung-galaxy-s3-avec-heimdall">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Ceci est un récit, d&rsquo;une histoire vraie, la mienne (palpitant non?). Si jamais vous me copiez et que vous brickez votre téléphone, c&rsquo;est pas ma faute. Désolé, il ne faudra vous en prendre qu&rsquo;à vous même <img src="https://blog.developpez.com/gnux/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></p>
<p>Voilà près de une année que je possède ce téléphone. C&rsquo;est un très bon téléphone. Je l&rsquo;aime beaucoup. Je le préfère nettement au iPhone que je possédais auparavant. A un détail près: la durée de vie de la batterie. Franchement avec toutes ces apps qui tournent, sans que je sache bien lesquelles d&rsquo;ailleurs, je suis quasi obligé d&rsquo;éteindre mon portable tous les soirs si je ne veux pas me retrouver à court de batterie au petit matin!!! Je trouve ça scandaleux!!!</p>
<p>Etant (un chouilla) bidouilleur et un (gros) geek, j&rsquo;avais bien entendu connaissance des ROMs alternatives. Mais j&rsquo;avoue, je n&rsquo;avais pas creusé le sujet. En fait, ce qui m&rsquo;agacait c&rsquo;était de lire des forums où des manoeuvres toutes connes passaient pour des trucs de hackxxor. Mais là, trop c&rsquo;est trop. Entre la batterie, les updates à la con de AllShareCast et les applis que je veux pas qui tournent en tâche de fond; c&rsquo;est décidé je reprends le contrôle!!!</p>
<p>La première étape est de passer <strong>root</strong>. Pour toute personne un tant soit peu informé, root c&rsquo;est l&rsquo;administrateur Unix basique. Il s&rsquo;agit simplement d&rsquo;élever ses privilèges pour pouvoir supprimer des <del datetime="2013-06-15T15:08:49+00:00">merdes</del> applis non désirés qui bouffent de la batterie. Arrivé là, c&rsquo;est très simple: il faut flasher sa recovery pour installer un SU. Flasher est un bien grand mot pour indiquer que l&rsquo;on va copier une image à la place d&rsquo;une autre (en croisant les doigts pour que tout se passe bien!). La recovery est une partition à part sur le Samsung S3 (pas sur tous les téléphones de la série Samsung S, le S2 il paraît que c&rsquo;est pas le cas, mais qui utilise encore un S2 pff&#8230;^^). Ce qui est plutôt sympa: aucune perte de données à envisager!!!</p>
<p>Comme je travaille sous Linux, l&rsquo;outil de base est <a href="http://www.glassechidna.com.au/products/heimdall/">Heimdall</a>. On l&rsquo;utilise en download mode. C&rsquo;est le mode que l&rsquo;on utilise lorsque l&rsquo;on veut charger quelque chose sur son téléphone. Sur le S3, un simple VolDown + Power + bouton central (ou Home Button ou button pour les intimes ^^) et vous y êtes. L&rsquo;utilisation d&rsquo;après</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># heimdall help</div></div>
<p>est très simple:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># heimdall flash --partition_à_flasher image_à_flasher</div></div>
<p>C&rsquo;est vraiment pas compliqué. Ca va aller vite, me voilà rassuré!! Je me suis quand même assuré d&rsquo;avoir une partition recovery (on sait jamais, le diable est dans les détails!!). Là aussi c&rsquo;est assez simple, il suffit de demander à heimdall de m&rsquo;afficher la table des &#8230; partitions ou PIT (Partition Information Table)!!</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># heimdall print-pit<br />
<br />
--- Entry #9 --- <br />
Binary Type: 0 (AP) <br />
Device Type: 2 (MMC) <br />
Identifier: 6 <br />
Attributes: 5 (Read/Write) <br />
Update Attributes: 1 (FOTA) <br />
Partition Block Size/Offset: 98304 <br />
Partition Block Count: 16384 <br />
File Offset (Obsolete): 0 <br />
File Size (Obsolete): 0 <br />
Partition Name: RECOVERY <br />
Flash Filename: recovery.img <br />
FOTA Filename:</div></div>
<p>Bon, pas besoin de faire de sauvegarde. A priori on va prendre une image pour en écraser une autre à un endroit bien précis, qui n&rsquo;est pas un endroit sensible comme DATA ou SYSTEM ou EFS. C&rsquo;est pas aujourd&rsquo;hui que je vais bricker mon téléphone. On attendra le changement de ROM pour frissonner. Je note quand même au passage que j&rsquo;ai 15 entries. 15!!! Je n&rsquo;ai jamais eu autant de partition sur un de mes disques à usage perso!!</p>
<p>Bon, pas de quoi fouetter un chat. Allons-y: passage en download mode (VDown, Power, button) puis</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">[root@hades SGS3]# heimdall flash --RECOVERY recovery.img<br />
Heimdall v1.4.0<br />
<br />
Copyright (c) 2010-2013, Benjamin Dobell, Glass Echidna<br />
http://www.glassechidna.com.au/<br />
<br />
This software is provided free of charge. Copying and redistribution is<br />
encouraged.<br />
<br />
If you appreciate this software and you would like to support future<br />
development please consider donating:<br />
http://www.glassechidna.com.au/donate/<br />
<br />
Initialising connection...<br />
Detecting device...<br />
Claiming interface...<br />
Attempt failed. Detaching driver...<br />
Claiming interface again...<br />
Setting up interface...<br />
<br />
Initialising protocol...<br />
Protocol initialisation successful.<br />
<br />
Beginning session...<br />
<br />
Some devices may take up to 2 minutes to respond.<br />
Please be patient!<br />
<br />
Session begun.<br />
<br />
Downloading device's PIT file...<br />
PIT file download successful.<br />
<br />
Uploading RECOVERY<br />
100%<br />
RECOVERY upload successful<br />
<br />
Ending session...<br />
Releasing device interface...<br />
Re-attaching kernel driver...</div></div>
<p>Je n&rsquo;ai même pas eu le temps de frissonner que c&rsquo;est déjà fait. Notez que recovery doit être mis en majuscules: Unix est case-sensitive, c&rsquo;est sensible ces bêtes-là. J&rsquo;ai choisi d&rsquo;installer <a href="http://www.clockworkmod.com/">ClockWorkMod</a> . Y&rsquo;en a d&rsquo;autres. Mais celle-ci m&rsquo;avait l&rsquo;air attrayante au niveau richesse des fonctionnalités et design. Ca avait l&rsquo;air beau sur le prospectus ^^</p>
<p>D&rsquo;ailleurs, il serait peut-être temps d&rsquo;aller voir. Le téléphone redémarre comme un grand, tout seul, une fois le flashage effectué. Je décide donc d&rsquo;aller direct dans le recovery mode pour installer <a href="http://download.chainfire.eu/204">SuperSU</a> (je sais, c&rsquo;est un nom ridicule!). Et là, stupeur, je me retrouve face à &laquo;&nbsp;Android System Recovery&nbsp;&raquo;. Plutôt que face à &laquo;&nbsp;ClockWorkMod Recovery&nbsp;&raquo;. Késako??? Eh bien, après <del datetime="2013-06-15T15:08:49+00:00">un peu</del> beaucoup de recherches, j&rsquo;ai découvert que lors du reboot le système pouvait réinstaller lui-même tout seul comme un grand une &laquo;&nbsp;stock recovery&nbsp;&raquo; qui écrase votre audacieux et fort risqué flashage. La bonne commande est donc:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">[root@hades SGS3]# heimdall flash --RECOVERY recovery.img --no-reboot</div></div>
<p>et ensuite une fois la barre bleue complète, vous retirez le câble USB et la batterie pour éteindre le téléphone. Franchement c&rsquo;est le moment qui m&rsquo;a le plus fait flipper: retirer la batterie pour sortir du download mode. Ca fait débranchage sauvage, et sous Linux, c&rsquo;est pas bon, mais pas bon du tout. Mais là ça a marché: j&rsquo;ai ensuite rebooté directement dans le recovery mode (VolUP + Power + Button) et j&rsquo;ai pu installer tranquillement <strong>SuperSU</strong>. A noter que ClockWorkMod prévient à un moment qu&rsquo;il peut être écrasé lors du reboot, j&rsquo;aurai apprécié de le savoir avant&#8230; </p>
<p>Les prochaines étapes sont les suivantes: un NAND-backup, terme barbare qui signifie que je vais sauvegarder ma ROM (stock samsung) avant de passer à la deuxième étape: <a href="http://www.cyanogenmod.org/">CyanogenMod</a>. Parce que, là, c&rsquo;est un chouilla plus risqué et il faut posséder une sauvegarde pour restaurer le téléphone si ça va pas (ou si on veut plus de Cyanogen). Je vous raconterai certainement tout ça&#8230;</p>
<p>EDIT: lors de la première sortie de Clockworkmod, après l&rsquo;installation de SuperSU, il faut bien cliquer sur &laquo;&nbsp;Yes, prevent ROM recovery flash&nbsp;&raquo;, sinon votre ROM standard re-flashera une image stock recovery et il faudra recommencer toute la procédure.</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La question &#171;&#160;systemd&#160;&#187;&#8230;</title>
		<link>https://blog.developpez.com/gnux/p11445/linux/la-question-systemd</link>
		<comments>https://blog.developpez.com/gnux/p11445/linux/la-question-systemd#comments</comments>
		<pubDate>Sun, 21 Oct 2012 14:35:40 +0000</pubDate>
		<dc:creator><![CDATA[Gnux]]></dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Logiciels]]></category>
		<category><![CDATA[systemd]]></category>

		<guid isPermaLink="false">http://blog.developpez.com/gnux/?p=78</guid>
		<description><![CDATA[Ou &#171;&#160;comment Arch Linux est-elle devenue une distro Linux comme les autres?&#160;&#187; Systemd est un nouveau système d&#8217;amorçage pour les systèmes Linux. En fait au démarrage il existe un premier processus qui est l&#8217;ancêtre de tous les processus du système. &#8230; <a href="https://blog.developpez.com/gnux/p11445/linux/la-question-systemd">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Ou &laquo;&nbsp;comment <a href="http://www.archlinux.org/" target="_blank">Arch Linux</a> est-elle devenue une distro Linux comme les autres?&nbsp;&raquo;</p>
<p><a href="http://www.freedesktop.org/wiki/Software/systemd" title="Systemd website" target="_blank">Systemd</a> est un nouveau <a href="http://fr.wikipedia.org/wiki/Init" title="init wp" target="_blank">système d&rsquo;amorçage</a> pour les systèmes Linux. En fait au démarrage il existe un premier processus qui est l&rsquo;ancêtre de tous les processus du système. Le PID 1, init. Il est lancé par le noyau et c&rsquo;est lui qui est chargé de vous amener à bon port vers un système utilisable en lançant les processus utiles. Son importance est donc capitale.</p>
<p>Systemd est une tentative pour améliorer ce qui se faisait avant, c&rsquo;est-à-dire les SysVinit. Ou les initscripts sous Arch Linux. Je dois dire que j&rsquo;étais plutôt sceptique au début en particulier concernant les diverses contraintes techniques qui, au final, ne se justifiaient que pour une chose: une grande rapidité de boot, voire <a href="http://lwn.net/Articles/511193/" title="Explication vaseuse" target="_blank">faciliter la vie des développeurs upstream</a>. Moi je ne cherche pas vraiment la rapidité, je trouvai ça rapide d&rsquo;ailleurs avec initscripts, mais plutôt le contrôle pointilleux des daemons lancés. Ce principe très Unix qui veut que par défaut aucun service ne soit lancé, sauf ceux dont on a <strong>explicitement</strong> souhaité le lancement dans un fichier plain-text. Ce qui est très simple. Plus simple à mon sens que d&rsquo;utiliser chkconfig ou systemctl.</p>
<p>C&rsquo;est pour cela que j&rsquo;aimais tellement Arch Linux: cela m&rsquo;offrait les avantages de <a href="http://www.freebsd.org/fr/" target="_blank">Free BSD</a> (un rc.conf pour mes daemons + un système de paquets fiable et efficace) sans les inconvénients (temps de compilation pour obtenir via les ports des paquets &laquo;&nbsp;edge&nbsp;&raquo;). Sans compter que l&rsquo;approche <a href="http://en.wikipedia.org/wiki/Do_it_yourself" title="DiY" target="_blank">DiY</a> couplée à la <a href="https://wiki.archlinux.org/index.php/The_Arch_Way" target="_blank">philosophie KISS</a> qui n&rsquo;était pas sans me rappeler <a href="http://slackware.com/" title="Slackware" target="_blank">Slackware</a> me convenaient plutôt pas mal. Bref, j&rsquo;avais trouvé chaussure à mon pied, et je coulais depuis des <del datetime="2012-10-21T14:02:40+00:00">jours</del> années très heureuses.</p>
<p>Alors là voir débarquer ce logiciel monolithique sans ficher de configuration unique mais avec plein de fichiers &laquo;&nbsp;units&nbsp;&raquo; et des liens symboliques dans tous les sens. Voir les dépendances précoces comme dbus ou encore le rc.conf devenir &laquo;&nbsp;DEPRECATED&nbsp;&raquo;. Ca m&rsquo;a mis un coup, pour dire le moins. Notez que <a href="https://bbs.archlinux.org/viewtopic.php?id=147272" target="_blank">je suis pas le seul</a>&#8230;</p>
<p>Néanmoins avant de jeter l&rsquo;anathème, il faut tester. Se faire sa propre opinion. Je viens de faire un premier test d&rsquo;une &laquo;&nbsp;mixed installation&nbsp;&raquo; à la <a href="http://bit.ly/OTz5T5" target="_blank">Arch</a> et, franchement, la rapidité de boot est à première vue stupéfiante. Sur ma machine de bureau où beaucoup de daemons sont lancés en background, via @, dans mon rc.conf. A la maison, cela ne change quasiment rien quant au temps de boot, par contre, j&rsquo;ai retrouvé ce pour quoi je n&rsquo;utilisais plus les distros mainstream habituelles (Debian, Mandriva etc&#8230;). Ce qui m&rsquo;agaçait au plus haut point: des services qui sont démarrés alors que je ne l&rsquo;ai JAMAIS demandé et que je ne les utiliserai jamais. C&rsquo;est ainsi qu&rsquo;au premier boot de ma machine perso sous systemd j&rsquo;ai vu le daemon &laquo;&nbsp;colord&nbsp;&raquo; pour la détection des scanners qui s&rsquo;est lancé. Je n&rsquo;ai jamais eu de scanners sur cette machine et n&rsquo;en aurait jamais. Alors il faut faire une systemctl disable comme sous Debian je faisais un chkconfig stop &#8230; Il va me falloir _lire_ les logs pour _désactiver_ ce dont je n&rsquo;ai pas besoin. Plutôt que d&rsquo;éditer un fichier pour _préciser_ ce que _je veux_. Et ça je n&rsquo;aime pas, j&rsquo;aime qu&rsquo;on me demande ce que je veux directement, plutôt que de devoir perdre du temps à l&rsquo;obtenir&#8230;</p>
<p>Seulement voilà, le journal de systemd se veut totalement innovant comme le reste.</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># less system.journal <br />
&quot;system.journal&quot; may be a binary file. &nbsp;See it anyway?</div></div>
<p>Eh oui, les logs sont stockés par défaut au format binaire. Voilà le truc vachement pratique pour faire une p&rsquo;tit fgrep ni vu ni connu.</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># fgrep -i samsung system.journal <br />
Fichier binaire system.journal concordant</div></div>
<p>C&rsquo;est là que l&rsquo;on réalise toute la portée de cette <a href="http://en.wikipedia.org/wiki/Unix_philosophy#McIlroy:_A_Quarter_Century_of_Unix" title="Unix Philosophy" target="_blank">phrase</a>: &laquo;&nbsp;Write programs to handle text streams, because that is a universal interface.&nbsp;&raquo; Bref, pour cela il faut passer par journalctl:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># journalctl | grep -i samsung<br />
Oct 21 14:04:59 mnemosyne kernel: ata1.00: ATA-8: SAMSUNG HM160HC, LQ100-10...00<br />
Oct 21 14:05:02 mnemosyne systemd[1]: Found device SAMSUNG_HM160HC.<br />
Oct 21 14:05:02 mnemosyne systemd[1]: Found device SAMSUNG_HM160HC.<br />
Oct 21 14:05:02 mnemosyne systemd[1]: Found device SAMSUNG_HM160HC.</div></div>
<p>Bon c&rsquo;est pas si mal&#8230;Et il est même possible d&rsquo;utiliser une bidouille en plus pour retrouver syslog et les logs unix plain-text facilement greppable. Mais bon&#8230;</p>
<p>Mon avis est donc mitigé sur systemd, j&rsquo;avoue que je suis attaché aux vieux principes Unix comme le fait de tout fermer pour n&rsquo;ouvrir qu&rsquo;au besoin (au boot comme au firewall!), ou encore le fait d&rsquo;avoir principalement des fichiers plain-text tout à fait manipulables. Ceci dit, la rapidité de boot est visible, la transition de service/chkconfig est transparente et les units sont simples et bien construites. <strong>Systemd est un très bon logiciel, c&rsquo;est juste que ce n&rsquo;est pas la façon dont j&rsquo;aime concevoir mon boot.</strong> Mais je pense vraiment que ça vaut le coup de se pencher dessus et de faire des efforts pour apprendre à s&rsquo;en servir.<br />
C&rsquo;est son adoption par Arch Linux qui me fait noircir le tableau de systemd. Je suis TRES déçu de voir que cette distro&rsquo; a bradé son originalité et ce qui, pour moi, faisait tout son intérêt. Elle s&rsquo;est banalisée en revenant sur certains de ses principes fondateurs plus orienté vers BSD. Au final, aujourd&rsquo;hui, je peux tout aussi bien installer une Mandriva, je n&rsquo;aurai pas de rc.conf (qui a été vidé de sa substance sous Arch) et je n&rsquo;aurai pas besoin (encore!) d&rsquo;apprendre les commandes systemd, bien que cela me semble utile puisque toutes les distros l&rsquo;adoptent&#8230;<br />
Il y a de fortes chances que je teste <a href="http://crux.nu/" target="_blank">Crux</a> ou encore, carrément, <a href="http://linuxfr.org/news/netbsd-6-0" target="_blank">NetBSD</a>. Oui, peut-être est-il carrément temps pour moi de retourner sous BSD&#8230;Mieux vaut l&rsquo;original que la copie non?</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>RTFM et Android SDK</title>
		<link>https://blog.developpez.com/gnux/p11347/linux/rtfm-et-android-sdk</link>
		<comments>https://blog.developpez.com/gnux/p11347/linux/rtfm-et-android-sdk#comments</comments>
		<pubDate>Thu, 27 Sep 2012 12:42:21 +0000</pubDate>
		<dc:creator><![CDATA[Gnux]]></dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.developpez.com/gnux/?p=86</guid>
		<description><![CDATA[Etant un linuxien patenté, mon premier réflexe face une question relative à du matériel ou à du logiciel est assez simple: rtfm. Ce qui signifie: lire le put*** de manuel. Seulement voilà: la manuel n&#8217;était pas fourni avec mon téléphone. &#8230; <a href="https://blog.developpez.com/gnux/p11347/linux/rtfm-et-android-sdk">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Etant un linuxien patenté, mon premier réflexe face une question relative à du matériel ou à du logiciel est assez simple: rtfm. Ce qui signifie: lire le put*** de manuel. Seulement voilà: la manuel n&rsquo;était pas fourni avec mon téléphone. N&rsquo;ayant pas (encore!) d&rsquo;accès shell sur mon Samsnung Galaxy S3 (aka SGS3), je n&rsquo;ai pas pu faire un man quelque chose. Je doute de toute façon de pouvoir trouver, par exemple, une énumération des gestures par exemple.</p>
<p>J&rsquo;ai donc fini par trouver <a href="http://bit.ly/TAwlwZ" title="i9300 Man" target="_blank">un manuel</a>. Je cherchai quelque chose de beaucoup plus technique, en particulier au niveau logiciel. Un vrai détail de ce que sont les procédures de boot par exemple. Un manuel technique, je le cherche encore. Je finirai bien par trouver <img src="https://blog.developpez.com/gnux/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></p>
<p>Concernant le manuel de l&rsquo;utilisateur, il y a beaucoup de choses très intéressantes. Je me demande pourquoi je n&rsquo;avais pas cherché plutôt ce type de manuel pour l&rsquo;iPhone ou l&rsquo;iPad. Le chapitre &laquo;&nbsp;Getting Started&nbsp;&raquo; est plein de ces petits tips qu&rsquo;on découvre un peu au hasard si on ne lit pas le manuel dès le début. Comme <a href="http://bit.ly/TAxEfj" title="I9300" target="_blank">ceci</a> par exemple.</p>
<p>C&rsquo;est aussi le moment de lire les chapitres type &laquo;&nbsp;Camera&nbsp;&raquo; pour apprendre à (bien!) se servir de l&rsquo;appareil photo ou encore &laquo;&nbsp;Settings&nbsp;&raquo; qui permet de faire le tour de toutes les options. Pour savoir comment rapidement, par exemple, modifier le timeout de l&rsquo;écran avant qu&rsquo;il se mette en veille.</p>
<p>Bref même si je n&rsquo;ai pas trouvé les détails techniques que je cherchais, j&rsquo;ai tout de même après plein de choses fort utiles pour utiliser mon téléphone tel qu&rsquo;il est.</p>
<p>Mais je voudrais vraiment voir de plus près les entrailles de ce téléphone. Après tout, j&rsquo;ai choisi un Android _aussi_ pour pouvoir appréhender de façon plus complète et ouverte la bête que i0S qui est fermé comme une huître. L&rsquo;idéal m&rsquo;a semblé être d&rsquo;installer le <a href="http://developer.android.com/sdk/index.html" title="SDK" target="_blank">SDK</a>. Visiblement, d&rsquo;après un article page 49 de MISC <a href="http://bit.ly/S1QoDw" target="_blank">de ce mois ci</a>, c&rsquo;est un must-have pour faire du pentest d&rsquo;Android. Je ne cherche pas à pentester Android. Par contre j&rsquo;aimerai bien avoir une vue plus synthétique de la façon dont ça fonctionne en général et surtout sur mon Samsung en particulier. </p>
<p>J&rsquo;ai donc entrepris d&rsquo;installer le SDK, sous Arch Linux, c&rsquo;est <a href="https://wiki.archlinux.org/index.php/Android" title="Android Arch Linux" target="_blank">très simple</a> puisque tout le nécessaire se trouve dans <a href="https://wiki.archlinux.org/index.php/Arch_User_Repository" title="AUR" target="_blank">AUR</a>. Mon téléphone semble détecté:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># lsusb | grep Samsung<br />
Bus 001 Device 006: ID 04e8:6860 Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II], GT-I9300 Phone [Galaxy S III], GT-P7500 [Galaxy Tab 10.1]</div></div>
<p>Mais en fait non: adb devices ne me renvoie pas de périphérique. C&rsquo;est alors que j&rsquo;ai appris que l&rsquo;activation USB du périphérique était possible. En clair: on peut utiliser le téléphone par USB. Mais pas par défaut (cf premier post). Pour cela il suffit d&rsquo;aller dans &laquo;&nbsp;Paramètres =&gt; Options de développement ==&gt; débogage USB&nbsp;&raquo;. Un pop-up vous indique que votre périphérique va être monté comme un périphérique de stockage et que cela ne doit être utilisé qu&rsquo;à des fins de développement. En effet:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ adb devices<br />
List of devices attached <br />
4df1... device</div></div>
<p>Alors ADB c&rsquo;est quoi? Eh bien c&rsquo;est le Android Debug Bridge dont la <a href="http://developer.android.com/tools/help/adb.html" title="adb" target="_blank">page</a> nous dit:<br />
&laquo;&nbsp;Android Debug Bridge (adb) is a versatile command line tool that lets you communicate with an emulator instance or connected Android-powered device. It is a client-server program that includes three components (&#8230;)&nbsp;&raquo; ce qui signifie: &laquo;&nbsp;Android Debug Bridge est un utilitaire en ligne de commande polyvalent qui vous permet de communiquer avec une plateforme Android émulée ou un périphérique Android connecté. C&rsquo;est un programme client-serveur composé de 3 éléments (&#8230;)&nbsp;&raquo;</p>
<p>Bien, alors comment avoir un shell sur mon téléphone? Ce qui a quand même motivé cet article en premier lieu!! C&rsquo;est simple:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ adb shell<br />
shell@android:/ $</div></div>
<p>Bon, par contre, on gardera le pdf niveau manuel :</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">shell@android:/ $ man man<br />
/system/bin/sh: man: not found</div></div>
<p>Pour le reste c&rsquo;est du grand classique:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">shell@android:/ $ ls -l<br />
drwxr-xr-x root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 acct<br />
drwxrwx--- system &nbsp; cache &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2012-09-27 14:00 cache<br />
dr-x------ root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 config<br />
lrwxrwxrwx root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 d -&amp;gt; /sys/kernel/debug<br />
drwxrwx--x system &nbsp; system &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 data<br />
-rw-r--r-- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;116 1970-01-01 01:00 default.prop<br />
drwxr-xr-x root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 dev<br />
drwxrwx--x radio &nbsp; &nbsp;system &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-06-25 16:35 efs<br />
lrwxrwxrwx root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 etc -&amp;gt; /system/etc<br />
lrwxrwxrwx root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 factory -&amp;gt; /efs<br />
-rwxr-x--- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; 152288 1970-01-01 01:00 init<br />
-rwxr-x--- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; 3612 1970-01-01 01:00 init.bt.rc<br />
-rwxr-x--- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; 2344 1970-01-01 01:00 init.goldfish.rc<br />
-rwxr-x--- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp;40154 1970-01-01 01:00 init.rc<br />
-rwxr-x--- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; 2751 1970-01-01 01:00 init.smdk4x12.rc<br />
-rwxr-x--- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; 4359 1970-01-01 01:00 init.smdk4x12.usb.rc<br />
drwxr-xr-x root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1970-01-01 01:00 lib<br />
-rw-r--r-- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; 1619 1970-01-01 01:00 lpm.rc<br />
drwxrwxr-x root &nbsp; &nbsp; system &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 mnt<br />
drwxr-xr-x root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1970-01-01 01:00 preload<br />
dr-xr-xr-x root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1970-01-01 01:00 proc<br />
drwx------ root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-06-25 17:29 root<br />
drwxr-x--- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1970-01-01 01:00 sbin<br />
lrwxrwxrwx root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 sdcard -&amp;gt; /mnt/sdcard<br />
drwxr-xr-x root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 sys<br />
drwxr-xr-x root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 system<br />
-rw-r--r-- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;272 1970-01-01 01:00 ueventd.goldfish.rc<br />
-rw-r--r-- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; 3873 1970-01-01 01:00 ueventd.rc<br />
-rw-r--r-- root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; 1666 1970-01-01 01:00 ueventd.smdk4x12.rc<br />
lrwxrwxrwx root &nbsp; &nbsp; root &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2012-09-26 18:46 vendor -&amp;gt; /system/vendor</div></div>
<p>N&rsquo;étant pas (encore!) root, je n&rsquo;ai finalement pas le droit de faire grand chose&#8230;Et il y a énormément de commandes de base qui ne sont pas présentes: less, cut, groups, find etc&#8230; &laquo;&nbsp;Command not found&nbsp;&raquo;. C&rsquo;est sacrément frustrant d&rsquo;ailleurs&#8230;</p>
<p>Je sens que je vais bien m&rsquo;amuser avec ce téléphone, je sais pas pourquoi mais je sens que je vais vraiment bien m&rsquo;amuser&#8230;une fois root <img src="https://blog.developpez.com/gnux/wp-includes/images/smilies/icon_wink.gif" alt=";)" class="wp-smiley" /></p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A la découverte d&#8217;Airdroid euh&#8230;d&#8217;Android ^^</title>
		<link>https://blog.developpez.com/gnux/p11322/linux/a-la-decouverte-dairdroid-euh-dandroid</link>
		<comments>https://blog.developpez.com/gnux/p11322/linux/a-la-decouverte-dairdroid-euh-dandroid#comments</comments>
		<pubDate>Mon, 17 Sep 2012 18:20:32 +0000</pubDate>
		<dc:creator><![CDATA[Gnux]]></dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://blog.developpez.com/gnux/?p=41</guid>
		<description><![CDATA[Ah&#8230;Ca y&#8217;est, j&#8217;ai enfin reçu mon nouveau téléphone. Il s&#8217;agit d&#8217;un Samsung Galaxy S3,le Pebble Blue, si c&#8217;est pas poétique ça&#8230;J&#8217;ai décrit par ailleurs les raisons qui m&#8217;ont fait lâcher mon iPhone américain pour un Samsung coréen. En ouvrant la &#8230; <a href="https://blog.developpez.com/gnux/p11322/linux/a-la-decouverte-dairdroid-euh-dandroid">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Ah&#8230;Ca y&rsquo;est, j&rsquo;ai enfin reçu mon nouveau téléphone. Il s&rsquo;agit d&rsquo;un Samsung Galaxy S3,le Pebble Blue, si c&rsquo;est pas poétique ça&#8230;J&rsquo;ai décrit <a href="http://bit.ly/RYy9Or" title="post mobile Gnux" target="_blank">par ailleurs</a> les raisons qui m&rsquo;ont fait lâcher mon iPhone américain pour un Samsung coréen.<br />
En ouvrant la boîte, j&rsquo;avoue, j&rsquo;ai été un peu déçu par son aspect plastique. Ca fait un peu &laquo;&nbsp;plastok&nbsp;&raquo; comme dirait l&rsquo;autre. Pour le coup la petite bande de fer cerclant les iPhones me devient rassurante. J&rsquo;ai acheté une coque, mais contrairement à celle que j&rsquo;avais prise pour mon iPhone, je me suis centré sur l&rsquo;aspect &laquo;&nbsp;solide&nbsp;&raquo; plutôt que sur l&rsquo;aspect &laquo;&nbsp;esthétique&nbsp;&raquo;. On verra à l&rsquo;usage.</p>
<p>Une fois toute installée, première découverte de l&rsquo;interface Samsung. comment peut on encore faire &laquo;&nbsp;ça&nbsp;&raquo; dans le monde Linux. Mystère et boule de gomme..Ma prochaine mission sera de trouver un équivalent à E17 sur Android. Je veux changer de WM :'(<br />
C&rsquo;est, en effet, un peu mal léché (&laquo;&nbsp;cumbersome&nbsp;&raquo; est l&rsquo;adjectif qui me vient à l&rsquo;esprit) et nettement moins intuitif que le design iOS, de mon point de vue c&rsquo;est indéniable. Bizarrement les apps au bord carré ça me saute aux yeux par rapport à celles d&rsquo;Apple tout en rondeur. Comme quoi, le procès pour &laquo;&nbsp;bords ronds&nbsp;&raquo; infligé à Samsung par Apple ce n&rsquo;est pas que du pinaillage de brevet à 2 balles <img src="https://blog.developpez.com/gnux/wp-includes/images/smilies/icon_wink.gif" alt=";)" class="wp-smiley" /></p>
<p>Mais bon, après tout, il passera les 3/4 de son temps dans ma poche et, surtout, il a un grand écran avec une bonne définition. Enfin, contrairement à l&rsquo;iPhone, je vais pouvoir gérer ma musique _très important pour moi ça_ sans iTunes et avec un simple mount, comme pour une clé USB. Le bonheur sur terre quoi <img src="https://blog.developpez.com/gnux/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></p>
<p>J&rsquo;ai donc branché mon <del datetime="2012-09-17T16:45:46+00:00">bout de plastique</del> Samsung Galaxy S3 sur mon PC en USB. J&rsquo;ai ouvert Thunar et je m&rsquo;attendais tranquillou à cliquer sur le dossier qui va bien pour stocker la musique qui va bien. Et là, horreur, malheur, rien n&rsquo;apparaît dans Thunar. Pourtant il est bien branché non?<br />
Un coup de dmesg | tail plus tard, toujours pas de trace du téléphone. Késako? m&rsquo;interroge-je un brin désarçonné tout de même. Tout de façon, la commande précédente, c&rsquo;est un truc de newbie, tout le monde le sait hein&#8230;Normale qu&rsquo;elle voit rien&#8230;Commande de m***<br />
Un tail -20 sur /var/log/messages.log plus tard, je n&rsquo;ai que ça:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Sep 17 18:19:39 localhost mtp-probe: checking bus 1, device 7: &quot;/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5&quot;<br />
Sep 17 18:19:39 localhost mtp-probe: bus: 1, device: 7 was not an MTP device</div></div>
<p>WTF??? Alors je réfléchis: je me souviens vaguement que sur le Samsung à mon frère chéri que j&rsquo;aime (même s&rsquo;il m&rsquo;appelle jamais, ingrat ^^) il fallait cocher une option pour autoriser le pingouin à monter sur la nouvelle planche de surf en plastique de Samsung. Ceci dit ça n&rsquo;expliquerait pas que je ne vois rien dans les logs.<br />
Une petite recherche google plus tard, j&rsquo;ai appris quelle était la raison (scélérate!!) pour laquelle je ne pouvais pas tranquillou charger ma musique: Google a décidé que les dernières versions d&rsquo;Android ne passerait plus par USB mais par MTP. </p>
<p>Mais que fait Google? C&rsquo;est quoi ce <a href="http://en.wikipedia.org/wiki/Media_Transfer_Protocol" title="MTP" target="_blank">protocole</a>? Inventé par Microsoft, mais c&rsquo;est pas vrai. Je quitte Apple pour me retrouver avec un protocole Microsoft. Si ça, c&rsquo;est pas allé de Charybde en Scylla&#8230;</p>
<p>Bon positivons, Android c&rsquo;est Linux; Arch c&rsquo;est Linux. Ca devrait le faire <img src="https://blog.developpez.com/gnux/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /><br />
En effet:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># mtp-detect<br />
libmtp version: 1.1.4<br />
<br />
Listing raw device(s)<br />
Device 0 (VID=04e8 and PID=6860) is a Samsung GT P7310/P7510/N7000/I9070/I9100/I9300 Galaxy Tab 7.7/10.1/S2/S3/Nexus/Note/Y.<br />
&nbsp; &nbsp;Found 1 device(s):<br />
&nbsp; &nbsp;Samsung: GT P7310/P7510/N7000/I9070/I9100/I9300 Galaxy Tab 7.7/10.1/S2/S3/Nexus/Note/Y (04e8:6860) @ bus 1, dev 6<br />
Attempting to connect device(s)<br />
PTP_ERROR_IO: failed to open session, trying again after resetting USB interface<br />
LIBMTP libusb: Attempt to reset device<br />
LIBMTP PANIC: failed to open session on second attempt<br />
Unable to open raw device 0<br />
OK.</div></div>
<p>Là je me suis surpris à taper dans google &laquo;&nbsp;libmtp git&nbsp;&raquo;&#8230;Et les micro-secondes de moulinage m&rsquo;ont servi à réfléchir. J&rsquo;avais quitté mon iPhone pour ne plus avoir à bidouiller avec <a href="http://fuse.sourceforge.net/" title="Fuse" target="_blank">Fuse</a> ou <a href="http://www.libimobiledevice.org/" target="_blank">libmobiledevice</a> pour contourner iTunes et là, je recherche du code pour voir ce qui va pas. J&rsquo;hallucine ou quoi??? Et ma musique???</p>
<p>Réflexion faite je me suis dit qu&rsquo;il fallait m&rsquo;adapter de façon différente et je me suis souvenu d&rsquo;un lien vers une app prénommée <a href="http://airdroid.com/" target="_blank">Airdroid</a>. C&rsquo;est, ou plutôt ce serait, une app&rsquo; me permettant de charger ma musique en wifi direct depuis mon navigateur. Je me dis qui ne tente rien n&rsquo;a rien. Me voilà à l&rsquo;installer sur mon &laquo;&nbsp;pebble blue&nbsp;&raquo;, c&rsquo;est gratuit. Pour le coup c&rsquo;est vachement clair et intuitif. Newbie-compliant. En 5 minutes je me suis retrouvé devant <a href="http://www.flickr.com/photos/9483087@N04/7996817838/" title="airdroid loading zic" target="_blank">ça</a>.</p>
<p>Tout peut vraiment être géré via une interface qui n&rsquo;est pas sans rappeler Apple. Claire, concise, précise et avec laquelle on peut tout faire, et surtout ce qui m&rsquo;intéresse: charger la musique, gérer les contacts ou l&rsquo;agenda etc&#8230;</p>
<p>Tout ça pour dire qu&rsquo;à première vue le logo ne ment pas sur la marque: Android le robot froid et un peu encombré dans la démarche n&rsquo;a pas la rondeur avenante d&rsquo;une pomme qui roule&#8230;Cumbersome, on vous dit&#8230;</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Répéter une ligne dans les tableaux LibreOffice Writer</title>
		<link>https://blog.developpez.com/gnux/p11306/linux/tips-techniques/repeter-une-ligne-dans-les-tableaux-libreoffice-writer</link>
		<comments>https://blog.developpez.com/gnux/p11306/linux/tips-techniques/repeter-une-ligne-dans-les-tableaux-libreoffice-writer#comments</comments>
		<pubDate>Thu, 13 Sep 2012 15:57:04 +0000</pubDate>
		<dc:creator><![CDATA[Gnux]]></dc:creator>
				<category><![CDATA[Tips Techniques]]></category>
		<category><![CDATA[libreoffice writer astuce]]></category>

		<guid isPermaLink="false">http://blog.developpez.com/gnux/?p=39</guid>
		<description><![CDATA[Voilà une petite astuce toute simple qui pourra être utile. Imaginons que vous ayez besoin d&#8217;un certain nombre de tableaux avec la première ligne identique. Comme des feuilles d&#8217;inventaire par exemple. Il vous faut répéter cette première ligne sur tous &#8230; <a href="https://blog.developpez.com/gnux/p11306/linux/tips-techniques/repeter-une-ligne-dans-les-tableaux-libreoffice-writer">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Voilà une petite astuce toute simple qui pourra être utile. Imaginons que vous ayez besoin d&rsquo;un certain nombre de tableaux avec la première ligne identique. Comme des feuilles d&rsquo;inventaire par exemple. Il vous faut répéter cette première ligne sur tous les tableaux qui seront distribués aux agents affectés à l&rsquo;inventaire.</p>
<p>La manoeuvre classique dans Writer pour insérer un tableau consiste à aller dans le menu Tableau -&gt; insérer (ou Ctrl+F12)**. Vous insérez votre tableau d&rsquo;inventaire avec 4 ou 5 colonnes et, disons 2000 lignes. Ce qui fait 84 pages tout de même.</p>
<p>Et là, vous souhaitez que la première ligne de votre tableau se répète sur toutes les autres feuilles ce qui permettra d&rsquo;en imprimer un certain nombre à distribuer aux agents en charge de l&rsquo;inventaire. Ce qui facilite tout de même, de façon fort compréhensible, le travail&#8230;</p>
<p>Il y a pour cela dans Libre Office Writer une petite manip&rsquo; à effectuer: une fois votre première ligne correctement initialisée sur le premier tableau, vous allez dans le menu Tableau et vous cochez la ligne &laquo;&nbsp;Répéter les lignes de titre&nbsp;&raquo;. Et, magie, votre première ligne de tableau se retrouve sur tout les autres tableaux suivants, formatage compris!!</p>
<p>Cela évite de faire 83 Ctrl-C/Ctrl-V &#8230;</p>
<p><strong>**A noter</strong>: il est possible de faire cela dès l&rsquo;insertion du tableau: il suffit de cocher l&rsquo;option &laquo;&nbsp;titre&nbsp;&raquo; avec &laquo;&nbsp;Répéter sur chaque page&nbsp;&raquo; bien coché et le choix de la ligne bien précise. </p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Planning absences/congés</title>
		<link>https://blog.developpez.com/gnux/p10654/linux/planning_absences_conges</link>
		<comments>https://blog.developpez.com/gnux/p10654/linux/planning_absences_conges#comments</comments>
		<pubDate>Tue, 17 Jan 2012 14:38:04 +0000</pubDate>
		<dc:creator><![CDATA[Gnux]]></dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Bonjour à tous, Cela faisait vraiment longtemps que je n&#8217;avais pas écrit sur ce blog. Je recherche un logiciel de gestion des absences et des congés. Je recherche quelque chose de bien précis que je n&#8217;arrive pas à trouver. En &#8230; <a href="https://blog.developpez.com/gnux/p10654/linux/planning_absences_conges">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Bonjour à tous,<br />
Cela faisait vraiment longtemps que je n&rsquo;avais pas écrit sur ce blog. Je recherche un logiciel de gestion des absences et des congés. Je recherche quelque chose de bien précis que je n&rsquo;arrive pas à trouver.</p>
<p>En effet, pour le moment, j&rsquo;ai testé deux logiciels: http://planningabsences.free.fr/ et http://www.ced.univ-montp2.fr/php_conges/ . Les deux me semblent tout à fait utilisables même si j&rsquo;ai une grosse préférence pour le premier. </p>
<p>Cependant ni l&rsquo;un ni l&rsquo;autre ne propose une feature qui me semble indispensable dans mon cas. Je souhaite en effet que les agents que j&rsquo;ai sous ma responsabilité puissent, via une interface web, déposer par eux-mêmes leurs desiderata de congés. Qui sont ensuite ou non validées par mes soins. Etant dans un service composé de plusieurs équipes, il me faut également une gestion fine des droits de chacun (une gestion à la unix, ce serait parfait <img src="https://blog.developpez.com/gnux/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /> )</p>
<p>Cette interactivité est vraiment importante pour moi et je ne la trouve dans aucun des deux logiciels. J&rsquo;en suis à me dire qu&rsquo;il va me falloir apprendre PHP et me dépatouiller pour coder ça moi-même. MAIS avant ça, je tenais à faire un petit post pour savoir si certains ont déjà été confrontés à ce type de problème et surtout comment ils ont résolu tout ça <img src="https://blog.developpez.com/gnux/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Changer le thème de GTK+</title>
		<link>https://blog.developpez.com/gnux/p6320/linux/changer_le_theme_de_gtk</link>
		<comments>https://blog.developpez.com/gnux/p6320/linux/changer_le_theme_de_gtk#comments</comments>
		<pubDate>Thu, 04 Sep 2008 08:35:09 +0000</pubDate>
		<dc:creator><![CDATA[Gnux]]></dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tips Techniques]]></category>
		<category><![CDATA[Window manager]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Bonjour Peut-être vous aussi avez-vous déjà été confrontés à ce problème: vous utilisez Thunar ou une application basée sur GTK+, mais en passant de XFCE à FVWM (dans mon cas, mais je suppose que cela s&#8217;applique pour d&#8217;autres WM), voilà &#8230; <a href="https://blog.developpez.com/gnux/p6320/linux/changer_le_theme_de_gtk">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Bonjour<br />
Peut-être vous aussi avez-vous déjà été confrontés à ce problème: vous utilisez Thunar ou une application basée sur GTK+, mais en passant de XFCE à FVWM (dans mon cas, mais je suppose que cela s&rsquo;applique pour d&rsquo;autres WM), voilà que les icônes sont devenues moches.</p>
<p>Comment faire pour retrouver rapidement une situation normale? C&rsquo;est assez simple: il suffit de modifier le fichier <strong>.gtkrc-2.0</strong> pour préciser le nom du thème utilisé entre autres.<br />
Voilà ce que cela donne chez moi (après création):</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">include &nbsp;&quot;/usr/share/themes/OxygenRefit2/gtk-2.0/gtkrc&quot; <br />
gtk-font-name = &quot;Another_.ttf&quot; <br />
gtk-theme-name = &quot;OxygenRefit2&quot; <br />
gtk-icon-theme-name = &quot;OxygenRefit2&quot;</div></div>
<p>Notez que je n&rsquo;ai pas rajouté de gtk-icon-name: celles du thème me plaisent en fait!<br />
Le Thème se trouve dans /usr/share/themes ou ~/.themes<br />
Les icônes sont dans /usr/share/icons ou ~/.icons<br />
Les polices dans /usr/share/fonts ou ~/.fonts.</p>
<p>Il existe, enfin, des outils qui peuvent faire cela pour vous. Voici par exemple ce que cela donne sous Arch Linux:<br />
En anglais: http://wiki.archlinux.org/index.php/Howto_make_GTK_apps_look_nice .<br />
En français: http://wiki.archlinux.fr/howto:environnements_graphiques:gtk_look</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MPD en 5 minutes</title>
		<link>https://blog.developpez.com/gnux/p4099/linux/logiciels/mpd_en_5_minutes</link>
		<comments>https://blog.developpez.com/gnux/p4099/linux/logiciels/mpd_en_5_minutes#comments</comments>
		<pubDate>Sat, 18 Aug 2007 16:23:29 +0000</pubDate>
		<dc:creator><![CDATA[Gnux]]></dc:creator>
				<category><![CDATA[Logiciels]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Hello! Voilà qu&#8217;aujourd&#8217;hui j&#8217;ai décidé de perfectionner mon utilisation d&#8217;Audacious sous linux: j&#8217;ai décidé de l&#8217;utiliser pour jouer tout un dossier dans lequel j&#8217;ai rippé _l&#8217;excellent_ Mystery boy de Jeff Buckley. Mais pas moyen d&#8217;ajouter le chemin de mon répertoire &#8230; <a href="https://blog.developpez.com/gnux/p4099/linux/logiciels/mpd_en_5_minutes">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Hello!<br />
Voilà qu&rsquo;aujourd&rsquo;hui j&rsquo;ai décidé de perfectionner mon utilisation d&rsquo;Audacious sous linux: j&rsquo;ai décidé de l&rsquo;utiliser pour jouer tout un dossier dans lequel j&rsquo;ai rippé _l&rsquo;excellent_ Mystery boy de Jeff Buckley. Mais pas moyen d&rsquo;ajouter le chemin de mon répertoire en utilisant leur petite boîte: pour un peu il aurait fallu que je le rentre à la mimine. Cela ne m&rsquo;allait pas du tout niveau flexibilité&#8230; Alors j&rsquo;ai décidé de changer. &laquo;&nbsp;On&nbsp;&raquo; (smortex en fait) m&rsquo;avait bcp parlé (et en bien!) du duo mpd/mpc. Je me suis dit: pourquoi pas?<br />
Je vais sur le site, tout en l&rsquo;installant via yast et je me demande comment je vais pouvoir démarrer tout ça en moins de 5 mn: je ne veux pas configurer un nouveau logiciel pendant des plombes, je veux écouter ma musique!!! J&rsquo;ai pas trouvé la doc à la hauteur et j&rsquo;ai été obligé de lire les pages de manuel et de taper 2 ou trois commandes avant de pouvoir (enfin!) écouter ma musique comme je le voulais <img src="https://blog.developpez.com/gnux/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></p>
<p>Il faut comprendre que MPD construit une base de données de fichiers musicaux qui peuvent être interrogés via un client en local mais aussi (et ça, je trouve ça super!) à distance. La première chose à faire (après avoir installé le soft et lu le man) est de remplir le fichier de configuration personnel. Il se nomme ~/.mpdconf . Rien de sorcier, voici le mien pour vous en convaincre:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"># Fichiers et dossiers <br />
&nbsp;<br />
music_directory &quot;~/mpd&quot; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# LÃ &nbsp;oÃ¹ se trouve la musique <br />
playlist_directory &quot;~/mpd/playlists&quot; # OÃ¹ mettre les playlists <br />
db_file &quot;~/mpd/.mpd.db&quot; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# La base de donnÃ©es <br />
log_file &quot;~/mpd/.mpd.log&quot; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# fichier de log <br />
error_file &quot;~/mpd/.mpd-error.log&quot; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# fichier de log des erreurs <br />
pid_file &quot;~/mpd/.mpd.pid&quot; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# fichier PID</div></div>
<p>C&rsquo;est tout. Notez que j&rsquo;étais tellement pressé d&rsquo;écouter ma musique que je n&rsquo;ai même pas pris la peine de prévoir une sortie audio. J&rsquo;ai copié dans un dossier Mystery_Boy tout les fichiers ogg concernées et ensuite j&rsquo;ai tapé &laquo;&nbsp;mpd&nbsp;&raquo; et j&rsquo;ai regardé. Voici le résultat:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ mpd <br />
unable to open db file &quot;/home/gnux/mpd/.mpd.db&quot;: No such file or directory <br />
added Mystery_boy/Dream_Brother.ogg <br />
added Mystery_boy/Eternal_Life.ogg <br />
added Mystery_boy/Grace.ogg <br />
added Mystery_boy/Hallelujah__I_Know_Its_Over.ogg <br />
added Mystery_boy/I_Woke_up_in_a_Strange_Place.ogg <br />
added Mystery_boy/Kanga_Roo.ogg <br />
added Mystery_boy/Last_Goodbye.ogg <br />
added Mystery_boy/Lilac_Wine.ogg <br />
added Mystery_boy/Mojo_Pin.ogg <br />
added Mystery_boy/Moodswing_Whiskey.ogg <br />
added Mystery_boy/The_Man_That_Got_Away.ogg <br />
added Mystery_boy/What_Will_You_Say.ogg <br />
No &quot;audio_output&quot; defined in config file <br />
Attempt to detect audio output device <br />
Attempting to detect a alsa audio device <br />
Successfully detected a alsa audio device</div></div>
<p>J&rsquo;ai beaucoup aimé la dernière phrase: j&rsquo;aime quand on fait le travail pour moi <img src="https://blog.developpez.com/gnux/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /></p>
<p>Bien j&rsquo;avais un spool de fichiers qui semblait prêt, il ne restait plus qu&rsquo;à l&rsquo;écouter! J&rsquo;ai décidé d&rsquo;utiliser mpc car ça va bien dans screen avec irssi, je peux même l&rsquo;appeler sous Vim, donc c&rsquo;est parfait.<br />
Après un détour par la page de man, j&rsquo;ai tapé:</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ mpc add Mystery_boy/*.ogg &nbsp; //permet d'ajouter tout les fichiers ogg du répertoire à ma playlist <br />
adding: Mystery_boy/Dream_Brother.ogg <br />
adding: Mystery_boy/Eternal_Life.ogg <br />
adding: Mystery_boy/Grace.ogg <br />
adding: Mystery_boy/Hallelujah__I_Know_Its_Over.ogg <br />
adding: Mystery_boy/I_Woke_up_in_a_Strange_Place.ogg <br />
adding: Mystery_boy/Kanga_Roo.ogg <br />
adding: Mystery_boy/Last_Goodbye.ogg <br />
adding: Mystery_boy/Lilac_Wine.ogg <br />
adding: Mystery_boy/Mojo_Pin.ogg <br />
adding: Mystery_boy/Moodswing_Whiskey.ogg <br />
adding: Mystery_boy/The_Man_That_Got_Away.ogg <br />
adding: Mystery_boy/What_Will_You_Say.ogg</div></div>
<p>Ca avait l&rsquo;air de fonctionner, je ne savais toujours pas comment écouter mon disque mais&#8230;mpc ls m&rsquo;a confirmé que tout était là. J&rsquo;ai donc simplement tapé mpc play et ça a commencé&#8230;.J&rsquo;étais bien content de pouvoir lire mon cd comme je le voulais.</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Des livres sur Scheme</title>
		<link>https://blog.developpez.com/gnux/p2601/programmation/des_livres_sur_scheme</link>
		<comments>https://blog.developpez.com/gnux/p2601/programmation/des_livres_sur_scheme#comments</comments>
		<pubDate>Thu, 07 Dec 2006 18:58:03 +0000</pubDate>
		<dc:creator><![CDATA[Gnux]]></dc:creator>
				<category><![CDATA[Programmation]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Salut Ayant eu un peu de tps loin du net, j&#8217;ai pu potasser quelques livres d&#8217;introduction à Scheme. Plus précisément même d&#8217;introduction à la programmation en Scheme. Pour les gens intéressés: http://general.developpez.com/livres/ Le premier est un livre de chez Dunod: &#8230; <a href="https://blog.developpez.com/gnux/p2601/programmation/des_livres_sur_scheme">Lire la suite <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Salut<br />
Ayant eu un peu de tps loin du net, j&rsquo;ai pu potasser quelques livres d&rsquo;introduction à Scheme. Plus précisément même d&rsquo;introduction à la programmation en Scheme.<br />
Pour les gens intéressés: http://general.developpez.com/livres/<br />
Le premier est un livre de chez Dunod: <a href="http://www.dunod.com/pages/ouvrages/ficheouvrage.asp?id=47479">Programmation Récursive en Scheme</a> qui sert de support de cours à l&rsquo;université Pierre-et-Marie-Curie de Paris ainsi qu&rsquo;au CNED. Les explications sont claires, les exercices bien commentés. Cependant il est nécessaire de posséder avant un bagage minimal (pour comprendre les explications sur le principe de récurrence ou les couples etc&#8230;bref un peu de mathématiques discrètes, pas besoin d&rsquo;être agrégé de maths non plus <img src="https://blog.developpez.com/gnux/wp-includes/images/smilies/icon_wink.gif" alt=";)" class="wp-smiley" /> )<br />
Le second se nomme <a href="http://www.vuibert.com/livre1519.html">&laquo;&nbsp;Débuter en programmation avec Scheme&nbsp;&raquo;</a>. C&rsquo;est un livre élémentaire. Cela signifie que tout est bien décomposer et pré-maché. Idéal pour les vrais débutants possédant peu (ou pas du tout même!) de bagages scientifiques. Le seul reproche qu&rsquo;on pourrait lui faire tient au fait que les solutions aux exercices sont sur le cédérom. En conséquence contrairement au premier, tous les exos ne sont pas commentés (dommage surtout si l&rsquo;on prend en compte le chapitre 11 et la qualité du commentaire de l&rsquo;exercice).<br />
Bref, j&rsquo;ai décidé de continuer à lire des bouquins sur Scheme. Après en avoir lu un sur la Programmation Récursive avec Scheme, j&rsquo;aimerais lire celui de Hufflen sur la <a href="http://www.dunod.com/pages/ouvrages/ficheouvrage.asp?id=585140">Programmation Fonctionnelle avec Scheme</a> + le livre de <a href="http://www.vuibert.com/livre390.html">Chazarain </a><br />
Voilà pour le programme&#8230;</p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
