Servez-vous

Widgets en ligne de commande

Contibuer à OpenStreetMaps sans GPS: mode d'emploi

Si vous souhaitez contribuer à ce projet incroyable qu'est OpenStreetMaps mais que vous n'avez pas de GPS (ce qui est mon cas), vous pouvez tout de même être utile en contribuant à enrichir les "tags".

Les tags sont tout simplement des renseignements sur des points ou sur des portions de route qui permettent de rendre "utile" l'information délivrée par le serveur. Je pense que des tags riches sont très importants pour qu'une carte donne des informations au lecteur (sur une carte classique, la couleur et bien sûr le texte jouent le rôle de tag)

Comme je l'avais dit dans un ancien article, on peut aussi utiliser les photos satellites fournies par Yahoo mais cela s'est révélé inutile dans les zones que j'ai cherché à enrichir, la définition y était trop mauvaise (voire inexistante)

Première étape: créer un compte OpenStreetMaps

Pour cela il suffit de se rendre ici ! Vous aurez par la suite besoin du login et du mot de passe pour downloder et uploader des données sur le serveur OSM

Deuxième étape: télécharger et lancer JOSM

Afin d'éditer facilement des portions de carte, on va utiliser un éditeur "offline" en java, j'ai nommé JOSM. Vous pouvez aller récupérer la dernière version du logiciel (une archive jar) sur le site. Une fois l'archive téléchargée, lancez là à l'aide de la commande
java -jar josm-tested.jar
(trop simple java...)

Troisième étape: : downloader la portion de carte qui vous intéresse

Une fois josm lancé, faites Fichier > Téléchargement depuis OSM
Sélectionnez par un rectangle la zone à télécharger (et renseignez vos login et mot de passe la première fois)

Cette action équivaut à faire un checkout pour les habitués à svn

Quatrième étape: tagguez !

Voilà la partie amusante :)
Pour tagger un lieu sélectionnez l'outil "dessiner un noeud" (barre d'outil à gauche) puis double-cliquez à l'endroit où vous voulez placer le tag. Utilisez ensuite le menu "Balises" pour donner des informations.

Exemple: ajout d'une station de velib

Sélection de l'outil dessin de noeud

Tracé par double click

Balises > Vélos > Location

Dernière étape: appliquer les changements faits sur le serveur

Cette étape équivaut à un commit en svn
il ne vous reste plus qu'à appliquer les changements effectués en utilisant l'icone "Envoyer les changements sur le serveur OSM"

Au moment où on vous le demande, renseignez de façon concise en quoi consiste votre modification.

Et voilà ! On peut bien sur modifier des informations sur des portions de route, sur des zones... josm est très intuitif et très facile à explorer, je vous fait confiance !

Slingshot: Utilisez la gravité pour détruire votre ennemi

Slingshot est un jeu de tir en 2D et au tour par tour, dans lequel vous devez atteindre votre ennemi avec un missile depuis votre vaisseau spatial. Mais plusieurs planètes vous séparent de votre cible, ainsi votre tir doit tenir compte des planètes dont la force gravitationnelle influe très fortement sur la trajectoire de votre missile !

Pour atteindre votre but il vous faudra régler correctement l'angle et la puissance de votre tir (flêches directionnelles), et éventuellement avoir un peu de chance ;)

Un screenshot du jeu pour vous donner une idée:

Le jeu se joue normalement à deux, mais vous pouvez aussi très bien jouer les deux adversaires vous même et ne vous concentrer que sur la performance technique indépendamment des scores des joueurs.

Vous pouvez paramétrer quelques options, je vous conseille notamment d'activer le mode "bounce" pour éviter de satelliser sans cesse vos projectiles à l'infini. 

Allez hop hop hop, allez bosser vos lois de kepler, avec un peu de chance le jeu est dans vos dépot, sinon c'est ici.

Gérer les archives

J'aime beaucoup les options "créer une archive" et "extraire ici" du click droit de gnome car elles permettent de ne pas se prendre la tête avec les différents formats d'archives.

Cependant il est bon de savoir le faire autrement, pour ne pas se retrouver démuni quand on a plus d'interface graphique. (serveur, ordi planté...)

Voilà donc un petit récapitulatif pense-bête, sur comment compresser-décompresser des archives de différents formats en supposant que je veuille compresser ou décompresser le dossier "archive".

tar

Compresser:
tar -cf archive.tar ./archive
Décompresser:
tar -xf archive.tar


tar.gz

Compresser:
tar -czf archive.tar.gz ./archive
Décompresser:
tar -xzf archive.tar.gz


tar.bz2

Compresser:
tar -cjf archive.tar.bz2 ./archive
Décompresser:
tar -xjf archive.tar.bz2

zip

Compresser:
zip -r archive.zip ./archive
Décompresser:
unzip archive.zip

Utiliser une wiimote sous linux

Cet article commence a dater... Si vous n'y trouvez pas votre bonheur allez faire un tour sur la documentation ubuntu pour la wiimote.

Cet article décrit les différentes étapes d'une solution pour utiliser une wiimote sous linux. Pour utiliser la wiimote comme un contrôleur, vous avez besoin d'une wiimote bien sûr, et d'un émetteur/récepteur BlueTooth. Niveau software nous allons utiliser cwiid.

Téléchargement:
Pour commencer télécharger les sources sur le site officiel. Extraire ensuite tout ça dans un coin propre de votre arborescence (/opt est plus ou moins fait pour ça). Lancez ensuite une console avec votre gestionnaire de paquet, vous allez en avoir besoin.

Installation:
La procédure d'installation est un peu complexe, mais est très bien décrite dans cet article de jeuxlinux.

Configuration et utilisation:
Une fois l'installation terminée et les tests de fonctionnement faits vous disposez alors d'un programme vous permettant de contrôler la souris et/ou le clavier. La description des correspondances Wiimote/Touche Clavier/Souris se fait dans un fichier de conf que l'on passe en argument à winput au lancement.
Le mieux est de mettre ce fichier de conf là ou va chercher wminput par défaut (/usr/etc/cwiid/wminput sur fedora) On lancera ensuite wminput à l'aide la commande:

wminput -c exemple.conf


exemple.conf prenant la forme suivante:
Wiimote.Up = KEY_UP
Wiimote.Down = KEY_DOWN

Wiimote.Left = KEY_LEFT
Wiimote.Right = KEY_RIGHT


Avec les associations de notre choix. Liste des inputs possible pour la Wiimote: A , B , Up , Down , Left , Right , Minus , Plus , Home , 1 , 2

L'accélération s'utilise de la façon suivante:
Plugin.acc.Roll = ABS_X
Plugin.acc.Roll_Scale = 2.0
Plugin.acc.Pitch = -ABS_Y
Plugin.acc.Pitch_Scale = 2.0

avec modification du pitch scale pour plus ou moins de sensibilité au mouvements.

La syntaxe des principales touches du clavier est :
lettre [A..Z]KEY_lettre [KEY_A ... KEY_Z]
enterKEY_ENTER
espaceKEY_SPACE
controleKEY_LEFTCTRL
shiftKEY_LEFTSHIFT
tabulationKEY_TAB
altKEY_LEFTALT
touche haut, bas, gauche, droiteKEY_UP , KEY_DOWN , KEY_LEFT , KEY_RIGHT

Par défaut le dossier ( /usr/etc/cwiid/wminput je vous le rappelle) contient déjà des fichiers de configuration tout fait, mais que vous aurez probablement besoin de retoucher suivant vos besoins (présentation , jeux , télécommande...)

Bonne wiimote sous linux, et si vous avez des questions ou des problèmes n'hésitez pas, j'essaierai de vous aider.

Libérez vos musiques

Si vous souhaitez libérer facilement votre bibliothèque musicale, je vous conseille soundconverter. Cet utilitaire (graphique) vous permet de sélectionner plusieurs fichiers ou un répertoire entier, et de convertir en masse au format voulu (ogg :). Le programme est très simple et intuitif.
Vérifiez tout de même que les options dans Edition->Préférences vous conviennent, notamment la qualité audio.

Un autre programme, oggconvert peut lui aussi réaliser cette conversion, mais pas en masse.

Attention cependant, la conversion mp3<->ogg affecte la qualité sonore (recompression d'un fichier compressé). Pour une qualité optimale, mieux vaut encoder directement à partir d'un format sans perte (cd audio, wav, flac...) quand cela est possible.

À l'inverse il peut être utile de convertir un fichier ogg au format mp3 ( problème de compatibilité par exemple). ffmepg se chargera très bien de ce travail avec la commande:
ffmpeg -i original_song.ogg new_song.mp3 -ab 192
Commande qui vous rappellera peut-être la commande de conversion de vidéo ogv au format avi. La différence est qu'il faut préciser le bitrate audio du fichier mp3 (-ab 192).

zenity: la plus simple des interfaces graphiques

Zenity est un programme qui permet d'afficher des boîtes de dialogue à partir de la ligne de commande et donc d'un script shell. Pour l'installer utilisez votre gestionnaire de paquets favoris, il est dans la majorité des dépôts. Quelques exemples de ce que peut faire zenity:
  • fenêtre d'information: zenity --info --title="Le titre de la fenêtre" --text="Le texte de la fenêtre d'information." 111.png
  • fenêtre de saisie: zenity --entry --title="Champ à remplir" --text="Ça va toujours?" --entry-text="répondez ici" 222.png
  • question zenity --question 333.png
  • choix d'un fichier (pour un répertoire ajouter l'option --directory) zenity --title="Choix du répertoire" --file-selection 444.png
  • barre de progression zenity --progress
Hé ! la barre de progression ne fait rien et reste bloquée ! En effet zenity (comme beaucoup d'autres programmes) communique par des pipes (symbole "|") qui sont des "tuyaux" virtuels par lesquels transitent des données et qui permettent de faire communiquer des programme entre eux. Ainsi pour utiliser la fonction progress de zenity il vous faut connecter zenity à un script ou un programme qui écrit l'avancement en % sur la sortie standard :
progress=0;while [ $progress -le 100 ]; do echo $progress; let $[ progress += 5 ]; sleep 1; done | zenity --progress
555.png Vous pouver récupérer les valeurs produites par zenity (nombre, nom de fichier...) resultat=$( zenity --entry) ou les envoyer à un autre programme/script via un pipe
zenity --entry | calcul.sh


Certaines fonctions comme zenity --question ne renvoient pas directement de valeurs, il faut regarder leur valeur de retour:
zenity --question
echo $?


Mais zenity propose encore d'autres fonctions comme calendar, error, list, warning, scale... Pour plus de détails je vous invite à regarder zenity --help et le man qui sont très complets et clairs. N'hésitez pas à poser des questions. À venir bientôt un script utilisant zenity !

Pdfcube: des transitions 3d pour vos présentations

pdfcube.jpg Pdfcube est un visionneur de présentation très léger et un peu particulier: en effet il permet d'insérer des transitions "cube en rotation" entre les slides que l'on veut lors de la visualisation d'un pdf, ou encore de zoomer dans les coins du slide en cours. Je trouve ça intéressant, à condition de l'utiliser uniquement pour les transitions vraiment importantes de votre présentation, sous peine de mal de mer dans l'auditoire.

Utilisation:

pdfcube presentation.pdf 3 6

si vous voulez que les transitions 3->4 et 6->7 soient en 3d.
Au cours de la présentation, vous pouvez quand même choisir le type de chaque transition:
     barre d'espace:
transition "prévue" suivant le numéro de slide
     flêche gauche / flêche droite:
transition directe quelque soit le slide
     c:
transition 3d quelque soit le slide
     h: zoom dans le coin haut gauche
     j
: zoom haut droite
     k
: zoom bas gauche
     l
: zoom bas droite

Installation: Pour l'installer, deux solutions:
  • Il est dans les dépôts de votre distrib (cas de fedora, apparemment pas ubuntu, les autres je ne sais pas) donc yum install pdfcube ou autre suivant vos gestionnaire de paquet.
  • Il n'est pas dans les dépôts, récupérez les sources ici. La compilation consiste en configure/make/make install, tout est expliqué dans le fichier INSTALL.
Pour plus d'informations, le site web de pdfcube.

OpenStreetMap: un projet de cartographie libre

my-map-travel_tpdk-casimir_divers.png Connaissez vous OpenStreetMap ? Ce projet ambitieux a pour but de cartographier les routes du monde entier, mais ce uniquement grâce aux contributions de la communauté (même fonctionnement que wikipédia) Plusieurs méthodes pour contribuer:
  • activer son gps pendant un trajet quelconque puis exporter le trajet vers OpenStreetMap -> modeeeurn
  • faire le tracé des routes et chemins à la main à partir d'images satellites -> galérien
Une seule règle: les contributeurs ne doivent pas recopier des cartographies existantes (GoogleMaps, IGN...) pour conserver la liberté du projet. Une alternative libre et crédible à GoogleMaps, j'ai été bluffé !

Faites parler votre ordinateur avec festival

festival.png Festival est un logiciel de text-to-speech sous linux très simple d'utilisation. Il s'utilise en ligne de commande, ce qui le rend très pratique à intégrer à des scripts !
Installez festival à partir de votre gestionnaire de paquets, puis executez la commande

echo "Hello world" | festival --tts

Wa ! Votre ordinateur vient de vous parler ! Il ? Elle ? Cela dépend de la voix par défaut. On peut la régler en allant trifouiller le fichier voices.scm vers la ligne 350 (dans /usr/share/festival/voices chez moi ) et en réordonnant l'ordre de priorité des voix: si il ne trouve pas la première voix, il passe à la suivante, et ainsi de suite.
On peut aussi lire le contenu d'un fichier :

festival --tts file_name

Allez un petit défi : faire un script qui vous dis bonjour lorsque vous vous connectez a votre système.
Solution:
placez la ligne:
echo "Hello votre_nom" | festival --tts

dans votre .bash_profile ou appellez un script plus évolué prenant en compte l'heure, le temps qu'il fait, que sais-je encore !

Pour plus d' infos sur festival, la documentation complète se trouve .