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

Posté par  (site Web personnel) .
Étiquettes : aucune
1
25
mar.
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.
  • # il aurait été bien...

    Posté par  . Évalué à 2.

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

    Posté par  . Évalué à 4.

    C'est super chouette que ce soit automatisé, maintenant.
    Merci pour ton travail :-)

    Au passage, une question : j'ai viré macosx qui me prenait de la place et dont je ne me servais jamais. Ca veut dire qu'il faut que je le réinstalle pour récupérer le firmware ?
    Il n'existe pas un dépôt (pirate ? rhOOOooo!...) avec ce microcode disponible ?
    • [^] # Re: Merci

      Posté par  (site Web personnel) . Évalué à 1.

      Faudrait voir à le trouver sur le DVD. Ce serait même chouette qu'on puisse l'extraire directement depuis le DVD.

      Sinon, il y a un dépôt avec pas mal de version du pilote Apple, et même le microcode final. Le lien est le troisième à droite de mon nom. ;)

      Étienne.
  • # J'ai peur pour mon trollomètre

    Posté par  . Évalué à 4.

    Je viens d'acheter récemment le dernier modèle de trollomètre à la mode, et j'ai peur qu'avec ton journal tu le fasses complètement déjanter. Je dénombre une palanquée d'appel au troll :

    - Le fait de fêter Paques montre ton coté chrétien et pourrait attirer les trolls athés protestant contre la liaison entre libre et religion
    - Le microcode, dernier bastion propriétaire sur nos machines, que tu promeux ici par l'entremise d'un logiciel libre !
    - Le troll HAL vs udev (assez frais, je ne l'avais pas encore vu apparaître ici)
    - Tu supputes que le x86_64 a un support foireux du fait de toutes ses étranegetés
    - Tu ovationne les autotools alors que tout le monde sait qu'ils puent
    - Tu utilises HAL qui "supporte" un des systèmes aux licences pas forcément compatible avec la GPL (CDDL pour Solaris, sans compter le classique BSD vs GPL)
    - Tu critiques les disparités entre distributions, ce qui va t'attirer l'ire des partisans de la diversité
    - Les variables globales sont un héritage des vénérables Unix, et toi tu te permet de préférer les conventions d'un logiciel qui, à la vue de la lignée des Unix, fait figure de nain
    - Tu critiques Launchpad et bzr alors que ce site est visité par 80% d'Ubunterosiens
    - Tout en promottant git, alors qu'il ne fait même pas partie du projet GNU !

    Sans parler des fautes d'orthographe et de grammaire.

    Bon, je m'arrête ici, et j'essayerai de ne retourner sur ton journal quand le potentiel de commentaires trollifère aura diminué ...

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.