फ्री सॉफ्टवेयर फाउंडेशन से "फ्री सॉफ्टवेयर" की परिभाषा:
"मुफ़्त सॉफ़्टवेयर उदारता का मसला है, कीमत का नहीं। अवधारणा को समझने के लिए, आपको "स्वतंत्र भाषण" के बारे में सोचना चाहिए जैसे कि "मुक्त भाषण", "मुफ्त बीयर" में नहीं।
फ्री सॉफ्टवेयर उपयोगकर्ताओं के सॉफ्टवेयर को चलाने, कॉपी करने, वितरित करने, अध्ययन, परिवर्तन और सुधार करने की स्वतंत्रता की बात है। अधिक सटीक रूप से, इसका मतलब है कि कार्यक्रम के उपयोगकर्ताओं के पास चार आवश्यक स्वतंत्रताएं हैं:
- किसी भी उद्देश्य के लिए कार्यक्रम चलाने की स्वतंत्रता (स्वतंत्रता ०)।
- यह अध्ययन करने की स्वतंत्रता कि कार्यक्रम कैसे काम करता है, और इसे बदलने के लिए वह करें जो आप चाहते हैं (स्वतंत्रता 1)। स्रोत कोड तक पहुंच इसके लिए एक पूर्व शर्त है।
- प्रतियों को फिर से वितरित करने की स्वतंत्रता ताकि आप अपने पड़ोसी (स्वतंत्रता 2) की मदद कर सकें।
- अपने संशोधित संस्करणों की प्रतियां दूसरों को वितरित करने की स्वतंत्रता (स्वतंत्रता 3)। ऐसा करने से आप पूरे समुदाय को अपने परिवर्तनों से लाभ उठाने का मौका दे सकते हैं। स्रोत कोड तक पहुंच इसके लिए एक पूर्व शर्त है।
एक प्रोग्राम मुफ्त सॉफ्टवेयर है यदि उपयोगकर्ताओं के पास इन सभी फ्रीडम हैं। इस प्रकार, आपको कहीं भी किसी को भी वितरण के लिए या किसी संशोधन के साथ, या तो बिना किसी संशोधन के प्रतियों को फिर से वितरित करने के लिए स्वतंत्र होना चाहिए। इन चीजों को करने के लिए स्वतंत्र होने का मतलब है (अन्य चीजों के बीच) जो आपको ऐसा करने की अनुमति के लिए पूछने या भुगतान करने की आवश्यकता नहीं है।
ओपन सोर्स इनिशिएटिव से "ओपन सोर्स सॉफ्टवेयर" की परिभाषा:
ओपन सोर्स का मतलब सिर्फ सोर्स कोड तक पहुंच नहीं है। ओपन-सोर्स सॉफ़्टवेयर के वितरण की शर्तों को निम्न मानदंडों का पालन करना चाहिए:
नि: शुल्क पुनर्वितरण लाइसेंस किसी भी पार्टी को कई अलग-अलग स्रोतों से कार्यक्रमों से युक्त एक समग्र सॉफ्टवेयर वितरण के घटक के रूप में सॉफ़्टवेयर को बेचने या देने से प्रतिबंधित नहीं करेगा। लाइसेंस को ऐसी बिक्री के लिए रॉयल्टी या अन्य शुल्क की आवश्यकता नहीं होगी।
स्रोत कोड कार्यक्रम में स्रोत कोड शामिल होना चाहिए, और स्रोत कोड के साथ-साथ संकलित फ़ॉर्म में वितरण की अनुमति होनी चाहिए। जहां किसी उत्पाद का कुछ स्रोत स्रोत कोड के साथ वितरित नहीं किया जाता है, वहाँ एक उचित प्रजनन लागत से अधिक के लिए स्रोत कोड प्राप्त करने का एक अच्छी तरह से प्रचारित साधन होना चाहिए, अधिमानतः बिना शुल्क के इंटरनेट के माध्यम से डाउनलोड करना। स्रोत कोड पसंदीदा रूप होना चाहिए जिसमें एक प्रोग्रामर प्रोग्राम को संशोधित करेगा। जानबूझकर obfuscated स्रोत कोड की अनुमति नहीं है। मध्यवर्ती रूपों जैसे कि प्रीप्रोसेसर या अनुवादक के आउटपुट की अनुमति नहीं है।
व्युत्पन्न काम करता है लाइसेंस को संशोधनों और व्युत्पन्न कार्यों की अनुमति देनी चाहिए, और उन्हें मूल सॉफ़्टवेयर के लाइसेंस के समान शर्तों के तहत वितरित करने की अनुमति देनी चाहिए।
लेखक के स्रोत कोड की अखंडता लाइसेंस स्रोत-कोड को संशोधित रूप में वितरित होने से प्रतिबंधित कर सकती है केवल अगर लाइसेंस बिल्ड समय पर कार्यक्रम को संशोधित करने के उद्देश्य से स्रोत कोड के साथ "पैच फ़ाइलों" के वितरण की अनुमति देता है। लाइसेंस को संशोधित स्रोत कोड से निर्मित सॉफ्टवेयर के वितरण की स्पष्ट रूप से अनुमति देनी चाहिए। लाइसेंस के लिए मूल सॉफ़्टवेयर से अलग नाम या संस्करण संख्या को ले जाने के लिए व्युत्पन्न कार्यों की आवश्यकता हो सकती है।
व्यक्तियों या समूहों के खिलाफ कोई भेदभाव नहीं लाइसेंस किसी भी व्यक्ति या व्यक्तियों के समूह के साथ भेदभाव नहीं करना चाहिए।
एंडेवर के क्षेत्र के खिलाफ कोई भेदभाव नहीं लाइसेंस को किसी विशिष्ट क्षेत्र में कार्यक्रम के उपयोग से किसी को प्रतिबंधित नहीं करना चाहिए। उदाहरण के लिए, यह प्रोग्राम को किसी व्यवसाय में उपयोग किए जाने या आनुवंशिक अनुसंधान के लिए उपयोग किए जाने से प्रतिबंधित नहीं कर सकता है।
लाइसेंस का वितरण कार्यक्रम से जुड़े अधिकार उन सभी के लिए लागू होने चाहिए, जिन्हें उन पार्टियों द्वारा अतिरिक्त लाइसेंस के निष्पादन की आवश्यकता के बिना कार्यक्रम को पुनर्वितरित किया गया है।
उत्पाद के लिए लाइसेंस अनिवार्य नहीं होना चाहिए कार्यक्रम से जुड़े अधिकार कार्यक्रम के किसी विशेष सॉफ़्टवेयर वितरण का हिस्सा होने पर निर्भर नहीं होना चाहिए। यदि प्रोग्राम को उस वितरण से निकाला जाता है और प्रोग्राम के लाइसेंस की शर्तों के भीतर उपयोग या वितरित किया जाता है, तो सभी पक्षों को, जिनके लिए प्रोग्राम को पुनर्वितरित किया जाता है, उनके पास वही अधिकार होने चाहिए जो मूल सॉफ़्टवेयर वितरण के साथ संयोजन में दिए गए हैं।
लाइसेंस अन्य सॉफ़्टवेयर को प्रतिबंधित नहीं करना चाहिए लाइसेंस को लाइसेंस प्राप्त सॉफ़्टवेयर के साथ वितरित किए जाने वाले अन्य सॉफ़्टवेयर पर प्रतिबंध नहीं लगाना चाहिए। उदाहरण के लिए, लाइसेंस को इस बात पर जोर नहीं देना चाहिए कि एक ही माध्यम पर वितरित सभी अन्य प्रोग्राम ओपन-सोर्स सॉफ़्टवेयर होने चाहिए।
लाइसेंस प्रौद्योगिकी-तटस्थ होना चाहिए लाइसेंस का कोई प्रावधान किसी भी व्यक्तिगत प्रौद्योगिकी या इंटरफ़ेस की शैली पर समर्पित नहीं किया जा सकता है।
ये परिभाषाएँ, हालांकि वे बहुत भिन्न विचारधाराओं से उत्पन्न होती हैं, मोटे तौर पर संगत हैं, और सबसे मुक्त सॉफ़्टवेयर भी ओपन सोर्स सॉफ़्टवेयर है और इसके विपरीत। मेरा मानना है कि हालाँकि, यह संभव है कि ऐसा न हो: सॉफ्टवेयर का मुक्त स्रोत के बिना मुक्त होना, या मुक्त स्रोत के बिना मुक्त होना संभव है।
प्रशन
- क्या मेरा विश्वास सही है? क्या सॉफ्टवेयर के लिए एक शिविर में गिरना संभव है और दूसरे में नहीं?
- क्या ऐसा कोई सॉफ्टवेयर वास्तव में मौजूद है? कृपया उदाहरण दें।
स्पष्टीकरण
मैंने पहले से ही एक जवाब अब स्वीकार कर लिया है, लेकिन मुझे लगता है कि बहुत सारे लोगों को भ्रमित किया गया है, इसलिए शायद एक स्पष्टीकरण क्रम में है। मैं कोपलेफ़्ट (या "वायरल" के बीच के अंतर के बारे में नहीं पूछ रहा था , हालांकि मुझे वह शब्द पसंद नहीं है) और गैर-कोपलेफ़्ट ("अनुमेय") लाइसेंस। और न ही मैं "फ्री" और "ओपन" की आपकी व्यक्तिगत पहचान की परिभाषाओं के बारे में पूछ रहा था। मैं "फ्री सॉफ्टवेयर के रूप में एफएसएफ द्वारा परिभाषित" और "ओपन सोर्स सॉफ्टवेयर ओएसआई द्वारा परिभाषित" के बारे में पूछ रहा था। क्या दोनों हमेशा एक जैसे होते हैं? क्या दूसरे के बिना एक होना संभव है?
और जवाब, ऐसा लगता है, कि मुक्त होने के बिना मुक्त होना असंभव है, लेकिन मुक्त होने के बिना खुला होना संभव है। आप सभी को धन्यवाद जिन्होंने वास्तव में सवाल का जवाब दिया।