Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Journal : Chargement du microcode des iSight intégré dans HAL avec ift 1.2

Posté par Étienne Bersac (Jabber id, page perso, ) le 25 mars 2008
Ave,

Joyeuses fêtes de Pâques à tous !

Après avoir laissé les bugs remonter, je me suis mis hier au boulot pour produire une nouvelle version d'isight-firmware-tools ( https://launchpad.net/isight-firmware-tools ) : la 1.2.

Outre le support des derniers pilotes d'Apple, la principale nouveauté de cette version est le passage de udev à HAL comme infrastructure pour charger le microcode.

À l'instar de udev, HAL permet d'exécuter un logiciel aux différentes étapes de la vie d'un périphérique dans un système : ajout o, suppression et bien d'autres. Ces programmes s'appellent les "callouts" et sont stocké dans /usr/lib/hal/ avec les addons. On écrit une règle au format fdi qui filtre les périphériques et leurs ajoute le nom du callout que HALd se chargera d'exécuter au moment opportuns.

Pourquoi donc passer de udev à HAL ?

Un des soucis des règles de udev est qu'elles doivent être générée avec le chemin absolu du programme à éxécuter. Très pénible couplé avec le fait que les autotools ne permettent pas l'expansion récursive générique d'une variable comme c'est le cas dans les Makefile.am. Cela pose problème avec les architecture x86_64 qui utilisent /usr/lib64/udev/ au lieu de /usr/lib/udev …

Autre soucis, c'est que udev est spécifique à linux alors que HAL fonctionne sur Solaris et BSD également.

Plus important, HAL est vraiment stable d'une distribution à l'autre. udev ne transmet les infos que via des variables d'environnement qui sont aléatoirement défini suivant les distributions et leur version. De fait on est souvent amener à bidouiller. Les propriétés d'un périphérique HAL sont toujours disponible (quid de usb.linux.device_number ??).


J'avais renoncé à utiliser bzr pour ift car il avait encore planté lors d'un push vers launchpad (j'utilise bzr pour ubuntu-gdm-theme). Je me suis donc mis en tête de tester git et un de ces nouveaux fameux services de publication de dépôt git. J'ai renoncé à githup – qui me fait penser à sourceforge – et j'ai opté pour gitorious http://gitorious.org/projects/isight-firmware-tools/ . Autant dire que j'ai été très satisfait de git et de gitorious. Petit à petit, je découvre les multiples facettes de git et il faut bien reconnaître que la rapidité et la fiabilité de ce logiciel sont excellentes !

Les deb sont dispos dans ma PPA : https://launchpad.net/~bersace/+archive Les sources sont dispo à https://code.launchpad.net/isight-firmware-tools/main/1.2 . N'hésitez pas à tester notamment sur BSD et Solaris !

Cordialement.
Étienne.

> Lire le journal (10 commentaires, moyenne: 2,6).  

Vous avez demandé le commentaire #916326.

il aurait été bien...

Posté par cosmocat () le 25/03/2008 à 09:50. (lien). Évalué à 2.

de juste indiquer que iSight est le nom de la webcam d'Apple.

  • [^]Re: il aurait été bien...

    Posté par Étienne Bersac (Jabber id, page perso, ) le 25/03/2008 à 11:28. (lien). Évalué à 2.

    Je crois que le titre du journal étais déjà assez long ;) J'y penserai s'il y a une prochaine version.

    --
    E Ultreïa !