\footnote{}

Aller au contenu | Aller au menu | Aller à la recherche

vendredi, août 13 2010

LPOTM (LaTeX package of the moment) : todonotes

Petit package fort utile lors de la rédaction de documents en LaTeX[1] : todonotes (inclu dans texlive-latex-extra).

Il permet d’ajouter des bulles en marge difficiles à louper lors de la relecture et de générer également un listing de “todonotes“ :

todonotes_1.png

Pour générer cette note, la commande \todo{Texte} suffit. Et \listoftodos permettra d’afficher une table des choses restantes à faire (forcément déprimante). Point intéressant : on peut lui demander de respecter l’option “draft” de documentclass. Ainsi les notes et listes de notes n’apparaitront qu’en mode “draft” mais pas en mode “final”.

Un petit problème de placement dans la marge peut apparaître (ligne partant dans le mauvais sens, ça a été mon cas), mais comme l’indique l’auteur cela peut être réglé avec \setlength{\marginparwidth}{2cm} en attendant une évolution du package (assez récent).

Ressources :

Notes

[1] tu dois apprendre LaTeX jeune, c’est le bien !

mardi, mai 4 2010

Écran noir après mise à jour vers Ubuntu 10.04

Comme après environ chaque mise à jour majeure, quelque soit la distribution ou la machine concernée, je me suis retrouvé hier face à une démission pure et simple du chipset graphique. Cette fois ci cela s’est traduit par un écran noir juste après la séquence de préchargement, et avant la fenêtre de login.

En général il y a autant de causes et de solutions que de personnes, donc je ne parlerai que de mon cas : un Thinkpad X40[1] avec un chipset graphique Intel.

Il se trouve que si l’on démarre en mode recovery (via le grub), on possède la possibilité de démarrer dans un mode failsafe et notamment dans un mode graphique “de secours”, vu que le Thinkpad ne possède pas franchement de grandes capacités graphiques (mort aux cons qui pensent qu’un pc n’est fait que pour les jeux vidéos), ce mode de secours est strictement identique au mode “normal”, du moins de ce que j’en ai vu.

Si ce mode “failsafe graphics” fonctionne correctement, il vous suffit alors d’ouvrir une console en root, puis

cp /etc/X11/xorg.conf.failsafe /etc/X11/xorg.conf

et de redémarrer !

Notes

[1] probablement le meilleur laptop au monde

samedi, mai 1 2010

DAS: Request for bug reports

das_logo.png

I’ve been warned a few weeks ago (many actually…) of a problem with DAS : the extension was able to catch the name of a song played on Deezer and to display it on the status bar, but not to send it to Last.fm. I checked myself and faced the same problem, however I couldn’t find the time to figure out what happened (although it is a matter of minutes) at that time.

Now, as I wanted to (finally) fix this, I was surprised to see that it’s working again (I checked on two distinct machines). Last.fm people are currently working on the API so perhaps a change made my calls go wrong for a while… Anyway, if you still have a problem with the communication to Last.fm (or anything else) : please send me a mail describing what happen or don’t happen (including DAS-related messages in Firefox’s error console).

A word about that : please do not write some kind of bug report/request on the extension’s page on AMO : I don’t receive them as mail, I don’t go check the reviews and most of all, it is not the right place to do so.
Instead, please write directly to gliss-at-acadis-dot-org instead or (better) fill a detailed bug report on the repository at Github : http://github.com/gliss/das/issues.

I must admit also that I almost don’t use Deezer anymore so I am not aware of the problems by myself. Besides, as living in Canada, I don’t have access to many sites like Jiwa.fm. I am mainly and massively using Grooveshark.com which is (in my opinion) way better than Deezer… along with the classical channel at Radio-Canada.
The best way of scrobbling Grooveshark would be to parse the “recently played” RSS feed if you have an account, however I don’t think it should take place in a Firefox extension, a small daemon or even a webapp would do better and much simpler. If there is another way that integrates well in DAS, well, I’ll let you know !

lundi, mars 8 2010

Amalgames

Internet, logiciels libres, autant de sujets propices à de grandes confusions, plus ou moins mises en scènes par les médias et les hommes politique. Quelques précisions sur des amalgames courants (mon avis n’engageant bien entendu que moi) :

  • Les partisans du logiciel libre ne souhaitent pas (tous) la mort du logiciel propriétaire. La première des raisons est que beaucoup en vivent. Et à l’inverse les grandes entreprises de logiciel propriétaire sont des acteurs majeurs du développement libre, que ce soit en financement (dons, prestation technique gratuite comme l’hébergement) soit en contribuant directement (75% des apports au noyau Linux le sont par des entreprises telles que Red Hat, Intel, IBM…). Les deux mondes sont irrémédiablement amenés à coexister et à s’entraider ;
  • En revanche, les partisans du libre souhaitent la mort des formats de données propriétaires. Et c’est très différent puisqu’il ne s’agit plus de vouloir accéder au code source d’un logiciel réalisé par une entreprise, mais d’avoir le contrôle de nos propres données. Si j’ai fait ma comptabilité avec un outil X et que je me rend compte que l’outil Y me correspondrait mieux, je dois avoir la possibilité de changer : la saine concurrence entre des logiciels doit se faire sur leurs qualités intrinsèques, elle ne doit pas être biaisée par un emprisonnement de l’utilisateur ;
  • Combattre les lois telles qu’Hadopi n’est pas cautionner le téléchargement illégal. Le téléchargement illégal, quelque soit le bien concerné, est un problème, il ne doit cependant pas servir de prétexte idéal à l’instauration de loi conçues sans aucune réflexion et votées avec encore moins. Comme l’explique très bien l‘excellentissime Benjamin Bayard dans son article sur la neutralité d’Internet[1], Internet est une nouvelle place publique, donc un nouveau lieu propice aux dérives, envers laquelle les gouvernements ne savent pas comment réagir, mais « chercher à régler des comportements illégaux par une atteinte à la neutralité du réseau, c’est demander aux sidérurgistes de fabriquer de l’acier qui ne peut pas faire une lame de couteau qui puisse assassiner les gens. Idiot, et irréaliste. » ;

  • Combattre les lois telles que Loppsi n’est pas s’opposer à la fermeture des sites illégaux. Un site peut tout à fait être illégal par les lois actuelles, que ce soient les sites pédopornographiques, révisionnistes, ou bien ceux proposant activement des fichiers manifestement piratés. Ces sites doivent être fermés dès lors qu’ils enfreignent la loi, mais ils doivent l’être sur ordonnance d’un juge, et non sur par le biais d’une moulinette automatique payée par un gouvernement quel qu’il soit[2].
    De même que le point précédent, la méconnaissance des technologies par les politiques (on ne peut pas reprocher à quelqu’un de ne pas être expert en tout… tant qu’il se renseigne auprès de personnes compétentes avant d’aller balancer des âneries en conférence de presse) amène à une automatisation (et une déjudiciarisation) de la justice contre laquelle se battent les associations telles que l’April ou la Quadrature du Net ;
  • L’April, la Quadrature, etc, ne sont pas un autre lobby. (on parlera plutôt d‘advocacy) Un lobby représente les intérêts d’entreprises, et l’intérêt d’une entreprise, c’est de faire de l’argent. Un lobbyiste va donc faire pression sur les instances dirigeantes de manière a obtenir les conditions pour que son entreprise puisse dégager le maximum d’argent. Parmi les lobbyistes connus, citons par exemple Frédéric Lefebvre, dont le parcours politique ne saurait en aucun cas entrer en conflit avec cette activité, bien entendu, puisqu’on vous le dit. À l’inverse ou presque, les groupes tels que l’April n’agissent pas pour leur intérêt propre, et encore moins dans un but commercial. Au même titre que l’UFC-Que Choisir ou Greenpeace, ces associations militent pour la défense de valeurs et de principes au bénéfice de tous ;
  • Les geeks ne souhaitent pas forcément remplacer tout objet par un équivalent high-tech. Ils sont en grande majorité opposés aux machines de vote électronique car ils en connaissent les limites, opposés également aux fameux scanners corporels tant ils sont une atteinte à la vie privée (et il est tout autant scandaleux que les gens trouvent ça normal) et la plupart préfèrent un bon vieux livre papier aux ebooks en mauvais plastique.

Notes

[1] Pour ceux qui ne l’auraient pas encore vue, sa conférence sur “Qu’est ce qu’Internet” est un incontournable.

[2] Ce principe a fait l’objet d’un amendement de l’excellent Lionel Tardy (contre l’avis du gouvernement bien entendu).

lundi, septembre 21 2009

Disabling Google Analytics for tests/development in a nutshell

A very simple way to disable Google Analytics when you don’t want your visit to be registered (for instance when you’re working on your CSS or making a page with a template that embed the GA tracker) : just add a variable to load the tracker (or not) depending on the context :

Here’s my version :

<script type="text/javascript">
  var testmode=false;
  if(/taiste.acadis.org/.test(window.location.host)
      || /.*admin.*/.test(window.location.pathname)
      || /.*noga.*/.test(window.location.search)
      || /.*noga.*/.test(window.location.hash))
    testmode=true;


  if(!testmode){
    var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
    document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
   }
</script>
<script type="text/javascript">
 if(!testmode){
   try {
     var pageTracker = _gat._getTracker("...");
      ageTracker._trackPageview();
   } catch(err) {}
  }
</script>

Here, GA won’t be loaded for urls like example.com#noga, test.example.com and so on…

mercredi, septembre 9 2009

WPA-Enterprise sous Android

À l’heure actuelle, Android (version 1.5) ne supporte pas officiellement le WPA-Enterprise. Cependant, le wifi est géré sous Android par le logiciel wpa_supplicant :

Sur le téléphone :

# /system/bin/wpa_supplicant -v
wpa_supplicant v0.5.10

Sous Ubuntu 9.04 :

% /sbin/wpa_supplicant -v
wpa_supplicant v0.6.6

La bonne nouvelle est bien évidemment que wpa_supplicant étant le logiciel le plus utilisé sous Linux pour la gestion des communications Wifi, le WPA Enterprise est supporté depuis belle lurette jusque dans ses formes les plus pointues. En somme sur un téléphone sous Android, seule l’interface graphique semble manquer.

Grâce aux différents outils fournis dans le SDK on peut heureusement régler soi-même cette configuration suivant la documentation de wpa_supplicant

La méthode qui suit n’est pas de moi, on peut la trouver à divers endroits sur le net, je ne suis en revanche pas sûr qu’elle y soit en Français.

Hacker son téléphone, bien que ce soit marrant, est rarement apprécié par les opérateurs téléphoniques, rien ne garanti que la procédure qui suit fonctionnera pour vous, ni même qu’elle n’altérera pas le fonctionnement normal de votre appareil, ne vous lancez pas dans l’aventure si vous n’êtes pas sûr et/ou que vous ne comprenez pas ce qu’il se passe.

Lire la suite...

vendredi, août 7 2009

Le net en vacances avec WebSpot

Avis aux vieux geeks des familles qui souhaitent avoir Internet en vacances sur leur lieux de villégiature, si celui-ci vous propose un portail captif de la société WebSpot au tarif amical de 3€/h, celui-ci est aussi troué que la loi Hadopi, payez-vous donc une bière plutôt !

Ce branquignolesque portail ne s’adressant manifestement qu’à Mme Michu (la pauvre, déjà qu’elle sera la seule à pâtir de la loi sus-citée…), il n’y a même pas une bonne vieille sardine pour bloquer le port 22.

Ainsi donc après s’être assuré que le bon vieil et indispensable ssh volerait une fois de plus à notre secours, c’est BenC et Deadr0m1 qui viennent porter le coup de grâce : ben oui, si ssh+irssi, ssh+mutt, ssh+w3m ca lui suffit au geek, il peut avoir une famille, des vrais gens qui veulent aller voir leurs mails dans une page à boutons. Donc pour faire bénéficier votre navigateur ouaibe2.0 préféré du tunnel sous le manche :

  • faites sortir votre connexion vers un serveur relai :

ssh -l login -NCfD 1080 votreserveur.com

-N : connexion simple sans appel de shell ni rien
-C : compression des données
-f : exécution en arrière-plan
-D : port utilisé pour la redirection (ici 1080)

  • bindez votre navigateur avec le ssh : pour firefox, dans les préférences réseaux, inscrivez 127.0.0.1:1080 en proxy socks v5

Bien sûr, ce genre de gentillesses marchent probablement avec les portails captifs d’autres boites, n’hésitez pas à essayer :)

(Si même des sociétés « spécialisées » ne sont pas foutues de sécuriser leurs connexions… non pas la peine de vous dire ce que j’en pense, vous le savez déjà.)

samedi, août 1 2009

Say Hi! to DAS v0.2.1

Since the publication of DAS 0.2 last week, a lot of things changed at Deezer.com and I received a number of mails regarding the blackout of the extension. Unfortunately I was in holidays, far away from any stable Internet connection. Then I took a few hours this evening to fix all this mess, and you can now find DAS 0.2.1 on AMO.

The most noteworthy change from Deezer is that the communication between the player and their gateway is now JSON-based, the format is easily readable and seems to contain more informations.

I hope that it won’t change again in the few next months since, as I said earlier, I am moving to Montréal so it’ll be difficult to make any update. Please report any problem however ;)

mercredi, juillet 22 2009

DAS v0.2 is out !

A few hours ago, I released the 0.2 version of DAS. I made official the support of Firefox 3.5 despite it was actually already working (but Firefox reject the extension as long as it’s not clearly specified), and the most important, I replaced the Deezer-v2 behavior with a v3-compliant one.

However, I have to apologize because this version has been made in a hurry. First of all, I am moving to Canada, and I may have no Internet access for a month or two, starting … tomorrow ! Additionally, since today, Deezer.com forces the use of its V3, then a compatible addon was compulsory. Anyway, it is working, but not the way I intended to, since I wanted to make some major changes in the code, in particular to support multiple grabbers et scrobblers.
You may notice something quite disturbing: the statusbar is updated only after about 35 sec after the song began. Actually, the HTTP transaction I am parsing to find out what is playing occurs in Deezer3 after a bunch of others, whereas it was at the very beginning before. But now, the title of your Firefox window changes to reflect the song played, and immediately, then I’ll try to use this behavior in the future (despite I still haven’t found any event thrown at a title change).

You’ll find this version on AMO as usual. It is still labeled as experimental, I’ll request a code review for the next version.

Have fun ;)

PS: for the few ones interested, here is an example of the server<->player communication catched :

 (dump has been moved to http://p.acadis.org/iHPSFXmM/ since special chars were breaking RSS feeds)

lundi, juin 8 2009

HTC Magic & Android - Semaine +1

Ca faisait longtemps que je lorgnais Android et que je me demandais quand enfin nos gentils opérateurs préférés(c) allaient sortir un téléphone portable sous cet OS. A cette heure, Orange propose le HTC G1 - Dream, et SFR le HTC G2 - Magic, c’est ce dernier que j’ai entre mes ptites mimines depuis une semaine.

Lire la suite...

dimanche, mai 24 2009

DAS - a Deezer to Last.fm compatibility bridge

If, like me, you used Last.fm quite often to… well basically know what you listen and discover other things to listen but you are know more using streaming platforms like Deezer.com than regular music players, you may regret that there is still no compatibility between theses.

Then if you want an up-to-date Last.fm profile while using Deezer I may have something for you.

Lire la suite...

vendredi, mai 15 2009

Partage des médias avec la Freebox par UPnP

Depuis la dernière maj du firmware de la Freebox (le 14/05/2009), il est extrêmement simple de partager des dossiers entiers de médias avec sa Freebox grâce au protocole UPnP. Cela permet de s’affranchir du Freeplayer et notamment de pouvoir mettre en place ces partages depuis autant de machines que l’on souhaite. Il faudra pour cela installer sur sa machine un petit serveur UPnP, comme uShare ci-dessous.

Lire la suite...

lundi, mai 11 2009

Rendez votre serveur utile avec BOINC

Chez les étudiants en informatique, nombreux sont ceux qui possèdent un (voire plusieurs) serveurs personels. Dans la quasi-totalité des cas, celui-ci est largement surdimensionné, les besoins pour servir quelques pages web, du FTP, au mieux un serveur mail sont effet très modestes par rapport à la moins puissante des machines en vente dans le commerce. Mais le but est plus pédagogique qu’autre chose, il s’agit surtout de se faire la main et de pouvoir tester ses compétences sur une “vraie” machine.

Lire la suite...

lundi, janvier 5 2009

SVN hook pour IRC avec ii

L’idée est venue à la lecture d’un document de Thomas Petazzoni sur le contrôle de version et plus particulièrement SVN rédigé pour une de ses interventions[1]. À la fin de celui-ci, un graphe évoque les interactions possibles avec les autres composantes du monde du développement et d’Internet, et entre autres … IRC ! Bon sang mais c’est bien sûr ! Et si plutôt que d’encombrer nos boites mails lorsque l’on sait qu’un dépôt aura une activité importante et qu’on ne prendrai pas le temps de lire les messages et les commit-logs, et si nous allions pourrir un channel IRC ? c’est quand même plus propre.

Pour cela, il nous faut un hook de post-commit qui va interagir avec un client IRC. Nous avons donc besoin un client adapté à l’écriture de scripts. Irssi étant plutôt du genre usine à gaz pour une telle utilisation (même si c’est un client aussi léger qu’excellent pour une utilisation “humaine”). La médaille revient ici à Colin, l’homme qui n’utilise rien comme tout le monde et qui nous sort de derrière les fagots : ii !

Ii (pour IRC IT) est un client IRC plus que léger avec des vrais morceaux de pipe dedans. Il présente en effet pour seule interface deux tubes : in et out. Pour poster sur IRC, il suffit d’écrire dans le premier, pour lire… et bien il suffit de lire le second ! (un tail -f suffira pour tester, nous n’avons pas l’intention de nous en servir comme d’un vrai client).

Commencez donc par récupérer ii, un tarball est dispo sur la page du programme (je n’ai pas trouvé de version packagée pour apt) et l’installer par un classique #make install.

Pour causer parler dans l’poste il faut bien entendu lancer ii (taper $ii tout court pour avoir le détail des options); ici, ~/ircpipe est un répertoire qui contiendra les tubes que va créer ii :

$ii -i ~/ircpipe -s irc.example.org -p 6667 -n svnbot

Pour des problèmes de droit il faudra lancer cette commande et les suivantes avec l’utilisateur qui va exécuter le hook script, certainement www-data

Un dossier irc.example.org/ apparait contenant les fameux tubes in et out. Rejoignons à présent un canal (on peut tout à fait utiliser des messages privés, un canal vous sera utile si vous souhaitez faire d’autres bots, par exemple pour vous alerter de l’arrivée d’un mail) :

$echo "/j #svnlog" > ~/ircpipe/irc.example.org/in

Un dossier similaire irc.example.org/#svnlog apparait, tentez donc un ptit

$echo "yeah baby !" > ~/ircpipe/irc.example.org/#svnlog/in

et regardez ce qui apparait dans votre client IRC :

12:30 < svnbot> yeah baby !

On est donc en mesure d’écrire sur IRC avec une simple commande echo, la mise en oeuvre du hook sera donc simple et on va la faire au sein d’un petit script Python pour que ce soit plus propre :

#!/usr/bin/env python
# -*- coding: utf-8 -*-

# SVN-IRC hook script
from os import popen, system
import sys

chanpipe = "/tmp/ircpipe/irc.rezosup.org/#alertchan/in"

# recuperation des infos que l on veut balancer
repos = sys.argv[1]
rev = sys.argv[2]
author = popen("svnlook author "+repos).read().strip()
repname = repos.split('/')[-1:][0]

msg = "new commit from "+author+" on "+repname+" (rev. "+rev+")"

system("echo '"+msg+"' > "+chanpipe)

Il serait bien sur plus élégant de communiquer directement avec le tube depuis le script sans passer par echo mais mes quelques tentatives n’ont pas abouties, pas d’erreur, mais pas de message dans mon client non plus.

Et voici en tout cas ce qui apparait lors d’un commit :

< svnbot> new commit from gliss on acadis.org (rev. 137)

On pourra gruicker des messages plus complets grâce notamment à la commande svnlook, sorte de version ‘serveur’ de svn info, voire écouter le fichier /out pour interagir avec l’utilisateur, mais le hook script étant du one shot il faudra changer pas mal de trucs.

Et tant qu’à se faire un canal IRC perso, autant utiliser ii pour un watchdog mail/rss/système… :)

UPDATE : Je viens de voir ici que chez Last.fm, ils font tout ce bazar avec netcat :

Using netcat, you can easily send events to irc from shell scripts:

$ echo “Something just happened” | nc -q0 somemachine 12345

[…]

Some of the things we automatically send to appropriate IRC channels:
* SVN commits
* JIRA issue tracker updates
* Nagios alerts for monitored hosts and services
* Deployment notices to testing/staging/production
* Results of automated tests if something bad happens
* Links to pics from security camfeed when someone opens the office door out of hours

Notes

[1] http://thomas.enix.org/Blog-20090108160803-Technologie

mardi, septembre 11 2007

Vista compatible drivers for VT6421 [Amilo 3438g]

Here's a copy of the message[1] I wrote a year ago on the Via board. The problem is I couldn't install Windows Vista on my Fujistu-Siemens laptop because of the lack of the raid controller driver - a Via VT6421. As a result, the installation program simply couldn't find any hard drive to be used.

The driver needed is the V-RAID v5.04A (or later probably)
here's the the one I used for my laptop : http://www.acadis.org/files/VRAID_D...

You'll get a zip file, just extract it on a USB stick, when the installation program of Vista won't find your hdd, select 'load driver', then the usb stick, and the folder "VRAID.../drvdisk/i386/NT5/", then it should find the driver, and the harddrives.
It seems that there is some activity on the key during the whole installation process (according the the LED) so to be sure, don't remove it before Windows is entirely installed (the last reboot)