GitHub لائسنس – ہم کس کے بارے میں بات کر رہے ہیں؟ سافٹ ویئر بنانے کے لیے، کسی کو نہ صرف اسے لکھنا چاہیے، بلکہ یہ بھی طے کرنا چاہیے کہ صارفین یا ڈویلپرز کو اس کے ساتھ کیا کرنے کا حق ہے۔ اگر کوئی سب کے لیے مفت پروگرام بناتا ہے تو وہ ایک اچھا کام کر رہا ہے، لیکن جو اسے استعمال کرتا ہے اسے جواز دینا ہو گا کہ وہ اسے کیسے استعمال کرتا ہے۔ مثال کے طور پر، اگر کوئی کمپنی اپنی سرگرمیوں میں کچھ مفت دفتر کے ساتھ کام کرے گی (مثال کے طور پر، LibreOffice)، تو اسے انسپکٹرز کے سامنے یہ ثابت کرنے کے قابل ہونا چاہیے کہ اسے ایسا کرنے کا حق ہے۔ ایسا کرنے کے لئے، یہ مناسب لائسنس پیش کرنے کے لئے کافی ہو گا. اگر ڈویلپر اسے بنانا بھول جاتا ہے تو کمپنی مشکل میں پڑ سکتی ہے۔ [کیپشن id=”attachment_11854″ align=”aligncenter” width=”1024″]
لائسنسوں کی درجہ بندی اور لائسنس کی اقسام مثال کے طور پر، ہم نہ صرف استعمال کرنے کے بارے میں بات کر سکتے ہیں، بلکہ پروگراموں کے متن کا مطالعہ کرنے یا سافٹ ویئر پروڈکٹ میں اپنی ایڈجسٹمنٹ کرنے کے بارے میں بھی بات کر سکتے ہیں۔ GitHub تعاون پر مبنی پروجیکٹ کی ترقی کے لیے سب سے بڑی خدمات میں سے ایک ہے۔ ایک ہی وقت میں، وہ یہاں نہ صرف مفت بلکہ تجارتی منصوبوں پر بھی کام کر سکتے ہیں۔ مناسب لائسنس کی وضاحت کر کے، ڈویلپرز تخلیق کردہ پروڈکٹ کو استعمال کرنے کے بارے میں ابہام کو ختم کر دیں گے۔ مسئلہ یہ ہے کہ لائسنس کی بہت سی مختلف اقسام ہیں، اور یہ طے کرنا ہمیشہ آسان نہیں ہوتا ہے کہ کسی خاص معاملے میں کون سا اختیار منتخب کیا جائے۔ یہ بھی غیر معمولی بات نہیں ہے کہ کچھ پروجیکٹس کے پاس لائسنس نہیں ہے۔
- آپ کو GitHub پر اوپن سورس پروجیکٹس کو لائسنس دینے کی ضرورت کیوں ہے۔
- کس قسم کے لائسنس موجود ہیں۔
- گیتھب لائسنس کا انتخاب کیسے کریں۔
- گیتوب میں لائسنس کیسے شامل کریں۔
- ایک لائسنس گیتھب کا انتخاب کریں – گٹ ہب پر مقبول لائسنسوں کی مثالیں۔
- جی پی ایل
- ایل جی پی ایل
- ایکلیپس پبلک لائسنس
- موزیلا پبلک لائسنس
- اپاچی لائسنس گیتھب
- ایم آئی ٹی لائسنس
- پانی کے اندر کی چٹانیں۔
آپ کو GitHub پر اوپن سورس پروجیکٹس کو لائسنس دینے کی ضرورت کیوں ہے۔
مطلوبہ لائسنس کی وضاحت کرتے وقت، ڈویلپر اس میں درج ذیل چیزیں فراہم کر سکتا ہے:
- پروگرام کے استعمال کی شرائط ۔ ان میں فیس شامل ہو سکتی ہے یا، کچھ یا تمام معاملات میں، مفت استعمال کی اجازت دے سکتے ہیں۔
- بعض اوقات کمیونٹی کی طرف سے تیار کرنے کے لیے پروگرام بنائے جاتے ہیں ۔ اس معاملے میں، یہ ضروری ہے کہ ہر وہ شخص جو پروگرام کے نصوص سے واقف ہونا چاہتا ہے۔
- جب پروگرام کے متن دستیاب ہوں تو، کچھ پروگرام کو فعال اور ممکنہ حد تک قابل اعتماد بنانے کے لیے تبدیلیاں کر سکتے ہیں ۔ بعض اوقات مصنف ہر کسی کو ایسا کرنے کی اجازت دے سکتا ہے، دوسرے معاملات میں وہ اسے تبدیلی بھیجنے کی پیشکش کرتا ہے، اور اپنے طور پر پروجیکٹ میں ایڈجسٹمنٹ کرتا ہے۔
- آپ کو یہ فیصلہ کرنے کی ضرورت ہے کہ آیا تیسرے فریق منصوبے میں تبدیلیاں کر سکتے ہیں اور اپنی طرف سے پیشکش کر سکتے ہیں۔ ایسا کرتے وقت، آپ کو یہ بتانا ہوگا کہ ان کی پروڈکٹ کونسی لائسنس کے ساتھ ہونا چاہیے۔
ان اور اسی طرح کے سوالات کو حل کرتے ہوئے، ایپلی کیشن کا مصنف درحقیقت اپنے تخلیق کردہ سافٹ ویئر پروڈکٹ کی مستقبل کی قسمت کا تعین کرتا ہے۔
کس قسم کے لائسنس موجود ہیں۔
لائسنس ایک ایسا معاہدہ ہے جس میں ایک فریق (لائسنس دہندہ) دوسرے فریق (لائسنس دہندہ) کے لیے اس کی تخلیق کردہ مصنوعات کو استعمال کرنے کے لیے ایک اصول قائم کرتا ہے۔ عملی طور پر، ہم فریقین کی طرف سے کسی دستاویز پر دستخط کرنے کی بات نہیں کر رہے ہیں، بلکہ اس کے استعمال پر متعلقہ حقوق اور ذمہ داریوں کے ساتھ خودکار معاہدے کے بارے میں بات کر رہے ہیں۔ حقوق اور ذمہ داریوں کی وضاحت پر عملی طور پر کوئی پابندی نہیں ہے۔ شرط صرف یہ ہے کہ وہ قانون کی پاسداری کریں۔ اپنے لائسنس بنانا ایک پیچیدہ کام ہے، کیونکہ یہ دوسرے ضوابط کے ساتھ ہم آہنگ ہونا چاہیے۔ بہترین آپشن یہ ہے کہ ایسی دستاویزات کی معیاری اقسام میں سے کسی ایک کو منتخب کریں اور استعمال کریں۔ عملی طور پر، ملٹی لائسنسنگ استعمال کرنے کا بھی رواج ہے۔ زیادہ تر اکثر، اس طرح کے معاملات میں، دو لائسنس بیک وقت استعمال کیے جاتے ہیں. اگرچہ پروگرام کے مصنف کو یہ حق حاصل ہے کہ وہ آزادانہ طور پر ایسے قوانین وضع کرے جن پر صارفین کو عمل کرنا چاہیے، اس کے باوجود، عملی طور پر، لائسنسوں کی ایک بڑی تعداد کا استعمال تیار ہوا ہے، جس سے آپ زیادہ تر معاملات میں صحیح انتخاب کر سکتے ہیں۔ زیادہ تر معاملات میں گٹ ہب پر استعمال ہونے والے مقبول ترین اختیارات درج ذیل ہیں۔ Git Hub پر عام طور پر استعمال ہونے والے لائسنس یہ ہیں:
پروگرامر کو ایک ایسا انتخاب کرنے کے قابل ہونا پڑے گا جو اس کے منصوبوں کے مطابق ہو۔ اسے صحیح طریقے سے کرنے کے لیے، آپ کو یہ سمجھنے کی ضرورت ہے کہ مخصوص پرجاتیوں میں کون سی خصوصیات شامل ہیں۔
اگر مصنف دستاویز بنانے سے انکار کرتا ہے، تو اس صورت میں کاپی رائٹس لاگو ہوں گے، جو اس کے ملک کی قانون سازی کے ذریعے طے شدہ طور پر فراہم کیے گئے ہیں۔ اس طرح لائسنس کی عدم موجودگی کا مطلب یہ نہیں کہ پروگرام کے ساتھ کچھ بھی کیا جا سکتا ہے۔ درحقیقت، ایسی صورت حال کو لائسنس کی اقسام میں سے ایک سمجھا جا سکتا ہے۔
گیتھب لائسنس کا انتخاب کیسے کریں۔
اس سے پہلے کہ آپ کسی مناسب آپشن کی تلاش شروع کریں، یہ ضروری ہے کہ پروگرامر اپنی ضروریات وضع کرے، جس سے وہ مزید لائسنسنگ کے ساتھ آگے بڑھنے والا ہے۔ اگلا، آپ کو اپنے آپ کو ان مخصوص اختیارات سے واقف کرانا چاہیے جو درخواست سے مماثل ہیں۔ اس کے بعد، آپ کو قانونی زبان کا بغور مطالعہ کرنا ہوگا اور اس بارے میں حتمی فیصلہ کرنا ہوگا کہ لائسنس کیا ہونا چاہیے۔ باخبر انتخاب کرنے کے لیے، آپ کو یہ سمجھنا ہوگا کہ لائسنس کی ایک خاص قسم کے ساتھ کون سے حقوق اور ذمہ داریاں وابستہ ہیں۔ صحیح انتخاب کرنے کے لیے، آپ کمپیریٹر نامی خصوصی خدمات استعمال کر سکتے ہیں۔ یہاں کچھ مثالیں ہیں:
- https://choosealicense.com/۔ اس سائٹ میں صحیح آپشن کے انتخاب کے لیے اہم سوالات ہیں اور استعمال کی خصوصیات کو سمجھنے میں آپ کی مدد کرنے کے لیے تفصیلی مشورہ ہے۔
- https://opensource.org/licenses صفحہ مختلف مفت سافٹ ویئر حلوں کا جائزہ لینے کے لیے وقف ہے۔
- سائٹ https://tldrlegal.com/ کو لائسنس کے مختلف اختیارات کے لیے ایک انسائیکلوپیڈیا سمجھا جا سکتا ہے۔ قطعی قانونی فارمولیشنز اور تفصیلی تبصرے دونوں موجود ہیں۔
پانی کے اندر کی چٹانیں۔
کبھی کبھی مصنف پہلے لائسنس کا ایک ورژن منتخب کرتا ہے، اور بعد میں اسے تبدیل کرنا چاہتا ہے۔ اگر وہ اکیلے ہی پروگرام بناتا تو ایسی تبدیلی مشکل نہیں ہوتی۔ تاہم، ایسے معاملات میں جہاں ترقی میں بہت سے شرکاء تھے، پھر ان کی رضامندی کے بغیر یہ کام نہیں کرے گا۔ مثال کے طور پر، لینکس کا خالق، اگرچہ اس نے اصل میں آپریٹنگ سسٹم کی بنیاد بنائی، لیکن وہ ان تمام پروگرامرز کی رضامندی کے بغیر لائسنس کو تبدیل نہیں کر سکے گا جنہوں نے مزید ترقی میں حصہ لیا۔ MPL کے تحت تقسیم کرتے وقت، وہ لوگ جنہوں نے کوڈ میں تبدیلی کی ہے وہ MPL کے تحت فائلوں کو مختلف لائسنس کے تحت پیش نہیں کر سکتے۔ نئی دستاویز کا استعمال دوسرے پروگرام ماڈیولز کا حوالہ دے گا۔