web-dev-qa-db-fra.com

Puis-je utiliser les binaires du logiciel GPL dans un environnement commercial?

Je souhaite utiliser des logiciels sous licence GPL v2 et GPL v3 dans un environnement de production commercial. Je voudrais utiliser HaProxy comme solution d'équilibrage de charge. Est-il sûr contre la copie à gauche? Je ne modifierai rien du code source et l'architecture du système nécessite l'utilisation d'un équilibreur de charge.

Il sera intégré dans un plus grand système distribué. Donc, ce que nous vendons, c'est tout le système. Sur un autre site, nous devrons réinstaller l'équilibreur de charge et nous pourrions mélanger avec autre chose. Je pense que c'est le terme "Distribution" qui me déroute.

27
code-gijoe

Si vous distribuez des fichiers binaires (non modifiés) avec un produit que vous expédiez, vous devez alors distribuer la source avec eux ou fournir aux utilisateurs un moyen de demander les sources. Ce n'est pas une situation où vous pouvez ignorer la GPL, mais cela ne va pas être un vrai problème pour vous. La GPL n'infectera pas votre logiciel propriétaire à moins que vous ne vous y connectiez.

Distribuer dans ce sens signifie donner (ou vendre) aux clients. Si vous utilisez simplement un système distribué (multi-nœuds) au sein de votre entreprise, alors vous êtes tout à fait clair, comme le dit Yan.

Par ailleurs, le GPLv2 ( v3 ici ) est écrit pour être lu par des non-avocats. Je vous recommande fortement d'y jeter un œil. Si l'anglais n'est pas votre langue maternelle, traductions sont disponibles dans de nombreuses langues.

19
nmichaels

Haproxy est GPLv2, vous pouvez donc le redistribuer sous forme binaire à condition que vous donniez suffisamment d'informations à l'utilisateur final pour savoir où récupérer les sources pour le reconstruire. Vous devez également les informer sur les options/l'environnement de construction, car sans eux, il est possible qu'ils ne puissent pas obtenir les mêmes fonctionnalités.

Lorsque vous avez un doute sur ces points, gardez à l'esprit que l'objectif de la GPL est de vous assurer que si vous disparaissez, vos clients ne se retrouveront pas avec un logiciel buggy qu'ils ne pourront pas résoudre. Il vous suffit donc de leur fournir les moyens de ne pas dépendre de votre disponibilité. Lorsque vous gardez cela à l'esprit, il est beaucoup plus facile de faire le bon choix. Et la bonne foi compte toujours si vous essayez de rendre cela possible mais échouez parce que vous n'avez pas pensé à tout.

Gardez également à l'esprit que chaque fois que vous commencez à distribuer des logiciels, certains de vos clients demanderont des modifications spécifiques pour mieux couvrir leurs besoins. Au début, vous refuserez mais après avoir perdu quelques clients qui veulent tous exactement la même fonctionnalité mineure, vous accepterez. Ensuite, vous aurez corrigé le code et serez gêné car vous ne pourrez pas diriger le client vers le site d'origine pour obtenir le code.

Il existe deux approches: - le patch est d'usage général et vous ne voulez pas le maintenir. Il suffit de le soumettre pour inclusion dans le courant dominant. S'il est accepté, vous pouvez mettre à jour votre version et vous n'avez plus besoin de maintenir un correctif; - le patch est trop spécifique au client et n'a aucune chance d'être accepté, alors vous devez le mettre à la disposition de votre client avec les instructions de construction afin que le client puisse toujours récupérer la version officielle, la patcher et la construire.

Un correctif typique possible consiste à supprimer certains noms/URL/versions, etc. dans le document pour le rendre plus propre et mieux intégré à votre solution. La suppression de ces informations est correcte si vous fournissez le correctif qui les supprime. De cette façon, il n'y a pas d'obscurcissement, vos modifications sont transparentes.

Dans tous les cas, si vous repérez un bogue et pensez que vous l'avez corrigé, vous êtes fortement encouragé à le soumettre pour examen, car il est courant de corriger les conséquences plutôt que les causes.

7
Willy Tarreau

Un autre point sur le titre de votre question "Puis-je utiliser les binaires du logiciel GPL dans un environnement commercial?" : oui vous pouvez et vous êtes même encouragé à le faire. Plus nous aurons de logiciels libres dans les environnements commerciaux, moins nous aurons de problèmes pour résoudre les problèmes de production!

5
Willy Tarreau

Si vous ne modifiez pas la source et n'utilisez pas les binaires, vous devriez être entièrement en clair.

4
yan