www.DigitalSpirit.org

Bienvenue sur le blog de Charles Rincheval aka hugo !

Politique d'accessiblité | Aller au contenu | Aller au menu | Aller à la recherche

Keyword - Planet-Libre

Fil des billets - Fil des commentaires

Extension Openplanet pour Dotclear

L'extension Openplanet pour Dotclear permet de créer un planet sur votre blog, un regroupement de blogs par le biais des fils de syndication (rss, atom...).

Logo rss

J'ai eu à l'installer pour le site http://planet.madeinfr.org/ mais quelques problèmes rencontrés m'ont obligé à le modifier quelque peu.

Je publie donc la version modifiée et le patch basé sur la version 1.2 bêta 2.

Voici la liste des corrections / ajouts :

  • On ne modifie pas le status d'un billet que l'on met à jour, ainsi, si il est marqué hors ligne, il le reste...
  • Pas d'insertion si le contenu est vide ou sans titre
  • Autorisation dans SimplePie (la librairie de gestion de flux de syndication) des balises Object, Param et Embed afin de permettre les vidéos au format Flash (Oui, c'est mal)
  • On ne modifie pas la categorie d'un billet dont on fait la mise à jour
  • Résolution de problemes avec les tags importés comportant des accents

Les sources sont en pièce jointe à ce billet.

Astuce Nokia N900 : Ajouter des raccourcis au menu principal

Il est assez simple d'ajouter des éléments dans le menu principal et notamment des raccourcis vers des applications utiles, pour cela, il suffit d'éditer le fichier xml /etc/systemui/systemui.xml et d'y ajouter quelques lignes.

Par exemple, pour ajouter dans le menu, un raccourci vers htop et deux entrées permettant de rédémarrer la machine, il suffit d'ajouter dans le fichier xml le texte en vert suivant :

 [...]

<menuitem priority="20" name="Reboot">
<return>6</return>
<po>osso-powerup-shutdown</po>
</menuitem>
<menuitem priority="10" name="Soft poweroff">
<return>7</return>
<po>osso-powerup-shutdown</po>
</menuitem>
<menuitem priority="5" name="Htop in XTerm">
<callback service="com.nokia.xterm" path="/com/nokia/xterm" interface="com.nokia.xterm"
method="run_command" bus="session" autostart="true">
<argument type="string">/usr/bin/htop</argument>
</callback>
</menuitem>


</powerkeymenu>

Et voilà le résultat :

Ajouter des item au menu principel

Surveiller ses serveurs avec Ruby et Jabber

Voici un tout petit programme de moins de 20 lignes permettant très simplement de surveiller un serveur grâce aux protocoles Jabber.

Il suffit de créer un compte Jabber spécifique pour le serveur à surveiller, et de l'ajouter dans votre liste de contacts, celui-ci apparaitra avec pour status la charge du système, pratique ! non ?

En prérequi, il vous faut juste le gem xmpp4r-simple, installez le comme ceci :

sudo gem install xmpp4r-simple

Le code est très facilement étendable selon vos besoins, je vous laisse faire...

require 'rubygems'
require 'xmpp4r-simple'
 
LOGIN='le_compte_du_serveur@im.apinc.org'
PASS='lepass'
DEST='votre_compte_perso@im.apinc.org'
 
begin
  $im = Jabber::Simple.new(LOGIN, PASS)
  $im.deliver(DEST, "Hello !")
  loop do
    $im.status(nil, `hostname`.strip + ' : ' + `cat /proc/loadavg`.split.first(3).join(' '))
    sleep 30
  end
rescue => e
  p e; sleep 10
  retry
end

Lancez maintenant le script :

ruby jabber.rb

Voilà un petit aperçu du résultat dans Pidgin :

Status Jabber Ruby

Astuce Nokia N900 : Enlever les ombres des icones sur le bureau

Il est possible de retirer les ombres des icones du bureau simplement en supprimant les 2 fichiers suivants :

  • /usr/share/themes/NOM_DU_THEME/images/ApplicationShortcutAppletPressed.png
  • /usr/share/themes/NOM_DU_THEME/images/ApplicationShortcutApplet.png

Afin de pouvoir restaurer les ombres, je vous conseille de simplement modifier l'extension de ces fichiers en png.old, c'est assez simple, ouvrez un terminal et saisissez les commandes suivantes :

$ sudo gainroot
$ cd /usr/share/themes/NOM_DU_THEME/images/
$ mv ApplicationShortcutAppletPressed.png ApplicationShortcutAppletPressed.png.old
$ mv ApplicationShortcutApplet.png ApplicationShortcutApplet.png.old

Pour que le changement soit pris en compte, redémarrez la machine.

Voici le résultat, avant, après :

Bon, et pour ceux qui oseraient se demander comment on revient comme avant, on fait l'inverse : on renomme les .png.old en png.

Un exemple d'utilisation de la bibliothèque Oled4d pour Arduino

Voici un exemple très simple expliquant l'utilisation de la bibliothèque libre Oled4D dont j'ai parlé dans un précédent billet.

Ce programme va afficher l'image ci-dessous :

Oled 4D démo pour Arduino

Le code source commenté est affiché en seconde partie de ce billet.

Plus d'informations :

Lire la suite...

Librairie Arduino pour afficheur Oled : Oled4d

Voici une librairie libre de gestion d'afficheur OLED de la société 4D Systems pour Arduino.

Comme leur nom l'indique très bien, ils utilisent la technologie OLED avec tous les avantages de cette technologie : pas besoin d'un rétroéclairage, ils ont un angle de vue de 180°, bonne consommation, très bon contraste, vous pouvez les trouver entre autres chez Lextronic ou encore chez Sparkfun.

Le jeux d'instructions n'est pas toujours très logique mais est assez complet, le principal défaut de ces afficheurs sont leur prix, à 65€ l'unité, j'imagine mal comment espérer faire de la petite série à un tel prix...

Ces afficheurs sont pilotables directement par le biais d'une connection série dans lequel on envoie directement des commandes assez hauts niveaux :

  • Set Background Color
  • Put Pixel
  • Erase Screen
  • Draw Rectangle
  • Place String of ASCII Text
  • ...

Ils disposent également d'un port microsd permettant ainsi de charger des images ou encore des bouts de programmes, attention, cependant car n'espérez pas mettre des images jpg dans la microsd ou autre et les afficher comme ça, d'un coup, ça ne fonctionnera pas, tout d'abord, car le chip de 4D ne gère pas les images compressées mais uniquement des champs de bits et surtout car il n'y a aucune gestion de FAT gérée par le controleur, ainsi, il est possible d'accéder au contenu de la microsd depuis votre programme mais en brut : à vous de gérer la couche du système de fichiers...

Tester la libraire

Voici la marche à suivre pour tester cette librairie avec Arduino (la librairie peut parfaitement fonctionner hors du projet Arduino...) :

  1. Créer un dossier Oled4d dans le dossier Libraries de votre installation Arduino et copiez dedans le fichier Oled4d.h.
  2. Créez un nouveau projet Arduino et copiez le contenu du fichier oled4d.pde dedans.
  3. Compilez le source, envoyez dans la cible et voilà, vous devriez avoir quelque chose de ce genre s'afficher :

Oui, il s'agit bien de Tux ! ;)

Comment ça fonctionne ?

Voici un petit bout de code :

// Créer l'objet en interface série logiciel
Oled4dSoft oled = Oled4dSoft(serial, 8);

// Pour utiliser l'uart « hardware », procéder ainsi :
//Oled4dHard oled = Oled4dHard(Serial, OLED_RESET_PIN);

// Initialise l'écran
oled.init();

// Efface l'écran
oled.clear();

// Dessine un cercle
oled.drawCircle(64, 64, 20, RGB(255, 255, 0));

// Affiche du texte
oled.drawText(1, 3, SMALL, GREEN, "Hello world !");

Voilà, je pense que l'exemple est assez explicite et logique...

Vour remarquerez qu'il est possible de passer par l'uart intégré à l'Atmel ou de passer par l'uart logiciel avec la libraire NewSoftSerial (cette librairie dispose de fonctions avancées et est bien supérieure à la librairie d'uart fourni par défaut dans le projet Arduino).

Démo

Voici une petite démo affichant en vrac des lignes, des triangles, des cercles, des polygones, des rectangles...
La vidéo reflète assez mal les couleurs de l'écran qui sont bien vives en réel.

Écran Oled de 4D System piloté par Arduino

Futures évolutions

Actuellement, cette librairie supporte uniquement les instructions standards (General Command Set), les autres (Extended Command Set), qui permettent entre autre un accès au contenu de la microsd, ne sont pas encore gérées mais le plus gros du travail est fait...

Téléchargement

Cette librairie est mise à disposition sous license GPL.
Vous pouvez télécharger la toute dernière version de cette librairie depuis mon compte GitHub à l'adresse suivante : http://github.com/hugokernel/Oled4D

Je mettrai à jour également la page sur le wiki : http://www.digitalspirit.org/wiki/projets/oled4d.

Planet Madeinfr : Regroupement d'articles francophones sur le « fait soit même »

Ouverture ce jour d'un planet (un regroupement d'article issus de différents blogs au sein d'un même blog), consacré au « fait soit même » (autrement appelé « Do It Yourself » outre atlantique) avec une forte attirance pour l'électronique, sa petite particularité est que tous les articles diffusés sont en français.

La publication sur le planet est ouverte à tout le monde, il suffit de posséder un blog et des articles en français sur le sujet, et de nous le signaler par le biais du formulaire approprié.

L'adresse de ce planet est : http://planet.madeinfr.org/

Il est aussi possible de suivre les articles et l'actualité de Made in Fr sur Twitter et Identi.ca :

 

Hyla_Tpl : Un nouveau moteur de template / gabarit / modèle léger et rapide

Pour les besoins de la nouvelle version du gestionnaire de fichiers en ligne Hyla (http://www.hyla-project.org/) qui utilisait jusqu'à lors le moteur de gabarits de la PhpLib, un nouveau moteur bien plus performant à été réécrit respectant la logique des templates de ce dernier.

Il améliore les performances en terme de vitesse d'un facteur 10 et ajoute un certain nombre de fonctionnalités très pratiques :

  1. Tableaux et objets dans les variables : {$user.name}
  2. Les fonctions appliquées aux variables : {$user.name|upper}
  3. Les fonctions simples : {!include:test.tpl}
  4. La traduction : {_Hello World !}
  5. Les commentaires : {# Petit commentaire}
  6. Les blocs ELSE associés aux habituels BEGIN / END

Ce moteur est disponible en mode autonome (standalone) totalement indépendant de Hyla.

Les habitués des templates de la Phplib y trouveront leurs comptes rapidement, les autres seront séduits par la facilité et la légereté de cette librairie.

Je vous invite à consulter le site pour plus de détails et des exemples d'utilisation sur le blog de développement de Hyla.

Éviter l'extinction / le redémarrage accidentel d'un serveur : molly-guard

J'ai découvert par l'intermédiaire de Clochix un petit programme très pratique, voir indispensable, à installer, notamment, sur les serveurs auxquels vous avez l'habitude de gérer à distance par ssh.

Ce paquet permet, en s'intercalant entre vous et les commandes halt, shutdown ou reboot, de vous protéger d'un rédémarrage ou un arrêt intempestif, voir dramatique (oui,  dramatique), de votre serveur en vous demandant de saisir le nom du serveur (hostname) à qui s'adresse ladîte commande...

Une petite mise en situation :

root@prod:$ shutdown
W: molly-guard: SSH session detected!
Please type in hostname of the machine to shutdown: dev
Good thing I asked; I won't shutdown prod ...

Voilà une belle sueur froide d'évitée...

Le paquet se nomme molly-guard et est disponible sur toutes les bonnes distributions GNU/Linux...

Des USE flags à jour pour votre Gentoo

Utilisateur de Gentoo, il m'arrive fréquemment d'ajouter des USE flags afin de profiter de fonctionnalités supplémentaires pour tel ou tel programme, or, j'installe en général les mêmes applications sur mes machines (pro ou perso), du coup, je me retrouve à installer les mêmes USE flags un peu partout.

Afin d'éviter les erreurs de copie de USE flags et d'être synchro entre mes machines, j'ai créé un outils tout simple permettant de fusionner les USE flags, ce dernier est utilisable en ligne à l'adresse suivante : http://www.digitalspirit.org/lab/misc/merge-use-flags.php

L'utilisation est, me semble-t-il, assez claire, copiez dans les champs les contenus de "USE flag" de vos machines, validez, un nouveau champs apparait alors avec un USE flag correspondant à la fusion des 2 précédents.

Cependant, certain USE flags reste spécifique à certaine architecture, prenez garde de ne pas les mélanger, pour ma part, je procède simplement en séparant d'une ligne vide les USE flags génériques (en vert) de ceux spécifiques au matériel (en rouge) :

USE="
alsa automount avahi
bash-completion bluetooh bzip2
cairo cdaudio cdr code
dbus directfb doc dvb dvd dvdr
exif
fat ffmpeg firefox
gif gimp glitz gnome gstreamer gtk
ipod
jpeg jpeg2k
lame libcaca
matroska mng mp3 mpeg mysql
ogg opengl
pdf png php
quicktime
raw
samba sqlite subversion svg
theora tiff truetype type1
unicode usb
v4l v4l2 vnc vorbis
win32codecs
X
x264 xcb xine xinerama xml xulrunner xvid

mmx sse smp
"

Ce script permet aussi de trier les USE flags et éventuellement des les grouper par critères de tri, pratique pour s'y retrouver facilement dans son make.conf ...

- page 1 de 3