Geek-Time
La bidouille, les trucs de geeks, c’est le Geek-Time.
GNU/Linux : message d’avertissement au login avec Zenity.
24/12/11

J’ai dû, dans le cadre de mon travail, mettre en place un message d’avertissement à chaque login sur nos ordinateurs équipés d’Ubuntu 10.04. (Alors oui, aujourd’hui on oublie Windows 8, j’étais à deux doigts de recevoir des menaces de mort.
)
J’ai immédiatement pensé à Zenity pour créer facilement une fenêtre GTK+. Une ligne de commande (à la syntaxe parfaitement compréhensible) suffit pour afficher une fenêtre avec le message en question et un bouton OK. Cela correspondait donc parfaitement à ce que je recherchais.
Il peut en effet être utile de préciser à chaque ouverture de session quelques consignes que chaque utilisateur se doit de respecter. C’est le cas dans les entreprises et les administrations.
Dans le cas présent (système GNU/Linux), chaque ordinateur s’apprêtait à rejoindre le parc informatique. Les authentifications se font à distance, créant ainsi un répertoire /home/prenom.nom
Il fallait que pour chaque utilisateur un script s’exécute et affiche l’avertissement. Et ce, ensuite, à chaque login.
Pour cela, il faut (en admettant que vous disposez d’un accès root, c’est mieux !) aller voir dans /etc/skel. C’est là où se définissent les paramètres qui vont affecter chaque nouvel utilisateur créé.
Il s’agit de créer un fichier, que j’appellerai zenity.desktop, qui sera placé dans /etc/skel/.config/autostart/ (et qui apparaîtra ensuite dans chaque /home/$USER/.config/autostart lors de la création de l’utilisateur)
Le contenu du fichier zenity.desktop :
[Desktop Entry]
Type=Application Exec=zenity --info --text="À PARAMÉTRER EN FONCTION"
Hidden=false
NoDisplay=false
X-GNOME-Autostart-enabled=true
Name[fr_FR]=Avertissement
Name=Avertissement
Comment[fr_FR]=
Comment=
Ainsi, tout nouvel utilisateur verra apparaître à chaque login une fenêtre d’avertissement dont le texte est défini dans –text=.
Et, vous vous en doutez, ce genre de « pop-up » va passablement agacer vos utilisateurs. Et ça, ça n’a pas de prix ! ![]()

Allez, pour le plaisir ! Enjoy ! ![]()
Windows 8 : Japonais et majuscules accentuées.
18/12/11

Lorsque j’ai décidé d’essayer Windows 8, je savais que deux choses allaient cruellement me manquer : le support de la langue japonaise (j’avais un peu peur de trouver un IME de piètre qualité) et les majuscules accentuées, si faciles à réaliser sous GNU/Linux.
Pour le support du japonais, j’ai été agréablement surpris : j’ai pu retrouver mes raccourcis claviers fétiches et un IME plus que correct. Il suffit d’ajouter le japonais puis libre à nous de configurer l’IME comme bon nous semble… fantastique. ![]()

Allez mon p’tit, j’veux du jap !

C’est pas si dur en fait…
Seul bémol : une fois en japonais, on se retrouve avec un agencement en QWERTY. Rassurez-vous, il y a une bidouille pour ça.
Ouvrez regedit (en admin si vous avez appliqué le conseil du précédent billet), et rendez-vous dans HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\00000411

Et on met KBDFR.DLL… hourra !
Quant aux majuscules accentuées, venons-en ! J’ai découvert un fabuleux petit programme. Ça vient de chez soft.translator.free.fr. Une fois installé, sélectionnez « Français avec accents espagnols » (comme sur l’image ci-dessus), et à vous un agencement (presque) similaire à celui des GNU/Linux. ![]()
Deux articles en une journée, c’est décidé : je vais me coucher !
N.B : J’ai longuement galéré avant de parvenir à mes fins. J’espère que tout cela vous sera utile.
Windows 8 : Principe de sécurité…
18/12/11

Voilà un titre qui va faire hurler les plus libristes d’entre vous ! À ceux là je dis : « Les guéguerres entre libre/pas libre, Windows/Linux, c’est drôle quand on a 16 ans. Sachons garder l’esprit ouvert. »
J’utilise depuis quelques semaines Windows 8 Developer Preview. La machine sur laquelle est installé l’OS tourne non-stop et le moins que je puisse dire, c’est que cette version est d’une stabilité étonnante. Je me surprends à tenir de pareils propos, alors que je suis « divorcé » de Windows depuis 5 ans maintenant.
Le but de cet article est de vous sensibiliser à un principe élémentaire de sécurité trop souvent oublié et pourtant très simple à mettre en oeuvre. D’ailleurs, il faudrait que Microsoft applique ce principe à l’installation de l’OS, il est anormal qu’aujourd’hui ce ne soit pas le cas !
Venons-en au fait. Votre compte utilisateur courant a-t-il les pleins pouvoirs ? Si oui, c’est problématique. S’il est un précepte à suivre sur un système GNU/Linux, c’est bien de ne pas être administrateur avec sa session « de tous les jours ». Voyons donc comment remettre un peu d’ordre dans tout cela…
Sur le poste de travail (ou « Computer », puisque cette mouture n’est pas en français), clic droit -> gérer (ou « Manage »).
À faire : clic droit sur Administrator -> Propriétés. Décocher « Ce compte est désactivé », fermer la boîte de dialogue. De nouveau clic droit -> Définir le mot de passe. Un reboot pour la forme, et c’est désormais terminé.
Bien sûr, vous connaissez Windows, nous ne sommes pas en droit de se sentir protégé avec si peu. C’est toutefois toujours bon à prendre.
Bref, je suis désormais ce Windows de près, car il est pour l’instant prometteur. Même si l’interface Metro est d’une utilité toute relative (voire même inutile) sur un PC de bureau classique, je suis plutôt satisfait des efforts réalisés.
Les 100 commandes Vim indispensables à ta (sur)vie.
27/11/11

Vi (ou Vim, au choix), est incontestablement l’éditeur de texte le plus abouti et accessoirement le meilleur atout de tout programmeur (ou simplement de toute personne se voulant productive lorsqu’elle travaille avec du texte). Toutefois, force est de constater que la cheat sheet (ou feuille de triche) se révèle être une alliée de choix dans l’exercice quotidien.
En bon prince que je suis, je vais donc arrêter de troller (c’était juste pour faire râler les utilisateurs d’Emacs) et vous donner un petit lien qui vous montrera (si vous n’êtes pas convaincu) à quel point cette petite perle datant des seventies peut se révéler diablement efficace.
P.S : Inutile de fermer ton gEdit, t’es grillé. P’tit joueur va ! ![]()
Au boulot, j’ai déjà préparé le poisson d’avril !
1/10/11

C’est en bossant sur un script bash d’automatisation des tâches que m’est venue l’idée d’un petit script rigolo à exécuter le premier avril pour jeter un vent de panique similaire à celui qui souffle sur les bourses en ce moment. Avec la garantie de saturer nos postes téléphoniques… ![]()
#!/bin/bash
# Var à 1 pour une infinite loop !
var=1
# Variable ligne qui s'incrémentera
# Pour aller chercher le hostname suivant
line=1
# On récupère le nombre de lignes du fichier
pc=$(wc -l ~/liste_pc | awk -F " " '{print $1}')
# On se prémunit. Si line devient égal à pc, on remet à 1 et c'est reparti !
# Puis le poisson d'avril en lui-même ^_^
while [[ $var = 1 ]] and [[ "$line" -le "$pc" ]]; do
ssh user@$(cat ~/liste_pc | sed -n ''$line'p') eject && eject -t
((line++))
if [[ "$line" -eq "$pc" ]]; then
line=1
fi
done
Désolé pour la coloration syntaxique partielle. J'explique.
Au boulot, nous avons tous les hostnames des machines qui équipent le parc informatique. Une fois tous ces noms enregistrés (à raison d'une machine par ligne) dans un fichier texte, il suffit d'exécuter le script pour automatiser une tâche.
Un poste maître désigné peut se connecter sans mot de passe préalable à l'ensemble des machines grâce à une authentification par clé SSH.
Dans le script présent, l'ossature reste la même... il n'y a que l'ordre donné qui diffère. On va lui demander d'ouvrir et fermer le lecteur CD continuellement. Le 1er avril sera le jour du soulèvement des machines !
N.B : Je ne suis pas expert en bash, mon script est loin d'être parfait.
AndroidVNC, couchpotato style !
8/05/11

Y a des jours où, bien calé au fond de son lit, on a pas envie d’y bouger, mais on a également la furieuse envie d’écouter de la musique et de pouvoir gérer sa playlist comme on l’entend.
Prenez votre mobile Android, et récupérez l’application AndroidVNC. Maintenant (c’est bien le problème), lancez les préférences de vino sur votre ordinateur (là, il va falloir se lever…sauf si c’est déjà fait).
$ vino-preferences
Réglez cela en fonction de vos préférences. Personnellement, disposant d’un accès WiFi sécurisé (et vivant dans un lieu où les risques d’intrusion sont plus que limités, oui, aussi), j’ai tout laissé ouvert. Ça me simplifie la vie.

Désormais, vous pouvez lancer l’application AndroidVNC. Depuis un mobile connecté en WiFi sur le réseau domestique, c’est très fluide avec une configuration en 64 couleurs.
Et voilà, piloter Rhythmbox (ou tout ce que vous voulez) à distance est désormais un jeu d’enfant ! Restez au lit, et enjoy ! ![]()

Désactiver les bips système sous Linux/BSD.
2/03/11

Les bips système, c’est geek, c’est chouette, mais ça peut vite devenir importunant lorsque l’on est pas seul. Pour le désactiver :
- GNU/Linux
# modprobe -r pcspkr# echo "blacklist pcspkr" >> /etc/modprobe.d/blacklist.conf/!\ N.B : Ne pas inscrire rmmod pcspkr dans /etc/rc.local comme l’indiquent certains sites. C’est un peu crade…
- BSD
# sysctl hw.syscons.bell=0# echo "hw.syscons.bell=0" >> /etc/sysctl.conf
System bell is geek, nice, but it may be quite disturbing when you’re not alone. To turn it off :
- GNU/Linux
# modprobe -r pcspkr# echo "blacklist pcspkr" >> /etc/modprobe.d/blacklist.conf/!\ N.B : Do not write rmmod pcspkr into /etc/rc.local as are advising some websites. It’s a bit dirty…
- BSD
# sysctl hw.syscons.bell=0# echo "hw.syscons.bell=0" >> /etc/sysctl.conf
Chrome : l’inexorable déclin de Firefox.
11/02/11

Avec une campagne marketing hyper-agressive et des bases solides (WebKit, projet Chromium), Google peut se vanter d’avoir fait de Chrome le navigateur de 2011. Avec une part de marché sans cesse grandissante (cf.graph en fin d’article) il s’est très rapidement fait une place auprès des deux grands belligérants que sont Internet Explorer et Mozilla Firefox.
Firefox, considéré comme le chevalier blanc (à juste titre) vient de détrôner Internet Explorer en devenant le navigateur le plus utilisé en Europe. Pourtant, Chrome, lui, ne fait pas d’ombre à mister IE. Il ronge les parts de Firefox. Pourquoi ?
- Firefox fait du surplace. Chrome innove.
On l’aura remarqué, Firefox ne progresse pas comme nous le voudrions. Il a ses lacunes et peine à les corriger. À défaut d’innover vraiment on découvre, dans la version 4 (encore en bêta) que l’interface de Chrome a été (honteusement ?) repompée. Là où l’OmniBox de Chrome se permet des « excentricités » avec le service de prédiction (tapez un nom connu pour voir…), Firefox pédale avec sa Awesome Bar qui n’est plus si « Awesome » que ça. (dommage, j’aimais bien le nom…)
Bref, on a la désagréable impression que Mozilla, en panne d’inspiration, tente de réduire l’écart tant bien que mal. Quant aux extensions, Chrome n’a plus grand chose à envier à Firefox.Pendant ce temps, chez Google, on avance vite et bien. Selon moi, le seul gros bémol reste le manque cruel de paramètres ajustables. Dans le cas présent, c’est Firefox qui reste devant. Toutefois, l’écart pourrait se resserrer assez rapidement…
- Mozilla nous jette de la poudre aux yeux.
Non content de décliner, Mozilla tente (maladroitement) de retenir les utilisateurs en nous promettant Firefox 7 cette année. Comment j’interprète ça ? Très simplement. Mozilla, si innovation(s) il y a, les répartira par version. Un peu dans chaque. Donc, plutôt que de nous servir une belle version 5, nous aurons des versions 5, 6 et 7 pas très chargées en nouveautés. De la course au chiffre, voilà tout.
- Un marketing diablement efficace de la part de Google.
Comme je le signalais en début d’article, Google a vraiment mis le paquet. Métros, gares, sites internet d’informations (Le Monde, Le Figaro), Google a matraqué et ciblé précisément les utilisateurs avec sa pub. (les utilisateurs de GNU/Linux ont pu admirer le « Télécharger Google Chrome pour Linux » sur fond de terminal et de cowsay. Très geek, n’est-ce pas ?)
Difficile de passer à côté…
Avons-nous quelque chose à craindre d’une domination ? Oui, bien sûr. Une stagnation de l’innovation, à l’image de ce que subit Mozilla. Adopter Chrome, est-ce une mauvaise solution ? Je ne pense pas, car la concurrence stimule l’innovation. Seule votre éthique pourrait éventuellement vous freiner. (Hégémonie Google et ce qui va avec)
Toutefois, gardons un œil sur Firefox et espérons une évolution positive. Avec l’arrivée d’un Internet Explorer 9 qui paraît prometteur (soulignons-le, c’est la première fois) et un Chrome dévastateur, les p’tits gars de Mozilla n’ont pas le choix : il va falloir mettre le paquet !

Zork : vous risquez d’être mangé par une grue !
8/01/11

S’il y a bien une relique de l’histoire des jeux vidéo que les jeunes (et moins jeunes) se doivent de connaître, c’est bien Zork.
Zork ? Je vous vois déjà vous gratter la tête en vous demandant de quoi je parle…(et je vois déjà les plus malins ouvrir un onglet pointant vers Wikipédia. Oui, vous êtes grillés.)
Zork, c’est un jeu textuel (c’est à dire qu’il n’y a aucun graphisme, c’est que du texte. On pourrait y jouer sur un vieux System V.) qui aujourd’hui encore a droit à son lot de clins d’œil de la part de séries et jeux vidéo récents. (Citons par exemple Chuck pour les séries et Call of Duty : Black Ops pour les jeux, où l’on peut trouver une version complète et jouable de Zork sur une console Unix, et qui vous donne gracieusement le succès « Mangé par une grue ».)
Oui car Zork, c’est le genre de jeu où votre personnage ne doit pas se balader dans les coins sombres sans lumière, sous risque de se faire manger par une grue (un monstre qui aime l’obscurité. Ce n’est ni un piaf, ni un engin de chantier).
Zork fut codé par quatre brillants étudiants du célèbre MIT avant le début des années 80 (aujourd’hui en abandonware, vous pouvez en profiter. Non, que dis-je…vous DEVEZ en profiter.) et qui a connu ses heures de gloire grâce à la naissance toute récente de l’Internet. (nom encore non officiel, c’était encore l’ARPANET à l’époque)
Comment ça marche ? Simplement. Un texte s’affiche décrivant la situation exacte de votre personnage (où il se trouve, ce qu’il y a, à qui il doit faire face). À vous d’écrire ce qu’il doit faire, l’interpréteur comprenant assez bien le langage humain. Exemples :
The terrible troll raises his sword.
>> Attack troll with nasty knife
>> Shit !
Oh, dear. Such language from a supposedly winning adventurer!
Convaincu ? Alors maintenant je vous propose de vous emparer de ce petit bijou et d’y jouer avec votre joli terminal (oui pour vous aussi, utilisateurs de Mac OS et Windows). La version ne porte pas le nom de Zork mais de Dungeon. Mais Dungeon est Zork, et vice-versa. Qu’attendez-vous ? Récupérez Zork et plus vite que ça !
Pour les utilisateurs de Linux/BSD, décompressez l’archive dans votre /home/user (dans mon exemple, le dossier est nommé Zork).
$ cd Zork/ && chmod +x dungeon
$ ./dungeon
Bon jeu ! (Ça y est vous pouvez vous la jouer, vous connaissez Zork ![]()
Bonus : Une petite émission (anglophobes, fuyez !) sur l’histoire de ce petit bijou.
Awesome WM et xset
4/12/10
Quand on utilise un WM autre que Gnome ou KDE, on dit au revoir aux GUI (pas souvent intuitives, ou alors vraiment inutiles) pour commencer à utiliser son terminal à bon escient.
Dans mon cas, je suis devenu utilisateur de awesome WM, un tiling WM vraiment sympathique. (il sera l’objet d’un article)
Sa configuration, écrite en LUA, permet d’exécuter des commandes systèmes lors de son démarrage. (un peu à la façon de .Xinitrc, .Xsession, ou du fichier startup de Fluxbox)
Le problème que j’ai rencontré, c’est la mise en veille de mon écran…lors de la lecture d’une vidéo. La solution, c’est d’utiliser xset. Comme je suis méchant, je désactive tout.
xset s off dpms 0 0 0
Second problème (cf. xset q), c’est que lorsque vous vous déconnectez, la configuration d’xset se réinitialise. Dans mon cas, il suffit d’ajouter une ligne au rc.lua d’awesome WM.
-- {{{ Désactiver l'écran de veille
os.execute("xset s off dpms 0 0 0 &")
-- }}}
When we’re using a WM other than Gnome or KDE, we say « bye » to GUI (not often intuitive, or really useless) to start using our terminal wisely.
In my case, I became a user of awesome WM, a tiling WM really nice. (It’ll be the subject of an article) Its configuration, written in LUA, permits to execute system commands when it starts. (like .Xinitrc, .Xsession, or the startup file of Fluxbox)
I met a problem : my screen turned off when I was playing a video. The solution is using xset. And as I’m a bad guy, I turned off all that stuff !
xset s off dpms 0 0 0
Problem #2 (cf. xset q). When you log out, you lose out. (and « When you buy more, you save more »)
xset configuration is reset. In my case, you just have to add a line into rc.lua of awesome WM.
-- {{{ Turn off standby.
os.execute("xset s off dpms 0 0 0 &")
-- }}}







