क्या मैं बिना PyQt लाइसेंस के अपना PyQt4-app बेच सकता हूं?


18

मैं एक पायथन एप्लिकेशन बेचना चाहता हूं जो PyQt4 का उपयोग करता है। Qt PyQt के वाणिज्यिक लाइसेंस की लागत हजारों यूरो एक साथ है। क्या मुझे एक वाणिज्यिक लाइसेंस खरीदने की आवश्यकता है?

इसे "पैक किए गए" बिंदु से विचार करें जहां मैं सॉफ़्टवेयर केंद्र के माध्यम से एक उबंटू पैकेज प्रदान कर रहा हूं। मेरा पैकेज मौजूदा उबंटू पायथन और पायकट पैकेजों पर "निर्भर करेगा" तो क्या मुझे कुछ ऐसा करने की आवश्यकता होगी जो उबंटू पुनर्वितरित कर रहा हो, कि मैं सीधे नहीं हूं?

इसके विपरीत, अगर मैंने अपने पैकेज में GPL / LGPL पायथन लाइब्रेरी को शामिल किया तो क्या मेरा पैकेज गैर-मुक्त रह पाएगा? क्या मैं जीपीएल पुस्तकालयों को स्रोत उपलब्ध नहीं करा सकता (यदि संशोधित किया गया है)?


यदि उत्तर "आपको एक वाणिज्यिक लाइसेंस की आवश्यकता है", तो क्या आपके द्वारा ज्ञात कोई सस्ता विकल्प है (जैसे अप-फ्रंट डेवलपर शुल्क के बजाय रॉयल्टी-आधारित भुगतान)?


5
मैंने इसे उबंटू के बारे में स्पष्ट रूप से बात करने के लिए संपादित किया है ताकि हम यह सब लिखावट हमारे पीछे रख सकें और वास्तव में लोगों के सवालों का जवाब दे सकें। मैंने टिप्पणियों से बहस को शुद्ध किया है और प्रश्न को फिर से खोल दिया है।
ओली

ध्यान दें कि यह प्रश्न PyQt4 के बारे में है जो GNU GPL दोनों के तहत उपलब्ध है। हाल ही में PyQt5 केवल GNU GPLv3 है। कोड "लिंकिंग" के बारे में बहुत उपयुक्त तकनीकी भेदभाव वहां कम लागू होता है (= वाणिज्यिक पैकेजिंग के लिए कम अनुकूल)।
मारियो

जवाबों:


18

मैं वकील नहीं हूं और यह कानूनी सलाह नहीं है। यह पोस्ट आपके पास क्या विकल्प है, इसलिए यह एक शोध उपकरण है, जिसका उपयोग अन्य शोध उपकरणों के साथ किया जाना है। यहां तक ​​कि अन्य शोध उपकरणों के साथ संयोजन में, यह किसी भी कानूनी मामले के बारे में एक वकील से परामर्श करने के लिए कोई विकल्प नहीं है, जहां आपको उचित उत्तर की आवश्यकता होती है।

Qt ( PyQt नहीं ) के लाइसेंस विकल्पों में से एक LGPL 2.1 है , जो आपको Qt लाइब्रेरी का उपयोग करने वाले मालिकाना कार्यक्रमों को वितरित करने की अनुमति देता है, बशर्ते कि आप LGPL 2.1 की सभी शर्तों का पालन करते हों

PyQt, हालांकि, वर्तमान में केवल दो लाइसेंसिंग विकल्प हैं (जब तक कि आप इसके डेवलपर्स के साथ कुछ और बातचीत नहीं करते हैं, जो आमतौर पर व्यावहारिक नहीं होगा)। यह GPL के तहत उपलब्ध है - अपने प्रोग्राम को वितरित करने के लिए इसे मुक्त ओपन सोर्स सॉफ्टवेयर होना चाहिए ; विशेष रूप से, आपके कार्यक्रम का कोई भी संस्करण जो आप दूसरों को प्रदान करते हैं और जो PyQt लाइब्रेरी का उपयोग करता है, उसे GPL के तहत भी लाइसेंस प्राप्त करना होगा।

जीपीएल का एकमात्र विकल्प, एक प्रोग्राम के लिए जो PyQt का उपयोग करता है, एक वाणिज्यिक लाइसेंस के लिए भुगतान करना है। जैसा कि आपने संकेत दिया, यह अक्सर निषेधात्मक रूप से महंगा है (हालांकि कुछ अनुप्रयोगों के लिए यह एक अच्छा सौदा है)।

यदि आपका लक्ष्य पायथन में GPL- असंगत प्रोग्राम लिखना है जो Qt का उपयोग करता है, तो आप PySide पर विचार करना चाह सकते हैं । PyQt की तरह, PySide Qt के लिए एक Python बाइंडिंग है, जो आपको Python प्रोग्राम लिखने देता है जो Qt का उपयोग करता है। PyQt के विपरीत, PySide LGPL (जैसे Qt ही) के तहत उपलब्ध है , और इस प्रकार इसका उपयोग मालिकाना कार्यक्रमों द्वारा किया जा सकता है बशर्ते कि आप LGPL की शर्तों को ध्यान से पढ़ें और उसका पालन करें।

कभी-कभी, PyQt का PySide पर महत्वपूर्ण लाभ होता है। अक्सर, यह नहीं है। विषय-वस्तु का एक तत्व भी है जिसके बारे में आप उपयोग करना पसंद कर सकते हैं; विभिन्न प्रोग्रामर की अलग-अलग प्राथमिकताएँ होती हैं। अधिक जानकारी के लिए, PySide और PyQt के बीच अंतर देखें ।


PyQt4 अनुप्रयोगों को GPL लाइसेंस प्राप्त करने की आवश्यकता नहीं है। PyQt4 में एक GPL अपवाद शामिल है जो विशेष रूप से कुछ गैर-GPL लाइसेंस की अनुमति देता है। देखें: Riverbankcomputing.com/software/pyqt/license और github.com/Werkov/PyQt4/blob/master/GPL_EXCEPTION.TXT
मारियो

1
@Mario जानकारी के लिए धन्यवाद! लेकिन मैं आपको इसे और अधिक समझाने के लिए एक उत्तर पोस्ट करने के लिए प्रोत्साहित करूंगा, और यह भी स्पष्ट कर दूंगा कि यह इस प्रश्न के ओपी पर कैसे लागू होता है (जो मालिकाना PyQt- आधारित सॉफ़्टवेयर वितरित करना चाहता है)। यहां कारण बताया: riverbankcomputing.com/software/pyqt/license शो PyQt (दो संस्करणों की अनुमति है) या GPL के अंतर्गत लाइसेंस प्राप्त एक वाणिज्यिक लाइसेंस (दो वेरिएंट) जहां एक डेवलपर मालिकाना PyQt आधारित सॉफ्टवेयर वितरित करने का अधिकार के लिए भुगतान करता है रिवरबैंक जा सकता है।
एलियाह कगन

@Mario मेरे उत्तर के लिए मुख्य सुधार github.com/Werkov/PyQt4/blob/master/GPL_EXCEPTION.TXT पर लगता है , जो अधिक विकल्प देता है। लेकिन कोई भी PyQt- आधारित सॉफ़्टवेयर के स्वामित्व को बनाने की अनुमति नहीं देता है - वे अन्य FOSS लाइसेंस हैं। इसके अलावा, उस फ़ाइल के लिंक के साथ एक आधिकारिक पृष्ठ है, या यह स्पष्ट करने के लिए अन्य जानकारी है कि यह वास्तव में एक आधिकारिक लाइसेंसिंग दस्तावेज है? (मेरा मानना ​​है कि यह सबसे अधिक संभावना है, लेकिन मुझे यकीन नहीं है कि मैं इसे किसी सीईओ या अन्य हितधारक को कैसे प्रदर्शित करूंगा।) यह अजीब है कि आधिकारिक रिवरबैंक साइट पर पहले लाइसेंसिंग पृष्ठ पर विस्तारित विकल्पों का उल्लेख नहीं किया गया है।
एलियाह कगन

क्या मैं GPL के तहत लाइसेंस प्राप्त PyQt5 का उपयोग करने वाले किसी एप्लिकेशन का इंस्टॉलर बना सकता हूं , फिर भी क्या मेरी अपनी शर्तों के तहत लाइसेंस स्थापित किया जा रहा है?
निकल्स आर

1
हाय @EliahKagan! PySide 2 के बारे में क्या , वही लागू होता है?
फ्रांसेस्को पैगोरारो

5

सीधे शब्दों में कहें: यदि आप सॉफ़्टवेयर के लाइसेंस की शर्तों को नहीं समझते हैं, तो आप यह व्याख्या करने के लिए पर्याप्त उपयोग कर रहे हैं कि क्या आप "ठीक है" का सुझाव दे रहे हैं, आपको एक पेशेवर से बात करने की ज़रूरत है जो करता है। यदि आप लाइसेंस मालिकों के साथ सीधे सौदा करना चाहते हैं , तो वह भी काम करता है, लेकिन आपको यह समझना होगा कि लाइसेंस कैसे काम करता है।


एलियाह की तरह, मैं भी एक वकील नहीं हूं और जब आप मेरी सलाह मानने के लिए मुकदमा कर रहे हैं, तो आप यह नहीं कह सकते कि मैंने आपको चेतावनी नहीं दी। मैं आमतौर पर एलियाह से सहमत हूं लेकिन मुझे लगता है कि इस मामले में, पायथन थोड़ा अलग है।

जीपीएल सॉफ्टवेयर आपको कुछ को फिर से वितरित करने की अनुमति देता है जब तक आप इसे एक ही लाइसेंस के तहत प्रदान करते हैं। इस मामले में आप PyQT का पुनर्वितरण करेंगे जो आप कर सकते हैं। आप अपने उत्पाद का वितरण भी करेंगे। मैं व्यक्तिगत रूप से यह नहीं देखता कि आप दोनों को तब तक क्यों नहीं कर सकते जब तक कि आप उस जीपीएल चीजों के लिए स्रोत उपलब्ध नहीं करते जो आप उपयोग कर रहे हैं। आप उन्हें अपने पायथन में एकीकृत नहीं कर रहे हैं, आप बस उनका उपयोग कर रहे हैं।

आगे यह बताने के लिए कि मैं किस बारे में बात कर रहा हूं, यदि आपने एक सी परियोजना में एक पुस्तकालय शामिल किया है और इसे नीचे संकलित किया है, तो आप अपने बाइनरी में या तो जीपीएल कोड को समाप्त करेंगे या आप स्थैतिक पुस्तकालयों का निर्माण करेंगे जो आपके कोड से जुड़ा हुआ है ( वैधानिक या गतिशील रूप से)। यदि आप उनके संरक्षित कोड का पुनर्वितरण करते हैं, तो FSF आपको अपना कोड GPL द्वारा उपलब्ध कराने की मांग करेगा।

फर्क देखें? पायथन के पाठ-आधारित वितरण का अर्थ है कि लिंकिंग बहुत गतिशील है: GPL कोड के लिए स्थिर "लिंक" नहीं हैं और PyQT के संदर्भ को एक अलग वातावरण में प्रतिस्थापित किया जा सकता है। आप बस इसके एपीआई का उपयोग कर रहे हैं।

यदि आप "अजगर आयात gpl" की खोज करते हैं, तो आपको कई, कई गैर-वकीलों से दोनों दिशाओं में कई, कई तर्क मिलेंगे। यह एक सरल तर्क नहीं है और अगर यह मुकदमा आया, तो आप निश्चिंत हो सकते हैं कि बेंच के मुफ्त सॉफ्टवेयर पक्ष में हर कोई नकारात्मक मिसाल कायम करने के लिए सब कुछ फेंक रहा होगा।

इसलिए एक बार फिर, आप अकेले इस निर्णय को करने के लिए योग्य नहीं हैं। या तो एक वकील से बात करें या यह देखें कि आपको कितना खर्च करना होगा और यह काम करना होगा कि वाणिज्यिक लाइसेंस के लिए भुगतान करना सस्ता होगा।

लाइसेंस को अनदेखा करना बहुत अधिक महंगा होगा।


2
«आप उन्हें अपने पायथन में एकीकृत नहीं कर रहे हैं, आप बस उनका उपयोग कर रहे हैं» यदि आप GPLed पायथन मॉड्यूल आयात करते हैं, तो पूरी चीज GPL हो जाती है।
एंड्रिया लज्जाज़ारो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.