3. Informations sur les licences de Taler#
Ce fichier donne une vue d’ensemble des licences de tous les composants de Taler et de leurs dépendances d’exécution. Un « composant » dans ce contexte doit être lu comme un ensemble de fichiers sources qui peuvent être récupérés à partir d’un seul dépôt Git. Si les composants sont constitués de sources sous différents régimes de licence, c’est-à-dire parce que nous voulons permettre à des développements tiers de s’intégrer facilement à Taler, ils sont également décrits.
Tous les composants sont généralement publiés sous Lesser GPL, GPL ou Affero GPL. La stratégie principale consiste à placer sous LGPL les bibliothèques que des tiers pourraient avoir besoin d’intégrer à Taler, sous GPL les binaires autonomes et les cas de test, et sous AGPL les serveurs Web mettant en œuvre des services Web et des API REST. Le code trivial (tel que la logique de construction) est parfois simplement placé dans le domaine public. Les législations qui n’ont pas de domaine public doivent considérer ce code comme étant sous LGPL.
Le projet a été initialement lancé sur la base du code et de la documentation de GNUnet e.V. et de l’INRIA, et continue d’être développé par la communauté GNUnet et Taler Systems SA. L’INRIA et GNUnet e.V. ont tous deux cédé ou partagé leurs droits d’auteur avec Taler Systems SA. Par conséquent, on devrait généralement dire que le code est protégé par le droit d’auteur de Taler Systems SA.
Nous travaillons également en étroite collaboration avec le paquetage GNU Anastasis. Ici, le même partage des droits d’auteur est en place entre les développeurs originaux de BFH et GNUnet e.V., sauf que les droits d’auteur ont été cédés ou partagés avec Anastasis SARL. Des accords sont en place pour permettre aux développeurs de déplacer librement le code entre GNU Anastasis, GNUnet et GNU Taler si cela est techniquement justifié (notez que tous les développeurs doivent signer l’accord de contribution au copyright de GNUnet e.V.).
Notez que ce fichier peut être obsolète. En cas de doute, veuillez contacter les mainteneurs GNU concernés (actuellement Florian Dold, Christian Grothoff et Martin Schanzenbach) car ils ont généralement la responsabilité et le droit de déterminer la licence appropriée pour les composants individuels. (Ce droit est techniquement accordé et limité par les accords de copyright signés par les contributeurs individuels et éventuellement soumis à des processus de décision au sein d’Anastasis SARL, GNUnet e.V. et Taler Systems SA. Cependant, dans la pratique, cela n’a jamais été un problème car tout le monde est d’accord sur la stratégie de licence et les mainteneurs feront simplement des ajustements mineurs pour mettre en œuvre cette stratégie de manière cohérente lorsque des problèmes surviendront, comme le déplacement de code entre des composants sous licence LGPL, GPL et AGPL ou des développeurs utilisant accidentellement la mauvaise licence dans un en-tête).
3.1. Suivre l’AGPL#
L’objectif principal de l’AGPL est d’exiger d’un fournisseur de services qu’il rende le code source du service facilement accessible à tous les utilisateurs de ce service.
Pour GNUnet, GNU Taler et GNU Anastasis, nous réalisons cette exigence en implémentant un point de terminaison /agpl/
qui dirige les utilisateurs de l’API vers le code source (soit un TGZ, soit une redirection vers le dépôt Git) du composant et de ses dépendances (nous pensons qu’il est acceptable de ne pas inclure les dépendances non modifiées qui sont déjà facilement disponibles et trouvables ailleurs). Le code source (tel que défini dans la GPL) doit ensuite pouvoir être téléchargé gratuitement et sans contrôle d’accès à partir de cette adresse, sous une forme adaptée au développement (c’est-à-dire avec un système de compilation et des instructions). Toutes les contraintes habituelles de la distribution de code sous GPL s’appliquent également.
Lorsque vous déployez des sources qui ont été modifiées par rapport aux versions amont publiées par GNU, vous devez mettre à jour le point d’accès /agpl/
pour qu’il pointe vers le code source modifié. Notez que vous devez toujours rendre disponible le code de la version réellement déployée, qui inclut les personnalisations, les extensions, les intégrations, les améliorations de sécurité ou les corrections de bogues.
3.2. Suivre la GPL#
La licence GPL vous oblige à mettre le code source du programme concerné à la disposition de tous les utilisateurs susceptibles d’exécuter le programme. Cela inclut également toutes les personnalisations (stratégie de marque, thématisation, extensions, intégrations, améliorations de la sécurité ou corrections de bogues) que vous avez pu effectuer. Le code source du programme modifié doit être publié sous licence GPL et doit être raisonnablement facile à trouver gratuitement pour tous les utilisateurs de votre programme.
Lors de l’envoi de binaires de versions non modifiées des versions GNU, cette condition est remplie car GNU met les sources à disposition via les dépôts Git du projet et les miroirs FTP du projet GNU. Vous êtes toujours tenu de mettre à la disposition des autres toute logique d’empaquetage que vous avez pu écrire pour créer les binaires.
3.3. Suivre la LGPL#
Pour respecter la LGPL, vous devez faire tout ce que vous devez faire sous la GPL en ce qui concerne les sources qui vous ont été fournies.
Cependant, vous êtes autorisé à intégrer le code fourni sous la LGPL avec d’autres codes qui ne sont pas sous la LGPLv3+. Néanmoins, les modifications apportées à notre code existant doivent rester soumises à la LGPLv3+, et nous vous encourageons vivement à publier l’ensemble de votre code sous une licence FLOSS appropriée.
3.4. Tutoriels (git://git.taler.net/tutorials)#
La spécification a été développée à l’origine par l’INRIA et par des individus appartenant au sujet juridique appelé « GNUnet e.V. ». Pour chaque fichier source, l’en-tête indique qui détient les droits d’auteur, puisque certaines parties ont été reprises « verbatim » de la fondation GNUnet e.V., et que d’autres ont été développées à l’INRIA ou chez Taler Systems SA « ex novo ».
En général, la licence GNU GPLv3 est utilisée pour eux ; voir COPYING.GPL.