Bonjour et merci pour cet article ! Juste une précision à propos du Fairphone :
Comme ce matériel est documenté et les pilotes sont open source, de nombreuses autres distributions fonctionnent aussi sur ce téléphone.
Les pilotes ne sont pas particulièrement libres ou open source, en tout cas pas plus que n'importe quel autre téléphone équipé de puces Qualcomm. Celles-ci sont notoirement connues pour demander un très grand nombre de drivers propriétaires et ont de plus une architecture matérielle qui ne sépare pas le processeur des applications, celui qui fait tourner Android et a accès aux données de l'utilisateur et celui du modem (pour l'accès au réseau GSM et données) qui fait tourner un système entièrement propriétaire et qui a donc également accès aux données de l'utilisateur (et toutes les facilités pour les exfiltrer).
De plus, les plateformes Qualcomm font partie de celles qu'il est impossible de faire démarrer sans les logiciels propriétaires signés par le fabricant (et donc impossibles à libérer même avec les informations techniques pertinentes).
Fairphone n'a jamais fait état d'une volonté d'utiliser des composants véritablement compatibles avec les logiciels libres, malheureusement. Quand à la documentation du matériel, je n'ai pas connaissance du fait que les schémas électroniques sont mis à disposition par l'entreprise (mais c'est peut-être le cas, à vérifier).
Bonjour et merci pour ce commentaire fort développé et détaillé !
Je dois bien l'admettre, la citation relevée est imprécise et "aucune manière de vérifier quoi que ce soit" est une exagération qui mérite la critique. Les contraintes d'une émission de radio (en particulier pour le grand public) ne laissent pas vraiment la place pour entrer dans ces détails et facilitent les raccourcis trop hasardeux.
L'idée que j'ai voulu transmettre, c'est plutôt que le logiciel propriétaire n'offre pas des garanties suffisantes dès lors que l'on ne considère plus le fabricant comme un tiers dans lequel on place toute sa confiance.
Je ne crois pas que la seule possibilité d'étudier le code par rétro-ingénierie soit très significative en termes de garanties de sécurité.
D'une part, parce-que cela demande un travail et un investissement très lourd qui me semble assez peu systématisable. Étudier chacun des logiciels utilisés par un appareil de cette façon demande simplement trop de ressources pour être mis en œuvre à large échelle. De plus, c'est un sujet légalement sensible et il peut être compliqué de publier de telles recherches "preuves à l'appui" puisque l'assembleur correspondant ne peut être publié.
Le second point, à mon avis le plus essentiel, c'est que même en ayant identifié des failles de sécurité, l'utilisateur n'a pas la capacité de les corriger et ne peut qu'en faire part au constructeur, qui décidera de les résoudre ou non.
Et puis au fond, ça reste une question personnelle qui dépend des garanties que chacun recherche et de la confiance portée en chaque acteur.
Bonjour et merci pour cette dépêche ! Je me permets cependant une petite correction : le VPU en question en un Video Processing Unit (pour accélérer le décodage/encodage de vidéos) et non un Vision Processing Unit, qui fait lui intervenir des accélérateurs de type réseaux de neurones.
Il existe bien une distribution GNU/Linux pour quelques téléphones : le projet SHR.
Toutefois, Android a clairement une interface mieux adaptée, plus utilisable, etc.
Les sources sont la, mais je peux pas mettre un kernel plus à jour, sauf à faire le portage des morceaux manquants ou sauf à oublier l'usage d'android. Si je veux le 3.9 sur mon galaxy s II, y a de grande chance que je ne puisse plus démarrer grand chose d'android. Et je parle pas des glues entre le kernel et les pilotes proprios pour la partie graphique, les trucs que les mainteneurs X/mesa refusent en bloc.
Ben oui, si c'est pas possible, c'est parce-que peu de choses sont mainline, mais là, rien de nouveau ni de très spécifique à Android. Les constructeurs ont besoin de développer leurs versions modifiées rapidement sans attendre que le nombre considérable de patchs en question soit accepté upstream. C'est le cas sur beaucoup de plateformes ARM (cf linux-sunxi). Sinon il faut faire le travail de portage soi-même (et les parties Android aussi peuvent-être portées).
Et SHR, je compte pas ça comme distribution classique ( même si je comprends que tu puisses compter ça dans le sens ou classique serait non android ) vu que c'est quand même prévu pour l'embarqué, je parle plus de prendre une version arm non modifié. Tu peux démarrer ça en chroot tout au plus. Mais je vais pas avoir le choix de mettre xorg, de me passer de surface flinger ou ce genre de choses. Au mieux, je peux attendre une version de waylnd/mir qui supporte les pilotes android.
Je dis distribution classique car c'est du GNU/Linux classique, avec Xorg, glibc, enlightenment, etc. On pourrait tout aussi bien faire tourner Debian avec GNOME ou LXDE. D'ailleurs, le GTA04 est vendu avec Debian et LXDE préinstallé, et c'est tout aussi possible sur n'importe quel téléphone Android, c'est juste que personne ne l'a fait parce-qu'il faut bien reconnaître que rien n'égale Android niveau utilisabilité sur un téléphone. Le reste n'est juste pas adapté.
Crois-moi, les vendeurs sont bien malheureux du prix, au moins autant que les acheteurs potentiels (qui eux ne dépendent pas du succès de ce projet pour se payer à bouffer). Si le prix est aussi élevé, c'est à cause de la (très) faible demande, qui force à produire au compte-goute. Et produire un téléphone unité par unité, ça coûte cher. Et du coup, vu que c'est cher, personne n'en achète, bref, c'est un cercle vicieux.
Les initiatives de commandes groupées, les "Group Tour" sont mises en avant par Golden Delicious: si assez de personnes y souscrivent, la fournée est lancée au prix (plus bas) annoncé et sinon, les gens sont remboursés. Que faire de plus ?
Tu peux te démerder pour avoir un appareil sans pilote proprio sans trop te creuser la tête. Un système sur android sans soft proprios, y a que dans qemu qu'on voit ça.
Bah voilà, une belle confusion, puisque finalement dire "Android", ça n'a plus beaucoup de sens. Les restrictions dont tu parles sont effectives sur une certaine version d'Android distribuée par un certain opérateur sur un certain téléphone et n'ont rien à voir avec ce-que tu peux trouver ailleurs. Un Nexus 4 avec AOSP n'aura pas ces restrictions, CyanogenMod non-plus, Replicant non-plus, etc.
Donc rejeter Android comme ça, d'un revers de main, c'est faire un cas général de ce-qui réside dans un détail. Non, toutes les versions d'Android ne sont pas entièrement libres et peuvent donc contenir ces restrictions, oui, il existe d'autres versions sans ces restrictions, oui, il existe des versions entièrement libres d'Android. Et le système Android permet que de telles versions existent !
Pour Windows Phone, je ne vois nulle part la possibilité d'installer un dérivé complètement libre ou au moins dénué de restrictions.
La différence est déja de savoir si c'est distribué de base ou pas
Je prends distribué au sens large ici (c'est à dire présent dans les dépôts, et pas seulement "installé par défaut").
Et de nos jours, tu va trouver à tout casser des pilotes 3d proprios, mais en général, la 2d marche sans pilote fermé. Et parfois une carte wifi ou ethernet qui coince, mais j'ai pas le sentiment que ça aille plus loin.
Assez d'accord. Les problèmes sont ailleurs.
Dans android, c'est le pilote graphique entier, le pilote son, wifi, qui sont proprios, et qui empeche toute idée de mise à jour ou de recompilation du kernel. Ou qui parfois ouvre des bonnes grosses failles comme celle de samsung sur le galaxy s II et son /dev/jesaisplusquoi tout troué.
Il faut bien différencier plusieurs choses: la partie "Linux" du pilote est systématiquement libre (à peu d'exceptions près), même si elle n'implémente rien et que le vrai driver est en user-space, ce-qui arrive. C'est vrai pour le pilote graphique, rarement le son et je n'ai jamais vu cela se produire pour le wifi (le driver est systématiquement libre).
On peut tout à fait recompiler le noyau sans soucis (mais son installation peut-être impossible si TiVo-isé, cf mon autre commentaire). Ce n'est généralement pas le cas et des distros comme CyanogenMod ou Replicant recompilent systématiquement le driver (et peuvent éventuellement y ajouter des modifications).
Bah, en quoi Android est un succès du logiciel libre ?
D'accord pour dire qu'Android n'est pas un succès du logiciel libre. Un succès de l'Open Source tout au plus.
Quelques corrections factuelles:
J'ai du Linux dans mon téléphone, mais je peux pas modifier le kernel,
Si, à vrai dire, toutes les sources ses noyaux Linux utilisés dans tous les téléphones Android ont été mises à disposition (afin de respecter la GPLv2, sauf si l'entreprise viole ouvertement la licence, ce-qui arrive dans le cas de quelques constructeurs chinois).
et comme l'userspace est lié au kernel, je peux pas non plus mettre l'userspace que je veux ou une distrib classique.
Faux également. Il est assez simple de faire tourner une distribution GNU/Linux classique sur un téléphone Android (c'est le cas de SHR qui tourne sur Nexus S ou encore Galaxy Nexus). D'un point de vue de développeur (et je parle en connaissance de cause), les changements à apporter au noyau sont de l'ordre de quelques lignes dans la defconfig.
Par contre, si le bootloader vérifie la signature du noyau (TiVo-isation), il n'est plus possible de le remplacer. C'est de nos jours assez rare mais c'est le cas sur certains modèles Motorola (le Defy, de mémoire).
Donc, d'après ce que j'ai compris, d'après cette dépêche, Android ne serait que partiellement libre parce que les pilotes pour faire fonctionner Android avec le téléphone ne sont pas libre ?
Je suppose que ça dépend de ce-qu'on appelle Android, puisque ça qualifie aussi bien la version de Samsung que Replicant. Parler d'AOSP est précis et renvoie à quelque chose de concret et c'est là que ça a du sens.
On pourrait donc dire la même chose des distributions Linux pour PC qui ne sont alors que partiellement libres puisque bon nombre de matériel ont besoin de pilotes proprio ?
Je suis assez d'accord avec ça, à partir du moment où le dit driver proprio fait partie de la distribution. Ubuntu est partiellement libre parce qu'elle intègre (entre-autre) les drivers nvidia pas libres dans ses dépôts. Trisquel est un système libre puisque ces drivers ne sont pas présents dans les dépôts de la distribution.
Au final, je ne suis pas d'accord avec cette affirmation. Pour moi, les pilotes sont séparés du système lui même et donc Android est totalement libre comme Ubuntu est un système libre.
Du coup, autant je suis d'accord que dire qu'Android n'est pas libre n'a pas beaucoup de sens puisqu'il existe de nombreuses distributions d'Android, plus ou moins libres, autant je ne suis pas d'accord sur l'exemple d'Ubuntu: si la distribution a du logiciel pas libre dans ses dépôts, elle n'est pas libre. Qu'appelle t-on système si cela ne prend pas en compte les drivers ? Ça n'a plus beaucoup de sens. Pour moi, un système est composé des logiciels qu'il distribue (donc les logiciels présents dans ses dépôts).
Aucun des deux ne peuvent fonctionner à 100% sans pilotes proprio pour une utilisation du matériel courant "grand public" et tous les deux ont des logiciels proprio en leur seing sans toutefois être obligatoire (hors pilotes).
C'est là une affirmation un peu rapide, puisqu'il existe des contre-exemples: pour Android, il existe Replicant qui est entièrement libre et pour Ubuntu, il existe Trisquel, qui n'a aucun pilote propriétaire. En fonction du matériel, ces systèmes peuvent très bien fonctionner (par exemple, Trisquel fonctionne très bien avec mon matériel et Replicant fonctionne relativement bien sur le Galaxy S2).
Par ailleurs, Wikipedia semblerait me donner raison : "Licence : Licence Apache 2.0 et GNU GPL 2".
Les licences mentionnées par Wikipedia ne reflètent en rien la réalité. La multiplicité des licences utilisées dans Android est assez vaste, on trouve de l'Apache 2 comme de la licence BSD, de la GPL sous plusieurs versions. Android inclut des composants qui n'ont pas été écrits par Google et qui peuvent avoir une toute autre licence que l'Apache 2.
Replicant : le projet est donné pour être fonctionnel sur un HTC Magic 32b.
Ah ? C'est marqué où sur notre wiki que je corrige ça ?
En fait j'me demande si Replicant fonctionne en dehors d'un émulateur.
Testé et approuvé sur les modèle suivants: Nexus S, Galaxy S, Galaxy S2, Galaxy Nexus, Galaxy Tab 2 7.0, Galaxy Tab 2 10.1
En développement sur GTA04
Abandonné (ça veut dire plus d'updates) sur les modèles suivants: HTC Dream, HTC Magic, Nexus One
(cette remarque exclu les problèmes de prises en charge matériel à cause des binaires fermés android aosp, sans ces blobs, aosp boot et fonctionne graphiquement. Replicant ne fait que lancer le noyau)
Ben justement, le projet Replicant a pour vocation de remplacer les binaires fermés (qui ne font pas partie d'AOSP). Quand ils ne sont pas (encore) remplacés, les versions non-libres ne sont pas inclues. Le système Replicant est entièrement libre.
Replicant, déception :-/
Dommage de voir quelqu'un se faire un avis sur le sujet apparemment sans réelle connaissance des faits.
Quant au projet de "store libre F-Store", il n'a qu'un seul intérêt : pouvoir télécharger les apk sans avoir besoin de compte Google.
J'ajouterais "pouvoir installer des applications qui respectent la liberté des utilisateurs" comme intérêt, si ça n'est pas trop un détail :)
Du côté du "play store" google, les mots clefs GPL (et autres…) amènent de très nombreuses réponses et permettent de faire un bon tri (dès lors que les dev pensent à placer les bons mots clefs dans le descriptif)
Ah ben oui, utiliser une application pas libre pour installer du libre, c'est assez intelligent.
Les blobs sont distribués avec AOSP non ? C'est similaire aux firmwares distribués avec le kernel linux.
Non, ils ne sont pas distribués avec AOSP et ne font pas partie d'AOSP. AOSP est libre (la seule exception, à ce-que j'en sais, sont quelques firmwares distribuables, pour les chipsets WiFi Broadcom).
Avec un Nexus, on est pas bloqué de la sorte: les upgrades AOSP sont disponibles directement comme il n'y a pas d'intermédiaire.
Pas forcément non-plus, le Nexus One n'est plus supporté dans AOSP après Android 2.3 (essentiellement parce-que les blobs pour le Nexus One n'ont pas été portés sur 4.x).
Il équipe le SoC ARM du Rapsberry Pi par exemple, ou encore celui des Pandaboard et BeagleBoard.
Il s'agit d'une erreur: la Pandaboard a un SoC OMAP4 et la Beagleboard un SoC OMAP3 et non un SoC Broadcom avec Videocore, que seul le Raspberry Pi utilise.
De plus, le Raspberry Pi nécessite des composants non-libres (bootloaders et autres) pour démarrer la carte. Pire encore, c'est le Videocore qui est démarré le premier et qui va initialiser et passer la main au processeur ARM !
En effet, Replicant ne comporte pas d'accélération matérielle, donc pas de 3D et 2D accélérées.
Le problème n'est pas ici qu'il faut un firmware (comme pour les cartes ATI) mais bien un arsenal complet de librairies et binaires (qui tournent sûrement en root en userspace).
Le driver du noyau est libre, mais il est inutile. (C'est une « passoire », un "pass through" en Anglais, comme c'est souvent le cas sur Android, ce qui signifie que tout le travail réel est fait par ces binaires en userspace)
J'utilise Replicant tous les jours sur le Nexus S et il est utilisable sans ça. Ça utilise juste plus le CPU.
J'utilise aussi un kernel 100% libre sur mon PC (avec Trisquel) et il se trouve qu'avec mon matériel, c'est très utilisable, même si je n'ai pas de 3D (je n'en ai pas besoin).
Replicant « permet » d'installer tout ce que vous voulez. Le noyau que nous distribuons chargera les firmwares s'ils sont présents. Pour le WiFi, le driver du noyau est également libre (bcm4329) et il suffit de mettre les firmwares en place. Il ne s'agit pas d'empêcher ouvertement l'utilisation de ces firmwares, ce qui serait très, très contestable et discutable, mais juste de fournir un système ou tout ce que nous distribuons est libre. C'est à dire que nous nous voulons pas prendre la décision d'installer du logiciel non-libre à la place de l'utilisateur.
Pour le Nexus S, Replicant n'a qu'un seul développeur (moi hein), donc ça prend du temps, même si certaines personnes (notamment du projet SHR) aident beaucoup (surtout pour le modem, dont nous avons écrit la seule implémentation libre du protocole).
# Fairphone et "open source"
Posté par PaulK (site web personnel) . En réponse à la dépêche Systèmes d’exploitation pour téléphones — partie 3 : Android 🤖💚 . Évalué à 2.
Bonjour et merci pour cet article ! Juste une précision à propos du Fairphone :
Les pilotes ne sont pas particulièrement libres ou open source, en tout cas pas plus que n'importe quel autre téléphone équipé de puces Qualcomm. Celles-ci sont notoirement connues pour demander un très grand nombre de drivers propriétaires et ont de plus une architecture matérielle qui ne sépare pas le processeur des applications, celui qui fait tourner Android et a accès aux données de l'utilisateur et celui du modem (pour l'accès au réseau GSM et données) qui fait tourner un système entièrement propriétaire et qui a donc également accès aux données de l'utilisateur (et toutes les facilités pour les exfiltrer).
De plus, les plateformes Qualcomm font partie de celles qu'il est impossible de faire démarrer sans les logiciels propriétaires signés par le fabricant (et donc impossibles à libérer même avec les informations techniques pertinentes).
Fairphone n'a jamais fait état d'une volonté d'utiliser des composants véritablement compatibles avec les logiciels libres, malheureusement. Quand à la documentation du matériel, je n'ai pas connaissance du fait que les schémas électroniques sont mis à disposition par l'entreprise (mais c'est peut-être le cas, à vérifier).
[^] # Re: Critique de la pédagogie Kocialkowskienne
Posté par PaulK (site web personnel) . En réponse à la dépêche Émission « Libre à vous ! » du 6 novembre 2018 — Podcast et références. Évalué à 5. Dernière modification le 08 novembre 2018 à 21:39.
Bonjour et merci pour ce commentaire fort développé et détaillé !
Je dois bien l'admettre, la citation relevée est imprécise et "aucune manière de vérifier quoi que ce soit" est une exagération qui mérite la critique. Les contraintes d'une émission de radio (en particulier pour le grand public) ne laissent pas vraiment la place pour entrer dans ces détails et facilitent les raccourcis trop hasardeux.
L'idée que j'ai voulu transmettre, c'est plutôt que le logiciel propriétaire n'offre pas des garanties suffisantes dès lors que l'on ne considère plus le fabricant comme un tiers dans lequel on place toute sa confiance.
Je ne crois pas que la seule possibilité d'étudier le code par rétro-ingénierie soit très significative en termes de garanties de sécurité.
D'une part, parce-que cela demande un travail et un investissement très lourd qui me semble assez peu systématisable. Étudier chacun des logiciels utilisés par un appareil de cette façon demande simplement trop de ressources pour être mis en œuvre à large échelle. De plus, c'est un sujet légalement sensible et il peut être compliqué de publier de telles recherches "preuves à l'appui" puisque l'assembleur correspondant ne peut être publié.
Le second point, à mon avis le plus essentiel, c'est que même en ayant identifié des failles de sécurité, l'utilisateur n'a pas la capacité de les corriger et ne peut qu'en faire part au constructeur, qui décidera de les résoudre ou non.
Et puis au fond, ça reste une question personnelle qui dépend des garanties que chacun recherche et de la confiance portée en chaque acteur.
# Petite correction
Posté par PaulK (site web personnel) . En réponse au journal Freedom for Allwinner VPU. Évalué à 10.
Bonjour et merci pour cette dépêche ! Je me permets cependant une petite correction : le VPU en question en un Video Processing Unit (pour accélérer le décodage/encodage de vidéos) et non un Vision Processing Unit, qui fait lui intervenir des accélérateurs de type réseaux de neurones.
# Single Board Computers
Posté par PaulK (site web personnel) . En réponse à la dépêche OLinuXino, la RaspBerry Pi version Open Source. Évalué à 6.
À voir aussi, comme alternatives plus libres au Raspberry Pi;
* http://www.fsf.org/resources/hw/single-board-computers
* http://libreplanet.org/wiki/Group:Hardware/Single_Board_Computers
[^] # Re: question de n00B
Posté par PaulK (site web personnel) . En réponse à la dépêche Entretien avec Paul Kocialkowski, développeur Replicant. Évalué à 6.
Il existe bien une distribution GNU/Linux pour quelques téléphones : le projet SHR.
Toutefois, Android a clairement une interface mieux adaptée, plus utilisable, etc.
[^] # Re: Pour résumé
Posté par PaulK (site web personnel) . En réponse à la dépêche À quand les smartphones et tablettes libres ?. Évalué à 1.
Ben oui, si c'est pas possible, c'est parce-que peu de choses sont mainline, mais là, rien de nouveau ni de très spécifique à Android. Les constructeurs ont besoin de développer leurs versions modifiées rapidement sans attendre que le nombre considérable de patchs en question soit accepté upstream. C'est le cas sur beaucoup de plateformes ARM (cf linux-sunxi). Sinon il faut faire le travail de portage soi-même (et les parties Android aussi peuvent-être portées).
Je dis distribution classique car c'est du GNU/Linux classique, avec Xorg, glibc, enlightenment, etc. On pourrait tout aussi bien faire tourner Debian avec GNOME ou LXDE. D'ailleurs, le GTA04 est vendu avec Debian et LXDE préinstallé, et c'est tout aussi possible sur n'importe quel téléphone Android, c'est juste que personne ne l'a fait parce-qu'il faut bien reconnaître que rien n'égale Android niveau utilisabilité sur un téléphone. Le reste n'est juste pas adapté.
[^] # Re: Open Hardware Mobile = OpenPhoenux GTA05
Posté par PaulK (site web personnel) . En réponse à la dépêche À quand les smartphones et tablettes libres ?. Évalué à 2.
Crois-moi, les vendeurs sont bien malheureux du prix, au moins autant que les acheteurs potentiels (qui eux ne dépendent pas du succès de ce projet pour se payer à bouffer). Si le prix est aussi élevé, c'est à cause de la (très) faible demande, qui force à produire au compte-goute. Et produire un téléphone unité par unité, ça coûte cher. Et du coup, vu que c'est cher, personne n'en achète, bref, c'est un cercle vicieux.
Les initiatives de commandes groupées, les "Group Tour" sont mises en avant par Golden Delicious: si assez de personnes y souscrivent, la fournée est lancée au prix (plus bas) annoncé et sinon, les gens sont remboursés. Que faire de plus ?
[^] # Re: Pour résumé
Posté par PaulK (site web personnel) . En réponse à la dépêche À quand les smartphones et tablettes libres ?. Évalué à 0.
Et dans Replicant :)
[^] # Re: Pour résumé
Posté par PaulK (site web personnel) . En réponse à la dépêche À quand les smartphones et tablettes libres ?. Évalué à 3.
Bah voilà, une belle confusion, puisque finalement dire "Android", ça n'a plus beaucoup de sens. Les restrictions dont tu parles sont effectives sur une certaine version d'Android distribuée par un certain opérateur sur un certain téléphone et n'ont rien à voir avec ce-que tu peux trouver ailleurs. Un Nexus 4 avec AOSP n'aura pas ces restrictions, CyanogenMod non-plus, Replicant non-plus, etc.
Donc rejeter Android comme ça, d'un revers de main, c'est faire un cas général de ce-qui réside dans un détail. Non, toutes les versions d'Android ne sont pas entièrement libres et peuvent donc contenir ces restrictions, oui, il existe d'autres versions sans ces restrictions, oui, il existe des versions entièrement libres d'Android. Et le système Android permet que de telles versions existent !
Pour Windows Phone, je ne vois nulle part la possibilité d'installer un dérivé complètement libre ou au moins dénué de restrictions.
[^] # Re: Pour résumé
Posté par PaulK (site web personnel) . En réponse à la dépêche À quand les smartphones et tablettes libres ?. Évalué à 0.
Je prends distribué au sens large ici (c'est à dire présent dans les dépôts, et pas seulement "installé par défaut").
Assez d'accord. Les problèmes sont ailleurs.
Il faut bien différencier plusieurs choses: la partie "Linux" du pilote est systématiquement libre (à peu d'exceptions près), même si elle n'implémente rien et que le vrai driver est en user-space, ce-qui arrive. C'est vrai pour le pilote graphique, rarement le son et je n'ai jamais vu cela se produire pour le wifi (le driver est systématiquement libre).
On peut tout à fait recompiler le noyau sans soucis (mais son installation peut-être impossible si TiVo-isé, cf mon autre commentaire). Ce n'est généralement pas le cas et des distros comme CyanogenMod ou Replicant recompilent systématiquement le driver (et peuvent éventuellement y ajouter des modifications).
[^] # Re: Pour résumé
Posté par PaulK (site web personnel) . En réponse à la dépêche À quand les smartphones et tablettes libres ?. Évalué à 2.
D'accord pour dire qu'Android n'est pas un succès du logiciel libre. Un succès de l'Open Source tout au plus.
Quelques corrections factuelles:
Si, à vrai dire, toutes les sources ses noyaux Linux utilisés dans tous les téléphones Android ont été mises à disposition (afin de respecter la GPLv2, sauf si l'entreprise viole ouvertement la licence, ce-qui arrive dans le cas de quelques constructeurs chinois).
Faux également. Il est assez simple de faire tourner une distribution GNU/Linux classique sur un téléphone Android (c'est le cas de SHR qui tourne sur Nexus S ou encore Galaxy Nexus). D'un point de vue de développeur (et je parle en connaissance de cause), les changements à apporter au noyau sont de l'ordre de quelques lignes dans la defconfig.
Par contre, si le bootloader vérifie la signature du noyau (TiVo-isation), il n'est plus possible de le remplacer. C'est de nos jours assez rare mais c'est le cas sur certains modèles Motorola (le Defy, de mémoire).
[^] # Re: Pour résumé
Posté par PaulK (site web personnel) . En réponse à la dépêche À quand les smartphones et tablettes libres ?. Évalué à 2.
Je suppose que ça dépend de ce-qu'on appelle Android, puisque ça qualifie aussi bien la version de Samsung que Replicant. Parler d'AOSP est précis et renvoie à quelque chose de concret et c'est là que ça a du sens.
Je suis assez d'accord avec ça, à partir du moment où le dit driver proprio fait partie de la distribution. Ubuntu est partiellement libre parce qu'elle intègre (entre-autre) les drivers nvidia pas libres dans ses dépôts. Trisquel est un système libre puisque ces drivers ne sont pas présents dans les dépôts de la distribution.
Du coup, autant je suis d'accord que dire qu'Android n'est pas libre n'a pas beaucoup de sens puisqu'il existe de nombreuses distributions d'Android, plus ou moins libres, autant je ne suis pas d'accord sur l'exemple d'Ubuntu: si la distribution a du logiciel pas libre dans ses dépôts, elle n'est pas libre. Qu'appelle t-on système si cela ne prend pas en compte les drivers ? Ça n'a plus beaucoup de sens. Pour moi, un système est composé des logiciels qu'il distribue (donc les logiciels présents dans ses dépôts).
C'est là une affirmation un peu rapide, puisqu'il existe des contre-exemples: pour Android, il existe Replicant qui est entièrement libre et pour Ubuntu, il existe Trisquel, qui n'a aucun pilote propriétaire. En fonction du matériel, ces systèmes peuvent très bien fonctionner (par exemple, Trisquel fonctionne très bien avec mon matériel et Replicant fonctionne relativement bien sur le Galaxy S2).
Les licences mentionnées par Wikipedia ne reflètent en rien la réalité. La multiplicité des licences utilisées dans Android est assez vaste, on trouve de l'Apache 2 comme de la licence BSD, de la GPL sous plusieurs versions. Android inclut des composants qui n'ont pas été écrits par Google et qui peuvent avoir une toute autre licence que l'Apache 2.
[^] # Re: Corrections sur Replicant
Posté par PaulK (site web personnel) . En réponse à la dépêche À quand les smartphones et tablettes libres ?. Évalué à 5.
Ah ? C'est marqué où sur notre wiki que je corrige ça ?
Testé et approuvé sur les modèle suivants: Nexus S, Galaxy S, Galaxy S2, Galaxy Nexus, Galaxy Tab 2 7.0, Galaxy Tab 2 10.1
En développement sur GTA04
Abandonné (ça veut dire plus d'updates) sur les modèles suivants: HTC Dream, HTC Magic, Nexus One
Ben justement, le projet Replicant a pour vocation de remplacer les binaires fermés (qui ne font pas partie d'AOSP). Quand ils ne sont pas (encore) remplacés, les versions non-libres ne sont pas inclues. Le système Replicant est entièrement libre.
Dommage de voir quelqu'un se faire un avis sur le sujet apparemment sans réelle connaissance des faits.
J'ajouterais "pouvoir installer des applications qui respectent la liberté des utilisateurs" comme intérêt, si ça n'est pas trop un détail :)
Ah ben oui, utiliser une application pas libre pour installer du libre, c'est assez intelligent.
[^] # Re: Corrections sur Android & Firefox OS
Posté par PaulK (site web personnel) . En réponse à la dépêche À quand les smartphones et tablettes libres ?. Évalué à 6.
Non, ils ne sont pas distribués avec AOSP et ne font pas partie d'AOSP. AOSP est libre (la seule exception, à ce-que j'en sais, sont quelques firmwares distribuables, pour les chipsets WiFi Broadcom).
[^] # Re: Bidouillabilité ?
Posté par PaulK (site web personnel) . En réponse à la dépêche À quand les smartphones et tablettes libres ?. Évalué à 4.
Pour Qt, ça sera essentiellement QtMoko, du coup sur Openmoko GTA02 ou Goldelico GTA04!
SHR doit sûrement aussi pouvoir faire tourner du Qt mais probablement mal intégré à l'interface.
[^] # Re: Corrections sur Android & Firefox OS
Posté par PaulK (site web personnel) . En réponse à la dépêche À quand les smartphones et tablettes libres ?. Évalué à 5.
Ben non, les Nexus ne tournent pas out of the box sur AOSP. Ils ont toujours besoin de blobs pour que de nombreuses parties du matériel soit fonctionnel.
Par exemple, la liste pour le Nexus 4: https://android.googlesource.com/device/lge/mako/+/android-4.2_r1/proprietary-blobs.txt
Pas forcément non-plus, le Nexus One n'est plus supporté dans AOSP après Android 2.3 (essentiellement parce-que les blobs pour le Nexus One n'ont pas été portés sur 4.x).
# Videocore et Beagleboard/Pandaboard
Posté par PaulK (site web personnel) . En réponse à la dépêche État des pilotes graphiques libres pour SoC. Évalué à 4.
Il s'agit d'une erreur: la Pandaboard a un SoC OMAP4 et la Beagleboard un SoC OMAP3 et non un SoC Broadcom avec Videocore, que seul le Raspberry Pi utilise.
De plus, le Raspberry Pi nécessite des composants non-libres (bootloaders et autres) pour démarrer la carte. Pire encore, c'est le Videocore qui est démarré le premier et qui va initialiser et passer la main au processeur ARM !
[^] # Re: c'est beau Replicant sur le principe, en pratique ...
Posté par PaulK (site web personnel) . En réponse à la dépêche Les nouvelles sur le hacking d'Android. Évalué à 7.
En effet, Replicant ne comporte pas d'accélération matérielle, donc pas de 3D et 2D accélérées.
Le problème n'est pas ici qu'il faut un firmware (comme pour les cartes ATI) mais bien un arsenal complet de librairies et binaires (qui tournent sûrement en root en userspace).
Le driver du noyau est libre, mais il est inutile. (C'est une « passoire », un "pass through" en Anglais, comme c'est souvent le cas sur Android, ce qui signifie que tout le travail réel est fait par ces binaires en userspace)
J'utilise Replicant tous les jours sur le Nexus S et il est utilisable sans ça. Ça utilise juste plus le CPU.
J'utilise aussi un kernel 100% libre sur mon PC (avec Trisquel) et il se trouve qu'avec mon matériel, c'est très utilisable, même si je n'ai pas de 3D (je n'en ai pas besoin).
Replicant « permet » d'installer tout ce que vous voulez. Le noyau que nous distribuons chargera les firmwares s'ils sont présents. Pour le WiFi, le driver du noyau est également libre (bcm4329) et il suffit de mettre les firmwares en place. Il ne s'agit pas d'empêcher ouvertement l'utilisation de ces firmwares, ce qui serait très, très contestable et discutable, mais juste de fournir un système ou tout ce que nous distribuons est libre. C'est à dire que nous nous voulons pas prendre la décision d'installer du logiciel non-libre à la place de l'utilisateur.
Pour le Nexus S, Replicant n'a qu'un seul développeur (moi hein), donc ça prend du temps, même si certaines personnes (notamment du projet SHR) aident beaucoup (surtout pour le modem, dont nous avons écrit la seule implémentation libre du protocole).