
مانیفست گنو
مانیفست گنو (که در زیر آمده است) توسط ریچارد استالمن در سال ۱۹۸۵ برای درخواست حمایت در توسعه سیستم عامل گنو نوشته شد. بخشی از متن از اعلامیه اولیه سال ۱۹۸۳ گرفته شده است. تا سال ۱۹۸۷، این متن به صورت جزئی برای در نظر گرفتن پیشرفتها بهروزرسانی شد؛ از آن زمان، به نظر میرسد بهتر است بدون تغییر باقی بماند
رفع سوءتفاهمها اضافه شد. برای نصب گنو/لینوکس، توزیعهای ۱۰۰٪ نرمافزار آزاد توصیه میشود. برای مشارکت، به gnu.org/help مراجعه کنید.جنبش نرمافزار آزاد است که برای آزادی کاربران نرمافزار فعالیت میکند. ارتباط گنو با «متنباز» اشتباه است، زیرا این اصطلاح در ۱۹۹۸ توسط کسانی ابداع شد که با ارزشهای اخلاقی جنبش نرمافزار آزاد مخالف بودند.در این کنفرانس بود که ریچارد استالمن برای اولین بار به صورت عمومی و صریح ایده «باید همه نرمافزارها آزاد باشند» را مطرح کرد و با گفتن اینکه نرمافزار باید برای همه آزادانه قابل دسترسی باشد، توضیح داد که «آزاد» به معنای آزادی است، نه قیمت. این احتمالاً اولین باری بود که او این تمایز را برای عموم بیان کرد.
استالمن سپس توضیح میدهد که چرا پذیرفتن برنامهای با شرط عدم اشتراکگذاری آن با دیگران اشتباه است. پس چه میتوان در مورد کسبوکاری گفت که بر توسعه نرمافزارهای غیرآزاد основа شده و دیگران را به پذیرش این شرط ترغیب میکند؟ چنین چیزهایی برای جامعه مضر هستند و اصلاً نباید انجام شوند. (در سالهای بعد او محکومیت شدیدتری برای این موضوع بیان کرد.)
گنو چیست؟ گنو یونیکس نیست!
گنو (مخفف Gnu's Not Unix) سیستم نرمافزاری سازگار با یونیکس است که من در حال نوشتن آن هستم تا آزاد به همه بدهم. داوطلبان زیادی کمک میکنند و نیاز به زمان، پول، برنامهها و تجهیزات است.
تاکنون ویرایشگر متن Emacs با Lisp، دیباگر سطح منبع، مولد پارسر سازگار با yacc، لینکر و حدود ۳۵ ابزار داریم. شل (مفسر دستورات) تقریباً کامل است. کامپایلر C بهینهسازیشده قابلحمل خودش را کامپایل کرده و شاید امسال منتشر شود. کرنل اولیه وجود دارد، اما برای شبیهسازی یونیکس به ویژگیهای بیشتری نیاز است. پس از تکمیل کرنل و کامپایلر، سیستم گنو برای توسعه برنامه مناسب خواهد بود. از TeX برای قالببندی متن استفاده میکنیم، اما nroff هم در دست توسعه است. همچنین از سیستم X Window قابلحمل و رایگان استفاده خواهیم کرد. سپس Common Lisp، بازی Empire، صفحهگسترده و صدها چیز دیگر به همراه مستندات آنلاین اضافه میشود. هدف، تأمین همه چیزهای مفیدی است که معمولاً با یونیکس ارائه میشود و حتی بیشتر.
گنو برنامههای یونیکس را اجرا میکند، اما دقیقاً یونیکس نیست. بهبودهایی بر اساس تجربه با سایر سیستمهای عامل اعمال میشود، مانند نامهای فایل طولانیتر، شماره نسخه فایل، سیستم فایل مقاوم در برابر خرابی، تکمیل نام فایل، پشتیبانی نمایش مستقل از ترمینال و شاید یک سیستم پنجره مبتنی بر Lisp. زبانهای C و Lisp برای برنامهنویسی سیستمی در دسترس خواهند بود. پروتکلهای UUCP، MIT Chaosnet و اینترنت پشتیبانی میشوند.
گنو ابتدا برای ماشینهای کلاس ۶۸۰۰۰/۱۶۰۰۰ با حافظه مجازی طراحی شده، چون اجرای آن روی آنها سادهتر است. تلاش برای اجرای آن روی ماشینهای کوچکتر به عهده کسانی است که بخواهند از آن استفاده کنند.
برای جلوگیری از سردرگمی، «g» در کلمه GNU را تلفظ کنید.
چرا باید گنو را بنویسم
قانون طلایی میگوید اگر برنامهای را دوست دارم، باید آن را با دیگران به اشتراک بگذارم. فروشندگان نرمافزار کاربران را تقسیم و تسخیر میکنند و آنها را مجبور به عدم اشتراک میکنند. من از شکستن همبستگی با کاربران امتناع میکنم و نمیتوانم با وجدان راحت توافقنامه عدم افشا یا مجوز نرمافزار را امضا کنم. سالها در آزمایشگاه هوش مصنوعی برای مقاومت در برابر این روندها تلاش کردم، اما وقتی بیش از حد پیش رفتند، از آزمایشگاه استعفا دادم تا MIT بهانه قانونی برای جلوگیری از توزیع رایگان گنو نداشته باشد.
چرا گنو با یونیکس سازگار است
یونیکس سیستم ایدهآلم نیست، اما بد هم نیست. ویژگیهای اصلی آن خوب هستند و میتوانم کمبودهایش را بدون خراب کردن آنها پر کنم. سیستمی سازگار با یونیکس برای پذیرش توسط دیگران مناسب است.
گنو چگونه در دسترس خواهد بود
گنو در مالکیت عمومی نیست. همه میتوانند آن را تغییر دهند و بازتوزیع کنند، اما هیچ توزیعکنندهای نمیتواند بازتوزیع بعدی را محدود کند. تغییرات اختصاصی مجاز نیست تا همه نسخههای گنو آزاد بمانند.
چرا برنامهنویسان دیگر میخواهند کمک کنند
بسیاری از برنامهنویسان از تجاریسازی نرمافزار سیستمی ناراضیاند. این کار ممکن است پول بیشتری برایشان بیاورد، اما آنها را در تضاد با دیگر برنامهنویسان قرار میدهد. دوستی بین برنامهنویسان در اشتراکگذاری است، اما ترتیبات بازاریابی این را ممنوع میکنند. خریدار نرمافزار باید بین دوستی و رعایت قانون یکی را انتخاب کند. بسیاری دوستی را ترجیح میدهند، اما کسانی که به قانون باور دارند، در هر دو حالت راحت نیستند و بدبین میشوند.
با استفاده از گنو به جای برنامههای اختصاصی، میتوانیم به همه احترام بگذاریم و قانون را رعایت کنیم. گنو الگویی برای الهام بخشیدن و تجمع دیگران برای اشتراک است. این حس هماهنگی را میدهد که با نرمافزار غیرآزاد ممکن نیست. برای نیمی از برنامهنویسان، این شادی مهمی است که پول نمیتواند جایگزینش شود.
چگونه میتوانید کمک کنی
برای وظایف نرمافزاری، به لیست پروژههای اولویت بالا و لیست کمکهای مورد نیاز گنو مراجعه کنید. برای راههای دیگر کمک، راهنمای کمک به سیستمعامل گنو را ببینید.
از تولیدکنندگان کامپیوتر درخواست تجهیزات و پول دارم. از افراد درخواست برنامه و کار دارم. اگر ماشین اهدا کنید، گنو زودتر روی آن اجرا خواهد شد. ماشینها باید کامل، آماده استفاده و مناسب برای محیط مسکونی باشند.
بسیاری از برنامهنویسان مشتاق مشارکت پارهوقت در گنو هستند. برای اکثر پروژهها، هماهنگی کار پارهوقت سخت است، اما برای جایگزینی یونیکس این مشکل وجود ندارد. سیستم یونیکس صدها ابزار دارد که هر کدام جداگانه مستند شدهاند. اگر هر مشارکتکننده یک ابزار سازگار با یونیکس بنویسد که به جای نسخه اصلی کار کند، این ابزارها با هم کار خواهند کرد.
اگر پول اهدا شود، میتوانم چند نفر را تماموقت یا پارهوقت استخدام کنم. حقوق بالا نخواهد بود، اما برای کسانی است که روحیه جمعی برایشان به اندازه پول مهم است.
چرا همه کاربران کامپیوتر سود خواهند برد
وقتی گنو نوشته شود، همه میتوانند نرمافزار سیستمی خوب را رایگان مثل هوا دریافت کنند. این بیش از صرفهجویی در هزینه مجوز یونیکس است؛ از هدررفت تلاش برای برنامهنویسی سیستمی تکراری جلوگیری میکند. منابع سیستم در دسترس همه خواهد بود. کاربران میتوانند خودشان یا با استخدام برنامهنویس تغییرات را اعمال کنند و دیگر در رحم یک شرکت یا برنامهنویس خاص نخواهند بود.
مدارس با تشویق دانشآموزان به مطالعه و بهبود کد سیستم، محیط آموزشی بهتری فراهم میکنند. آزمایشگاه کامپیوتر هاروارد سیاستی داشت که برنامهای بدون نمایش عمومی منابعش نصب نشود و من از این الهام گرفتم.
اعتراضات به اهداف گنو
اگر رایگان باشد، کسی از آن استفاده نمیکند چون پشتیبانی ندارد.
اگر مردم گنو با خدمات را به گنو رایگان بدون خدمات ترجیح دهند، شرکتی که فقط خدمات ارائه دهد، سودآور خواهد بود. باید بین پشتیبانی واقعی (کار برنامهنویسی) و پشتیبانی ساده (دستگیری) تمایز قائل شد. پشتیبانی واقعی از فروشندگان نرمافزار قابلاعتماد نیست. اگر مشکل شما عمومی نباشد، فروشنده شما را نادیده میگیرد. با گنو، داشتن منابع و ابزارها این مشکل را حل میکند.
بدون تبلیغات نمیتوان به افراد زیادی دسترسی پیدا کرد.
تبلیغات رایگان یا ارزان میتواند کاربران را از گنو آگاه کند. اگر تبلیغات لازم باشد، شرکتی که گنو را کپی و ارسال کند، میتواند با هزینه موفق شود. اگر بسیاری گنو را از دوستانشان بگیرند و این شرکتها موفق نشوند، نشان میدهد تبلیغات ضروری نبود.
شرکت من برای برتری رقابتی به سیستمعامل اختصاصی نیاز دارد.
گنو نرمافزار سیستمعامل را از رقابت خارج میکند. شما و رقبایتان در این حوزه برتری نخواهید داشت، اما در حوزههای دیگر رقابت میکنید. اگر کسبوکار شما فروش سیستمعامل است، گنو به ضررتان است، اما اگر در حوزه دیگری هستید، گنو شما را از هزینههای گزاف نجات میدهد.
آیا برنامهنویسان برای خلاقیتشان شایسته پاداش نیستند؟
خلاقیت وقتی ارزش پاداش دارد که جامعه بتواند از نتایجش استفاده کند. اگر برنامهنویسان برای نوآوری شایسته پاداشاند، به همان دلیل برای محدود کردن استفاده از برنامهها شایسته تنبیهاند.
آیا برنامهنویس نباید برای خلاقیتش پاداش بخواهد؟
خواستن دستمزد برای کار اشکالی ندارد، اما روشهای مخرب در نرمافزار امروز مضرند. محدود کردن استفاده از برنامه، ثروت بشریت را کاهش میدهد. شهروند خوب از روشهای مخرب برای ثروتمند شدن استفاده نمیکند، چون اگر همه این کار را کنند، همه فقیرتر میشویم.
آیا برنامهنویسان گرسنه خواهند ماند؟
کسی مجبور به برنامهنویسی نیست. بدون مالکیت نرمافزار، برنامهنویسان همچنان دستمزد میگیرند، اما کمتر. کسبوکار نرمافزار به مدلهای دیگر مثل توسعه نرمافزار سفارشی تغییر خواهد کرد که نیازی به جمعآوری اجاره ندارد.
آیا مردم حق کنترل استفاده از خلاقیتشان را ندارند؟
کنترل بر ایدهها، کنترل بر زندگی دیگران است و معمولاً زندگی آنها را سختتر میکند. حقوق مالکیت فکری ذاتی نیست و توسط قوانین برای اهداف خاص ایجاد شده است. مثلاً سیستم پتنت برای تشویق مخترعان به افشای جزئیات اختراعشان بود، نه برای سود آنها. در مورد برنامهها، اجرای کپیرایت به جامعه آسیب میزند.
پاورقیها
منظور این بود که هیچکس برای استفاده از گنو مجبور به پرداخت نیست، اما کلمات این را واضح نمیگویند. بعداً مشخص شد که باید بین «آزاد» به معنای آزادی و «رایگان» به معنای قیمت تمایز قائل شد.
عبارت «دادن رایگان» نشان میدهد که هنوز مسئله قیمت و آزادی را جدا نکرده بودم.
این جمله درست است، اما ایده اشتباهی را القا میکند.
اکنون چنین شرکتهایی وجود دارند.
بنیاد نرمافزار آزاد برای ۱۰ سال از خدمات توزیع خود بودجه جمع کرد.
در ۱۹۹۱ گروهی از شرکتهای کامپیوتری برای پشتیبانی از کامپایلر C گنو بودجه جمع کردند.
فکر میکردم نرمافزار اختصاصی رایجترین مدل کسب درآمد است، اما توسعه نرمافزار سفارشی رایجتر است.
اصطلاح «مالکیت فکری» گمراهکننده است و بهتر است از پتنت، کپیرایت و علائم تجاری جداگانه صحبت شود.
«فریور» با نرمافزار آزاد فرق دارد، چون معمولاً کد منبع آن قابل تغییر نیست.
ثبت نظر و دیدگاه