c’est en gras
connaitre la définition d’un fork, d’un projet open source et d’un système propriétaire, des licences et enfin des décisions géopolitiques qui marchent sur tout ceci (exemple de huawei)
Fork : reprendre un projet open source, lui donner sa propre direction, recevoir du code d’autres contributeurs, le laisser open source (la licence l’oblige, enfin c’est un peu plus compliqué) et le publier soi-même (on parle d’upstream)
les roms android ne sont pas des forks. Elles sont toutes basées sur un projet commun (Android open source project), open source. Google est le principal développeur mais comme tout projet open source, le code android provient de partout. (windows, intel, linux, oracle etc)
Google va reprendre le noyau de linux (qui est une partie critique d’un os) publié par la fondation linux, et non pas google , y ajoute le code remonté par l’ensemble des développeurs du projet android (open handset alliance) et qu’il a accepté puis le publie. Il est légalement obligé de le faire, le code ne lui appartient pas.
Chaque constructeur, y compris google, y applique son propre code qu’il n’est pas obligé de publier. C’est ce que l’on appelle maladroitement surcouche
Les roms android deviennent donc des systèmes d’exploitation pour terminaux mobiles, compatibles entre elles, mêlan du code open source et du code propriétaire. (permis par la licence apache) Ce ne sont pas des forks. Le projet final est centralisé et publié par google.
Exemple d’un fork :
Initialement il y a un navigateur : konqueror (khtml) développé par kde en open source
on le retrouvait sur GNU/linux avec les interfaces KDE.
Apple a pris le code khtm, lui a donné une autre direction et ça a donné webkit. Apple publie le code webkit qui s’éloigne du projet initial. Le projet initiale garde sa route mais apple l’a repris pour lui donner une autre route. Apple publie webkit et kde publie konqueror (je ne sais pas s’il est toujours vivant). A partir du moment où apple reprend le code khtml, le fait évoluer à sa manière et le publie lui même, on parle de fork.
Apple centralise le projet auquel contribue plusieurs acteurs (opera, sony, kde etc) a pour obligation légale de laisser webkit open source
Ensuite google reprend le code webkit, lui donne sa direction et le publie lui-même avec un nom different (blink/chromium). C’est un fork de webkit. Google doit publier le code chromium, qui ne lui appartient pas et qui est open source. Opera et d’autres entreprises participent au projet chromium. Google a cependant le dernier mot sur l’évolution du code.
et ainsi de suite.
Un grand groupe peut tout à fait reprendre le code chromium et lui donner un sens différent, le centraliser et le publier et donc créer un fork. (cela viendra probablement d’un groupe chinois ou européen, mais je parierai plus sur le premier)
Dans ses premières versions, google a pris le kernel linux, l’a modifié et l’a publié, ce qui constitue un fork de linux dans android, sans passer par la fondation linux. Devant les tensions, ils ont fait marche arrière et utilisent désormais les versions publiées par la fondation linux (auquel google, intel, huawei contribuent et bcp)
HarmonyOS n’est pas un fork
la réponse est rapide. Architecture différente, kernel différents. Harmony OS dans ses premières versions reprenait des bibliothèques de compatibilité android. C’est légal et ça n’en fait pas un fork. HarmonyOS ne s’appuie pas sur l’architecture AOSP
HArmony next retirera ces couches de compatibilité. Et je pense qu’il aura une version PC** **
EMUI est toujours basé sur le code publié par google (en réalité l’open handset alliance dont huawei est membre) EMUI n’est pas un fork non plus. Il n’en en pas besoin et c’est une perte d’énérgie. l Huawei est un contributeur au code aosp et linux, code qui est libre d’utilisation. Donc aussi bien moralement que légalement, huawei est légitime d’utiliser le code aosp. Ils ont par contre du réécrire le code propre à google car une loi interdisait à google de fournir son code à huawei. C’est une décision politique
HyperOS n’est pas un fork
Les premières versions d’hyperOS auront certainement comme objectif d’implémenter les bases d’un futur OS xiaomi tout en maintenant l’architecture aosp (pour les smartphones), nous en sauront un peu plus. Pour les autres terminaux, ça sera du pure xiaomi.
La complexité vient de la licence apache car chaque constructeur a le droit d’installer sur son smartphone un os fermé (propriétaire) Xiaomi va certainement hybrider android avec son os pour à terme, se sortir d’android. (c’est un peu l’équivalent d’harmonyOS 1). Ils ont posé les premières briques
On en saura plus sur hyperOS. Et on verra s’il est publié comme « based on android » ou pas. Je pense que oui pour les premières version.
Pour cyanogenmod puis lineageOS (je ne sais pas si ça existe toujours), on peut parler de fork d’android. Le développement est de type communautaire. Le code est publié non pas par google mais par les communautés qui développent ces os et leur donne la direction qu’ils veulent. Google n’a pas son mot à dire. Après tout dépend de qui reprend le projet
C’est sur que si huawei reprend le code firefox et le fork, ça donnera un autre effet qu’un projet de type palemoon. Huawei ont la puissance pour en faire un projet solide. Comme chromium qui a supplanté webkit. Google était derrière. Il faut donc distinguer les projet opensource communautaire (culture européenne) et les projets opensource comme modèle de développement (grande firme type google, oracle, huawei…)
Sur une dernière touche, notant que l’Europe centralise beaucoup de projets open source et de logiciels mais que nous restons dépendant de l’extérieur. L’Europe aurait du avoir ses propres os et ses propres puces. mais nous sommes dépendants. L’Europe a une voie à défendre. Linux est né en Europe. Un os européen (et surtout un plus grand écosystème aurait du être produits)