Blog-like notes

Du logiciel libre sur les appareils électroniques

Ceci est ma réponse à une réplique qui m’est souvent faite lors des discussions^W trolls tournant autour des logiciels libres ; lorsque j’expose ma position de « libriste », en expliquant notamment que je refuse d’utiliser un logiciel non-libre sur ma machine, immanquablement un petit malin va sortir quelque chose du genre « tu devrais refuser d’utiliser un four à micro-ondes, le firmware à l’intérieur n’est pas libre ! » — parfois avec des variantes, « tu devrais refuser d’utiliser un téléphone », « tu ne devrais pas jouer à des jeux PlayStation™ 2 », etc. L’idée générale étant que si je n’accepte que du code libre sur mon ordinateur, je devrais pour être cohérent étendre cette exigence à tous les appareils qui m’entourent.

(Dernier exemple en date, lu sur DaLinuxFrenchPage1 :

T'as un PC/micro-onde/frigo/tele/voiture/clavier sans-fil/lecteur dvd/montre digitale/reveil/etc.

Mon dieu, du code non-libre s'execute sur des appareils en ta possession. Etre impur, au goulag centre de rehabilitation pour une vie harmonieuse!

Je précise que cette réplique ne m’était pas adressée, mais elle est bien représentative.)

Électronique et informatique embarquée

Un premier point que je souhaite relever est que tout ce qui est électronique n’exécute pas nécessairement du code. Même si l’informatique embarquée se répand de plus en plus,2 beaucoup d’appareils sont aujourd’hui encore « purement » électroniques : leur fonctionnement dépend directement de l’agencement des composants et non d’un quelconque « firmware ». On peut souhaiter que les schémas électroniques de ces appareils soient libres, mais cela relève non pas du mouvement du logiciel libre mais de celui de l’Open Hardware, auquel j’attache personnellement beaucoup moins d’importance.

Donc, oui je possède et utilise divers appareils électroniques (comme un four à micro-ondes ou un réveil) et non, il n’y a aucune contradiction avec ma position de libriste. Same troll try again.

Inventaire

Les appareils purement électroniques mis de côté, que me reste-t-il comme appareils exécutant du code ?

Aucun de ces codes n’est libre, et je n’y ai pas accès que ce soit en lecture ou en écriture.3 Pourtant ça ne me pose aucun problème, alors que je refuse tout code non-libre sur mon ordinateur. Pourquoi ?

Ce ne sont pas des ordinateurs

Aucun de ces appareils ne peut être assimilé à un ordinateur. Un ordinateur est un outil générique, doté de beaucoup de moyens (grande puissance de calcul, gros espace de stockage, périphériques de capture et de communication…) lui permettant de remplir une grande variété de tâches. Il n’est réellement limité que par l’imagination de l’utilisateur. Je me repose sur lui pour une grande partie de mon travail et je lui confie une énorme quantité de données extrêmement variées.

Accepter du code non-libre sur une telle machine, c’est d’une part se soumettre à des limitations arbitraires (si le code ne fait pas exactement ce que je veux ou ce dont j’ai besoin, je ne peux rien y faire), et d’autre part confier aveuglément un gros potentiel de nuisance à du code dont je ne sais rien. Cela, je m’y refuse.

Il en va très différemment des appareils électroniques cités plus haut. Ce sont des outils intrinsèquement limités, entièrement consacrés à une fonction précise. Ils ne peuvent guère être utilisés pour autre chose que ce pour quoi ils sont conçus, et cette limitation ne vient pas de leur firmware. Même avec un firmware libre, mon synthétiseur ne pourrait pas faire autre chose que générer des sons ou mon téléphone ne pourrait pas faire autre chose que téléphoner. Ils ne voient passer qu’une faible quantité de données extrêmement spécialisées et ne disposent pas de périphériques de communication qui leur permettraient d’échanger ces données avec l’extérieur, leur potentiel de nuisance est donc très réduit.

Conséquemment, je ne considère pas qu’accepter du code non-libre sur de tels appareils soit en contradiction avec mes convictions libristes. Que l’on donne à ces outils davantage de fonctions et de possibilités, les rapprochant d’un ordinateur (genre un four à micro-ondes qui téléchargerait des recettes sur Internet et qui garderait trace des plats que j’y fais réchauffer), et je réclamerai qu’ils fonctionnent avec du code libre (ou je refuserai de les utiliser).

  1. L’absence totale d’accents est d’origine.
  2. Avec des conséquences pas toujours heureuses d’ailleurs, comme le fait qu’il arrive à ma nouvelle télévision (trop sophistiquée pour être purement électronique) de « planter »… C’est beau le progrès.
  3. En réalité j’ai accès au firmware de l’imprimante, qui est stocké sous la forme d’un fichier sur mon ordinateur, d’où il doit être téléchargé vers l’imprimante à l’allumage de celle-ci. Mais le fichier en question est un blob binaire dont je ne peux pas faire grand’chose, et certainement pas exercer l’une quelconque des quatre libertés.