2009-04-26 14 views
7

मेरे पास एक वाणिज्यिक वेब ऐप है जो एलजीपीएल के तहत एक घटक का उपयोग करता है। चूंकि इस घटक में आर्किटेक्चर में एक प्लग है, मैंने अब इस घटक के लिए एक प्लग बनाया है जो लाइब्रेरी (LGPL) का उपयोग करता है। यह पुस्तकालय एक डेटा स्रोत का उपयोग करता है जो जीपीएल है।एलजीपीएल/जीपीएल लाइसेंसिंग

क्या इसका मतलब है कि मुझे अपने वेब ऐप के लिए स्रोत मुक्त करना है? या प्लग के लिए स्रोत को रिलीज़ करना जरूरी है?

किसी भी इनपुट और सलाह के लिए धन्यवाद, और मुझे मेरी खराब अंग्रेजी के लिए क्षमा करें।

उत्तर

1

मैं वकील नहीं हूं, लेकिन .. जब तक आप प्रोग्राम वितरित नहीं करते हैं (इसे वेब ऐप के रूप में उपयोग के लिए उपलब्ध कराने के लिए वितरण नहीं है), तो आपको किसी भी चीज़ के लिए स्रोत जारी करने की आवश्यकता नहीं है।

+0

सच है, लेकिन इस मामले में इसकी आवाज से बहुत लागू नहीं है। –

10

100% सुनिश्चित करने के लिए, आपको FAQ पढ़ना चाहिए और फिर सॉफ़्टवेयर लाइसेंसिंग से परिचित एक वकील से संपर्क करना चाहिए। उन वकीलों से बात न करें जो नहीं हैं क्योंकि वे आपको सुरक्षित पक्ष पर रहने के लिए कुछ भी मुफ्त/ओपनसोर्स का उपयोग न करने के लिए कहेंगे, जो कोई भी कह सकता है।

वैसे भी, "डेटा स्रोत जो जीपीएल" से आपका क्या मतलब है? क्या जीपीएल स्रोत कोड आपके आवेदन में जुड़ा हुआ है?

प्लग-इन और जीपीएल के संबंध में अक्सर पूछे जाने वाले प्रश्नों में कई प्रश्न हैं।

मैं एक गैर मुफ्त कार्यक्रम कि एक जीपीएल से ढके प्लग-इन लोड करने के लिए डिज़ाइन किया गया है जारी कर सकते हैं?

यह इस बात पर निर्भर करता है कि प्रोग्राम अपने प्लग-इन को कैसे आमंत्रित करता है। उदाहरण के लिए, यदि कार्यक्रम आह्वान और प्लग इन के साथ संवाद करने के लिए केवल सरल कांटा और कार्यकारी का उपयोग करता है, तो प्लग इन अलग कार्यक्रमों हैं, इसलिए के लाइसेंस प्लग-इन की कोई आवश्यकता मुख्य के बारे में बनाता है कार्यक्रम।

कार्यक्रम गतिशील प्लग इन लिंक होता है और वे एक दूसरे के समारोह और शेयर डेटा संरचनाओं को कॉल करने के , हमें विश्वास है कि वे एक भी कार्यक्रम है, जो का ही विस्तार दोनों के रूप में इलाज किया जाना चाहिए के रूप में तो मुख्य कार्यक्रम और प्लग-इन। आदेश जीपीएल से ढके प्लग-इन का उपयोग करने के मुख्य कार्यक्रम जीपीएल या एक जीपीएल-संगत मुक्त सॉफ्टवेयर लाइसेंस के तहत जारी की जाना चाहिए, और है कि जीपीएल के मामले पालन किया जाना चाहिए जब मुख्य कार्यक्रम इन प्लग-इन के साथ उपयोग के लिए वितरित किया जाता है।

कार्यक्रम गतिशील प्लग इन लिंक है, लेकिन उन दोनों के बीच संचार सीमित प्लग में कुछ विकल्पों के साथ की 'मुख्य' समारोह लागू और इंतजार कर इसे वापस करने के लिए है, तो है कि एक है सीमा रेखा मामला।

जटिल डेटा संरचनाओं के साथ संवाद करने के लिए साझा स्मृति का उपयोग करना गतिशील लिंकिंग के बराबर है।

जैसा कि अन्य ने बताया है, वितरित नहीं किए गए वेब ऐप्स को सादे जीपीएल (एफ़ेरो जीपीएल में नहीं) के तहत निजी उपयोग माना जाता है।

एक कंपनी एक वेब साइट पर एक GPL'ed कार्यक्रम का एक संशोधित संस्करण चल रहा है। क्या जीपीएल का कहना है कि उन्हें अपने संशोधित स्रोतों को जारी करना चाहिए?

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

लोगों के लिए संशोधन करना और उन संशोधनों को प्रकाशित किए बिना निजी तौर पर उनका उपयोग करना स्वतंत्रता है। हालांकि, लोगों को बात करने के लिए जनता के लिए सर्वर मशीन पर प्रोग्राम डालना शायद ही कभी "निजी" उपयोग है, इसलिए उस विशेष मामले में स्रोत कोड को रिलीज़ करने की आवश्यकता होगी। डेवलपर जो इसे संबोधित करना चाहते हैं वे नेटवर्क सर्वर उपयोग के लिए डिज़ाइन किए गए कार्यक्रमों के लिए जीएनयू एफ़ेरो जीपीएल का उपयोग करना चाह सकते हैं।

+0

मुझे लगता है कि जब आप अपने आवेदन के साथ जीपीएल डेटासोर्स (जेडीबीसी ड्राइवर, शायद?) वितरित नहीं करते हैं, और ग्राहक अपने आप पर जीपीएल डेटासोर्स डाउनलोड करता है और इसका उपयोग करने के लिए एप्लिकेशन को कॉन्फ़िगर करता है, तो इसे निजी उपयोग माना जाएगा ग्राहक का हिस्सा इसलिए आप में से कोई भी स्रोत को कुछ भी जारी नहीं करना होगा। साइड इफेक्ट ग्राहक के लिए एक मामूली असुविधा होगी (उसे मूल निर्माता से जीपीएल सामान अलग से प्राप्त करना होगा और इसे सब एक साथ रखना होगा)। कृपया ध्यान दें कि IANAL (मैं वकील नहीं हूं) इसलिए यह आधिकारिक कानूनी सलाह नहीं है। एक सक्षम व्यक्ति से परामर्श करें। –

+0

प्रश्न एलजीपीएल के बारे में पूछा गया, जीपीएल नहीं, जिस पर यह टिप्पणी बात कर रही है, मैं कम कर दूंगा, लेकिन मेरे अंक बर्बाद नहीं करना चाहता हूं। – Amala

+0

@ अमाला ओपी ने लिखा "यह पुस्तकालय एक डेटा स्रोत का उपयोग करता है जो जीपीएल है।" –

1

यदि वेब ऐप से आप का मतलब है कि आप बस अपने सर्वर पर सॉफ़्टवेयर चलाते हैं और आप इसे अपने उपयोगकर्ताओं को वितरित नहीं करते हैं, तो यह सरल होना चाहिए। कोई वितरण नहीं, स्रोत देने की कोई ज़रूरत नहीं है।

(GPL3 साथ अलग हो सकता है)

6

इसका मतलब मैं अपने वेब अनुप्रयोग के लिए स्रोत मुक्त करने के लिए करता है?

नहीं *

या में प्लग के लिए स्रोत जारी करने के लिए बस के लिए आवश्यक है?

यदि आप एप्लिकेशन वितरित करते हैं, तो हाँ, आपको इसके एलजीपीएल हिस्से के लिए स्रोत कोड भी वितरित करना होगा।

आपको यह भी सुनिश्चित करना होगा कि आपके आवेदन को प्राप्त करने वाले किसी को भी इसे संशोधित करने का मौका मिलेगा। संकलित अनुप्रयोगों के लिए यह महत्वपूर्ण है - आपको आवश्यक ऑब्जेक्ट फ़ाइलों को शामिल करने की आवश्यकता होगी ताकि आपके ऐप को एलजीपीएल कोड के संशोधित संस्करण से फिर से जोड़ा जा सके। या, गतिशील लिंकिंग का उपयोग करें। विचार यह है कि लोगों को आपके कोड के उस हिस्से को संशोधित करने में सक्षम होना चाहिए जो एलजीपीएल है और इसे अपने ऐप से फिर से गठबंधन करें।

  • LGPL कोड और अन्य कोड के बीच स्पष्ट जुदाई किसी प्रकार का होना चाहिए:

    यहाँ मेरी शब्दों में LGPL की आवश्यकताओं (मैं एक वकील नहीं हूँ) से कुछ हैं। विशेष रूप से, प्राप्तकर्ता के लिए एलजीपीएल कोड को संशोधित करना या अन्य कोड के साथ इसे पूरी तरह से बदलना संभव है, जैसे एक संशोधित संस्करण या libary के बाद के संस्करण। इसलिए, यदि यह एक संकलित प्रोग्राम है, तो एलजीपीएल कोड या तो गतिशील रूप से जुड़ा होना चाहिए (जैसे, एक अलग डीएलएल या साझा फ़ाइल) जैसे कि इसे आसानी से एक समान पुस्तकालय के लिए प्रतिस्थापित किया जा सकता है और फिर भी अंतःक्रियाशील हो सकता है; या, यदि यह स्थिर रूप से जुड़ा हुआ है, तो वैकल्पिक लाइब्रेरी के साथ पुन: संयोजन करने की अनुमति देने के लिए न्यूनतम आवश्यक स्रोत फ़ाइलें और/या ऑब्जेक्ट फ़ाइलें प्रदान की जानी चाहिए। गैर-एलजीपीएल भाग में बहुत सरल हेडर फाइलों को छोड़कर एलजीपीएल कोड का कोई भी हिस्सा नहीं हो सकता है।

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

वे कुछ प्रतिबंध थे, लेकिन एलजीपीएल आपको कई स्वतंत्रता भी प्रदान करता है, कि जीपीएल जैसे अन्य लाइसेंस नहीं हैं।

  • आप अपने आवेदन के बाकी (यानी, गैर LGPL हिस्सा) के लिए स्रोत कोड जारी करने के लिए की जरूरत नहीं है: आप एक संयुक्त कार्य है, जो भी शामिल है किसी और के LGPL कोड लाइसेंस प्राप्त कर रहे हैं तो। जैसा कि ऊपर वर्णित है, इसका एकमात्र अपवाद - यदि यह सभी स्थिर रूप से जुड़ा हुआ है तो आपको एलजीपीएल कोड के वैकल्पिक या संशोधित संस्करण के साथ पुनः लिंक करने में सक्षम होने के लिए पर्याप्त कोड (और/या ऑब्जेक्ट फाइल) प्रदान करने की आवश्यकता होगी। यदि आप एक सामान्य एपीआई पर गतिशील रूप से और बातचीत कर रहे हैं, तो आपको इसके बारे में चिंता करने की आवश्यकता नहीं है।
  • आपको जीपीएल के तहत अपना शेष आवेदन जारी करने की आवश्यकता नहीं है। आप अपने इच्छित लाइसेंस का उपयोग कर सकते हैं, जिसमें अधिक प्रतिबंधक स्वामित्व लाइसेंस शामिल हैं, बशर्ते कि जब आप इसे वितरित करते हैं तो आप नियमों का पालन करते हैं।
  • जीपीएल संस्करण 3 के विपरीत, जो कोड का उपयोग करने पर रोक लगाता है यदि आप प्रतिलिपि सुरक्षा या डीआरएम सॉफ़्टवेयर लागू कर रहे हैं, तो आप एक आवेदन में एलजीपीएल संस्करण 3 लाइसेंस प्राप्त कोड का उपयोग कर सकते हैं जिसमें कॉपी सुरक्षा या डीआरएम शामिल है।

मैंने हाल ही में analysis of the LGPL license लिखा - आप इसे अधिक जानकारी के लिए पढ़ सकते हैं।

इसके अलावा, कृपया actual text of the LGPL पढ़ें। यह बहुत लंबा नहीं है।

* आपने उल्लेख किया है कि आप जिस पुस्तकालय का उपयोग कर रहे हैं वह एक जीपीएल डेटा स्रोत है। संभवतः इसका मतलब है कि आप वास्तव में इसके साथ इस जीपीएल डेटा को वितरित नहीं करेंगे, केवल एलजीपीएल लाइब्रेरी जो इसका उपयोग करता है।

+0

ओह हाँ, अगर आप एप्लिकेशन को वितरित नहीं कर रहे हैं, लेकिन बस इसे अपने व्यक्तिगत उपयोग के लिए उपयोग करना चाहते हैं (उदाहरण के लिए, अपने वेब सर्वर पर) तो पागल हो जाएं। स्रोत कोड + अन्य टूल्स वितरित करने की आवश्यकता केवल तभी होती है जब आप ऐप वितरित करते हैं। – thomasrutter

संबंधित मुद्दे