کپیلفت چیست؟
کپیلفت یک ابزار صدور مجوز است که به طور خاص برای نرمافزارهای آزاد طراحی شده است. این ابزار به منظور ترویج گسترش نرمافزارهای آزاد و محافظت از آنها در برابر استفاده در آثار غیرآزاد ایجاد شده است. کپیلفت این کار را با اعطای حق اشتراکگذاری بهبودهای شما و همچنین تعهد به اشتراکگذاری این بهبودها تحت شرایط مشابه هنگام توزیع نرمافزار انجام میدهد. درک این تعهدات هنگام استفاده مجدد از نرمافزارهای کپیلفت در پروژههای خود بسیار مهم است.
طیف کپیلفت
مجوزهای مختلف نرمافزارهای آزاد در طیفی از مجوزهای آسانگیر تا کپیلفت قرار دارند که بر اساس میزان تأکیدشان بر شرایط کپیلفت در条款های مجوزشان دستهبندی میشوند. مجوزهای آسانگیر معمولاً اجازه استفاده مجدد سخاوتمندانهای با تعهدات اندک و غیر سنگین، مانند نیاز به ذکر منبع ساده، میدهند. در مقابل، مجوزهای کپیلفت شما را ملزم میکنند که تغییرات و آثار مشتقشده خود را تحت همان شرایط مجوز به اشتراک بگذارید.
چرا مجوز کپیلفت را انتخاب کنیم؟
نرمافزارهای آزاد با مجوزهای آسانگیر اغلب در آثار غیرآزاد گنجانده میشوند. این کار معمولاً به منظور کسب سود بیشتر انجام میشود و با سلب چهار آزادی از کاربرانی که اثر غیرآزاد را دریافت میکنند، بدون هیچ بازخوردی به جامعه نرمافزار آزاد، از نرمافزار بهرهبرداری سودآور میشود.
مجوزهای کپیلفت برخی از این مشکلات را برطرف میکنند:
۱. کپیلفت با اطمینان از اینکه آثار ساختهشده بر پایه نرمافزار آزاد، به رشد و بهرهمندی اکوسیستم نرمافزار آزاد کمک میکنند، گسترش نرمافزار آزاد و چهار آزادی را ترویج میدهد. ۲. کپیلفت تضمین میکند که کسانی که نرمافزار آزاد را بهبود میدهند یا مجدداً استفاده میکنند، تغییرات خود را با کاربرانشان به اشتراک بگذارند تا جامعه بتواند از این بهبودها بهرهمند شود.
نرمافزارهای کپیلفت، مانند سایر نرمافزارهای آزاد، میتوانند فروخته شوند، اما الزام به آزاد ماندن بهبودهای تجاری، تضمین میکند که چهار آزادی برای همه مشارکتکنندگان حفظ شود. علاوه بر این، تغییر مجوز نرمافزار کپیلفت در صورتی که حق کپیرایت به صورت تجمیعی نگهداری شود، دشوار است، که این خود وعدهای قوی برای آینده نرمافزار به عنوان نرمافزار آزاد است.
کپیلفت ضعیف و قوی
مجوزهای کپیلفت از نظر میزان تأثیر条款های کپیلفت بر استفاده مجدد از نرمافزار متفاوت هستند. برای مثال، کپیلفت ضعیف مانند مجوز عمومی موزیلا مبتنی بر فایل است، به طوری که条款 کپیلفت تنها فایلهای کد منبع خاص را شامل میشود و نه کل پروژه: شما میتوانید یکی از این فایلها را در هر پروژهای استفاده کنید بدون نیاز به تغییر مجوز کل پروژه، مشروط بر اینکه تغییرات آن فایلها را تحت همان شرایط مجوز توزیع کنید.
نمونهای از کپیلفت کمی قویتر، مجوز عمومی کمتر گنو است که به طور خاص برای کتابخانههای نرمافزاری طراحی شده است. این کتابخانهها به یک شیء نرمافزاری تجمیعی، مانند یک شیء مشترک یا آرشیو استاتیک، کامپایل میشوند و شرایط کپیلفت به کل این شیء اعمال میشود. با این حال، هنگامی که این شیء با یک برنامه شخص ثالث لینک میشود،条款 کپیلفت فعال نمیشود. قویتر از آن، مجوز عمومی گنو است که برنامه کامل را به عنوان شیء نرمافزاری در نظر میگیرد که条款 کپیلفت به آن اعمال میشود.
در انتهای طیف کپیلفت، مجوزهایی مانند مجوز عمومی گنو آفرو قرار دارند که GPL را گسترش میدهد تا شامل نرمافزارهایی که از طریق شبکه استفاده میشوند، مانند پایگاههای داده، شود و کاربران نهایی این نرمافزار را به عنوان «دریافتکنندگان» نرمافزار در نظر میگیرد که بنابراین حق دریافت کد منبع را دارند.
چگونه از آثار کپیلفت استفاده مجدد کنیم
سادهترین راه برای استفاده مجدد از آثار کپیلفت، اعمال مجوز آن به کار خودتان و توزیع آن بر اساس همان مجوز است.
اگر نمیخواهید این کار را انجام دهید، تنها میتوانید از یک اثر کپیلفت تحت شرایطی که مجوز آن اجازه میدهد استفاده کنید، که احتمالاً شما را به استفاده از آثار کپیلفت ضعیف محدود میکند. برای مثال، اگر نرمافزار شما به کتابخانهای وابسته باشد که از LGPL استفاده میکند، میتوانید از هر مجوزی برای کار خود استفاده کنید، اما باید تغییراتی که در خود کتابخانه ایجاد کردهاید را هنگام توزیع نرمافزار به اشخاص ثالث به اشتراک بگذارید. اگر نرمافزار از GPL یا AGPL استفاده کند، محدودیتهای بیشتری خواهید داشت. شرایط مجوز را با دقت بخوانید و در صورت عدم اطمینان، با یک وکیل مشورت کنید.
برای اطلاعات بیشتر، به صفحه ما در مورد استفاده مجدد از نرمافزار آزاد مراجعه کنید.