Comme exigé par notre modèle de menace (parmi d’autres raisons), le logiciel développé pour soutenir le réseau de communication anonyme que nous appelons I2P doit être librement disponible, open source et modifiable par l’utilisateur. Pour respecter ces critères, nous nous servons d’une variété légale de techniques de génie logiciel, ceci afin d’enlever autant de barrières d’entrée aux personnes considérant faire usage ou contribuer à l’effort I2P.
Bien que les informations ci–dessous peuvent prêter davantage à confusion que de simplement déclarer "I2P est sous licence BSD", "I2P est sous licence GPL" ou "I2P est dans le domaine public", la réponse courte à la question "Sous quelle licence est I2P ?" est celle–ci :
Tous les logiciels inclus dans les distributions I2P doivent permettre :
- utilisation sans frais
- utilisation sans restrictions sur comment, quand, où, pourquoi, ou par qui il est exécuté
- accès au code source sans frais
- modifications du code source
La plupart du logiciel garantit beaucoup plus - la capacité de n’importe qui de distribuer le source modifié cependant ils choisissent. Cependant, tous les logiciels empaquetés ne fournissent pas cette liberté - le GPL limite la capacité des développeurs qui veulent intégrer I2P avec leurs propres applications qui ne sont pas elles-mêmes des applications open source. Tandis que nous applaudissons aux buts nobles d’augmenter les ressources communes, I2P est mieux servi en enlevant chacune des barrières qui bloquent son adoption - si un développeur considérant si il peut intégrer I2P avec son application doit s’arrêter et vérifier avec son avocat, ou conduire un audit de code pour s’assurer que son propre source peut être sorti comme compatible-GPL, nous sommes perdants.
Licences des composants
La distribution I2P contient plusieurs ressources, reflétant le partitionnement du code source en composants. Chaque composant a sa propre licence, que chaque développeur qui y contribue a accepté - soit en déclarant explicitement la sortie du code engagé conformément à une licence compatible avec ce composant, ou en sortant implicitement le code engagé conformément à la licence principale du composant. Chacun de ces composants a un développeur principal qui a le dernier mot sur quelle licence est compatible avec la licence principale du composant et le chef de projet I2P a le dernier mot sur quelles licences respectent les quatre susdites garanties pour l’inclusion dans la distribution I2P.
Composant | Chemin source | Ressource | Licence primaire | Autres licences | Développeur principal |
I2P SDK | core | i2p.jar | Public domain |
BSD Cryptix MIT |
zzz |
I2P Router | router | router.jar | Public domain |
BSD Cryptix MIT |
zzz |
Ministreaming | apps/ministreaming | mstreaming.jar | BSD |
Public domain Cryptix MIT |
zzz |
Streaming | apps/streaming | streaming.jar | Public domain |
BSD Cryptix MIT |
zzz |
I2PTunnel | apps/i2ptunnel | i2ptunnel.jar | GPL + exception |
Public domain BSD Cryptix MIT |
zzz |
Routerconsole | apps/routerconsole | routerconsole.war | Public domain | zzz | |
Address Book | apps/addressbook | addressbook.war | MIT |
Public domain Cryptix BSD |
|
Susidns | apps/susidns | susidns.war | GPL + exception | ||
Susimail | apps/susimail | susimail.war | GPL + exception | ||
I2PSnark | apps/i2psnark | i2psnark.jar | GPL + exception | zzz | |
BOB Bridge | apps/BOB | BOB.jar | WTFPL | sponge | |
SAM Bridge | apps/sam | sam.jar | Public domain |
Cryptix BSD MIT |
zzz |
SAM v1 Perl library | apps/sam/perl | SAM.pm | GPL |
Public domain Cryptix BSD MIT |
BrianR |
SAM v1 C library | apps/sam/c | libSAM | BSD |
Public domain Cryptix MIT |
Nightblade |
SAM v1 Python library | apps/sam/python | i2p.py | Public domain |
BSD Cryptix MIT |
Connelly |
SAM v1 C# library | apps/sam/csharp/ | n/a | Public domain |
BSD Cryptix MIT |
smeghead |
Other apps not mentioned | apps/ | ... | Probably Public domain but check the source | ||
Installer | installer | install.jar, guiinstall.jar | Public domain | GPL + exception BSD Cryptix MIT |
Exception GPL + java
Bien que cela puisse être superflu, juste pour la clarté le code sous GPL inclus dans I2PTunnel et d’autres applications doit être sorti sous GPL avec une "exception" supplémentaire autorisant explicitement l’utilisation des bibliothèques standard de Java :
In addition, as a special exception, XXXX gives permission to link the
code of this program with the proprietary Java implementation provided by Sun
(or other vendors as well), and distribute linked combinations including the
two. You must obey the GNU General Public License in all respects for all of the
code used other than the proprietary Java implementation. If you modify this
file, you may extend this exception to your version of the file, but you are not
obligated to do so. If you do not wish to do so, delete this exception statement
from your version.
Tout code source de chaque composant sera par défaut sujet à des droits d’auteur conformément à la licence principale, sauf mention contraire dans le code. Le résumé des conditions de licence se trouve ci-dessus. Veuillez consulter la licence particulière du composant ou le code source en question au sujet des conditions faisant autorité. Les emplacements des sources des composants et les paquets peuvent changer si le dépôt est réorganisé.
Contenu du site Web
Except where otherwise noted, content on this site is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Privilèges d’engagement
Developers may push changes to a distributed git repository if you receive permission from the person running that repository. See the Git Page for details.
Cependant, pour que ces changements soient inclus dans une sortie, les développeurs doivent être dignes de confiance du directeur de sortie (actuellement zzz). De plus, ils doivent explicitement être d’accord avec les termes susdits pour être dignes de confiance. Cela signifie qu’ils doivent envoyer à l’un des directeurs de sortie un message signé affirmant que :
- Sauf indication contraire, tout le code que j’archive est implicitement sujet à des droits d’auteur conformément à la licence principale du composant
- Si cela est indiqué dans la source, le code peut être explicitement couvert par une des autres licences du composant
- J’ai le droit de sortir le code que je soumets sous les conditions sous lesquels je les soumets
Si quelqu’un connaît des cas qui ne répondent pas aux conditions ci-dessus, veuillez contacter, avec plus de renseignements, le responsable du composant ou un gestionnaire de parutions d’I2P. Voir les licences des développeurs.