کپی لفت چیست ؟

14. کپی لفت چیست ؟

 

Originally written in 1996, this version is part of Free Software, Free Society: Selected Essays of Richard M. Stallman, 2002, GNU Press (http://www.gnupress.org); ISBN 1-882114-98-1.

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved

ک‍‍پی لفت شیوه‌ای عمومی است برای نرم افزار آزاد اعلام کردن یک برنامه و درخواست اینکه تمام تغییرات آتی و نسخه‌های بعدی آن‌هم به شکل نرم افزار آزاد باقی بمانند.

ساده‌ترین روش برای آزاد اعلام کردن یک برنامه قرار دادن بدون کپی‌رایت آن بر روی سرورهای عمومی است که آن را توسط همگان قابل دریافت می‌کند. این کار به مردم اجازه می‌دهد که در صورت علاقمندی برنامه‌ و بهبودهای انجام شده بر روی آن را به اشتراک بگذارند. ولی همچنین این امکان هم وجود دارد که افراد غیرمشارکت جو برنامه شما را به یک برنامه اختصاصی تبدیل کنند. آن‌ها می‌توانند برنامه را کم یا زیاد تغییر دهند و نتیجه را به عنوان یک محصول اختصاصی عرضه کنند. افرادی که این برنامه‌های اختصاصی تغییر یافته را دریافت و از آن‌ها استفاده کنند دیگر از آزادی‌ای که نویسنده اصلی به آن‌ها اعطا کرده است برخوردار نخواهند بود چرا که فرد واسط، این آزادی را از آن‌ها سلب کرده است.

در پروژه GNU هدف اصلی ما دادن آزادی به تمام کاربران برای بازپخش و تغییر نرم‌افزارهای GNU است. اگر فرد واسط بتواند این آزادی‌ها را لغو کند ممکن است کاربران بیشتری از برنامه استفاده کنند ولی آن‌ها دیگر آزادی‌های اولیه را نخواهند داشت. پس به جای اینکه GNU را در اختیار همگان قرار دهیم، آن را کپی‌لفت کردیم. کپی‌لفت می‌گوید که هر کسی که نرم‌افزار را بازپخش می‌کند، چه با تغییر و چه بدون تغییر، باید آزادی‌ تغییر و کپی محصول خود را به دیگران نیز بدهد. کپی لفت تضمین می‌کند که هر کاربری، آزاد خواهد بود.

همچنین کپی لفت مشوقی است برای دیگر برنامه نویسان که برنامه‌های آزاد را تکمیل کنند. برنامه‌های آزاد مهمی چون کمپایلر سی پلاس پلاس GNU تنها به این دلیل است که وجود دارند.

کپی لفت همچنین به برنامه نویسانی که می‌خواهند به پیشرفت برنامه‌های آزاد فعلی کمک کنند نیز این اجازه را می‌دهد. این برنامه‌نویسان معمولا برای شرکت‌ها یا دانشگاه‌هایی کار می‌کنند که برای بدست آوردن پول بیشتر حاضر به هرکاری هستند. یک برنامه نویس ممکن است بخواهد محصول مشارکت‌اش در یک نرم‌افزار را در اختیار جامعه قرار دهد ولی کارفرمایان معمولا ترجیح می‌دهند که محصول را به شکل یک برنامه اختصاصی روانه بازار کنند.

معمولا وقتی به کارفرما توضیح می‌دهیم که پخش نسخه بهبود یافته به شکل اختصاصی و تجاری غیرمجاز است، وی ترجیح می‌دهد محصول کار را به شکل آزاد در اختیار دیگران بگذارد تا اینکه آن را کلا دور بیاندازد.

برای کپی لفت کردن یک برنامه اول مشخص می‌کنیم که این برنامه کپی‌رایت دارد و بعد شرایط انتشار را اضافه می‌کنیم که ابزارهایی قانونی هستند که به هرکس اجازه استفاده، تغییر و بازپخش کد برنامه یا هر برنامه مشتق از آن را می‌دهند به شرط اینکه شرایط انتشار را بدون تغییر باقی بگذارد. با این کار، کد و آزادی قانونا غیرقابل تجزیه می‌شوند.

توسعه دهندگان نرم‌افزارهای اختصاصی از کپی رایت برای سلب آزادی‌های کاربران استفاده می‌کنند، ولی ما از کپی رایت برای تضمین آزادی آن‌ها استفاده می‌کنیم. به این دلیل است که اسم کپی رایت را برعکس کرده ایم: کپی لفت.

کپی لفت یک مفهوم عمومی است، راه های بسیاری برای پر کردن جزییات وجود دارد. در پروژه GNU شرایط انتشاری که استفاده کرده‌ایم تحت عنوان GNU General Public License عنوان شده‌اند. GNU General Public License معمولا به شکل خلاصه GNU GPL خوانده می‌شود. همچنین یک صفحه سوالات عمومی درباره GNU GPL نیز وجود دارد (http://www.gnu.org/license/gpl-faq.html). همچنین می‌توانید در این باره که چرا FSF از مشارکت کنندگان Copyright Assignment می‌گیرد نیز مطالعه کنید (http://www.gnu.org/copyleft/why-assign.html).

یک بدیل دیگر کپی‌ لفت به نام GNU Lesser General Public License یا LGPG نیز در چند (ولی نه همه) کتابخانه‌های GNU اعمال شده است. این مجوز در ابتدا Library GPL خوانده شده بود ولی ما اسم آن را تغییر دادیم چرا که این اسم توسعه‌دهندگان را تشویق می‌کرد تا بیشتر از آن‌چیزی که مورد نیاز بود از این مجوز استفاده کنند. برای خواندن مقاله‌ای در این باره که چرا این تغییر اسم لازم بود، به مقاله «چرا نباید از Library GPL برای کتابخانه بعدی خود استفاده کنید» مراجعه کنید.

با وجودی که GNU Library General Public License با Lesser GPL جایگزین شده است ولی هنوز محتوای آن به شکل HTML و متنی موجود است.

FDL یا GNU Free Documentation License نیز شکلی از کپی لفت است که برای استفاده در راهنماها، کتاب‌های درسی یا دیگر متون تنظیم شده است تا این اطمینان حاصل شود که همه آزادی لازم برای کپی و توزیع آن، با یا بدون تغییر، چه به شکل تجاری و چه به شکل غیرتجاری را دارند.

مجوز مناسب در بسیاری از راهنماها و در هر فایل منبع GNU گنجانده شده است.

GNU GPL به شکلی طراحی شده است که در صورتی که شما کپی‌رایت برنامه‌ای را دارید، به راحتی بتوانید آن را به آن برنامه اعمال کنید. برای اینکار نیازی به تغییر GNU GPL نیست، فقط کافی است توضیحی را به برنامه خود اضافه کنید که به شکل صحیح به GNU GPL اشاره کند.

اگر می‌خواهید برنامه خود را با GNU GPL یا GNU LGPL کپی لفت کنید، لطفا برای راهنمایی گرفتن به دستورالعمل‌های GPL نگاه کنید (http://www.gnu.org/copyleft/gpl-howto.html). لطفا توجه کنید که در صورت استفاده از GPL باید از متن کامل آن استفاده کنید. این مجوز یک کل لایتجزی است و کپی‌ تکه‌ای از آن غیرمجاز است (همینطور برای LGPL).

استفاده از یک شرایط انتشار برای برنامه‌های مختلف کپی بخشی از کد بین برنامه‌های بسیار متفاوت را آسان می‌کند. از آنجایی که همه این برنامه‌ها شرایط انتشار مشابهی دارند نیازی نیست در این مورد که آیا این شرایط با هم سازگار هستند یا نه تصمیم‌گیری شود. مجوز Lesser GPL دارای این پیش‌بینی است که می‌توان کد مبتنی بر آن را به GPL تغییر داد پس می‌توانید بدون مشکل کدهای دارای این مجوز را به کدهای دارای مجوز GPL کپی کنید.

اگر می‌خواهید راهنمای خود را با مجوز GNU FDL کپی لفت کنید لطفا به راهنماهای آخر متن FDL و همچنین صفحه راهنمای GFDL مراجعه کنید (http://www.gnu.org/copyleft/fdl-howto.html). بازهم مانند GNU GPL باید از همه مجوز استفاده کنید و استفاده از بخشی از آن مجاز نیست.

 

1 سیستم عاملی که اولین بار توسط استیو جابز نوشته و سپس توسط Apple خریداری شد.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s