تعریف نرمافزار آزاد(1618 مجموع کلمات موجود در متن) (7419 بار مطالعه شده است) ما تعریف نرمافزار آزاد را ادامه میدهیم تا بطور واضح نشان دهیم که چه مواردی در مورد یک نرمافزار خاص باید صدق کند تا به عنوان یک نرمافزار آزاد تلقی شود.
"نرمافزار آزاد" موضوع آزادی است٬ نه قیمت. برای درک بهتر باید به معنای "free" در "free speech" فکر کنید٬ نه در "free beer".
نرمافزار آزاد در مورد آزادی کاربران برای اجرا٬ کپی٬ توزیع٬ بررسی٬ تغییر و بهبود دادن نرمافزار میباشد. بطور دقیقتر نرمافزار آزاد به چهار نوع آزادی برای کاربران یک نرمافزار اشاره میکند:
- آزادی برای اجرای برنامه برای هر منظوری (آزادی ۰)
- آزادی برای مطالعه و بررسی چگونگی عملکرد برنامه و تغییر آن برای نیاز خود (آزادی ۱). دسترسی به کد منبع یک پیششرط برای این آزادی میباشد.
- آزادی برای توزیع مجدد کپیهایی از آن٬ بنابراین شما میتوانید به همسایگان [اطرافیان] خود کمک کنید (آزادی ۲).
- آزادی برای بهبود برنامه و انتشار این تغییرات برای عموم٬ بنابراین تمام جامعه از آن بهره میبرند (آزادی ۳). دسترسی به کد منبع یک پیششرط برای این آزادی میباشد.
در صورتی برنامهای یک نرمافزار آزاد به شمار میآید که کاربران آن همهی این آزادیها را داشته باشند. بنابراین شما باید برای توزیع مجدد کپیهایی از آن٬ خواه با اصلاحات و تغییرات و خواه بدون آن٬ خواه رایگان و خواه در ازای دریافت وجهی٬ برای هر شخصی و در هر جایی آزاد باشید. آزاد بودن برای انجام این کارها (در میان چیزهای [کارهای] دیگر) به این معنی است که شما مجبور به درخواست و پرداخت هزینه برای مجوز نیستید.
شما همچنین باید این آزادی را داشته باشید تا در برنامه تغییراتی ایجاد کنید و حتی بدون اشاره به وجود آنها٬ از آنها بطور خصوصی و برای کار خود استفاده کنید. اگر هم تغییرات خود را منتشر کردید٬ نباید ملزم به اعلام آن به شخص خاص و یا به روش خاصی باشید.
آزادی برای استفاده از برنامه به معنای آزادی هر شخص و یا سازمانی برای استفاده از آن برنامه بر روی هر سیستم کامپیوتری٬ برای هر کاری٬ و بدون نیاز به هر گونه ارتباط بعدی با توسعهدهنده و یا هر نهاد خاصی میباشد.
آزادی برای توزیع مجدد کپیهایی از برنامه باید همانند [علاوه بر] کد منبع٬ شامل شکل باینری و اجرایی برنامه و برای هر دو نسخهی تغییر یافته و تغییر نیافته نیز باشد. (توزیع برنامهها در شکل اجرایی برای سیستمعاملهای آزادی که به راحتی نصب میشوند ضروری است.) اگر هیچ روشی برای تولید شکل باینری و اجرایی برای برنامهی بخصوصی وجود نداشته باشد٬ مشکلی نیست (زیرا بعضی از زبانها [ی برنامهنویسی] از آن ویژگی پشتیبانی نمیکنند). اما شما باید این آزادی را داشته باشید تا اگر روشی برای ارائهی شکل باینری و اجرایی برنامه پیدا کردید٬ آن برنامه را مجددا به این دو شکل توزیع کنید.
به منظور داشتن آزادی برای تغییر دادن٬ و انتشار نسخههای بهبود یافته٬ شما باید به کدهای منبع برنامه دسترسی داشته باشید. بنابراین دسترسی به کد منبع یک شرط ضروری برای نرمافزار آزاد میباشد.
برای واقعی بودن [عملی و اجرا شدن] این آزادیها٬ آنها باید تا وقتیکه شما هیچ کار اشتباهی [بر خلاف این آزادیها] انجام ندادهاید٬ غیر قابل فسخ و قطعی بمانند.
با این حال بعضی قوانین خاص [که] دربارهی نحوهی توزیع نرمافزار آزاد [میباشند]٬ هنگامی که با آزادیهای مرکزی [اصلی] در تضاد نباشند٬ قابل قبول هستند. برای نمونه copyleft (به بیان خیلی ساده) قانونی است که [به موجب آن] شما به هنگام توزیع مجدد برنامه٬ نمیتوانید محدودیتهایی به آن اضافه کنید تا آزادیهای مرکزی را برای افراد دیگر انکار کنید [از بین ببرید]. این قانون نه تنها با آزادیهای مرکزی در تضاد نیست بلکه از آنها محافظت نیز میکند.
بنابراین شما ممکن است پولی پرداخت کرده باشید تا کپیهایی از نرمافزار آزاد را بدست آورده باشید و یا ممکن است کپیها را بدون پرداخت هزینه بدست آورده باشید. اما صرفنظر از اینکه چگونه کپیها را بدست آورده باشید٬ شما همیشه این آزادی را دارید تا نرمافزار را کپی کنید و تغییر دهید و یا حتی کپیهایی از آن را بفروشید.
"نرمافزار آزاد" به معنای "غیر تجاری" نیست. یک برنامهی آزاد باید برای استفادهی تجاری٬ توسعهی تجاری٬ و توزیع تجاری در دسترس باشد. توسعهی تجاری نرمافزار آزاد دیگر غیر معمول نیست٬ بلکه چنین نرمافزارهای آزاد تجاری بسیار مهم هستند.
قوانین مربوط به نحوهی بستهبندی یک بستهی تغییر یافته نیز در صورتیکه بطور موثر [عملی و قابل اجرا] آزادی شما برای انتشار نسخهی تغییر یافته را منع نکنند٬ قابل قبول هستند. قوانینی مانند "اگر شما برنامه را به این روش در دسترس قرار دادید٬ باید آن را به آن روش نیز در دست قرار دهید" نیز٬ با همان شرایط قبلی میتوانند قابل قبول باشند. (به خاطر داشته باشید که چنین قانونی آزادی شما برای انتخاب انتشار و یا عدم انتشار برنامه را باقی میگذارد.) همچنین این برای اجازهنامه قابل قبول است تا لازم بدارد که اگر شما یک نسخهی تغییر یافته از برنامه را توزیع کردید و توسعهدهندهی قبلی یک کپی از آن را درخواست نمود٬ شما باید یک کپی برای او بفرستید.
در پروژهی گنو٬ ما از "کپیلفت" برای حفاظت قانونی از این آزادیها برای هر شخصی استفاده میکنیم. اما نرمافزارهای آزاد غیر کپیلفتی نیز وجود دارند. ما معتقدیم که دلایل مهمی برای اینکه چرا بهتر است از کپیلفت استفاده شود وجود دارند٬ اما اگر برنامهی شما نرمافزار آزاد غیر کپیلفتی باشد٬ ما همچنان میتوانیم از آن استفاده کنیم.
برای تشریح اینکه چگونه "نرمافزار آزاد"٬ "نرمافزار کپیلفت شده" و دیگر بخشهای نرمافزار با یکدیگر در ارتباطند٬ بخشهای نرمافزار آزاد را ببینید.
گاهی اوقات مقررات نظارتی صادرات و مصوبات تجاری دولت آزادی شما برای توزیع بینالمللی کپیهای برنامه را تحت تاثیر قرار خواهند داد. توسعهدهندگان نرمافزار این قدرت را ندارند تا این محدودیتها را حذف و یا زیر پا بگذارند٬ اما کاری که میتوانند و باید انجام دهند این است که از تحمیل این محدودیتها به عنوان شرایط استفاده از برنامه سر باز زنند. به این ترتیب٬ این محدودیتها بر فعالیتها و اشخاص خارج از حوزهی قضائی این دولتها تاثیر نخواهد داشت.
اغلب اجازهنامههای نرمافزار آزاد بر اساس کپیرایت میباشند٬ ولی برای آن دسته از الزاماتی که بواسطهی کپیرایت میتوانند تحمیل شوند٬ محدودیتهایی وجود دارد. اگر یک اجازهنامهی مبتنی بر کپیرایت آزادی را به روشهایی که در بالا توضیح داده شد محترم بشمارد [رعایت کند]٬ بعید به نظر میرسد که مشکلات دیگری که ما هرگز پیشبینی نمیکردیم بوجود بیاید (اگر چه گه گاه این اتفاق میافتد). اما بعضی از اجازهنامههای نرمافزار آزاد بر اساس قراردادها [contracts] میباشند٬ و قردادها میتوانند شمار بیشتری از محدودیتهای ممکن را تحمیل کنند. این بدان معناست که راههای بیشماری وجود دارند تا چنین اجازهنامهای به طرز غیر قابل قبولی محدودکننده و غیر آزاد باشد.
ما نمیتوانیم همهی محدودیتهای "قراردادها" که غیر قابل قبول هستند را فهرست کنیم. اگر یک اجازهنامهی مبتنی بر قرارداد٬ کاربر را به یک روش غیر معمول طوری محدود کند که اجازهنامهی مبتنی بر کپیرایت نتواند٬ و آن محدودیت در اینجا به عنوان یک عمل قانونی ذکر نشده باشد٬ ما دربارهی آن فکر خواهیم کرد و احتمالا آن را غیر آزاد تشخیص خواهیم داشت.
هنگامیکه دربارهی نرمافزار آزاد صحبت میشود بهتر است تا از به کار بردن عباراتی مانند "هدیه دادن" [give away] و یا "بطور رایگان" [for free] خودداری شود٬ زیرا این عبارات این مفهوم را میرسانند که موضوع در مورد قیمت میباشد٬ نه آزادی. بعضی عبارات معمول مانند "کپی غیر قانونی" [piracy] مفاهیمی در بر دارند که ما امیدواریم شما بر آنها صحه نگذارید. برای بحث در مورد این عبارات بخش کلمات و عبارات گیجکننده که اجتناب از آنها با ارزش است را ببینید. ما همچنین فهرستی از ترجمههای "نرمافزار آزاد" به زبانهای مختلف داریم.
در نهایت بخاطر داشته باشید که معیارها و ظوابطی مانند آنها که در تعریف نرمافزار آزاد ذکر شدند٬ برای تفسیر به تفکری دقیق نیاز دارند. برای تصمیمگیری در مورد اینکه آیا اجازهنامهی نرمافزار خاصی صلاحیت اجازهنامهی نرمافزار آزاد بودن را دارد٬ ما آن را بر مبنای همین ظوابط در نظر میگیریم تا تصمیم بگیریم که آیا معنی و مفهوم آن به خوبی کلمات و عبارات در آن٬ مناسب هست. اگر اجازهنامهای شامل موارد نامعقول باشد٬ ما آن را رد میکنیم٬ حتی اگر آن مورد را در این معیارها پیشبینی نکرده باشیم. بعضی اوقات درخواستهای یک اجازهنامه پیآمدی پیش میآورد که قبل از اینکه تصمیم بگیریم آیا این درخواستها قابل قبول هستند٬ تفکر بسیاری شامل بحث و مذاکره با یک وکیل را مطالبه میکند. هنگامیکه ما دربارهی یک موضوع جدید به نتیجه میرسیم٬ غالبا این معیارها را به روز میکنیم تا راحتتر ببینید که چرا اجازهنامههای خاص صلاحیت دارند و یا ندارند.
اگر علاقمند هستید تا ببینید که آیا اجازهنامهی خاصی صلاحیت اجازهنامهی نرمافزار آزاد بودن را دارد٬ فهرست اجازهنامههای ما را ببینید. اگر اجازهنامهای که برای شما مهم است در آنجا فهرست نشده است٬ می توانید با فرستادن ایمیل به آدرس <licensing@gnu.org> از ما دربارهی آن سوال کنید.
اگر در نظر دارید تا یک اجازهنامهی جدید بنویسید٬ لطفا با همان آدرس با بنیاد نرمافزار آزاد تماس بگیرید. تکثر اجازهنامههای مختلف نرمافزار آزاد به معنی کارهای زیاد انجام شده برای کاربران در جهت درک اجازهنامهها میباشد. ممکن است ما بتوانیم به شما کمک کنیم تا اجازهنامهی نرمافزار آزادی را پیدا کنید که نیازهای شما را برآورده میکند.
اگر این غیر ممکن بود٬ و شما واقعا به یک اجازهنامهی جدید نیاز داشتید٬ با کمک ما میتوانید مطمئن باشید که اجازهنامه واقعا یک اجازهنامهی نرمافزار آزاد هست و از مشکلات عملی گوناگون اجتناب کنید.
گروه دیگری استفاده از عبارت "متنباز" [Open Source] برای رساندن مفهومی نزدیک به (و نه دقیقا) "نرمافزار آزاد" را شروع کردهاند. ما عبارت "نرمافزار آزاد" را ترجیح میدهیم٬ زیرا به محض شنیدن آزادی را به ذهن میآورد٬ نه قیمت را.
پینوشت:
۱) این ترجمه یک ترجمهی غیر رسمی از این صفحهی سایت http://www.gnu.org میباشد:
http://www.gnu.org/philosophy/free-sw.html
۲) به دلیل اینکه این ترجمه زیاد با متن اصلی تفاوت نداشته باشد مترجم کلمات و عباراتی را در داخل [ ] آورده است که این نشاندهندهی این است که این کلمات و عبارات جزو متن اصلی نمیباشند و فقط به جهت آسانتر کردن درک متن آن اضافه شدهاند.
|