Hobbestigrou

Just another python and perl developer

Contrôler le son depuis le clavier avec qtile.

planet-libre qtile python Python

19 jan. 2014 | hobbestigrou | comments

Introduction

Pour rester sur le ton de qtile, un petit article assez rapide, il est pratique de pouvoir contrôler le son depuis son clavier.

Configuration

C'est encore une fois dans le fichier de configuration qtile qui se trouve dans le répertoire utilisateur .config/qtile/config.py qu'il faut se rendre et ajouter quelques lignes:

Key([], 'XF86AudioRaiseVolume',
    lazy.spawn('amixer -c 0 -q set Master 2dB+')),
Key([], 'XF86AudioLowerVolume',
    lazy.spawn('amixer -c 0 -q set Master 2dB-')),
Key([], 'XF86AudioMute',
    lazy.spawn('amixer -c 0 -q set Master toggle'))

Si le clavier possède des touches multimédia, il n'est pas utile d'indiquer une touche ou un couple de préfixe il est donc possible de laisser le premier paramètre vide, pour le deuxième paramètre on indique le nom de la touche, utiliser la commande xev pour vérifier. Pour finir on fait appel à la commande amixer l'option c permet d'indiquer la carte à utiliser, l'option q est pour ne pas afficher le résultat des modifications, set est le mixeur il faut indiquer en premier paramètre la sortie auquel appliquer l'opération.

Conclusion

Un petit article rapide qui permet d'indiquer comment gérer le son depuis le clavier avec qtile, ce qui est pratique.

Utilisation de supervisor sur un projet Perl avec perlbrew.

psgi Python perl Perl perlbrew supervisor

3 jan. 2014 | hobbestigrou | comments

Introduction

Comme certains auront pu le constater, mon blog n'était pas stable ces derniers temps, une raison assez simple j'utilise un petit moteur écrit en Perl, et j'avais pas pris le temps de configurer un outil pour relancer de manière automatique le tout, en cas de coupure quelconque, mais il y a supervisor pour faire ça qui fonctionne très bien et qui est simple à configurer. Je n'avais pas spécialement ni la tête, ni l'envie d'écrire malheureusement, pour diverses raisons mais j'ai décidé de m'y remettre sérieusement, et d'avoir configurer supervisor m'a motivé, et quoi de mieux que de le présenter rapidement pour reprendre.

Installation

Pour debian et dérivée il existe un paquet:

sudo apt-get install supervisor

Pour les autres distributions il doit aussi avoir un paquet de disponible autrement il est possible de l'installer via pip.

Configuration

Supervisor utilise des fichiers ini pour sa configuration ce qui est assez simple, il y a des en-têtes avec le nom de l'application. Il est recommandé en général d'avoir un fichier de configuration par service. Je vous recommande aussi la lecture du blog de marmotte sur le sujet1. Il y a un certains nombre d'options disponible:

  • command qui permet d'indiquer la commande à exécuter par supervisor,
  • environment pour définir des variables d'environnement utile à l'execution du programme,
  • directory indiquer le répertoire duquel sera lancé la commande,
  • autostart un bolean pour indiquer si il faut lancer automatiquement le programme,
  • user pour spécifier quel utilisateur lance la commande

Pour finir un certain nombres d'options pour les logs.

Utilisation avec plackup et perlbrew

J'ai dis que je l'avais utilisé pour un projet Perl, j'utilise perlbrew. Pour utiliser la version que je souhaite avec perlbrew j'utilise en principe la commande use qui va finalement définir des variables d'environnements, voici ma configuration qui peut servir de base pour tous projets Perl:

[program:MahewinSimpleBlog]
command = /home/hobbestigrou/perl5/perlbrew/perls/perl-5.14.2/bin/perl /home/hobbestigrou/perl5/perlbrew/perls/perl-5.14.2/bin/plackup -E deployment -s Starman --workers=10 -p 4000 -a bin/app.pl -D
directory = /home/hobbestigrou/MahewinSimpleBlog
environment = PERL5LIB='/home/hobbestigrou/MahewinBlogEngine/lib',PERLBREW_ROOT='/home/hobbestigrou/perl5/perlbrew',PATH='/home/hobbestigrou/perl5/perlbrew/bin:/home/hobbestigrou/perl5/perlbrew/perls/perl-5.14.2/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games',MANPATH='/home/hobbestigrou/perl5/perlbrew/perls/perl-5.14.2/man:',PERLBREW_VERSION='0.43',PERLBREW_PERL='perl-5.14.2',PERLBREW_MANPATH='/home/hobbestigrou/perl5/perlbrew/perls/perl-5.14.2/man',PERLBREW_SKIP_INIT='1',PERLBREW_PATH='/home/hobbestigrou/perl5/perlbrew/bin:/home/hobbestigrou/perl5/perlbrew/perls/perl-5.14.2/bin',SHLVL='2'
user = hobbestigrou
stdout_file = /home/hobbestigrou/mahewinsimpleblog.log
autostart = true

Il suffit donc simplement d'utiliser l'option de configuration environment2 qui permet de définir des variables d'environnements, et d'appeler plackup avec son chemin complet et celui pareil pour l'interprète perl.

Conclusion

C'est un outil très pratique qui rend des services et permet de se soutraire du lancement manuel de processus et qui le redemarre de manière automatique si pour une raion ou une autre il est coupé. De plus maintenant, je vais pouvoir configurer simplement tous mes projets avec un daemon quelque soit le langage et utiliser supervisor.


  1. Un bon article sur supervisor http://blog.garamotte.net/posts/2013/09/13/fr-manage-daemons-with-supervisor.html 

  2. Le fonctionnement est similaire avec virtualenv il suffit de regarder les variable fixé par l'outil 

Configuration bitlbee weechat

jabber bitlbee weechat planet-libre

6 août 2013 | hobbestigrou | comments

Introduction

Bitlbee est une application qui permet d'utiliser un client irc pour se connecter sur un réseau type xmpp par exemple. Il permet de faire une passerelles entre de nombreux réseaux de messagerie instantanée. Il y a un moment que j'utilise weechat comme client irc, c'est plus facile d'utiliser une seul application pour la gestion de ses différents comptes. J'utilise donc bitlbee avec weechat.

Installation

L'installation pour debian et ses dérivées:

sudo apt-get install bitlbee

Configuration bitlbee

Il faut avoir weechat de lancer, puis ensuite il faut se connecter au serveur:

/connect localhost

Lors de la première connexion, il faut se créer un compte bitlbee;

register mot_de_passe

Ensuite il est possible de s'identifier:

identify mot_de_passe

Puis ajouter un compte et s'y connecter:

account add jabber nom_utilisateur@serveur_jabber.im
acc 0 set password mot_de_passe
acc 0 on

Configuration weechat

Maintenant il est possible de configurer weechat pour qu'il se connecte automatiquement au serveur et au compte jabber à l'ouverture de weechat.

Ajout du serveur:

/server add &bitlbee localhost -autoconnect
/set irc.server.&bitlbee.command "/msg &bitlbee identify mot_de_passe_bitlbee"

Conclusion

Une application très pratique pour pouvoir utiliser par exemple son compte jabber avec son client irc préféré, puis très facile à configurer et à utiliser, parfait à utiliser avec weechat.