Github est-il
une FLOSS commune ?

Edition #67 - Octobre 2024

Alexis Janvier

développeur

coopérateur

alexisjanvier.net

@alexisjanvier

FLOSS

=
Logiciels libres et open source

=

Free/Libre and Open Source Softwares

Déroulement du talk

  1. Une courte histoire du logiciel libre et open source
  2. Les licences de logiciels libres et open source
  3. Github, le libre et l'open source

GIT

un système de contrôle de version

Système d'exploitation (OS)

Une courte histoire du logiciel libre et open source

- Partie 1 -

1945 - 1970

Les mainframes

IBM 704 - 1954

1970 - 1973

UNIX, un système d'exploitation 

multi-utilisateurs et multi-tâches

La philosophie (modulaire) d'UNIX :

Ken Thompson 

et Dennis Ritchie

$ history | awk '{print $2;}' | sort | uniq -c | sort -rn | head -10 > topCmds.txt

1981

IBM PC (Personal Computer)

sous Microsoft MS-DOS

1983 - 1989

Le logiciel libre selon Richard Stallman

1983 : GNU

GNU's not UNIX

1985 : FSF

Free Software Foundation
et ses 4 libertés.

1989 : GPL

General Public License

 

Eben Moglen

Richard Stallman

1991-1993

Noyau Linux

et première distributions GNU/Linux

Linus Torvalds

1993

1998

L'open source et les licences permissives

Les licences de logiciels libres et open source

- Partie 2 -

Sans licence explicite, le code est sous copyright par défaut.

Il ne peut pas être légalement utilisé, modifié ou redistribué par d'autres.

Simple fichier texte LICENSE à la racine de son code

  1. la liberté de faire fonctionner le programme comme vous voulez, pour n'importe quel usage,
  2. la liberté d'étudier le fonctionnement du programme, et de le modifier pour qu'il effectue vos tâches informatiques comme vous le souhaitez,
  3. la liberté de redistribuer des copies, donc d'aider les autres,
  4. la liberté de distribuer aux autres des copies de vos versions modifiées ; en faisant cela, vous donnez à toute la communauté une possibilité de profiter de vos changements.

Les licences permissives de l'open source

  • MIT License
  • Apache License 2.0
  • BSD 3-Clause Clear License
  • Mozilla Public License 2.0
  • ...
MIT License

Copyright (c) [year] [fullname]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Aujourd’hui, on estime de 96% de toutes les bases de code intègrent des briques open source !

Source : Open Source Security and Risk Analysis - OSSRA

Les licences contraignantes du libre, dites COPYLEFT

  • GPL v2
  • GPL v3
  • AGPL v3
  • EUPL-1.2
  • ...

Une licence juridiquement valable qui impose que,

dès lors que vous utilisez une brique de code en GPL 

- et ce même si vous la modifiez -

vous devez distribuer tout le code en GPL.

Alors, quelle licence choisir ?

Modification de licence permissive

En 2017, Facebook ajoute à la licence BSD+Patents de React une clause additionnelle sur les brevets.

Les personnes utilisant React n'ont dés lors plus le droit de poursuivre Facebook pour violation de brevet.

Changement vers un licence propriétaire

  • 2021, Elasticsearch change sa licence Apache 2.0 en  une licence maison non libre. Ils avaient plus de 1900 contributeurs.
  • 2024 Redis change sa licence BSD 3 clauses pour une licence Redis Source Available License non libre. Ils avaient plus de 700 contributeurs
  • 2024, IBM rachète Hashicorp. 4 mois après Terraform ( et Vault, et Consul) passent d'une licence Mozilla Public License v2.0 à une licence Business Source License, non libre. Terraform avait plus de 1800 contributeurs.

2024, Wordpress ... Non, Wordrpress est sous GPL !

Imaginez :

  • des prothèses sous GPL
  • des médicaments sous GPL
  • des semences sous GPL
  • de l'information sous GPL
  • des connaissances sous GLP

Aaron Swarz

Répartition des types de licences

sur les nouveaux projets publics Github.

Source : GitHub Innovation Graph avec l'aide de Thomas ;)

Github, le libre et l'open source

- Partie 3 -

Michelle Thorne

1 - Github n'est pas Git !!!

Git est un logiciel de gestion de versions décentralisé.

"Grâce à la propriété transitive et à quelques spéculations, je dirai que Linus pense en fait que GitHub est la raison pour laquelle Git a gagné. 😀"

Scott Chacon, co-fondateur de Github,

dans son post de blog Why GitHub Actually Won

2 - Une interface

de bureautique

Une gestion des notifications à la Outlook

Une home "social", à la LinkedIn

Et la timeline, on en parle ?

Github, c'est un peu le Microsoft Word du développeur !

avec Visual Studio Code ... de chez Microsoft

3 - Github, c'est Microsoft

Microsoft a racheté Github

en 2018

Tom Preston-Werner, fondateur de Github, dans son post de blog Open Source (Almost) Everything

" D'autre part, la GPL est trop restrictive et dogmatique pour être utilisable dans de nombreux cas. Je veux que tout le monde puisse bénéficier de mon code. Tout le monde. C'est ce que devrait signifier Open, et c'est ce que devrait signifier Free."

Steve Ballmer, PDG de Microsoft de 2000 à 2014 - Interview avec le Chicago Sun-Times en 2001

"Le financement du gouvernement devrait être destiné à des travaux accessibles à tous. L'open source n'est pas accessible aux entreprises commerciales. De la façon dont la licence est rédigée, si vous utilisez un logiciel open source, vous devez rendre le reste de votre logiciel open source. Si le gouvernement veut rendre quelque chose public, il devrait le faire. Linux n'est pas dans le domaine public. Linux est un cancer qui s'attache, au sens de la propriété intellectuelle, à tout ce qu'il touche. C'est ainsi que fonctionne la licence."

MIT

GPL

4 - Github Copilot

Être plus efficace, aller plus vite ?

 

Pourquoi ? Pour qui ?

 

Au détriment de quoi ?

Copilot pour quoi ?

2 - la liberté d'étudier le fonctionnement du programme, et de le modifier pour qu'il effectue vos tâches informatiques comme vous le souhaitez.

"Si c'est gratuit libre,

c'est vous le produit !"

Github nous la fait à l'envers !

Copilot lit la base de code publique de Github, avec tous ses projets en licences libres, y compris en GLP

5 - Github n'est pas sur Github

Conclusion

"Github est-il une FLOSS commune ?"

OUI

Merci

à vous :)

Merci

à celleux qui défendent le logiciel libre avec beaucoup plus d'ardeur qu'un simple talk !

Zoë Kooyman, directrice actuelle de la Free Software Foundation (FSF)

LES ANNEXES

Alternatives

  • Gitlab (https://about.gitea.com/) qui est finalement le même type d’interface professionnelle que Github, mais qui a le bon gout d'avoir son code ouvert en open source.
  • Gitea (https://about.gitea.com/) que je ne connais pas.
  • Forgejo (https://forgejo.org/) une forge logicielle libre à héberger soi-même.
  • Codeberg (https://codeberg.org/) une instance en ligne de Forgejo.
  • sourcehut (https://sourcehut.org/) très efficace mais avec une interface un peu rude lorsque l'on vient de Github.

Libristes

  • April (https://www.april.org/) acteur fondamental pour le lancement et la promotion du logiciel libre en France.
  • Framasoft (https://framasoft.org ) une association d’éducation populaire, un groupe d’ami·es convaincu·es qu’un monde numérique émancipateur est possible, persuadé·es qu’il adviendra grâce à des actions concrètes sur le terrain et en ligne avec vous et pour vous !
  • Les Chatons (https://www.chatons.org/) un collectif des Hébergeurs Alternatifs, Transparents, Ouverts, Neutres et Solidaires.
  • Les deux fleurs (https://deuxfleurs.fr/) une association qui œuvre pour un internet convivial en utilisant des infrastructures et outils sobres.
  • Artifaille (https://artifaille.fr/) l'informatique associative et solidaire à Caen
  • Free Software Foundation (https://www.fsf.org/)

Bibliographie

Références en ligne

(et en vrac...)

Filmographie

LES SLIDES ABANDONNES

1975 - 1980

Les micro-ordinateurs

et les clubs d'informatique

Altair 8800

1975

Lettre de Bill Gates

1976

Apple II

1978

1983

ARPANET devient Internet en adoptant le TCP/IP

1990

Première page web mise en ligne

par Tim Berners-Lee

2005

Publication par Linus Torvalds

de Git en licence GPL

Un système de gestion de version décentralisé.

2008

Sortie de Github

Une plateforme d'hébergement de dépôts Git

La composition

de l'assemblée logicielle