GPL 3: лучше поздно, чем никогда

10 июль, 2007 - 12:33Андрій Кухар

В начале осени прошлого года мы писали об истории лицензии GPL, ее характеристиках и процессе подготовки новой, третьей, версии. Окончательный вариант последней с опозданием по плану более чем на полгода был выпущен Free Software Foundation 29 июня. И сегодня мы расскажем о данном событии, а также о связанных с ним перипетиях.

GPL 3 лучше поздно, чем никогда
Бостонское мероприятие, проводимое по случаю выпуска финальной версии GPL 3, носило далекий от официоза характер

Последний материал на эту тему мы закончили информацией о появлении второго черновика GPL 3. О нем, в частности, шла речь и на четвертой международной конференции по данной лицензии, прошедшей в конце августа 2006 г. в Бангалоре (Индия). Ричард Столлмен в своем выступлении акцентировал внимание участников на обстоятельствах, которые послужили основанием для разработки новой версии документа. Цель FSF заключается в приведении GPL 2 в соответствие с современными условиями программной индустрии, избавлении от замеченных в ней изъянов (прежде всего, касающихся защиты от патентных исков), улучшении совместимости с другими FOSS-лицензиями, а также в том, чтобы сделать ее более внятной. Разумеется, в процессе доработки она не должна утратить своей функциональности, если так можно выразиться, т. е. GPL как и прежде обязана предоставлять пользователю четыре главных свободы: отсутствие ограничений на исполнение ПО, изучение его исходного кода, модификации, а также распространение оригинала и производных.

Вообще же второй черновик GPL 3 по количеству критики существенно превзошел первый. Так, сначала группа ведущих разработчиков ядра Linux опубликовала открытое письмо (оно доступно по адресу: lwn.net/Articles/200422/), в котором призвала авторов переработать его. Их претензии относились к трем разделам лицензии, посвященным DRM, дополнительным ограничениям и патентам. На что Эбен Моглен (Eben Moglen), председатель организации Software Freedom Law Center и главный юрисконсульт FSF, ответил приглашением принять участие в разработке документа. Реакции «ядерщиков» не последовало. Вместе с тем, одна из самых значимых фигур в мире Open Source – Линус Торвальдс, в это время если и отзывался о новой лицензии, то с нескрываемым осуждением, вызванным намерением создателей GPL бороться с методами защиты цифрового контента (анти-DRM), или так называемой tivoization. Однако как выяснилось, хотя голос Торвальдса и имеет определяющее значение, даже гипотетическая ликвидация соответствующих условий в угоду ему не обязательно приведет к принятию GPL 3 в качестве основной лицензии для ядра Linux, так как право голоса имеют также и другие причастные к данному проекту люди. А последних склонить к сотрудничеству не просто. Вот и получается какой-то замкнутый круг.

В дополнение к трудностям, связанным с расхождениями в убеждениях, в начале ноября FSF столкнулась с еще одной – был подписан пакет соглашений между Microsoft и Novell. Кроме весьма благих намерений добиться лучшей интероперабельности решений на базе Linux и ОС Windows, в нем также были зафиксированы договоренности о совместном использовании запатентованной интеллектуальной собственности. В итоге, клиенты Novell обрели своеобразную индульгенцию от преследований Microsoft в отношении ее патентов, которые якобы нарушают Linux и другие программы с открытым кодом, а Microsoft получила купоны на сопровождение и поддержку ПО SUSE Linux Enterprise Server. Сам по себе договор вызвал весьма противоречивую реакцию. Например, проект по созданию документации The Linux Information Project его поддержал. Зато сделка возмутила команду разработчиков ПО Samba и представителей Canonical (разработчик Ubuntu). Нашлись и те, кто посчитал соглашение бессмысленным ввиду того, что отсутствует потребность в патентной защите Linux – таков, к примеру, взгляд IBM. Многие FOSS-поставщики попросту остались равнодушными. Но такое отношение не могли себе позволить члены FSF, интересы которых здесь затрагивались, – они встретили договор Novell/Microsoft в штыки. Их главный аргумент – недопустимость того обстоятельства, что Novell обеспечивает патентную защиту только пользователей своих решений и отказывает в ней другим. Как результат, по их мнению, не все потребители получают четыре фундаментальных, пропагандируемых FSF, свободы. Это событие стало основной темой дискуссий на пятой международной конференции по GPL 3, которая состоялась в конце ноября 2006 г. в Токио. Во время проведения мероприятия Ричард Столлмен заявил, что FSF сконцентрирует свои усилия на модификации раздела, касающегося патентов, для того чтобы если не аннулировать этот альянс, то хотя бы воспрепятствовать созданию подобных в дальнейшем.

GPL 3 лучше поздно, чем никогда
Ричард Столлмен: «На эту лицензию было потрачено много времени и сил. И теперь разработчики программ могут принять ее, чтобы обеспечить пользователей прочной защитой их свобод»

Наделавшая много шума сделка оказала негативное влияние на сроки разработки новой лицензии. Так, выход третьего черновика был перенесен с планируемых конца ноября – начала декабря на последние дни марта 2007 г. А обнародование финальной версии – с середины января на конец июня. В конце мая был реализован также последний промежуточный вариант (last call). По существу, все три документа ничем кардинально друг от друга не отличались. Собственно говоря, так и должно быть, ведь процесс все-таки подходил к завершению. Давайте вкратце пройдемся по изменениям, нашедшим в них отражение. С целью повышения ясности языка и, соответственно, легкости применения была несколько упрощена терминология лицензии. Предельно сократились требования относительно защиты цифровых прав – теперь производители потребительских продуктов обязаны в поставку включать информацию об установке используемого в них ПО вместе с его исходными текстами, без необходимости предоставления электронных ключей или цифровых сертификатов. Из документа исключена формулировка, которая могла привести к возникновению несовместимых версий GPL. Лицензия обрела возможность сочетаться с Apache Software License 2.0. Наконец, в нее добавлены новые требования, затрагивающие вопросы патентования. Как и предполагалось, авторам GPL 3 удалось создать преграду для сделок наподобие Novell/Microsoft, внеся в документ ограничение на избирательную патентную защиту. Если третий черновик явно не определял, какие сделки, все или только перспективные, должны быть предотвращены, то last call и окончательный вариант конкретно указывают на их недопустимость в будущем (точнее сказать это касается тех соглашений, которые состоялись после 28 марта). Таким образом, альянсу ничего не грозит, а вот недавние сделки Microsoft с Xandros и Linspire уже находятся под большим вопросом.

Но все эти проблемы станут актуальными только в том случае, если GPL 3 будет принята в качестве основной лицензии для ядра ОС Linux. И к этому есть некоторые предпосылки. Последние правки лицензии, в особенности смягчение положения анти-DRM, были положительно восприняты Линусом Торвальдсом, который хоть и не полностью избавился от скепсиса, но уже начал смотреть на вещи более реально. По его словам, хорошим поводом для распространения ядра Linux на условиях GPL 3 может стать реализация на них ПО проекта OpenSolaris (о таком намерении недавно заявили его участники). На момент написания статьи вопрос еще не был решен. Однако рано или поздно это произойдет, и мы полагаем, что ядро Linux все-таки станет GPL 3-лицензируемым.