web-dev-qa-db-fra.com

Puis-je vendre mon application PyQt4 sans avoir une licence PyQt?

Je voudrais vendre une application Python qui utilise PyQt4. Les licences commerciales de Qt PyQt coûtent des milliers d’euros ensemble. Dois-je acheter une licence commerciale?

Pensez à cela d’un point de vue "packagé", où je fournis un paquet Ubuntu par le biais du Centre logiciel. Mon paquet "dépend" des paquets Ubuntu Python et PyQt existants, aurais-je besoin d'une licence pour quelque chose qu'Ubuntu redistribue, que je ne suis pas directement?

Inversement, si j'incluais une bibliothèque GPL/LGPL Python dans mon paquet, mon paquet pourrait-il rester non libre? Ne pourrais-je pas simplement rendre le code source des bibliothèques GPL disponible (si modifié)?


Si la réponse est "Vous avez besoin d'une licence commerciale", y a-t-il des alternatives moins chères que vous connaissez (comme des paiements basés sur des redevances au lieu de frais de développeur initiaux)?

17
user2366975

Je ne suis pas avocat et il ne s'agit pas d'un conseil juridique. Cet article traite des options dont vous disposez, il s'agit donc d'un outil de recherche destiné à être utilisé à côté autres outils de recherche. Même en combinaison avec d'autres outils de recherche, cela ne remplace pas la consultation d'un avocat sur toute question juridique pour laquelle vous avez besoin d'une réponse appropriée.

Une des options de licence pour Qt ( et non PyQt ) est la LGPL 2.1 , ce qui vous permet de distribuer programmes propriétaires qui utilisent la bibliothèque Qt à condition de respecter tous les termes de la LGPL 2.1 .

PyQt, cependant, actuellement ne dispose que de deux options de licence (à moins que vous ne négociez quelque chose d'autre avec ses développeurs, ce qui ne serait normalement pas pratique). Il est disponible sous le GPL - puis, pour distribuer votre programme, il doit être logiciel libre et à code source ouvert ; plus spécifiquement, toute version de votre programme que vous proposez à d'autres et qui utilise la bibliothèque PyQt devrait également être concédée sous licence GPL.

La seule alternative à la GPL, pour un programme utilisant PyQt, est de payer pour une licence commerciale. Comme vous l'avez indiqué, le coût est souvent prohibitif (même si, pour certaines applications, c'est une bonne affaire).

Si votre objectif est d'écrire un programme incompatible avec la GPL dans Python qui utilise Qt, , vous voudrez peut-être envisager PySide . Comme PyQt, PySide est une liaison Python pour Qt, qui vous permet d'écrire des programmes Python utilisant Qt. Contrairement à PyQt, PySide est disponible sous LGPL (comme Qt lui-même), et peut donc être utilisé par des programmes propriétaires à condition que vous lisiez attentivement et respectiez les termes de la LGPL.

Parfois, PyQt présente des avantages considérables par rapport à PySide. Souvent, ce n'est pas le cas. Il existe également un élément de subjectivité que vous pouvez préférer utiliser. différents programmeurs ont des préférences différentes. Pour plus d'informations, voir Différences entre PySide et PyQt .

18
Eliah Kagan

En termes simples: si vous ne comprenez pas les termes des licences du logiciel que vous utilisez suffisamment pour interpréter si ce que vous suggérez est "correct", vous devez parler à un professionnel qui le comprend. Si vous souhaitez rechercher un accord directement avec les détenteurs de licences, cela fonctionne aussi, mais vous devez tout de même comprendre comment les licences fonctionnent.


Comme Eliah, je ne suis pas avocat non plus et lorsque vous êtes poursuivi pour avoir suivi mes conseils, vous ne pouvez pas dire que je ne vous ai pas prévenu. Je suis généralement d'accord avec Eliah mais je pense que dans ce cas, Python est un peu différent.

Le logiciel GPL vous permet de redistribuer quelque chose tant que vous le fournissez sous la même licence. Dans ce cas, vous redistribuez PyQT, ce que vous pouvez faire. Vous seriez également distribuer votre produit. Personnellement, je ne vois pas pourquoi vous ne pouvez pas faire les deux tant que vous rendez la source disponible pour les éléments GPL que vous utilisez. Vous ne les intégrez pas dans votre Python, vous les utilisez simplement.

Pour décrire davantage ce dont je parle, si vous incluez une bibliothèque dans un projet C et la compilez, vous obtiendrez soit le code GPL de votre binaire, soit vous créerez des bibliothèques statiques auxquelles votre code sera lié ( statiquement ou dynamiquement). La FSF vous demandera de rendre votre code disponible par GPL si vous redistribuez son code protégé.

Regarde la différence? La distribution textuelle de Python signifie que la liaison est assez dynamique: il n'y a pas de "liens" statiques vers le code GPL et la référence à PyQT pourrait être substituée dans un environnement différent. Vous utilisez juste son API.

Si vous recherchez "python import gpl", vous trouverez de nombreux arguments dans les deux sens de la part de nombreux non-avocats. Ce n'est pas un argument simple et si cela devait aboutir à un procès, vous pouvez être complètement sûr que tout le monde du logiciel libre mettrait tout en œuvre pour s'assurer qu'un précédent négatif soit créé.

Donc, encore une fois, vous n'êtes probablement pas qualifié pour prendre cette décision seul. Soit vous vous adressez à un avocat, soit vous vous demandez combien cela vous coûterait, et vous vous dites que le prix des licences commerciales coûtera moins cher.

Ignorer les licences coûtera beaucoup plus cher.

5
Oli