Le binaire de Visual Studio Code n’est pas du Logiciel Libre. Voilà pourquoi.

Avez-vous téléchargé le binaire de Visual Studio Code directement depuis le site officiel ? Si c’est le cas, vous n’utilisez pas un Logiciel Libre et seul Microsoft sait ce qu’il y a dedans. Et vous devriez envisager le pire.

L’astuce de Microsoft

Je ne suis pas un juriste et je peux me tromper ou n’être pas assez précis (j’espère que vous me pardonnerez) mais je vais néanmoins vous présenter ma compréhension de la situation car le statut actuel de l’accord de licence de Visual Studio Code semble être fait de façon à tromper la plupart des utilisateurs.

Microsoft utilise une astuce simple mais efficace, autorisée par la licence du code source de Visual Studio Code: la licence MIT, l’une des licences très permissives du logiciel libre.

En effet la licence MIT est très simple. Elle dit en substance : Faite ce que vous voulez avec ce soft, conservez le copyright original et je ne suis pas responsable de ce qui peut arriver en utilisant ce soft. Ok. Sauf que, pour Visual Studio Code, cette licence ne couvre que le code source, pas le binaire !

À la différence de la plupart des licences GNU GPL, pour lesquelles le source code et le binaire construit à partir du code source sont couverts par les termes de la licence, utiliser la licence MIT autorise Microsoft à rendre disponible de façon libre le source code de leur soft, mais de pouvoir faire ce qu’ils veulent avec le binaire. Et ils ne vont pas s’en priver.

Une licence non-libre à la sauce Microsoft, qu’est-ce que c’est ?

Évidemment Microsoft n’utilise pas la licence MIT pour le binaire de Visual Studio Code à dessein. En fait ils utilisent une licence non-libre restreignant vos droits d’utilisateurs : la licence de logiciel Microsoft.

Jetons un oeil à cette licence. Vous pouvez lire la licence complète ici : https://code.visualstudio.com/license

This license applies to the Visual Studio Code product. The source code is available under the MIT license agreement.

Il s’agit de la première phrase de la licence en question. La différence entre la licence du code source et le “produit”, c’est-à-dire le binaire que vous utilisez vraiment, est clairement définie.

Data Collection. The software may collect information about you and your use of the software, and send that to Microsoft.

Collecte d’informations personnelles, évidemment, difficile d’attendre autre chose de la part de Microsoft.

UPDATES. The software may periodically check for updates, and download and install them for you. You may obtain updates only from Microsoft or authorized sources. Microsoft may need to update your system to provide you with updates. You agree to receive these automatic updates without any additional notice. Updates may not include or support all existing software features, services, or peripheral devices.

En acceptant cette licence, vous me donnez le droit (que Microsoft n’utilisera peut-être pas… pour l’instant) de casser votre installation sans vous prévenir et de se ficher des conditions dans lesquelles vous l’utilisez parce que, bon, c’est Microsoft.

SCOPE OF LICENSE (…) you may not:

  • work around any technical limitations in the software;

Aussi connu comme “hacker” depuis… des dizaines d’années.

  • reverse engineer, decompile or disassemble the software, or otherwise attempt to derive the source code for the software, except and to the extent required by third party licensing terms governing use of certain open source components that may be included in the software;

On vous interdit explicitement d’étudier le binaire en question par n’importe quel moyen, parce qu’il est hors de questions que qui que ce soit sache ce que Microsoft fait avec ce binaire… qui tourne quand même sur votre ordinateur.

  • share, publish, rent or lease the software, or provide the software as a stand-alone offering for others to use.

Je peux me tromper (de nouveau je ne suis pas juriste), mais il semble ici que cette licence vous interdise de redistribuer le binaire téléchargé chez Microsoft, sauf dans le cadre des conditions mentionnées dans les sections INSTALLATION et USE RIGHTS, principalement dans le cadre des besoins de votre entreprise et/ou pour donner des démos de vos produits à l’aide de VSC. Ainsi Microsoft force l’utilisateur lambda à passer par le site officiel, ce qui assure une bonne distribution de son propre binaire.

Les sections suivantes EXPORT RESTRICTIONS et CONSUMER RIGHTS; REGIONAL VARIATIONS incluent encore davantage de restrictions à l’usage et à la redistribution du binaire.

DISCLAIMER OF WARRANTY. The software is licensed “as-is.”

Enfin une condition qui se rapproche de celle de la licence MIT. Mais dans ce cas c’est évidemment pour limiter les obligations qu’a Microsoft envers vous. Pas fou.

Donc la licence Microsoft utilisée pour le binaire de VSC n’est absolument pas une licence de logiciel libre permissive, si jamais vous n’étiez pas convaincu par le fait que Microsoft utilise déjà une astuce en employant une licence différence pour le code source et le binaire.

Ce que vous pourriez faire

Ce problème a déjà été perçu par beaucoup et il existe des solutions. Après tout, le code source utilise quand même une licence du logiciel libre. Par exemple, pourquoi ne pas construire le binaire vous-même ? Certaines initiatives apparaissent également VSCodium,  un dépôt de binaire géré par la communauté. Ce serait un bon début pour s’affranchir du binaire officiel de Microsoft.

Au niveau des distributions GNU/Linux, empaqueter Visual Studio Code dans les distributions (voir ici la discussion de VSC dans  Debian) serait un bon moyen d’éviter que les utilisateurs soient abusés par l’astuce de Microsoft afin que la majorité des gens utilisent leur “produit” en croyant utiliser un binaire libre, mais étant en fait sous une licence made in Microsoft qui casse à peu près toutes les conditions qui font un Logiciel Libre.

Me suivre sur les réseaux sociaux

N’hésitez pas à me suivre directement sur les différents sociaux pour suivre au jour le jour mes différentes projets dans le Logiciel Libre :

The post Le binaire de Visual Studio Code n’est pas du Logiciel Libre. Voilà pourquoi. appeared first on Carl Chenet's Blog.

Vus : 619
Publié par Carl Chenet : 277