Манифест GNU – ЧАСТЬ 1

Приведенный ниже Манифест GNU был написан Ричардом Столменом в начале проекта GNU, чтобы призвать к сотрудничеству и поддержке.  За первые несколько лет он был немного изменен с учетом новых разработок, но сейчас кажется лучшим оставить его неизменным, каким его знает большинство.

С тех пор выяснились некоторые частые случаи недопонимания, которых можно избежать, употребляя другие слова. Добавленные в 1993 году сноски помогают прояснить эти места.

Для получения современной информации о доступных программах GNU, пожалуйста, смотрите последний выпуск Бюллетеня GNU. Этот перечень слишком длинный, чтобы приводить его здесь.

Что такое GNU? GNU это не UNIX!

GNU, что означает Gnu’s Not Unix, — это имя для полностью Unix-совместимой программной системы, которую я пишу,  чтобы свободно передавать  всем, кто  сможет ею пользоваться.1 Несколько добровольцев помогают мне.  Крайне требуется вклад времени, денег, программ и оборудования.

На данный момент у нас уже есть текстовый редактор Emacs с языком Лисп для написания команд редактирования, отладчик, работающий на уровне исходного текста, совместимый с YACC генератор анализаторов, компоновщик и около 35-ти утилит. Оболочка (командный интерпретатор) почти завершена. Новый переносимый оптимизирующий  компилятор Си скомпилировал сам себя  и может быть выпущен в этом году.   Начальное ядро существует, но для эмуляции Unix нужны еще многие возможности. Когда ядро и компилятор будут закончены, можно будет распространять систему GNU, пригодную для разработки программ. В качестве программы форматирования текста мы будем использовать TEX, но над nroff продолжается работа. Мы также будем использовать свободную,

переносимую систему X Windows.  После этого мы добавим переносимый  Common Lisp,

игру “Империя”,  электронную таблицу и сотни других вещей плюс диалоговую документацию.  Мы надеемся в конце концов предоставить все полезное, что обычно поступает с системой Unix, и даже еще больше.

GNU сможет запускать программы Unix, но не будет идентична ей.  Мы введем все удобные усовершенствования,  основываясь на нашем опыте работы с другими операционными системами. В частности, мы планируем сделать поддержку длинных имен файлов, номеров версий файлов, защищенную  от сбоев файловую  систему, возможно, завершение имен файлов, поддержку терминально-независимого вывода и, в конце концов, возможно, основанную на Лиспе оконную систему, при помощи которой различные Лисп-программы и обычные программы Unix смогут совместно использовать экран.  Как  Си, так и Лисп будут доступны в качестве системных языков программирования. Мы постараемся обеспечить поддержку UUCP, MIT  Chaosnet и протоколов связи Internet.

1  Некоторые слова здесь были употреблены небрежно. Намерение состояло в том, чтобы никто не должен был платить за разрешение пользоваться системой GNU. Но эти слова не проясняют это, и люди часто интерпретируют  их  так,  как  будто они говорят,  что  копии  GNU  всегда должны  распространяться бесплатно или за малую плату. Это никогда не было целью; далее манифест упоминает о возможности компаний предоставлять услуги по распространению за плату. Впоследствии я понял, что нужно точно различать “free”  в смысле  свободы и “free”  в смысле  цены.   Свободное  программное обеспечение  — это программное обеспечение,  которое пользователи вольны  распространять и изменять.  Некоторые пользователи могут  получить  копии бесплатно, тогда как  другие платят  за получение копий, и если эти деньги помогают улучшать программы, то чем больше цена, тем лучше.  Важно то, что каждый, у кого есть копия, свободен сотрудничать с другими при ее использовании.

Изначально GNU нацелена на машины класса 68000/1600 с виртуальной памятью, так как на них ее легче всего запустить. Дополнительные усилия для запуска GNU на меньших машинах будут предоставлены тому, кто захочет использовать  ее на них.

Чтобы избежать ужасной путаницы, пожалуйста, произносите ‘G’ в слове ‘GNU’, когда оно является именем данного проекта.

Почему я должен написать GNU

Я считаю, что золотое правило требует: если мне нравится программа, то я должен поделиться ей с другими, кому она тоже нравится. Продавцы программного обеспечения хотят разделить пользователей и подчинить их себе,  делая так,  чтобы каждый из них соглашался  не делиться с другими.  Я отказываюсь нарушать солидарность с другими пользователями  таким образом. Я не могу с чистой совестью подписать соглашение  о нераскрытии или лицензионное соглашение по программному  обеспечению. Во время моей работы в Лаборатории Искусственного Интеллекта я сопротивлялся этим тенденциям  и другим препонам, но в конце  концов они зашли слишком далеко: я не мог оставаться в институте, где за меня делаются такие вещи против моей воли.

Чтобы я мог продолжать использовать компьютеры с чистой совестью, я решил собрать вместе достаточное количество свободных программ и получить возможность обходиться без какого-либо несвободного программного продукта. Я ушел из Лаборатории ИИ, чтобы у МТИ не было никаких законных оснований мешать мне раздавать GNU.

Почему GNU будет  совместима с Unix

Unix не является моим идеалом системы, но она не так уж плоха. Ее основные черты, по-видимому, будут полезны, и я надеюсь восполнить пробелы Unix без того, чтобы разрушить ее основу. А система, совместимая с Unix, может быть удобна для освоения многим людям.

Каким образом  GNU станет доступна

GNU не  является общественной  собственностью. Каждому  разрешено  видоизменять и повторно распространять ее,  но распространителю  не разрешается препятствовать ее дальнейшему распространению. То есть, не разрешается  присваивать модификации. Я хочу быть уверенным в том, что все версии GNU останутся свободными.

Почему многие программисты хотят помочь

Я встретил много программистов, которые заинтересовались GNU и захотели помочь.

Многих программистов  не устраивает коммерциализация системных программных продуктов. Она может дать им возможность заработать больше денег, но заставляет их чувствовать  себя соперниками  других программистов, а не товарищами. Основной дружеский акт среди программистов — совместное использование программ; типичные маркетинговые соглашения, используемые сегодня, по существу запрещают программистам относится друг к другу по-дружески. Покупатель программного продукта должен выбирать между дружбой и подчинением закону. Естественно, многие решат, что дружба важнее.  Но те, кто  верит в закон, чувствуют  себя  неловко, сделав какой-либо выбор.  Они становятся циничными и думают, что программирование — это просто способ делать деньги.

Работая над GNU и используя  ее, а не принадлежащие кому-либо программы, мы можем быть благожелательны ко всем и в то же время соблюсти закон. Кроме того, GNU служит вдохновляющим примером и знаменем, сплачивающим  остальных вокруг нас для

совместного использования программ. Это может дать нам ощущение гармонии, которое невозможно, если мы используем несвободный программный продукт.  Для почти половины программистов, с которыми я разговаривал, это неоценимое счастье, которое деньги заменить не могут.

Каким образом  вы можете внести свой вклад

Я прошу производителей компьютеров о пожертвованиях в виде денег или машин.  Я

прошу отдельных людей о вкладе программами или работой.

Одно из следствий того, что вы внесли свой вклад машинами, это то, что на них GNU будет запущена в кратчайшие сроки. Машины должны быть укомплектованными, готовыми к использованию системами, пригодными для использования в жилом помещении, и не должны нуждаться в слишком сложных системах охлаждения и питания.

Я нашел очень много программистов, готовых потратить часть своего рабочего времени для работы над GNU. Для большинства проектов такую распределенную работу с неполной занятостью очень трудно координировать; независимо написанные  части, возможно, не заработают вместе.  Но для частной задачи замещения Unix это проблема отсутствует.  Полная система Unix содержит сотни утилит,  каждая из которых документирована отдельно. Большинство интерфейсов фиксированы совместимостью с Unix. Если каждый сотрудник сможет написать совместимую замену для одной Unix-утилиты  и сделает так, чтобы она работала вместо оригинала в системе Unix, тогда вместе эти утилиты  будут работать надлежащим образом. Даже если позволить Мерфи создать несколько неожиданных проблем,  объединение этих компонент будет осуществимой задачей. (Ядро требует более тесной взаимосвязи и будет разрабатываться небольшой компактной группой).

В случае получения мною денежных пожертвований, я буду в состоянии нанять нескольких человек на полный или неполный рабочий день. Оклад будет невысоким по программистским меркам, но я ищу таких людей, для которых укрепление духа общности так же важно, как и зарабатывание денег. Я рассматриваю это как способ дать увлеченным людям возможность отдать всю свою энергию работе над GNU, оберегая их от необходимости зарабатывать себе на жизнь другим путем.

Источник: Ричард Столмен, Руководство по GNU Emacs

Похожие посты:

Вы можете оставить комментарий, или ссылку на Ваш сайт.

Оставить комментарий