tag:blogger.com,1999:blog-68166675451174954882024-02-25T23:01:45.223-08:00TechnovergenceUnknownnoreply@blogger.comBlogger12125tag:blogger.com,1999:blog-6816667545117495488.post-71653041309990540002012-09-02T03:46:00.000-07:002012-09-02T03:50:15.141-07:00Développement de plugin Wordpress Pour avoir un plugin wordpress il suffit de créer un fichier myplugin-plugin.php
dans un dossier myplugin qu'on placera dans le dossier plugins dans wp-content.
<br />
<br />
Ce fichier doit contenir un header contenant le nom du plugin. C'est obligatoire pour que wordpress reconnaisse votre plugin.
Exemple minimal du header :
<br />
<br />
<pre>/*
Plugin Name: Swipress
*/
</pre>
<br />
Assurez-vous que le fichier a la permission read. Maintenant le plugin est visible dans la liste des plugins.
<br />
<br />
Dans le prochain article nous verrons comment invoquer notre plugin grâce un code "shortcode" et nous verrons la notion de hook.<br />
<br />
Ressources :<br />
<a href="http://codex.wordpress.org/Writing_a_Plugin">http://codex.wordpress.org/Writing_a_Plugin</a><br />
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-6816667545117495488.post-73618327548719370122011-11-05T16:38:00.000-07:002012-09-18T15:24:46.672-07:00Installation et configuration réseau d'une machine virtuelle chez online.net (Dedibox)Vous avez installé ESXi sur votre dedibox et vous voulez créer une nouvelle machine virtuelle ?<br />
<br />
Il vous faudra une adresse IP pour votre nouvelle vm autrement dit une IP fail over. Vous la commandez depuis votre interface online.net et vous lui attribuez une adresse mac de type vmware (commençant par : 00:50:56)<br />
<br />
Vous notez l'adresse mac exacte et vous revenez sur votre client vSphere pour créer la vm et lui assigner l'adresse mac que online vous a donné.<br />
<br />
Le début de l'installation est relativement simple, en effet, la seule chose à garder à l'esprit est de monter l'image ISO de la distribution Linux de votre choix qui se trouve sur le datastore de votre serveur ESXi et brancher (connecter) le cdrom au démarrage de la vm depuis votre client vSphere.<br />
<br />
Pendant l'installation les choses se compliquent car vous aurez besoin du réseau pour joindre les miroirs de APT.<br />
<div>
<br /></div>
<div>
Avant toutes manipulations, assurez-vous via votre client vSphere que l'adaptateur réseau de la vm est bien connecté.</div>
<div>
<br /></div>
<div>
Ensuite, lorsque le debian-installer (j'ai choisis Debian) vous propose de configurer le réseau, vous devez :<br />
<br />
<ul>
<li>Renseigner uniquement l'adresse ip (l'ip fail over que vous venez d'acheter sur le site online)</li>
<li>Renseigner le masque (255.255.255.255) </li>
<li>Ne rien mettre dans le champ passerelle et donc ne pas toucher à la configuration des routes pour le moment car elles sera effacée lorsqu'on arrive à l'étape de téléchargement des paquets.</li>
<li>Renseigner le server DNS : 8.8.8.8</li>
</ul>
<div>
Maintenant,</div>
<br />
- il faudra suivre les étapes de l'installation (partitionnement du disque, ajout des utilisateurs, etc)<br />
<div>
<br />
- À l'étape choix du miroir pour télécharger les paquets, il faudra choisir un miroir et là il va gueuler par ce que le réseau n'est pas configuré.<br />
<br />
- il suffira de faire un alt+F2, taper les 2 commandes route suivantes, ensuite alt+F1 pour revenir à l'écran d'installation. (alt+F4 affiche la sortie du fichier /var/log/syslog)<br />
<br />
<pre>route add -host GATEWAYDEDIBOX dev eth0
route add default gateway GATEWAYDEDIBOX</pre>
GATEWAYDEDIBOX est l'adresse de votre serveur ESXi avec .1 à la fin. càd : pour l'adresse ip 88.190.X.Y, votre gateway sera 88.190.X.1 <br />
Si cela ne fonctionne pas vérifiez que c'est le 88.190.X de l'adresse ip du serveur ESXi que vous utilisez comme gateway et non pas le 88.190.X de l'ip fail over que vous venez d'acheter.<br />
<br />
Voilà, continuez l'installation et n'oubliez pas d'ajouter les routes dans le /etc/rc.local<br />
<div>
<br /></div>
<div>
Le DNS proposé par online.net est 88.190.254.14 </div>
<div>
Votre adresse de broadcast n'est rien d'autre que votre adresse ip.</div>
<div>
<br /></div>
<div>
Sources:</div>
</div>
</div>
<div>
<a href="http://forum.online.net/index.php?/topic/135-lancement-des-macs-virtuelles/page__st__40__p__1668#entry1668">http://forum.online.net/index.php?/topic/135-lancement-des-macs-virtuelles/page__st__40__p__1668#entry1668</a></div>
<div>
<a href="http://documentation.online.net/fr/serveur-dedie/systemes-d_exploitation/distribution-proxmox">http://documentation.online.net/fr/serveur-dedie/systemes-d_exploitation/distribution-proxmox</a></div>
<div>
<br /></div>
Unknownnoreply@blogger.com3tag:blogger.com,1999:blog-6816667545117495488.post-37268716615078678272011-11-01T11:17:00.000-07:002011-11-19T07:22:15.917-08:00Parcourir rapidement les sources du framework AndroidUn jour ou l'autre vous aurez besoin de plonger dans le code sources du framework Android. C'est ce que j'ai eu à faire pour debugguer un problème d'envoi de sms à plus de 3000 caractères.<br />
<br />
J'avais besoin de voir le code de la classe SmsDispatcher.
La solution décrite sur le <a href="http://source.android.com/source/downloading.html">site officiel</a> ou <a href="http://www.vogella.de/blog/2010/12/14/android-source-code/">ici</a> est de cloner les sources avec Git, ensuite faire un zip du répertoire /frameworks/base/core/java et mettre le zip dans le dossier Android ou vous avez au préalable installé le SDK.<br />
<br />
$ repo init -u https://android.googlesource.com/platform/manifest<br />
$ repo init -u https://android.googlesource.com/platform/manifest -b android-2.3.7_r1<br />
<br />
et il faudra installer repo auparavant.
Cela téléchargera 5.5G de code source et prendra donc un bon moment (2Mb/s pas moins de 20minutes) avant de vous donner la main.<br />
<br />
Par ailleurs, si vous tentez de parcourir la webview du repository, vous n'irez pas très loin :
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://2.bp.blogspot.com/-XdGuIERVXpk/TrAzLnPBxrI/AAAAAAAAATo/qi5zd_dggpM/s1600/Capture-Git%2Bat%2BGoogle%2B-%2BGoogle%2BChrome.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="250" src="http://2.bp.blogspot.com/-XdGuIERVXpk/TrAzLnPBxrI/AAAAAAAAATo/qi5zd_dggpM/s400/Capture-Git%2Bat%2BGoogle%2B-%2BGoogle%2BChrome.png" width="400" /></a></div>
Un moyen plus simple de voir les sources si on ne veut pas attendre tout ce temps c'est d'utiliser <a href="http://www.google.com/codesearch">Google codesearch</a><br />
<br />
Il suffit de cliquer sur Android ensuite frameworks -> base -> et là vous pouvez parcourir les classes du framework.
Attacher les sources à Eclipse :<br />
<br />
Un autre site: <a href="http://grepcode.com/">grepcode.com</a> propose aussi de parcourir le code source et fait mieux en proposant de télécharger le code sources du Framework sour <a href="http://grepcode.com/snapshot/repository.grepcode.com/java/ext/com.google.android/android/2.2.1_r1/">forme d'un jar</a> qu'on pourra utiliser pour voir les sources sous Eclipse.
il suffit de créer un dossier sources dans le dossier ou on a téléchargé le sdk et d'y mettre le jar.<br />
<br />
$ cd ~/android/android-sdk-linux/platforms/android-8/<br />
$ mkdir sources
$ cp ~/Téléchargement/android-2.2.1_r1-sources.jar sources/<br />
<br />
Enfin, dans Eclispe : cliquez sur votre -> android.jar -> bouton droit -> properties -> cliquez sur external files et indiquez les sources :
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="http://4.bp.blogspot.com/-wgKD5wuMuZM/TrA1zjqLjBI/AAAAAAAAAT0/Gq5O7E-Jwcs/s1600/Capture-Properties%2Bfor%2B-home-reda-android-android-sdk-linux-platforms-android-8-android.jar%2B.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="263" src="http://4.bp.blogspot.com/-wgKD5wuMuZM/TrA1zjqLjBI/AAAAAAAAAT0/Gq5O7E-Jwcs/s400/Capture-Properties%2Bfor%2B-home-reda-android-android-sdk-linux-platforms-android-8-android.jar%2B.png" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Quelques ressources :</div>
<div class="separator" style="clear: both; text-align: left;">
<a href="http://stackoverflow.com/questions/449763/where-can-i-browse-android-source-code-on-line">http://stackoverflow.com/questions/449763/where-can-i-browse-android-source-code-on-line</a></div>Unknownnoreply@blogger.com3tag:blogger.com,1999:blog-6816667545117495488.post-1805235465466530492011-06-21T14:42:00.000-07:002012-02-06T17:01:16.808-08:00La solution au : No disk that can be used for recovering the system disk can be foundVous avez acheté un nouveau PC portable avec un HDD et voulez mettre un SSD à la place.
Au total on aura besoin de 3 disques, un disque tampon pour mettre l'image de votre HDD. Le SSD qui sera utilisé pour remplacer votre ancien HDD. (Vous l'avez compris, le 3ème disque est votre HDD)
<br /><br />
Souvent, la capacité de stockage du SSD est plus petite que celle du HDD et cela est source de problème avec Windows lors de la restauration, même si vous avez fait l'image d'une seule <u>partition</u> de votre HDD, dont la taille est bien plus petite que celle du SSD<br />
<br />
Au moment de la restauration, l'erreur est : <br />
<pre>No disk that can be used for recovering the system disk can be found
</pre><br />
La solution est :<br />
<br />
D'abord, il faut que vous vous débarrassiez des partitions non système et réduire la taille de la partition système si elle est trop grande (ordinateur -> gérer -> gestion des disques)<br />
<br />
Le système de restauration de Windows7 restaure la table de partition et vérifie que celle-ci peut s'appliquer sur le nouveau disque. Donc même si vous ne faites que l'image d'une partition qui fait disant 60 Go (inférieure à la taille de notre disque de destination), la simple présence d'autre partitions fait que votre restauration sera vouée à l'échec.<br />
<br />
Maintenant, vous pouvez créer l'image de votre système et la sauvegarder sur un hdd externe. <br />
<br />
Vous devez créer aussi un disque de récupération.<br />
<br />
Bootez du cdrom et hop c'est parti.<br />
<br />
Lien utile : <br />
<a href="http://www.ocztechnologyforum.com/forum/showthread.php?79517-New-to-SSD-Windows-7-64-won-t-install-to-Agility2&s=1d1a461a8125bf476e575ce5e05d8aeb"><br />
http://www.ocztechnologyforum.com/forum/showthread.php?79517-New-to-SSD-Windows-7-64-won-t-install-to-Agility2&s=1d1a461a8125bf476e575ce5e05d8aeb<br />
</a>Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-6816667545117495488.post-73647818827584561052011-05-02T12:07:00.000-07:002011-11-01T11:36:08.431-07:00Impossible de démarrer le serveur X (du jour au lendemain)Aujourd'hui, suite à un plantage de Google Chrome (qui ne voulait plus rien comprendre) sur ma Debian Lenny, j'ai redémarré ma machine, j'attends que le boot finisse, je fais un startx pour lancer le serveur X et là il ne voulait plus se lancer. Je stresse un peu (Xbugphobie oblige) avant de m'approcher plus de cet écran noir.<br />
<br />
Les messages d'erreurs affichés à l'écran n'étaient pas du tout clairs. J'ai donc lancé le serveur X en redirigeant la sortie d'erreur standard dans un fichier avec la commande suivante<br />
<pre>$ startx 2> my-x-err
</pre>Et là :<br />
<pre>mktemp: cannot create temp file /tmp/serverauth.wovCSJgVRE: Permission denied
</pre>C'est plus clair maintenant :)<br />
<pre>$ sudo chmod a+w /tmp
</pre>Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-6816667545117495488.post-60768413076651519752011-04-14T15:16:00.000-07:002011-04-17T13:36:15.778-07:00Partage de connexion (tethering) de Android à DebianDans cet article nous allons voir comment partager en ligne de commande, la connexion d'un smartphone Android vers un ordinateur portable qui tourne sous Linux Debian Lenny (5.0) <br />
<br />
Le smartphone et le PC communiqueront en Wi-Fi. (Pas besoin d'un câble USB)<br />
<br />
<b>Mais avant, pourquoi la ligne de commande ?</b><br />
<br />
Tout simplement parce qu'à cause de certains problèmes de dysfonctionnement que j'ai rencontrés dans le passé avec les networks managers graphiques, j'ai dû désinstaller celui qui était fourni par défaut avec Gnome et depuis ce jour là, j'ai toujours configuré mon réseau à la main.<br />
<br />
<b>Sans tarder, commencez par activer le tethering sur le téléphone :</b><br />
<br />
Sur l'écran d'accueil , clic sur la touche de propriété, ensuite :<br />
<br />
<pre>Settings -> Wireless & networks -> Tethering & portable hotspot -> cocher portable Wi-Fi hotspot.
</pre><br />
Vérifiez le nom du hotspot, sur le téléphone utilisé. Par défaut, c'est : AndroidAP<br />
<br />
Pour le changer, cliquez sur : <br />
<pre>Portable Wi-Fi hotspot settings -> configure Wi-Fi hotspot.
</pre>Mettez le téléphone dans votre poche maintenant :)<br />
<br />
<b>Sur votre PC : </b><br />
<br />
Connectez-vous en tant que root :<br />
<pre>su -
</pre>Désactiver l'interface <br />
<pre>ifdown wlan0
</pre>Activer l'interface <br />
<pre>ifup wlan0
</pre>Associer l'interface au réseau (Très important) :<br />
<pre>iwconfig wlan0 essid AndroidAP
</pre>Récupérer une adresse IP de votre point d'accès mobile :<br />
<pre>dhclient wlan0
</pre>Si vous ne réussissez pas à obtenir une adresse ip , assurez-vous que vous avez bien suivez les étapes précédentes et n'hésitez pas à arrêter (Ctrl + c) le dhclient et le relancer.<br />
<br />
Pour information, voici mon fichier interfaces qui se trouve dans /etc/network :<br />
<br />
<pre># The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
# The wireless interface
allow-wireless wlan0
iface wlan0 inet dhcp
wireless-mode Managed
wireless-ssid AndroidAP
</pre>Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-6816667545117495488.post-77486688849901173092011-03-04T12:17:00.000-08:002011-03-04T12:17:23.302-08:00Vérifier le md5 d'un fichierSi pour une raison ou pour une autre vous voulez vérifier l'intégrité d'un fichier que vous venez de télécharger, voici un moyen simple de faire.<br />
<br />
Supposant que vous avez télécharger Tomcat 7 par exemple, depuis l'url : http://tomcat.apache.org/download-70.cgi#7.0.8<br />
<ul><li>Commencez par générer le md5 avec la commande :</li>
</ul><pre>md5sum 'apache-tomcat-7.0.8.tar.gz' |awk '{print $1}' > localmd</pre>Ici, je génère le md5 avec la commande md5sum, je passe la sortie à awk pour ne prendre que la première colonne (print $1). Je met le md5 dans un fichier "localmd" pour pouvoir le comparer avec diff.<br />
<ul><li>Ensuite, faites la comparaison :</li>
</ul>Pour cela, il suffit ensuite de copier le md5 qui se trouve sur le site de téléchargement de tomcat et lancer la commande suivate :<br />
<pre>echo 'md5 qui se trouve sur le site distant' |diff localmd -</pre>La commande diff ne compare que les fichiers, d'où la création de localmd. Le - pour lui dire de lire un opérande de l'entrée standard.<br />
<br />
C'est fait, maintenant, je n'aurais plus la flemme de comparer les md5 ;)Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-6816667545117495488.post-41804283738244294712010-08-14T06:44:00.000-07:002010-08-14T07:53:00.749-07:00Autocomplétion xml dans EclipseDans un de mes projets, j'expérimentais la configuration de log4j avec un fichier XML au lieu des fichiers properties, cependant, il me manquait la complétion automatique.<br />Ce qui suit me sert donc de rappel pour configurer la complétion automatique sur Eclipse. Le résultat final donnera ça :<div><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_WOBOrxt0cfg/TGai28mvoNI/AAAAAAAAAEY/a0GbpXGmKgs/s1600/dtd.jpg"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 189px;" src="http://3.bp.blogspot.com/_WOBOrxt0cfg/TGai28mvoNI/AAAAAAAAAEY/a0GbpXGmKgs/s400/dtd.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5505266659372277970" /></a><div><br /></div><div>Pour commencer, nous avons besoin de la DTD log4j. </div><div>Récupérer le fichier : <b>log4j.dtd</b> qui se trouve dans le jar<b> log4.jar</b> sous <b>/org/apache/log4j/xml/</b> et placez la dtd dans un endroit de votre choix, par exemple : </div><div><br /></div><div>~reda/eclipse/addons-perso/</div><div><br /></div><div>Allez dans Window -> Preferences -> tapez <b>catalog</b> dans la zone de recherche (ou continuez sur XML -> XML Catalog)</div><div><br /></div><div>Cliquez sur Add...</div><div><br /></div><div>Spécifiez dans Catalog Entry les éléments suivants : </div><div><br /></div><div>Location : ~reda/eclipse/addons-perso/log4.dtd</div><div>Key type : <b>Public ID</b></div><div>key : <b>log4j</b></div><div><br /></div><div>Cliquez sur ok.</div><div><br /></div><div>Maintenant pour activer la complétion, spécifiez le doctype dans vos fichiers xml : </div><div><b><!DOCTYPE log4j:configuration PUBLIC "log4j.dtd" ></b></div><div><br /></div><div> C'est bon vous avez maintenant l’autocomplétion.</div><div><br /></div><div><b><span class="Apple-style-span" style="font-size: small;">Sources :</span></b><span class="Apple-style-span" style="font-size: small;"> </span></div><div><ul><li><span class="Apple-style-span" style="font-size: small;"><a href="http://myhowto.org/software-development/29-validating-xml-documents-in-eclipse-using-dtd/">http://myhowto.org/software-development/29-validating-xml-documents-in-eclipse-using-dtd/</a></span></li><li>Dans cet article j'ai dû échapper les caractères spéciaux pour insérer le doctype. Pour cela je me suis référer à cet <a href="http://ejvyas.blogspot.com/2009/09/escape-html-characters-in-blogger-post.html">article</a> et j'ai utilisé cet <a href="http://www.reconn.us/component/option,com_wrapper/Itemid,62/">outil de transformation</a></li></ul></div></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-6816667545117495488.post-51311793957692468582010-07-27T12:52:00.000-07:002010-08-14T06:43:31.838-07:00Eclipse Helios rocks!Article que j'ai écrit en anglais ici :<br /><a href="http://technovergence-en.blogspot.com/2010/08/eclipse-helios-rocks.html">http://technovergence-en.blogspot.com/2010/08/eclipse-helios-rocks.html</a>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-6816667545117495488.post-31451057470500065242010-05-05T01:36:00.000-07:002010-05-05T01:36:11.899-07:00Android Developers Blog: Taking the Android Show on the Road<a href="http://android-developers.blogspot.com/2010/05/taking-android-show-on-road.html">Android Developers Blog: Taking the Android Show on the Road</a>Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-6816667545117495488.post-59501436838405156252009-10-11T12:04:00.001-07:002010-08-14T06:34:29.036-07:00Désactiver les images pour un site (sous Firefox)Si comme moi vous visitez souvent un site spécifique pour consulter une information rapidement et que le site est lent à cause des images qu'il contient, vous pouvez désactiver les images en provenance de ce site uniquement, afin d'accélérer le chargement de la page.<br /><br />Sous Firefox : <br />Aller dans : Outils -> options -> contenu <br />cliquez sur le bouton "exception" à côté de "Charger les images automatiquement" et bloquez le site de votre choix<br /><br />Sous Iceweasel :<br />Allez dans : Édition -> préférences -> contenu <br />Idem pour la suite.Unknownnoreply@blogger.com1tag:blogger.com,1999:blog-6816667545117495488.post-86480493216600019632009-05-23T03:41:00.000-07:002011-06-23T14:19:37.789-07:00Ajouter un dictionnaire français à Eclipse sous DebianCliquez sur Window -> Preferences.<br />
Dans la fenêtre qui s'affiche, allez dans :<br />
<pre>General -> Editors -> Text Editors -> Spelling.
</pre>Dans la case : "User defined dictionary:" entrez l'emplacement du dictionnaire.<br />
Sur Debian Lenny ou Squeeze, c'est : /usr/share/dict/french<br />
Si vous n'avez pas ce fichier, installez-le :<br />
<pre>~# aptitude install wfrench
</pre>Eclipse veut qu'il y ait les droits d'écriture sur ce fichier :<br />
<pre>~# chmod a+rw /usr/share/dict/french
</pre>Fermez complètement votre éditeur et ré-ouvrez le pour voir le résultat.Unknownnoreply@blogger.com6