vendredi 2 septembre 2011

Controler le volume en ligne de commande

Avec le système de sons alsa, il existait en ligne de commande un petit utilitaire "alsamix" (un égaliseur en mode texte) permettant de contrôler le son en ligne de commande.

Avec PulseAudio, il en est de même. L'utilitaire en question s'appelle pacmd :
  • Lister les "sinks" disponibles : pacmd list-sinks
Cette commande renvoie un tas d'information sur les sinks, et notamment leur index qui va nous permettre de jouer avec plus tard :
$ pacmd list-sinks
Welcome to PulseAudio! Use "help" for usage information.
>>> 1 sink(s) available.
  * index: 0


  • Donner un volume à un "sink" défini dans la liste précédente : pacmd set-sink-volume 0 32768
Là on peut régler le volume du 'sink' d'index 0, entre 0 (muet) et 65536 (à fond, dans l'exemple ci-dessus, le volume est réglé à 50%)

Tout simple.


jeudi 1 septembre 2011

Balance Withings sous linux test et avis

Cela faisait un moment que je voulais acheter une vraie balance, qui donne l'IMC et la masse de gras... Et bon, là, une balance connectée en wifi, qui sauvegarde automatiquement les données pour faire de jolies courbes, qui plus est, connectable à l'excellent site runkeeper.com, il n'y a pas photo, c'est tout ce qu'il me faut!!

  • Aspect au déballage
Un beau paquetage, pour un beau produit : dans le paquet, la balance, des pieds pour la moquette, des piles, un cordon usb, un mètre, une notice, bref rien ne manque. La balance est vraiment de qualité (heureusement, vu son prix), de très bonne finition,son plateau en verre est magnifique et va donner envie de se peser souvent :-) Rien qu'au déballage, on a un bel objet.


  • Configuration
Ayant lu sur quelques forums que la configuration se faisait par l'intermédiaire d'un ordinateur, j'avais un peu peur que sous linux, je me retrouve coincé. Hé bien non! L'installation et la configuration est très simple, en allant sur le site start.withings.com, un assistant propose de télécharger le logiciel de configuration sous Windows, Mac et Linux! Il suffit alors d'ouvrir un terminal (Ctrl+Alt+t sous ubuntu 11.04, Programmes/Accessoires/Terminal sous les précédents), et de lancer le magicien (wizard) : sudo ./pairingwizard_Linux_x86 . Celui-ci va permettre de configurer le réseau Wifi, pour connecter la balance à votre réseau.

Bref, en 3 minutes, la configuration est achevée, un premier utilisateur est créé sur le site withings, et c'est parti pour la première mesure!

  • Utilisation
Whoa, par rapport à mon ancienne balance, sur laquelle il fallait appuyer, attendre, monter rapidement avant qu'elle s'éteigne, là, c'est bluffant : on monte sur la balance, elle s'allume, vous pèse, envoie les informations sur le site, affiche votre poids, votre IMC, votre masse graisse, hop, efficace et rapide! Bref, à l'utilisation cette balance rempli toutes les promesses d'une bonne balance.

  • Suivi

La différence majeure, est que les données sont automatiquement envoyées au site withings, ce qui permet d'avoir un joli graphique avec l'évolution de son poids, éventuellement de fixer un objectif visualisable, et cerise sur le gâteau, elle reconnait les différents utilisateurs qui l'utilisent pour enregistrer la mesure sur la bonne courbe! Bon, si vous avez un jumeau ou une jumelle qui a la même corpulence que vous, je ne sais pas si cela fonctionnera correctement, mais pour ma petite famille (5 personnes), aucun souci!


Sur le site, les données sont accessibles aisément, et surtout de façon très claire. Une belle réussite d'ergonomie.


  • Connectivité
L'avantage d'avoir les informations stockées sur internet, c'est qu'elles sont utilisables par d'autres applications. Dans mon cas, j'ai ainsi couplé les informations de poids avec runkeeper.com, ce qui permet dans runkeeper de suivre mon poids en fonction des runnings et autres activités que je fait. Que c'est beau la technologie!

  • Applications

Il existe une application iphone et ipad (gratuite) pour avoir à peu près les mêmes informations que sur le site, je ne vois pas vraiment l'intérêt, mais sachez que ça existe et que l'interface est aussi claire et intuitive que le site. Je pense que l'utilité est plus flagrante lorsqu'on a aussi le tensiomètre withings connecté à son iphone..

  • Conclusion
Inconvénients
le prix (129€, ne cherchez pas c'est partout le même prix. Withings semble avoir pour l'instant une politique très stricte en matière de tarifs). Par contre, ne l'achetez pas chez Withings, vous aurez alors des frais de port... Je vous conseille Amazon, sur lequel j'ai réalisé plusieurs achats sans mauvaises notes.

Avantages
Le produit vaut le prix à payer. En effet au delà de la simplicité et rapidité d'utilisation comparée aux balances que je connaissais avant, le fait d'avoir un suivi complet de l'information pour tous les membres de la famille est un réel service... Imaginez vous entrer les informations dans un tableau excel tous les jours... Les informations étant accessibles partout, il est extrèmement intéressant de les croiser avec d'autres applications. Bref, s'il ne doit rester qu'une seule balance, c'est celle-ci !

mardi 30 août 2011

Comment lancer une commande par ligne d'un fichier

Migrer l'emplacement d'une bibliothèque musicale et impact sur les listes

J'avais mes mp3 organisés en :
/musique/a-e/[artiste] - [album] (année)/...mp3s
/musique/f-k/[artiste] - [album] (année)/...mp3s

Pour des raisons de facilité de lecture, je change en
/musique/[Artiste]/[Album (année)]/...mp3

Et du coup, mes listes ne sont plus à jour du tout... Argh, mais comment faire ??
Allez, la solution en une petite ligne de bash :

Imaginons que la liste initiale s'appelle test.m3u
Qu'elle soit dans le répertoire /musique, là où se trouvent tous les répertoires avec les albums

Alors :

cat test.m3u | while read LINE; do if [ ${LINE:0:1} == \/ ] ; then MORCEAU=${LINE##*- } ; echo $MORCEAU ; find . -name "*$MORCEAU" >> NewList.m3u; else echo $LINE >> NewList.m3u ; fi ; done

Qu'est ce que ça fait :
Pour chaque ligne du fichier "test.m3u", on met la ligne dans la variable "LINE"
cat test.m3u | while read LINE;

Si la ligne commence par un "/", alors c'est un chemin vers un morceau mp3, on stocke la fin de la ligne, depuis le denier "- " dans la variable MORCEAU, (en effet mes mp3 sont sous la forme 01 - nom de la chanson.mp3)
if [ ${LINE:0:1} == \/ ] ; then MORCEAU=${LINE##*- }

On affiche le morceau en cours
echo $MORCEAU ;

On recherche le même morceau dans la collection musicale, et on inscrit le résultat de la recherche dans la nouvelle liste de lecture
find . -name "*$MORCEAU" >> NewList.m3u;

Et enfin, si la ligne ne commençait pas par "/" (elle devait donc commencer par # et être un commentaire m3u), on la copie directement
else echo $LINE >> NewList.m3u

Evidemment, en fonction de vos emplacement, c'est à adapter, mais cela ne devrait pas vous poser de problèmes...
Bon courage !!

dimanche 28 août 2011

Ne pas activer le bluetooth à chaque démarrage

Sous ubuntu 11.04 (et précédentes), le bluetooth est activé au démarrage. Je ne m'en sers pas, donc je fais clic droit sur l'icône, désactiver le bluetooth...

Pour éviter de faire cette opération à chaque fois, il suffit d'aller dans Système, Préférences, Applications au démarrage, et de décocher "Gestionnaire bluetooth"

Et voilà.

Envoyer et recevoir un fax avec le service de free

Pour configurer l'envoi de faxs directement depuis ubuntu sans avoir à se connecter à l'interface de gestion de free, il suffit d'utiliser le projet cups2freefax.

Après quelques installations, l'émission de fax est possible par l'intermédiaire d'une imprimante virtuelle (dans un document, il suffit alors de faire Imprimer, puis de choisir la nouvelle imprimante... Aussi simple que ça :

[28/08/2011 12:39:18] sudo apt-get update; sudo apt-get install cups zenity gcc libwww-mechanize-perl libnet-ssleay-perl
[28/08/2011 12:39:40] cd /tmp
[28/08/2011 12:39:40] wget http://www.sputnick-area.net/scripts/cups2freefax/cups2freefax_current.run
[28/08/2011 12:39:42] chmod +x cups2freefax_current.run
[28/08/2011 12:39:50] sudo /tmp/cups2freefax_current.run

Puis une fois le logiciel installé, ajouter une imprimante CUPS :
Dans votre navigateur, saisir http://localhost:631
Choisir l'onglet administration, entrez votre login mot de passe, puis ajouter une nouvelle imprimante avec les paramètres suivants :
Choisir "CUPS2FREEFAX" dans la liste des imprimantes
Ensuite : MAKE : choisir "generic"
Sélectionner ensuite le driver "generic postscript printer"
Puis conserver les options par défaut.

L'imprimante est alors accessible dans les imprimantes de votre PC.

Pour rappel, le numéro de fax associé à votre freebox est votre numéro de tél freebox +5 sur le 4ème chiffre (0950123456 -> 0955123456)

Si vous souhaitez configurer les mails qui vont recevoir les faxs qui vous sont envoyés, et les avis d'envoi de fax, il faut vous connecter dans l'interface de gestion de votre freebox, onglet téléphone, "Envoyer un fax", puis "Gérer les notifications e-mail pour la réception de fax)

Si vous avez fait une erreur dans le paramétrage de vos identifiants et mot de passe freebox lors du premier envoi de fax, vous pouvez revoir les paramétrages de cups2freefax dans le fichier ~/.cups2freefax/cups2freefaxrc

Le projet cups2freefax

samedi 27 août 2011

Programmer l'extinction automatique d'un PC sous ubuntu

L'objectif est dans le titre... Allons directement à la configuration :

Ajouter les droits nécessaires à l'utilisateur concerné

  • Ouvrir un terminal
  • Ouvrir le fichier de gestion des droits d'administration (commande suivante à taper dans le terminal)
sudo gedit /etc/sudoers 
  • Ajouter la ligne qui donne les droits à l'utilisateur, de lancer la commande "shutdown" sans mot de passe
[votre login]	ALL = NOPASSWD: /sbin/shutdown 
  • Modifier la crontab (liste des tâches planifiées de l'utilisateur)
[tof@elrond ~ 11:13]$ crontab -e 
  • En ajoutant la ligne suivante (à 20h00 tous les jours, lancement de la commande arrêtant le PC
00 20 * * * sudo shutdown -h now <br />
  • Et voilà !


mardi 23 août 2011

Unity - Icones de notifications

Certaines icones de notification n'apparaissent plus dans la nouvelle (11.04) mouture d'ubuntu. C'est par exemple le cas de davmail.

Pour rétablir la visibilité des icônes de notification ayant disparu, il "suffit" de lancer la commande suivante :

gsettings set com.canonical.Unity.Panel systray-whitelist "['all']"

mercredi 6 juillet 2011

Mettre en forme une cellule en fonction d’une autre

 

Si l’on souhaite mettre en forme des cellules en fonction du contenu d’autres cellules, la solution n’est pas intuitive.

Sous excel 2010 (cela doit marcher avec des versions plus anciennes) la manip est la suivante :

Imaginons que je veux avoir un format conditionnel dans ma colonne A, dépendant de valeurs dans la colonne G

  1. Sélectionner la colonne A
  2. Aller dans le menu Mise en forme conditionnelle –> nouvelle règle
  3. Le type de règle est “Utiliser une formule pour déterminer pour quelles cellules le format sera appliqué”
  4. Et ensuite dans la formule, saisir par exemple [=G1=”ok”] (sans les crochets)
  5. Définir le format souhaité

Et voila!

jeudi 23 juin 2011

Normaliser le volume d’une collection musicale

 

Lorsqu’on a rippé tous ses CD en mp3, bazardé son lecteur de CD, et remplacé tout ça par un PC avec un média center (n’hésitez pas, choisissez xbmc :-) un problème arrive forcément : les mp3 ne sont pas tous au même volume sonore.

La solution : mp3gain

Attention, il y a plein de logiciels qui font ça en modifiant la qualité du mp3 concerné, mp3gain ne fait qu’ajouter une informations de gain dans le mp3 sans le modifier.

Evidemment toujours sous linux style debian (ubuntu) :

apt-get install mp3gain

Ensuite aller dans le répertoire contenant vos mp3, puis lancer



find . -type f -iname '*.mp3' -print0 | xargs -0 mp3gain –r –k

La première partie de la commande recherche dans le répertoire courant (.) les fichiers (type f) nommés *.mp3, et les formate avec le chemin complet (-print0) pour les passer ensuite à la commande mp3gain qui va ajouter l’information de gain aux fichiers.


Et voila.

xbmc et compilations

 

La liste des artistes dans xmbc peut-être polluée par tous les artistes qui n’apparaissent qu’une fois sur une compilation…

Pour gérer correctement les CD de compilation sous xbmc, il n’y a qu’une solution solide : avoir un bon éditeur de tags id3(v2).

Easytag est un excellent gestionnaire de tags, mais il ne gère pas ceux qui sont nécessaires.

Donc : installer exfalso (l’éditeur de tag en général livré avec le lecteur audio quodlibet),

sous debian/ubuntu : sudo apt-get install exfalso

Et ensuite, il n’y a plus qu’à compléter les tags suivants :

albumartist = Various Artists (ou l’artiste de la compilation, bien sûr)

compilation = 1

Et voila, les compils apparaissent correctement dans xbmc

jeudi 16 juin 2011

Dupliquer des lignes d’un fichier Excel

Imaginons un fichier excel composé de lignes du type :

Col1 Col2 Col3 … Col10
Maison Adresse 1 Adresse 2 … Chambre, Salon, Cuisine
Appart Adresse 3 Adresse 4 …  
Bateau Adresse 5 Adresse 6 … Salle des machines, Plage

Cet exemple est complètement inutile, mais c’est le principe qui compte : imaginons que nous souhaitons construire des requêtes d’insertion en base, qui permettent d’insérer dans notre exemple, 6 lignes :

Maison Adresse 1 Adresse 2 … Chambre
Maison Adresse 1 Adresse 2 … Salon
Maison Adresse 1 Adresse 2 … Cuisine
Appart Adresse 3 Adresse 4 …  
Bateau Adresse 5 Adresse 6 … Salle des machines
Bateau Adresse 5 Adresse 6 … Plage

Voici la macro magique qui va permettre de générer le tableau 2 à partir du tableau 1. Attention, on suppose que les lignes à dupliquer sont celles qui contiennent en colonne 10, des valeurs séparées par des virgules.

Sub gogoJonyGo()
Dim iligne As Integer
iligne = 2
 
 
While Cells(iligne, 1).Value <> "" And iligne < 1000
    
    If InStr(1, Cells(iligne, 10).Value, ",") > 0 Then
    
        ichar = InStr(1, Cells(iligne, 10).Value, ",")
        sgauche = Trim(Left(Cells(iligne, 10).Value, ichar - 1))
        sdroite = Trim(Right(Cells(iligne, 10).Value, Len(Cells(iligne, 10).Value) - ichar))
        Rows(iligne + 1).Select
        Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
        Rows(iligne).Select
        Selection.Copy
        Rows(iligne + 1).Select
        ActiveSheet.Paste
        Application.CutCopyMode = False
        Cells(iligne, 10) = sgauche
        Cells(iligne + 1, 10) = sdroite
    
    End If
    
    iligne = iligne + 1
Wend
   
End Sub

Connexion bureau à distance en plein écran

Lorsqu’on réduit une fenêtre bureau à distance (ou qu’on la redimensionne), lorsqu’on maximise à nouveau la fenêtre, elle ne passe plus en plein écran.

Pour résoudre ce problème, il suffit lorsqu’on est sur le bureau tse, d’appuyer sur Ctrl+Alt+Pause.

Pour les portables Dell comme le mien, Ctrl+Alt+Fn+F12 (pause est sur F12) fonctionne.

Ahhh, ça va mieux!

mercredi 18 mai 2011

Unknown terminal

 

Lors de connexions ssh par l’intermédiaire de screen, certaines moutures de linux ne reconnaissent pas le terminal utilisé.

Cela peut poser problème pour des programmes comme iftop :

output: unknown terminal "screen"
root@gw:~ #iftop
interface:
eth0
IP address is: 10.1.2.2
MAC address is: 00:1c:c0:21:92:7d
Error
opening terminal: screen.


L’application ne tournera pas. Il suffit d’indiquer au shell, que le terminal que nous utilisons n’est pas “screen”, mais vt100 :


root@gw:~ # export TERM=vt100
root@gw:~ # iftop


Et voilà, problème résolu.

mardi 17 mai 2011

Avoir des + ou des–devant des nombres Excel

Dans format cellule et onglet nombre choisis ''personnalisé' dans la liste et mets cecci
[>0] +0,00%;[<0] -0,00%;Standard

jeudi 3 mars 2011

Des touches et des actions… Comment gérer sa télécommande sous linux

Tout simple, mais il est possible de passer longtemps à chercher la réponse sur les forums… Alors pour vous éviter de chercher des heures et des heures pourquoi vous n’arrivez pas à configurer lirc pour votre télécommande, vérifiez déjà cela :

Certaines télécommandes sont directement prises en charge par le noyau (un module) linux, et les boutons sont considérés comme des touches par le serveur X.

Pour le vérifier, arrêtez lircd ( /etc/init.d/lirc stop), et si le volume continue de réagir lorsque vous appuyez sur les touches correspondantes vous êtes dans le cas ci-dessus. Un petit “lsmod | grep ir_” finira de vous convaincre…

A ce stade, deux options : s’acharner à faire fonctionner lirc, ce que je n’ai pas eu le courage de faire, vu le temps déjà perdu à chercher pourquoi il ne marchait pas (mais à priori, lorsque la télécommande est géré par un module ir_xxx les codes des touches ne sont pas les mêmes que dans le cas contraire. Il faut donc les redéfinir dans le bon fichier de conf lirc). Ou prendre l’option d’il y a 20 ans, xmodmap.

Si les touches de la télécommande qui vous intéressent sont reconnues (lancer en terminal xev, et une fois le focus donné à xev, presser les touches concernées, le code de la touche doit apparaitre dans le terminal), il suffit de les définir très simplement : créer un fichier .xmodmap et de “mapper” le code de la touche à l’action désirée… Dans mon cas, je voulais juste qu’une touche de la télécommande fasse comme si l’on appuie sur “Return”, donc tout simplement : keycode 156 = Return

Pour la liste des actions (keysyms) reconnus par xmodmap, vous pouvez aller voir sur linuxquestions.org.

Un peu plus d’explications sur les keysyms et tout ce qui tourne autour, au cas où vous en ayez besoin, peut se trouver sur la documentation ubuntu, par exemple dans l’article configuration d'un clavier multimédia. La manpage de xmodmap est aussi riche en idées (inversion des boutons de la souris, des touches Ctrl/Fn des claviers…)

Mots clés Technorati : ,,,