Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.
— |
echo_des_gnous:emission_107b [2015/02/22 15:53] (Version actuelle) Pierre Ducroquet |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== L'écho des gnous 108 Face B ====== | ||
+ | Diffusée le 15 février 2015. | ||
+ | Présents : Sébastien, Antonin | ||
+ | |||
+ | Vous pourrez réagir en direct | ||
+ | * sur IRC : http://webchat.freenode.net/ canal #chtinux | ||
+ | * au téléphone : 03 20 91 24 00 (pendant les pauses musicales) | ||
+ | |||
+ | Sources : | ||
+ | |||
+ | * [[https://aful.org/ressources/fourches-forks]] | ||
+ | |||
+ | ====== Sujet ====== | ||
+ | |||
+ | Le fork (au sens "développement logiciel"). Qu'est-ce qu'un fork? Réussite ou échec? | ||
+ | |||
+ | ====== Qu'est-ce qu'un fork? ====== | ||
+ | |||
+ | * Un fork est une duplication du code source d'un logiciel déjà existant, dont les droits autorisent l'utilisation, la modification et la redistribution de ce code source. | ||
+ | * Pas forcément une particularité du logiciel libre. Ex: lors d'un rachat d'une entreprise par une autre. Secret puisque le code n'est pas disponible. | ||
+ | * Un fork est facilement effectué via des plateformes en ligne de gestion de sources, tel que Gitorious, Bitbucket ou encore GitHub. | ||
+ | |||
+ | ====== Les enjeux ====== | ||
+ | |||
+ | Un fork peut naître de plusieurs façons: | ||
+ | * divergence d'opinion de la part des développeurs du projet, | ||
+ | * le refus d'incorporer des améliorations légitimes (type précis de fork appelé spork), | ||
+ | * nécessité de sauver un projet dans sa licence actuelle (en prévention d'un futur rachat par exemple), | ||
+ | * agonie du projet source et nécessité de lui redonner une nouvelle vie sous une nouvelle forme. | ||
+ | * La libération d'un programme initialement sous licence propriétaire (le rachat des droits d'auteur de Blender en 2002). | ||
+ | * Rendre propriétaire un logiciel libre. | ||
+ | * Acquérir une indépendance par rapport à une entreprise commerciale (Mageia, LibO). | ||
+ | |||
+ | On différencie les forks amicaux (rapports amicaux entre le projet parent et le projet fils) des forks inamicaux (rapports conflictuels entre le projet parent et le projet fils). | ||
+ | |||
+ | * Spork : Refus plus ou moins légitime d'un mainteneur de paquet d'appliquer des corrections et améliorations. | ||
+ | * Permet aussi de créer un projet intermédiaire pour maintenir les paquets communs de manière commune. | ||
+ | * Le meilleur exemple : LibreOffice. Devant le manque de visibilité du projet offert par Oracle, la communauté de dev crée The Document Fondation pour entité juridique du projet. Elle demande à Oracle de lui céder le nom Ooo et de lui céder le nom du projet => refus. | ||
+ | * Finalement, projet cédé à la fondation Apache, qui est devenu Apache OpenOffice. Résultat : LibO est le descendant naturel d'Ooo. | ||
+ | * Indépendance gagnée par le projet par rapport à la stratégie commerciale d'Oracle. | ||
+ | |||
+ | ====== Effets sur le projet original ====== | ||
+ | |||
+ | Les enjeux sont donc de se conformer à une spécifité / fonctionnalité d'un logiciel précis, en fonction de son opinion ou alors de la légitimité du code source, de sa licence. | ||
+ | |||
+ | * Soit ça ne fait rien (Free BSD continue son bonhomme de chemin malgré les nombreux forks, Debian également). | ||
+ | * Soit ça tue complétement le projet original (LibreOffice a tué Ooo, Inkscape a tué Sodipodi...) | ||
+ | * Soit la fourche meurt (difficulté de maintenir un projet en étant seul par exemple) | ||
+ | |||
+ | La survie de la fourche dépend : | ||
+ | |||
+ | * de la pertinence de la fourche (le but est-il légitime ou farfelu, genre défi technologique). | ||
+ | * de la notoriété de la personne qui fourche (grand nom reconnu ou pas) | ||
+ | * des réactions du projet original (en fonction de leur amour ou non du logiciel libre). | ||
+ | * des utilisateurs. Accueillent-ils le projet de manière favorable. | ||
+ | * de la volonté de la personne qui fourche. Arrive-t-elle à constituer une équipe ou restera-t-elle seule ? | ||
+ | |||
+ | |||
+ | |||
+ | ====== Les grands avantages ====== | ||
+ | |||
+ | * Pas de risque de perdre un logiciel en cas de litige | ||
+ | * Capacité de continuer un projet basé sur ses propres opinions, librement | ||
+ | * Avantage de ne pas commencer un nouveau projet à zéro | ||
+ | ====== Les grands inconvénients ====== | ||
+ | |||
+ | * Les forks sont souvent interprétés négativement pour le développement -> risque de conflits entre projets (forks inamicaux) | ||
+ | * Dispersion des ressources au lieu de donner l'avantage à la contribution | ||
+ | * Incompatibilité des versions et grande confusion occasionnée chez l'utilisateur et le développeur | ||
+ | * Le fork et le travail sur un projet a un coût (matériel et temporel) | ||
+ | * Risque de tuer le projet mère | ||
+ | * Rapide obsolescence du fork s'il n'est pas rapidement suivi | ||
+ | ====== Les fusions ====== | ||
+ | |||
+ | Attention : ne pas confondre les forks avec les fusions (fusion de deux projets pour une nouvelle version donnée). | ||
+ | |||
+ | * LxQt, gestionnaire de bureau léger, fusion de LXDE et RazorQT | ||
+ | * Compiz et Beryl ont fondé CompizFusion en 2007 | ||
+ | |||
+ | ====== Quelques exemples (re)connus ====== | ||
+ | |||
+ | * LibreOffice, fork d'OpenOffice. | ||
+ | * Les distributions qui proposent une expérience facilitée : Ubuntu (Debian), Manjaro (Archlinux)... | ||
+ | * Les gestionnaires de bureau (shell) : MATE (GNOME 2) | ||
+ | * Le renommage des applications Mozilla par Debian [[http://fr.wikipedia.org/wiki/Renommage_des_applications_de_Mozilla_par_Debian]] | ||
+ | * Frise des forks des distributions Linux [[http://en.wikipedia.org/wiki/Fork_%28software_development%29#mediaviewer/File:Linux_Distribution_Timeline.svg]] |