Informatique

Activer la capture du son sous Linux pour xvidcap

Voulant tenter de faire des screencasts, j'ai jeté mon dévolu juste xvidcap. Durant, mon test, je n'arrivais pas à faire de capture du son. J'avais bien branché mon micro et je pouvais l'entendre dans les enceintes. Mais il n'était pas capturé. je vais donc indiquer toutes les modifications que j'ai réalisé pour que ça marche, car ce n'est pas la première fois que j'ai ce genre de problème.

XvidCap n'écoute que OSS

En effet, xvidcap n'écoute que le point /dev/dsp, il faut donc réaliser la compatibilité OSS si vous utilisez alsa.

Activer la capture du micro

Ensuite, il faut penser à vérifier que la capture du son soit bien activé dans alsamixer. Pour cela, il suffit d'aller sur la partie Capture d'alsamixer. Pour y arriver, une petite tabulation suffit. Le screenshot suivant montre le cas de capture désactivé.

screenshot d alsamixer avec la capture son desactive

Il suffit ensuite d'aller sur les éléments désactivés et d'appuyer sur espace pour valider la capture. On obtient ainsi l'écran suivant :

screenshot d alsamixer avec la capture son active

J'ai ainsi pu enfin réussir mon test de screencast pour réaliser les screencasts que je souhaite.

[...]
Published on Ven 18 avr 2008 19:34
0 commentaires

Git-submodule, presque le svn:externals de GIT

Depuis le 27 février 2008, j'ai finalement décidé d'abandonner l'utilisation de mercurial dans mon projet Pictrails. J'ai fini par migré vers GIT. En effet, GIT est énormément utilisé par la communauté Ruby et c'est un très bon SCM. Un peu plus rapide que Mercurial et avec de meilleurs outils annexe comme par exemple git-svn. Voici par exemple un autre point qui me fait pencher un peu pour GIT. Il s'agit de git-submodule.

Un des gros points fort de SVN est la propriété svn:externals, qui permet de faire pointé un répertoire vers un autre repository SVN. Cette fonctionnalité n'existe pas à ma connaissance sous mercurial. Mais sous GIT, il y a git-submodule. C'est pas aussi bien que svn:externals, mais c'est déjà pas mal. En effet, le seul défaut de git-submodule est de ne pas pouvoir récupérer qu'une partie du dépôt GIT, comme un dossier en particulier. On est obligé de tout récupéré. svn:externals pouvait limiter la dépendance par contre. Je trouverais peut-être un palliatif.

Comment utiliser git-submodule ? Il faut d'abord trouver le repository GIT que l'on veux dupliquer dans son projet GIT. Un fois celui-ci trouvé, il faut l'ajouter comme submodule :

$ git submodule add <<repo>> /directory/

Une fois que c'est fait, un dossier .gitsubmodule est créé et il faut donc l'ajouter au versionning, le commiter et le push.

Par contre, si vous faite un pull du repository GIT qui contient ce submodule, le téléchargement des sous-modules ne se fait pas automatiquement. En conséquence, il faut penser a réaliser un init et un update des submodules.

$ git submodule init
$ git submodule update

Pareil, la mise à jour des submodules ne se fait pas automatiquement. Il faut faire un petit update de temps en temps.

$ git submodule update
[...]
Published on Sam 08 mars 2008 21:56
2 commentaires

Migration vers Typo 5.0

Ca y est ce blog a été migré vers la branche 5.0 Stable de Typo. Cette nouvelle version apporte énormément de changement que je ne détaillerais pas ici, car elles ont tout à fait bien été décrite.

J'ai même eu la chance d'avoir vu plusieurs de mes patchs intégrés à cette version.

Pour effectuer la migration vers cette nouvelle version de Typo, j'ai dû hélas faire quelques petites modifications. En effet, j'ai appris par Frédéric, qu'il y avait un petit bug à l'heure actuel. Les tags ne peuvent pas avoir de point dans leur nom. J'ai ainsi indiqué sur ce ticket la modification ci-jointe que j'ai réalisé pour faire passer la pillule à Typo. Hélas cela n'est qu'un contournement. Il suffit donc d'utiliser la magie de la console Rails pour éviter le problème en supprimant le point dans son tag.

rails@shinydedi /var/rails/typoblog-dev/current $ ./script/console production
Loading production environment.
>> t = Tag.find_by_name "rubyonrails2.0"
=> #"rubyonrails2.0", "updated_at"=>"2007-09-29 23:48:11.980446", "id"=>"18", "display_name"=>"rubyonrails2.0", "created_at"=>"2007-09-29 23:48:11.980446"}>
>> t.name "rubyonrails-2-0"
=> "rubyonrails2.0"
>> t.display_name = "rubyonrails-2-0"
=> "rubyonrails-2-0"
>> t.name = "rubyonrails-2-0"
=> "rubyonrails-2-0"
>> t
=> #"rubyonrails-2-0", "updated_at"=>"2007-09-29 23:48:11.980446", "id"=>"18", "display_name"=>"rubyonrails-2-0", "created_at"=>"2007-09-29 23:48:11.980446"}>
>> t.save
=> true

J'ai ensuite eu un nouveau petit problème lors du lancement de la tâche de migration de la base de donnée. Il me manquait le gem Rcov. Comme le serveur est mon serveur de production, j'ai préféré enlevé le fichier qui me demandait cette dépendance que d'installer ce gem. Par contre j'ai récupéré les sources du SVN de Typo. Donc peut-être que sur les versions releasés, ce fichier a été enlevé.

rails@shinydedi /var/rails/typo-5-0-stable $ rm lib/tasks/rcov.rake

Et après tout est passé. A part ma petite erreur d'oubli de changement de localisation du dossier static pour mon serveur. Mais là c'est que de l'administration pur et dur.

Enfin au niveau des modifications, j'ai aussi changé de thème pour conserver le nouveau thème par défaut de Typo. J'ai juste réalisé quelques modifications au niveau du fichier CSS pour que ça corresponde plus à mes envies. Je vous fournis les modifications pour les curieux.

Index: themes/dirtylicious/stylesheets/application.css
===================================================================
--- themes/dirtylicious/stylesheets/application.css     (révision 1624)
+++ themes/dirtylicious/stylesheets/application.css     (copie de travail)
@@ -21,8 +21,8 @@

 li {list-style: none;}

-h1 {font: normal 1.8em Tahoma,sans-serif;}
-h2 {font: normal 1.6em sans-serif;}
+h1 {font: normal 2.3em Tahoma,sans-serif;}
+h2 {font: normal 2em sans-serif;}
 h3 {font: bold 1em Tahoma,sans-serif;}

 h1,h2,h3 {padding-top: 6px; color: #553; margin-bottom: 4px;}
@@ -167,6 +167,16 @@
     color: #654;
 }

+#sidebar #categories li a {
+    display: inline;
+    padding: 0 0 0 5%;
+}
+
+#sidebar #archives li a {
+    display: inline;
+    padding: 0 0 0 5%;
+}
+
 /* footer */
 #footer {
     background: #949490;
@@ -325,3 +335,26 @@
 #sidebar table tfoot #next a {text-align:center;}

 #searchform {padding: 10px;}
+
+#delicious {
+    border: 4px solid rgb(188, 204, 235);
+    padding-left: 5%;
+    padding-right: 2%;
+    padding-bottom: 10px;
+}                                                   
+
+pre {
+    background-color: black;
+    color: white;
+    font-size: 1.3em;
+    padding: 2%;
+}
+
+.content h1 {
+    font-size:1.6em;
+}
+
+.content h2 {
+    font-size: 1.4em;
+    padding-left: 5%;
+}

[...]
Published on Ven 11 jan 2008 21:17
0 commentaires

Quel avenir pour les applications web libres ?

Je lis régulièrement le blog de Biologeek et j'aime beaucoup ses idées et analyses sur le Web en général. Aujourd'hui il a demandé au petit blogueur comme moi de donner leur avis sur Quel avenir pour les applications web libres? Voulant être pendant un instant une personne qui donne son avis je vais donner mon avis sur ce sujet.

Je suis pour ces applications

Personnelement, je suis utilisateur et contributeur de plusieurs projets d'application web libre comme par exemple Redmine ou Typo. J'aime beaucoup les utiliser car elles me permettent de faire ce que je souhaite et même de les modifier à ma convenance si je le souhaite. Par contre, cette attitude de modification n'a de raison que si on sait programmer, ce qui est mon cas.

Ce type d'application me permet aussi de conserver mes propres données et de ne pas les jeter en pâture à tout service Web qui n'aura peut-être pas la pérénité ou le respect de la vie privée que je souhaite.

Quel défaut pour ces applications ?

Effectivement comme je l'ai dit, je suis un informaticien, développeur et accro aux nouveautés informatiques. Je sais tout ce qu'il se passe et prend du temps pour installer telle ou telle application. Mais un utilisateur lambda ne peux pas faire tout ça facilement. On sait tous que beaucoup de monde ne savent que les bases de l'internet, alors nous comprennons qu'elles ne puissent pas installer de ces applications qui leur deviennent donc inaccessible.

L'alternative des applications gratuites

Heureusement le web a permis à toutes ces personnes d'apporter des solutions plus simple pour elle et surtout leur donner accès à Internet. C'est exactement la philosophie du Web 2.0. Nous avons ainsi pu découvrir des applications vraiment interressanteis et bien réalisées. Car forcement une société qui a des ressources peux si elle le veux, faire mieux que des bénévoles. Justement ces applications ont pris leur racine de philosophie issue de l'open-source comme des releases le plus souvent possible. A tel point qu'on ne nous annonces pas les nouveautés. On les découvre. Et aussi la demande d'avis des utilisateurs.

Et l'avenir des applications web libre alors ?

Alors que je ne le souhaite pas, j'ai vraiment peur pour ces applications. Autant je trouvais qu'elles prenaient de l'importance il y a 2 ans, autant je trouve que leur utilisation décline.

En effet, regardez l'exemple des clients mail ou RSS qui sont passé aux oubliettes avec l'utilisation de Gmail ou Google Reader qui sont vraiment de très bonne application. Même nous les Geek passons de plus en plus par ces applications tierces que par des applications internet libre.

Espérons que j'ai tord. Car même si c'est bien pour l'utilisateur lambda qui peux avoir accès à tout ça, il ne se rend pas forcement compte des enjeux qui sont derrière et principalement l'intégrité de ses données. Par exemple beaucoup de ces services sont hébergés dans d'autre pays que la France. Ainsi il ne sont pas assugéti à la CNIL et peuvent utiliser librement nos données personnelles sans que nous ayons aucun recours.

[...]
Published on Dim 25 nov 2007 12:09
0 commentaires

Mise à jour de ma platforme de dev sous Redmine-0.6.0

Ça y est, j'ai mis à jour ma petite plate-forme de gestion de projet tournant sous Redmine. Ayant annoncé la sortie de Redmine 0.6.0 je me devais de migrer sous cette nouvelle version.

Encore une fois la migration fut aisé et seule quelques lignes de commandes furent nécessaire.

En parallèle, je commence un nouveau mini-projet que je vais nommer WhoToWho. Ça ne sert à rien. Mais c'est fun.

[...]
Published on Mer 14 nov 2007 09:35
0 commentaires

Créer une authentification HTTP avec Nginx

Voici comment réaliser simplement une authentification HTTP avec Nginx. Pour cela, il suffit d'utiliser le module d'authentification basic. Pour l'utiliser c'est très simple. Il suffit d'ajouter dans votre niveau d'url, les directives suivantes :

  • auth_basic : qui permet de définir qu'il y a une authentification HTTP si il n'y a pas "off". Le texte ainsi donnée à cette directive sera affiché pour informer l'utilisateur que l'url contactée est sécurisée par HTTP.
  • auth_basic_user_file : donne un chemin de fichier contenant la liste des utilisateurs ayant accès à l'url avec leur mot de passe. Les mots de passes peuvent ainsi être écrit en clair ou de la même façon qu'Apache avec crypt(3). Ainsi vous pouvez directement utiliser vos anciens fichiers Apache, ce qui est très pratique.

Voici donc un exemple pour mettre une authentification HTTP sur un Vhost :

server {
  auth_basic "Ce serveur nécessite une authentification";
  auth_basic_user_file conf/httpassword;
}

Exemple pour mettre une authentification HTTP sur une url :

server {
  location /admin {
    auth_basic "Cette partie nécessite une authentification";
    auth_basic_user_file conf/httpassword;
  }
}

Exemple de fichier de gestion des utilisateurs :

# Les commentaires
user:pass
user2:pass2:commentaires
user3:pass3
[...]
Published on Lun 01 oct 2007 14:10
0 commentaires

Une bonne amélioration pour Firefox 3

Ca y est c'est officiel, Firefox sera meilleur en terme de fuite de mémoire et autre consommation excessive. On peux ainsi lire l'annonce sur le blog de Jesse Ruderman.

Cette annonce a ainsi été relayé par Slashdot et Tristan Nitot.

Je suis vraiment content que cette annonce ait été faite. En effet, j'aime beaucoup Firefox et surtout l'utilisation de ses nombreux plugins. Mais le fait de devoir régulièrement redémarrer cette application était un peu désagréable surtout avec l'utilisation actuelle de site internet de plus en plus puissance en terme de Javascript.

[...]
Published on Mar 25 sept 2007 07:29
0 commentaires

replaceHTML plus rapide que innerHTML

Steven Levithan de RegexPal a réaliser une page qui permet de faire une comparaison de performance entre les deux méthodes Javascript innerHTML() et replaceHTML().

Grâce à cette page de benchmark, il prouve sans conteste qu'il faut de préférence utiliser la méthode replaceHTML que la méthode innerHTML. Bien sûr, certain cas impose d'utiliser innerHTML.

[...]
Published on Ven 14 sept 2007 13:57
0 commentaires

lister un répertoire avec Nginx

Dernièrement, je me tente à migrer ma dédibox sur le serveur Web Nginx à la place d'Apache. Nginx est le serveur web qui buzz un peu partout dans le milieu des framework Web en Python et Ruby.

Dans ma migration, j'ai voulu définir une URL qui permette de lister un répertoire et naviguer dedans. Ayant eu quelques petites difficultés et constatant que la documentation française étant très pauvre, je vous livre ma recherche.

Pour lister un répertoire il faut utiliser le module AutoIndex. Dans ce module la directive autoindex à "on" permet de lister le repertoire. Pour définir l'URL qui pointera sur ce répertoire, il faut utiliser la directive location en indiquant l'URL que l'on souhaite. Enfin pour définir le répertoire qui sera listé sur cette url il faut utiliser la directive alias et donner en paramètre le chemin du répertoire.

Voici un exemple de configuration a mettre dans votre fichier de conf Nginx.

location /votre_path {
  alias /votre_repertoire/sous_repertoire/; 
  autoindex  on;
}

Je trouve que même cette fonctionnalité est plus rapide que sous Apache. Je suis vraiment content d'Nginx. En plus je comprend enfin la documentation d'un serveur Web.

Published on Jeu 06 sept 2007 14:08
0 commentaires

Trouver l'url du player de la webradio RFM

Avec ma copine, on écoute régulièrement RFM autrement que par leur diffusion FM. Le seul système qu'on avait été de se connecter sur leur site et d'utiliser leur «player» intégré au navigateur. Ayant marre d'utiliser ce système qui ne faisait que faire ramer mon navigateur, j'ai entrepris une recherche de l'url lu par la page pour diffuser la radio. J'ai fini par la trouver et je vous la livre ici pour vous éviter de la rechercher. Et moi aussi par la même occasion si je dois la rechercher à nouveau.

http://player.rfm.fr/V4/player_rfm/rfm.asx
Published on Sam 21 juil 2007 19:02
1 comment

RSS Follow me on Twitter