Premier enregistrement vocal

Bonjour,

Comme je l’avais déjà dit sur le Twitter, j’ai créé un enregistrement vocal, dans lequel je parle de sujets divers et variés. Cette fois-ci, je me présente et il est aussi question d’OilRush et de Pacman 4.0.1.

Donc, il est conseillé de l’écouter et d’éventuellement me dire, si vous avez aimé ou pas.

Rendez-vous ici pour l’écouter en ligne. Vous pouvez aussi le télécharger en cliquant sur ce lien.

Parties:

Début: Présentation

10’58: OilRush

14’04: Pacman 4.0.1

Liens utiles cités dans l’enregistrement:

OilRush:

Pacman:

A bientôt.

Convertir simplement ses M4A en MP3 via un script

En faisant un tri dans ~/Music, je me suis aperçu qu’un certain nombre de mes fichiers audio étaient en format M4A. Cela ne me plaisant pas trop et afin notamment d’uniformiser ma médiathèque, j’ai cherché une solution me permettant de les convertir en MP3. Seulement, je ne voulais pas perdre les tags ID3v2 associés.

Après avoir un peu parcouru la toile, je suis tombé sur un script de conversion conservant ces tags et basé sur les outils faad, lame et id3v2.

Je l’ai adapté à ma sauce afin notamment de supprimer les fichiers M4A originaux une fois la conversion effectuée. Lame n’étant pas optimisé pour les processeurs multicoeurs, l’opération de conversion peut prendre un certain temps en fonction du nombre de fichiers à convertir. Bref, il faut être patient.

Le script cherchant les fichiers M4A dans le dossier courant, il est préférable de le lancer à partir du dossier contenant votre collection de fichiers musicaux.

Alors oui, c’est du bash donc moche et lent mais je l’ai utilisé pour convertir pas moins d’une centaine de morceaux et j’ai été vraiment content du résultat. Bref, je partage car ça peut toujours servir.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#!/bin/bash
# converts m4a files to mp3
# song tags should be preserved

if ! which faad >/dev/null; then
  echo "faad executable not found." >&2;
  exit 1;
fi
if ! which lame >/dev/null; then
  echo "lame executable not found." >&2;
  exit 1;
fi
if ! which id3v2 >/dev/null; then
  echo "id3v2 executable not found." >&2;
  exit 1;
fi

echo -n "Delete m4a file(s) after conversion?(y/n) "
read yn
case $yn in
  y|yes)
      echo -e "All right $USER, m4a files will be removed."
      del=0
      ;;
  *)
      echo -e "Ok $USER, m4a files will be preserved."
      ;;
esac

echo -e "\nBe patient if you convert lots of file."

while read m4afile; do

  mp3file=$(echo "$m4afile" | sed s/\.m4a/.mp3/g)
  ARTIST=$(faad -i "$m4afile" 2>&1 | grep '^artist: ' | sed 's/^artist: //')
  TITLE=$(faad -i "$m4afile" 2>&1 | grep '^title: ' | sed 's/^title: //')
  ALBUM=$(faad -i "$m4afile" 2>&1 | grep '^album: ' | sed 's/^album: //')
  GENRE=$(faad -i "$m4afile" 2>&1 | grep '^genre: ' | sed 's/^genre: //')
  TRACKNUMBER=$(faad -i "$m4afile" 2>&1 | grep '^track: ' | sed 's/^track: //')
  DATE=$(faad -i "$m4afile" 2>&1 | grep '^date: ' | sed 's/^date: //')
  COMMENT=$(faad -i "$m4afile" 2>&1 | grep '^comment: ' | sed 's/^comment: //')
  CONGROUP=$(faad -i "$m4afile" 2>&1 | grep '^contentgroup: ' | sed 's/^contentgroup: //')
  COMPOSER=$(faad -i "$m4afile" 2>&1 | grep '^writer: ' | sed 's/^writer: //')
  PERFORMER=$(faad -i "$m4afile" 2>&1 | grep '^performer: ' | sed 's/^performer: //')
  ALBARTIST=$(faad -i "$m4afile" 2>&1 | grep '^album_artist: ' | sed 's/^album_artist: //')

  echo -en "\n$ARTIST / $ALBUM [$DATE] / $TRACKNUMBER - $TITLE"
  echo -en "\nConverting *$(basename "$m4afile")* to *$(basename "$mp3file")* ..."
  faad -q -o - "$m4afile" 2>/dev/null | lame -m j -q 0 --vbr-new -V 0 -s 44.1 - "$mp3file" 2>/dev/null

  id3v2 -t "$TITLE" -T "${TRACKNUMBER:-0}" -a "$ARTIST" -A "$ALBUM" -y "$DATE" -g "${GENRE:-12}" -c "$COMMENT" --TORY "$DATE" --IPLS "$ALBARTIST" --TCOM "$COMPOSER" --TIT1 "$CONGROUP" --TIT2 "$TITLE" --TOPE "$PERFORMER" --TPE1 "$ARTIST" --TPE2 "$ALBARTIST" --TRCK "$TRACKNUMBER" "$mp3file" 2>/dev/null

  if [[ ${del} ]]; then
      rm -v "$m4afile"
  fi

done < <(find . -iname '*.m4a' -or -iname '*.M4A')
echo -e "\nConversion complete!"

PS: j’ai trouvé un workaround pour mes soucis de coloration syntaxique. C’est pour l’instant assez moche mais mieux que rien… en attendant la résolution du bug upstream.

pacman, générer la clé depuis une session ssh

pacman est passé en version 4.0.1 sur le dépôt [core], du coup, j’ai mis certaines de mes installations accessibles qu’en ssh; or là, la génération de la clé reste bloquée :

# pacman-key --init
gpg: /etc/pacman.d/gnupg/trustdb.gpg: trustdb created
gpg: no ultimately trusted keys found
gpg: Generating pacman keychain master key...

Not enough random bytes available.  Please do some other work to give
the OS a chance to collect more entropy! (Need 281 more bytes)

Sur un « desktop », il suffira de bouger une fenêtre pendant plus ou moins longtemps afin que ça fonctionne; depuis une session ssh, c’est moins évident …
On peut néanmoins y remédier en installant rng-tools puis, modifier le fichier /etc/conf.d/rngd :

timeout=10

Lancez dans une session ssh en root :

rngd -f -r /dev/urandom

Et dans une autre session ssh :

pacman-key --init

Ca devrait fonctionner sans souci.

Vends LDLC Vulcain 300€


Suite à l'achat d'un MacBook Pro je revends mon laptop LDLC Vulcain acheté en mai 2011.

La présentation détaillée de l'ordinateur est disponible sur cette page de mon blog : http://blog.julienpecqueur.com/index.php?article14/ldlc-vulcain-clevo-s3101-slim.

Le pc est en bon état général même s'il a des traces d'utilisation (petites rayures en dessous du clavier). La batterie tient bien la charge.

Caractéristiques du Vulcain

- Disque dur 250 Go,
- RAM 4 Go,
- CPU Intel i3,
- Carte Wifi Intel 5300 (celle d'origine déconnectait fréquemment),
- Clavier AZERTY stické BÉPO,
- Ubuntu 11.10 installé,
- Vendu avec une housse pour le transport.

Prix : 300€ et 15€ de frais de port.
Lire les articles complets sur le site http://blog.julienpecqueur.com...

Thinkpad T420 sous Archlinux: corriger les problèmes de son

Je vous ai déjà parlé à plusieurs reprise de mon Lenovo Thinkpad T420. Et bien je vais revenir dessus encore une fois!

Presque tout le matériel est très bien reconnu par Linux dans l’ensemble mais il subsiste quelques détails: le bouton permettant d’activer/désactiver le microphone ne fonctionne pas*, le son des haut-parleurs est relativement faible et ne marche carrément pas du tout via la sortie jack de la docking station. Enfin, ne marchait pas aurais-je dû dire car pour ces deux derniers points j’ai trouvé la solution et elle est extrêmement simple à mettre en place.

Il suffit d’éditer /etc/modprobe.d/modprobe.conf et d’y ajouter cette ligne:

options snd-hda-intel model=thinkpad

Le module est ainsi chargé avec les bons paramètres et permet ainsi au son de fonctionner via le jack du dock et de gagner légèrement en volume à travers les haut-parleurs intégrés au portable. Il est à noter que cette astuce est sûrement valable pour les autres Thinkpad et adaptable à d’autres configurations.

* N’utilisant pas de microphone, je n’ai même pas cherché s’il existait une solution. De même, je n’ai jamais testé le lecteur d’empreintes digitales car je ne m’en servirais de toute façon pas.

MacBook Pro 13"

En cette période de fêtes de fin d'année, je me suis fait plaisir et me suis offert un MacBook Pro 13"… Pourquoi un MacBook Pro ? Tout simplement parce que je voulais une machine robuste, fonctionnelle « out of the box » et fonctionnant sur une plateforme de type UNIX. J'ai donc « mis en standby » mes principes sur les logiciels libres pour l'achat de ce portable, au moins pour les premiers jours d'utilisation.

Présentation du MacBook Pro 13"

Comme tous les produits Apple, l'emballage est soigné et bien pensé (exemple la mousse qui protège le dessus du portable) mais bon c'est un minimum vu le prix du laptop !

La boite contient le minimum vital pour faire fonctionner l'ordi : alimentation avec 2 connecteurs (ce qui est bien pratique pour laisser brancher le gros connecteur sous le bureau et éviter de repasser le cable à chaque branchement), chiffon pour nettoyer l'écran, manuel d'utilisation et bien sur le MacBook. 

La finition du laptop est irréprochable et en l'ayant dans ses mains on se dit qu'on en a pour son argent (et oui l'aluminium est plus aguicheur que le plastique).

Le premier démarrage du Mac est rapide et le logiciel d'installation nous demande d'accepter la licence - ah les joies du logiciel propriétaire - et de renseigner quelques informations… En quelques minutes, l'ordinateur est fonctionnel. En tout cas le système de base car Mac OS X ne fournit pas de suite bureautique, pas de lecteur multimédia supportant les divx, pas d'éditeur d'images !

Heureusement, les logiciels libres sont là pour nous sauver la mise et avoir un système utile : LibreOffice, VLC et Gimp sont le minimum vital ! Avec mac-ports on obtient un gestionnaire de paquets typique des distributions Linux qui permet d'installer pas mal de logiciels utiles…

Utilisation au quotidien et comparaison avec Gnome 3

Je vais comparer l'environnement avec Gnome 3 que je connais bien et que j'estime tout particulièrement. Les avis que je vais donner ici sont purement subjectifs…

Le navigateur internet

Dans les deux cas, je n'utilise pas le browser fourni mais Chrome / Chromium : rapide, respect des standarts, synchronisation des extensions et signets sur tous mes ordis…

Le client mail

Mail, le client mail d'OS X est un très bon logiciel qui fait le boulot qu'on lui demande et qui est très léger et ergonomique par rapport à Évolution… La configuration est très simple. Le gros bémol est l'absence de la gestion du chiffrement PGP/GPG (je n'ai pas encore approfondi mes recherches sur ce point).

Le calendrier

iCal est à l'image de Mail : simple et efficace ! Pour mon usage il est plus léger qu'Évolution.

Le gestionnaire de fichiers

Nautilus, le gestionnaire de fichier de Gnome 3 est supérieur à mon avis puisqu'il supporte les répertoires distants SFTP (FTP over SSH) que j'utilise pour stocker mes documents sur mon serveur perso.

Le lanceur d'application

C'est difficile de faire un choix puisque d'un côté on a un dock puissant qui intègre Launchpad et Mission Control et de l'autre Gnome Shell qui fourni un système de gestion des activités, des applications, un dock et les bureaux virtuels… 

On a donc sensiblement les mêmes fonctionnalités mais avec une implémentation différente. Cependant je trouve dommage que l'on ne puisse pas rechercher et lancer l'application en tapant son nom dans Launchad à l'instar de Gnome Shell.

Le gestionnaire de photographies

Contrairement aux idées reçues, pour la gestion des photos Gnome 3 est bien mieux équipé : Shotwell est une merveille alors qu'iPhoto est très basique.

À suivre…

Lire les articles complets sur le site http://blog.julienpecqueur.com...

archlinux: comment créer un paquet 32-bit depuis une installation 64-bit

En plus de mon beau Lenovo, je possède un netbook (Asus EeePC 1005HA) sur lequel est bien évidemment également installé Archlinux.

Seulement voilà: il m’arrive d’installer des paquets depuis AUR et cela passe souvent par une compilation. Évidemment, l’ensemble d’excellents outils fournis avec Archlinux (pacman, makepkg, PKGBUILD) facilitent énormément la tâche de création de paquets mais seulement voilà, compiler sur un netbook disposant d’un faible Intel Atom N280 en guise de processeur est loin d’être une joie. Surtout lorsque l’on possède une belle machine comme la mienne pour compiler!

L’idée est donc de compiler le paquet sur mon Lenovo et de le rendre disponible pour le netbook par la suite. Seulement voilà: mon Lenovo possède une Archlinux 64-bit alors que le netbook, processeur 32-bit oblige, une Archlinux 32-bit et par conséquent les paquets ne sont pas compatibles.

La solution? Créer un paquet 32-bit depuis l’installation 64-bit. Pour cela, il faut évidemment passer par un chroot 32-bit.

Cela pourrait être un vrai chemin de croix pour certains mais en fait le travail est facilité par des outils très pratiques. Voici comment procéder dans le détail.

Il faut commencer par créer le répertoire devant contenir notre chroot. Le faire dans /opt avec un nom parlant est une bonne idée:

sudo mkdir /opt/arch32

Les outils dont nous avons besoin sont fournis dans le paquet devtools. Alors installons le:

sudo pacman -S devtools

Ceci fait, on va copier notre existant pacman.conf dans notre dossier de chroot:

sudo cp /etc/pacman.conf /opt/arch32

On va également avoir besoin du makepkg.conf. Celui-ci possèdant une configuration spécifique à l’architecture, on va prendre celui par défaut pour 32-bit fournis avec le paquet devtools:

sudo cp /usr/share/devtools/makepkg-i686.conf /opt/arch32

Ceci fait, il nous faut éditer /opt/arch32/pacman.conf afin d’être certain qu’il ne contienne pas de référence à du 64-bit. Il faut changer cette ligne:

Architecture = auto

Pour celle-là:

Architecture = i686

Il faut également être sûr que le dépôt multilib n’est pas activé ainsi que tout autre dépôt uniquement 64-bit sous peine de faire foirer le chroot.

Et c’est maintenant que s’applique la magie des beaux outils. La commande suivante va configurer le chroot et installer tout ce qu’il nous faut comme paquets afin de pouvoir en créer un:

sudo mkarchroot -C /opt/arch32/pacman.conf -M /opt/arch32/makepkg.conf /opt/arch32/root base base-devel sudo

Cela peut évidemment prendre un peu de temps en fonction de votre connection internet.

Une fois ceci fait, il faut copier le PKGBUILD du paquet que l’on veut créer quelque part dans notre chroot. Mettons que l’on veuille compiler le paquet xfwm4-tiling, disponible sur AUR, on va créer le dossier /opt/arch32/aur/xfwm4-tiling et y mettre les fichiers nécessaires dedans (PKGBUILD et éventuels autres fichiers nécessaires). Il faut ensuite se rendre dans le dossier contenant le PKGBUILD (dans notre exemple /opt/arch32/aur/xfwm4-tiling) et lancer la commande suivante:

sudo makechrootpkg -c -r /opt/arch32

Et après un petit moment: tadaaa, voilà le paquet 32-bit créé! Et oui, c’est aussi simple que ça!

Si vous comptez réutiliser votre chroot plus tard, la commande suivante suffit afin de s’assurer que notre chroot est bien à jour:

sudo mkarchroot -u /opt/arch32/root

Alors, ils ne sont pas beau les outils Archlinux?

Suspension temporaire des commentaires

Les commentaires sont temporairement suspendus sur ce site. Je vous l’accorde, un blog est beaucoup moins vivant s’il est dépourvu de commentaires. Cependant, s’il n’est plus possible de commenter en ce moment c’est pour une raison bien précise que je vais détailler.

En visitant mon blog hier ou ce matin, vous avez pu constater que les commentaires étaient gérés par disqus. Comme je l’ai expliqué, ce site est utilise maintenant Octopress et est purement statique. Par conséquent, il n’est pas possible d’interagir de manière dynamique avec le site autrement qu’en passant par des scripts.

Seulement voilà: utiliser disqus n’est pour moi pas une solution. Pourquoi?

  • Je suis dépendant de disqus.com. Si le site ferme ou que le service devient payant, je suis cuit.
  • Disqus est lourd: il charge beaucoup de scripts et cela rend les pages plus lentes à l’affichage. Ceci est bien dommage alors qu’un des intérêts d’avoir un site statique est justement la rapidité d’affichage.
  • Disqus ne respecte pas votre vie privée. Et moi j’y tiens! En effet, grâce à la pratique extension de Firefox nommée Ghostery, j’ai fait le constat que disqus chargeait des scripts externes:
    • Quantcast: collecte des données anonymes (type de navigateur, url de référence, etc.) et partage avec des entreprises.
    • ScoreCard Research Beacon: collecte des données anonymes (type de navigateur, OS, etc.) ET des adresses IP partielles. Tout cela est bien sûr également partagé…
  • Il est difficile de récupérer les commentaires de disqus. On peut les exporter sous un format XML mais il aurait été très difficile pour moi de les convertir en commentaires pour octopress le jour où j’aurais voulu m’affranchir de ce service.

Bref, suffisament de raisons pour ne pas l’utiliser!

Je tiens fortement à migrer les anciens commentaires et trouver un nouveau système (probablement concocté par mes soins) afin de les rétablir car je les apprécie; qu’ils soient une remarque, un avis, un encouragement ou une critique: ils sont tous intéressants.

Cependant, cela risque de me prendre un peu de temps: je suis en période d’examens universitaires et je n’ai pas encore une solution en tête. Je vous prie donc de m’en excuser.

Si en attendant vous tenez à me faire part d’un commentaire, d’une critique, d’une question ou autre, il faudra passer par le formulaire de contact (que je dois encore mettre en place :-P ).

le blog a migré sur octopress

Ça y est: je me suis enfin décidé à migrer mon blog de Wordpress à Octopress.

Première chose à savoir pour ceux qui me suivent via le flux RSS: mon flux RSS a changé d’URL. Désormais, il faut pointer sur http://blog.rolinh.ch/atom.xml (oui, le lien se trouve toujours en haut à droite du blog).

Pourquoi avoir migré? C’est bien simple: Wordpress ne me correspondait pas du tout. J’aime bien la philosophie KISS, fortement suivie par Archlinux d’ailleurs, et Wordpress va complètement à l’encontre de cette idée. Il intègre beaucoup trop de fonctionnalités dont je me fous comme de l’an 40 et est finalement devenu un CMS complet plutôt qu’un simple moteur de blog.

Octopress est à des années lumières de la philosophie de Wordpress. Le site que vous avez maintenant sous les yeux n’est constitué que de pages statiques. Oui, cela veut dire pas de bases de données ni besoin de faire tourner php ou autre sur le serveur: le site est purement statique. Cela comporte des avantages mais également des inconvénients.

Parmi les avantages, le principal est la rapidité: l’affichage est quasiment instantané. On pourrait aussi avancer le fait que cela renforce la sécurité puisque le site n’est pour ainsi dire pas piratable.

Et pourtant, ce n’est pas pour ces raisons que j’ai choisi Octopress:

  • je peux bloguer avec mon éditeur de texte favori
  • … en utilisant la syntaxe markdown
  • le site se génère et déploie sur le serveur via une collection d’outils ruby
  • je gère mon blog dans un dépôt git
  • la coloration syntaxique du code est bien gérée (quoique je fais face à un bug spécifique à archlinux pour le moment qui m’empêche d’en profiter)
  • le thème de base est très réussi

Alors évidemment, cela a aussi ses inconvénients. Le site étant entièrement statique, je ne dispose même pas d’un formulaire de contact. De même, le système de commentaires passe pas un module externe (en l’occurence disqus) et cela ne me plait pas trop. Je tâcherais tout de même de trouver une solution dès que j’aurais un peu de temps. J’espère que cela ne vous importune pas trop.

Bref, cette migration m’a quand même pris un peu de temps et certaines choses ne sont pas encore en place. Néanmoins, je suis plutôt content du nouvel aspect du blog. Je suis parti du thème de base et l’ai modifié à ma guise afin d’avoir quelque chose qui me corresponde. Pour ceux qui consultent le blog depuis un petit écran (téléphone mobile), le thème s’occupe de produire un affichage correct donc il n’y a pas de régression de ce côté là. J’ai également dû le traduire donc si vous voyez des mots qui sont encore en anglais, merci de me le signaler afin que je corrige.

Il reste encore des liens morts et autres choses dans le genre mais je vais tâcher de remédier également à ces problèmes au plus vite.

Je suis donc désolé pour les désagréments que ça peut vous causer mais il ne devrait pas trop y en avoir quand même. Et si ce foutu système de commentaires se décide à fonctionner, je serais ravi d’avoir votre avis à propos de ce changement!

PS: rhâââââ, bloguer avec $EDITOR c’est un pur bonheur quand même!

Hacker Weekly News 16

Édition du 29 Décembre au 4 Janvier

  • Lien de la semaine: Cracking WPA in 10 hours or less (devttys0.com)

  • Cracking WPA in 10 hours or less (devttys0.com)

    • Une nouvelle qui a fait le tour, bien que le titre soit un peu trompeur, puisqu’il s’agit de craquer le wps plutôt que le wpa, j’ai essayé l’outil, mais rencontré des soucis avec, à suivre en tout cas. L’outil est déjà packagé pour Arch Linux.
    • Lien, commentaires
  • Hitchhiker’s Guide to Python (late.am)

    • Un guide intéressant, fait par la communauté, je ne le connaissais pas, mais il semble qu’il soit bien utile.
    • Lien, commentaires
  • Show HN: Scrollorama (github.com)

    • Effets amusant produit lors de scroll de page. La page fournis est une démonstration assez visuelle, et donc l’intérêt du plugin vite évalué.
    • Lien, commentaires
  • Code Year (codeyear.com)

    • Apprendre à programmer est vraiment pour moi une expérience passionnante, il m’est difficile de l’expliquer d’ailleurs. Mais comme tout le monde, il faut bien commencer par quelque part, et c’est ce que propose ce site, sous forme de newsletter envoyé chaque semaine. Je ne connais pas le niveau ni l’intérêt du site, mais je m’y suis inscrit. Ce qui pourrait surprendre puisque je ne cherche pas à apprendre, mais en tant que jeune programmeur, je suis curieux de voir s’il y a quelques exercices intéressant. Revoir les bases est généralement un bon conseil. Il semble que pas mal de curieux s’y soit inscrit, puisqu’en 48h 100,000 personnes se sont enregistrés.
    • Lien, commentaires
  • Impress.js – a Prezi like implementation using CSS3 3D transformations (github.com)

    • Une utilisation intéressante pour des présentations sliders, qui à comme particularité d’être basé sur une propriété du CSS3, un navigateur récent est cependant requis pour visualiser l’exemple, (lien dans le README), fonctionne avec Chromium, mais pas avec Firefox pour le moment (version 9). Ça vaut le coup d’œil.
    • Lien, commentaires
  • IPhone 4 in pure CSS3 (tjrus.com)

    • Impressionnant encore une fois ce qu’on peut faire maintenant avec le CSS, pour cette représentation de l’iPhone, aucune image n’est utilisé. Les icônes sont vraiment impressionnante, obligé de sortir firebug pour s’assurer que ce ne sont pas des images.
    • Lien, commentaires
  • Python for Humans (heroku.com)

    • Une présentation de slider intéressante, sur Python. D’un point de vue de ses bibliothèques standards, critiquant par exemple, et à raison, urllib2.
    • Lien, commentaires
  • GoDaddy support for SOPA aftermath – daily domain transfer impact graph (github.com)

    • J’ai évoqué dans une précédente édition l’ampleur de cette histoire, et pour anecdote, archlinux.org à migré son domaine. Mais ce n’est pas pour l’histoire en elle même que j’ai choisis ce lien, mais parce que c’est une belle utilisation et bon exemple de ce que peut faire la bibliothèque raphael.js, dont j’ai déjà parlé plusieurs fois ici.
    • Lien, commentaires

ZSH: afficher les infos des VCS (git, mercurial, svn, etc.) dans son prompt

C’est quelque chose que je voulais mettre en place depuis un moment mais ne l’avais pas fait faute de trouver une solution qui me satisfasse.

En faisant une brève recherche sur internet, on peut trouver une foule de zshrc configurés pour afficher des informations en fonction du dépôt de VCS parcouru. Certaines solutions ne gèrent qu’un VCS, d’autres plusieurs, certaines affichent les informations de manière sobre, d’autre le font de manière plus excentrique, certaines nécessitent des scripts (oui, oui, je suis tombé sur une solution qui nécessitait un script python!). Bref, on trouve de tout et il est difficile de s’y retrouver pour faire un prompte à sa sauce.

J’ai finalement découvert que zsh possède un module nommé vcs_info permettant justement de gérer les dépôts de VCS. Il s’agit d’une contribution utilisateur et toute la doc nécessaire afin de configurer cela à votre guise se trouve ici. Décidément, zsh ne cessera pas de me surprendre!

Afin d’aller un peu plus vite, je me suis basé sur ces deux articles très bien fait: mercurial info on your zsh prompt et git info in your zsh prompt. Je peaufinerais probablement un peu ma configuration dans un avenir proche mais néanmoins voici comment j’ai procédé:

  • ajout de ces lignes à mon zshrc afin de ne charger que git et mercurial de vcs_info puisque de toute façon je n’utilise pas d’autres VCS dans les projets auxquels je participe:

    autoload -Uz vcs_info zstyle ':vcs_info:*' enable git hg

  • personnalisation de vcs_info avec zstyle (j’ai pompé et modifié la configuration trouvée ici afin de ne pas afficher trop d’informations)

  • ajout de vcs_info dans la fonction precmd
  • affichage des informations dans RPS1 (pour rappel, il s’agit de la partie du prompt affichée tout à droite)

Curieux de savoir à quoi ça peut ressembler?

Dans un dépôt mercurial:

Dans un dépôt git:

N’oubliez pas que vous pouvez trouver mon zshrc dans mon dépôt de configurations. ;)

Bonne Année 2012!

Bonjour,

Je profite de cet article pour vous adresser mes meilleurs vœux, en l’honneur de cette année qui arrive. Par conséquent, je souhaite une bonne année 2012 à tous mes lecteurs. J’espère que tout vos projets se réaliseront et que vous réussirez, ce que vous avez entrepris .

De mon côté, l’année 2011 à été riche de beaucoup d’expériences. J’ai pu vraiment développer ce blog, qui était une chose très importante à mes yeux. Je m’applique vraiment à « fidéliser » les lecteurs et donc à publier des articles intéressants.

J’ai publié plus de 50 articles durant cette année. Je pense aussi que ces derniers ont gagné en qualité, au fur et à mesure des mois. Sachez, que j’ai de nouveau souscris à mon nom de domaine pour encore un an. Cela vous assure donc d’avoir des news, jusqu’en 2013.

Pendant l’année 2012, je vais encore améliorer le blog en créant par exemple une page Google+ ou encore en enregistrant un podcast de quelques minutes, à intervalle régulier. Je n’hésiterai pas à tester des choses inédites pour motiver votre enthousiasme. Je souhaite vous faire partager ma passion de l’informatique et des OS alternatifs.

Au final, on garde la même formule en 2012: des articles, des nouveautés et des surprises.

Je remercie mon hébergeur Legtux qui nous propose un service de qualité avec un uptime de plus en plus élevé.

Citons aussi Dempiller qui retweete un nombre considérable de mes tweets, Rolinh qui tient lui aussi un blog similaire, UbunBloX qui m’a invité sur Diaspora, le forum Archlinux.fr et sa communauté sympathique.

Au final, je vous encourage à vous « jeter à l’eau ». N’ayez pas peur de tester tout ce qui passe à portée de mains. Soyez curieux, motivé et passionné. Ma résolution principale 2012 est toujours plus de GNU/Linux.

À très bientôt, lecteurs.

Hacker Weekly News 15

Édition du 22 au 28 Décembre.

-Lien de la semaine: All Hacker Monthly issues free for next ~24 hours (hn.my)

  • Sites that pushed JavaScript to the limit (netmagazine.com)

    • Un résumé intéressante de ce qui c’est fait dans l’année écoulée, au niveau du JavaScript. Je ne suis pas forcément fan de tout les exemples cités,
    • Lien, commentaires
  • Paul Graham: SOPA Supporting Companies No Longer Allowed At YC Demo Day (techcrunch.com)

    • Je choisis normalement de ne pas aborder ce genre de sujets sur mon blog. Le lien choisis n’est pas forcément ce qui est important, c’est que 15 des 30 sujets étaient sur SOPA, et le mécontentement envers GoDaddy (un des registrats les plus influant au États-Unis) et son support. StackOverflow et Reddit ont annoncés vouloir migrer son nom de domaine. L’actualité et le boycotte autour de GoDaddy / SOPA est donc importante. 24h après cette vague de nouvelles, GoDaddy annonce ne plus supporter SOPA.
    • Lien, commentaires
  • All Hacker Monthly issues free for next ~24 hours (hn.my)

    • Hacker Monthly, une sélection des meilleurs articles de Hacker News, mets ses numéros en ligne pendant 24h, mais comme il est probable que les liens de téléchargement indiqué dans les commentaires soient opérationnelles pendant bien plus de 24H, je mets donc ce lien dans la sélection hebdomadaire. Les numéros ont été diffusé pour Noël.
    • Lien, Commentaireshttp://news.ycombinator.com/item?id=3387288

Une édition très courte pour ce numéro, par manque de temps, et peut être je ne suis pas tombé sur les sujets intéressants.

Préparant une grosse restructuration du blog, des incertitudes résident autour du blog, de cette série, ou même des flux RSS. J’avais préparé un édito un peu plus détaillé, mais je suis trop peu certain de la tournure encore. Il est possible qu’il n’y ait pas de numéro la semaine prochaine, ou même que la série change d’adresse d’ici quelques temps.

Le Kobo Touch – Prise en main

Salutations,

Suite à mon petit article sur les liseuses, j’ai commencé à rechercher un bon produit correspondant à mes critères, pour me l’acheter. Après avoir épluché quelques tests et longuement hésité entre plusieurs modèles, j’ai fini par acheter le Kobo Touch (ou Kobo by Fnac). Depuis quelques jours d’utilisation, je suis bien satisfait du produit, qui remplit tout à fait les fonctions que je souhaitais sur ce type d’appareil. Je vous livre donc cette petite prise en main, pas franchement originale mais qui peut éventuellement vous être utile, dans laquelle je relate mes impressions.

*                                         *
*

Premières impressions

Kobo ayant passé un partenariat avec l’enseigne, je me suis rendu à la Fnac la plus proche de chez moi pour acquérir l’objet. De surcroît, j’ai pu profiter de l’offre adhérent, à savoir un bon d’achat de 30€, ce qui est non négligeable – et m’a permis de récupérer gratuitement un bel étui. Mon achat validé, je retourne chez moi, histoire de découvrir l’engin. J’ouvre donc le carton d’emballage et découvre l’appareil, accompagné de paperasse et de son câble USB – Kobo est donc assez avare en équipement, point même de chargeur secteur fourni.

L’appareil en lui-même est plutôt agréable en main, léger, finition exemplaire et, du reste, plutôt joli. Il semble d’ailleurs assez résistant, même si je ne conseille pas de le laisser tomber au sol… Les commandes du Kobo se résument à un bouton en façade et un autre, glissière de mise en marche, sur la tranche haute – des boutons servant à tourner les pages auraient été appréciables. Tout est assez épuré, donc.

La tranche de l’appareil (dans l’étui)

Le déballage et l’observation de l’appareil terminés, je glisse le bouton de mise en marche – assez résistant pour ne pas s’enclencher dans une poche. Le premier allumage est peut-être le plus gros point noir de l’appareil : on doit l’activer à l’aide d’un logiciel distribué par Kobo – disponible sous Debian, me semble-t-il. Ceci fait, l’appareil se met à jour, se lance et est dès lors utilisable.

Je découvre donc l’interface tactile du Kobo Touch. L’écran sensitif est bien agréable et plutôt réactif – bien qu’il me soit arrivé, au début, de devoir m’y prendre à deux fois. On atterrit alors sur la page d’accueil, très simple et sans fioritures, affichant le fichier en cours de lecture ainsi que les derniers utilisés et quelques liens vers, entre autre, la bibliothèque et la configuration.

L’interface principale

Le premier contact avec l’appareil est donc bon. Il semble de très bonne facture et une fois passé l’embêtante bien que rapide phase d’activation, le premier contact avec l’interface tactile est agréable.

La lecture

Avant tout, le Kobo Touch est une liseuse. Tout ce qui concerne la lecture est donc assez important et déterminant. Tout d’abord, on ne peut que s’incliner devant la pléthore de types de fichiers supportés[*], même si on n’utilisera les 90% du temps que des fichiers epub et éventuellement pdf – j’utilise aussi beaucoup de fichiers cbz et cbr. Outre les fichiers textes, l’appareil supporte aussi beaucoup de fichiers images. Enfin, beaucoup regrettaient l’absence de fiche jack et la non-prise en charge de l’audio ; je n’en ai personnellement rien à faire, d’autant plus que les liseuses proposant cette fonctionnalité ne supportent généralement que les fichiers MP3.

Les livres

La lecture de livres, donc. Il n’y a pas à dire, elle est très agréable. L’encre numérique remplie parfaitement son travail, le texte est lisible et on ne se fatigue pas les yeux. De plus, les options de configurations sont pratiques. On a le choix entre différentes polices, leur tailles, l’interligne, la marge et enfin, la justification. On peut aussi choisir la fréquence de rafraichissement de l’écran e-Ink – le flash noir qui rebute certains (et que je ne trouve en rien embêtant). L’appareil ne permet pas la lecture en mode paysage pour les fichiers epub – mais le propose pour les pdf et les cbr/cbz, notamment. Encore un point qui ne me dérange pas, je préfère lire en portrait.

Lecture et options

Les PDF

On sent que la lecture de fichiers PDF n’est pas le point fort des liseuses à encre numérique, surtout à cause de la taille de l’écran (6″) et, éventuellement, de l’absence de couleur. En effet, à moins que le fichier soit adapté, il faut souvent zoomer pour pouvoir lire, etc. Malgré tout, la lecture de fichiers PDF reste plutôt agréable (tout est relatif), et on peut aussi basculer en paysage. De plus, un détail rend cette lecture meilleure. En effet, pour se déplacer dans le PDF, il faut glisser son doigt sur l’écran ; sur cet appareil, lorsqu’on lève le doigt, l’écran ne se rafraichi pas directement et laisse à l’utilisateur le temps de répéter son mouvement plusieurs fois. Cela peut ne pas paraitre vraiment important, mais ce petit détail – qui n’est pas présent sur certaines machines, à ce que j’ai lu/vu –, rend les déplacements plus rapides et confortables – ceci ne se limite pas qu’aux PDF.

Lecture de PDF

Les BD

Le Kobo Touch propose le support des fichiers cbr et cbz, contrairement aux autres modèles de liseuses. Cette fonctionnalité est utile ou non, selon votre utilisation. Personnellement, je l’utilise et la trouve plutôt bonne, du moins pour les mangas. En effet, leurs pages sont juste légèrement plus grandes que l’écran de la liseuse ce qui permet d’avoir un bon confort de lecture. J’ai trouvé la grande majorité des textes lisibles et l’affichage est rapide. Pour une bande-dessinée grand format, c’est un peut-plus laborieux, comme pour les PDF.

Lecture Manga/BD

Voyons maintenant les autres points à propos de la lecture, tous fichiers confondus. Une fonctionnalité intéressante – et qui concerne la plupart des modèles de livres numériques sur le marché –, le dictionnaire intégré. Il suffit de rentrer le mot voulu dans le champ de rechercher ou de le sélectionner dans le texte – appui long, on peut aussi sélectionner un pan entier du texte – pour chercher sa signification dans le dictionnaire ou encore le traduire. Pour le moment, les dictionnaires proposés par le Kobo by Fnac sont l’Anglais, l’Allemand, ainsi que plusieurs sens de traduction – Anglais-Français, Allemand-Anglais, etc. Le dictionnaire Français, ainsi que de nouvelles possibilités de traduction devraient apparaitre dans la prochaine mise à jour – heureusement, ce serait du foutage de gueule sinon.

Du reste, l’appareil propose quelques autres fonctions bien pratiques. On peut facilement ajouter des signets – il suffit de toucher le coin haut-droit de l’écran – et les annoter. On peut aussi annoter librement les pages, les mots et surligner n’importe quel passage. Par contre, point d’annotations « dessinées », il faut passer par un petit clavier – plutôt réactif tant qu’on ne tape pas excessivement vite. La recherche dans le livre est aussi de la partie, comme le déplacement rapide de chapitres en chapitres.

Sélection de texte

La lecture, point principal de l’objet, est donc très agréable. Les nombreuses options permettent de configurer l’affichage du texte selon notre bon vouloir, et l’encre numérique apporte un bon confort d’écriture. Du reste, la possibilité d’annoter le texte ou de surligner des passages est plutôt utile, dans certains cas. Malheureusement, l’absence de dictionnaire français est regrettable, pour le moment du moins.

L’accès aux fichiers

Pour installer des fichiers sur le Kobo Touch, rien de plus simple. Il suffit de le connecter à un ordinateur pour accéder à la mémoire comme pour n’importe quelle clef USB – très bien reconnu chez moi . C’est bien pratique et on n’a aucune restrictions, pas comme chez Amazon… De plus, les inconditionnels de Calibre peuvent l’utiliser pour transférer leur bibliothèque. Envoyer des livres sur l’engin est donc très simple et rapide. Par contre, la mémoire de 1gio peut sembler faible. Pour parer à cela, munissez vous d’une carte Micro-SD !

L’appareil possédant le Wifi, on peut aussi le connecter à Internet et accéder à la librairie intégrée. Je l’ai testé une fois, elle n’est pas trop mal foutue mais mériterai quelques améliorations, notamment au niveau de la recherche. De toute manière, je ne l’utilise pas. Du reste, on peut accéder à d’autres sites proposant des livres numériques, comme celui du projet Gutenberg.

Par contre, l’accès aux fichiers installés sur l’appareil via bibliothèque souffre d’un défaut important : pas de tri par collections ou catégories personnalisées, ce qui s’avère assez embêtant. Cela sera peut-être ajouté par une mise à jour. Du reste, la liseuse propose quatre catégories pré-définies, « livres », « journaux », « extraits », « favoris », ce qui reste tout de même assez maigre. Aussi, les numéros de séries ne sont pas affichés, ce qui peut s’avérer contrariant pour une grosse série de livres.

La bibliothèque

Enfin, l’appareil dispose d’un navigateur web simpliste, qui permettra d’accéder à différents textes disponibles en ligne, à des sites d’informations… Il est loin d’être ultra-fonctionnel mais a le mérite d’être présent et peut toujours dépanner : il ne faut pas oublier que le principal but d’une liseuse n’est pas de naviguer sur le web.

L’accès à votre bibliothèque sur cet appareil est donc assez simple et l’installation de fichiers sans restrictions. De plus, il existe des moyens subsidiaires pour accéder à n’importe quel texte. Malgré tout, le classement des bouquins est vraiment pauvre : il n’y a plus qu’à souhaiter le support des collections et catégories personnalisée à la prochaine MàJ. Le must serait tout de même la navigation par dossiers.

Les autres fonctionnalités

Outre le navigateur Web qui vient d’être évoqué, le Kobo Touche propose quelques fonctionnalités annexe pas vraiment utiles ou que je n’ai pas encore testée. C’est le cas, notamment, de « Reading Life », qui propose de partager ses lectures sur Facebook – ce dont je me contre-balance. On peut aussi accéder à ses statistiques de lecture : c’est loin d’être indispensable mais c’est amusant, tout comme le système de récompenses qui décerne différents titres si vous accomplissez certains objectifs (lire en pleine nuit, etc.). Je n’ai pas encore non plus testé la fonction de synchronisation, qui propose notamment d’exporter ses différentes notes vers un serveur extérieur pour y accéder ailleurs. Je ne sais pas s’il est possible d’installer son propre serveur, ce qui m’intéresserait, vu ma réticence envers le « cloud ».

Les licences

Un dernier point à propos des licences et du système de l’appareil. Ce dernier tourne grâce à un noyau Linux et utilise de nombreux logiciels libres sous licence Apache, Gnu/GPL, Gnu/LGPL, MIT, zlib, etc. De plus, tous les codes source libres sont téléchargeables depuis un dépôt GIT. À mon sens, c’est un point à considérer.

*                                         *
*

Cette liseuse est donc très intéressante. Elle est simple et épurée, sans trop de fioritures et lit la plupart des fichiers textes répandus, ce qui est un excellent point. L’interface est bien pensée et va à l’essentiel, ce qui est appréciable sur ce genre d’appareil qui est censé être utilisé comme un livre et non comme une tablette tactile. De plus, l’engin propose des fonctionnalités intéressantes comme la lecture de fichiers CBZ/CBR et les fonctions d’annotations sont simples d’utilisations – très utiles dans certains cas. Le tout dans un support plutôt beau, bien construit et léger, avec une bonne autonomie avoisinant le mois – je ne l’ai pas testée, mais c’est sans doute vrai tant qu’on coupe le wifi. Malgré quelques défauts assez remarquables comme l’impossibilité de classer ses ouvrages – espérons que cela voit le jour avec une nouvelle version du système –, le Kobo Touch est un bon livre numérique qui rempli avec excellence ce qu’on demande à un livre, avec les avantages du numérique.

—————————————

[*] Formats textes : EPub, PDF, MOBI, TXT, HTML et RTF ; Formats images : JPEG, GIF, PNG, BMP et TIFF ; Formats Bandes Dessinées : CBZ et CBR

Vous pouvez aussi lire :?

  1. Liseuses et livres électroniques

flattr this!

Hacker Weekly News 14

Édition du 15 au 21 Décembre.

  • Lien de la semaine: Microsoft decides to automatically update Internet Explorer for everyone (geek.com)

  • Learn Knockout.js in 30 minutes (knockoutjs.com)

    • Knockout.js est une alternative à Backbone.js (si je ne me trompe pas), le site propose une belle interface pour apprendre les bases de Knockout. Si le sujet vous intéresse, le site vaut certainement le détouri.
    • Lien, commentaires
  • Windows Live Messenger supports XMPP (windowsteamblog.com)

    • Le sujet était ouvert depuis un certain temps déjà, je n’ai suivis le débat que de (très) loin, il me semble avoir lu que ce qui est mis en place n’est pas encore vraiment une solution d’interopérabilité bien propre.
    • Lien, commentaires
  • Microsoft decides to automatically update Internet Explorer for everyone (geek.com)

    • Plutôt une bonne nouvelle pour les designers web, puisque gérer les anciennes versions d’Internet Explorer est bien souvent vu comme au pire une grosse galère ou au mieux comme une perte de temps. Évolution à suivre donc.
    • Lien, commentaires
  • Famous Last Words by Bosses I’ve Had (edweissman.com)

    • Une suite de dialogues amusantes, entre développeur et employeur. Quant bien même le trait serait forcé pour ce billet, il est probable qu’il ait eu lieu quelque part, pour quelqu’un ! Le billet a fait l’objet d’une suite de trois billets depuis, visible sur son site.
    • Lien, commentaires
  • MITx positions to offer certification for completing courses online (mit.edu)

    • Alors que la Stanford University à fait très fort avec ces nouveaux cours en ligne, en attirant toute l’attention, la MIT semble vouloir proposer une alternative qui pourrait bien être intéressante. Pour rappel, la MIT est loin d’être en reste sur le sujet de cours en ligne, puisqu’ils proposent depuis 10 ans OCW (ocw.mit.edu). Il semblerai vraiment que l’enseignement ouvert en ligne prenne un tournant majeur. (et encore une fois, la France sera à la ramasse dans ce domaine)
    • Lien, commentaires

Une édition un peu courte, par manque de temps certainement. Cependant, j’ai dis depuis le début que je ne me fixais pour seule limite le jour de sortie (Jeudi) et non pas le nombre de lien, un peu moins cette fois ci, peut être plus la prochaine fois. Merci à tous, et à Jeudi prochain.

Tweaks sous Fedora 16

Bonjour,

J’en ai pas mal parlé sur mon profil Twitter, il n’y a pas si longtemps, mais je pense avoir enfin trouvé la distrib pour mon laptop. C’est bel et bien Fedora 16.

Elle fonctionne parfaitement « out-of-the-box » mais chez moi certains réglages semblent nécessaires, car par exemple l’autonomie à subi un sacré coup. Sous Windows Vista, mon laptop tient dans les 3h15 et sous Fedora (non-réglée) je passe à un petit 2h. Il y aussi quelques ajustements au niveau de l’interface.

Pour moi ces « tweaks » sont donc incontournables. Je vais donc vous faire un récapitulatif.

Pour commencer, petite parenthèse, lors de l’installation j’applique ce partitionnement (comme sur chaque distrib): une partition 10-12 Go pour la racine en ext4, 2Go pour la swap (remplir une partition du double de la RAM est inutile, je dispose déjà de 4Go sous tout mes ordis) et le reste pour ma /home en ext4 aussi.

* Gestion de la fréquence CPU *

Pour installer une version améliorée de cpufrequtils appelée cpupowerutils, qui comporte quelques nouvelles fonctionnalités, on passe par le paquet kernel-tools:

sudo yum install kernel-tools

En effet, le paquet cpufrequtils est déprécie et est remplacé par kernel-tools. A ce moment là, j’ai eu quelques difficultés pour paramétrer le nécessaire. En fait, il n’y a pas grand chose de compliqué.

Avec ‘nano’, on édite la fichier /etc/sysconfig/cpupower comme ceci:

sudo nano /etc/sysconfig/cpupower

et on a ça:

# See 'cpupower help' and cpupower(1) for more info
CPUPOWER_START_OPTS="frequency-set -g performance"
CPUPOWER_STOP_OPTS="frequency-set -g ondemand"

Modifier la ligne  CPUPOWER_START_OPTS en remplaçant « performance » par le « governor » désiré. J’ai moi-même remplacé « performance » par « ondemand ». Vous pouvez ajouter aussi une fréquence minimale avec l’argument -d et une fréquence maximale avec l’argument -u.

Ex: « frequency-set -g ondemand -d 800MHz -u 2GHz ». Je vous invite à lire le man pour plus d’options:

man cpupower-frequency-set

Pour vous éviter de relancer le service cpupower à chaque (re)démarrage, procédez comme ceci:

sudo systemctl enable cpupower

Et voilà votre « governor » réglé automatiquement à chaque démarrage. Vous pouvez contrôler avec

cat /proc/cpuinfo | grep "cpu MHz"

et voir la fréquence minimale gérée par votre CPU.

* Gestion du GPU *

Mon laptop comporte un GPU ATI HD3450. Je souhaite me passer du driver proprio et utiliser l’alternative libre. Utiliser GNOME3 fonctionne sans problème avec le radeon libre. Cependant, pour gagner quelques minutes et aussi parce que les effets Compiz ne n’importent guère, je suis passé sur GNOME Fallback. J’ai déjà un gain mais je ne vais pas m’arrêter là.

Beaucoup se plaignent du ventilateur qui se met à « chanter » assez tôt, pour ne plus cesser. J’ai failli passer sur le proprio juste à cause de ce phénomène mais finalement non. J’ai trouvé le Saint-Graal. En tombant sur cette doc, j’ai donc encore affiné mes réglages et baissé significativement la vitesse du ventilateur (et aussi la dissipation thermique).

Pour modifier les fichiers suivants, vous ne DEVEZ pas avoir l’option « nomodeset » dans GRUB. Vérifiez avec:

cat /etc/default/grub

Je vais retenir les points de la doc dont nous avons besoin. Il faudra regarder/modifier uniquement deux fichiers. AVANT TOUT, CES PROCÉDURES SONT À VOS RISQUES ET PÉRILS, FAITES BIEN ATTENTION.

Lancez

cat /sys/class/drm/card0/device/power_method

Si vous obtenez « profile » (sans les guillemets), c’est OK, rien à modifier donc. Vous pouvez passer à la suite.

Ensuite, rentrez

sudo nano /sys/class/drm/card0/device/power_profile

et remplacer  »default » (sans les guillemets) soit par mid soit par autre chose. Il est écrit sur la doc qu’il ne faut pas rentrer low, mais je suis quand même en train d’essayer ce paramètre. Allez ici pour une liste complète. En modifiant le fichier de « default » à « mid », j’ai pu entendre le ventilo baisser sa vitesse en temps réel.

Sachant qu’à chaque redémarrage, le paramètre du fichier « power_profile » revient sur default, il faut automatiser la commande. De base, Fedora 16 ne comporte pas de « rc.local ». Il faut donc créer le fichier « /etc/rc.d/rc.local » et ajouter votre commande:

#!/bin/bash
echo mid > /sys/class/drm/card0/device/power_profile

Vous pouvez remplacer mid par ‘low’,  »auto’ et ‘high’. N’oubliez pas de le rendre exécutable avec:

chmod +x /etc/rc.d/rc.local

Le fichier sera lu au boot de Fedora sans aucun autre réglage.

* Réduire la consommation d’énergie avant le noyau 3.2 *

Je vous invite à lire l’article de mon blog ami sur Rolin.ch ici, mais un autre tweak consiste à ajouter une option à GRUB, en attendant la correction dans le noyau du problème du surconsommation sur certains processeurs Intel depuis la version 2.6.38.

L’option à rajouter est « pcie_aspm=force ». Pour ceci, rentrez:

sudo nano /etc/default/grub

et ajouter  »pcie_aspm=force » (sans les guillemets) à la fin de la ligne GRUB_CMDLINE_LINUX et recharger le grub.cfg avec:

sudo grub2-mkconfig -o /boot/grub2/grub.cfg

Redémarrez l’ordi et vous aurez certainement une bonne surprise.

Je suis passé maintenant à 2h50 d’autonomie, ce qui est plutôt important.

* Autre réglages *

Sachant que mon chipset wifi est un Broadcom 4312 et que le driver free ne permet pas de faire fonctionner mon modèle, j’ai dû ajouter le dépôt RPMfusion qui comporte un driver non-libre.

J’ai ajouté les dépôts « Free » et « Non-free »:

sudo rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm

et

sudo rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm

Il faut ensuite rafraîchir la liste des paquets:

sudo yum update

et j’ai installé le paquet kmod-wl avec:

sudo yum install kmod-wl

——————————————————-

Je trouve que de base Fedora 16 consomme beaucoup de RAM, donc il faut désactiver pas mal d’applications au démarrage. J’ai désactivé les applis suivantes et je suis passé de 650 Mo à environ 350 Mo:

  • Caribou
  • Démarrer la méthode de saisie
  • Dépôt Tracker
  • Extracteur du système de fichiers Tracker
  • Extracteur Tracker pour Flickr
  • Files
  • Gestionnaire Bluetooth
  • GNOME Login Sound
  • Notificateur de sauvegarde
  • Orca screen reader
  • Partage de bureau

Pour modifier ces programmes, lancez:

gnome-session-properties

——————————————————-

J’ai effectué quelques ajustements au niveau de l’interface car avoir une barre en haut et une en bas, c’est un peu trop pour moi. J’ai tout rassemblé sur une barre en haut de l’écran.

Elle rassemble:

  • Menu principal
  • Mes applications souvent utilisées
  • Liste des fenêtres
  • Sélecteur d’espaces de travail
  • Heure
  • Zone de notification
  • Menu personnel

Voilà le résultat:

Barre du Haut

Vous serez peut-être surpris que cet article ne soit pas en rapport avec Archlinux, mais j’essaie aussi de parler d’autre chose qui soit en rapport avec GNU/Linux.

PS: Il est bien écrit power_profile (ou method) dans les balises. L »underscore » est juste mal affiché dans ces balises.

EDIT: Corrigé une petite erreur au niveau du rc.local.

comment appliquer une configuration d'écran spécifique automatiquement lorsqu'un écran externe est détecté

Un petit article pour une petite astuce.

Le problème est on ne peut plus simple: comment appliquer une certaine configuration d’écran de manière automatique lorsqu’un autre écran est détecté.

Dans mon cas, j’utilise un portable et dispose d’une station d’accueil à laquelle est relié un moniteur. Lorsque je suis en déplacement,  le seul écran disponible est celui du portable lui-même (logique…) mais lorsque je suis chez moi, je dispose d’un deuxième moniteur relié en VGA à ma station d’accueil. Lors du démarrage de ma session Awesome wm, les deux écrans sont par défaut en configuration clone, ce qui m’est relativement inutile. Avant mon astuce, je lançais un petit script utilisant xrandr manuellement afin que mes deux écrans soient configurés correctement. Voilà une astuce afin d’automatiser cela.

La commande xrandr, passée sans argument, permet de connaître les écrans connecté à la machine. Exemple de sortie:

Screen 0: minimum 320 x 200, current 2880 x 1024, maximum 8192 x 8192
LVDS1 connected 1600x900+0+0 (normal left inverted right x axis y axis) 309mm x 174mm
   1600x900       60.0*+   40.0
   1024x768       60.0
   800x600        60.3     56.2
   640x480        59.9
VGA1 connected 1280x1024+1600+0 (normal left inverted right x axis y axis) 376mm x 301mm
   1280x1024      60.0*+   76.0     75.0
   1152x864       75.0
   1024x768       75.1     70.1     60.0
   832x624        74.6
   800x600        72.2     75.0     60.3
   640x480        72.8     75.0     66.7     60.0
   720x400        70.1

On voit donc dans mon cas que j’ai deux écrans connectés: LVDS1, qui correspond à l’écran de mon portable, et VGA1 qui correspond à l’écran externe branché en VGA. Lorsque ce dernier est connecté à mon portable, je souhaite configurer mon affichage en conséquence. Rien de plus simple: il suffit d’éditer le fichier $HOME/.xinitrc et de lui ajouter ces quelques lignes:

# apply dual-screen configuration when VGA is connected
xrandr | grep "VGA1 connected"
if [ $? -eq 0 ]; then
        xrandr --output LVDS1 --mode 1600x900 --pos 0x0 --rotate normal --output VGA1 --mode 1280x1024 --pos 1600x0 --rotate normal
fi

Évidemment, ceci est à adapter en fonction de votre configuration mais une fois ceci fait, la configuration spécifique lorsque les deux écrans sont connectés est automatiquement chargée lors du lancement de la session.

une interface web pour un git public avec nginx

Vous le savez certainement si vous me suivez depuis un petit moment: j’utilise nginx comme serveur web. Celui-ci comporte de nombreux avantages par rapport au mastodonte qu’est Apache, dont notamment la simplicité de la configuration. Cependant, les ressources le concernant sont moins nombreuses car le projet est relativement jeune et son utilisation n’est pas aussi importante que celle d’Apache.

Bref, une des difficulté avec nginx se trouve être ce qui concerne les script CGI. Vous allez vite comprendre pourquoi.

Je voulais rendre public et accessible via une interface web mon dépôt git contenant mes configurations de programme. Naturellement, j’ai d’abord pensé à utiliser gitweb, qui est installé avec la “suite” git. Or, celui-ci étant écrit en perl ne facilite en rien les choses… Il aurait fallu utiliser un wrapper et pas mal bidouillé afin de le faire fonctionner. Ce n’est donc pas impossible mais je ne trouvais pas cela très propre. J’ai donc cherché une alternative simple à mettre en place et c’est là que je suis tombé sur gitphp.

Enfin bon, avant de publier ses dépôts sur un site web, il est intéressant de les rendre accessible en lecture pour tout le monde. Pour cela, avec git vient git-daemon. Comme son nom l’indique, il s’agit d’un daemon et il esst justement prévu pour ça. Au préalable, il ne faut pas oublier d’ouvrir le port 9418, qui est le port utilisé par défaut et éditer le git-daemon.conf (/etc/conf.d/git-daemon.conf chez Archlinux) au préalable. Chez moi, il ressemble à ceci:

# path to git repositories served
GIT_REPO="/srv/gitosis/repositories/"
# see `man git-daemon` for all available options
# $GIT_REPO will be present twice in most configs
GIT_DAEMON_ARGS="--detach --verbose --base-path=$GIT_REPO"

Comme il l’est écrit au-dessus, un man git-daemon permet dans savoir plus sur les options. Par la suite, à moins que vous ayez choisit l’option _ –export-all_, vous allez devoir rajouter un fichier spécial dans le dépôt. Celui-ci indique à git-daemon que le dépôt doit être exporté:

cd /chemin/vers/le/depot.git
touch git-daemon-export-ok

Voilà, normalement, dès à présent, vos dépôts sont clonables en lecture-seule via un:

git clone git://monserver.org/depot.git

Reste maintenant à installer gitphp et le configurer. S’agissant d’un site en php, voilà comment simplement créer un hôte virtuel avec nginx:

# gitphp
    server {
        listen 80;
        server_name git.rolinh.ch;
        root    /srv/http/rolinh/git;
        index   index.php;  
        location / {
            try_files $uri $uri/ /index.php?q=$uri&$args;
        }  
        location ~ .php$ {
            fastcgi_split_path_info ^(.+.php)(/.+)$;
            include                 fastcgi.conf;
            fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /srv/http/rolinh/git/$fastcgi_script_name;
            fastcgi_cache_valid any 1m;
            fastcgi_intercept_errors on;
        }
    }

Évidemment, il faut adapter à votre configuration et celle-ci est prévue pour fonctionner avec php-fpm (voir la doc Archlinux pour informations). Il est nécessaire que posix.so soit activé dans php donc si ce n’est pas fait, il faut éditer le php.ini en conséquence. Ensuite, il faut télécharger et décompresser gitphp dans le répertoire prévu (il est normalement disponible ici).

Ceci fait, il faut encore le configurer. Dans le dossier config se trouve le fichier de configuration de base que l’on peut modifier à sa guise. Toutes les options disponibles sont visible dans gitphp.conf.defaults.php. Il vous faudra au minimum les options suivantes:

/*
 * projectroot
 * Full directory on server where projects are located
 */
$gitphp_conf['projectroot'] = '/srv/gitosis/repositories/';  
/*
 * exportedonly
 * When listing all projects in the project root,
 * (not specifying any projects manually or using a project list file)
 * set this to true to only allow repositories with the
 * special file git-daemon-export-ok (see the git-daemon man page)
 */
$gitphp_conf['exportedonly'] = true;

Si les dépôts ne s’affichent pas, vérifiez bien que l’utilisateur web a bien accès en lecture au dossier contenant les dépôts git.

Pour un exemple de tout ceci en action: http://git.rolinh.ch/.

NB: cet article est inspiré partiellement par celui-ci: http://blog.hokietux.net/?p=247 très bien fait qui explique comment configurer gitphp.

[Archlinux] Visionnez les PDF directement depuis Firefox

On va voir une petite astuce qui permet de visionner les PDF directement depuis Firefox, sans avoir à les télécharger et sans avoir besoin d'utiliser Adobe Acrobat Reader. Ca ne fonctionne que pour les systèmes GNU/Linux (What else ?©) et bien que l'intitulé du tutoriel porte le nom "Archlinux", l'astuce fonctionne en principe pour toutes les distributions; il vous faudra juste chercher le paquet spécifique à votre distribution ;-)

L'astuce est inspirée de la documentation d'Archlinux : https://wiki.archlinux.org/index.php/Firefox_Tips_and_Tweaks#Viewing_PDF.2FPS_inside_Firefox

Les prérequis sont :

  • Une distribution GNU/Linux
  • Firefox. (pour les utilisateurs de chromium, voir le "edit 2" à la fin de l'article)
  • Un lecteur PDF (par exemple Evince)

 

Allons-y !

Il faut tout d'abord installer le paquet mozplugger. Malheureusement, il ne se trouve pas dans les dépôts d'Archlinux. Vous devrez donc aller le chercher sur AUR. Si vous avez yaourt d'installé :

yaourt -S mozplugger

Sinon on y va façon geek 8-)

wget http://aur.archlinux.org/packages/mo/mozplugger/mozplugger.tar.gz

On décompresse le tout (nécessite l'utilitaire pour décompresser les tar gz, évidemment) :

tar xvzf mozplugger.tar.gz && cd mozplugger

On créé le package :

makepkg -s

Et on l'installe (le nom peut varier en fonction de la version, adaptez-le si ça ne fonctionne pas) :

sudo pacman -U mozplugger-1.14.3-1-x86_64.pkg.tar.xz

Maintenant que mozplugger est installé, il nous faut virer certains fichiers :

rm ~/.mozilla/firefox/*.default/pluginreg.dat

Editons maintenant le fichier de configuration de mozplugger (/etc/mozpluggerrc)avec notre éditeur de texte préféré (vim pour ma part ^^). Il ne faut pas oublier de le lancer en root pour avoir les droits de modification sur le fichier ;-)

Une fois le fichier ouvert, on commente la ligne (ligne 288 chez moi) suivante qui se trouve dans la partie PDF après la ligne GV() :

#repeat noisy fill exits: evince "$file"

Et on ajoute juste après :

repeat noisy swallow(evince) fill: evince "$file"

Note, vous pouvez remplacer evince par un autre lecteur PDF (comme Okular. Ca devrait normalement fonctionner.

Pour finir, on relance Firefox et le tour est joué. Il ne reste plus qu'à ouvrir un PDF pour voir si ça fonctionne bien.

J'espère que cette astuce vous aura été utile. En ce qui me concerne, je trouve vraiment pratique de pouvoir visualiser un PDF sans avoir à le télécharger (ça évite le chaos dans le dossier Downloads).

 

Edit 1 : Vous pouvez vous amusez à modifier le fichier de configuration de mozplugger pour gérer d'autres formats de fichiers (.doc/.docx, etc.). Pour la doc, c'est pas ici : http://mozplugger.mozdev.org/documentation.html

Edit 2 : Pour les utilisateurs de chromium, c'est par ici : https://aur.archlinux.org/packages.php?ID=46826  je n'ai pas testé, mais en principe ça devrait fonctionner de la même façon ;-)

La technologie n’est pas seulement pour les humains !


Un lézard joue sur un smartphone - Vidéo humour

Les lézards ont eu aussi le droit de jouer :-P

Soit dit en passant, l'appli est sympa, mais on s'en lasse vite (je l'avais testée il y a quelques mois)