2012-02-12 15:36

Slackbuild : weboob 0.a

logo weboob

Weboob (WEB Out Of Browser, appréciez le jeu de mot) permet d'obtenir rapidement le contenu de certains sites web sans passer par un navigateur.

Il y a plusieurs intérêts à cela : éviter l'utilisation du plugin flash pour regarder une vidéo, ne pas subir des pages lourdingues bourrées de pub, ou réaliser une requête sur plusieurs sites à la fois.

En bonus : tout peut être fait dans la console.


Installer weboob


L'installation pour la plupart des distributions est très bien expliquée sur le site de weboob.

Pour l'installer sous slackware, j'ai réalisé un slackbuild qui automatise la création du paquet. Étant donné le délai nécessaire à la validation du script sur slackbuilds.org, je le met à disposition ici :

slackbuild : weboob.tar.gz
sources : weboob-0.a.tar.gz (md5sum : 15568485fd2bea4c53b69a6edb8c7e45)

Afin de pouvoir construire weboob, vous aurez besoin de pysetuptools.

Les programmes mechanize, python-dateutil, html2text, nose, feedparser, lxml, rtmpdump, et PyYAML seront ensuite nécessaires au bon fonctionnement des backends.


Utilisation


Avec la nouvelle release, les backends sont téléchargés sur les dépots de weboob la première fois qu'il y en a besoin. Il faut donc commencer par récupérer la liste de ceux qui sont disponibles :

$ weboob-config update

Ensuite, il ne reste plus qu'à tester les applications qui vous intéressent.


Videoob


Videoob permet de télécharger des vidéos disponibles en streaming sur les sites d'Arte, Canal+, DailyMotion, France Télévisions, INA, Nolife, Radio France, Youjizz, Youporn et Youtube. Bon, vous n'êtes pas obligés d'activer tous les backends, hein ;-)

Lors du premier démarrage, un menu interactif vous permettra d'activer ceux que vous souhaitez.

Par exemple pour télécharger les derniers épisodes de "Bref", on démarre l'application videoob :

$ videoob

On désactive tous les backends configurés sauf celui de canalplus :

videoob> backends disable arte dailymotion francetelevisions

On cherche les épisodes de bref :

videoob> search bref
Search pattern: bref
* (1) Bref. J'ai eu 30 ans. — Episode du 08/02 (canalplus)
            2012-02-08 16:02:00
* (2) Bref. J'ai eu une panne. — Episode du 06/02 (canalplus)
            2012-02-06 21:37:00
* (3) Bref. Je me suis fait agresser. — Episode du 02/02 (canalplus)
            2012-02-02 20:40:00
* (4) Bref. Je suis allé aux urgences. — Episode du 31/01 (canalplus)
            2012-01-31 17:02:00
* (5) Bref. J'ai un nouvel appart'. — Episode du 26/01 (canalplus)
            2012-01-26 20:50:00
* (6) Bref. J'ai pris le métro. — Episode du 24/01 (canalplus)
            2012-01-24 21:22:00
* (7) Bref. J'étais à côté de cette fille. — Episode du 18/01 (canalplus)
            2012-01-18 18:37:00
* (8) Bref. J'ai déménagé. — Episode du 12/01 (canalplus)
            2012-01-12 18:37:00
* (9) Bref. J'ai voulu partir en vacances. — Episode du 10/01 (canalplus)
            2012-01-10 18:32:00
* (10) Bref. J'y pense et je souris. — Episode du 06/01 (canalplus)
            2012-01-06 18:22:00 

On les télécharge le dernier :

videoob:/search> download 1

On peut aussi le jouer directement dans mplayer :

videoob:/search> play 1


Wetboobs


Héhé, oui, c'est possible d'aller encore plus loin dans les jeux de mots graveleux. Mais, contrairement à ce que son nom laisse supposer, wetboobs n'est pas une application réservée aux adultes : elle permet simplement de consulter la météo.

Lancer l'application :

$ wetboobs

Rechercher une ville :

wetboobs> search clermont-ferrand
* (1) Clermont-Ferrand, Auvergne, France (yahoo)
* (2) Clermont-Ferrand 63000 (meteofrance)

Consulter les prévisions météo de Clermont-Ferrand sur Yahoo :

wetboobs> forecasts 1
* 12 Feb 2012:    (-11°C - -4°C) Clear
* 13 Feb 2012:    (-1°C - 2°C) Partly Cloudy

Si on connait l'identifiant de la ville, on peut tout faire en une commande :

$ wetboobs forecasts 586242@yahoo
* 12 Feb 2012:    (-11°C - -4°C) Clear
* 13 Feb 2012:    (-1°C - 2°C) Partly Cloudy


Et tout le reste...


Il ne s'agit que d'un rapide apperçu, weboob contient de nombreuses applications et backends. Vous pourrez approfondir la question directement sur leur site.


Posté par St3rk | permalien
- - - -

2012-01-29 15:40

C'EST-Y@home

bannière C'EST-Y@home


Un petit coup de pub pour le projet C'EST-Y@home, projet de recherche d'un intelligence extra-terrestre auvergnat.


Posté par St3rk | permalien
- - - -

2011-12-31 14:50

Vim et les dictionnaires en Français

logo vim

Bon, je dois me confesser. J'hésite actuellement à passer de Vim (l'éditeur de texte, pas l'expert en ventilation) à Emacs, pour profiter de Org Mode. J'utilise pour l'instant Taskwarrior, qui semble beaucoup moins ergonomique.

En attendant de me faire pousser des doigts pour enchainer avec fluidité les "ctrl + c", "ctrl + n", "ctrl + machin", "ctrl + truc", et aussi parce que Vim c'est cool, je repousse le moment où je devrai tout réapprendre.

Et parmi toutes les features super cool, il y a la correction orthographique. Ajouter dans le fichier ~/.vimrc la ligne :

setlocal spelllang=fr

Il suffit maintenant de rentrer la commande suivante dans Vim :

:set spell

Et hop, tous les mots incorrects sont surlignés en rouge.

Sauf que parfois, lors de la première utilisation, au lieu de télécharger les dictionnaires automatiquement Vim affiche beau message d'erreur :

Alerte : Liste de mots "fr.utf-8.spl" ou "fr.ascii.spl" introuvable

Pas grave, il suffit de les télécharger à la main :

# cd /usr/share/vim/vim73/spell/
# wget http://ftp.vim.org/pub/vim/runtime/spell/fr.utf-8.spl
# wget http://ftp.vim.org/pub/vim/runtime/spell/fr.utf-8.sug


Posté par St3rk | permalien
- - - -

2011-12-10 23:28

Installer TinyOS sous Debian Squeeze

logo TinyOS

Plus un pense bête qu'un réel article, voici comment installer TinyOS et ses différents outils pour travailler sur des cartes TelosB. On installera également les outils pour les cartes MICAz, car c'est la seule architecture supportée par le simulateur TOSSIM.

Ajouter le dépôt suivant dans /etc/apt/sources.list :

# TinyOS
deb http://tinyprod.net/debian-dev squeeze main

Mettre à jour les dépôts et installer les paquets nécessaires :

# aptitude update
# aptitude install subversion automake gcc g++ python-dev nesc msp430-tinyos avr-tinyos

Récupérer les derniers outils sur le dépôt subversion, et les compiler :

$ mkdir ~/local
$ cd ~/local
$ svn checkout http://tinyos-main.googlecode.com/svn/trunk/ tinyos-2.x
$ cd ~/local/tinyos-2.x/tools/
$ ./Bootstrap
$ ./configure --prefix=$HOME/local/tinyos-2.x/local
$ make
$ make install

Ajouter les variables d'environnement qui vont bien à la fin du fichier ~/.bashrc :

export PATH=$HOME/local/tinyos-2.x/local/bin:$PATH
export TOSROOT=$HOME/local/tinyos-2.x
export TOSDIR=$TOSROOT/tos
export MAKERULES=$TOSROOT/support/make/Makerules
export CLASSPATH=$TOSROOT/support/sdk/java/tinyos.jar:.
export PYTHONPATH=.:$TOSROOT/support/sdk/python:$PYTHONPATH
export PATH=$TOSROOT/support/sdk/c:$PATH

Sourcer le ~/.bashrc afin de prendre en compte immédiatement ces variables d'environnement :

$ source ~/.bashrc

Tester que tout s'est bien déroulé, et que la compilation se déroule correctement. Commençons par nous rendre dans un répertoire contenant les sources d'un programme :

$ cd $TOSROOT/apps/Blink

Puis testons la compilation pour les TelosB :

$ make telosb

Si aucune erreur ne s'est produite, on obtient la dernière ligne devrait être la suivante :

writing TOS image

Enfin la compilation pour TOSSIM :

$ make micaz sim

La dernière ligne doit être la suivante :

*** Successfully built micaz TOSSIM library.

Cool, tout s'est bien déroulé ;-)

À noter que cette installation ne sera utilisable que par l'utilisateur courant, mais elle a le mérite de ne pas "pourrir" le système.


Posté par St3rk | permalien
- - - -

2011-12-08 18:55

Le Sagem Spiga sous Debian Squeeze (partie 1)

photo spiga

J'ai acquis récemment un Sagem Spiga. J'en rêvais à sa sortie, mais les 500€ demandés me paraissaient excessifs par rapport au matériel embarqué. J'aurai donc attendu deux ans, et l'offre vente privée, pour le trouver à un prix raisonnable. Et je suis content de mon achat : la finition est correcte, l'autonomie comparable à celle annoncée, et il rentre bien dans ma poche de jean. Même mon 12" parait énorme à côté :-)

Étant donné le matériel exotique de cet ordinateur (Intel GMA500 pour le GPU, Marvell 8686 pour le wifi), j'avais un peu peur de côté "pochette surprise". Voici donc un récapitulatif de ce qui fonctionne aujourd'hui sous Debian Squeeze, et quelques astuces sur la manière d'y parvenir.


Choisir le périphérique sur lequel booter


C'est tout bête, mais j'ai mis un moment avant de trouver comment faire, la manipulation n'étant pas expliqué dans la notice. La combinaison magique est "Fn + o", soit F11. On peut ensuite booter sur un périphérique USB (clef USB/disque dur/lecteur de CD-rom externe).


Faire fonctionner le WIFI


Première étape, obtenir une connexion internet. Étant donné l'absence de port RJ45, il n'y a pas d'alternative : le WIFI doit fonctionner. Heureusement, un pilote (assez buggé) existe. L'utilisation d'un gestionnaire de connexion (comme wicd ou network-manager) entraîne un crash du système. Il faudra donc utiliser Wireless Tools, et éventuellement wpa_supplicant.

L'installation est assez facile. Commençons par télécharger l'archive dont on a besoin sur le site de marvell. Pour cela, sélectionnons la plate-forme "Linux 2.6 - fedora", puis le driver nommé "SD-8686-LINUX26-SYSKT-9.70.3.p24-26409.P45-GPL".

Une fois cette archive extraite, on remarque qu'elle en contient deux autres, dont une nommée "SD-8686-FEDORA26FC6-SYSKT-GPL-9.70.3.p24-26409.P45.tar". C'est cette dernière qui nous sera utile, et qu'il faut de nouveau extraire. On obtient alors un dossier "FwImage" contenant deux fichier : helper_sd.bin et sd8686.bin. Renommer helper_sd.bin en sd8686_helper.bin. Copier ensuite sd8686.bin et sd8686_helper.bin dans le dossier /lib/firmware du spiga.

Le module doit maintenant être chargé, à l'aide de la commande suivante :

# modprobe libertas_sdio

On devrait voir apparaître une nouvelle interface nommé wlan0 :

# iwconfig 
lo        no wireless extensions.

pan0      no wireless extensions.

wlan0     IEEE 802.11b/g  ESSID:""  
          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated   
          Bit Rate:0 kb/s   Tx-Power=15 dBm   
          Retry short limit:8   RTS thr=2347 B   Fragment thr=2346 B   
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

On peut démarrer l'interface et vérifier son fonctionnement :

# ifconfig wlan0 up
# iwlist wlan0 scan
wlan0     Scan completed :
          Cell 01 - Address: 00:03:52:xx:xx:xx
                    ESSID:"Auversup sans fil"
                    Mode:Managed
                    Frequency:2.437 GHz (Channel 6)
                    Quality=41/100  Signal level=-89 dBm  Noise level=-96 dBm
                    Encryption key:off
                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
                              9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
                              48 Mb/s; 54 Mb/s
          Cell 02 - Address: 00:03:52:xx:xx:xx
                    ESSID:"eduroam"
                    Mode:Managed
                    Frequency:2.437 GHz (Channel 6)
                    Quality=41/100  Signal level=-89 dBm  Noise level=-96 dBm
                    Encryption key:on
                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
                              9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
                              48 Mb/s; 54 Mb/s
                    IE: WPA Version 1
                        Group Cipher : TKIP
                        Pairwise Ciphers (1) : TKIP
                        Authentication Suites (1) : 802.1x
                    IE: IEEE 802.11i/WPA2 Version 1
                        Group Cipher : TKIP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : 802.1x

On voit ici que notre carte détecte deux hotspot. Pour se connecter à "Auversup sans fil", nous allons utiliser les outils iwconfig et dhcpcd :

# iwconfig wlan0 essid "Auversup sans fil"
# dhcpcd wlan0

Dans le cas où on souhaite se connecter à un réseau crypté par WPA, il faudra utiliser l'outils wpa_supplicant. Les gestionnaires de connexion, bien plus ergonomiques, font malheureusement crasher le système.


Configurer l'écran et le clavier


Le wifi est maintenant fonctionnel, mais il reste deux problèmes à régler rapidement :
- l'écran tactile est mal supporté, chaque contact est interprété comme un clic. Chaque mouvement du curseur entraîne donc des "drag and drop".
- la touche "m" est mal reconnue, et le mapping est plus que perfectible


Désactiver le clic au contact de l'écran

On utilise xinput, afin de remapper le clic gauche de l'écran tactile (reconnu comme une souris) sur une action qui n'existe pas :

xinput set-button-map 12 12 12 12 4 5 6 7 8 9 10 11 12

Après avoir exécuté cette commande, nous n'avons plus de moyen de cliquer. Nous allons donc remapper une touche du clavier comme étant le clic gauche :

xmodmap -e "keycode 133 = Pointer_Button1 Pointer_Button3"

Le touche "windows" fera maintenant office de clic gauche, et la combinaison "shift + windows" de clic droit. Mais pour cela, il faut activer l'émulation du clic grâce au clavier avec les commandes suivantes :

xkbset m
xkbset exp =m


Remapper les autres touches

On peut ensuite remapper quelques touches :

xmodmap -e "keycode 58 = m M m M exclam"
xmodmap -e "keycode 47 = comma question comma question parenright"
xmodmap -e "keycode 59 = semicolon period semicolon period bracketright"
xmodmap -e "keycode 46 = l L l L dollar"
xmodmap -e "keycode 44 = j J j J less"
xmodmap -e "keycode 45 = k K k K greater"

Ces lignes permettent :
- de remapper "m" sur la bonne touche, et d'attribuer "!" à la combinaison "alt-gr + m"
- de ramapper "," "?" et ")" sur la touche "$"
- d'obtenir "$" avec la combinaison de touches "alt-gr + l"
- d'obtenir "<" avec la combinaison de touches "alt-gr + j"
- d'obtenir ">" avec la combinaison de touches "alt-gr + k"

La touche reconnue comme alt-gr est celle comportant une petite maison. Ces réglages peuvent bien entendu être modifiés comme bon vous semble.

MAJ : le pilote eGalax semble maintenant fonctionner correctement. On peut le trouver ici.

Il suffit de le décompresser et d'exécuter setup.sh. La calibration de fait ensuite à l'aide de l'utilitaire eGalaxTouch.


Posté par St3rk | permalien
- - - -