योगदानकर्ता लाइसेंस अनुबंध और शीर्षलेख

यह पृष्ठ दो महत्वपूर्ण योगदानकर्ता कार्यों को शामिल करता है: योगदानकर्ता लाइसेंस समझौतों पर हस्ताक्षर करना और आपके कोड में लाइसेंसिंग हेडर का सही उपयोग सुनिश्चित करना।

योगदानकर्ता लाइसेंस समझौतों पर हस्ताक्षर करें

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

कॉर्पोरेट योगदानकर्ता लाइसेंस समझौता एओएसपी पर काम करने वाले कर्मचारियों वाले निगम (या अन्य इकाई) के लिए उपलब्ध है। समझौते का यह संस्करण एक निगम को अपने नामित कर्मचारियों द्वारा प्रस्तुत योगदान को अधिकृत करने और कॉपीराइट और पेटेंट लाइसेंस प्रदान करने की अनुमति देता है।

Google अपने योगदानकर्ता लाइसेंस समझौतों को अपाचे सॉफ्टवेयर फाउंडेशन द्वारा उपयोग किए जाने वाले समझौतों पर आधारित करता है, जो अपाचे वेबसाइट पर पाया जा सकता है।

लाइसेंस हेडर शामिल करें

एंड्रॉइड ओपन सोर्स प्रोजेक्ट (एओएसपी) हमारे सॉफ़्टवेयर के लिए कुछ ओपन सोर्स पहल द्वारा अनुमोदित ओपन सोर्स लाइसेंस का उपयोग करता है।

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

यूजरस्पेस (नॉनकर्नेल) सॉफ़्टवेयर के लिए, Google GNU लेसर जनरल पब्लिक लाइसेंस (LGPL) जैसे अन्य लाइसेंसों की तुलना में Apache 2.0 (और BSD और MIT जैसे समान लाइसेंस) को प्राथमिकता देता है। उसकी वजह यहाँ है:

  • एंड्रॉइड स्वतंत्रता और विकल्प के बारे में है। एंड्रॉइड का उद्देश्य मोबाइल दुनिया में खुलेपन को बढ़ावा देना है, और Google हमारे सॉफ़्टवेयर के सभी उपयोगों की भविष्यवाणी या निर्देश नहीं दे सकता है। इसलिए, जबकि Google सभी को खुले और परिवर्तनीय उपकरण बनाने के लिए प्रोत्साहित करता है, हमें नहीं लगता कि उन्हें ऐसा करने के लिए मजबूर करना हमारी जगह है। एलजीपीएल पुस्तकालयों का उपयोग प्रतिबंधात्मक हो सकता है। यहां हमारी कुछ विशिष्ट चिंताएं हैं:

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

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

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

ये चिंताएँ एलजीपीएल या अन्य लाइसेंसों की आलोचना नहीं हैं। Google सभी निःशुल्क और मुक्त स्रोत लाइसेंसों की सराहना करता है, और दूसरों की लाइसेंस प्राथमिकताओं का सम्मान करता है। Google ने निर्णय लिया है कि Apache 2.0 हमारे लक्ष्यों के लिए सबसे उपयुक्त है।

AOSP में शामिल करने के लिए कोड सबमिट करते समय, आपको लाइसेंस हेडर का उचित उपयोग सुनिश्चित करना होगा। निम्नलिखित अनुभाग बताते हैं कि नई फ़ाइलों और मौजूदा कोड के लिए लाइसेंस हेडर को कैसे संभालना है।

कॉपीराइट और लाइसेंस हेडर के लिए इन सर्वोत्तम प्रक्रियाओं का पालन करें:

  • किसी मौजूदा कॉपीराइट को संशोधित न करें. उदाहरण के लिए, यदि आप एओएसपी में एक फ़ाइल का योगदान करना चाहते हैं जिसमें कोड शामिल है जो अपने स्वयं के कॉपीराइट नोटिस वाली फ़ाइल में उत्पन्न हुआ है, तो आपको मूल फ़ाइल से उस कॉपीराइट नोटिस को बनाए रखना होगा।

  • यदि आप पूरी तरह से नई स्रोत फ़ाइल जोड़ते हैं, तो डिफ़ॉल्ट AOSP कॉपीराइट और निम्नलिखित लाइसेंस हेडर का उपयोग करें, जब तक कि आप जिस प्रोजेक्ट में योगदान दे रहे हैं उसके पास एक अलग पूर्वनिर्धारित लाइसेंस न हो:

    Copyright (C) yyyy The Android Open Source Project
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at
    
    http://www.apache.org/licenses/LICENSE-2.0
    
    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.